linux/include/linux/miscdevice.h
<<
>>
Prefs
   1#ifndef _LINUX_MISCDEVICE_H
   2#define _LINUX_MISCDEVICE_H
   3#include <linux/major.h>
   4#include <linux/list.h>
   5#include <linux/types.h>
   6
   7/*
   8 *      These allocations are managed by device@lanana.org. If you use an
   9 *      entry that is not in assigned your entry may well be moved and
  10 *      reassigned, or set dynamic if a fixed value is not justified.
  11 */
  12
  13#define PSMOUSE_MINOR           1
  14#define MS_BUSMOUSE_MINOR       2
  15#define ATIXL_BUSMOUSE_MINOR    3
  16/*#define AMIGAMOUSE_MINOR      4       FIXME OBSOLETE */
  17#define ATARIMOUSE_MINOR        5
  18#define SUN_MOUSE_MINOR         6
  19#define APOLLO_MOUSE_MINOR      7
  20#define PC110PAD_MINOR          9
  21/*#define ADB_MOUSE_MINOR       10      FIXME OBSOLETE */
  22#define WATCHDOG_MINOR          130     /* Watchdog timer     */
  23#define TEMP_MINOR              131     /* Temperature Sensor */
  24#define RTC_MINOR               135
  25#define EFI_RTC_MINOR           136     /* EFI Time services */
  26#define SUN_OPENPROM_MINOR      139
  27#define DMAPI_MINOR             140     /* DMAPI */
  28#define NVRAM_MINOR             144
  29#define SGI_MMTIMER             153
  30#define STORE_QUEUE_MINOR       155
  31#define I2O_MINOR               166
  32#define MICROCODE_MINOR         184
  33#define VFIO_MINOR              196
  34#define TUN_MINOR               200
  35#define CUSE_MINOR              203
  36#define MWAVE_MINOR             219     /* ACP/Mwave Modem */
  37#define MPT_MINOR               220
  38#define MPT2SAS_MINOR           221
  39#define MPT3SAS_MINOR           222
  40#define UINPUT_MINOR            223
  41#define MISC_MCELOG_MINOR       227
  42#define HPET_MINOR              228
  43#define FUSE_MINOR              229
  44#define KVM_MINOR               232
  45#define BTRFS_MINOR             234
  46#define AUTOFS_MINOR            235
  47#define MAPPER_CTRL_MINOR       236
  48#define LOOP_CTRL_MINOR         237
  49#define VHOST_NET_MINOR         238
  50#define UHID_MINOR              239
  51#define MISC_DYNAMIC_MINOR      255
  52
  53struct device;
  54
  55struct miscdevice  {
  56        int minor;
  57        const char *name;
  58        const struct file_operations *fops;
  59        struct list_head list;
  60        struct device *parent;
  61        struct device *this_device;
  62        const char *nodename;
  63        umode_t mode;
  64};
  65
  66extern int misc_register(struct miscdevice * misc);
  67extern int misc_deregister(struct miscdevice *misc);
  68
  69#define MODULE_ALIAS_MISCDEV(minor)                             \
  70        MODULE_ALIAS("char-major-" __stringify(MISC_MAJOR)      \
  71        "-" __stringify(minor))
  72#endif
  73