* sddr09.c
@ 2002-04-08 23:10 Andries.Brouwer
2002-04-08 23:30 ` sddr09.c Matthew Dharm
0 siblings, 1 reply; 2+ messages in thread
From: Andries.Brouwer @ 2002-04-08 23:10 UTC (permalink / raw)
To: linux-kernel, linux-usb-devel
This evening I cleaned up sddr09.c, and after some playing
succeeded in writing to a SM card.
Remains the question: does anyone have docs for this thing?
(The "read control" command gives 64 bytes for each 16kB block.
The last 48 look like junk. The first 16 either are all zero,
or start with six FF bytes followed by two groups of five bytes.
The first two bytes of both groups of five are equal, and
describe the PBA <-> LBA correspondence.
I do not know what the final three bytes of both groups mean.
They have five nybbles of even parity and one nybble that ends
in two 1 bits.
What is the purpose of this PBA <-> LBA mapping?
To avoid bad blocks? Or is rewriting a sector much slower
than relocating it and writing a fresh one?
I invented a "write_data" command, but have not yet tried
to do a "write_control".)
Andries
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: sddr09.c
2002-04-08 23:10 sddr09.c Andries.Brouwer
@ 2002-04-08 23:30 ` Matthew Dharm
0 siblings, 0 replies; 2+ messages in thread
From: Matthew Dharm @ 2002-04-08 23:30 UTC (permalink / raw)
To: Andries.Brouwer; +Cc: linux-kernel, linux-usb-devel, USB Storage List
[-- Attachment #1: Type: text/plain, Size: 1998 bytes --]
Andries --
I have docs on this thing. It's been an on-again, off-again project with
some other developers. You're the first to be able to write to the thing.
The translation is designed to preserve integrity -- i.e. you write the
data, then atomically set one block invalid and another valid. There's
actually a command for this at the controller-level.
I suggest that, if you're serious about finishing this, you get on board
the usb-storage devel team (contact me off-lists about this), so we can get
you access to the specs and then get this thing working.
Matt
On Mon, Apr 08, 2002 at 11:10:43PM +0000, Andries.Brouwer@cwi.nl wrote:
> This evening I cleaned up sddr09.c, and after some playing
> succeeded in writing to a SM card.
> Remains the question: does anyone have docs for this thing?
>
> (The "read control" command gives 64 bytes for each 16kB block.
> The last 48 look like junk. The first 16 either are all zero,
> or start with six FF bytes followed by two groups of five bytes.
> The first two bytes of both groups of five are equal, and
> describe the PBA <-> LBA correspondence.
> I do not know what the final three bytes of both groups mean.
> They have five nybbles of even parity and one nybble that ends
> in two 1 bits.
> What is the purpose of this PBA <-> LBA mapping?
> To avoid bad blocks? Or is rewriting a sector much slower
> than relocating it and writing a fresh one?
> I invented a "write_data" command, but have not yet tried
> to do a "write_control".)
>
> Andries
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
Matthew Dharm Home: mdharm-usb@one-eyed-alien.net
Maintainer, Linux USB Mass Storage Driver
I want my GPFs!!!
-- Stef
User Friendly, 11/9/1998
[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2002-04-08 23:30 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-04-08 23:10 sddr09.c Andries.Brouwer
2002-04-08 23:30 ` sddr09.c Matthew Dharm
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®