Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Oct 2005 20:49:16 -0500
From:      Jason Harmening <jason.harmening@gmail.com>
To:        freebsd-hackers@freebsd.org
Subject:   Native ATAPI MO driver
Message-ID:  <200510232049.16352.Jason.Harmening@gmail.com>

next in thread | raw e-mail | index | archive | help
Hi,

I have a 2.3G Fujitsu MO drive, and I've gotten tired of using atapicam to 
access it.  I'm thinking of writing a native ATAPI driver that could be added 
to the kernel through a configuration line like:

device atapimo

I've been doing a little work to see how feasible this is--the kernel already 
defines the ATA_ATAPI_TYPE_OPTICAL device type that is received from my drive 
during probing.  But ATA_ATAPI_TYPE_OPTICAL isn't actually used anywhere, and 
there is no driver that can actually recognize and attach to an ATAPI MO 
drive.  

I modified the atapifd driver (src/sys/dev/ata/atapi-fd.c) to also recognize 
ATA_ATAPI_TYPE_OPTICAL, and my drive was actually recognized during probing 
as afd0, but afd_attach returned an error.  It looks as if afd_sense() was 
failing, which I'm guessing is because ATAPI MO drives (or mine, at least) 
use a different capabilities page code and/or capabilities page structure 
than ATAPI floppies.  The atapi-fd driver uses 0x5 for its "Capabilities and 
Mechanical Status" page code, while everything else (atapi-cd, atapi-tape) 
uses 0x2a.  All three drivers have distinctly different structures for this 
page.

So I'm wondering: do ATAPI MO drives use a capabilities page code/structure 
more like CD/DVD drives, or do they have their own unique ATAPI page 
structure?  If so, where can I find a document outlining the structure?  

I've found loads of documents detailing the page structure for CD/DVD drives, 
but nothing for MO drives (or floppies or tape drives for that matter).

Also, beyond the capabilities page, are there any other special considerations 
I'd need to make for an MO driver?

Any answers would be really awesome.

Thanks,
Jason Harmening



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200510232049.16352.Jason.Harmening>