probe i2c and find data to use for userspace tools for DTS declaration...

Hey There,

So, I am trying to declare data in DTS format to handle the PCA9685 on board the Servo Cape from the BeagleY-AI in userspace.

Is the BeagleY-AI image(s) already hardcoded for i2c to perform a specific way without intervention of any kind?

Can intervention be performed to handle i2c from userspace on the BeagleY-AI image with kernel 6.1.x and what exact dtb is needed?

Also, would something like this DTS be in a working order for the BeagleY-AI?

// SPDX-License-Identifier: GPL-2.0
/*
 * DT Overlay for I2C1 at 400000 within the expansion header.
 *
 * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
 *
 */

/dts-v1/;
/plugin/;

/*
 * Helper to show loaded overlays under: /proc/device-tree/chosen/overlays/
 */
&{/chosen} {
        overlays {
                k3-am67a-beagley-ai-i2c1-400000.kernel = __TIMESTAMP__;
        };
};

&mcu_i2c0 {
        status = "okay";
        clock-frequency = <400000>;

        #address-cells = <1>;
        #size-cells = <0>;

        flash@50 {
                compatible = "microchip,ft24c32a-elrt;
                reg = <0x50>
        };

        pca9685: gpio@40 {
                compatible = "nxp,pca9685";
                gpio-controller;
                #gpio-cells = <2>;
                reg = <0x60>;
        };
};

I keep reading and cyclic endurance has beat me once again. If you know more than me, jump on in. I will keep learning.

While I am waiting on replies, I am going to research i2c instantiation and learn about i2c-dev.

Also, I will read up on the files located in /opt/source/ to better understand what you all beagleboard.org personnel people are doing with the ti and overlays files.