Looking at the contents of 「/proc/device-tree/gpio@6000d000」, this was the contents of the tool.
And, High is not output from GPIO13 pin.
Are there any settings missing in the device tree?
it’s device tree to include the settings, could you please disassembler the dtb file into text file for examination.
for example, $ dtc -I dtb -O dts -o output.txt tegra210.dtb
so, the gpio number of TEGRA_GPIO(E, 6) is… 4 * 8 + 6 = 38 = 0x26
it shows you’re having TEGRA_GPIO(E, 6) as gpio-output-high.
With the device tree I attached, the output of “GPIO13 / GPIO3_PE.06” should be High, right?
But that’s not the case.
The contents of “proc / device-tree / gpio @ 6000d000 / default / gpio-output-high” when using this device tree are as follows, and it seems that Linux can recognize the device tree settings.
please also refer to Jetson Nano Boot Flow. it’s kernel stage to configure the pin state through device tree settings.
I assume you’ll see the expect pin state after it boot into linux, right?
I assume you’ll see the expect pin state after it boot into linux, right?
Even after booting Linux, the pin output did not go high.
There are some pins that I want to control when starting Linux, so I want to be able to control them in the device tree.
there’s TXB level shifters, and there are some considerations that must be considered when using the signals that come from (or go to) these level shifters.
please access applications note for reference, Nano’s 40-Pin Expansion Header GPIO Usage Considerations.
thanks
I read Nano’s 40-Pin Expansion Header GPIO Usage Considerations, but it didn’t say that control was needed.
It says that the TXB0108 will do a level shift between the Jetson Nano and the 40-PIN, but it says it will always be enabled when the power is turned on.
Do you need control of TXB0108?
Hi k-irisa,
Can you provide me the output of following from Nano’s terminal after you made the changes in device tree.
cat /sys/kernel/debug/gpio
echo 38 > /sys/class/gpio/export
cat /sys/class/gpio/gpio38/direction
cat /sys/class/gpio/gpio38/value
Hi k-irisa,
It looks like something is wrong with your steps.
I followed these steps and i can see it output-high.
In gpio dtsi:
gpio-output-high = <
TEGRA_GPIO(E, 6) // This is added
In pinmux file:
pe6 {
nvidia,pins = “pe6”;nvidia,function = “rsvd0”;
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
Compile these changes and update kernel dtb in the final tree : Linux_for_Tegra/kernel/dtb/
and flash.
Check if you also have made the same changes.
My final dtb contents:
Dumped using dtc command to change dtb to dts:
pe6 {
nvidia,pins = “pe6”;
nvidia,function = “rsvd0”;
nvidia,pull = <0x0>;
nvidia,tristate = <0x0>;
nvidia,enable-input = <0x0>;
};
gpio-output-high = <0x6 0xbb 0xe7 0x26>;
There is no update from you for a period, assuming this is not an issue any more.
Hence we are closing this topic. If need further support, please open a new one.
Thanks
Hi k-irisa,
Sorry for the late response.
Would like to know if you are still facing the same issue?