0

我試圖在我的樹莓派3板上使用AD5628數模轉換器。 Yocto內核中的驅動程序(http://lxr.free-electrons.com/source/drivers/iio/dac/ad5064.c)已啓用。Linux設備樹(AD5628)

但是當我打開路徑/sys/bus/iio/devices/

在(https://wiki.analog.com/resources/tools-software/linux-drivers/iio-dac/ad5446)提到我沒有得到任何器件0。 我才知道,這是一個設備樹的問題,所以我審閱一些網站(https://patchwork.kernel.org/patch/7374261/)和才知道,我需要添加如下設備樹細節

[email protected] { 
compatible = "adi,ad5628-1"; 
     reg = <4>; 
     spi-max-frequency = <10000000>; 
     adi,use-external-reference; 
      }; 

,但我無法找到在linux內核中添加這些信息的地方。以及如何爲此啓用設備樹,以便我的DAC設備應該被Linux檢測到。

關於這個問題將是任何幫助,不勝感激

回答

1

的DAC是如何連接到您的RP​​I板? (SPI/i2c .. ??),因此您需要將dac添加爲該設備的一部分。

例如,在您提到的dh連接到SPI的link中,在這些行上類似地,您需要添加DT節點並在內核中啓用驅動程序。

axi_spi_1: [email protected] { 
      #address-cells = <1>; 
      #size-cells = <0>; 
      compatible = "xlnx,axi-spi-1.02.a", "xlnx,xps-spi-2.00.a"; 
      ... 
      [email protected] { 
       compatible = "adi,ad5446"; 
       reg = <0>; 
       spi-max-frequency = <1000000>; 
       spi-cpha; 
       spi-cpol; 
       vcc-supply = <&dac_vcc>; 
      }; 
    }; 
+0

我的DAC通過SPI連接。目前我的DTS看起來像這樣兼容=「brcm,bcm2708」; 片段@ 0 { 目標= <&spidev0>; __dormant__ { status =「disabled」; }; }; –

+0

片段@ 1 { 目標= <&spi0>; __dormant__ {0121_#address-cells = <1>; #size-cells = <0>; status =「好的」; ad5064 @ 0 { compatible =「adi,ad5064」; reg = <4>; spi-max-frequency = <10000000>; adi,use-external-reference; vref-supply = <&vref_supply>; }; }; }; –

+0

我已經使用了評論中提到的DTS,但我無法獲得設備句柄嗎?所以天氣我應該改變DTS到上面提到的dts? –