Welcome! Log In Create A New Profile

Advanced

Problem booting Pogo Mobile

Posted by Preacher 
Preacher
Problem booting Pogo Mobile
October 07, 2016 06:15PM
I own a pogoplug V4 and a mobile.
The first one runs fine since spring, so now I decided to upgrade the mobile as well as pogoplug was shutting down its services.
I installed U-Boot 2016.05 on both devices with modified default envs.
But while V4 boots fine, mobile gets stuck after loading kernel with same USB-stick, Doesn't load until IP-adress is assigned.
Tried with "dtb_file"env set and unset with same result.

Can someone give me a hint where the problem is?

fw_printenv:
bootcmd_exec=run load_uimage; if run load_initrd; then if run load_dtb; then bootm $load_uimage_addr $load_initrd_addr $load_dtb_addr; else bootm $load_uimage_addr $load_initrd_addr; fi; else if run load_dtb; then bootm $load_uimage_addr - $load_dtb_addr; else bootm $load_uimage_addr; fi; fi
bootcmd_uenv=run uenv_load; if test $uenv_loaded -eq 1; then run uenv_import; fi
bootdev=usb
device=0:1
devices=usb ide mmc
disks=0 1 2 3
ethact=egiga0
if_netconsole=ping $serverip
led_error=orange blinking
led_exit=green off
led_init=green blinking
load_dtb_addr=0x1c00000
load_initrd_addr=0x1100000
load_uimage_addr=0x800000
load_dtb=echo loading DTB $dtb_file ...; load $bootdev $device $load_dtb_addr $dtb_file
load_initrd=echo loading uInitrd ...; load $bootdev $device $load_initrd_addr /boot/uInitrd
load_uimage=echo loading uImage ...; load $bootdev $device $load_uimage_addr /boot/uImage
mainlineLinux=yes
mtdids=nand0=orion_nand
partition=nand0,2
scan_disk=echo running scan_disk ...; scan_done=0; setenv scan_usb "usb start";  setenv scan_ide "ide reset";  setenv scan_mmc "mmc rescan"; for dev in $devices; do if test $scan_done -eq 0; then echo Scan device $dev; run scan_$dev; for disknum in $disks; do if test $scan_done -eq 0; then echo device $dev $disknum:1; if load $dev $disknum:1 $load_uimage_addr /boot/uImage 1; then scan_done=1; echo Found bootable drive on $dev $disknum; setenv device $disknum:1; setenv bootdev $dev; fi; fi; done; fi; done
set_bootargs=setenv bootargs console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 $mtdparts $custom_params
stderr=serial
stdin=serial
stdout=serial
uenv_addr=0x810000
uenv_import=echo importing envs ...; env import -t $uenv_addr $filesize
uenv_init_devices=setenv init_usb "usb start";  setenv init_ide "ide reset";  setenv init_mmc "mmc rescan"; for devtype in $devices; do run init_$devtype; done;
uenv_load=run uenv_init_devices; setenv uenv_loaded 0; for devtype in $devices;  do for disknum in 0; do run uenv_read_disk; done; done;
uenv_read_disk=if test $devtype -eq mmc; then if $devtype part; then run uenv_read;  fi; else if $devtype part $disknum; then run uenv_read; fi;  fi
uenv_read=echo loading envs from $devtype $disknum ...; if load $devtype $disknum:1 $uenv_addr /boot/uEnv.txt; then setenv uenv_loaded 1; fi
usb_ready_retry=15
ethaddr=aa:bb:cc:d:ee:ff
arcNumber=3960
machid=F78
usb_rootfstype=ext3
mtdparts=mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)
preboot_nc=setenv nc_ready 0; for pingstat in 1 2 3 4 5; do; sleep 1; if run if_netconsole; then setenv nc_ready 1; fi; done; if test $nc_ready -eq 1; then run start_netconsole; fi
preboot=run preboot_nc
serverip=192.168.0.110
bootcmd_pogo=if ubi part root 2048 && ubifsmount ubi:rootfs && ubifsload 0x800000 uboot.mtd0.dockstar.original.kwb ; then go 0x800200; fi
bootcmd=run bootcmd_uenv; run scan_disk; run set_bootargs; run bootcmd_exec; run bootcmd_pogo; reset
bootdelay=3
start_netconsole=setenv ncip $serverip; setenv bootdelay 3; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
dtb_file=/boot/dts/kirkwood-pogoplug_v4.dtb
ipaddr=192.168.0.106

NC output:
U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:41:47 -0700)
Pogoplug V4
gcc (Debian 4.9.2-10) 4.9.2
GNU ld (GNU Binutils for Debian) 2.25
Hit any key to stop autoboot:  0
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
       scanning usb for storage devices...
Use USB retry period from the environment: 15 second(s)
1 Storage Device(s) found

Reset IDE: ide_preinit failed

Partition Map for USB device 0  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     2048            8017824         d5269418-01     83
loading envs from usb 0 ...
 usb
1 bytes read in 123 ms (0 Bytes/s)
Found bootable drive on usb 0
loading uImage ...
2875692 bytes read in 295 ms (9.3 MiB/s)
loading uInitrd ...
6183666 bytes read in 523 ms (11.3 MiB/s)
loading DTB /boot/dts/kirkwood-pogoplug_v4.dtb ...
10028 bytes read in 543 ms (17.6 KiB/s)
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-3.18.5-kirkwood-tld-1
   Created:      2016-05-26  23:38:38 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2875628 Bytes = 2.7 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 01100000 ...
   Image Name:   initramfs-3.18.5-kirkwood-tld-1
   Created:      2016-05-26  23:38:40 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    6183602 Bytes = 5.9 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 01c00000
   Booting using the fdt blob at 0x1c00000



Edited 1 time(s). Last edit at 10/07/2016 06:22PM by bodhi.
Re: Problem booting Pogo Mobile
October 07, 2016 06:27PM
Preacher,

> But while V4 boots fine, mobile gets stuck after
> loading kernel with same USB-stick, Doesn't load
> until IP-adress is assigned.

I'm not sure what you meant by "Doesn't load until IP-adress is assigned." ?


> loading envs from usb 0 ...
> usb
> 1 bytes read in 123 ms (0 Bytes/s)

What is the content of /boot/uEnv.txt file on this USB rootfs?


> ethaddr=aa:bb:cc:d:ee:ff

Was this blanked out on purpose?

> ipaddr=192.168.0.106

Is this unique for this Pogo Mobile?

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 10/07/2016 06:31PM by bodhi.
Preacher
Re: Problem booting Pogo Mobile
October 07, 2016 06:46PM
Thanks bodhi and sorry for bad description.
/boot/uEnv.txt is not existing

In NC I see "loading kernel", LED on USB-stick is blinking for some time, then nothing happens.
I have set the same IP-adress as for NC set on my router, if I execute "ping 192.168.0.106 -t" I receive response during NC ant then nothing else

Pogo V4 shows same NC output and boots with same USB-stick, this is why I assume an issue with U-Boot

Pogo's OS boots when no stick is attached
Re: Problem booting Pogo Mobile
October 08, 2016 02:37AM
Preacher,

>
> In NC I see "loading kernel", LED on USB-stick is
> blinking for some time, then nothing happens.

With netconsole, sometime that's all the output you will see during kernel booting. There shoud be a little bit tmore output, but the problem is most likely what I'm going to suggest a solution for below.

> I have set the same IP-adress as for NC set on my
> router, if I execute "ping 192.168.0.106 -t" I
> receive response during NC
>

This is normal.

---

Your problem is most likely that you are booting the same USB rootfs on a different box. So it is the same as cloning a rootfs to a different USB. Some adjust ments are needed when you do that:
http://forum.doozan.com/read.php?2,25683,30100#msg-30100

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Preacher
Re: Problem booting Pogo Mobile
October 08, 2016 08:49AM
Thanks bodhi for immediate feedback.
Your solution did the job, after deleting te two files and clearing "dtb_file"env box boots.

I tried modification:
/lib/udev/rules.d/75-persistent-net-generator.rules lready had this setting
Didn't get /etc/udev/rules.d/70-persistent-net.rules modification.
Just change to correct MAC-address? Can I add seperate lines for all boxes I have?
Re: Problem booting Pogo Mobile
October 08, 2016 03:44PM
Comment out this line will ensure that the MAC address is not read by udev (originally this line was uncommented):
#SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="4c:9e:ff:xx:xx:xx", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

So if the rootfs stays with one box (not reused or cloned) to other boxes then deleting these 2 files is enough. But if you have a common backup rootfs for 2 or more boxes, then modifying them is better, saving a step of having to delete them before cloning or reused.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Preacher
Re: Problem booting Pogo Mobile
October 09, 2016 06:29AM
Got it, thanks a lot for explanation
I will have the case with reusing, just bought another E02 via ebay because of fastwr CPU and more RAM, currently need to swap on V4.

Had no clue on udev, so learned today, thanks again!
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: