Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
usb
gadget
gadget_chips.h
Go to the documentation of this file.
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 SHOULD eventually work like the ARM mach_is_*() stuff, driven by
7
* some config file that gets updated as new hardware is supported.
8
* (And avoiding all runtime comparisons in typical one-choice configs!)
9
*
10
* NOTE: some of these controller drivers may not be available yet.
11
* Some are available on 2.4 kernels; several are available, but not
12
* yet pushed in the 2.6 mainline tree.
13
*/
14
15
#ifndef __GADGET_CHIPS_H
16
#define __GADGET_CHIPS_H
17
18
#include <
linux/usb/gadget.h
>
19
20
/*
21
* NOTICE: the entries below are alphabetical and should be kept
22
* that way.
23
*
24
* Always be sure to add new entries to the correct position or
25
* accept the bashing later.
26
*
27
* If you have forgotten the alphabetical order let VIM/EMACS
28
* do that for you.
29
*/
30
#define gadget_is_at91(g) (!strcmp("at91_udc", (g)->name))
31
#define gadget_is_goku(g) (!strcmp("goku_udc", (g)->name))
32
#define gadget_is_musbhdrc(g) (!strcmp("musb-hdrc", (g)->name))
33
#define gadget_is_net2280(g) (!strcmp("net2280", (g)->name))
34
#define gadget_is_pxa(g) (!strcmp("pxa25x_udc", (g)->name))
35
#define gadget_is_pxa27x(g) (!strcmp("pxa27x_udc", (g)->name))
36
41
static
inline
bool
gadget_supports_altsettings(
struct
usb_gadget
*gadget)
42
{
43
/* PXA 21x/25x/26x has no altsettings at all */
44
if
(
gadget_is_pxa
(gadget))
45
return
false
;
46
47
/* PXA 27x and 3xx have *broken* altsetting support */
48
if
(
gadget_is_pxa27x
(gadget))
49
return
false
;
50
51
/* Everything else is *presumably* fine ... */
52
return
true
;
53
}
54
55
#endif
/* __GADGET_CHIPS_H */
Generated on Thu Jan 10 2013 14:26:13 for Linux Kernel by
1.8.2