在
/usr/local/Cavium_Networks/OCTEONTX-SDK/dts/ 找到相對應的
xxxxxx-linux.dts
xxxx是board name
然後加入 /memreserve/
0x0000000010000000 0x0000000010000000;
Start
address size
(看device tree spec寫說要64 bits格式,所以我没省略前面的0,不知道可不可以省略。)
加在開頭的地方,如下圖:
然後make uboot-build
PLAT=t83,得到image再update。
另外可以修正PEM 避開pci resource 與 主版 memory resource 衝突的方式
目前已經找到workaround的方式,方法為修改device tree中PEM的ranges,ranges會決定PEM mapping給底下device BAR的起始位置,如下圖標示起來的地方
原本為 0x00 0x10000000 0x8810 0x10000000,
修改成0x00 0x00000000 0x8810 0x00000000
修改後,PEM在設定BAR時,會從0x0000 0000開始,
由於CN83XX的System RAM是由0x0280 0000開始(前面保留給其它device),
這樣子的設定就避開了System RAM的區段,如下圖
沒有留言:
張貼留言