00001
00002
00003
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
00017 #define FLAG_CONT 8
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 ,
00026
00027 he_detail_ccw_data_cu_model,
00028
00029
00030 he_nomask,
00031
00032
00033
00034 he_class_id = he_nomask, he_driver_module_insmod, he_driver_module_modprobe,
00035 he_driver_module_config, he_driver_xfree, he_driver_xfree_config,
00036 he_driver_mouse, he_driver_display, he_driver_any
00037 } hddb_entry_t;
00038
00039 static hddb_entry_t hddb_is_numeric[] = {
00040 he_bus_id, he_baseclass_id, he_subclass_id, he_progif_id, he_vendor_id,
00041 he_device_id, he_subvendor_id, he_subdevice_id, he_rev_id, he_detail_ccw_data_cu_model
00042 };
00043
00044 static char *hddb_entry_strings[] = {
00045 "other", "bus.id", "baseclass.id", "subclass.id", "progif.id",
00046 "vendor.id", "device.id", "subvendor.id", "subdevice.id", "rev.id",
00047 "bus.name", "baseclass.name", "subclass.name", "progif.name",
00048 "vendor.name", "device.name", "subvendor.name", "subdevice.name",
00049 "rev.name", "serial", "driver", "requires",
00050 "detail.ccw.data.cu_model",
00051 "class.id", "driver.module.insmod", "driver.module.modprobe",
00052 "driver.module.config", "driver.xfree", "driver.xfree.config",
00053 "driver.mouse", "driver.display", "driver.any"
00054 };
00055