Configuring GPIO pins for the jetson nano SO-DIMM connector

Hi,

We have made a custom carrier baord which is to go along with the system-on-module for the jetson nano. I need to configure the GPIO pins on the SO-DIMM connector for some of our custom purposes. For this I have followed the instructions mentioned in the link: https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide%2Fadaptation_and_bringup_nano.html%23wwpID0E06P0HA

As a test, I set the pin no.126 as gpio and gave it inputs using the command-line through /sys/class/gpio.

I tried to see the output on an LED attached to the respective pins on our board. However, there was no proper output. I also ran the command : sudo cat /sys/kernel/debug/info. Its output showed that there was no pin labelled “GPIO03” (the gpio label of pin 126).

I assume I haven’t followed the instructions correctly. I followed everything properly in the link given above, but I only did the instructions mentioned in the section “Pinmux Changes” and its sub-topic : " Updating the Bootloader Pinmux", up until the flashing. Is there anything else I need to do to configure the gpio pins on the pinmux of the system-on-modules as per my needs.

Please note that I need to configure the pins on the SO-DIMM connector as GPIO and not the 40-pin expansion header. Any help is appreciated.

-A_Mannan

hello abdul.mannan,

after you’d update pinmux spreadsheet to have customization, you should convert it as *.dtsi files and perform a flash process to update the board configuration.

BTW,
you may refer to Configuring the 40-Pin Expansion Header to use Jetson-IO python tool to simplify the configuration of the I/Os exposed by the 40‑pin expansion header.
thanks

Hi,

Thanks for replying. I will need a little more clarification on the steps. Where will I store the .dtsi files. Is there any document that expressively list the instructions ? If so, kindly do share it.

Also, thanks for sharing the link for configuring the 40-pin expansion header, but I am currently not looking to configure the expansion header. Rather I am looking to configure the pins of SO-DIMM connector of the System-on-module for the Jetson nano.

-A_Mannan

please refer to Pinmux Changes session for the steps to customize the pinmux spreadsheet.

Hi Jerry,

I have referred to the pinmux configuration section that you linked in your reply. I have followed the instructions till the flashing step. However, the I still am not able to see the gpio output through pin 126. I have basically ran some sample commands to test the pin, similar to the ones shown here : https://raspberrypi-aa.github.io/session2/bash.html

But the LED I have connected to the pin is not responding. I am not sure why.

-A_Mannan

hello abdul.mannan,

are you able to setup the device to probe the signaling?

Hi,

Do you mean, am I able to setup the LED with the respective pins, to check the signal output ?
Then, yes I am able to do so.

-A_Mannan

hello abdul.mannan,

I meant setup an oscilloscope to probe the pin-126, please check whether you’re able to see voltage changes.
thanks

Hi,

I have made the setup with an oscilloscope as you suggested. No, I have not seen any signal change. I don’t understand why it is not configuring.

-A_Mannan

I have copied the two .dtsi files in the proper directories, rebuilt the device tree image and flashed the jetson. However, older instructions from the archives, also mention something about Exporting pinmux for U-boot. Is this still applicable ?

-A_Mannan

Also, some forum posts mention something about generating and using cfg files, but there is no information of the sort in the lastest Jetson nano platform adaptation and bring-up guide.

-A_Mannan

Just FYI, from reading and our experience, the output current on Nano GPIO is way too low to drive an LED, you need a buffer. You said you tested with oscilloscope as Jerry asked, but if LED was still connected it probably couldn’t drive it.