Using QEMU with Om2008.12

Christian Nolte ch.nolte at noltec.org
Tue Jan 20 16:48:36 CET 2009


Hi,

I am trying to get Om2008.12 up and running in the provided QEMU
environment for the gta02fake machine target. Unfortunately I don't get
further than to the point where the U-boot image is being written.

This is what I have done (according to
http://wiki.openmoko.org/wiki/Qemu#Manual_setup):

1. Fresh checkout of qemu-neo1973

  svn co https://svn.openmoko.org/trunk/src/host/qemu-neo1973

2. Successfully built qemu:

  ./configure --target-list=arm-softmmu && make

3. Edited openmoko/env:

  ...
  qemu_relative="arm-softmmu/qemu-system-arm -M gta02fake -m 130"
  ...
  kernel_wildcard="Om2008.12-om-gta02.uImage.bin"
  rootfs_wildcard="Om2008.12-om-gta02.rootfs.jffs2"
  uboot_wildcard="gta01bv4-u-boot.bin"
  ...
  download_dir="http://downloads.openmoko.org/releases/Om2008.12/"

4. Downloaded the images:

   ./openmoko/download.sh

5. Flashed the images:

   ./openmoko/flash.sh

Flashing always fails for me. I've got the farthest using the gta01
uboot image. If I use the gta02v5_and_up-u-boot.bin I get the endless
output:

  s3c_nand_read: Bad register 0x20

I also tried the MokoMakefile with 'make qemu' with the exact same results.

Below you will find the console output from the gta01 uboot flash attempt.

Best regards,
Christian


---------

usr/bin/gmake
/usr/bin/pngtopnm
/usr/bin/ppmtorgb3
gmake: »splash.gz« ist bereits aktualisiert.
Using 'Om2008.12-om-gta02.uImage.bin' as the kernel image.
Using 'Om2008.12-om-gta02.rootfs.jffs2' as the root filesystem image.
Using 'gta01bv4-u-boot.bin' as bootloader.
# Making an empty/erased flash image.  Need a correct echo behavior.
echo -en \\0377\\0377\\0377\\0377\\0377\\0377\\0377\\0377 > .8b
cat .8b .8b > .16b # OOB is 16 bytes
cat .16b .16b .16b .16b .16b .16b .16b .16b > .512b
cat .16b .16b .16b .16b .16b .16b .16b .16b >> .512b
cat .16b .16b .16b .16b .16b .16b .16b .16b >> .512b
cat .16b .16b .16b .16b .16b .16b .16b .16b >> .512b
cat .512b .16b > .sec # A sector is 512 bytes of data + OOB
cat .sec .sec .sec .sec .sec .sec .sec .sec > .8sec
cat .8sec .8sec .8sec .8sec .8sec .8sec .8sec .8sec > .64sec
cat .64sec .64sec .64sec .64sec .64sec .64sec .64sec .64sec > .512sec
cat .512sec .512sec .512sec .512sec > .2ksec
cat .2ksec .2ksec .2ksec .2ksec .2ksec .2ksec .2ksec .2ksec > .16ksec
# Neo NAND is 128k sectors big
cat .16ksec .16ksec .16ksec .16ksec .16ksec .16ksec .16ksec .16ksec >
openmoko-flash.base
rm -rf .8b .16b .512b .sec .8sec .64sec .512sec .2ksec .16ksec
Please wait, programming the NAND flash...


 U-Boot 1.3.2-moko12 (Oct  7 2008 - 21:01:25)

 I2C:   ready
 DRAM:  128 MB
 NAND:  Bad block table not found for chip 0
 Bad block table not found for chip 0
 128 MiB
 Video: 640x480x8 31kHz 59Hz
 USB:   S3C2410 USB Deviced
 mtdparts variable not set, see 'help mtdparts'
 mtdparts variable not set, see 'help mtdparts'
 mtdparts variable not set, see 'help mtdparts'
 mtdparts variable not set, see 'help mtdparts'
 mtdparts variable not set, see 'help mtdparts'
 pcf_write: charging in Qualification Mode.
pcf_write: charge voltage 4.20V.
jbt6k74_command: Display on.
GTA01Bv4 #
 GTA01Bv4 #
 GTA01Bv4 # setenv dontask y
 GTA01Bv4 # nand createbbt
 Create BBT and erase everything ? <y/N>
  Erasing at 0x0 --   0% complete. Erasing at 0x140000 --   1% complete.
Erasing at 0x280000 --   2% complete. Erasing at 0x3c0000 --   3%
complete. Erasing at 0x500000 --   4% complete. Erasing at 0x660000 --
 5% complete. Erasing at 0x7a0000 --   6% complete. Erasing at 0x8e0000
--   7% complete. Erasing at 0xa20000 --   8% complete. Erasing at
0xb80000 --   9% complete. Erasing at 0xcc0000 --  10% complete. Erasing
at 0xe00000 --  11% complete. Erasing at 0xf40000 --  12% complete.
Erasing at 0x10a0000 --  13% complete. Erasing at 0x11e0000 --  14%
complete. Erasing at 0x1320000 --  15% complete. Erasing at 0x1460000 --
 16% complete. Erasing at 0x15c0000 --  17% complete. Erasing at
0x1700000 --  18% complete. Erasing at 0x1840000 --  19% complete.
Erasing at 0x1980000 --  20% complete. Erasing at 0x1ae0000 --  21%
complete. Erasing at 0x1c20000 --  22% complete. Erasing at 0x1d60000 --
 23% complete. Erasing at 0x1ea0000 --  24% complete. Erasing at
0x1fe0000 --  25% complete. Erasing at 0x2140000 --  26% complete.
Erasing at 0x2280000 --  27% complete. Erasing at 0x23c0000 --  28%
complete. Erasing at 0x2500000 --  29% complete. Erasing at 0x2660000 --
 30% complete. Erasing at 0x27a0000 --  31% complete. Erasing at
0x28e0000 --  32% complete. Erasing at 0x2a20000 --  33% complete.
Erasing at 0x2b80000 --  34% complete. Erasing at 0x2cc0000 --  35%
complete. Erasing at 0x2e00000 --  36% complete. Erasing at 0x2f40000 --
 37% complete. Erasing at 0x30a0000 --  38% complete. Erasing at
0x31e0000 --  39% complete. Erasing at 0x3320000 --  40% complete.
Erasing at 0x3460000 --  41% complete. Erasing at 0x35c0000 --  42%
complete. Erasing at 0x3700000 --  43% complete. Erasing at 0x3840000 --
 44% complete. Erasing at 0x3980000 --  45% complete. Erasing at
0x3ae0000 --  46% complete. Erasing at 0x3c20000 --  47% complete.
Erasing at 0x3d60000 --  48% complete. Erasing at 0x3ea0000 --  49%
complete. Erasing at 0x3fe0000 --  50% complete. Erasing at 0x4140000 --
 51% complete. Erasing at 0x4280000 --  52% complete. Erasing at
0x43c0000 --  53% complete. Erasing at 0x4500000 --  54% complete.
Erasing at 0x4660000 --  55% complete. Erasing at 0x47a0000 --  56%
complete. Erasing at 0x48e0000 --  57% complete. Erasing at 0x4a20000 --
 58% complete. Erasing at 0x4b80000 --  59% complete. Erasing at
0x4cc0000 --  60% complete. Erasing at 0x4e00000 --  61% complete.
Erasing at 0x4f40000 --  62% complete. Erasing at 0x50a0000 --  63%
complete. Erasing at 0x51e0000 --  64% complete. Erasing at 0x5320000 --
 65% complete. Erasing at 0x5460000 --  66% complete. Erasing at
0x55c0000 --  67% complete. Erasing at 0x5700000 --  68% complete.
Erasing at 0x5840000 --  69% complete. Erasing at 0x5980000 --  70%
complete. Erasing at 0x5ae0000 --  71% complete. Erasing at 0x5c20000 --
 72% complete. Erasing at 0x5d60000 --  73% complete. Erasing at
0x5ea0000 --  74% complete. Erasing at 0x5fe0000 --  75% complete.
Erasing at 0x6140000 --  76% complete. Erasing at 0x6280000 --  77%
complete. Erasing at 0x63c0000 --  78% complete. Erasing at 0x6500000 --
 79% complete. Erasing at 0x6660000 --  80% complete. Erasing at
0x67a0000 --  81% complete. Erasing at 0x68e0000 --  82% complete.
Erasing at 0x6a20000 --  83% complete. Erasing at 0x6b80000 --  84%
complete. Erasing at 0x6cc0000 --  85% complete. Erasing at 0x6e00000 --
 86% complete. Erasing at 0x6f40000 --  87% complete. Erasing at
0x70a0000 --  88% complete. Erasing at 0x71e0000 --  89% complete.
Erasing at 0x7320000 --  90% complete. Erasing at 0x7460000 --  91%
complete. Erasing at 0x75c0000 --  92% complete. Erasing at 0x7700000 --
 93% complete. Erasing at 0x7840000 --  94% complete. Erasing at
0x7980000 --  95% complete. Erasing at 0x7ae0000 --  96% complete.
Erasing at 0x7c20000 --  97% complete. Erasing at 0x7d60000 --  98%
complete. Erasing at 0x7ea0000 --  99% complete. Skipping bad block at
0x07f80000
  Skipping bad block at  0x07fa0000

  Skipping bad block at  0x07fc0000

  Skipping bad block at  0x07fe0000


 Creating BBT. Please wait ...Bad block table not found for chip 0
 Bad block table not found for chip 0
 Bad block table written to 0x07fe0000, version 0x01
 Bad block table written to 0x07fc0000, version 0x01

 GTA01Bv4 # setenv bootcmd 'setenv bootargs ${bootargs_base}
${mtdparts}; bootm 0x30100000'
 GTA01Bv4 # setenv menu_1 'Set console to USB: setenv stdin usbtty;
setenv stdout usbtty; setenv stderr usbtty'
 GTA01Bv4 # setenv menu_2 'Set console to serial: setenv stdin serial;
setenv stdout serial; setenv stderr serial'
 GTA01Bv4 # setenv menu_3 'Power off: neo1973 power-off'
 GTA01Bv4 # setenv splashimage 'nand read.e 0x36000000 splash 0x5000;
unzip 0x36000000 0x33d00000 0x96000'
 GTA01Bv4 # setenv mtdids nand0=neo1973-nand
 GTA01Bv4 # #setenv mtdparts
mtdparts=neo1973-nand:0x00050000(u-boot),0x00004000(u-boot_env),0x00208000(kernel),0x00010000(splash),0x039a4000(rootfs)

 Unknown command '#setenv' - try 'help'
 GTA01Bv4 # dynpart
 mtdparts
mtdparts=neo1973-nand:0x00040000(u-boot),0x00004000(u-boot_env),0x00200000(kernel),0x000a0000(splash),0x03d1c000(rootfs)
 nand0: partition (u-boot_env) size alignment incorrect
 nand0: partition (u-boot_env) size alignment incorrect
 nand0: partition (u-boot_env) size alignment incorrect
 nand0: partition (u-boot_env) size alignment incorrect
 nand0: partition (u-boot_env) size alignment incorrect
 GTA01Bv4 # nand write.e 0x30100000 u-boot 0x35840

 NAND write: nand0: partition (u-boot_env) size alignment incorrect
 'u-boot' is not a number
 GTA01Bv4 # dynenv set u-boot_env
 nand0: partition (u-boot_env) size alignment incorrect
 'u-boot_env' is not a number
 Offset or partition name expected
 GTA01Bv4 # saveenv
 Saving Environment to NAND...
 Erasing Nand...GTA01Bv4 # neo1973 power-off
 poweroff
 pcf_write: Power-off requested.
Please wait, programming the NAND flash...


 U-Boot 1.3.2-moko12 (Oct  7 2008 - 21:01:25)

 I2C:   ready
 DRAM:  128 MB
 NAND:  Bad block table not found for chip 0
 Bad block table not found for chip 0
 128 MiB
 *** Warning - bad CRC or NAND, using default environment

 Video: 640x480x8 31kHz 59Hz
 USB:   S3C2410 USB Deviced
 mtdparts variable not set, see 'help mtdparts'
 mtdparts variable not set, see 'help mtdparts'
 mtdparts variable not set, see 'help mtdparts'
 mtdparts variable not set, see 'help mtdparts'
 mtdparts variable not set, see 'help mtdparts'
 pcf_write: charging in Qualification Mode.
pcf_write: charge voltage 4.20V.
jbt6k74_command: Display on.

U-boot failed to finish writing in 60 seconds, giving up.

---------


-- 
"He's an immortal voodoo matador with no name. She's an orphaned blonde
 politician from aristocratic European stock. They fight crime!"




More information about the devel mailing list