Do you have a question? Post it now! No Registration Necessary
- David Fura
September 23, 2005, 8:13 pm

I am testing a new MMC device driver for an embedded target under
2.6.13.x and cannot mount the MMC drive. The symptoms are consistent
with the kernel reading sector 0 from the card and treating it as the
boot sector, which is actually sector 32. The partition table in
sector 0 correctly points to the main partition starting at sector 32.
Any ideas on why the kernel apparently thinks sector 0 is the boot
sector?
When I type:
sh-3.00# mount -t msdos /dev/mmc0 /mnt/mmc
I get the following error report:
FAT: invalid media value (0x01)
VFS: Can't find a valid FAT filesystem on dev mmcblk0.
mount: Mounting /dev/mmc0 on /mnt/mmc failed: Invalid argument
The first report is from fat_fill_super() in inode.c. The
fat_boot_sector structure there contains the following values, which
match the corresponding fields in sector 0:
b->sector_size[1:0]: 50 07
b->sec_per_clus: 1f (31)
b->fats: bf (191)
b->dir_entries[1:0]: 06 00
b->sectors[1:0]: 00 b9
b->media: 01
b->fat_length: a5f2 (42482)
b->secs_track: 1dea (7658)
b->heads: 0006 (6)
b->hidden: 07bebe00 (129940992)
b->total_sect: 3c8004b3 (1015022771)
I have confirmed that the only MMC operations performed during the
mount are a single block read to address 0 followed by a status check.
2.6.13.x and cannot mount the MMC drive. The symptoms are consistent
with the kernel reading sector 0 from the card and treating it as the
boot sector, which is actually sector 32. The partition table in
sector 0 correctly points to the main partition starting at sector 32.
Any ideas on why the kernel apparently thinks sector 0 is the boot
sector?
When I type:
sh-3.00# mount -t msdos /dev/mmc0 /mnt/mmc
I get the following error report:
FAT: invalid media value (0x01)
VFS: Can't find a valid FAT filesystem on dev mmcblk0.
mount: Mounting /dev/mmc0 on /mnt/mmc failed: Invalid argument
The first report is from fat_fill_super() in inode.c. The
fat_boot_sector structure there contains the following values, which
match the corresponding fields in sector 0:
b->sector_size[1:0]: 50 07
b->sec_per_clus: 1f (31)
b->fats: bf (191)
b->dir_entries[1:0]: 06 00
b->sectors[1:0]: 00 b9
b->media: 01
b->fat_length: a5f2 (42482)
b->secs_track: 1dea (7658)
b->heads: 0006 (6)
b->hidden: 07bebe00 (129940992)
b->total_sect: 3c8004b3 (1015022771)
I have confirmed that the only MMC operations performed during the
mount are a single block read to address 0 followed by a status check.
Site Timeline
- » Cannot install LILO on compact flash device
- — Next thread in » Embedded Linux
-
- » hd sleep mode
- — Previous thread in » Embedded Linux
-
- » Crosscompiling for ARM: reloc type R_ARM_ABS32 is not supported for PIC - ...
- — Newest thread in » Embedded Linux
-
- » Martwa płyta PC retro - od czego zacząć?
- — The site's Newest Thread. Posted in » Electronics (Polish)
-