linux-device-driver

    2熱度

    7回答

    我打算學習嵌入式linux並編寫linux設備驅動程序。 我需要一個開發板在那裏我可以, 構建和一個Linux發行版引導它。 爲板卡中的外設寫驅動程序。 (在未來)可能的Android移植到它 您能否提供一個開發工具包,以幫助我嗎?成本並不是一個障礙 - 我已經很熟悉用戶空間的linux,我願意花費更多的時間在另一端變得更好。 感謝 詹姆斯

    0熱度

    1回答

    我正在編譯Android模擬器的Linux源代碼。當我執行make命令(用於構建和交叉編譯linux源代碼)時,出現以下錯誤「pmem.c」文件。 [email protected]:~/common# make CHK include/linux/version.h CHK include/linux/utsrelease.h SYMLINK include/asm -> includ

    2熱度

    3回答

    我正在編寫一個設備驅動程序來處理PCIe卡的中斷,該PCIe卡當前適用於在IRQ線路上引發的任何中斷向量。 但它有幾個類型可以引發,由Vector寄存器標記。所以現在我需要閱讀矢量信息,並且是一個有點聰明... 所以,做我: - 1 /有獨立開發的節點/dev/int1,/dev/int2等爲每個中斷類型,只是文件,讓int1是矢量類型A等? 1.1 /由於每個文件/字符設備將有它自己的minor

    10熱度

    2回答

    你好Linux內核驅動程序大師! 我正在寫一個使用串行接口,用於配置攝像頭的V4L2驅動。我希望驅動程序配置攝像頭,因爲它可以讓客戶端代碼在各個攝像頭模型中保持一致。問題是:從驅動模塊訪問攝像機串行接口的最佳方式是什麼? 據我所知,從內核驅動程序訪問文件是一大禁忌,但它可以做到的。因此,我目前使用下面的代碼片段,但感覺像是一個黑客。 oldfs = get_fs(); set_fs(KERNEL

    1熱度

    2回答

    碼,然後用問題 #define MBX_REG_SYS_PHYS_BASE 0xC0000000 #define MBX_REG_RANGE 0x00004000 static struct resource mxc_reg_resources[] = { { .start = MBX_REG_SYS_PHYS_BASE, .end = MBX_REG_

    0熱度

    3回答

    內核模塊需要一個linux內核來完成編譯嗎? 我可以在沒有內核的情況下編譯內核模塊嗎? 我的意思是:複製需要的內核頭文件,手動編寫makefile或手動編譯。並且不使用內核構建系統。

    0熱度

    2回答

    我有兩個模塊A,B,A有一個全局可訪問的函數f(),即f()符號被導出。 B可能想偶爾調用f()。但是,如果模塊A被加載,B應該只調用f()。 B告訴A是否加載的最佳方式是什麼? 這個問題的b部分是有辦法檢查f()是否被導出? 我不確定哪種方法更有效。

    30熱度

    7回答

    我正在爲IA64開發一個Linux模塊。我目前的問題是驅動程序使用PAGE_SIZE和PAGE_SHIFT宏來進行dma頁面分配。我遇到的問題是編譯驅動程序的機器不是運行驅動程序所需的機器。因此,如果編譯機器上的PAGE_SIZE是2^14K,而目標機器是2^16K,那麼驅動器會失敗。 我不想把這個問題變成一個「最佳實踐」問題有關的機器不屬於運行的模塊的那些編譯模塊。我理解這個問題。我發現人們主要

    1熱度

    2回答

    我正在開發在嵌入式CPU上運行的Linux設備驅動程序。該設備驅動程序控制一些外部硬件。外部硬件有它自己的DDR控制器和外部DDR。硬件的DDR通過可移動內存窗口在嵌入式CPU上可見(所以我可以從Linux驅動程序分頁訪問外部DDR)。我正在使用Linux內核版本2.6.33。 我的驅動程序使用sysfs來允許從用戶空間控制外部硬件。例如,外部硬件會生成一個心跳計數器,用於增加外部DDR中的特定地

    3熱度

    1回答

    爲什麼有時需要創建新的工作線程來執行可延遲的工作函數,而不是僅僅在默認的「events/n」內核工作線程上安排它?