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! */
709 * @feature: the bit number of the feature (0 - 65535)
721 __u32 device; /* Device ID or IPACK_ANY_ID */ member
729 * struct mei_cl_device_id - MEI client device identifier
735 * identifies mei client device by uuid and name
749 * struct rio_device_id - RIO device identifier
750 * @did: RapidIO device ID
752 * @asm_did: RapidIO assembly device ID
755 * Identifies a RapidIO device based on both the device/vendor IDs and
756 * the assembly device/vendor IDs.
764 __u16 device; member
775 * struct fsl_mc_device_id - MC object device identifier
779 * Type of entries in the "device Id" table for MC object devices supported by
780 * a MC object device driver. The last entry of the table has vendor set to 0x0
788 * struct tb_service_id - Thunderbolt service identifiers
794 * @driver_data: Driver specific data
796 * Thunderbolt XDomain services are exposed as devices where each device
814 /* USB Type-C Alternate Modes */
819 * struct typec_device_id - USB Type-C alternate mode identifiers
822 * @driver_data: Driver specific data
831 * struct tee_client_device_id - tee based device identifier
832 * @uuid: For TEE based client devices we use the device uuid as
844 * struct wmi_device_id - WMI device identifier
845 * @guid_string: 36 char string of the form fa50ff2b-f2e8-45de-83fa-65417f2f49ba
846 * @context: pointer to driver specific data
859 * struct mhi_device_id - MHI device identification
895 * DFL (Device Feature List)
897 * DFL defines a linked list of feature headers within the device MMIO space to
903 * devices) for specific dfl drivers.
907 * struct dfl_device_id - dfl device identifier
908 * @type: DFL FIU type of the device. See enum dfl_id_type.
910 * @driver_data: driver specific data.
923 * struct ishtp_device_id - ISHTP device identifier
924 * @guid: GUID of the device.
925 * @driver_data: pointer to driver specific data
939 * struct cdx_device_id - CDX device identifier
941 * @device: Device ID
943 * @subdevice: Subsystem device ID (or CDX_ANY_ID)
944 * @class: Device class
946 * as vendor/device is normally sufficient.
947 * @class_mask: Limit which sub-fields of the class field are compared.
948 * @override_only: Match only when dev->driver_override is this driver.
950 * Type of entries in the "device Id" table for CDX devices supported by
951 * a CDX device driver.
955 __u16 device; member
968 * struct coreboot_device_id - Identifies a coreboot table entry
970 * @driver_data: driver specific data