Do I prepare and then compile the new image with a production Orin nano plugged into the dev kit?
Do we actually have to recompile the image after changing the 3 dtsi files ?
In the section “Naming the board”, where is this actually done?
The “root file system configuration” section talks about changes, what changes are needed ?
The “MB1 configuration changes” section talks about making changes… What do I need to do here? Just drop in my new dtsi files?
“Mem-BCT” - am I just leaving this as per the devKit image?
“MB2-BCT” do I just leave this as it is? No need to change anything ?
After performing the steps above, which I can narrow down (please confirm) to some conf file changes and then dropping in the dtsi files… what do I then do? Don’t I need to recompile the entire image (like I would have done with Yocto?)
Lower down the guide, you mention this “ Porting the Linux Kernel Device Tree Files” - this seems to be just changing dts files and regenerating a new dtb…. Is this “instead of” what you describe above by using an entirely new dts file? Or as well as?
If you only change the device tree, but not kernel code, then I think it’s not necessary.
Not sure about your question here. Do you mean where you will see this change take effect?
You can just use the sample rootfs provided by NVIDIA if you don’t plan to have a customized rootfs.
For Q5~7, I think you have to deep into the guide and see what changes you make to your custom board, which makes it different from our DevKit, and generate corresponding dtb files.
Is this one similar to Q2? Usually, recompiling kernel images are required when you want to use some peripheral devices, which needs to be enabled in kernel config. Note that kernel image and DTB files, which you need here, are two different things.
I think it’s just another perspective of how you start from the default device tree, and customize it to fit your need.
I dont think i need to recompile the kernel, I am quite sure i only need to change the dtsi files and ensure that they are applied to the image upon boot…
When are tyhe .dtsi files compiled into .dtb files? is this handled by this script? Or do i need to do it manually?
But then… what do i do with the compiled dtb files? Is there no guide at all for this?
All other vendors for embedded linux i used in the past always provide guides, where Nvidia are providing almost nothing at this stage…
We are designing a product we intend to manufactures in very high volume (50k units plus)… sure nvidia have more detailed documentation to assist with getting a custom carrier board working?
You can also specify kernel dtb in /boot/extlinux/extlinux.conf, and it should be easier to replace it without re-flashing in case your kernel dtb fails to work.
For the “quick and dirty” appraoch, you are talking about changing this line to reflect the new .dtb i have compiled from the .dtsi from the pinmux file right?
One more questio,n you say that the dtb must be manually compiled using a dtc compiler… if so, why do you not mention that here?
Your guide seems to imply that you simply need to copy the 3x .dtsi that are generated by the excel sheet into the locations, then alter the conf file created for the board…
then flash it…
Where does it mention that you need to use dtc to compile the .dtsi files before flashing?
Also, where does the xxx-gpio-defasult.dtsi get mentioned in the build scripts/conf files? I cannot see where you reference to it…
Does the modifed .conf script not handle all of the compilation including the .dtb compilation? I would assume so as you do not mention anywhere in the guide that you need to use dtc directly…? ?
sorry for misleading, and please ignore my previous comments.
There is no need to manually compile dtb files.
You just need to replace the default dtsi files with the one you generate with our spreadsheet, and make sure your <board>.conf points to the right dtsi files.
Note : I am going to be using the 8GB version production model in the product, so i need to flash that… I will be obviously using external nVME is storage…
So should i use the devkit carrier with the 8GB production (no SD slot) Orin Nano and a blank nVME SSD connected?
Then connect up and flash it with the modified .conf file ?
As follows…
One question, how come the gpio-default.dtsi isn’t mentioned in any of the .conf files? Is it automatically picked up?
The padvoltage.dtsi and pinmux.dtsi are specifically mentioned you see…
ill try a flash today on the devkit using the standard .dtsi and just try renaming the board to see if it is reflects in the rootfs file structure… then go for it on the custom carrier with the custom dtsi and cross my fingers :)