Rockbox Development > New Ports

SanDisk Sansa c200v2, m200v4, clipv1, clipv2, clip+, and fuzev2

<< < (206/386) > >>

mc2739:
It looks like r21577 is also causing problems with the microsd (at least on e200v2).  It works fine with r21576.  It was not corrected with r21584

Symptoms are:

1) power up with microsd inserted - <microSD1> shows under files, but no files are listed under <microSD1>. 
System -> Debug -> View disk info shows "Not Found!" for [micro SD1]. 
Removing and inserting microsd does not help or or cause a hang.

2) insert microsd after power up causes a hang (backlight thread stills functions).

kugel.:

--- Quote from: mc2739 on July 01, 2009, 08:31:16 AM ---It looks like r21577 is also causing problems with the microsd (at least on e200v2).  It works fine with r21576.  It was not corrected with r21584

Symptoms are:

1) power up with microsd inserted - <microSD1> shows under files, but no files are listed under <microSD1>. 
System -> Debug -> View disk info shows "Not Found!" for [micro SD1].  Removing and inserting microsd does not help or or cause a hang.

2) insert microsd after power up causes a hang (backlight thread stills functions).

--- End quote ---

Can you try disabling interrupts in cpu_set_frequency()?

Upon inserting a MicroSD an interrupt is generated, changing the cpu frequency while that might cause problems.

fragilematter:
I can confirm that behaviour on an e250v2. Also, if you go into System ->Rockbox Info the MSD free space/capacity are shown correctly, so the microsd is accessed and it locks up when trying to view the contents...

funman:

--- Quote from: FlynDice on July 01, 2009, 01:22:37 AM ---I put in a fix for the bug in r21577 causing random lockups.  I think the input to the ADC was getting changed from CVDD while waiting for the voltage to be read and we were getting stuck in that loop.  The input to the ADC now gets set inside the while loop so if it does get changed while waiting it will be reset to CVDD the next time around the loop.

--- End quote ---

The fix is wrong, the adc input could still be changed in a tick interrupt happens after it was set and before it was read.

I suppose the battery readout is called from a tick task and change the ADC source but I didn't verify.

The correct fix like kugel suggested is to disable interrupts while waiting for the voltage change

kugel.:
I can't reproduce the problems on my Fuze. But I also never had problems with my MicroSD.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version