microSD partition table and proper heads/sectors/cylinders # ?

Dennis Ferron dennis.ferron at gmail.com
Mon Sep 22 19:10:51 CEST 2008


Same here.  I think a number of people are having the same problem with
different symptoms.  I can run fdisk -l four times in a row and get
different results every time.  If you're trying to read the partition table
and that read doesn't go through, Linux won't have the right partition info
which pretty much screws up anything else until the right partition data is
read correctly.  I believe the card is slow to respond on its initial read
attempts causing failure of the mmc driver to return any data (subsequent
attempts after the first successful one work fine). I suspect the card gets
slower after it is filled up with some data because in every case the card
seems to have worked at first when it was empty but failed after Debian is
installed on it, though the card itself is fine if put into another
computer.
While the problem is probably partly caused by stupid hardware
implementations in the newer SD cards, the fact is that based on what I've
seen so far on all the messages about this, this is a big problem with the
kernel MMC drivers for the Freerunner, and until the OpenMoko people get the
drivers right we can pretty much forget about using newer SD cards in our
Freerunners.

OpenMoko kernel devs:  Fix this please!  We who run Debian on our phones are
pretty much S.O.L. right now because we need the bigger SD cards to host the
system but they aren't working.  You need to test the drivers with large
size cards, but more importantly, test it with full cards, not empty ones!
 I think you'll find that the timeouts get worse as the card has more data
written on it.


On Sun, Sep 21, 2008 at 12:44 PM, Olivier Berger <oberger at ouvaton.org>wrote:

> Hi.
>
> I noticed that initially, my 2GB microSD card was displaying :
> # fdisk -l /dev/mmcblk0
>
> Disk /dev/mmcblk0: 2032 MB, 2032664576 bytes
> 64 heads, 63 sectors/track, 984 cylinders
> Units = cylinders of 4032 * 512 = 2064384 bytes
>
>        Device Boot      Start         End      Blocks  Id System
> /dev/mmcblk0p1               1         984     1983619+  6 FAT16
>
> After Debian installer's partitioning step, it becomes :
> # fdisk -l /dev/mmcblk0
>
> Disk /dev/mmcblk0: 2032 MB, 2032664576 bytes
> 4 heads, 16 sectors/track, 62032 cylinders
> Units = cylinders of 64 * 512 = 32768 bytes
>
>        Device Boot      Start         End      Blocks  Id System
> /dev/mmcblk0p1               1         245        7832  83 Linux
> /dev/mmcblk0p2             246       62032     1977184  83 Linux
>
> Is there any rationale for the heads/sectors/cylinders difference ?
>
> I'm not sure this is something that matters as I never really tried
> and figure how the microSD memory to "disk" mapping is done.
>
> Thanks in advance for any hints.
>
> Best regards,
> --
> Olivier BERGER
> (OpenPGP: 1024D/B4C5F37F)
> http://www.olivierberger.com/weblog/
>
> _______________________________________________
> support mailing list
> support at lists.openmoko.org
> https://lists.openmoko.org/mailman/listinfo/support
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.openmoko.org/pipermail/support/attachments/20080922/4736f1fe/attachment.htm 


More information about the support mailing list