usb: Make USB_MUSB_PIO_ONLY selected by USB_MUSB_SUNXI
[platform/kernel/u-boot.git] / drivers / usb / musb-new / Kconfig
1 #
2 # MUSB Controller Driver
3 #
4 comment "MUSB Controller Driver"
5
6 config USB_MUSB_HOST
7         bool "MUSB host mode support"
8         depends on DM && OF_CONTROL
9         select SPL_SPRINTF if SPL
10         select TPL_SPRINTF if TPL
11         select USB_HOST
12         help
13           Enables the MUSB USB dual-role controller in host mode.
14
15 config USB_MUSB_GADGET
16         bool "MUSB gadget mode support"
17         depends on USB_GADGET
18         select USB_GADGET_DUALSPEED
19         select SPL_SPRINTF if SPL
20         select TPL_SPRINTF if TPL
21         help
22           Enables the MUSB USB dual-role controller in gadget mode.
23
24 if USB_MUSB_HOST || USB_MUSB_GADGET
25 config USB_MUSB_DA8XX
26         bool "Enable DA8xx MUSB Controller"
27         depends on ARCH_DAVINCI
28         help
29           Say y here to enable support for the dual role high
30           speed USB controller based on the Mentor Graphics
31           silicon IP.
32
33 config USB_MUSB_TI
34         bool "Enable TI OTG USB controller"
35         depends on AM33XX
36         select USB_MUSB_DSPS
37         help
38           Say y here to enable support for the dual role high
39           speed USB controller based on the Mentor Graphics
40           silicon IP.
41
42 config USB_MUSB_OMAP2PLUS
43         tristate "OMAP2430 and onwards"
44         depends on ARCH_OMAP2PLUS
45
46 config USB_MUSB_AM35X
47         bool "AM35x"
48
49 config USB_MUSB_DSPS
50         bool "TI DSPS platforms"
51
52 config USB_MUSB_MT85XX
53         bool "Enable Mediatek MT85XX DRC USB controller"
54         depends on ARCH_MEDIATEK
55         help
56           Say y to enable Mediatek MT85XX USB DRC controller support
57           if it is available on your Mediatek MUSB IP based platform.
58           DMA controllers are ignored. This driver follow musb-new
59           driver and usb gadget framework.
60
61 config USB_MUSB_PIC32
62         bool "Enable Microchip PIC32 DRC USB controller"
63         depends on MACH_PIC32
64         help
65           Say y to enable PIC32 USB DRC controller support
66           if it is available on your Microchip PIC32 platform.
67
68 config USB_MUSB_SUNXI
69         bool "Enable sunxi OTG / DRC USB controller"
70         depends on ARCH_SUNXI
71         select USB_MUSB_PIO_ONLY
72         default y
73         ---help---
74         Say y here to enable support for the sunxi OTG / DRC USB controller
75         used on almost all sunxi boards.
76
77 config USB_MUSB_UX500
78         bool "Enable ST-Ericsson Ux500 USB controller"
79         depends on DM_USB && DM_USB_GADGET && ARCH_U8500
80         default y
81         help
82           Say y to enable support for the MUSB OTG USB controller used in
83           ST-Ericsson Ux500. The driver supports either gadget or host mode
84           based on the selection of CONFIG_USB_MUSB_HOST.
85
86 config USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
87         bool "Disable MUSB bulk split/combine"
88         default y
89         help
90           On TI AM335x devices, MUSB has bulk split/combine feature enabled
91           in the ConfigData register, but the current MUSB driver does not
92           support it yet. Select this option to disable the feature until the
93           driver adds the support.
94
95 endif
96
97 config USB_MUSB_PIO_ONLY
98         bool "Disable DMA (always use PIO)"
99         default y if USB_MUSB_AM35X || USB_MUSB_PIC32 || USB_MUSB_OMAP2PLUS || USB_MUSB_DSPS || USB_MUSB_SUNXI || USB_MUSB_MT85XX || USB_MUSB_UX500
100         help
101           All data is copied between memory and FIFO by the CPU.
102           DMA controllers are ignored.
103
104 config USB_MUSB_FIXED_CONFIGDATA
105         bool "Hardcode MUSB CONFIGDATA register"
106         depends on USB_MUSB_SUNXI
107         default n if MACH_SUN4I || MACH_SUN5I || MACH_SUN6I || MACH_SUN7I || MACH_SUN8I_A23
108         default y
109         help
110           Newer Allwinner SoCs do not implement the MUSB_CONFIGDATA register,
111           so it always reads 0. Select this option to override this and
112           return a hardcoded value instead.