所以有相關資料後 有嵌入式系統經驗的人就能拿來再利用
但我這篇是要講 注意事項
詳細教學基本上就是直接看 NextVOD unit Hacking - 網樂通改機
文中沒寫到的很重點部分就是 隨身碟格式 會影響你是否 hack 成功與否! 及可能成為半磚狀態
因為第一次我用錯格式了~ 就成了半磚!! 只能拆機 接 TTL~ 才能救回..
拆機也很簡單~ 後面四顆腳下翻開(雙面膠) 裡面有螺絲 轉下後就可以開蓋了
拆了後發現其實它裡面是有一支 8G USB DOM .. 只是沒一般 USB A頭(A-type plug).. 把 4-Pin 杜邦接頭用個連接線轉接到一般電腦 USB 的話它就只是個無殼隨身碟
* 網樂通_機上盒 改BT脫機下載 <-- 裡面有照片
也因此小摸熟了整個流程
結論 FAT16 FAT32 跟 EXT3 三種格式的隨身碟會有三種結果..一開始用那一支是 FAT16 所以並不會發生教學中的
4. 的 畫面會停在: "更新失敗" 而是會直接就跑完救援模式的還原 就直接 reboot 了~
這篇安裝教學隨身碟是 only FAT32.. 其餘不可用
用 TTL 接著看開機訊息如下
正常開機模式
開機中機子為藍燈閃爍
完成開機藍燈恆亮
Board: STx7105-PDK [32-bit mode] U-Boot 1.3.1 (Nov 10 2010 - 10:23:47) - stm23_0045 DRAM: 256 MiB SPI: ST M25P80 (1MiB) device (page=256,erase=4096) In: serial Out: serial Err: serial Svn Version: 5804 [uboot_gb620]:update flag = 1 [uboot_gb620]:P/N flag = 2 [uboot_gb620]:NTSC... (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found Hit any key to stop autoboot: 0 .....略....
使用 ext3 格式隨身碟進救援模式時
機子為藍燈閃爍
Board: STx7105-PDK [32-bit mode] U-Boot 1.3.1 (Nov 10 2010 - 10:23:47) - stm23_0045 DRAM: 256 MiB SPI: ST M25P80 (1MiB) device (page=256,erase=4096) In: serial Out: serial Err: serial Svn Version: 5804 [uboot_gb620]:update flag = 1 [uboot_gb620]:P/N flag = 2 [uboot_gb620]:NTSC... (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found [uboot_iptv]:Can not find directory. ** [error]:FileSystem not found /root ...卡住不動了
使用 fat16 格式隨身碟進救援模式時
機子為藍燈閃爍
Board: STx7105-PDK [32-bit mode] U-Boot 1.3.1 (Nov 10 2010 - 10:23:47) - stm23_0045 DRAM: 256 MiB SPI: ST M25P80 (1MiB) device (page=256,erase=4096) In: serial Out: serial Err: serial Svn Version: 5804 [uboot_gb620]:update flag = 1 [uboot_gb620]:P/N flag = 2 [uboot_gb620]:NTSC... (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found ** Partition 1 not valid on device 0 ** ** Unable to use usb 0:1 for fatload ** (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found Hit any key to stop autoboot: 0 ....略...就是不會停的直接還原完成後就 reboot 回正常模式
使用 fat32 格式隨身碟進救援模式時
機子為紅燈閃爍
Board: STx7105-PDK [32-bit mode] U-Boot 1.3.1 (Nov 10 2010 - 10:23:47) - stm23_0045 DRAM: 256 MiB SPI: ST M25P80 (1MiB) device (page=256,erase=4096) In: serial Out: serial Err: serial Svn Version: 5804 [uboot_gb620]:update flag = 1 [uboot_gb620]:P/N flag = 2 [uboot_gb620]:NTSC... (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found Failed to mount ext2 filesystem... reading iptvubootupdate.bin ** Unable to read "iptvubootupdate.bin" from usb 0:1 ** (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found Hit any key to stop autoboot: 0 .... ................................................................................... ................................................................................... ..................................................................... 2459189 bytes read ## Booting image at 80000000 ... Image Name: Linux 2.6 Image Type: SuperH Linux Kernel Image (gzip compressed) Data Size: 2459125 Bytes = 2.3 MiB Load Address: 80800000 Entry Point: 80801000 Verifying Checksum ... OK Uncompressing Kernel Image ... OK CMDLen=169 There is "hwaddr" keywords! Position=95 Read MacAddr=24cf21b0cbe8 [iptv_kernel]:Starting kernel console=ttyAS0,115200 root=8:1 rootfstype=ext3 rw rootflags=data=journal nwhwconf=device:eth0,hwaddr:24:cf:21:b0:cb:e8 phyaddr:0,watchdog:5000 mem=120M bigphysarea=2048 - 0x00000000 - 0 ... Linux version 2.6.23.17_stm23_A18B-PDK7105-32BITS-A18B ([email protected]) (gcc version 4.2.4 (snapshot) (STMicroelectronics/Linux Base 4.2.4-48)) #3 PREEMPT Thu Aug 12 10:08:23 CST 2010 Booting machvec: pdk7105 Node 0: start_pfn = 0x40000, low = 0x47800 Zone PFN ranges: Normal 262144 -> 292864 Movable zone start PFN for each node early_node_map[1] active PFN ranges 0: 262144 -> 292864 STMicroelectronics PDK7105-SDK board initialisation <<<< Current Kernel SVN version is 5272 >>>> This kernel is for GB620 IPTV !!! STx7105 version 3.x .....略....最後會停在 Reading flag successfully spi_flag = 2 User mode loader.c: 676: File exists Open /mnt_ext_usb/GB620.svf failed GB620.svf does not exist /mnt_e spi25pxx write 1 bytes to 0x090000 xt_usb/target.enc is error Update files do not exist or error Update failed
另外補充 OSSLab 上 安裝 STLinux Cross-Compile Enviroment(交叉編譯環境) 至 Ubuntu
如果照這篇的安裝方法 會沒辦法在 Ubuntu 12.04 上安裝上... 要直接由 STLinux 官網教學 直接裝 STLinux 2.4
以下是第一次用錯格格式研究後發現的
-
有最重要的關鍵點在於那個救援模式(/dev/sda1)的 loader.exe <-- 就是他跑整個還原機制 把分割區二(/dev/sda2)格式化後 mount 到 /mnt_system 然後把 /target.tgz 解開到 /mnt_system 就是第二分割區 /dev/sda2 跟 最後修改 u-boot 的 bootcmd bootargs 改回由 /dev/sda2 boot 然後 reboot
重點在於 loader.exe 跑到最後的 reboot
依照這得安裝教學應該要出現 "更新失敗"
但實際上我的機器會直接就自動 reboot, 所以根本無法完成把 tar xzf /mnt/usb/target_IPPBX_xxxxx.tgz -C /mnt/app 做完的動作.. 動作快一點的人可能剛好解到一半 機器就直接 reboot 了
慢的人可能來不及做到 tar xzf /mnt/usb/target_IPPBX_xxxxx.tgz -C /mnt/app 就已經又還原完成 reboot 了
我嘗試直接 去把 loader.exe 做到一半的 tar xzf /target.tgz -C /mnt/system 這動作直接 kill 就會出現 "更新失敗" 但因為 沒跑完~
所以 /dev/sda2 會缺檔案無法正常 boot
u-boot 也沒改回去由 /dev/sda2 就會一直的在 /dev/sda1 boot
呈現半磚狀態...
到最後還是得靠 拆機 TTL 接進去做 最一勞永逸
最後補充一些相關資料
網樂通改成 Linux 2012/10/25
UBUNTU 12.10, 網樂通 JTAG 學習最徹底的改機 2012/10/12
網樂通改機進度 2012/10/02
沒有留言:
張貼留言