Skip to content

Latest n800 firmware includes SDHC support

I’ve been on holiday for the last week and a half, so I missed the firmware update while I was away, but I’m sure most of you are aware that a new firmware for the n800 is out and that is includes SDHC support. This means that you don’t need a custom kernel with my patches to use these cards. I’m not quite sure what to make of the statement that support only goes up to 8GB, as I can’t think of where any code cares. The SDHC spec defines sizes up to 32GB and the FAT32 filesystem is functional (if very inefficient) to much larger sizes. So I have to assume it’s some higher level part of the stack and not a kernel issue.

I still need to do more investigation, but from looking at the osso52 patch, some of the patches in my old patch set are still not present, and it might just be worth offering a custom kernel with those added capabilities.

Here’s my patch list and the current state of osso58 with respect to each:

  1. 0001-mmc-update-19: Now merged
  2. 0002-mmc-update-19: Now merged
  3. 0003-highspeed-caps: Not merged – might result in problems with some 4GB MMCplus cards
  4. 0004-low-voltage: Not merged – but not needed because of how 0005 is handled
  5. 0005-omap2-low-voltage: Not merged – but an equivalent change that hacks around the absence of 0004 is present – so the functionality should be the same
  6. 0006-omap2-highspeed: Not merged – only needed with 0003
  7. 0007-debug-output: Not merged – just debug output

So, the main missing thing is the set of timing checks that, unintentionally, make some MMCplus cards work. I will try with one of these cards soon and report if the changes are still needed. Additionally, a separate change has been made in the Nokia kernel that caps the MMC frequency at 24MHz where the maximum was previous 48MHz. I assume they have a good reason for this, but I had good results running highspeed MMC and SD cards at 48MHz and there is a real improvement in transfer rate.

If anyone has specific experiences, please add a comment. I will do more investigations and report, possibly with a new kernel, later this week.

{ 3 } Comments

  1. daniels | 9th July 2007 at 07:48 | Permalink

    As regards the 8GB thing, it’s pretty hard to test cards that don’t exist, really.

  2. Milhouse | 9th July 2007 at 10:28 | Permalink

    The new firmware seems to be causing a higher level of mortality with SDHC cards than before – see this bug[1] (and there are further posts on the ITT forum). I don’t know why it’s happening but a number of users now have dead and unusable cards that used to work fine with your 3.2007 patches. And Nokia have also capped the clock speed at 24Mhz apparently to prevent FAT corruption (according to this[2] mailing list post).

    I would very much appreciate a version of 4.2007 with _your_ SDHC patches! :)


  3. Gregg | 9th July 2007 at 10:53 | Permalink

    I for one am holding off upgrading until this particular issue is worked out.

    I am using the patched kernel from here and it works. Unless I connect to a Windows XP box, transfer files and see that there is no “safe disconnect” function . Then if I pull the USB connection the card is hosed and I have to “correct” it. As long as I connect to my linux box and “safely remove” and then unmount it after writing files to the device it works great.

{ 1 } Trackback

  1. [...] Blog « Latest n800 firmware includes SDHC support [...]