linux-user: Add missing CDROM ioctls

Add the missing CDROM ioctls and bring them in same order as
documentation.

Signed-off-by: Helge Deller <deller@gmx.de>
This commit is contained in:
Helge Deller
2026-04-25 22:58:12 +02:00
parent 759c456b1d
commit dcb6e96257

View File

@@ -416,19 +416,18 @@
#endif
IOCTL(CDROMPAUSE, 0, TYPE_NULL)
IOCTL(CDROMSTART, 0, TYPE_NULL)
IOCTL(CDROMSTOP, 0, TYPE_NULL)
IOCTL(CDROMRESUME, 0, TYPE_NULL)
IOCTL(CDROMEJECT, 0, TYPE_NULL)
IOCTL(CDROMEJECT_SW, 0, TYPE_INT)
IOCTL(CDROMCLOSETRAY, 0, TYPE_NULL)
IOCTL(CDROMRESET, 0, TYPE_NULL)
IOCTL(CDROMPLAYMSF, IOC_W, MK_PTR(TYPE_INT))
IOCTL(CDROMPLAYTRKIND, IOC_W, MK_PTR(TYPE_INT))
IOCTL(CDROMREADTOCHDR, IOC_R, MK_PTR(TYPE_INT))
IOCTL(CDROMREADTOCENTRY, IOC_RW, MK_PTR(TYPE_INT))
IOCTL(CDROMSTOP, 0, TYPE_NULL)
IOCTL(CDROMSTART, 0, TYPE_NULL)
IOCTL(CDROMEJECT, 0, TYPE_NULL)
IOCTL(CDROMVOLCTRL, IOC_W, MK_PTR(TYPE_INT))
IOCTL(CDROMSUBCHNL, IOC_RW, MK_PTR(TYPE_INT))
IOCTL(CDROMEJECT_SW, IOC_W, TYPE_INT)
IOCTL(CDROMRESET, 0, TYPE_NULL)
/* XXX: incorrect (need specific handling) */
IOCTL(CDROMREADAUDIO, IOC_W, MK_PTR(MK_STRUCT(STRUCT_cdrom_read_audio)))
IOCTL(CDROMREADCOOKED, IOC_RW, MK_PTR(TYPE_INT))
@@ -438,16 +437,22 @@
IOCTL(CDROMREADALL, IOC_RW, MK_PTR(TYPE_INT))
IOCTL(CDROMMULTISESSION, IOC_RW, MK_PTR(TYPE_INT))
IOCTL(CDROM_GET_UPC, IOC_R, MK_PTR(TYPE_INT))
IOCTL(CDROM_LAST_WRITTEN, IOC_R, MK_PTR(TYPE_LONG))
IOCTL(CDROMVOLREAD, IOC_R, MK_PTR(TYPE_INT))
IOCTL(CDROMSEEK, IOC_W, MK_PTR(TYPE_INT))
IOCTL(CDROMPLAYBLK, IOC_W, MK_PTR(TYPE_INT))
IOCTL(CDROM_MEDIA_CHANGED, 0, TYPE_NULL)
IOCTL(CDROM_SET_OPTIONS, 0, TYPE_INT)
IOCTL(CDROM_CLEAR_OPTIONS, 0, TYPE_INT)
IOCTL(CDROM_SELECT_SPEED, 0, TYPE_INT)
IOCTL(CDROM_SELECT_DISC, 0, TYPE_INT)
IOCTL(CDROM_DRIVE_STATUS, 0, TYPE_NULL)
IOCTL(CDROMCLOSETRAY, 0, TYPE_NULL)
IOCTL(CDROM_SET_OPTIONS, IOC_W, TYPE_INT)
IOCTL(CDROM_CLEAR_OPTIONS, IOC_W, TYPE_INT)
IOCTL(CDROM_SELECT_SPEED, IOC_W, TYPE_INT)
IOCTL(CDROM_SELECT_DISC, IOC_W, TYPE_INT)
IOCTL(CDROM_MEDIA_CHANGED, IOC_W, TYPE_INT)
IOCTL(CDROM_DRIVE_STATUS, IOC_W, TYPE_INT)
IOCTL(CDROM_DISC_STATUS, 0, TYPE_NULL)
IOCTL(CDROM_CHANGER_NSLOTS, 0, TYPE_NULL)
IOCTL(CDROM_LOCKDOOR, IOC_W, TYPE_INT)
IOCTL(CDROM_DEBUG, IOC_W, TYPE_INT)
IOCTL(CDROM_GET_CAPABILITY, 0, TYPE_NULL)
IOCTL(CDROMAUDIOBUFSIZ, 0, TYPE_INT)
#if 0