Hi,
In my custom Linux for Ultrazed, it does not detect the child i2c busses of the 9542 mux. I receive the following messages during boot.
Hi,
In my custom Linux for Ultrazed, it does not detect the child i2c busses of the 9542 mux. I receive the following messages during boot.
Hi Kevin,
Thanks for the reply. Yes, I have that already. I have a custom Yocto, but I am using PetaLinux tools to generate the device tree and to generate the boot image. Then applying copying the device tree, AVNET's board level device tree settings, as you pointed to in their Github, using the PetaLinux generated configs to build my kernel image and rootfs.
I'm struggling to find any difference between my configuration and the AVNET BSP.
Thanks,
Richard.
I've found the issue. The meta-xilinx layer I was using appears to relate to 2017.1 release. There was an update to the pca954x driver which resolves the issue. I'm not in a position to update the meta-xilinx layer right now, but applying a patch to the newer driver worked.
Hi Richard,
That is great news! Thank you for sharing your findings with our community!
Best Regards,
-Kevin
Hi Richard,
Do you have any device entries for the I2C mux?
This is what I have in my device tree:
&i2c1 {
status = "okay";
clock-frequency = ;
i2cswitch@70 { /* U7 on UZ3EG SOM */
compatible = "nxp,pca9542";
#address-cells = ;
#size-cells = ;
reg = ;
i2c@0 { /* i2c mw 70 0 1 */
#address-cells = ;
#size-cells = ;
reg = ;
/* IIC_EEPROM */
eeprom@51 { /* U5 on UZ3EG IOCC and U7 on the UZ7EV EVCC*/
compatible = "at,24c08";
reg = ;
};
};
};
};
This is taken from here:
https://github.com/Avnet/petalinux/blob/master/configs/device-tree/system-user.dtsi.UZ3EG_IOCC
Best Regards,
-Kevin