Hello Everyone.
I have recently bought a Odroid C1+ with the wish to run NetBSD 7 on it.
However though, I have been having a rough time trying to assemble and copy the armv7.img image onto a 8Gb Sandisk 48mbps rw sdcard.
Essentially u-boot stops to the point where it attempts to boot from the mmc 0:1 partition as it appears that the partition is invalid and therefore it is unable to initialize the kernel due to ERROR: can't get kernel image!.
Additionally, although might not be exactly related to the issue, I am unable to find the armv7--netbsdelf-eabihf-fdisk binay tool from the crosscompiler tooldir compiled against 7.0.1 evbram. That being said, in order to add the “a” partition I have used either arm--netbsdelf-eabi-fdisk as well as the standard fdisk that comes with NetBSD.
Another quick note. The sdcard is seen as wd1 since it shared from the HOST Windows through vmware to the guest NetBSD 7.0 as virtual hardisk. I have also tried to copy the image using Rawrite32.exe directly from the HOST with pretty much the same result.
Here are the steps I have taken and commands issued as well as uboot logs.
>
netware# disklabel wd1
Password:
# /dev/rwd1d:
type: ESDI
disk: VMware Virtual I
label: fictitious
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 15
sectors/cylinder: 945
cylinders: 16427
total sectors: 15523840
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # microseconds
track-to-track seek: 0 # microseconds
drivedata: 0
5 partitions:
# size offset fstype [fsize bsize cpg/sgs]
d: 15523840 0 unused 0 0 # (Cyl. 0
- 16427*)
e: 114688 8192 MSDOS # (Cyl.
8*- 130*)
disklabel: boot block size 0
disklabel: super block size 0
netware# nbdisklabel -M evbarm -B le armv7.img
# armv7.img:
type: SCSI
disk: STORAGE DEVICE
label: fictitious
flags: removable
bytes/sector: 512
sectors/track: 32
tracks/cylinder: 64
sectors/cylinder: 2048
cylinders: 1111
total sectors: 2276832
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # microseconds
track-to-track seek: 0 # microseconds
drivedata: 0
8 partitions:
# size offset fstype [fsize bsize cpg/sgs]
a: 1891808 385024 4.2BSD 0 0 0 # (Cyl. 188 -
1111*)
b: 262144 122880 swap # (Cyl. 60 - 187)
c: 2276832 0 unused 0 0 # (Cyl. 0
- 1111*)
d: 2276832 0 unused 0 0 # (Cyl. 0
- 1111*)
e: 114688 8192 MSDOS # (Cyl. 4
- 59)
netware# dd if=bl1.bin.hardkernel of=armv7.img bs=1 count=442 conv=notrunc
442+0 records in
442+0 records out
442 bytes transferred in 0.004 secs (110500 bytes/sec)
netware# dd if=bl1.bin.hardkernel of=armv7.img bs=512 skip=1 seek=1 conv=notrunc
63+0 records in
63+0 records out
32256 bytes transferred in 0.003 secs (10752000 bytes/sec)
netware# dd if=u-boot.bin of=armv7.img bs=512 seek=64 conv=notrunc
460+1 records in
460+1 records out
netware# ls /usr/obj/tooldir.NetBSD-7.0-amd64/bin |grep fdisk
arm--netbsdelf-eabi-fdisk
netware# arm--netbsdelf-eabi-fdisk -u armv7.img
Disk: armv7.img
NetBSD disklabel disk geometry:
cylinders: 141, heads: 255, sectors/track: 63 (16065 sectors/cylinder)
total sectors: 2276832, bytes/sector: 512
BIOS disk geometry:
cylinders: 142, heads: 255, sectors/track: 63 (16065 sectors/cylinder)
total sectors: 2276832
Partitions aligned to 2048 sector boundaries, offset 63
Do you want to change our idea of what BIOS thinks? [n] n
Partition table:
0: Primary DOS with 32 bit FAT - LBA (sysid 12)
start 8192, size 114688 (56 MB, Cyls 0/130/3-7/165/30)
1: <UNUSED>
2: <UNUSED>
3: <UNUSED>
No active partition.
Drive serial number: 56865 (0x0000de21)
Which partition do you want to change?: [none] 1
The data for partition 1 is:
<UNUSED>
sysid: [0..255 default: 169]
start: [0..142cyl default: 63, 0cyl, 0MB] 385024
size: [0..118cyl default: 1891808, 118cyl, 924MB] 1891808
Partition table:
0: Primary DOS with 32 bit FAT - LBA (sysid 12)
start 8192, size 114688 (56 MB, Cyls 0/130/3-7/165/30)
1: NetBSD (sysid 169)
start 385024, size 1891808 (924 MB, Cyls 23/246/32-141/185/12)
PBR is not bootable: All bytes are identical (0x00)
2: <UNUSED>
3: <UNUSED>
No active partition.
Drive serial number: 56865 (0x0000de21)
Which partition do you want to change?: [none]
We haven't written the MBR back to disk yet. This is your last chance.
Partition table:
0: Primary DOS with 32 bit FAT - LBA (sysid 12)
start 8192, size 114688 (56 MB, Cyls 0/130/3-7/165/30)
1: NetBSD (sysid 169)
start 385024, size 1891808 (924 MB, Cyls 23/246/32-141/185/12)
PBR is not bootable: All bytes are identical (0x00)
2: <UNUSED>
3: <UNUSED>
No active partition.
Drive serial number: 56865 (0x0000de21)
Should we write new partition table? [n] y
netware# dd if=armv7.img of=/dev/wd1 bs=1m
1111+1 records in
1111+1 records out
1165737984 bytes transferred in 36.086 secs (32304438 bytes/sec)
Connecting to COM3...
Connected.
QA5:A;SVN:B72;POC:17F;STS:0;BOOT:0;INIT:10;BOOT:1;INIT:0;READ:0;CHECK:0;PASS:1;
-----------------------------------------------------------------------
* Welcome to Hardkernel's ODROID-C... (Built at 19:33:00 Dec 8 2014) *
CPU : AMLogic S805-----------------------------------------------------
MEM : 1024MB (DDR3@792MHz)
BID : HKC1311605
S/N : HKC11122F37E49A8
0x0000009f
check SD_boot_type:0x1 card_type:0x1
Loading U-boot...success.
U-boot(odroidc@) (Mar 08 2015 - 11:08:17)
DRAM: 1 GiB
relocation Offset is: 2ff1c000
MMC: SDCARD: 0, eMMC: 1
IR init is done!
vpu clk_level = 3
set vpu clk: 182150000Hz, readback: 182150000Hz(0x701)
mode = 6 vic = 4
set HDMI vic: 4
mode is: 6
viu chan = 1
config HPLL
config HPLL done
reconfig packet setting done
MMC read: dev # 0, block # 33984, count 12288 ... 12288 blocks read: OK
There is no valid bmp file at the given address
============================================================
Vendor: Man 035344 Snr c0bb7d76 Rev: 8.0 Prod: SL08G
Type: Removable Hard Disk
Capacity: 7580.0 MB = 7.4 GB (15523840 x 512)
------------------------------------------------------------
Partition Start Sector Num Sectors Type
1 8192 114688 6
============================================================
Net: Meson_Ethernet
init suspend firmware done. (ret:0)
Hit Enter key to stop autoboot -- : 0
exit abortboot: 0
reading boot.ini
** Unable to read "boot.ini" from mmc 0:1 **
Loading file "/boot/boot.ini" from mmc device 0:1 xxa1
Failed to mount ext2 filesystem...
** Bad ext2 partition or disk - mmc 0:1 **
** Bad partition 2 **
Failed to load boot.init, maybe empty file?
MMC read: dev # 0, block # 1216, count 16384 ... 16384 blocks read: OK
MMC read: dev # 0, block # 1088, count 128 ... 128 blocks read: OK
Wrong Image Format for bootm command
ERROR: can't get kernel image!
odroidc#<INTERRUPT>
odroidc#
>
Please advice.
Thanks,
Pietro