FS#7990 - Disable OF database refresh

Attached to Project: Rockbox
Opened by Jack Suter (chrisjs169) - Thursday, 18 October 2007, 22:54 GMT
Last edited by Jonathan Gordon (jdgordon) - Saturday, 20 October 2007, 10:01 GMT
Task Type Patches
Category Bootloader
Status Closed
Assigned To No-one
Operating System Sansa e200
Severity Low
Priority Normal
Reported Version Daily build (which?)
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 3
Private No


Disable the OF database refresh on the Sansa, for 1.02.18A. I'm sure it wouldn't be hard to disable the OF for the European firmware, but I haven't dumped the firmware for it. One problem that I'm not sure about fixing, is if a MicroSD card is inserted, the OF will still refresh.

I removed disable_rebuild from load_mi4_part, though I don't think this would cause problems, because the if (disable_rebuild) line has been replaced with #if defined(SANSA_E200).
This task depends upon

Closed by  Jonathan Gordon (jdgordon)
Saturday, 20 October 2007, 10:01 GMT
Reason for closing:  Accepted
Comment by MichaelGiacomelli (saratoga) - Thursday, 18 October 2007, 23:35 GMT
You probably expected this, but it doesn't work with 2.02.12a. So I updated to 1.02.18A, but unfortunately it didn't seem to make a difference either.
Comment by Jonathan Gordon (jdgordon) - Friday, 19 October 2007, 00:23 GMT
we only want it to skip the rebuild if usb started the OF because if it was started manually and it doesnt rebuild, you dont have your music.
Comment by Bertrik Sikken (bertrik) - Friday, 19 October 2007, 18:51 GMT
This works for my Sansa e260 with firmware version 1.02.18A.

I removed the extraneous comma at the end of the firmware list.
Also I added a check on whether the bit actually needs changing, to avoid a disk write when it's not needed.

I can help figuring out the location of the database refresh bit for a couple of other firmwares.
Comment by Jeton Aliji (jeton) - Friday, 19 October 2007, 22:16 GMT
It would be very good if you make this work with the European version. The OF refresh is very, very annoying...
Comment by Bertrik Sikken (bertrik) - Friday, 19 October 2007, 22:59 GMT
So far, I flashed the following firmwares, located the database refresh bit and verified that db refresh was disabled:
(It turns out all of the above have the database refresh bit at the same location)

It works for me, but someone on IRC reported it didn't work for them...
Remember, this patch only prevents a refresh when it boots with the USB cable attached.
Comment by Jack Suter (chrisjs169) - Saturday, 20 October 2007, 01:59 GMT
For those who find that it doesn't work: Are you using a good copy of the firmware, and the bootloader actually says something about the database refresh being disabled? If so, are you sure you don't have a MicroSD card inserted? I'm going to see if I can get a dump of the firmware with both the MicroSD card in and out, and see if there's a difference. I am on a Windows machine though - I have a copy of Linux on a usb drive though - so I'm not sure how easy it will be to get a dump.