On Mon, January 7, 2008 10:14 am, jhslakota wrote:
> Hello all, I'm a newbie on this group and have a question.
Actually I
> solved a problem I had and some of the posts have helped but
ultimately
> I did something NOT suggested and solved the problem. Posting here
in
> the hope that my description and any discussion will help others.
[:)]
>
> Short version:
> The root partition used in the 7800.mbr is only 4096 blocks long
(2MB)
> but the kernel image is 3.5MB. This caused me many problems before
> realizing this mismatch.
I suspect what is happening here is that there are some software
disagreements about how big a "block" is. That partition is supposed to
be 4MB in size, which would be 4096 * 1k blocks. In our production
process this all works fine, but there may be some differences between
your environment and ours. For instance, when we blast the flash on a
7800 it is running from an NFS-root environment, and all the commands
are
run directly on the 7800.
For example, from the 7800 on my desk I see the following:
/mnt/host # fdisk /dev/tssdcardb
Command (m for help): p
Disk /dev/tssdcardb: 507 MB, 507379712 bytes
255 heads, 63 sectors/track, 61 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/tssdcardb1 1 1 4096 c Win95 FAT32 (LBA)
Partition 1 has different physical/logical beginnings (non-Linux?):
phys=(0, 4, 13) logical=(0, 4, 5)
Partition 1 has different physical/logical endings:
phys=(17, 2, 30) logical=(0, 134, 6)
Partition 1 does not end on cylinder boundary
/dev/tssdcardb2 1 2 4096 da Unknown
Partition 2 has different physical/logical beginnings (non-Linux?):
phys=(17, 2, 31) logical=(0, 134, 7)
Partition 2 has different physical/logical endings:
phys=(34, 0, 48) logical=(1, 9, 8)
Partition 2 does not end on cylinder boundary
/dev/tssdcardb3 2 2 4096 da Unknown
Partition 3 has different physical/logical beginnings (non-Linux?):
phys=(34, 0, 49) logical=(1, 9, 9)
Partition 3 has different physical/logical endings:
phys=(50, 7, 5) logical=(1, 139, 10)
Partition 3 does not end on cylinder boundary
/dev/tssdcardb4 2 62 482944 83 Linux
Partition 4 has different physical/logical beginnings (non-Linux?):
phys=(50, 7, 6) logical=(1, 139, 11)
Partition 4 has different physical/logical endings:
phys=(1023, 7, 61) logical=(61, 170, 45)
Partition 4 does not end on cylinder boundary
Command (m for help): q
/mnt/host # dd if=/dev/tssdcardb2 of=tmp
8192+0 records in
8192+0 records out
/mnt/host # ls -l tmp
-rw-r--r-- 1 root dialout 4194304 Jan 7 2008 tmp
Manually resizing the partitions as needed is a valid solution. Both
kernel and initrd partitions are supposed to be 4MB, with the last
(rootfs) parition taking whatever remaining space is left.
______ Best Regards,
|__ __/ Michael Schmidt
|| Software Engineer
||echnologic Systems (EmbeddedARM.com)
|| (480) 16610 East Laser Drive #10
|/ 837-5200 Fountain Hills, AZ 85268
http://oz.embeddedarm.com/~michael