Commit Graph

427 Commits

Author SHA1 Message Date
R. Bernstein
100654b51b Fix all fo the bugs I introduced "improving" the code of others.
mmc_ll_cmds.c: mmc_mode_select and mmc_get_configuration now work.
mmc_hl_cmds.c: bug introduced by turning a var into a pointer to that variable.
2010-02-08 16:56:04 -05:00
R. Bernstein
2d3b7d28b4 Add SCSI-MMC GET CONFIGURATION.
Add Frank Endres' disc type determination via MMC.
Be more careful to suffix with CDIO_MMC which I hope will reduce possible name conflicts.
2010-02-07 21:04:21 -05:00
R. Bernstein
aa7f7e1315 Start populating mmc/mmc_hl_cmds.c. Create mmc directory in preparation
for making it a library.

mmc.h:  CDIO_MMC_GPCMD_ALLOW_MEDIUM_REMOVAL ->
        CDIO_MMC_GPCMD_PREVENT_ALLOW_MEDIUM_REMOVAL
mmc.c:  Move mm_eject_media and mmc_set_drive_speed to mmc/mmc_hl_cmds.c
mmc_ll_cmds.c: add mmc_prevent_allow_medium_removal,
               move mmc_mode_sense to mmc/mmc_hl_cmds.c
2010-02-07 19:21:33 -05:00
R. Bernstein
d3a0ba06e1 Move more towards making MMC a library. Start to reorganize more to
break out 1-1 SCSI-MMC commands (in mmc_ll_cmds.c) from higher-level
commands which use the lower-level ones.
2010-02-07 18:35:47 -05:00
R. Bernstein
bf7d63b435 Add mcc_test_unit_ready and mmc_mode_select (buggy). Allow for timeouts on
mmc commands - more work needed here too.
2010-02-07 07:20:28 -05:00
R. Bernstein
51f6eb6912 Small cleanups 2010-02-06 23:27:46 -05:00
R. Bernstein
f93e673fd5 lib/driver/mmc.c - DRY code. Warning - might have introduced breakage here
*mmc*: mmc_start_stop_media -> mmc_start_stop_unit,
 CDIO_MMC_GPCMD_START_STOP -> CDIO_MMC_GPCMD_START_STOP_UNIT
cdio++/mmc.hpp: Regularize Doxygen comment format.
2010-02-06 22:53:03 -05:00
R. Bernstein
1687e2633f Start to split off specific mmc commands from the lower-level internals. 2010-02-06 11:59:35 -05:00
R. Bernstein
9cbaad6247 Add CDIO_DISC_MODEs to correspond to updated DVD Book types. 2010-02-06 08:48:22 -05:00
R. Bernstein
0234042d9a dvd.h: Update DVD book types
disc.c: Add CDIO_DISC_MODE_DVD_OTHER

Thanks to Frank Endes and Thomas Schmitt for observing the problem and suggesting the fixes.
2010-02-06 07:54:46 -05:00
R. Bernstein
8f963ddd59 Had erroneously omitted CDIO_DISC_MODE_DVD_OTHER. Omission pointed out by Frank Endres. 2010-02-06 07:11:40 -05:00
R. Bernstein
e3d2e21123 glossary.texi, mmc.h: note acronyms SPC-3, MMC-5, SBC-2.
glossary.texi: start using texinfo cross references
test/driver/mmc.c: use provided routine for start/stop unit. Warning: might have broken things here.
2010-02-05 13:50:07 -05:00
R. Bernstein
0ae0a2ca8b Revise with info from dpANS SCSI Primary Commands-3 (SPC-3). Use sense
data structure in mmc_last_cmd_sense.
2010-02-05 07:40:31 -05:00
R. Bernstein
35b6969a45 Add SCSI sense key values. 2010-02-05 03:37:27 -05:00
R. Bernstein
34bc1ec0b4 mmc.h: Big endian bytes is not the same as big_endian bitfield
mmc.c: more pervasive use of cdio's mmc definitions.
2010-02-04 04:24:43 -05:00
R. Bernstein
e3a5e16cbb mmc.h: TEST_UNIT_READY MMC command opcode
device.h: Add DRIVER_OP_MMC_SENSE to driver_return_code_t.

win32_ioctl.c: work around MS bug where buffer sizes are 0 or 1. Set
return code status if sense data passed back. Translate bad parameter
MS Windows error into a driver_return_code_t error.

test/driver/mmc.c: Reinstate old logic now that the MS Windows driver
has been made to work more like other drivers and copes with some of
the MS Windows causing failure here.
2010-02-03 21:43:05 -05:00
R. Bernstein
8083e17683 Fix in changing data types. 2010-02-03 05:30:10 -05:00
R. Bernstein
991ea303d7 Add more doxygen comments as to sense request information means and add a typedef for mmc_sense_request.
Use this in win32_ioctl.c.
2010-02-03 05:22:20 -05:00
R. Bernstein
e281b22c3c Add type definition for SCSI sense data. 2010-02-03 04:53:25 -05:00
R. Bernstein
5dc0592ad8 Merge branch 'master' of git.sv.gnu.org:/srv/git/libcdio 2010-02-02 22:18:13 -05:00
R. Bernstein
60b237a161 MS Windows iocontrol SCSI Passthrough fixes. Change test/driver/mmc.c - we
can't that when we get sense data, that we also gegt status back that pass through fails.
On MS Windows it doesn't seem to work that way.
2010-02-02 22:15:55 -05:00
R. Bernstein
2d46440352 Handle SCSI_MMC_DATA_NONE and copy sense data. Not working since SCSI Pass is still broken. Presumably after that's solved there will be less catch-up work. 2010-02-01 05:16:33 -05:00
R. Bernstein
8e9339917c Format windows error messages better. 2010-01-31 23:19:56 -05:00
R. Bernstein
713951f1b3 Merge branch 'master' of git.sv.gnu.org:/srv/git/libcdio 2010-01-31 21:32:44 -05:00
R. Bernstein
5f10331adb MS Windows driver hacking hopefully to get closer to passing back sense data.
For now it seems that some pass-through direct doesn't work while the less-good passthrough does. Sigh.
2010-01-31 21:31:08 -05:00
R. Bernstein
a08a1f5149 Allow a status parameter in mmc_get_disc_eraseable to be NULL. Suggested by Frank Endres on libcdio-devel mailing list. 2010-01-31 07:46:48 -05:00
R. Bernstein
a41cfed2a1 Add cdio_get_arg("scsi-tuple") for Win32 ioctl. 2010-01-29 23:25:59 -05:00
R. Bernstein
1b05767201 Update MMC Feature Profile list 2010-01-29 04:48:38 -05:00
R. Bernstein
aef85b1bc7 Add a driver return code parameter to mmc_get_get_disc_erasable. 2010-01-29 03:51:21 -05:00
R. Bernstein
edf69959c1 Add mmc_get_disc_erasable courtesy of Frank Endres. 2010-01-28 19:38:34 -05:00
R. Bernstein
2a125e3471 Fill out parameter descriptions to remove doxygen warnings. 2010-01-28 10:36:59 -05:00
R. Bernstein
fbfc391f28 Regularis some of the mmc Doxygen comments. 2010-01-28 05:06:15 -05:00
R. Bernstein
9edd3db3d2 Better diagnostic messages for MS Window driver. 2010-01-23 21:59:43 -05:00
R. Bernstein
9c96d2c448 More information around access modes for specific drivers. 2010-01-18 03:39:33 -05:00
R. Bernstein
fa897e85b9 Extend win32 test to check get_arg("mmc-supported?"). Turn ASPI load failer into an info message 2010-01-18 03:30:40 -05:00
R. Bernstein
3bdc6820e5 Bug fixes in test/driver programs 2010-01-18 03:08:30 -05:00
R. Bernstein
0297656be1 driver/*.c: Add response for get_arg("mmc-supported?")
example/*.c: remove compiler wranings.
2010-01-17 05:54:02 -05:00
R. Bernstein
67c8623051 lib/driver/libcdio.sym: cdio_realpath is extern now.
udffile.c: remove warning
test/driver/gnu_linux.c: don't have scsi-tuple-linux any more.
2010-01-17 04:49:47 -05:00
R. Bernstein
08d75ead2e Add way to determine if MMC commands are available: get_arg("mmc-supported?") 2010-01-16 21:18:31 -05:00
R. Bernstein
bd096b3eca FreeBSD read/write and most-recent scsi sense access courtesy of Thomas Schmitt. 2010-01-16 21:02:34 -05:00
R. Bernstein
7d8b6d0a4d cdio_follow_symlink -> cdio_realpath which is really POSIX realpath. (Suggestion via Thomas Schmitt.) gnu_linux.c: report errors when they occur. 2010-01-16 16:44:12 -05:00
R. Bernstein
e2c51e7ae2 Add Thomas Schmitt's bug fixes and standalone code. 2010-01-13 06:10:34 -05:00
R. Bernstein
aa2072de20 Start to add read-write access mode for FreeBSD. Not working yet. 2010-01-07 07:02:20 -05:00
R. Bernstein
e4e600c1d9 Correct cdio_get_devices for FreeBSD. 2010-01-06 12:26:35 -05:00
R. Bernstein
f7d11d586c Start FreeBSD driver test. Not currently working though.
freebsd.cam: check for error in ioctl.
2010-01-06 02:15:32 -05:00
R. Bernstein
fe77f93bf7 Start to request sense data in DeviceIOControl of MS Windows. gnu_linux.c: small changes. 2010-01-01 05:52:52 -05:00
R. Bernstein
4819e7e0c4 Closer to having RW access working 2009-12-31 23:58:01 -05:00
WIndows XP
309bff3441 Last change to gnu_linux.c broke things on non GNU/Linux 2009-12-31 22:21:11 -05:00
R. Bernstein
cf882cfd20 Add ability to retrieve SCSI tuple for a name and/or fake one up. This
helps programs that want to be cd-record compatible. In particular to
parameters were added to cdio_get_arg, "scsi-tuple", and
"scsi-tuple-linux".

Code from Thomas Schmitt.
2009-12-31 18:51:50 -05:00
R. Bernstein
7e14578ffe lib/driver/mmc.c: remove bug in dereferencing NULL pointer. (Found in testing ;-)
test/driver/mmc.c: MMC command testing code from Thomas Schmitt.
2009-12-31 13:28:11 -05:00