| #!/bin/sh |
| |
| if [ -f /env/bin/pre-init ]; then |
| . /env/bin/pre-init || exit |
| fi |
| |
| PATH=/default/bin |
| export PATH |
| |
| . /default/config |
| |
| # fan: 22.5 kHz 50%, 50% spinup (quiet) |
| i2c_write -a 0x04c -r 0x4b 0f |
| i2c_write -a 0x04c -r 0x4d 08 |
| i2c_write -a 0x04c -r 0x4c 08 |
| |
| addpart /dev/nor0 $nor_parts |
| addpart /dev/nand0 $nand_parts |
| |
| hnvram from /dev/nor0.hnvram |
| [ $HNV_MAC_ADDR ] && eth0.ethaddr=$HNV_MAC_ADDR |
| [ $HNV_MAC_ADDR_WAN ] && eth1.ethaddr=$HNV_MAC_ADDR_WAN |
| [ $HNV_MAC_ADDR_MOCA ] && eth2.ethaddr=$HNV_MAC_ADDR_MOCA |
| |
| if [ x$HNV_ACTIVATED_KERNEL_NAME = xkernel1 ]; then |
| kernpart=kernel1 |
| rootpart=rootfs1 |
| else |
| kernpart=kernel0 |
| rootpart=rootfs0 |
| fi |
| export kernpart |
| export rootpart |
| |
| echo |
| echo -n "Hit Ctrl-C to stop autoboot: " |
| timeout -c $autoboot_timeout |
| if [ $? = 0 ]; then |
| if frbutton; then |
| remote_controlled |
| else |
| boot |
| |
| # If we reach here, the kernel has failed to boot. Try the other kernel. |
| if [ x$HNV_ACTIVATED_KERNEL_NAME = xkernel1 ]; then |
| kernpart=kernel0 |
| rootpart=rootfs0 |
| else |
| kernpart=kernel1 |
| rootpart=rootfs1 |
| fi |
| echo |
| echo "ERROR: Unable to boot $HNV_ACTIVATED_KERNEL_NAME! |
| Attempting to boot $kernpart instead." |
| echo |
| |
| boot |
| fi |
| echo 'Autoboot failed.' |
| fi |
| |
| echo |
| echo 'Run DHCP client by typing "dhcp" or manually set IP address using' |
| echo ' eth1.ipaddr=192.168.1.1' |
| echo ' eth1.serverip=192.168.1.2' |
| echo |