Hello Michael El mar, 9 jul 2024 a las 0:38, Michael van Elst (<mlel...@serpens.de>) escribió: > > ea1...@gmail.com (Ramiro Aceves) writes: > > >I see that i2c works even if not configured on /boot/config.txt > >commenting the dtparam=i2c_arm=on: > > Yes, that dtparam doesn't exist in our DTB file. > > Our DTB file makes all 3 I2C devices available, like: > > i2c@7e205000 { > status = "okay"; > } > > i2c@7e804000 { > status = "okay"; > } > > i2c@7e805000 { > status = "okay"; > } > > __symbols__ { > i2c0 = "/soc/i2c@7e205000"; > i2c1 = "/soc/i2c@7e804000"; > i2c2 = "/soc/i2c@7e805000"; > } > > but only i2c@7e804000 should be used. > > I usually switch off the other two with an overlay: > > /dts-v1/; > /plugin/; > > / { > compatible = "brcm,bcm2835"; > > fragment@0 { > target = <&i2c2>; > > __overlay__ { > status = "disabled"; > }; > }; > > fragment@1 { > target = <&i2c0>; > > __overlay__ { > status = "disabled"; > }; > }; > > fragment@2 { > target = <&i2c1>; > > __overlay__ { > status = "okay"; > }; > }; > }; > > Since our device units usually just count up, the remaining one > is then bsciic0 / iic0 and a program can access it as /dev/iic0. >
Thank you very much for the information. I think I am starting to slightly understand all of theese "crazy arm boards". ;-) I think that using the following: https://man.netbsd.org/iic.4 https://man.netbsd.org/iic.9 I will be able to interact with any i2c sensor or device I could buy and connectd to the bus. First I have to re-learn everything about C programming I learnt in the past. :-) It will be an interesting exercise. Just a probably silly question: If I want to read the sensor that is being used by the bmh280thp driver, should I stop the driver first or the sensor can be inquired by the driver and my program ? Regards. Ramiro.