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