Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

hddb_int.h

Go to the documentation of this file.
00001 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00002 * 00003 * type defs for internal data base 00004 * 00005 * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ 00006 00007 #define DATA_VALUE(a) ((a) & ~(-1 << 28)) 00008 #define DATA_FLAG(a) (((a) >> 28) & 0xf) 00009 #define MAKE_DATA(a, b) ((a << 28) | (b)) 00010 00011 #define FLAG_ID 0 00012 #define FLAG_RANGE 1 00013 #define FLAG_MASK 2 00014 #define FLAG_STRING 3 00015 #define FLAG_REGEXP 4 00016 /* 5 - 7 reserved */ 00017 #define FLAG_CONT 8 /* bit mask, _must_ be bit 31 */ 00018 00019 00020 typedef enum hddb_entry_e { 00021 he_other, he_bus_id, he_baseclass_id, he_subclass_id, he_progif_id, 00022 he_vendor_id, he_device_id, he_subvendor_id, he_subdevice_id, he_rev_id, 00023 he_bus_name, he_baseclass_name, he_subclass_name, he_progif_name, 00024 he_vendor_name, he_device_name, he_subvendor_name, he_subdevice_name, 00025 he_rev_name, he_serial, he_driver, he_requires /* 21 */, 00026 00027 /* add new entries _here_! */ 00028 00029 he_nomask, 00030 00031 /* if he_nomask exceeds 31, adjust entry_mask_t & hddb_entry_mask_t */ 00032 00033 he_class_id = he_nomask, he_driver_module_insmod, he_driver_module_modprobe, 00034 he_driver_module_config, he_driver_xfree, he_driver_xfree_config, 00035 he_driver_mouse, he_driver_display, he_driver_any 00036 } hddb_entry_t; 00037 00038 static hddb_entry_t hddb_is_numeric[] = { 00039 he_bus_id, he_baseclass_id, he_subclass_id, he_progif_id, he_vendor_id, 00040 he_device_id, he_subvendor_id, he_subdevice_id, he_rev_id 00041 }; 00042 00043 static char *hddb_entry_strings[] = { 00044 "other", "bus.id", "baseclass.id", "subclass.id", "progif.id", 00045 "vendor.id", "device.id", "subvendor.id", "subdevice.id", "rev.id", 00046 "bus.name", "baseclass.name", "subclass.name", "progif.name", 00047 "vendor.name", "device.name", "subvendor.name", "subdevice.name", 00048 "rev.name", "serial", "driver", "requires", 00049 "class.id", "driver.module.insmod", "driver.module.modprobe", 00050 "driver.module.config", "driver.xfree", "driver.xfree.config", 00051 "driver.mouse", "driver.display", "driver.any" 00052 }; 00053