As my regular readers will be aware, Nokia released a bug fix kernel for the N800 last week that fixes a data corruption bug in the SD/MMC subsystem. They just released the source code for this new kernel build, so I’ve been able to take a look at what’s in it – and despite the official description, there’s actually a lot of new SD/MMC backports in it. The most notable inclusions are two patches that I had in my previous custom kernel – one that adds MMCplus 4bit bus support and another that adds formalised support for high speed modes. This infrastructure patch is not terribly profound when you read the code, but it has the interesting side effect of doing a few more sanity checks which have the effect of introducing delays into the card initialisation sequence that accidentally help some flaky MMC cards to work reliably.
That leaves my patch set down to just two patches – one of which just adds some debug output, so it doesn’t really count. The one remaining patch is the one that enables 48MHz highspeed support. As I’ve mentioned before, the 48MHz mode is not supported by Nokia because they’ve observed problems with it and TI aren’t confident that it really works. So, this patch will never be accepted by Nokia, and I don’t blame them. Nevertheless, it works for me and many other people, so I’ll continue to offer patched kernels here.