MMC-4 prevent/allow media removal definition conflicts with MMC-3 / SPC-2 / SPC-3

David Burg dburg at nero.com
Thu Apr 22 03:04:37 PDT 2004


* From the T10 Reflector (t10 at t10.org), posted by:
* "David Burg" <dburg at nero.com>
*
Hello,

As I had some trouble to monitor user eject requests of different MMC
devices implementing of the prevent/allow media removal, I had a look =
at the
changes in MMC specification and found the following conflict:

- MMC-3:

"Table 49 =96 Commands for Multi-Media Logical Units" says, "Command =
name:
PREVENT ALLOW MEDIUM REMOVAL; Op Code: 1Eh; Reference: SPC-2". SPC-2 =
defines
bits 0 and 1 of byte 4 of the PREVENT ALLOW MEDIUM REMOVAL command as
"PREVENT" field. SPC-2 says then "PREVENT values 10b and 11b are valid =
only
when the RMB bit and the MCHNGR bit are both equal to one in the =
standard
INQUIRY data.". SPC-3 (r07) says the same.

Note: Devices I could test here (and which have no media changer) =
response
in standard inquiry data with RMB bit to one and MCHNGR bit to zero.

- MMC-4:

"6.18 PREVENT ALLOW MEDIUM REMOVAL Command"/"Table 329 =96 PREVENT =
ALLOW
MEDIUM REMOVAL CDB" defines bits 0 and 1 (resp.) of byte 4 of the =
PREVENT
ALLOW MEDIUM REMOVAL command as 'Prevent' and 'Persistent' (resp.).
Persistent prevent state is set with both bits to 1 (as described in =
"Table
330 =96 State Selection").

Then, in "4.1.7 Removable medium", is said "While in the Persistent =
prevent
state, the Logical Unit shall generate Events upon receipt of a User =
Eject
request." - I understand this as if I want to receive eject request
notification with Get Event/Status Notification command, I need to set =
the
"Persistent prevent" state.

But... On a device where MCHNGR bit is zero, according to MMC-3/SPC-2, =
value
11b for 'PREVENT' field is invalid! And indeed, I have a few devices =
here
that rejects my Prevent/Allow Media Removal command with check =
condition,
Sense Key:	05h (Illegal Request), Sense Code:	24h 00h (Invalid
field in CDB).

I am twice confused because in MMC-3, I can found the same note about
"Persistent prevent" note in "4.1.6 Removable medium" but I not =
understand
how I can set this "Persistent prevent" state according to MMC-3.

So, what should I do to lock the door and receive notification of user =
eject
requests (so I can put the medium in a clean state, unlock the door, =
and
eject)?

Best regards,

David Burg

PS: MMC-2 refers to SPC (1) for Prevent/Allow Media Removal. SPC-1 says =
the
same as SPC-2 and SPC-3 ("Prevent values 10b and 11b are valid only =
when the
RMB bit and the Mchngr bit are both equal to one in the standard =
INQUIRY
data.")

----------------------------------------------------------------
David Burg
Software Development,
InCD Project Leader

Ahead Software AG     phone: +49 (0)7248 911 862 (direct line)
Im Stoeckmaedle 18    fax:   +49 (0)7248 911 888
76307 Karlsbad        email: dburg at nero.com
Germany               http://www.nero.com
----------------------------------------------------------------


*
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org




More information about the T10 mailing list