
仿¥ãSoC
RTD1185 -RTK300 Rev.ã«åºã¥ãããããã°ããŒãã䜿çšããŸããã C1-ãã«ãã¡ãã£ã¢ããã€ã¹ã®éçºçšã ãã®èšäºã®ãã¬ãŒã ã¯ãŒã¯ã§ã¯ããã®SDKã®æè¡çãªãã©ã¡ãŒã¿ãŒã«ç²ŸéããããŒã¹ã®Linuxã«ãŒãã«ãšãã®äžã®rootfsãåéããŠå®è¡ããããã»ã¹ã®ããã€ãã®åé¡ã解決ããŸãã
å
責äºé
ïŒãã®èšäºã¯çµéšã®ããLinuxãŠãŒã¶ãŒã察象ã«ããŠããŸãããå°ãªããšã现éšã«ã€ããŠã¯è§ŠããŠããŸããã ã質åãããã°ãã³ã¡ã³ãããŠãã ããã
Realtekã®å人ã«ãããããäžã®ãã®ã·ã¹ãã ïŒã³ãŒãåJupiterã圌女ã®å
åŒRTD1186ãªã©ïŒã¯ãHD MPEG 1/2/4ãH.264ãVC1ãRM / RMVBãããªåœ¢åŒããã³ãŒããããã«ãã¡ãã£ã¢ã¢ããªã±ãŒã·ã§ã³åãã«èšèšãããŠããŸãã ã¡ãã£ã¢ããã»ããµã¯ãUSB 2.0ããã³SATAã³ãã¯ã¿ãPCI-Expressãã¹ãããã³ã®ã¬ãããã€ãŒãµããããããã¯ãŒã¯ã€ã³ã¿ãŒãã§ã€ã¹ããµããŒãããŠããŸãã
察å¿ãããããã¯ãŒã¯ã³ã³ãããŒã©ãŒãšçµã¿åãããã€ãŒãµãããã®ååšã«ãããæå€§1ã®ã¬ããã/ç§ã®éåºŠã§æç·ãããã¯ãŒã¯ãä»ããŠããŒã¿ã転éã§ããŸãã ãã®ããã€ã¹ã¯çŸä»£ã®æšæºã§ã¯CPUåšæ³¢æ°ãå°ãããªã£ãŠããŸããããã®ãã©ã¡ãŒã¿ãŒã¯åŒ·åãªãããªãã³ãŒããŒã«ãã£ãŠè£æ£ãããŠããããã«ãã¡ãã£ã¢ã¢ããªã±ãŒã·ã§ã³ã§ã®ãã®ãããã®äœ¿çšãæ£åœåããŠããŸãã
RTD1185ã®æè¡çãã©ã¡ãŒã¿ãŒïŒ- CPUïŒ500 MHz
- HD MPEG 1/2/4ããã³HD JPEGãã³ãŒããŒ
- HD H.264ãVC1ãRM / RMVBãAVSãã³ãŒããŒ
- CVBS / Sãããª/ YPbPr / SCARTåºåä»ãTVãšã³ã³ãŒããŒ
- CECä»ãHDMI v1.3
- I2SãSPDIFã¢ãŠã
- USB2.0ãã¹ãããã³PHY
- USB2.0ããã€ã¹ãšPHY
- SATA
- 10/100ã€ãŒãµãããMACããã³PHY
- ã®ã¬ãããã€ãŒãµãããMAC
- PCI Express
- ã«ãŒããªãŒããŒïŒSD / MMCïŒ
- DTVé²ç»ãšã¿ã€ã ã·ãã
- ãã¥ã¢ã«TS-In
Realtek RTL-1185ããã
ããŒãã«ã¯ãIRãªã¢ã³ã³ãä»å±ããŠããŸãã Realtekãããååæ©èœãããSDKãåãåããŸãããããã¯ããã¡ãŒã ãŠã§ã¢ã¢ã»ã³ããªã«é¢ãããã¹ãŠã®åé¡ã解決ããªããã°ãªããªãã£ãã¯ãã§ãã ãã¿ã³ããªã³ããªãã§linux-2.6.12ãšåºæ¬çãªrootfsãæ§ç¯ã§ããããããããŒãã¯ãŒãã³ã°ããšåŒã³ãŸããã ãããããªãŒãã£ãªããã³ãããªãã¬ãŒã€ãŒã®ã¢ããªã±ãŒã·ã§ã³ã«é¢ããŠã¯ããã¿ã³ããªã³ãã䜿çšããå¿
èŠããããŸããã ãŸããããããšãã ã¯ãžã©ã¯äžã®åçã«æãããŠããŸãã

ããŒãã«ã¯æ¬¡ã®ã³ã³ããŒãã³ããå«ãŸããŠããŸãã
- SoC RTD11185
- NANYAãã256MB RAM
- 256MB NAND SLC-ãã©ãã·ã¥ãµã ã¹ã³
- 2 x 2.0 USBãã¹ã
- FastEthernet RJ45ãœã±ãã
- HDMIãã©ã³ã¹ããã¿ãŒåºå
- ãªã¢ãŒãã³ã³ãããŒã«çšã®IRã¬ã·ãŒããŒïŒãªã¢ãŒãã³ã³ãããŒã«ãå©çšå¯èœãäžã®åçïŒ
- ãªã³/ãªããåãæ¿ããããã¯ãã¿ã³
- 1ã€ã®USBãã¹ãã«æ¿å
¥ãããRTL8190Uã«åºã¥ãUSB WiFi
- ãã³ãã©ã°ïŒUARTïŒ
- å埩ãã¿ã³

ã¯ãžã©ãšåã
ãŸããç§ãã¡ã¯ããŒãã«äŒããŸãããããã§äœããå®è¡ããããšããŸãã åœåãRealtekãã¡ãŒã ãŠã§ã¢ã¯ã¯ãžã©ã«æèŒãããŠããŸããããQT4.7ã®äžã§åäœããŠããããã§ãã
ãã®SDKãå
¥æãããšãã誰ãããã±ããã®äžã®é³¥ã§ããããã«èŠããŸããã ããããããã«ã¯ãããŸããã§ããã ãã¡ããããã¹ãŠãåéãããããã§ã¯ãããŸããã ãããã°ããŒãã«ããã·ã¹ãã ãªã³ãããïŒSoCïŒã·ã¹ãã èªäœã«ãããã¥ã¡ã³ãã¯ãããŸããã Googleãå©ãã«ãªããªãã£ãã ããããããã«ã€ããŠã¯åŸã§ã
ãã®èšäºã§ã¯ã次ã®è¡šèšã䜿çšããŸãã
- ãã¹ãïŒ-ã³ãã³ãã¯ArchLinux x86_64ã§å®è¡ãããŸãã
- ubuntuïŒ-ã³ãã³ããå®è¡ãããŸãubuntu-12.10 amd64 chroot;
- jupiterïŒ-ã³ãã³ãã¯ã¯ãžã©ã§å®è¡ãããŸãã
ã³ã³ãœãŒã«ãååŸããŸã
ãªã·ãã¹ã³ãŒãã䜿çšããŠãããŒãã®UARTãã³é
åïŒãªã«ããªãã¿ã³ã®è¿ãïŒãèŠã€ãããŸããïŒïŒUSB HOSTïŒGND-RX-TX-VCCã
ãã¹ãã§minicomã䜿çšããŠæ¥ç¶ããŸãã
host$ minicom -D /dev/ttyUSB0 -c on
ããŒãããªã³ã«ãããšãããã¬ã³ããªãŒãªãããŒãããŒããŒã衚瀺ãããŸãã
hello_world! 5522880 0 wwaiaittcheck_val=0x2700a0 REALTEK ROM Monitor, Revision 0000.0311.0022-ON. Copyright (c) Realtek Semiconductor Corp. - All Rights Reserved. For a list of available commands, type 'help'. Compilation time /version= Feb 4 2013 15:12:08 /0000.0311.0022-ON MAC address = 00.11.22.33.44.55 Processor Company ID/options = 0x01 (MIPS Technologies, Inc.) / 0x00 Processor ID/revision = 0x93 / 0x78 Endianness = Little Flash memory size = 256 MByte SDRAM size = 256 MByte First free SDRAM address = 0x800b1000 Press 'ESC' to Monitor mode Linux Kernel: FW Image from 0xa2020000, to 0x80100000, size=0x44f086 decrypt from 0xa2020000 to 0x80100000, len:0x44f086 Audio FW: FW Image from 0xa2480000, to 0x81b00000, size=0x17b040 decrypt from 0xa2480000 to 0x81b00000, len:0x17b040 Video FW: FW Image from 0xa2600000, to 0x81d80000, size=0x1bfd68 decrypt from 0xa2600000 to 0x81d80000, len:0x1bfd68 Audio data: FW Image from 0xa27c0000, to 0x83000000, size=0x68c78 Video data: FW Image from 0xa2840000, to 0x83100000, size=0x413428 5280Go 5280Go SCPU_CLK90K=0.000 sec. Debug: [go 0x80100000 mtdparts=rtk_nand:212096k,3968k(/),32768k(/usr/local/etc),13312k rootfstype=squashfs root=31:01 ] Reset Ethernet Mac. Address = 0x80100000
ãã®åŸãã«ãŒãã«ãããŒããéå§ããŸãã
泚ç®ãã¹ãã¯ããã¡ãŒã ãŠã§ã¢ããã©ã€ããŒã«ãã£ãŠã¡ã¢ãªã«ããŒããããã®ã§ã¯ãªããããŒããŒèªäœã«ãã£ãŠããŒããããããšã§ãã
ãã¡ãŒã ãŠã§ã¢ã®æŽæ°
ãŸããæªããªãã çµã¿ç«ãŠããã圢åŒã§SDKã«æç€ºããããã¡ãŒã ãŠã§ã¢ã®æŽæ°ã詊ã¿ãŸãã
- ãŸããUSBãã©ã€ãããã©ãŒãããããå¿
èŠããããŸãã
host# mkfs.vfat /dev/sdx -n firmware
- install.imgãã¡ãŒã ãŠã§ã¢ã€ã¡ãŒãžããã®ãã©ã€ãã«ã³ããŒããŸãã
- USBãã©ãã·ã¥ãã©ã€ããæ¿å
¥ãããœãããŠã§ã¢ã®æŽæ°ããã»ã¹ãéå§ããŸãã ãã®ãããã»ã¹ãã¯ãäž»ã«2ã€ã®æ¹æ³ã§èµ·åã§ããŸãïŒä»ã«ããããŸãïŒã
- å埩ããŒãã¢ãŒãïŒãå埩ãã¿ã³ããæŒããŠããŒããæå¹ã«ããå¿
èŠããããŸãã åæã«ãããŒãããŒããŒã¯ãã©ãã·ã¥å
ã®å¥ã®ã¢ãã¬ã¹ã«ã«ãŒãã«ãç§»åããŸããã€ãŸãããã©ãã·ã¥äžã«ééã£ãã«ãŒãã«ãçž«ãåãããŠããŒãããããªãã¯ãäœæãããšããã€ã§ããªã«ããªã¢ãŒãã§èµ·åã§ããŸãã
- æšæºããŠã³ããŒãïŒGUIã§é©åãªã¢ã€ãã ãéžæããŸãã ãã®ãªãã·ã§ã³ã«ã€ããŠã¯è©³ãã説æããŸããã
ãã¹ãŠãäžç®ã§ãããã·ã³ãã«ãªãã®ã§ãã ãã©ãŒãããã ãã¡ãŒã ãŠã§ã¢ãUSBãã©ãã·ã¥ãã©ã€ãã«ã³ããŒããŸãã ããã€ã¹ã«æ¿å
¥ããŸãã å埩ã¢ãŒãã§èµ·åããŸãã ãã©ãã·ã¥ãã©ã€ããèªåçã«ããŠã³ãããããã¡ãŒã ãŠã§ã¢ãèµ·åããŸãã loader_aãŠãŒãã£ãªãã£ã¯ãããããã¹ãŠãæ
åœããŸãã ããã...
[MCP][RSA] strip rsa header failed - no rsa padding header detected loader_a.c:verona_load_func:1456 Error! Image file, /mnt/usbmounts/sda/install.img, cannot be opened or the hash value is not correct. +++ ALLOC index: 3072 order: 8 1. start remap DVR zone 81c00000(80409000) 256...
ããŠãäœããã¹ããã ç§ãã¡ã¯ç°ãªã£ã詊ã¿ãããŸãã
ãã®ä¿è·ã¯ãã¯ãªãŽã©ã«ãŒãã«ãã£ãŠåé¿ã§ããŸããããŸã å¿
èŠãããŸããã 誰ããèå³ãæã£ãŠããå Žåãloader_aãã¡ãŒã ãŠã§ã¢ãŠãŒãã£ãªãã£ã«ã¯åŒæ°ããããŸã-ããã·ã¥ãã§ãã¯ãç¡å¹ã«ããéã»ãã¥ã¢ã§ãã ãã ãããã®ããã«ã¯ããã®ãã©ãããã©ãŒã çšã®busyboxãæ§ç¯ããUSBãã©ã€ãã«ãã³ããŒããŠãããŒãããªã«ããªã¢ãŒãã§ããŒãããshell'eã§ã¯ãžã©ã§Linuxãå®è¡ããå¿
èŠããããŸãã jupiter# cp /mnt/usbmounts/sda1/busybox /tmp/busybox && chmod a+x /tmp/busybox && /tmp/busybox killall loader_a && rm /var/lock/hotplug/mount_tmp/.lock_sda && loader_a --nonsecure &
loader_aããã»ã¹ãã«ãŒãããããã®initramfsã®å埩ã«ã¯äœããªããããBusyboxãæ§ç¯ããå¿
èŠããããŸããã ããããããã¯äž»ãªçç±ã§ã¯ãããŸããã 圌ãšäžç·ã«ãåãç°ãlsãç«ã䜿çšããŠããã®çµæãããããã䜿çšããªãå Žåãããå埩ã¢ãŒãã®å
éšãåŠã¶æ¹ãã¯ããã«ç°¡åã§ãããããŒã¹Linuxã«ãŒãã«ãšrootfsããã«ãããŸã
Realtek SDKã䜿çšããŠã«ãŒãã«ãšrootfsããã«ããããšããæ¥ãŸããã ArchLinux x86_64ã§äœæ¥ããŠãããããéåžžãUbuntu 12.10 amd64
chrootã®çµã¿èŸŒã¿ãœãããŠã§ã¢ã®ãã¹ãŠã®ã¢ã»ã³ããªæäœãããã€ãã®çç±ã§å®è¡ããŸãã
- å€ãã®å Žåããã«ãããå¿
èŠããããã¹ãŠã®ããã±ãŒãžã¯ãã§ã«Ubuntuã«ãããŸãã
- çµã¿èŸŒã¿éçºè
ã¯ä¿å®çã§ãå€ãã®å Žåããã¡ãŒã ãŠã§ã¢ïŒrootfsïŒãæ§ç¯ããããã«å¿
èŠãªãã¹ããŠãŒãã£ãªãã£ãç¹å®ã®å€ãããŒãžã§ã³ã®gccããã³ã©ã€ãã©ãªã«ãã£ãŠã³ã³ãã€ã«ãããSDKããããŸãããŸããåžžã«æ°ããããŒãžã§ã³ã®gccãarch ã ããããããã£ãããèªåã§ä¿®æ£ããããããchroot rootfsããããã€ããæ¹ãã¯ããã«ç°¡åã§ãã
- ã»ãšãã©ã®SDKã¯ãUbuntuã§ããŸã£ããåãããã«ãããã€ããã³ãã¹ããããŸãã Ubuntuèªäœã§ããããŸããã åãæåã§ãå¿
èŠã«å¿ããŠå¥ã®é
åžããããå±éã§ããŸãã
- ã客æ§ã«chrootãšå
±ã«ãã¹ãŠã転éããããšãã§ããã客æ§ã®ãã¡ãŒã ãŠã§ã¢ã¯ããã«é«ã確çã§çµã¿ç«ãŠããããããã客æ§ã«ã¢ã»ã³ããªã·ã¹ãã ãå±éããã®ã¯ç°¡åã§ãã ãã ããããã¯ã顧客ãWindowsã§äœæ¥ããŠããªãå Žåã§ãïŒãã®å Žåãä»®æ³ãã·ã³ã䜿çšããŸãããããã¯æå³ããããŸããïŒã
chrootçšã®Ubuntu rootfsã¯ãAURããååŸããdebootstrapãŠãŒãã£ãªãã£ã䜿çšããŠãããã€ãããŸãã
- ubuntu chrootãå±éããwiki.ubuntu.com/DebootstrapChroot;
- chrootã®procãsysfsãdevtmpfsãdevptsãããŠã³ãããŸãã
- ãã¹ãïŒchroot ubuntu-12.10
- UbuntuïŒapt-get update
- ubuntuïŒapt-getã€ã³ã¹ããŒã«vimãã¡ã€ã«lib32z1-dev libc6-i386 sed dos2unix python g ++-4.4-multilib
- ubuntuïŒuseradd -s / bin / sh -m developer
SDKãã¡ã€ã«ãubuntu-12.10 / home / developer / Jupiterã«ã³ããŒããŸãã
- UbuntuïŒsu developer / bin / bash
- ububtu $ cd / home / developer / Jupiter / linux / system
- ubuntu $ make menuconfigïŒNFSããã³NFSã«ãŒããµããŒããæå¹ã«ãã
- ubuntu $ make PRJ = development.avhdd.jupiter.nand.loongtle
ãããã®æäœã®åŸãã«ãŒãã«ãšåºæ¬çãªrootfsãååŸããŸãã
nfsã«ãŒãã䜿çšããããã«ãrootfsã/ srv / nfs / jupiterã«ã³ããŒããŸãã / etc / exportsã«å¯Ÿå¿ãã
è¡ã远å ããŸãã
ãã¹ãïŒexportfs -a
ã«ãŒãã«ã/srv/tftp/vmlinux.develop.avhdd.jupiter.nand.loongtle.binã®tftpãµãŒããŒã«ã³ããŒããŸãã
ãã¹ãã§
tftpããã³
nfsãµãŒããŒãèµ·åã
ãŸã ã ã€ãŒãµãããçµç±ã§ãããã°ããŒãã«æ¥ç¶ããããã¹ãNICãæ§æããŸãïŒIpv4 192.168.0.1/24ã
æ¡ãããŠã®Linuxãå®è¡ãã
ããŒããåèµ·åããããã«ESCãã¯ã©ã³ãããŠç£èŠã¢ãŒãã«åãæ¿ããŸãã
REALTEK ROM Monitor, Revision 0000.0311.0022-ON. Copyright (c) Realtek Semiconductor Corp. - All Rights Reserved. For a list of available commands, type 'help'. Compilation time /version= Feb 4 2013 15:12:08 /0000.0311.0022-ON MAC address = 00.11.22.33.44.55 Processor Company ID/options = 0x01 (MIPS Technologies, Inc.) / 0x00 Processor ID/revision = 0x93 / 0x78 Endianness = Little Flash memory size = 256 MByte SDRAM size = 256 MByte First free SDRAM address = 0x800b1000 Press 'ESC' to Monitor mode Realtek> help Available commands : . . (repeat last command line) ; ; (command separator) + + <repeat count> ; compare compare <address1> <address2> <size> continue continue copy copy [-f] <src> <dst> <size> dump dump [-m][-8|-16|-32] <address> [<size>] erase erase -e|-m| <address> <size> factory factory [-r|-w|-sha1] <address> <size> or factory -c fill fill [-8|-16|-32] <address> <size> <data> fread fread tftp:
ããŒãããŒããŒã®ã³ãã³ãã©ã€ã³ã¯ubootã«å°ã䌌ãŠããŸãããããã§ã¯ãããŸãã tftpãä»ããŠãã¡ã€ã«ãã¢ããããŒãã§ããããšãããããŸããããã¯ããããã¯ãŒã¯ããLinuxã«ãŒãã«ãã¢ã³ããŒãããããã«è¡ããŸãã
Realtek> fread tftp:
ãããã£ãŠãåºæ¬çãªäœæ¥ã·ã¹ãã ãã§ããŸããã
次ã¯ïŒ
QTãgstreamerããã«ãããŠã¿ãŠãã ããã SDKã§ããŒããŠã§ã¢ãã³ãŒããŒã䜿çšããããã®gstreamerã®ãã©ã°ã€ã³ãèŠã€ããŠçµã¿ç«ãŠãããèªåã§éçºãã
Buildrootãåªå
ããŠãSDKã®ãã«ãã·ã¹ãã ã
åé€ããå¿
èŠãããå ŽåããããŸãã ä»ã«æžãå¿
èŠãããã®ã¯ãã«ãŒãã«ã®æå·åãšãã¡ãŒã ãŠã§ã¢ã§ãã ããããããã¯èšäºã®å¥ã®éšåã®å¥ã®è©±ã§ãã
ãæž
èŽããããšãããããŸããïŒ
PSé»åæ©åšã®éçºã«äœ¿çšããä»ã®é»åéšåãšæè¡ã®è©³çްã«ã€ããŠã¯ã
ãããŒããŠã§ã¢ãã¯ãããžãŒãã»ã¯ã·ã§ã³ã®PromwadããŒã ã®Webãµã€ããã芧ãã ããã