Subject: SCSI MMC device abstraction and UDF patch for review
To: None <firstname.lastname@example.org>
From: Reinoud Zandijk <email@example.com>
Date: 12/21/2005 19:04:13
Content-Type: text/plain; charset=us-ascii
Two patches for review this time. Due to the size of the 2nd i've put them
both on ftp.NetBSD.org.
The first is a patch on src/sys/dev/scsipi/cd.c that adds two IOCTL's that
implement a SCSI MultiMediaCommandset (upto MMC-4 for now) device
abstraction providing pre-chewed readdiscinfo and readtrackinfo ioctls.
For devices like CD-ROM and DVD-ROM that implement only a limited subset of
the MMC commands the abstraction is helt up as far as possible. Usage of
the ioctl's is currently blocked for userland to allow its datastructures
to mature without binary compatability issues. Its a new add-on in that it
doesn't change existing behaviour and doesn't change any other code.
The second patch is my initial commit of my UDF filingsystem implementation
for CD and DVD. It is dependent on the 1st patch as it uses the ioctl's to
avoid it having intimate knowledge of SCSI internals. Its currently
supports read access to all media types that CD/DVD type drives can
recognize including DVD-RAM and BD- drives. Write access is planned and in
preparation. To facilitate this some hooks are present in the code that are
not strictly needed in a read-only implementation but which allow writing
to be added more easily. UDF versions upto the latest 2.60 are to be
supported though due to lack of test media version 2.50 and 2.60 are not
implemented yet though easy to add. Both open and closed media are
supported. Support for harddisc partitions and optionally for files (like
using vnd) is not implemented yet though on my TODO list.
Implemented and tested media types are CD-ROM, CD-R, CD-RW, CD-MRW,
DVD-ROM, DVD*R, DVD*RW, DVD+MRW but the same code can also read DVD-RAM,
HD-DVD and BluRay discs. Discs created and written by UDFclient, Nero's
InCD and Roxio's DirectCD/Drag2Disc read fine.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (NetBSD)
-----END PGP SIGNATURE-----