|
本文檔主要講解在 iMX6Q/D/PLUS 開發(fā)板的設(shè)備樹內(nèi)核(4.1.15)源碼中,注冊設(shè)備需要在設(shè)備樹文件“arch/arm/boot/dts/imx6qdl-sabresd.dtsi”中添加設(shè)備樹語句,主要是添加設(shè)備名稱和添加使能。 1 注冊設(shè)備 打開內(nèi)核源碼中的設(shè)備樹文件“arch/arm/boot/dts/imx6qdl-sabresd.dtsi”,在“itop_max485_ctl”之后添加以下代碼:
以上添加代碼,“test_dev”是設(shè)備樹節(jié)點的名稱;屬性“compatible”的值是“test_dev_name”,也就是設(shè)備名稱;“status = "okay";”表明這個設(shè)備樹節(jié)點是使能的,設(shè)備樹初始化的時候需要使能。 2 注冊設(shè)備測試 修改完成之后,重新編譯燒寫到開發(fā)板中,如下圖所示,在開發(fā)板串口控制臺下,使用命令“l(fā)s sys/bus/platform/devices/test_dev/”。
在“sys/bus/platform/devices”中生成了設(shè)備樹的節(jié)點“test_dev/”,節(jié)點下有屬性值。使用命令“cd sys/bus/platform/devices/test_dev/”進(jìn)入節(jié)點目錄。 使用命令“cat of_node/compatible”和“cat of_node/status”,可以查到在設(shè)備樹中添加設(shè)備對應(yīng)的值,如下圖所示。
至此,設(shè)備注冊完成,后面介紹驅(qū)動注冊,驅(qū)動注冊的時候,驅(qū)動名稱要和這里的設(shè)備名稱一致,才能進(jìn)入 probe 中。
|