0001 # SPDX-License-Identifier: GPL-2.0
0002
0003 config USB_ISP1760
0004 tristate "NXP ISP 1760/1761/1763 support"
0005 depends on USB || USB_GADGET
0006 select REGMAP_MMIO
0007 help
0008 Say Y or M here if your system as an ISP1760/1763 USB host controller
0009 or an ISP1761 USB dual-role controller.
0010
0011 This driver does not support isochronous transfers or OTG.
0012 This USB controller is usually attached to a non-DMA-Master
0013 capable bus. NXP's eval kit brings this chip on PCI card
0014 where the chip itself is behind a PLB to simulate such
0015 a bus.
0016
0017 To compile this driver as a module, choose M here: the
0018 module will be called isp1760.
0019
0020 config USB_ISP1760_HCD
0021 bool
0022
0023 config USB_ISP1761_UDC
0024 bool
0025
0026 if USB_ISP1760
0027
0028 choice
0029 bool "ISP1760 Mode Selection"
0030 default USB_ISP1760_DUAL_ROLE if (USB && USB_GADGET)
0031 default USB_ISP1760_HOST_ROLE if (USB && !USB_GADGET)
0032 default USB_ISP1760_GADGET_ROLE if (!USB && USB_GADGET)
0033
0034 config USB_ISP1760_HOST_ROLE
0035 bool "Host only mode"
0036 depends on USB=y || USB=USB_ISP1760
0037 select USB_ISP1760_HCD
0038 help
0039 Select this if you want to use the ISP1760 in host mode only. The
0040 gadget function will be disabled.
0041
0042 config USB_ISP1760_GADGET_ROLE
0043 bool "Gadget only mode"
0044 depends on USB_GADGET=y || USB_GADGET=USB_ISP1760
0045 select USB_ISP1761_UDC
0046 help
0047 Select this if you want to use the ISP1760 in peripheral mode only.
0048 The host function will be disabled.
0049
0050 config USB_ISP1760_DUAL_ROLE
0051 bool "Dual Role mode"
0052 depends on USB=y || USB=USB_ISP1760
0053 depends on USB_GADGET=y || USB_GADGET=USB_ISP1760
0054 select USB_ISP1760_HCD
0055 select USB_ISP1761_UDC
0056 help
0057 Select this if you want to use the ISP1760 in both host and
0058 peripheral modes.
0059
0060 endchoice
0061
0062 endif