mirror of
https://github.com/ipxe/ipxe.git
synced 2026-05-05 12:26:37 +02:00
[usb] Add USB_ROM() and USB_ID() macros
Add USB_ROM() and USB_ID() macros following the pattern for PCI_ROM() and PCI_ID(), to allow for the possibility of including USB network devices within the "all-drivers" build of iPXE. Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
parent
481e043116
commit
4d6c8ab443
@ -491,11 +491,7 @@ static void acm_remove ( struct usb_function *func ) {
|
||||
|
||||
/** USB CDC-ACM device IDs */
|
||||
static struct usb_device_id cdc_acm_ids[] = {
|
||||
{
|
||||
.name = "cdc-acm",
|
||||
.vendor = USB_ANY_ID,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ROM ( 0xffff, 0xffff, "cdc-acm", "USB CDC-ACM NIC", 0 ),
|
||||
};
|
||||
|
||||
/** USB CDC-ACM driver */
|
||||
@ -511,11 +507,7 @@ struct usb_driver cdc_acm_driver __usb_driver = {
|
||||
|
||||
/** USB RF-RNDIS device IDs */
|
||||
static struct usb_device_id rf_rndis_ids[] = {
|
||||
{
|
||||
.name = "rf-rndis",
|
||||
.vendor = USB_ANY_ID,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ROM ( 0xffff, 0xffff, "rf-rndis", "USB RNDIS NIC", 0 ),
|
||||
};
|
||||
|
||||
/** USB RF-RNDIS driver */
|
||||
|
||||
@ -779,36 +779,12 @@ static void axge_remove ( struct usb_function *func ) {
|
||||
|
||||
/** AXGE device IDs */
|
||||
static struct usb_device_id axge_ids[] = {
|
||||
{
|
||||
.name = "ax88179",
|
||||
.vendor = 0x0b95,
|
||||
.product = 0x1790,
|
||||
},
|
||||
{
|
||||
.name = "ax88178a",
|
||||
.vendor = 0x0b95,
|
||||
.product = 0x178a,
|
||||
},
|
||||
{
|
||||
.name = "dub1312",
|
||||
.vendor = 0x2001,
|
||||
.product = 0x4a00,
|
||||
},
|
||||
{
|
||||
.name = "axge-sitecom",
|
||||
.vendor = 0x0df6,
|
||||
.product = 0x0072,
|
||||
},
|
||||
{
|
||||
.name = "axge-samsung",
|
||||
.vendor = 0x04e8,
|
||||
.product = 0xa100,
|
||||
},
|
||||
{
|
||||
.name = "onelinkdock",
|
||||
.vendor = 0x17ef,
|
||||
.product = 0x304b,
|
||||
},
|
||||
USB_ROM ( 0x0b95, 0x1790, "ax88179", "AX88179", 0 ),
|
||||
USB_ROM ( 0x0b95, 0x178a, "ax88178a", "AX88178A", 0 ),
|
||||
USB_ROM ( 0x2001, 0x4a00, "dub1312", "DUB-1312", 0 ),
|
||||
USB_ROM ( 0x0df6, 0x0072, "axge-sitecom", "AX88179 (Sitecom)", 0 ),
|
||||
USB_ROM ( 0x04e8, 0xa100, "axge-samsung", "AX88179 (Samsung)", 0 ),
|
||||
USB_ROM ( 0x17ef, 0x304b, "onelinkdock", "ThinkPad OneLink dock", 0 ),
|
||||
};
|
||||
|
||||
/** AXGE driver */
|
||||
|
||||
@ -591,76 +591,20 @@ static void dm96xx_remove ( struct usb_function *func ) {
|
||||
|
||||
/** DM96xx device IDs */
|
||||
static struct usb_device_id dm96xx_ids[] = {
|
||||
{
|
||||
.name = "dm9601-corega",
|
||||
.vendor = 0x07aa,
|
||||
.product = 0x9601,
|
||||
},
|
||||
{
|
||||
.name = "dm9601",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x9601,
|
||||
},
|
||||
{
|
||||
.name = "zt6688",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x6688,
|
||||
},
|
||||
{
|
||||
.name = "st268",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x0268,
|
||||
},
|
||||
{
|
||||
.name = "adm8515",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x8515,
|
||||
},
|
||||
{
|
||||
.name = "dm9601-hirose",
|
||||
.vendor = 0x0a47,
|
||||
.product = 0x9601,
|
||||
},
|
||||
{
|
||||
.name = "dm9601-8101",
|
||||
.vendor = 0x0fe6,
|
||||
.product = 0x8101,
|
||||
},
|
||||
{
|
||||
.name = "dm9601-9700",
|
||||
.vendor = 0x0fe6,
|
||||
.product = 0x9700,
|
||||
},
|
||||
{
|
||||
.name = "dm9000e",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x9000,
|
||||
},
|
||||
{
|
||||
.name = "dm9620",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x9620,
|
||||
},
|
||||
{
|
||||
.name = "dm9621A",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x9621,
|
||||
},
|
||||
{
|
||||
.name = "dm9622",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x9622,
|
||||
},
|
||||
{
|
||||
.name = "dm962Oa",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x0269,
|
||||
},
|
||||
{
|
||||
.name = "dm9621a",
|
||||
.vendor = 0x0a46,
|
||||
.product = 0x1269,
|
||||
},
|
||||
USB_ROM ( 0x07aa, 0x9601, "dm9601-corega", "Corega FEther", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x9601, "dm9601", "DM9601", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x6688, "zt6688", "ZT6688", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x0268, "st268", "ST268", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x8515, "adm8515", "ADMtek ADM8515", 0 ),
|
||||
USB_ROM ( 0x0a47, 0x9601, "dm9601-hirose", "DM9601 (Hirose)", 0 ),
|
||||
USB_ROM ( 0x0fe6, 0x8101, "dm9601-8101", "DM9601 (ICS8101)", 0 ),
|
||||
USB_ROM ( 0x0fe6, 0x9700, "dm9601-9700", "DM9601 (ICS9700)", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x9000, "dm9000e", "DM9000E", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x9620, "dm9620", "DM9620", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x9621, "dm9621A", "DM9621A", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x9622, "dm9622", "DM9622", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x0269, "dm962Oa", "DM9620A", 0 ),
|
||||
USB_ROM ( 0x0a46, 0x1269, "dm9621a", "DM9621A", 0 ),
|
||||
};
|
||||
|
||||
/** Davicom DM96xx driver */
|
||||
|
||||
@ -519,11 +519,7 @@ static void ecm_remove ( struct usb_function *func ) {
|
||||
|
||||
/** CDC-ECM device IDs */
|
||||
static struct usb_device_id ecm_ids[] = {
|
||||
{
|
||||
.name = "cdc-ecm",
|
||||
.vendor = USB_ANY_ID,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ROM ( 0xffff, 0xffff, "cdc-ecm", "USB CDC-ECM NIC", 0 ),
|
||||
};
|
||||
|
||||
/** CDC-ECM driver */
|
||||
|
||||
@ -1172,11 +1172,7 @@ static void imux_remove ( struct usb_function *func ) {
|
||||
|
||||
/** USB multiplexer device IDs */
|
||||
static struct usb_device_id imux_ids[] = {
|
||||
{
|
||||
.name = "imux",
|
||||
.vendor = 0x05ac,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ID ( 0x05ac, 0xffff, "imux", "iPhone (multiplexer)", 0 ),
|
||||
};
|
||||
|
||||
/** USB multiplexer driver */
|
||||
@ -2226,11 +2222,7 @@ static void iphone_remove ( struct usb_function *func ) {
|
||||
|
||||
/** iPhone device IDs */
|
||||
static struct usb_device_id iphone_ids[] = {
|
||||
{
|
||||
.name = "iphone",
|
||||
.vendor = 0x05ac,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ROM ( 0x05ac, 0xffff, "iphone", "iPhone", 0 ),
|
||||
};
|
||||
|
||||
/** iPhone driver */
|
||||
|
||||
@ -387,16 +387,8 @@ static void lan78xx_remove ( struct usb_function *func ) {
|
||||
|
||||
/** LAN78xx device IDs */
|
||||
static struct usb_device_id lan78xx_ids[] = {
|
||||
{
|
||||
.name = "lan7800",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x7800,
|
||||
},
|
||||
{
|
||||
.name = "lan7850",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x7850,
|
||||
},
|
||||
USB_ROM ( 0x0424, 0x7800, "lan7800", "SMSC LAN7800", 0 ),
|
||||
USB_ROM ( 0x0424, 0x7850, "lan7850", "SMSC LAN7850", 0 ),
|
||||
};
|
||||
|
||||
/** LAN78xx driver */
|
||||
|
||||
@ -664,11 +664,7 @@ static void ncm_remove ( struct usb_function *func ) {
|
||||
|
||||
/** CDC-NCM device IDs */
|
||||
static struct usb_device_id ncm_ids[] = {
|
||||
{
|
||||
.name = "cdc-ncm",
|
||||
.vendor = USB_ANY_ID,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ROM ( 0xffff, 0xffff, "cdc-ncm", "USB CDC-NCM NIC", 0 ),
|
||||
};
|
||||
|
||||
/** CDC-NCM driver */
|
||||
|
||||
@ -555,16 +555,8 @@ static void smsc75xx_remove ( struct usb_function *func ) {
|
||||
|
||||
/** SMSC75xx device IDs */
|
||||
static struct usb_device_id smsc75xx_ids[] = {
|
||||
{
|
||||
.name = "smsc7500",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x7500,
|
||||
},
|
||||
{
|
||||
.name = "smsc7505",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x7505,
|
||||
},
|
||||
USB_ROM ( 0x0424, 0x7500, "smsc7500", "SMSC LAN7500", 0 ),
|
||||
USB_ROM ( 0x0424, 0x7505, "smsc7505", "SMSC LAN7505", 0 ),
|
||||
};
|
||||
|
||||
/** SMSC LAN75xx driver */
|
||||
|
||||
@ -644,96 +644,24 @@ static void smsc95xx_remove ( struct usb_function *func ) {
|
||||
|
||||
/** SMSC95xx device IDs */
|
||||
static struct usb_device_id smsc95xx_ids[] = {
|
||||
{
|
||||
.name = "smsc9500",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9500,
|
||||
},
|
||||
{
|
||||
.name = "smsc9505",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9505,
|
||||
},
|
||||
{
|
||||
.name = "smsc9500a",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9e00,
|
||||
},
|
||||
{
|
||||
.name = "smsc9505a",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9e01,
|
||||
},
|
||||
{
|
||||
.name = "smsc9514",
|
||||
.vendor = 0x0424,
|
||||
.product = 0xec00,
|
||||
},
|
||||
{
|
||||
.name = "smsc9500-s",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9900,
|
||||
},
|
||||
{
|
||||
.name = "smsc9505-s",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9901,
|
||||
},
|
||||
{
|
||||
.name = "smsc9500a-s",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9902,
|
||||
},
|
||||
{
|
||||
.name = "smsc9505a-s",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9903,
|
||||
},
|
||||
{
|
||||
.name = "smsc9514-s",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9904,
|
||||
},
|
||||
{
|
||||
.name = "smsc9500a-h",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9905,
|
||||
},
|
||||
{
|
||||
.name = "smsc9505a-h",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9906,
|
||||
},
|
||||
{
|
||||
.name = "smsc9500-2",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9907,
|
||||
},
|
||||
{
|
||||
.name = "smsc9500a-2",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9908,
|
||||
},
|
||||
{
|
||||
.name = "smsc9514-2",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9909,
|
||||
},
|
||||
{
|
||||
.name = "smsc9530",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9530,
|
||||
},
|
||||
{
|
||||
.name = "smsc9730",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9730,
|
||||
},
|
||||
{
|
||||
.name = "smsc89530",
|
||||
.vendor = 0x0424,
|
||||
.product = 0x9e08,
|
||||
},
|
||||
USB_ROM ( 0x0424, 0x9500, "smsc9500", "SMSC LAN9500", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9505, "smsc9505", "SMSC LAN9505", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9e00, "smsc9500a", "SMSC LAN9500A", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9e01, "smsc9505a", "SMSC LAN9505A", 0 ),
|
||||
USB_ROM ( 0x0424, 0xec00, "smsc9514", "SMSC LAN9512/9514", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9900, "smsc9500-s", "SMSC LAN9500-S", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9901, "smsc9505-s", "SMSC LAN9505-S", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9902, "smsc9500a-s", "SMSC LAN9500A-S", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9903, "smsc9505a-s", "SMSC LAN9505A-S", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9904, "smsc9514-s", "SMSC LAN9512/9514-S", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9905, "smsc9500a-h", "SMSC LAN9500A-H", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9906, "smsc9505a-h", "SMSC LAN9505A-H", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9907, "smsc9500-2", "SMSC LAN9500-2", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9908, "smsc9500a-2", "SMSC LAN9500A-2", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9909, "smsc9514-2", "SMSC LAN9512/9514-2", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9530, "smsc9530", "SMSC LAN9530", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9730, "smsc9730", "SMSC LAN9730", 0 ),
|
||||
USB_ROM ( 0x0424, 0x9e08, "smsc89530", "SMSC LAN89530", 0 ),
|
||||
};
|
||||
|
||||
/** SMSC LAN95xx driver */
|
||||
|
||||
@ -895,11 +895,7 @@ static void usbblk_remove ( struct usb_function *func ) {
|
||||
|
||||
/** Mass storage class device IDs */
|
||||
static struct usb_device_id usbblk_ids[] = {
|
||||
{
|
||||
.name = "usbblk",
|
||||
.vendor = USB_ANY_ID,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ID ( 0xffff, 0xffff, "usbblk", "USB block device", 0 ),
|
||||
};
|
||||
|
||||
/** Mass storage driver */
|
||||
|
||||
@ -529,17 +529,9 @@ static void hub_remove ( struct usb_function *func ) {
|
||||
|
||||
/** USB hub device IDs */
|
||||
static struct usb_device_id hub_ids[] = {
|
||||
{
|
||||
.name = "avocent-hub",
|
||||
.vendor = 0x0624,
|
||||
.product = 0x0248,
|
||||
.driver_data = USB_HUB_SLOW_START,
|
||||
},
|
||||
{
|
||||
.name = "hub",
|
||||
.vendor = USB_ANY_ID,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ID ( 0x0624, 0x0248, "avocent-hub", "Avocent USB hub",
|
||||
USB_HUB_SLOW_START ),
|
||||
USB_ID ( 0xffff, 0xffff, "hub", "USB hub", 0 ),
|
||||
};
|
||||
|
||||
/** USB hub driver */
|
||||
|
||||
@ -518,11 +518,7 @@ static void usbkbd_remove ( struct usb_function *func ) {
|
||||
|
||||
/** USB keyboard device IDs */
|
||||
static struct usb_device_id usbkbd_ids[] = {
|
||||
{
|
||||
.name = "kbd",
|
||||
.vendor = USB_ANY_ID,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ID ( 0xffff, 0xffff, "kbd", "USB keyboard", 0 ),
|
||||
};
|
||||
|
||||
/** USB keyboard driver */
|
||||
|
||||
@ -1369,6 +1369,18 @@ struct usb_device_id {
|
||||
unsigned long driver_data;
|
||||
};
|
||||
|
||||
/* Define a USB device ID */
|
||||
#define USB_ID( _vendor, _product, _name, _description, _data ) { \
|
||||
.vendor = _vendor, \
|
||||
.product = _product, \
|
||||
.name = _name, \
|
||||
.driver_data = _data \
|
||||
}
|
||||
|
||||
/* Define a USB device ID with a corresponding build rule */
|
||||
#define USB_ROM( _vendor, _product, _name, _description, _data ) \
|
||||
USB_ID ( _vendor, _product, _name, _description, _data )
|
||||
|
||||
/** Match-anything ID */
|
||||
#define USB_ANY_ID 0xffff
|
||||
|
||||
|
||||
@ -1349,11 +1349,7 @@ static void efi_usb_remove ( struct usb_function *func ) {
|
||||
|
||||
/** USB I/O protocol device IDs */
|
||||
static struct usb_device_id efi_usb_ids[] = {
|
||||
{
|
||||
.name = "usbio",
|
||||
.vendor = USB_ANY_ID,
|
||||
.product = USB_ANY_ID,
|
||||
},
|
||||
USB_ID ( 0xffff, 0xffff, "usbio", "USB passthrough", 0 ),
|
||||
};
|
||||
|
||||
/** USB I/O protocol driver */
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user