JETSON-AGX-8GB,can't boot up after flashing changed devicetree

I designed a customer board for my jetson-xavier-8GB. HDMI channal is ch1 instead of ch2 (P2822 board used).So,I changed and replaced original devicetree as fllowing pictures,but module can’t boot up. Is there a problem with the modification ?

Hi,

The way you are sharing device tree does not provide much detail… Please share the diff file for what you changed…

BTW, I don’t think what you changed here is correct. For example, hda is not related to what you changed.

Changing SOR0 is also not sufficient for what you want…

The “sor” is the subnode of node“host1x".


agx-8gb.dts (346.5 KB)

Hi

我講得明白一點. 你改完的東西跟你想要做的事情一點關係都沒有

DP0/DP1/DP2這三根pin對應的就是 device tree裡面的SOR0(sor)/SOR1/SOR2.
如果你的硬體改動是希望把HDMI從預設的SOR2移動到SOR1. 那麼改SOR0這件事情就是錯的. 因為根本改錯node…

還有 hda是給audio用的 改那個對你的目的也沒有太大的幫助…

你應該要做的是看一下原本的nvdisplay 跟sor的mapping關係 然後參考sor2的寫法把 sor1的HDMI給打開來…

Thank you first. I followed your suggestion,module can boot up,but HDMI1 port doesn’t work .Uart debug shows “31c0000.i2c”,it seems like errors.

agx-8gb-7.dts (346.5 KB)
session7.log (36.0 KB)

  1. 你的 sor1這個還是在用DP

nvidia,active-panel = <0x7d>;

  1. Devkit 上面type C for DP的設定用不上了 所以也得拿掉

[ 16.874901] Could not get extcon-dev /host1x/nvdisplay@15210000:typec0(0)
[ 16.876136] Could not get extcon-dev /host1x/nvdisplay@15220000:typec1(1)

hardware/nvidia/platform/t19x/galen/kernel-dts/common/tegra194-p2888-0001-p2822-0000-common.dtsi裡面的type C 0/1還有那個sor0/1的 nvidia,typec-port 也請拿掉

  1. 你的log沒有用. 麻煩把quiet 從/boot/extlinux/extlinux.conf拿掉之後重新dump一次…

For step1:

step2:

I search at root directory ,but can’t found tegra194-p2888-0001-p2822-0000-common.dtsi . My system version is R32.4.3

So, I delect the node “15210000” and “15220000” in dts document,and de-compile it to dtb .


step3:
delect “quiet” from /boot/extlinux/extlinux.conf
session8.log (90.8 KB)

Finally, HDMI1 can’t still work.

請問一下你是怎麼改device tree的?

我們有提供device tree的原始source code. 我所提到的那個檔案就在那邊
正常來說我們都是透過原檔在更改device tree的. 不然透過dtc轉檔的話很多都是hex value, 你也不好看懂.

我也不是叫你刪除這兩個節點… 刪掉了你的display就不會動了 … 麻煩進入狀況一下…

So, I delect the node “15210000” and “15220000” in dts document,and de-compile it to dtb .

I copy the “tegra194-p2888-0006-p2822-0000.dtb” from /boot/dtb ,and compile it to dts, change nodes from this dts.Then de-compile it to dtb and place original location, change the extlinux.conf at the same time.

如果你對device tree很熟, 你想要怎樣改都沒有關係, 確認內容是正確就可以了

如果你對device tree不熟, 麻煩照著我們文件做吧. 不然雞同鴨講. 改一堆hex value你也不知道為何要改
https://docs.nvidia.com/jetson/archives/l4t-archived/l4t-3261/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/kernel_custom.html#

另外, 我這裡說的事情跟hdmi無關 只是build device tree的方法而已

OK,I will download the source code ,and change as your suggestions.

大概講解一下 dispaly device tree的架構

SORx代表的是你的hardware pin 對應: SOR0 → DP0. SOR1-> DP1. SOR2->DP2.
所以你的板子, sor1務必enabled. 而且要設成hdmi mode.

每一個SOR都要有一個nvdisplay去認領. Nvdisplay才是software controller. 每一個nvdisplay要控制哪個SOR可以透過 "nvidia,dc-connector"這個property做切換.
所以你要使用nvdisplay@15200000, nvdisplay@15210000, nvdisplay@15220000 都沒有關係, 務必確認 nvidia,dc-connector指到的是你有接hdmi的那個sor.

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