Please refer to the following instruction to configure and apply custom pinmux change .
NVIDIA Jetson Linux Developer Guide : Jetson Module Adaptation and Bring-Up - Pinmux Changes
Through the process in the tutorial, I was able to enable SPI1 by modifying Pinmux. If possible, how can I modify the corresponding pins?
What do you mean here? Could you clarify what’s your exact requirement?
Configure for SPI or GPIO?
Both are required. After previous communication, I have learned how to configure GPIO. But VS1053B uses 4 GPIOs and SPI, so I still need to know how to configure SPI. Is it possible to modify pinmux.xlsm?
No matter you want to configure SPI or GPIO, you could just use pinmux spreadsheet to configure them according to your use case.
Thank you very much, as I have relatively little knowledge of the system kernel, I have to ask how I should modify the fields in the table if I want to use this SPI as a regular SPI.
Thank you
Have you built tegra_defconfig
before build dtbs
?
Do you add any change in Makefile to build dtbs
?
Hi, KevinFFF!
I built tegra_defconfig
before build dtbs
.
I didnt add any change in Makefile to build dtbs
.
I found that although there was an error in compiling dtbs
, the dtb
file I needed seems to have been successfully compiled.
I found this dtb
file,and follow the tutorial to copy this file to Linux_for_Tegra/kernel/dtb/
.
Then I executed
sudo ./flash.sh jetson-nano-devkit mmcblk0p1
.
But it stopped at this step.
[ 2.9675 ] Saved platform info in storage_info.bin
Then I executed
sudo ./flash.sh jetson-nano-emmc mmcblk0p1
The system installation was successful, but I found that GPIO-65
is still occupied by ?
.
Did I make a mistake at any point?
Could you build dtbs
w/o any issue if you use default pinmux spreadsheet?
Are you using Jetson Nano with internal eMMC or SD module?
Have you confirmed which dtb is in use for your board?
Should I copy and decompile the DTB files in the new system into DTSI files and compare them with my pre compiled DTSI files?
step 7. I found a newly generated DTB
file in this directory
/Linux_for_Tegra/sources/kernel/kernel-4.9/arch/arm64/boot/dts/_ddot_/_ddot_/_ddot_/_ddot_/_ddot_/_ddot_/hardware/nvidia/platform/t210/porg/kernel-dts
named tegra210-p3448-0002-p3449-0000-b00.dtb
So I copy it to directory
/Linux_for_Tegra/kernel/dtb
And I executed step 8
Am I doing the right thing?
When I executed ./flash.sh, output this:
This DTB file is the one I copied over.Can I confirm that this system is built based on the DTB I copied from the past?
I decompiled /boot/kernel_tegra210-p3448-0002-p3449-0000-b00.dtb
file in the new system.
According to the dtsi file generated by pinmux, nfc_int_pi1
should be the same as ph6
, but obviously not. So I must have made an error while building the system.
我反编译了新烧录系统的dtb文件,修改dts文件后重新编译,并且复制到烧录的的计算机中,重新烧录。然后在新烧录的系统中反编译/boot/kernel_tegra210-p3448-0002-p3449-0000-b00.dtb,查看dts文件确定了修改已经生效,但是查看gpio的日志,gpio-65依然被占用无法导出。
Why nfc_int_pi1
should be the same as ph6
?
gpio-65 should map to PI.01
, which is also nfc_int_pi1
Could you share the the kernel_tegra210-p3448-0002-p3449-0000-b00.dtb file for further check?
Because these two pins are both output from VS1053B to Nano, while the others are output from Nano to VS1053B.
kernel_tegra210-p3448-0002-p3449-0000-b00.dtb (231.6 KB)
PI.01
and PH.06
are both the input pin for Jetson as default but they are different pins.
I will suggest refer to the instruction and configure the pinmux and build kernel/dtb correctly.