Lines Matching +full:device +full:- +full:specific
1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Device tables which are exported to userspace via
25 * struct pci_device_id - PCI device ID structure
27 * @device: Device ID to match (or PCI_ANY_ID)
29 * @subdevice: Subsystem device ID to match (or PCI_ANY_ID)
30 * @class: Device class, subclass, and "interface" to match.
34 * as vendor/device is normally sufficient.
35 * @class_mask: Limit which sub-fields of the class field are compared.
40 * into a static list of equivalent device types,
42 * @override_only: Match only when dev->driver_override is this driver.
45 __u32 vendor, device; /* Vendor and device ID or PCI_ANY_ID*/ member
47 __u32 class, class_mask; /* (class,subclass,prog-if) triplet */
69 * Device table entry for "new style" table-driven USB drivers.
75 * to that match: device quirks, etc.
77 * Terminate the driver's table with an all-zeroes entry.
82 * struct usb_device_id - identifies USB devices for probing and hotplugging
88 * @idVendor: USB vendor ID for a device; numbers are assigned
90 * @idProduct: Vendor-assigned product ID.
91 * @bcdDevice_lo: Low end of range of vendor-assigned product version numbers.
93 * a range consisting of a single device.
96 * @bDeviceClass: Class of device; numbers are assigned
98 * or be vendor-specific. Device classes specify behavior of all
99 * the interfaces on a device.
100 * @bDeviceSubClass: Subclass of device; associated with bDeviceClass.
101 * @bDeviceProtocol: Protocol of device; associated with bDeviceClass.
104 * or be vendor-specific. Interface classes specify behavior only
109 * fixed interface numbers to differentiate between vendor-specific
113 * device flags.
115 * In most cases, drivers will create a table of device IDs by using
123 * one or more specific products, or will identify a class of products
124 * which have agreed to behave the same. You should put the more specific
126 * record quirks of specific products.
132 /* Used for product specific matches; range is inclusive */
138 /* Used for device class matches */
148 /* Used for vendor-specific interface matches */
186 __u16 dev_type; /* device type */
188 __u8 dev_model; /* device model */
201 __u8 dev_type; /* device type */
225 * ACPI_DEVICE_CLASS - macro used to describe an ACPI device with
226 * the PCI-defined class-code information
228 * @_cls : the class, subclass, prog-if triple for this device
229 * @_msk : the class mask for this device
232 * specific PCI class. The .id and .driver_data fields will be left
280 * Struct used for matching a device
305 /* for real multi-function devices */
308 /* for pseudo multi-function devices */
416 __u16 device; /* Device ID or SDIO_ANY_ID */ member
434 /* Broadcom's specific AMBA core, see drivers/bcma/ */
450 __u32 device; member
456 * For Hyper-V devices we use the device guid as the id.
578 DMI_OEM_STRING, /* special case - will not be in dmi_ident */
627 * struct mdio_device_id - identifies PHY devices on an MDIO/MII bus
640 __u32 id; /* Device ID or ZORRO_WILDCARD */
656 * struct amba_id - identifies a device on an AMBA bus
657 * @id: The significant bits if the hardware device ID
659 * matching. A driver binds to a device when ((hardware device ID) & mask)
670 * struct mips_cdmm_device_id - identifies devices in MIPS CDMM bus
671 * @type: Device type identifier.
678 * Match x86 CPUs for CPU specific drivers.
693 /* Solely for kernel-internal use: DO NOT EXPORT to userspace! */
707 * @feature: the bit number of the feature (0 - 65535)
719 __u32 device; /* Device ID or IPACK_ANY_ID */ member
727 * struct mei_cl_device_id - MEI client device identifier
733 * identifies mei client device by uuid and name
747 * struct rio_device_id - RIO device identifier
748 * @did: RapidIO device ID
750 * @asm_did: RapidIO assembly device ID
753 * Identifies a RapidIO device based on both the device/vendor IDs and
754 * the assembly device/vendor IDs.
762 __u16 device; member
773 * struct fsl_mc_device_id - MC object device identifier
777 * Type of entries in the "device Id" table for MC object devices supported by
778 * a MC object device driver. The last entry of the table has vendor set to 0x0
786 * struct tb_service_id - Thunderbolt service identifiers
792 * @driver_data: Driver specific data
794 * Thunderbolt XDomain services are exposed as devices where each device
812 /* USB Type-C Alternate Modes */
817 * struct typec_device_id - USB Type-C alternate mode identifiers
820 * @driver_data: Driver specific data
829 * struct tee_client_device_id - tee based device identifier
830 * @uuid: For TEE based client devices we use the device uuid as
842 * struct wmi_device_id - WMI device identifier
843 * @guid_string: 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba
844 * @context: pointer to driver specific data
857 * struct mhi_device_id - MHI device identification
893 * DFL (Device Feature List)
895 * DFL defines a linked list of feature headers within the device MMIO space to
901 * devices) for specific dfl drivers.
905 * struct dfl_device_id - dfl device identifier
906 * @type: DFL FIU type of the device. See enum dfl_id_type.
908 * @driver_data: driver specific data.
921 * struct ishtp_device_id - ISHTP device identifier
922 * @guid: GUID of the device.
923 * @driver_data: pointer to driver specific data
937 * struct cdx_device_id - CDX device identifier
939 * @device: Device ID
941 * @subdevice: Subsystem device ID (or CDX_ANY_ID)
942 * @class: Device class
944 * as vendor/device is normally sufficient.
945 * @class_mask: Limit which sub-fields of the class field are compared.
946 * @override_only: Match only when dev->driver_override is this driver.
948 * Type of entries in the "device Id" table for CDX devices supported by
949 * a CDX device driver.
953 __u16 device; member
966 * struct coreboot_device_id - Identifies a coreboot table entry
968 * @driver_data: driver specific data