sysfs

    1熱度

    2回答

    我試圖學習如何編寫一個sysfs模塊,並對基本初始化感到困惑。在查看kobject.h文件的this文檔中,有幾個與創建sysfs條目相關的不同功能。 從它的外觀,功能「kobject_init_and_add」好像使用了正確的事情,這需要執行以下操作: 90 int kobject_init_and_add(struct kobject *kobj, 91 struct kobj_

    1熱度

    2回答

    我正在使用Raspberry Pi 3 B型上的USB端口通過USB充磁電纜給附件充電。我想要檢測電纜何時插入並從Pi中移除。 我一直在插入和刪除此電纜,並尋找在Linux上檢測到的任何痕跡。到目前爲止,我已經嘗試過: 通過udevadm monitor監控udev事件。 尾礦系統日誌中/var/log等 在/dev目錄對新設備 在/sys/bus/usb/devices四處尋找任何線索 運行in

    0熱度

    2回答

    我試圖在Android sysfs中搜索文件,首先我想檢查文件是否存在,以及它們是否可訪問。我試着用下面的Java代碼的第一步: String filePath = "/sys/some/path/to/some/file"; try { File file = getApplicationContext().getFileStreamPath(filePath); if (

    8熱度

    1回答

    我正在寫驅動程序來控制一些自定義硬件。 在過去的日子裏(即15年前),我用ioctls來做這件事,但現在我正在挖掘sysfs作爲一種可能的選擇。 據我所知,讀寫控制不完全棄用,但sysfs中優選(?) 我需要通過一個sysfs的條目讀/寫集同時即值。我讀過這樣的說法並不理想,但可以接受(?) 驅動程序需要'mutex'保護,以便一次只能有一個應用程序寫入。 (我確實有一些只讀的'info'條目,我

    2熱度

    1回答

    有沒有辦法以編程方式使用一些sysfs結構讀取內容/proc/bus/input/devices? 我知道我可以解析文件並獲取值。但我期待着是否有更好的方法。

    0熱度

    1回答

    我有一個需求來創建一個Linux內核驅動程序,通過接口板通過I2C接口與一堆MCU。因爲它們的數量會很多,即大約1-18個,我們正在使用恩智浦/ TI I2C多路複用器。 我已導入恩智浦/ TI I2C多路複用器內核驅動程序,並將它們合併到DTS文件中。我已成功地將所有I2C多路複用器列爲不同的i2c-x節點。 MCU的全部使用相同的地址0x08。我創建了一個內核驅動程序,它爲它創建了一個接口。

    1熱度

    1回答

    GPIO狀態變化觸發我有一個GPIO引腳,其價值已在sysfs節點/sys/class/gpio/gpioXXXX/value)表示,我想檢測改變該GPIO引腳的價值。根據the sysfs documentation你應該使用poll(2)或select(2)爲此。 但是,poll和message只能用作系統調用,而不能用於bash。有沒有一種方法可以用來通過bash腳本中GPIO引腳功能的狀態

    2熱度

    2回答

    我正在使用sysfs,並且我需要在sysfs下創建一個文件,該文件應該是所有用戶都可讀寫的,爲此我將'__ATTR'中的權限設置爲0666。但是模塊不能編譯,當我將權限更改爲0660時,它編譯正確。 ,我用0666權限得到的錯誤消息如下 `/home/rishabh/kernel_modules/Task09/task9.c: At top level: include/linux/bug.h:

    0熱度

    1回答

    我試圖通過PCI提供DMA。爲此,我有一個sysfs驅動程序的例子。我成功地將數據存儲到RAM中,但不幸的是我無法讀取它們。我有一個函數store_dmaread和show_dmaread。我通過這樣的c代碼訪問它們。寫函數可以正常工作,但是我通過read()函數打開的顯示函數(讀取DMA數據,打印它們),但用戶空間緩衝區在該函數中不可見。 char buf[2] = {3,3}; fw = o

    0熱度

    2回答

    我想寫一個輸出到GPIO引腳1秒的腳本。 我發現最好的方法是通過GPIO sysfs命令,但我一直隨機地收到「Segmentation Fault」。這主要發生在設定方向時。在bash腳本和終端中運行時也會發生這種情況。 sudo echo 227 > /sys/class/gpio/export sudo chmod 777 /sys/class/gpio/gpio227/* sudo ec