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