bc10-router/u-boot update
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
]
開始行:
[[bc10-router]]
#contents
*u-boot 更新 [#k08900ba]
bc10-router で使用している arago-project の beagleborad ...
u-boot の version は u-boot-2012.04.01 になります。~
これは、
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
UBOOT_MACHINE = "omap3_beagle_config"
から {HOME}/oe/arago/recipes/u-boot/u-boot_2012.04.01.bb ...
このファイルで include している {HOME}/oe/arago/recipes/u...
u-boot 本家の mainline リポジトリ git://git.denx.de/u-boo...
beagleboard 向けに以下のような patch を当てた上で
-0001-omap3_beagle-add-usbethaddr-setting-to-enable-netwo...
-0001-OMAP3-Beagle-Set-BOOTDELAY-to-3.patch
-0002-am335x-am3517evm-beagleboard-am37x-Add-CONFIG_CMD_A...
-0003-beagleboard-Load-uImage-from-VFAT-by-default.patch
-0004-beagleboard-Load-uImage-to-the-default-kernel-linux...
-0001-omap3_evm-Added-function-calls-to-set-volts-speed-o...
-0002-omap3evm-Make-the-board-start-at-800MHz.patch
-0003-beagleboard-Make-xM-rev-C-go-to-800MHz.patch
omap3_beagle_config したものが bitbake でビルドされます。~
~
上記の patch によって mainline の u-boot では以前は出来な...
USB-Ethernet アダプターを使った tftpboot も可能になってい...
ARM 機器向けにはまず http://git.denx.de/?p=u-boot/u-boot-...
現在こちらが mainline と見做されているようです。~
~
そこで、kernel 3.7 から ARM アーキテクチャーも対応した De...
今後 kernel の更新に伴って必要となる u-bootの新機能を取り...
u-boot-arm へ更新することにします。~
注: u-boot-armのリポジトリはブランチが master と next し...
Tagも4年前から更新がないため最新以外の特定の状態を取得し...
特定の状態での作業を行う場合、本稿ではu-bootのTagを使用し...
取得する手順についても記載します。~
~
http://git.denx.de/u-boot.git/?p=u-boot.git;a=tags ~
**更新手順 [#f4c89736]
更新は以下のようにして行います。~
*** u-boot-arm リポジトリからの取得 [#m053cfc5]
u-boot-arm リポジトリからソースコードを取得します。~
$ git clone git://git.denx.de/u-boot-arm.git
$ cd u-boot-arm
*** u-boot リポジトリからの取得 [#ya5181bb]
u-bootリポジトリから2012.10を取得します。~
$ git clone git://git.denx.de/u-boot.git
$ cd u-boot
$ git checkout refs/tags/v2012.10
ソースコードを取得した後、~
ti-sdk-beagleboard-05.05.01.00 の Cross Toolchain へ PATH...
beagleboard 向けの config を実行します。
$ export PATH={HOME}/ti-sdk-beagleboard-05.05.01.00/linu...
$ make CROSS_COMPILE=arm-arago-linux-gnueabi- mrproper
$ make CROSS_COMPILE=arm-arago-linux-gnueabi- omap3_beag...
これで beagleboard 向けビルドの設定ができたのでビルドしま...
$ make CROSS_COMPILE=arm-arago-linux-gnueabi-
生成されたファイルのうちの、u-boot.img を使用します。~
これを起動用SDカードの FAT パーティションにコピーしたら更...
**version [#m7b3c61b]
更新された u-boot の version は u-boot のコマンドラインイ...
以下のようにして確認できます。
# version
U-Boot 2012.10-12320-g39826f0 (Oct 22 2012 - 17:03:16)
arm-angstrom-linux-gnueabi-gcc (GCC) 4.5.4 20120305 (pre...
GNU ld (GNU Binutils) 2.20.1.20100303
**u-boot のコマンド [#c13f9166]
更新された u-boot で使用可能なコマンドは以下です。~
tftpboot や OMAP3 の nand からの起動に対応しています。
# help
? - alias for 'help'
askenv - get environment variables from stdin
base - print or set address offset
bdinfo - print Board Info structure
boot - boot default, i.e., run 'bootcmd'
bootd - boot default, i.e., run 'bootcmd'
bootm - boot application image from memory
bootp - boot image via network using BOOTP/TFTP protocol
chpart - change active partition
cmp - memory compare
coninfo - print console devices and information
cp - memory copy
crc32 - checksum calculation
dcache - enable or disable data cache
dhcp - boot image via network using DHCP/TFTP protocol
echo - echo args to console
editenv - edit environment variable
env - environment handling commands
exit - exit script
ext2load- load binary file from a Ext2 filesystem
ext2ls - list files in a directory (default /)
false - do nothing, unsuccessfully
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls - list files in a directory (default /)
fdt - flattened device tree utility commands
fsinfo - print information about filesystems
fsload - load binary file from a filesystem image
go - start application at address 'addr'
gpio - input/set/clear/toggle gpio pins
help - print command description/usage
i2c - I2C sub-system
icache - enable or disable instruction cache
imxtract- extract a part of a multi-image
itest - return true/false on integer compare
led - led - [0|1|green|all] [on|off|toggle]
loadb - load binary file over serial line (kermit mode)
loads - load S-Record file over serial line
loady - load binary file over serial line (ymodem mode)
loop - infinite loop on address range
ls - list files in a directory (default /)
md - memory display
mm - memory modify (auto-incrementing address)
mmc - MMC sub system
mmcinfo - display MMC info
mtdparts- define flash/nand partitions
mtest - simple RAM read/write test
mw - memory write (fill)
nand - NAND sub-system
nandecc - switch OMAP3 NAND ECC calculation algorithm
nboot - boot from NAND device
nfs - boot image via network using NFS protocol
nm - memory modify (constant address)
ping - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
reset - Perform RESET of the CPU
run - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv - set environment variables
setexpr - set environment variable as the result of eval...
showvar - print local hushshell variables
sleep - delay execution for some time
source - run script from memory
test - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
true - do nothing, successfully
usb - USB sub-system
usbboot - boot from USB device
version - print monitor, compiler and linker version
**u-boot のデフォルト環境変数 [#wf939043]
この u-boot では以下の環境変数が予め設定されています。~
uEnv.txt に設定することでこれらの環境変数を上書きして設定...
# printenv
baudrate=115200
beaglerev=Cx
bootcmd=if mmc rescan ${mmcdev}; then if run userbutton;...
bootdelay=3
bootenv=uEnv.txt
bootfile=uImage.beagle
buddy=none
camera=none
console=ttyO2,115200n8
defaultdisplay=dvi
dieid#=4ada00040000000004037b700d01401a
dvimode=640x480MR-16@60
importbootenv=echo Importing environment from mmc ...; e...
loadaddr=0x80200000
loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}
loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz
loaduimage=ext2load mmc ${mmcdev}:2 ${loadaddr} /boot/uI...
loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} uImage
mmcargs=setenv bootargs console=${console} ${optargs} mp...
mmcboot=echo Booting from mmc ...; run mmcargs; bootm ${...
mmcdev=0
mmcroot=/dev/mmcblk0p2 rw
mmcrootfstype=ext3 rootwait
mpurate=auto
nandargs=setenv bootargs console=${console} ${optargs} m...
nandboot=echo Booting from nand ...; run nandargs; nand ...
nandroot=ubi0:rootfs ubi.mtd=4
nandrootfstype=ubifs
ramargs=setenv bootargs console=${console} ${optargs} mp...
ramboot=echo Booting from ramdisk ...; run ramargs; boot...
ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=0x8100000...
ramrootfstype=ext2
rdaddr=0x81000000
usbtty=cdc_acm
userbutton=if gpio input 173; then run userbutton_xm; el...
userbutton_nonxm=gpio input 7;
userbutton_xm=gpio input 4;
vram=12M
Environment size: 2283/131068 bytes
**uEnv.txt [#za0c0f97]
標準的な起動をする場合には以下のような uEnv.txt を用意す...
mmcroot=/dev/mmcblk0p2 rw
uenvcmd=run loaduimagefat; run mmcboot
Suspend/Resume の debug のため no_console_suspend を kern...
以下のような uEnv.txt を使用します。
console=ttyO2,115200n8
mpurate=auto
buddy=none
vram=12M
dvimode=640x480MR-16@60
defaultdisplay=dvi
loadaddr=0x80200000
mmcroot=/dev/mmcblk0p2 rw
mmcrootfstype=ext3 rootwait
mmcargs=setenv bootargs console=${console} ${optargs} mp...
mmcboot=echo Booting from mmc (uEnv.txt configuration) ....
loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} uImage
uenvcmd=run loaduimagefat; run mmcboot
**tftpboot [#k407f892]
この u-boot は linaro が行った OMAP EHCI 対応が取り込まれ...
USB および USB-Ethernet アダプターを使った tftpboot につ...
u-boot-arm/doc/README.usb
に詳しく記載されています。~
#include(bc10-router/tftpbootable USB-Ether,notitle)
tftpboot の詳細手順については [[bc10-router/tftpboot]] を...
* 更新履歴 [#a6c8e491]
2013/02/04 初稿公開 ~
2013/05/22 u-boot 更新と更新手順の追記および修正 ~
終了行:
[[bc10-router]]
#contents
*u-boot 更新 [#k08900ba]
bc10-router で使用している arago-project の beagleborad ...
u-boot の version は u-boot-2012.04.01 になります。~
これは、
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
UBOOT_MACHINE = "omap3_beagle_config"
から {HOME}/oe/arago/recipes/u-boot/u-boot_2012.04.01.bb ...
このファイルで include している {HOME}/oe/arago/recipes/u...
u-boot 本家の mainline リポジトリ git://git.denx.de/u-boo...
beagleboard 向けに以下のような patch を当てた上で
-0001-omap3_beagle-add-usbethaddr-setting-to-enable-netwo...
-0001-OMAP3-Beagle-Set-BOOTDELAY-to-3.patch
-0002-am335x-am3517evm-beagleboard-am37x-Add-CONFIG_CMD_A...
-0003-beagleboard-Load-uImage-from-VFAT-by-default.patch
-0004-beagleboard-Load-uImage-to-the-default-kernel-linux...
-0001-omap3_evm-Added-function-calls-to-set-volts-speed-o...
-0002-omap3evm-Make-the-board-start-at-800MHz.patch
-0003-beagleboard-Make-xM-rev-C-go-to-800MHz.patch
omap3_beagle_config したものが bitbake でビルドされます。~
~
上記の patch によって mainline の u-boot では以前は出来な...
USB-Ethernet アダプターを使った tftpboot も可能になってい...
ARM 機器向けにはまず http://git.denx.de/?p=u-boot/u-boot-...
現在こちらが mainline と見做されているようです。~
~
そこで、kernel 3.7 から ARM アーキテクチャーも対応した De...
今後 kernel の更新に伴って必要となる u-bootの新機能を取り...
u-boot-arm へ更新することにします。~
注: u-boot-armのリポジトリはブランチが master と next し...
Tagも4年前から更新がないため最新以外の特定の状態を取得し...
特定の状態での作業を行う場合、本稿ではu-bootのTagを使用し...
取得する手順についても記載します。~
~
http://git.denx.de/u-boot.git/?p=u-boot.git;a=tags ~
**更新手順 [#f4c89736]
更新は以下のようにして行います。~
*** u-boot-arm リポジトリからの取得 [#m053cfc5]
u-boot-arm リポジトリからソースコードを取得します。~
$ git clone git://git.denx.de/u-boot-arm.git
$ cd u-boot-arm
*** u-boot リポジトリからの取得 [#ya5181bb]
u-bootリポジトリから2012.10を取得します。~
$ git clone git://git.denx.de/u-boot.git
$ cd u-boot
$ git checkout refs/tags/v2012.10
ソースコードを取得した後、~
ti-sdk-beagleboard-05.05.01.00 の Cross Toolchain へ PATH...
beagleboard 向けの config を実行します。
$ export PATH={HOME}/ti-sdk-beagleboard-05.05.01.00/linu...
$ make CROSS_COMPILE=arm-arago-linux-gnueabi- mrproper
$ make CROSS_COMPILE=arm-arago-linux-gnueabi- omap3_beag...
これで beagleboard 向けビルドの設定ができたのでビルドしま...
$ make CROSS_COMPILE=arm-arago-linux-gnueabi-
生成されたファイルのうちの、u-boot.img を使用します。~
これを起動用SDカードの FAT パーティションにコピーしたら更...
**version [#m7b3c61b]
更新された u-boot の version は u-boot のコマンドラインイ...
以下のようにして確認できます。
# version
U-Boot 2012.10-12320-g39826f0 (Oct 22 2012 - 17:03:16)
arm-angstrom-linux-gnueabi-gcc (GCC) 4.5.4 20120305 (pre...
GNU ld (GNU Binutils) 2.20.1.20100303
**u-boot のコマンド [#c13f9166]
更新された u-boot で使用可能なコマンドは以下です。~
tftpboot や OMAP3 の nand からの起動に対応しています。
# help
? - alias for 'help'
askenv - get environment variables from stdin
base - print or set address offset
bdinfo - print Board Info structure
boot - boot default, i.e., run 'bootcmd'
bootd - boot default, i.e., run 'bootcmd'
bootm - boot application image from memory
bootp - boot image via network using BOOTP/TFTP protocol
chpart - change active partition
cmp - memory compare
coninfo - print console devices and information
cp - memory copy
crc32 - checksum calculation
dcache - enable or disable data cache
dhcp - boot image via network using DHCP/TFTP protocol
echo - echo args to console
editenv - edit environment variable
env - environment handling commands
exit - exit script
ext2load- load binary file from a Ext2 filesystem
ext2ls - list files in a directory (default /)
false - do nothing, unsuccessfully
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls - list files in a directory (default /)
fdt - flattened device tree utility commands
fsinfo - print information about filesystems
fsload - load binary file from a filesystem image
go - start application at address 'addr'
gpio - input/set/clear/toggle gpio pins
help - print command description/usage
i2c - I2C sub-system
icache - enable or disable instruction cache
imxtract- extract a part of a multi-image
itest - return true/false on integer compare
led - led - [0|1|green|all] [on|off|toggle]
loadb - load binary file over serial line (kermit mode)
loads - load S-Record file over serial line
loady - load binary file over serial line (ymodem mode)
loop - infinite loop on address range
ls - list files in a directory (default /)
md - memory display
mm - memory modify (auto-incrementing address)
mmc - MMC sub system
mmcinfo - display MMC info
mtdparts- define flash/nand partitions
mtest - simple RAM read/write test
mw - memory write (fill)
nand - NAND sub-system
nandecc - switch OMAP3 NAND ECC calculation algorithm
nboot - boot from NAND device
nfs - boot image via network using NFS protocol
nm - memory modify (constant address)
ping - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
reset - Perform RESET of the CPU
run - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv - set environment variables
setexpr - set environment variable as the result of eval...
showvar - print local hushshell variables
sleep - delay execution for some time
source - run script from memory
test - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
true - do nothing, successfully
usb - USB sub-system
usbboot - boot from USB device
version - print monitor, compiler and linker version
**u-boot のデフォルト環境変数 [#wf939043]
この u-boot では以下の環境変数が予め設定されています。~
uEnv.txt に設定することでこれらの環境変数を上書きして設定...
# printenv
baudrate=115200
beaglerev=Cx
bootcmd=if mmc rescan ${mmcdev}; then if run userbutton;...
bootdelay=3
bootenv=uEnv.txt
bootfile=uImage.beagle
buddy=none
camera=none
console=ttyO2,115200n8
defaultdisplay=dvi
dieid#=4ada00040000000004037b700d01401a
dvimode=640x480MR-16@60
importbootenv=echo Importing environment from mmc ...; e...
loadaddr=0x80200000
loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}
loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz
loaduimage=ext2load mmc ${mmcdev}:2 ${loadaddr} /boot/uI...
loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} uImage
mmcargs=setenv bootargs console=${console} ${optargs} mp...
mmcboot=echo Booting from mmc ...; run mmcargs; bootm ${...
mmcdev=0
mmcroot=/dev/mmcblk0p2 rw
mmcrootfstype=ext3 rootwait
mpurate=auto
nandargs=setenv bootargs console=${console} ${optargs} m...
nandboot=echo Booting from nand ...; run nandargs; nand ...
nandroot=ubi0:rootfs ubi.mtd=4
nandrootfstype=ubifs
ramargs=setenv bootargs console=${console} ${optargs} mp...
ramboot=echo Booting from ramdisk ...; run ramargs; boot...
ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=0x8100000...
ramrootfstype=ext2
rdaddr=0x81000000
usbtty=cdc_acm
userbutton=if gpio input 173; then run userbutton_xm; el...
userbutton_nonxm=gpio input 7;
userbutton_xm=gpio input 4;
vram=12M
Environment size: 2283/131068 bytes
**uEnv.txt [#za0c0f97]
標準的な起動をする場合には以下のような uEnv.txt を用意す...
mmcroot=/dev/mmcblk0p2 rw
uenvcmd=run loaduimagefat; run mmcboot
Suspend/Resume の debug のため no_console_suspend を kern...
以下のような uEnv.txt を使用します。
console=ttyO2,115200n8
mpurate=auto
buddy=none
vram=12M
dvimode=640x480MR-16@60
defaultdisplay=dvi
loadaddr=0x80200000
mmcroot=/dev/mmcblk0p2 rw
mmcrootfstype=ext3 rootwait
mmcargs=setenv bootargs console=${console} ${optargs} mp...
mmcboot=echo Booting from mmc (uEnv.txt configuration) ....
loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} uImage
uenvcmd=run loaduimagefat; run mmcboot
**tftpboot [#k407f892]
この u-boot は linaro が行った OMAP EHCI 対応が取り込まれ...
USB および USB-Ethernet アダプターを使った tftpboot につ...
u-boot-arm/doc/README.usb
に詳しく記載されています。~
#include(bc10-router/tftpbootable USB-Ether,notitle)
tftpboot の詳細手順については [[bc10-router/tftpboot]] を...
* 更新履歴 [#a6c8e491]
2013/02/04 初稿公開 ~
2013/05/22 u-boot 更新と更新手順の追記および修正 ~
ページ名:
BC::labsへの質問は、bc9-dev @ googlegroups.com までお願い致します。