atmark-dist Developers Guide http://www.atmark-techno.com/ Armadillo http://armadillo.atmark-techno.com/ SUZAKU http://suzaku.atmark-techno.com/
atmark-dist developers guide version 1.0.2 1. 1 1.1. 1 1.2. 1 1.3. 2 1.4. 2 2. atmark-dist 3 2.1. uclinux-dist 3 3. 4 3.1. 4 3.2. 4 3.3. 5 3.4. 6 3.5. 6 3.6. 7 4. 8 4.1. Makefile 8 4.2. config 8 4.3. tools 8 4.4. glibcuclibc 9 4.5. user 9 4.6. vendors 9 5. Make 11 6. 13 6.1. config 13 6.1.1. (make config) 13 6.1.2. (make menuconfig) 14 6.1.3. GUI (make xconfig) 15 6.2. clean 15 6.3. all 16 7. 17 7.1. 17 7.2. 18 7.2.1. 18 7.2.2. 18 7.2.3. 18 7.2.4. 18 7.3. 18 7.3.1. Main Menu 20 7.3.2. Vendor/Product Selection/ 20 7.3.3. Kernel/Library/Defaults Selection// 20 7.3.4. Kernel Version 20 7.3.5. Cross-dev 20 7.3.6. Libc VersionC 20 7.3.7. Default all settings 20 7.3.8. Customize Kernel Settings 20 7.3.9. Customize Vendor/User Settings/ 20 7.3.10. Update Default Vendor Settings 20 7.4. 20 i
atmark-dist developers guide version 1.0.2 7.4.1. Vendor specific 21 7.4.2. Core Application 21 7.4.3. Library Configuration 21 7.4.4. Flash Tools 21 7.4.5. Filesystem Applications 21 7.4.6. Network Applications 21 7.4.7. Miscellaneous Applications 21 7.4.8. Busybox 21 7.4.9. Tinylogin 21 7.4.10. MicroWindows 21 7.4.11. Game 21 7.4.12. Miscellaneous Configuration 21 7.4.13. Debug Builds 21 7.5. 22 7.6. 22 7.6.1. subdirs 22 7.6.2. romfs 23 7.6.3. module 23 7.6.4. module_install 23 7.6.5. image 24 8. 25 8.1. config.arch 25 8.2. config.linux-2.6.x 25 8.3. config.vendor 25 8.4. config.uclibc 26 8.5. Makefile 26 9. romfs 27 9.1. 27 9.2. 29 9.3. 29 9.4. 30 9.5. 30 9.6. 31 10. 32 10.1. Out of Tree 32 10.1.1. 32 10.1.2. 32 10.1.3. 34 10.1.4. 34 10.1.5. image 34 10.1.6. 34 10.1.7. pthread 37 10.2. 37 10.2.1. 37 10.2.2. 38 10.2.3. 38 10.2.4. 38 10.3. user 39 10.3.1. 39 10.3.2. 39 10.3.3. 39 10.3.4. 40 ii
atmark-dist developers guide version 1.0.2 10.3.5. 40 10.3.6. 40 10.3.7. 41 11. 43 11.1. Out of Tree 43 11.1.1. 43 11.1.2. 43 11.1.3. 46 11.1.4. 46 11.1.5. image 47 11.2. drivers 48 11.2.1. 48 11.2.2. 48 11.2.3. 48 11.2.4. 49 11.3. 49 11.3.1. 49 11.3.2. 50 12. 52 13. 53 13.1. NetFlash 53 13.2. Flatfsd 54 iii
atmark-dist developers guide version 1.0.2 1-1 1 1-2 2 1-3 2 6-1... 15 6-2 GUI... 15 7-1... 17 10-1 hello... 40 11-1 message... 49 13-1 Flatfsd... 55 iv
atmark-dist developers guide version 1.0.2 3-1 atmark-dist... 4 5-1 Makefile... 11 5-2 Makefile... 11 5-3 make... 11 5-4 make... 12 5-5 make... 12 6-1... 14 6-2... 14 6-3 GUI... 15 7-1 make... 22 7-2 Makefileromfs... 23 7-3 user/makefileromfs... 23 9-1 romfs-inst.sh... 27 9-2 romfs-inst.sh... 28 10-1 atmark-dist/config/config.in... 39 10-2 atmark-dist/user/makefile... 39 10-3 atmark-dist/config/config.in()... 41 10-4 atmark-dist/user/makefile()... 41 10-5 Makefile()... 42 11-1 atmark-dist/linux-2.6.x/drivers/char/kconfig... 48 11-2 atmark-dist/linux-2.6.x/drivers/char/makefile... 48 13-1 netflash... 53 13-2 netflash... 53 v
atmark-dist developers guide version 1.0.2 1. 1.1. atmark-dist PC Linux OS Windows Linux Windows Linux VMwareVMware OS ATDE(Atmark Techno Development Environment) ATDE CD ATDE ATDE atmark-dist 1.2. 1-1 1
atmark-dist developers guide version 1.0.2 1.3. 1-2 PC PC 1-3 1.4. atmark-dist uclinux-dist uclinux-dist Free Software / Open Source Software Free Software / Open Source Software uclinux D. Jeff Dionne Greg Ungere David McCulloughu uclinux development list uclibcbusybox Eric Andersen 2
atmark-dist developers guide version 1.0.2 2. atmark-dist atmark-dist uclinux-dist Linux atmark-dist atmark-dist ArmadilloSUZAKU 2.1. uclinux-dist uclinux-dist uclinux.org uclinux-distuclinux 1 uclinuxuclinux Linuxi386 ARMPowerPC MMUCPU uclinux Linux uclinux Linux uclinux uclinux Linux uclinux-dist Linux uclinux-dist uclinux MMU Linux 1 uclinux MMU Linux HDD 2.6 Linux uclinux 3
atmark-dist developers guide version 1.0.2 3. PC 3.1. atmark-dist URL http://download.atmark-techno.com/dist/ CD-ROM atmark-dist atmark-dist- 3-1 atmark-dist 3.2. atmark-dist 500MB 1GB atmark-dist atmark-dist- atmark-dist uclinux.org uclinux-dist atmark-dist Linux CD-ROM Linux atmark-dist atmark-dist linux-2.6.x 4
atmark-dist developers guide version 1.0.2 3.3. atmark-dist 5
atmark-dist developers guide version 1.0.2 default C Armadillo-9 None Yes No 3.4. Enter 3.5. 6
atmark-dist developers guide version 1.0.2 3.6. 7
atmark-dist developers guide version 1.0.2 4. atmark-dist atmark-dist 4.1. Makefile atmark-distmake Makefile Makefile Makefile atmark-dist6. Make5.Make 4.2. config config script Makefile Makefileconfig.in10.2. 4.3. tools tools romfs-inst.shmakefile9.romfs 8
atmark-dist developers guide version 1.0.2 cksumnetflashnetflash13.1.netflash 4.4. glibc uclibc glibc (GNU C library) uclibc atmark-dist C 4.5. user GNU/Linux atmark-dist atmark-dist atmark-dist13. 4.6. vendors vendors 9
atmark-dist developers guide version 1.0.2 vendorsatmarktechno AtmarkTechno Armadilloatmark-dist 8. configvendors config.archconfig.arch config.arch8.1.config.arch 10
atmark-dist developers guide version 1.0.2 5. Make make make Makefile Makefile atmark-dist Makefile make Makefile maketest 5-1 Makefile maketest Makefile 5-2 Makefile Makefile hello bye Hello World echo 5-3 make make make Makefile echo Hello World Hello World make Makefile 11
atmark-dist developers guide version 1.0.2 5-4 make make Makefile makemake hello Makefile all 5-5 make make Makefile make info 12
atmark-dist developers guide version 1.0.2 6. atmark-dist atmark-dist 6.1. config 3 atmark-dist 6.1.1. (make config) make config3. 13
atmark-dist developers guide version 1.0.2 6-1 6.1.2. (make menuconfig) make menuconfig Ncurses Ncurses Ncurses 6-2 14
atmark-dist developers guide version 1.0.2 6-1 6.1.3. GUI (make xconfig) X Window System make xconfig make xconfig 6-3 GUI 6-2 GUI 6.2. clean atmark-dist atmark-dist 3 clean make clean romfs images 15
atmark-dist developers guide version 1.0.2 make real_clean make distclean atmark-dist 6.3. all all atmark-dist make all 16
atmark-dist developers guide version 1.0.2 7. 7.1. 7-1 NO YES NO YES NO YES image.bin linux.bin, romfs.bin 17
atmark-dist developers guide version 1.0.2 7.2. 7.2.1. 7.2.2. Enter 7.2.3. Enter Enter 7.2.4. * 7.3. 6.1.config make menuconfig 18
atmark-dist developers guide version 1.0.2 / 19
atmark-dist developers guide version 1.0.2 7.3.1. Main Menu menuconfig 7.3.2. Vendor/Product Selection/ 7.3.3. Kernel/Library/Defaults Selection// 7.3.4. Kernel Version 2.6 Linux 7.3.5. Cross-dev 7.3.6. Libc VersionC C C None glibc GNU C uc-libc uclibc None C atmark-dist 7.3.7. Default all settings 7.3.8. Customize Kernel Settings Linux atmark-dist 7.3.9. Customize Vendor/User Settings/ atmark-dist 7.3.10. Update Default Vendor Settings 7.4. 20
atmark-dist developers guide version 1.0.2 7.4.1. Vendor specific rootfs inode/block 7.4.2. Core Application init login 7.4.3. Library Configuration 7.4.4. Flash Tools Netflash 7.4.5. Filesystem Applications Flatfsd mountfdiskext2 Reiser Samba 7.4.6. Network Applications dhcpcd-newftpdifconfiginetdthttpd ppp 7.4.7. Miscellaneous Applications Unix (cplsrm ) 7.4.8. Busybox Busybox Busybox Linux Busybox 7.4.9. Tinylogin Tinylogin login passwdgetty 7.4.10. MicroWindows MicroWindows LCD 7.4.11. Game 7.4.12. Miscellaneous Configuration SUZAKU root 7.4.13. Debug Builds 21
atmark-dist developers guide version 1.0.2 7.5. make 7-1 make make images 7.6. atmark-dist Makefile subdirs, romfs, modules, modules_install, image 7.6.1. subdirs atmark-dist Makefile subdirs subdirs linux, include lib, include user 22
atmark-dist developers guide version 1.0.2 linux Linux atmark-dist version 2.02.42.6 2.6 Linux lib uclibc glibc lib lib user user Makefile Makefile 7.6.2. romfs romfs romfs romfs-inst.sh 7-2 Makefile romfs 7-3 user/makefile romfs \ \ 7.6.3. module Linux module Linux modules 7.6.4. module_install romfs romfs/lib/modules 23
atmark-dist developers guide version 1.0.2 7.6.5. image image Makefile image Makefile 1. Linux binary file (elf binary ) 2. romfs (genext2fs genromfs ) 3. 2 1 4. NetFlash 24
atmark-dist developers guide version 1.0.2 8. Makefile config config Makefile 8.1. config.arch CPU XIP (Execute In Place) 8.2. config.linux-2.6.x Linux 7.3.10.Update Default Vendor Settings 8.3. config.vendor config.vendor atmark-dist menuconfig 25
atmark-dist developers guide version 1.0.2 config.linux-2.6.x 8.4. config.uclibc config.uclibc uclibc dist uclibc uclibc uclibc uclibc uclibc atmark-dist Linux 8.5. Makefile Makefile 26
atmark-dist developers guide version 1.0.2 9. romfs Makefile romfs atmark-dist/romfs atmark-dist/romfs romfs Linux ext2 ext3 reiserfsxfs romfs romfs romfs jffs2 romfs romfs romfs bin devetc atmark-dist romfs romfs-inst.sh atmark-dist/tools romfs-inst.sh atmark-dist Makefile ROMFSINST atmark-dist Makefile romfs-inst.sh ROMFSINST 9.1. romfs-inst.sh romfs ROMFSDIR help 9-1 romfs-inst.sh 27
atmark-dist developers guide version 1.0.2 romfs-inst.sh 9-2 romfs-inst.sh [ ]src basename dst src romfs-inst.sh ( Makefile ) src CVS env-var "y" option "y" chmod dst text dst -A pattern pattern dst text dstlink dstsym-link romfs-inst.sh 28
atmark-dist developers guide version 1.0.2 9.2. romfs Makefile romfs romfs src romfs-inst.sh dst basename basename dst.txt 9.3. etc Makefile src romfs-inst.sh dst basename /etc basename etc romfs-inst.sh etc romfs-inst.sh tree 29
atmark-dist developers guide version 1.0.2 etc romfs/var 9.4. romfs-inst.sh hard link symbolic link symbolic link a.txt Makefile romfs hard link romfs romfs inode atmark-dist romfs hardlink 9.5. romfs-inst.sh 30
atmark-dist developers guide version 1.0.2 9.6. romfs-inst.sh World AtmarkTechno 31
atmark-dist developers guide version 1.0.2 10. atmark-dist 10.1. Out of Tree Out of Tree atmark-dist atmark-dist Makefile atmark-dist "Hello World" 10.1.1. Out of Tree atmark-dist atmark-dist atmark-dist 10.1.2. atmark-dist Makefile C hello.c C \ 32
atmark-dist developers guide version 1.0.2 Makefile "Hello World" 3 atmark-dist atmark-dist hello 33
atmark-dist developers guide version 1.0.2 10.1.3. Makefile hello.c hello make hello uclinux Linux hello ELF ARM 10.1.4. atmark-dist romfs make romfs 10.1.5. image make romfs atmark-dist make image hello image image7.6.5.image 10.1.6. Makefile hello.c print.c hello 34
atmark-dist developers guide version 1.0.2 35
atmark-dist developers guide version 1.0.2 \ Makefile print.o 36
atmark-dist developers guide version 1.0.2 10.1.7. pthread Makefile 10.2. atmark-dist 10.2.1. AtmarkTechno Armadillo-220.Base hello 37
atmark-dist developers guide version 1.0.2 10.2.2. C Makefile Out of Tree Compile 10.2.3. MakefileMakefileSUBDIR_y 1 10.2.4. 7.5.allcleanromfs SUBDIR_y 1 DIRS 38
atmark-dist developers guide version 1.0.2 10.3. user user 10.3.1. 10.3.2. CMakefile10.2. 10.3.3. Miscellaneous Application 10-1 atmark-dist/config/config.in 10-2 atmark-dist/user/makefile 39
atmark-dist developers guide version 1.0.2 10.3.4. make menuconfig Miscellaneous Application hello 10-1 hello 10.3.5. In Tree7.5. 10.3.6. atmark-dist 40
atmark-dist developers guide version 1.0.2 10.3.7. In Tree Out of Tree hello2 10-3 atmark-dist/config/config.in () 10-4 atmark-dist/user/makefile () Makefile += 41
atmark-dist developers guide version 1.0.2 10-5 Makefile() romfs atmark-dist hello romfs romfsinst.sh9.romfs 42
atmark-dist developers guide version 1.0.2 11. Linux atmark-dist 11.1. Out of Tree Out of Tree atmark-dist atmark-dist Makefile atmark-dist 2.6 11.1.1. Out of Tree atmark-dist atmark-dist atmark-dist 11.1.2. atmark-dist Makefile C message.c 43
atmark-dist developers guide version 1.0.2 \ \ \ 44
atmark-dist developers guide version 1.0.2 \ \ \ \ Makfile 45
atmark-dist developers guide version 1.0.2 \ \ Makefile ROOTDIR atmark-dist 11.1.3. Makefile message.c message.ko make moduels message.ko 11.1.4. atmark-dist romfs make romfs 46
atmark-dist developers guide version 1.0.2 11.1.5. image make romfs atmark-dist make image message.ko image image7.6.5 image 47
atmark-dist developers guide version 1.0.2 11.2. drivers linux-2.6.x drivers message 11.2.1. C11.1.2. message.c 11.2.2. Kconfig Makefile 11-1 atmark-dist/linux-2.6.x/drivers/char/kconfig 11-2 atmark-dist/linux-2.6.x/drivers/char/makefile \ 11.2.3. make menuconfig Character devices message 48
atmark-dist developers guide version 1.0.2 11-1 message 11.2.4. In Tree7.5. 11.3. 11.1.4 11.2.4 11.3.1. module_test.c10 49
atmark-dist developers guide version 1.0.2 \ 11.3.2. 50
atmark-dist developers guide version 1.0.2 51
atmark-dist developers guide version 1.0.2 12. Linux 52
atmark-dist developers guide version 1.0.2 13. atmark-dist Linux 13.1. NetFlash NetFlash NetFlash NetFlash httpftptftp NetFlash httpftptftp NetFlash 1. 2. 3. 4. 5. NetFlash 13-1 netflash 13-2 netflash 53
atmark-dist developers guide version 1.0.2 NetFlash 13.2. Flatfsd Flat Filesystem Flat Filesystem 1 flatfsd flatfsd /dev/flash/config /etc/default 54
atmark-dist developers guide version 1.0.2 13-1 Flatfsd disable save config by SUGUSER1 disable save config by SUGUSER1 flatfsd SIGUSR1 flatfsd ID flatfsd flatfsd atmark-dist config flatfsd dhcpcd passwd Flat Filesystem flatfsd 10 55
atmark-dist developers guide version 1.0.2 56
atmark-dist developers guide version 1.0.2 Ver. 1.0 2005/4/20 1.0.1 2007/7/20 Flash 3.2 10.1.3 1.0.2 2007/10/5 atmark-dist-2007005 1-3 11 57
atmark-dist Developers Guide Version 1.0.2 060-0035 AFT 6F TEL011-207-6550 FAX011-207-6570