📄 compat_ioctl.h
字号:
/* List here explicitly which ioctl's are known to have * compatible types passed or none at all... Please include * only stuff that is compatible on *all architectures*. */#ifndef COMPATIBLE_IOCTL /* pointer to compatible structure or no argument */#define COMPATIBLE_IOCTL(cmd) HANDLE_IOCTL((cmd),(ioctl_trans_handler_t)sys_ioctl)#endif#ifndef ULONG_IOCTL /* argument is an unsigned long integer, not a pointer */#define ULONG_IOCTL(cmd) HANDLE_IOCTL((cmd),(ioctl_trans_handler_t)sys_ioctl)#endif/* Big T */COMPATIBLE_IOCTL(TCGETA)COMPATIBLE_IOCTL(TCSETA)COMPATIBLE_IOCTL(TCSETAW)COMPATIBLE_IOCTL(TCSETAF)COMPATIBLE_IOCTL(TCSBRK)ULONG_IOCTL(TCSBRKP)COMPATIBLE_IOCTL(TCXONC)COMPATIBLE_IOCTL(TCFLSH)COMPATIBLE_IOCTL(TCGETS)COMPATIBLE_IOCTL(TCSETS)COMPATIBLE_IOCTL(TCSETSW)COMPATIBLE_IOCTL(TCSETSF)COMPATIBLE_IOCTL(TIOCLINUX)COMPATIBLE_IOCTL(TIOCSBRK)COMPATIBLE_IOCTL(TIOCCBRK)ULONG_IOCTL(TIOCMIWAIT)COMPATIBLE_IOCTL(TIOCGICOUNT)/* Little t */COMPATIBLE_IOCTL(TIOCGETD)COMPATIBLE_IOCTL(TIOCSETD)COMPATIBLE_IOCTL(TIOCEXCL)COMPATIBLE_IOCTL(TIOCNXCL)COMPATIBLE_IOCTL(TIOCCONS)COMPATIBLE_IOCTL(TIOCGSOFTCAR)COMPATIBLE_IOCTL(TIOCSSOFTCAR)COMPATIBLE_IOCTL(TIOCSWINSZ)COMPATIBLE_IOCTL(TIOCGWINSZ)COMPATIBLE_IOCTL(TIOCMGET)COMPATIBLE_IOCTL(TIOCMBIC)COMPATIBLE_IOCTL(TIOCMBIS)COMPATIBLE_IOCTL(TIOCMSET)COMPATIBLE_IOCTL(TIOCPKT)COMPATIBLE_IOCTL(TIOCNOTTY)COMPATIBLE_IOCTL(TIOCSTI)COMPATIBLE_IOCTL(TIOCOUTQ)COMPATIBLE_IOCTL(TIOCSPGRP)COMPATIBLE_IOCTL(TIOCGPGRP)ULONG_IOCTL(TIOCSCTTY)COMPATIBLE_IOCTL(TIOCGPTN)COMPATIBLE_IOCTL(TIOCSPTLCK)COMPATIBLE_IOCTL(TIOCSERGETLSR)/* Big F */COMPATIBLE_IOCTL(FBIOBLANK)COMPATIBLE_IOCTL(FBIOGET_VSCREENINFO)COMPATIBLE_IOCTL(FBIOPUT_VSCREENINFO)COMPATIBLE_IOCTL(FBIOPAN_DISPLAY)COMPATIBLE_IOCTL(FBIOGET_CON2FBMAP)COMPATIBLE_IOCTL(FBIOPUT_CON2FBMAP)/* Little f */COMPATIBLE_IOCTL(FIOCLEX)COMPATIBLE_IOCTL(FIONCLEX)COMPATIBLE_IOCTL(FIOASYNC)COMPATIBLE_IOCTL(FIONBIO)COMPATIBLE_IOCTL(FIONREAD) /* This is also TIOCINQ *//* 0x00 */COMPATIBLE_IOCTL(FIBMAP)COMPATIBLE_IOCTL(FIGETBSZ)/* 0x03 -- HD/IDE ioctl's used by hdparm and friends. * Some need translations, these do not. */COMPATIBLE_IOCTL(HDIO_GET_IDENTITY)COMPATIBLE_IOCTL(HDIO_SET_DMA)COMPATIBLE_IOCTL(HDIO_SET_UNMASKINTR)COMPATIBLE_IOCTL(HDIO_SET_NOWERR)COMPATIBLE_IOCTL(HDIO_SET_32BIT)COMPATIBLE_IOCTL(HDIO_SET_MULTCOUNT)COMPATIBLE_IOCTL(HDIO_DRIVE_CMD)COMPATIBLE_IOCTL(HDIO_DRIVE_TASK)COMPATIBLE_IOCTL(HDIO_SET_PIO_MODE)COMPATIBLE_IOCTL(HDIO_SET_NICE)/* 0x02 -- Floppy ioctls */COMPATIBLE_IOCTL(FDMSGON)COMPATIBLE_IOCTL(FDMSGOFF)COMPATIBLE_IOCTL(FDSETEMSGTRESH)COMPATIBLE_IOCTL(FDFLUSH)COMPATIBLE_IOCTL(FDWERRORCLR)COMPATIBLE_IOCTL(FDSETMAXERRS)COMPATIBLE_IOCTL(FDGETMAXERRS)COMPATIBLE_IOCTL(FDGETDRVTYP)COMPATIBLE_IOCTL(FDEJECT)COMPATIBLE_IOCTL(FDCLRPRM)COMPATIBLE_IOCTL(FDFMTBEG)COMPATIBLE_IOCTL(FDFMTEND)COMPATIBLE_IOCTL(FDRESET)COMPATIBLE_IOCTL(FDTWADDLE)COMPATIBLE_IOCTL(FDFMTTRK)COMPATIBLE_IOCTL(FDRAWCMD)/* 0x12 */COMPATIBLE_IOCTL(BLKROSET)COMPATIBLE_IOCTL(BLKROGET)COMPATIBLE_IOCTL(BLKRRPART)COMPATIBLE_IOCTL(BLKFLSBUF)COMPATIBLE_IOCTL(BLKSECTSET)COMPATIBLE_IOCTL(BLKSSZGET)ULONG_IOCTL(BLKRASET)ULONG_IOCTL(BLKFRASET)/* RAID */COMPATIBLE_IOCTL(RAID_VERSION)COMPATIBLE_IOCTL(GET_ARRAY_INFO)COMPATIBLE_IOCTL(GET_DISK_INFO)COMPATIBLE_IOCTL(PRINT_RAID_DEBUG)COMPATIBLE_IOCTL(RAID_AUTORUN)COMPATIBLE_IOCTL(CLEAR_ARRAY)COMPATIBLE_IOCTL(ADD_NEW_DISK)ULONG_IOCTL(HOT_REMOVE_DISK)COMPATIBLE_IOCTL(SET_ARRAY_INFO)COMPATIBLE_IOCTL(SET_DISK_INFO)COMPATIBLE_IOCTL(WRITE_RAID_INFO)COMPATIBLE_IOCTL(UNPROTECT_ARRAY)COMPATIBLE_IOCTL(PROTECT_ARRAY)ULONG_IOCTL(HOT_ADD_DISK)ULONG_IOCTL(SET_DISK_FAULTY)COMPATIBLE_IOCTL(RUN_ARRAY)ULONG_IOCTL(START_ARRAY)COMPATIBLE_IOCTL(STOP_ARRAY)COMPATIBLE_IOCTL(STOP_ARRAY_RO)COMPATIBLE_IOCTL(RESTART_ARRAY_RW)/* DM */COMPATIBLE_IOCTL(DM_VERSION_32)COMPATIBLE_IOCTL(DM_REMOVE_ALL_32)COMPATIBLE_IOCTL(DM_LIST_DEVICES_32)COMPATIBLE_IOCTL(DM_DEV_CREATE_32)COMPATIBLE_IOCTL(DM_DEV_REMOVE_32)COMPATIBLE_IOCTL(DM_DEV_RENAME_32)COMPATIBLE_IOCTL(DM_DEV_SUSPEND_32)COMPATIBLE_IOCTL(DM_DEV_STATUS_32)COMPATIBLE_IOCTL(DM_DEV_WAIT_32)COMPATIBLE_IOCTL(DM_TABLE_LOAD_32)COMPATIBLE_IOCTL(DM_TABLE_CLEAR_32)COMPATIBLE_IOCTL(DM_TABLE_DEPS_32)COMPATIBLE_IOCTL(DM_TABLE_STATUS_32)COMPATIBLE_IOCTL(DM_LIST_VERSIONS_32)COMPATIBLE_IOCTL(DM_TARGET_MSG_32)COMPATIBLE_IOCTL(DM_VERSION)COMPATIBLE_IOCTL(DM_REMOVE_ALL)COMPATIBLE_IOCTL(DM_LIST_DEVICES)COMPATIBLE_IOCTL(DM_DEV_CREATE)COMPATIBLE_IOCTL(DM_DEV_REMOVE)COMPATIBLE_IOCTL(DM_DEV_RENAME)COMPATIBLE_IOCTL(DM_DEV_SUSPEND)COMPATIBLE_IOCTL(DM_DEV_STATUS)COMPATIBLE_IOCTL(DM_DEV_WAIT)COMPATIBLE_IOCTL(DM_TABLE_LOAD)COMPATIBLE_IOCTL(DM_TABLE_CLEAR)COMPATIBLE_IOCTL(DM_TABLE_DEPS)COMPATIBLE_IOCTL(DM_TABLE_STATUS)COMPATIBLE_IOCTL(DM_LIST_VERSIONS)COMPATIBLE_IOCTL(DM_TARGET_MSG)/* Big K */COMPATIBLE_IOCTL(PIO_FONT)COMPATIBLE_IOCTL(GIO_FONT)ULONG_IOCTL(KDSIGACCEPT)COMPATIBLE_IOCTL(KDGETKEYCODE)COMPATIBLE_IOCTL(KDSETKEYCODE)ULONG_IOCTL(KIOCSOUND)ULONG_IOCTL(KDMKTONE)COMPATIBLE_IOCTL(KDGKBTYPE)ULONG_IOCTL(KDSETMODE)COMPATIBLE_IOCTL(KDGETMODE)ULONG_IOCTL(KDSKBMODE)COMPATIBLE_IOCTL(KDGKBMODE)ULONG_IOCTL(KDSKBMETA)COMPATIBLE_IOCTL(KDGKBMETA)COMPATIBLE_IOCTL(KDGKBENT)COMPATIBLE_IOCTL(KDSKBENT)COMPATIBLE_IOCTL(KDGKBSENT)COMPATIBLE_IOCTL(KDSKBSENT)COMPATIBLE_IOCTL(KDGKBDIACR)COMPATIBLE_IOCTL(KDSKBDIACR)COMPATIBLE_IOCTL(KDKBDREP)COMPATIBLE_IOCTL(KDGKBLED)ULONG_IOCTL(KDSKBLED)COMPATIBLE_IOCTL(KDGETLED)ULONG_IOCTL(KDSETLED)COMPATIBLE_IOCTL(GIO_SCRNMAP)COMPATIBLE_IOCTL(PIO_SCRNMAP)COMPATIBLE_IOCTL(GIO_UNISCRNMAP)COMPATIBLE_IOCTL(PIO_UNISCRNMAP)COMPATIBLE_IOCTL(PIO_FONTRESET)COMPATIBLE_IOCTL(PIO_UNIMAPCLR)/* Big S */COMPATIBLE_IOCTL(SCSI_IOCTL_GET_IDLUN)COMPATIBLE_IOCTL(SCSI_IOCTL_DOORLOCK)COMPATIBLE_IOCTL(SCSI_IOCTL_DOORUNLOCK)COMPATIBLE_IOCTL(SCSI_IOCTL_TEST_UNIT_READY)COMPATIBLE_IOCTL(SCSI_IOCTL_GET_BUS_NUMBER)COMPATIBLE_IOCTL(SCSI_IOCTL_SEND_COMMAND)COMPATIBLE_IOCTL(SCSI_IOCTL_PROBE_HOST)COMPATIBLE_IOCTL(SCSI_IOCTL_GET_PCI)/* Big T */COMPATIBLE_IOCTL(TUNSETNOCSUM)COMPATIBLE_IOCTL(TUNSETDEBUG)COMPATIBLE_IOCTL(TUNSETPERSIST)COMPATIBLE_IOCTL(TUNSETOWNER)/* Big V */COMPATIBLE_IOCTL(VT_SETMODE)COMPATIBLE_IOCTL(VT_GETMODE)COMPATIBLE_IOCTL(VT_GETSTATE)COMPATIBLE_IOCTL(VT_OPENQRY)ULONG_IOCTL(VT_ACTIVATE)ULONG_IOCTL(VT_WAITACTIVE)ULONG_IOCTL(VT_RELDISP)ULONG_IOCTL(VT_DISALLOCATE)COMPATIBLE_IOCTL(VT_RESIZE)COMPATIBLE_IOCTL(VT_RESIZEX)COMPATIBLE_IOCTL(VT_LOCKSWITCH)COMPATIBLE_IOCTL(VT_UNLOCKSWITCH)/* Little v *//* Little v, the video4linux ioctls (conflict?) */COMPATIBLE_IOCTL(VIDIOCGCAP)COMPATIBLE_IOCTL(VIDIOCGCHAN)COMPATIBLE_IOCTL(VIDIOCSCHAN)COMPATIBLE_IOCTL(VIDIOCGPICT)COMPATIBLE_IOCTL(VIDIOCSPICT)COMPATIBLE_IOCTL(VIDIOCCAPTURE)COMPATIBLE_IOCTL(VIDIOCKEY)COMPATIBLE_IOCTL(VIDIOCGAUDIO)COMPATIBLE_IOCTL(VIDIOCSAUDIO)COMPATIBLE_IOCTL(VIDIOCSYNC)COMPATIBLE_IOCTL(VIDIOCMCAPTURE)COMPATIBLE_IOCTL(VIDIOCGMBUF)COMPATIBLE_IOCTL(VIDIOCGUNIT)COMPATIBLE_IOCTL(VIDIOCGCAPTURE)COMPATIBLE_IOCTL(VIDIOCSCAPTURE)/* BTTV specific... */COMPATIBLE_IOCTL(_IOW('v', BASE_VIDIOCPRIVATE+0, char [256]))COMPATIBLE_IOCTL(_IOR('v', BASE_VIDIOCPRIVATE+1, char [256]))COMPATIBLE_IOCTL(_IOR('v' , BASE_VIDIOCPRIVATE+2, unsigned int))COMPATIBLE_IOCTL(_IOW('v' , BASE_VIDIOCPRIVATE+3, char [16])) /* struct bttv_pll_info */COMPATIBLE_IOCTL(_IOR('v' , BASE_VIDIOCPRIVATE+4, int))COMPATIBLE_IOCTL(_IOR('v' , BASE_VIDIOCPRIVATE+5, int))COMPATIBLE_IOCTL(_IOR('v' , BASE_VIDIOCPRIVATE+6, int))COMPATIBLE_IOCTL(_IOR('v' , BASE_VIDIOCPRIVATE+7, int))/* Little p (/dev/rtc, /dev/envctrl, etc.) */COMPATIBLE_IOCTL(RTC_AIE_ON)COMPATIBLE_IOCTL(RTC_AIE_OFF)COMPATIBLE_IOCTL(RTC_UIE_ON)COMPATIBLE_IOCTL(RTC_UIE_OFF)COMPATIBLE_IOCTL(RTC_PIE_ON)COMPATIBLE_IOCTL(RTC_PIE_OFF)COMPATIBLE_IOCTL(RTC_WIE_ON)COMPATIBLE_IOCTL(RTC_WIE_OFF)COMPATIBLE_IOCTL(RTC_ALM_SET)COMPATIBLE_IOCTL(RTC_ALM_READ)COMPATIBLE_IOCTL(RTC_RD_TIME)COMPATIBLE_IOCTL(RTC_SET_TIME)COMPATIBLE_IOCTL(RTC_WKALM_SET)COMPATIBLE_IOCTL(RTC_WKALM_RD)/* Little m */COMPATIBLE_IOCTL(MTIOCTOP)/* Socket level stuff */COMPATIBLE_IOCTL(FIOSETOWN)COMPATIBLE_IOCTL(SIOCSPGRP)COMPATIBLE_IOCTL(FIOGETOWN)COMPATIBLE_IOCTL(SIOCGPGRP)COMPATIBLE_IOCTL(SIOCATMARK)COMPATIBLE_IOCTL(SIOCSIFLINK)COMPATIBLE_IOCTL(SIOCSIFENCAP)COMPATIBLE_IOCTL(SIOCGIFENCAP)COMPATIBLE_IOCTL(SIOCSIFNAME)COMPATIBLE_IOCTL(SIOCSARP)COMPATIBLE_IOCTL(SIOCGARP)COMPATIBLE_IOCTL(SIOCDARP)COMPATIBLE_IOCTL(SIOCSRARP)COMPATIBLE_IOCTL(SIOCGRARP)COMPATIBLE_IOCTL(SIOCDRARP)COMPATIBLE_IOCTL(SIOCADDDLCI)COMPATIBLE_IOCTL(SIOCDELDLCI)COMPATIBLE_IOCTL(SIOCGMIIPHY)COMPATIBLE_IOCTL(SIOCGMIIREG)COMPATIBLE_IOCTL(SIOCSMIIREG)COMPATIBLE_IOCTL(SIOCGIFVLAN)COMPATIBLE_IOCTL(SIOCSIFVLAN)COMPATIBLE_IOCTL(SIOCBRADDBR)COMPATIBLE_IOCTL(SIOCBRDELBR)/* SG stuff */COMPATIBLE_IOCTL(SG_SET_TIMEOUT)COMPATIBLE_IOCTL(SG_GET_TIMEOUT)COMPATIBLE_IOCTL(SG_EMULATED_HOST)ULONG_IOCTL(SG_SET_TRANSFORM)COMPATIBLE_IOCTL(SG_GET_TRANSFORM)COMPATIBLE_IOCTL(SG_SET_RESERVED_SIZE)COMPATIBLE_IOCTL(SG_GET_RESERVED_SIZE)COMPATIBLE_IOCTL(SG_GET_SCSI_ID)COMPATIBLE_IOCTL(SG_SET_FORCE_LOW_DMA)COMPATIBLE_IOCTL(SG_GET_LOW_DMA)COMPATIBLE_IOCTL(SG_SET_FORCE_PACK_ID)COMPATIBLE_IOCTL(SG_GET_PACK_ID)COMPATIBLE_IOCTL(SG_GET_NUM_WAITING)COMPATIBLE_IOCTL(SG_SET_DEBUG)COMPATIBLE_IOCTL(SG_GET_SG_TABLESIZE)COMPATIBLE_IOCTL(SG_GET_COMMAND_Q)COMPATIBLE_IOCTL(SG_SET_COMMAND_Q)COMPATIBLE_IOCTL(SG_GET_VERSION_NUM)COMPATIBLE_IOCTL(SG_NEXT_CMD_LEN)COMPATIBLE_IOCTL(SG_SCSI_RESET)COMPATIBLE_IOCTL(SG_GET_REQUEST_TABLE)COMPATIBLE_IOCTL(SG_SET_KEEP_ORPHAN)COMPATIBLE_IOCTL(SG_GET_KEEP_ORPHAN)/* PPP stuff */COMPATIBLE_IOCTL(PPPIOCGFLAGS)COMPATIBLE_IOCTL(PPPIOCSFLAGS)COMPATIBLE_IOCTL(PPPIOCGASYNCMAP)COMPATIBLE_IOCTL(PPPIOCSASYNCMAP)COMPATIBLE_IOCTL(PPPIOCGUNIT)COMPATIBLE_IOCTL(PPPIOCGRASYNCMAP)COMPATIBLE_IOCTL(PPPIOCSRASYNCMAP)COMPATIBLE_IOCTL(PPPIOCGMRU)COMPATIBLE_IOCTL(PPPIOCSMRU)COMPATIBLE_IOCTL(PPPIOCSMAXCID)COMPATIBLE_IOCTL(PPPIOCGXASYNCMAP)COMPATIBLE_IOCTL(PPPIOCSXASYNCMAP)COMPATIBLE_IOCTL(PPPIOCXFERUNIT)/* PPPIOCSCOMPRESS is translated */COMPATIBLE_IOCTL(PPPIOCGNPMODE)COMPATIBLE_IOCTL(PPPIOCSNPMODE)COMPATIBLE_IOCTL(PPPIOCGDEBUG)COMPATIBLE_IOCTL(PPPIOCSDEBUG)/* PPPIOCSPASS is translated *//* PPPIOCSACTIVE is translated *//* PPPIOCGIDLE is translated */COMPATIBLE_IOCTL(PPPIOCNEWUNIT)COMPATIBLE_IOCTL(PPPIOCATTACH)COMPATIBLE_IOCTL(PPPIOCDETACH)COMPATIBLE_IOCTL(PPPIOCSMRRU)COMPATIBLE_IOCTL(PPPIOCCONNECT)COMPATIBLE_IOCTL(PPPIOCDISCONN)COMPATIBLE_IOCTL(PPPIOCATTCHAN)COMPATIBLE_IOCTL(PPPIOCGCHAN)/* PPPOX */COMPATIBLE_IOCTL(PPPOEIOCSFWD)COMPATIBLE_IOCTL(PPPOEIOCDFWD)/* LP */COMPATIBLE_IOCTL(LPGETSTATUS)/* ppdev */COMPATIBLE_IOCTL(PPCLAIM)COMPATIBLE_IOCTL(PPRELEASE)COMPATIBLE_IOCTL(PPEXCL)COMPATIBLE_IOCTL(PPYIELD)/* CDROM stuff */COMPATIBLE_IOCTL(CDROMPAUSE)COMPATIBLE_IOCTL(CDROMRESUME)COMPATIBLE_IOCTL(CDROMPLAYMSF)COMPATIBLE_IOCTL(CDROMPLAYTRKIND)COMPATIBLE_IOCTL(CDROMREADTOCHDR)COMPATIBLE_IOCTL(CDROMREADTOCENTRY)COMPATIBLE_IOCTL(CDROMSTOP)COMPATIBLE_IOCTL(CDROMSTART)COMPATIBLE_IOCTL(CDROMEJECT)COMPATIBLE_IOCTL(CDROMVOLCTRL)COMPATIBLE_IOCTL(CDROMSUBCHNL)ULONG_IOCTL(CDROMEJECT_SW)COMPATIBLE_IOCTL(CDROMMULTISESSION)COMPATIBLE_IOCTL(CDROM_GET_MCN)COMPATIBLE_IOCTL(CDROMRESET)COMPATIBLE_IOCTL(CDROMVOLREAD)COMPATIBLE_IOCTL(CDROMSEEK)COMPATIBLE_IOCTL(CDROMPLAYBLK)COMPATIBLE_IOCTL(CDROMCLOSETRAY)ULONG_IOCTL(CDROM_SET_OPTIONS)ULONG_IOCTL(CDROM_CLEAR_OPTIONS)ULONG_IOCTL(CDROM_SELECT_SPEED)ULONG_IOCTL(CDROM_SELECT_DISC)ULONG_IOCTL(CDROM_MEDIA_CHANGED)ULONG_IOCTL(CDROM_DRIVE_STATUS)COMPATIBLE_IOCTL(CDROM_DISC_STATUS)COMPATIBLE_IOCTL(CDROM_CHANGER_NSLOTS)ULONG_IOCTL(CDROM_LOCKDOOR)ULONG_IOCTL(CDROM_DEBUG)COMPATIBLE_IOCTL(CDROM_GET_CAPABILITY)/* Ignore cdrom.h about these next 5 ioctls, they absolutely do * not take a struct cdrom_read, instead they take a struct cdrom_msf * which is compatible.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -