Linux 设备树 (AD5628)

Linux device tree (AD5628)

我正在尝试在我的 raspberry 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 设备。

任何有关此问题的帮助将不胜感激

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>;
          };
    };