cs42xxc-i2c: i2c device and driver not connected through deivce-tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

on my system I have a cs42448 chip connected on a i2c bus to a i.Mx8mp. The chip is connected on i2c-2 with address 0x48 and I can detect it and read registers with help of i2c-tools. Running kernel v6.0 and having problem as the device and driver is not connected in my system. The probe function (cs42xx8_i2c_probe) is never called during initialization. The module is loaded in the kernel.

Here is a snippet from the dtb file:

    codec: cs42xx8@48 {
        compatible = "cirrus,cs42448";
        reg = <0x48>;
        reset-gpios = <&gpio4 9 GPIO_ACTIVE_LOW>;
        #sound-dai-cells = <0>;
        clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK1>;
        clock-names = "mclk";
        VA-supply = <&reg_audio_pwr_5v0>;
        VD-supply = <&reg_audio_pwr_3v3>;
        VLS-supply = <&reg_audio_pwr_3v3>;
        VLC-supply = <&reg_audio_pwr_3v3>;
    };

Tried to dig in to the code and understand why the device and the driver is not connected with each other. I assumed that they should be connected through device-tree.

In sound/soc/codec/snd-soc-cs42xx8-i2c.mod.c:

MODULE_ALIAS("i2c:cs42448");
MODULE_ALIAS("i2c:cs42888");

So there are no alias to of: in that file.

Do I have the wrong assumption about connecting the device with the driver through the device-tree? Something wrong in my dts snippet above? Great if someone could help out with some ideas around this.

Thanks,
/Peter





[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux