Native ATAPI MO driver

Søren Schmidt sos at FreeBSD.org
Mon Oct 24 09:27:35 PDT 2005


On 24/10/2005, at 3:49, Jason Harmening wrote:

> 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?

I did plan to write such  a driver back when, but HW seemed to have  
disappeared from all the vendors I've asked so it was pu ton the  
backburner.
Anyhow I should have the docs somewhere so it should be possible to  
get this working...

Søren Schmidt
sos at FreeBSD.org





More information about the freebsd-hackers mailing list