I'm using Gumstix Overo-Fire. I need to replicate my systems to deploy and test my setup. Right now I have one uSD memory card which is working fine, but when I copy the whole card using either the `tar cvpf` or dd commands, the image doesn't work on any other memory card. Below is the console message when it hangs. I have tried many memory cards.
Looks like Linaro images store the memory card ID and search for them during the boot time, which will obviously fail on a different card.
Is there any way I can make my Linaro Image memory card independent.... so that my replication becomes easy..??
These are the last lines from the console messages during the boot, with the replicated memory card.
[ 6.605651] usbcore: registered new interface driver usbhid
[ 6.617279] usbhid: USB HID core driver
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/17fb7403-3757-4533-b783-7be5436d9882 does not exist. !
--------------------------------- Sudhangathan BS Ph:(+91) 9731-905-205 ---------------------------------
On Fri, Feb 17, 2012 at 8:26 AM, Sudhangathan B S sudhangathan@gmail.comwrote:
[ 6.605651] usbcore: registered new interface driver usbhid
[ 6.617279] usbhid: USB HID core driver
Gave up waiting for root device. Common problems:
Boot args (cat /proc/cmdline)
Check rootdelay= (did the system wait long enough?)
Check root= (did the system wait for the right device?)
Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/17fb7403-3757-4533-b783-7be5436d9882 does not exist. !
it looks like you are using UUID in the bootargs (root=UUID=xxx) to indicate where the root FS is. You can use a LABEL instead of UUID, root=LABEL=foobar, and make sure that on all your cards the root partition is labelled 'foobar'
Thanks Nicolas, that sounds very promising, probably something silly is missing, for it is not working,
Yes Nicolas, in the console message during boot i could find the line root=UUID=xxx like: [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 61952 --> [ 0.000000] Kernel command line: console=tty0 console=ttyO2,115200n8 root=UUID=17fb7403-3757-4533-b783-7be5436d9882 rootwait ro earlyprintk mpuratM [ 0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
I tried giving the whole bootargs command in the boot console after interrupting the boot, the situation is still the same. Result:: Environment size: 1276/131068 bytes --> Overo # setenv bootargs "console=tty0 console=ttyO2,115200n8 root=LABEL=rootfs rootwait ro earlyprintk mpurate=${mpurate} vram=12M" --> Overo # saveenv Saving Environment to NAND... Erasing Nand... Erasing at 0x240000 -- 100% complete. Writing to Nand... done Overo # boot reading boot.scr
I found the line in boot.txt in the boot partition of the memory card. I did change that line in boot.txt to root=LABEL=rootfs, nothing changed in the kernel command line, it was still as shown above.
I want to know where exactly i have to change the boot args from UUID to LABEL.
--------------------------------- Sudhangathan BS Ph:(+91) 9731-905-205 ---------------------------------
On Fri, Feb 17, 2012 at 1:01 PM, Dechesne, Nicolas n-dechesne@ti.comwrote:
On Fri, Feb 17, 2012 at 8:26 AM, Sudhangathan B S sudhangathan@gmail.comwrote:
[ 6.605651] usbcore: registered new interface driver usbhid
[ 6.617279] usbhid: USB HID core driver
Gave up waiting for root device. Common problems:
Boot args (cat /proc/cmdline)
Check rootdelay= (did the system wait long enough?)
Check root= (did the system wait for the right device?)
Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/17fb7403-3757-4533-b783-7be5436d9882 does not exist. !
it looks like you are using UUID in the bootargs (root=UUID=xxx) to indicate where the root FS is. You can use a LABEL instead of UUID, root=LABEL=foobar, and make sure that on all your cards the root partition is labelled 'foobar'
On 02/17/2012 08:42 PM, Sudhangathan B S wrote:
Thanks Nicolas, that sounds very promising, probably something silly is missing, for it is not working,
Yes Nicolas, in the console message during boot i could find the line root=UUID=xxx like: [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 61952 --> [ 0.000000] Kernel command line: console=tty0 console=ttyO2,115200n8 root=UUID=17fb7403-3757-4533-b783-7be5436d9882 rootwait ro earlyprintk mpuratM [ 0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
I tried giving the whole bootargs command in the boot console after interrupting the boot, the situation is still the same. Result:: Environment size: 1276/131068 bytes --> Overo # setenv bootargs "console=tty0 console=ttyO2,115200n8 root=LABEL=rootfs rootwait ro earlyprintk mpurate=${mpurate} vram=12M" --> Overo # saveenv Saving Environment to NAND... Erasing Nand... Erasing at 0x240000 -- 100% complete. Writing to Nand... done Overo # boot reading boot.scr
I found the line in boot.txt in the boot partition of the memory card. I did change that line in boot.txt to root=LABEL=rootfs, nothing changed in the kernel command line, it was still as shown above.
I want to know where exactly i have to change the boot args from UUID to LABEL.
Is there a boot.scr file in the same directory as the boot.txt file? If there is, then the boot.txt file is only showing the text contents of boot.scr file. To make a change to the boot script you need to; first make the changes in the boot.txt file, second run this command:
mkimage -A arm -T script -C none -d boot.txt boot.scr
Incidentally, if mkimage isn't installed on your system then "apt-get install u-boot-tools" will install it.
Best regards, Matt
Sudhangathan BS Ph:(+91) 9731-905-205
On Fri, Feb 17, 2012 at 1:01 PM, Dechesne, Nicolas n-dechesne@ti.comwrote:
On Fri, Feb 17, 2012 at 8:26 AM, Sudhangathan B S sudhangathan@gmail.comwrote:
[ 6.605651] usbcore: registered new interface driver usbhid
[ 6.617279] usbhid: USB HID core driver
Gave up waiting for root device. Common problems:
Boot args (cat /proc/cmdline)
Check rootdelay= (did the system wait long enough?)
Check root= (did the system wait for the right device?)
Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/17fb7403-3757-4533-b783-7be5436d9882 does not exist. !
it looks like you are using UUID in the bootargs (root=UUID=xxx) to indicate where the root FS is. You can use a LABEL instead of UUID, root=LABEL=foobar, and make sure that on all your cards the root partition is labelled 'foobar'
Ohh that's super. My replicated memory card is working. Thanks Nicolas and Waddel for quick help.
Little more to go: Using the replicated memory card, my Wi2Wi WiFi module on another Overo-Fire is not working. Network manager doesn't detect any WiFi modules. How can I make this work. I suppose the replicated linaro is looking for the older WiFi module which was on it's previous Overo-Fire hardware. I have 4 Overo-Fire with me. --> How can I generalize the Linaro so that replicated Linaro will detect any other Hardware's WiFi module.
More over at the console messages i get a lot of error messages like:: [ 6.924926] usbcore: registered new interface driver usbhid [ 6.936523] usbhid: USB HID core driver [ 8.731719] uncorrectable error : [ 8.735687] uncorrectable error : [ 8.745086] end_request: I/O error, dev mtdblock0, sector 0 [ 8.761077] Buffer I/O error on device mtdblock0, logical block 0 [ 8.794738] uncorrectable error : [ 8.798309] uncorrectable error : [ 8.807281] end_request: I/O error, dev mtdblock0, sector 0 [ 8.822998] Buffer I/O error on device mtdblock0, logical block 0 [ 8.889343] uncorrectable error : [ 8.893005] uncorrectable error : [ 8.901794] end_request: I/O error, dev mtdblock0, sector 0
This repeats for some for 1000 lines with different mtdblock# and different sectors. --> I suppose this will eat up CPU time and memory - both are crucial for my setup.
--------------------------------- Sudhangathan BS Ph:(+91) 9731-905-205 ---------------------------------
On Sat, Feb 18, 2012 at 11:59 AM, Matt Waddel matt.waddel@linaro.orgwrote:
On 02/17/2012 08:42 PM, Sudhangathan B S wrote:
Thanks Nicolas, that sounds very promising, probably something silly is missing, for it is not working,
Yes Nicolas, in the console message during boot i could find the line root=UUID=xxx like: [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 61952 --> [ 0.000000] Kernel command line: console=tty0
console=ttyO2,115200n8
root=UUID=17fb7403-3757-4533-b783-7be5436d9882 rootwait ro earlyprintk mpuratM [ 0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
I tried giving the whole bootargs command in the boot console after interrupting the boot, the situation is still the same. Result:: Environment size: 1276/131068 bytes --> Overo # setenv bootargs "console=tty0 console=ttyO2,115200n8 root=LABEL=rootfs rootwait ro earlyprintk mpurate=${mpurate} vram=12M" --> Overo # saveenv Saving Environment to NAND... Erasing Nand... Erasing at 0x240000 -- 100% complete. Writing to Nand... done Overo # boot reading boot.scr
I found the line in boot.txt in the boot partition of the memory card. I did change that line in boot.txt to root=LABEL=rootfs, nothing changed in the kernel command line, it was still as shown above.
I want to know where exactly i have to change the boot args from UUID to LABEL.
Is there a boot.scr file in the same directory as the boot.txt file? If there is, then the boot.txt file is only showing the text contents of boot.scr file. To make a change to the boot script you need to; first make the changes in the boot.txt file, second run this command:
mkimage -A arm -T script -C none -d boot.txt boot.scr
Incidentally, if mkimage isn't installed on your system then "apt-get install u-boot-tools" will install it.
Best regards, Matt
Sudhangathan BS Ph:(+91) 9731-905-205
On Fri, Feb 17, 2012 at 1:01 PM, Dechesne, Nicolas <n-dechesne@ti.com wrote:
On Fri, Feb 17, 2012 at 8:26 AM, Sudhangathan B S <
sudhangathan@gmail.com>wrote:
[ 6.605651] usbcore: registered new interface driver usbhid
[ 6.617279] usbhid: USB HID core driver
Gave up waiting for root device. Common problems:
Boot args (cat /proc/cmdline)
Check rootdelay= (did the system wait long enough?)
Check root= (did the system wait for the right device?)
Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/17fb7403-3757-4533-b783-7be5436d9882 does not exist. !
it looks like you are using UUID in the bootargs (root=UUID=xxx) to indicate where the root FS is. You can use a LABEL instead of UUID, root=LABEL=foobar, and make sure that on all your cards the root
partition
is labelled 'foobar'
Ohh that's super. My replicated memory card is working. Thanks Nicolas and Waddel for quick help.
Can't Linaro image be made generalised so that I can put the image in any memory card/any hardware.....?? So that replication becomes easy.
Little more to go: Using the replicated memory card, my Wi2Wi WiFi module on another Overo-Fire is not working. Network manager doesn't detect any WiFi modules. How can I make this work. I suppose the replicated linaro is looking for the older WiFi module which was on it's previous Overo-Fire hardware. I have 4 Overo-Fires with me, all with same make Wi-Fi modules. --> How can I generalize the Linaro so that replicated Linaro will detect any other Hardware's WiFi module.
More over at the console messages i get a lot of error messages like:: [ 6.924926] usbcore: registered new interface driver usbhid [ 6.936523] usbhid: USB HID core driver [ 8.731719] uncorrectable error : [ 8.735687] uncorrectable error : [ 8.745086] end_request: I/O error, dev mtdblock0, sector 0 [ 8.761077] Buffer I/O error on device mtdblock0, logical block 0 [ 8.794738] uncorrectable error : [ 8.798309] uncorrectable error : [ 8.807281] end_request: I/O error, dev mtdblock0, sector 0 [ 8.822998] Buffer I/O error on device mtdblock0, logical block 0 [ 8.889343] uncorrectable error : [ 8.893005] uncorrectable error : [ 8.901794] end_request: I/O error, dev mtdblock0, sector 0
This repeats for some for 1000 lines with different mtdblock# and different sectors. --> I suppose this will eat up CPU time and memory - both are crucial for my setup.
--------------------------------- Sudhangathan BS Ph:(+91) 9731-905-205 ---------------------------------
On Sat, Feb 18, 2012 at 11:59 AM, Matt Waddel matt.waddel@linaro.orgwrote:
On 02/17/2012 08:42 PM, Sudhangathan B S wrote:
Thanks Nicolas, that sounds very promising, probably something silly is missing, for it is not working,
Yes Nicolas, in the console message during boot i could find the line root=UUID=xxx like: [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 61952 --> [ 0.000000] Kernel command line: console=tty0
console=ttyO2,115200n8
root=UUID=17fb7403-3757-4533-b783-7be5436d9882 rootwait ro earlyprintk mpuratM [ 0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
I tried giving the whole bootargs command in the boot console after interrupting the boot, the situation is still the same. Result:: Environment size: 1276/131068 bytes --> Overo # setenv bootargs "console=tty0 console=ttyO2,115200n8 root=LABEL=rootfs rootwait ro earlyprintk mpurate=${mpurate} vram=12M" --> Overo # saveenv Saving Environment to NAND... Erasing Nand... Erasing at 0x240000 -- 100% complete. Writing to Nand... done Overo # boot reading boot.scr
I found the line in boot.txt in the boot partition of the memory card. I did change that line in boot.txt to root=LABEL=rootfs, nothing changed in the kernel command line, it was still as shown above.
I want to know where exactly i have to change the boot args from UUID to LABEL.
Is there a boot.scr file in the same directory as the boot.txt file? If there is, then the boot.txt file is only showing the text contents of boot.scr file. To make a change to the boot script you need to; first make the changes in the boot.txt file, second run this command:
mkimage -A arm -T script -C none -d boot.txt boot.scr
Incidentally, if mkimage isn't installed on your system then "apt-get install u-boot-tools" will install it.
Best regards, Matt
Sudhangathan BS Ph:(+91) 9731-905-205
On Fri, Feb 17, 2012 at 1:01 PM, Dechesne, Nicolas <n-dechesne@ti.com wrote:
On Fri, Feb 17, 2012 at 8:26 AM, Sudhangathan B S <
sudhangathan@gmail.com>wrote:
[ 6.605651] usbcore: registered new interface driver usbhid
[ 6.617279] usbhid: USB HID core driver
Gave up waiting for root device. Common problems:
Boot args (cat /proc/cmdline)
Check rootdelay= (did the system wait long enough?)
Check root= (did the system wait for the right device?)
Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/17fb7403-3757-4533-b783-7be5436d9882 does not exist. !
it looks like you are using UUID in the bootargs (root=UUID=xxx) to indicate where the root FS is. You can use a LABEL instead of UUID, root=LABEL=foobar, and make sure that on all your cards the root
partition
is labelled 'foobar'
On 02/17/2012 01:26 AM, Sudhangathan B S wrote:
I'm using Gumstix Overo-Fire. I need to replicate my systems to deploy and test my setup. Right now I have one uSD memory card which is working fine, but when I copy the whole card using either the `tar cvpf` or dd commands, the image doesn't work on any other memory card. Below is the console message when it hangs. I have tried many memory cards.
Looks like Linaro images store the memory card ID and search for them during the boot time, which will obviously fail on a different card.
Is there any way I can make my Linaro Image memory card independent.... so that my replication becomes easy..??
You could do something similar to the process we use to make pre-built images. For example, your linaro-media-create line currently is probably like:
linaro-media-create --dev overo --mmc /dev/sdb .......
You can change this to something like:
linaro-media-create --dev overo --image_file file.img --image_size 3G
This will create file.img which you could then "dd" to your SD cards.