xref: /linux/drivers/usb/isp1760/Kconfig (revision 71e2f4dd5a65bd8dbca0b77661e75eea471168f8)
1# SPDX-License-Identifier: GPL-2.0
2
3config USB_ISP1760
4	tristate "NXP ISP 1760/1761 support"
5	depends on USB || USB_GADGET
6	help
7	  Say Y or M here if your system as an ISP1760 USB host controller
8	  or an ISP1761 USB dual-role controller.
9
10	  This driver does not support isochronous transfers or OTG.
11	  This USB controller is usually attached to a non-DMA-Master
12	  capable bus. NXP's eval kit brings this chip on PCI card
13	  where the chip itself is behind a PLB to simulate such
14	  a bus.
15
16	  To compile this driver as a module, choose M here: the
17	  module will be called isp1760.
18
19config USB_ISP1760_HCD
20	bool
21
22config USB_ISP1761_UDC
23	bool
24
25if USB_ISP1760
26
27choice
28	bool "ISP1760 Mode Selection"
29	default USB_ISP1760_DUAL_ROLE if (USB && USB_GADGET)
30	default USB_ISP1760_HOST_ROLE if (USB && !USB_GADGET)
31	default USB_ISP1760_GADGET_ROLE if (!USB && USB_GADGET)
32
33config USB_ISP1760_HOST_ROLE
34	bool "Host only mode"
35	depends on USB=y || USB=USB_ISP1760
36	select USB_ISP1760_HCD
37	help
38	  Select this if you want to use the ISP1760 in host mode only. The
39	  gadget function will be disabled.
40
41config USB_ISP1760_GADGET_ROLE
42	bool "Gadget only mode"
43	depends on USB_GADGET=y || USB_GADGET=USB_ISP1760
44	select USB_ISP1761_UDC
45	help
46	  Select this if you want to use the ISP1760 in peripheral mode only.
47	  The host function will be disabled.
48
49config USB_ISP1760_DUAL_ROLE
50	bool "Dual Role mode"
51	depends on USB=y || USB=USB_ISP1760
52	depends on USB_GADGET=y || USB_GADGET=USB_ISP1760
53	select USB_ISP1760_HCD
54	select USB_ISP1761_UDC
55	help
56	  Select this if you want to use the ISP1760 in both host and
57	  peripheral modes.
58
59endchoice
60
61endif
62