Rockbox Development > New Ports

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

<< < (90/386) > >>

JdGordon:

--- Quote from: funman on November 10, 2008, 11:54:04 AM ---@JDGordon : what's the point of a partition table ? It just makes things more complex, and is useless, we don't want to access that part of the SD card.

--- End quote ---
because it wouldnt surprise me if parts of the rockbox fat/disk drivers assume a valid parittion table exsists, and also the sd driver should always read/write to the sector it was asked for, and not silently change it

gevaerts:

--- Quote from: JdGordon on November 10, 2008, 05:44:39 PM ---
--- Quote from: funman on November 10, 2008, 11:54:04 AM ---@JDGordon : what's the point of a partition table ? It just makes things more complex, and is useless, we don't want to access that part of the SD card.

--- End quote ---
because it wouldnt surprise me if parts of the rockbox fat/disk drivers assume a valid parittion table exsists, and also the sd driver should always read/write to the sector it was asked for, and not silently change it

--- End quote ---
If you fake a partition table, you have to shift everything a bit anyway to make room for it, so you'll have an offset anyway.

And rockbox code does handle partitionless disks anyway.

JdGordon:
yes, but the offset isnt inside the sd driver...
If i ask for sector 0 of drive 0 I want sector 0, not 60441

kugel.:

--- Quote from: kugel. on November 10, 2008, 04:32:14 PM ---If anyone succeeds with the fuze build or have an idea why it fails to load, post!

--- End quote ---
So, I succeeded myself now (with big hints by linuxstb and jdgordon).

The SDRAM wasn't properly initialized since system-as3525.c still defines the fuze as a 2MB ram target. After moving the || defined(SANSA_FUZE) some 3 lines down to the e200v2 line, the main binary loads. One of those ancient assumtions that the Fuze is 2MB target broke the whole thing.

NOTE: I've done that with csd v1.0 and having rockbox.sansa in the first 1GB.

I couldn't get to the main menu yet. The bootlogo (of the main binary) pops up is then shifted left a bit.

After trying to boot numerous times, sometimes it said fired a error message (partition error, insert USB cable and fix).


Another thing: Yes, the one function you assumed to be lcd_enable is it. I called it directly after show_logo(). I did lcd_enable(0);. In the bootloader the display turned all white, and it looked like it was shut off (it wasn't instant white everywhere).

Edit: I did a test with forcing the csd 2.0 branch in ata_sd_as3525.c (line ~250) (that what us get 4GB reported). The main binary still loads.

funman:

--- Quote from: JdGordon on November 10, 2008, 05:44:39 PM ---
--- Quote from: funman on November 10, 2008, 11:54:04 AM ---@JDGordon : what's the point of a partition table ? It just makes things more complex, and is useless, we don't want to access that part of the SD card.

--- End quote ---
because it wouldnt surprise me if parts of the rockbox fat/disk drivers assume a valid parittion table exsists, and also the sd driver should always read/write to the sector it was asked for, and not silently change it

--- End quote ---

Consider the SD is divided in 2 logical disks: 0->X is a reserved disk for the OF
X->end is the disk exposed over USB, and I think is the only disk we want to access.

Using a partition table is not good, because I chose to partition the disk exposed over USB, and we can't have a partition table inside a partition.

Why do you want to access the first area of the storage ? (starting from sector 0).

IMO since it's the only area exposed by the OF via USB, that's the only area we want to touch.

linuxstb told me some other targets (some iPod ?) have the same reserved blocks at the beginning of the storage, do they use the same tweak (shift the requested sector offset) ?

P.S. if we continue to skip the requested sector in the SD driver, we should also reduce the reported number of sectors

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version