Controlling the MAX7320 virtual gpio using Jetpack SDK 6.0

I am trying to interface the MAX7320 I2C slave device with the Jetson Orin Nano Developer Kit. The expansion header J40 pin 3 (I2C1_SDA) and pin 5 (I2C1_SCL) are connected to our custom board. The MAX7320 output GPIO is controlled by the Orin nano. The driver is probed, and virtual GPIOs are exposed, as shown in the below image.

Using the “gpioset” command, the value 1 is written into the respective pin of the gpiochip2.

test@test:~$ sudo gpioset 2 3=1
test@test:~$ sudo gpioset 2 4=1

When I read back the values using the “gpioget” command, it returns 1.
test@test:~$ sudo gpioget 2 3
1
test@test:~$ sudo gpioget 2 4
1

The port expander GPIOs are connected to the enable pin of the buck regulator, and the chip output supply didn’t power on. The voltage measured across the output test points is 0 volts.

Previously, we were using the Jetpack SDK 5.1.1 with Jetson Linux 35.3.1, and it was working fine. The Jetpack SDK 6.0 is flashed into the Orin Nano Developer Kit. After that, we couldn’t enable the buck regulators supply voltage using the virtual GPIO created by the MAX7320 IC. There is no source code difference in the “drivers/gpio/gpio-max732x.c” driver in both 5.10 and 5.15 Linux kernels.

I am seeing this issue only with jetpack SDK 6.0

Can you provide some suggestions for further debugging?

Hi sivasubramaniyan.padmanab,

Are you using Jetpack 6.0 DP(R36.2) or Jetpack 6.0GA(R36.3)?

Could you share the full device tree and the dmesg for further check?

Hi kevin,
I’m using jetpack SDK 6.0 production release with jetson linux 36.3.

Device tree node for MAX7320
hdr40_i2c1: i2c@c250000 {
status = “okay”;
gpio_exp_1: gpio@58 {
compatible = “maxim,max7320”;
status = “okay”;
reg = <0x58>;
gpio-controller;
#gpio-cells = <2>;
gpio-line-names = “O0”, “O1”, “O2”, “O3”,“O4”, “O5”, “O6”, “O7”;
};

                            };

During the gpioset/gpioget commands, there is no debug prints on the dmesg.

I would like to check if there’s any other error during boot up when it loads the MAX7320 module.
Please still share the full dmesg for further check.

The input supply voltage is not going into the buck regulator and configured one more gpio to enable the power to the regulator. Now I am able to control the MAX7320 using libgpiod commands.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.