20170828_jeffrey - silenceuncrio/diary GitHub Wiki
0915
先釐清一下來自 CXR 的抱怨
Jeffrey,為何cxr的GPS板子可以燒不是GPS的image呢?他寫信抱怨燒錯Image導致GPS畫面不見了。我一頭霧水,我們不是有卡mscv嗎?
拿一片利用 mfgtool M310_GPS_v1.54_0136000015429B48_mfgtools.rar
做燒錄
開機先設定 hw_mcsv
=> printenv hw_mcsv
## Error: "hw_mcsv" not defined
=> setenv hw_mcsv 0136000000000000
=> save
Saving Environment to NAND...
Erasing NAND...
Erasing at 0x3e0000 -- 100% complete.
Writing to NAND... OK
=> printenv hw_mcsv
hw_mcsv=0136000000000000
1000
透過 WEB UI 試著 upgrade 成沒有 GPS 的 M300_v1.54_012C000015429B48.img
一看到 /tmp/FirmwareUpgrade.log
我呆掉了
bash-4.3# cat /tmp/FirmwareUpgrade.log
firmware upgrade shell script start...
Extract the tared firmware
Extract all files from /tmp/firmware.upload
tar -C /tmp -xf /tmp/firmware.upload succeeded
MD5 sums check...
firmware.md5 exist, read MD5 sums from it and check them
MD5 sums check succeeded
MCSV check...
mcsv.enc exist, decrypt it and check with hardware MCSV
decrypt mcsv.en
software MCSV: 012C000015429B48
software MCSV-MMMM: 012C
software MCSV-CCCC: 0000
hardware MCSV: 012C000000000000
hardware MCSV-MMMM: 012C
hardware MCSV-CCCC: 0000
Hardware customer ID is '0000' or '0001'
Software Customer ID is '0000' or '0001'
allow to upgrade
hardware MCSV-MMMM: 012C
- 很明顯的 bug ㄚ
1020
再次重開機先進 uboot
發現 hw_mcsv 被改掉了
=> printenv hw_mcsv
hw_mcsv=012C000000000000
哪個環節被改掉的呢?
先改回來
=> setenv hw_mcsv 0136000000000000
=> save
Saving Environment to NAND...
Erasing NAND...
Erasing at 0x3e0000 -- 100% complete.
Writing to NAND... OK
=> printenv hw_mcsv
hw_mcsv=0136000000000000
開機進 linux
再透過 WEB UI 來 upgrade 成沒有 GPS 的 M300_v1.54_012C000015429B48.img
bash-4.3# cat /tmp/FirmwareUpgrade.log
firmware upgrade shell script start...
Extract the tared firmware
Extract all files from /tmp/firmware.upload
tar -C /tmp -xf /tmp/firmware.upload succeeded
MD5 sums check...
firmware.md5 exist, read MD5 sums from it and check them
MD5 sums check succeeded
MCSV check...
mcsv.enc exist, decrypt it and check with hardware MCSV
decrypt mcsv.en
software MCSV: 012C000015429B48
software MCSV-MMMM: 012C
software MCSV-CCCC: 0000
hardware MCSV: 0136000000000000
hardware MCSV-MMMM: 0136
hardware MCSV-CCCC: 0000
Error: Model ID not match, MCSV check failed
bash-4.3# timed out waiting for input: auto-logout
Mobile Router#
這次就對了
所以應該是寫 hw_mcsv 的時間點
故意把 uboot env 的 uboot_env_ver
清掉
bash-4.3# fw_setenv uboot_env_ver
確定重開機有觸發 patching for the current applicaiton
Running local boot scripts (/etc/rc.local)## Error: "uboot_env_ver" not defined
uboot_env_ver not match, patching for the current applicaiton
找到是哪個環節去修改 hw_mcsv
了
bash-4.3# fw_printenv hw_mcsv
hw_mcsv=012C000000000000
uboot_env.sh
只要一被觸發就會做下述的事情
# set default hardware MCSV and serial number
fw_setenv hw_mcsv '012C000000000000'
fw_setenv serialno 'NA'
所以整個生產的環節
決定 hw_mcsv 的時間點要在 uboot_env.sh
被觸發之後
1135
目前已經跟 JB 確認他們設定 hw_mcsv 都是在 linux 做的
uboot_env.sh
先保持不動
已經告知生產單位該設備的序號讓他們去盤一下是哪邊漏了
1320
進行 OSPF
1440
ospf 這個 protocol 比起 rip 來的複雜很多
看來這個禮拜視作不完了
索性就規規矩矩的理解該 protocol 吧
1600
目前在看 OSPF Design Guide
內容真的是多到蠻難消化的
而且我覺得之前的 RIP WEB UI 還要調整過
不應該從 RIP 為一個單位去看事情
而是 M300 的每個 interface 是否要開啟 RIP 服務
另一個問題是 - 同一個 interface 上我可以又啟動 RIP 又啟動 OSPF 嗎 ?
目前從 OSPF Design Guide 得到的趕寫是不行的
1635
參考 http://www.racom.eu/eng/products/m/midge1/web_conf.html 可以得到 OSPF 的設計靈感
這個 產品 跟我們的 M300 很類似
1710
monkeyjj time
再看 ospf 會頭昏