2012-05-22 114 views
0

我寫了一個簡單的設備驅動程序。只有加載模塊我的設備文件正在創建。但是,當我的應用程序嘗試打開設備文件時,出現錯誤-1 (operation not permitted)。當我試圖通過執行命令來查看設備的特點:設備節點,但設備驅動程序沒有得到聯

$udevadm info -a -p /sys/class/char/<devname> 

我得到的輸出:

KERNEL=="<devname>" 
SUBSYSTEM=="char" 
DRIVER==" " 

因此很明顯,我的設備節點不獲取鏈接到設備驅動程序。

任何人可以幫我了這一點。

謝謝

回答

1

您是否檢查過設備節點udev創建的權限?

Udev的管理這些設備節點的權限,除非你以root身份運行它很可能是因爲您不能從/設備節點的讀/寫。

編輯

如果你正在運行的根設備節點的權限將不會是一個因素。請告訴我們的/ proc /設備的ls -la /dev/my-device-node代碼輸出的內容。

+0

非常感謝你的回覆。我以root用戶身份運行。所創建設備節點的權限爲crw-rw ----。我應該如何更改權限而不使用chmod。 – user1395806

+0

當我使用udevadm信息爲我的設備獲取驅動程序費爾德空即「」可能是什麼原因。 – user1395806