Linux设备树(AD5628)

时间:2016-11-28 04:42:53

标签: linux linux-kernel linux-device-driver device-tree archlinux-arm

我正在尝试在我的覆盆子Pi 3板上使用AD5628数模转换器。我在Yocto内核中启用了驱动程序(http://lxr.free-electrons.com/source/drivers/iio/dac/ad5064.c)。

但是当我打开路径/sys/bus/iio/devices/

在(https://wiki.analog.com/resources/tools-software/linux-drivers/iio-dac/ad5446)中提到我没有得到任何设备0。 我知道这是一个设备树问题,所以我审阅了一些网站(https://patchwork.kernel.org/patch/7374261/)并且知道我需要添加以下设备树细节

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

但是我无法找到在linux内核中添加此信息的位置。以及如何为此设备树启用,以便Linux检测到我的DAC设备。

非常感谢有关此问题的任何帮助

1 个答案:

答案 0 :(得分:1)

DAC如何连接到RPi板? (SPI / i2c .. ??),因此您需要将dac添加为该设备的一部分。

例如,在您提到的link中,dac连接到SPI,因此在这些行上类似,您需要添加DT节点并在内核中启用驱动程序。

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