Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame^] | 1 | /* |
| 2 | * USB device controllers have lots of quirks. Use these macros in |
| 3 | * gadget drivers or other code that needs to deal with them, and which |
| 4 | * autoconfigures instead of using early binding to the hardware. |
| 5 | * |
| 6 | * This could eventually work like the ARM mach_is_*() stuff, driven by |
| 7 | * some config file that gets updated as new hardware is supported. |
| 8 | * |
| 9 | * NOTE: some of these controller drivers may not be available yet. |
| 10 | */ |
| 11 | #ifdef CONFIG_USB_GADGET_NET2280 |
| 12 | #define gadget_is_net2280(g) !strcmp("net2280", (g)->name) |
| 13 | #else |
| 14 | #define gadget_is_net2280(g) 0 |
| 15 | #endif |
| 16 | |
| 17 | #ifdef CONFIG_USB_GADGET_DUMMY_HCD |
| 18 | #define gadget_is_dummy(g) !strcmp("dummy_udc", (g)->name) |
| 19 | #else |
| 20 | #define gadget_is_dummy(g) 0 |
| 21 | #endif |
| 22 | |
| 23 | #ifdef CONFIG_USB_GADGET_PXA2XX |
| 24 | #define gadget_is_pxa(g) !strcmp("pxa2xx_udc", (g)->name) |
| 25 | #else |
| 26 | #define gadget_is_pxa(g) 0 |
| 27 | #endif |
| 28 | |
| 29 | #ifdef CONFIG_USB_GADGET_GOKU |
| 30 | #define gadget_is_goku(g) !strcmp("goku_udc", (g)->name) |
| 31 | #else |
| 32 | #define gadget_is_goku(g) 0 |
| 33 | #endif |
| 34 | |
| 35 | #ifdef CONFIG_USB_GADGET_SUPERH |
| 36 | #define gadget_is_sh(g) !strcmp("sh_udc", (g)->name) |
| 37 | #else |
| 38 | #define gadget_is_sh(g) 0 |
| 39 | #endif |
| 40 | |
| 41 | #ifdef CONFIG_USB_GADGET_SA1100 |
| 42 | #define gadget_is_sa1100(g) !strcmp("sa1100_udc", (g)->name) |
| 43 | #else |
| 44 | #define gadget_is_sa1100(g) 0 |
| 45 | #endif |
| 46 | |
| 47 | #ifdef CONFIG_USB_GADGET_LH7A40X |
| 48 | #define gadget_is_lh7a40x(g) !strcmp("lh7a40x_udc", (g)->name) |
| 49 | #else |
| 50 | #define gadget_is_lh7a40x(g) 0 |
| 51 | #endif |
| 52 | |
| 53 | #ifdef CONFIG_USB_GADGET_MQ11XX |
| 54 | #define gadget_is_mq11xx(g) !strcmp("mq11xx_udc", (g)->name) |
| 55 | #else |
| 56 | #define gadget_is_mq11xx(g) 0 |
| 57 | #endif |
| 58 | |
| 59 | #ifdef CONFIG_USB_GADGET_OMAP |
| 60 | #define gadget_is_omap(g) !strcmp("omap_udc", (g)->name) |
| 61 | #else |
| 62 | #define gadget_is_omap(g) 0 |
| 63 | #endif |
| 64 | |
| 65 | #ifdef CONFIG_USB_GADGET_N9604 |
| 66 | #define gadget_is_n9604(g) !strcmp("n9604_udc", (g)->name) |
| 67 | #else |
| 68 | #define gadget_is_n9604(g) 0 |
| 69 | #endif |
| 70 | |
| 71 | #ifdef CONFIG_USB_GADGET_PXA27X |
| 72 | #define gadget_is_pxa27x(g) !strcmp("pxa27x_udc", (g)->name) |
| 73 | #else |
| 74 | #define gadget_is_pxa27x(g) 0 |
| 75 | #endif |
| 76 | |
| 77 | #ifdef CONFIG_USB_GADGET_S3C2410 |
| 78 | #define gadget_is_s3c2410(g) !strcmp("s3c2410_udc", (g)->name) |
| 79 | #else |
| 80 | #define gadget_is_s3c2410(g) 0 |
| 81 | #endif |
| 82 | |
| 83 | #ifdef CONFIG_USB_GADGET_AT91 |
| 84 | #define gadget_is_at91(g) !strcmp("at91_udc", (g)->name) |
| 85 | #else |
| 86 | #define gadget_is_at91(g) 0 |
| 87 | #endif |
| 88 | |
| 89 | // CONFIG_USB_GADGET_SX2 |
| 90 | // CONFIG_USB_GADGET_AU1X00 |
| 91 | // ... |
| 92 | |