CD-ROM: IOCTL now detects medium changes without having to read the host drive's TOC on every operation, improves performance.
This commit is contained in:
@@ -271,8 +271,9 @@ typedef struct cdrom_ops_t {
|
||||
uint32_t *info);
|
||||
int (*is_dvd)(const void *local);
|
||||
int (*has_audio)(const void *local);
|
||||
int (*ext_medium_changed)(void *local);
|
||||
int (*is_empty)(const void *local);
|
||||
void (*close)(void *local);
|
||||
void (*load)(const void *local);
|
||||
} cdrom_ops_t;
|
||||
|
||||
typedef struct cdrom {
|
||||
@@ -423,7 +424,8 @@ extern int cdrom_read_dvd_structure(const cdrom_t *dev, const uint8_
|
||||
uint8_t *buffer, uint32_t *info);
|
||||
extern void cdrom_read_disc_information(const cdrom_t *dev, uint8_t *buffer);
|
||||
extern int cdrom_read_track_information(cdrom_t *dev, const uint8_t *cdb, uint8_t *buffer);
|
||||
extern int cdrom_ext_medium_changed(const cdrom_t *dev);
|
||||
extern void cdrom_set_empty(cdrom_t *dev);
|
||||
extern void cdrom_update_status(cdrom_t *dev);
|
||||
extern int cdrom_load(cdrom_t *dev, const char *fn, const int skip_insert);
|
||||
|
||||
extern void cdrom_global_init(void);
|
||||
|
||||
@@ -219,7 +219,7 @@
|
||||
#define ASC_INV_FIELD_IN_PARAMETER_LIST 0x26
|
||||
#define ASC_WRITE_PROTECTED 0x27
|
||||
#define ASC_MEDIUM_MAY_HAVE_CHANGED 0x28
|
||||
#define ASC_CAPACITY_DATA_CHANGED 0x2A
|
||||
#define ASC_CAPACITY_DATA_CHANGED 0x2a
|
||||
#define ASC_INCOMPATIBLE_FORMAT 0x30
|
||||
#define ASC_MEDIUM_NOT_PRESENT 0x3a
|
||||
#define ASC_DATA_PHASE_ERROR 0x4b
|
||||
|
||||
Reference in New Issue
Block a user