Add support for the usb isp1760 host controller family, which
for example is present in MPS3 FPGA board from Arm (isp1763).

First we move some helper functions and defines to a more
common place to be shared by several urb users. (patch 1/3)

Then add the driver itself, is a ported version of the kernel
actual driver, which I am also the maintainer. (patch 2/3)

And last, enable it for the corstone1000 platform that uses
that MPS3 board for its implementation (patch 3/3).

Cheers,
   Rui

v2[3] -> v3:
    - when you think you have amend commit and fix stay
      uncommitted.
      s/[HC_FIELD_MAX] = {};/[HC_FIELD_MAX] = {},/
v1[0] -> v2:
    - gentle ping
    - merge fix from kernel upstream [1]

PS: This should go on top of the corstone1000 platform enable
series [2]

0: https://lore.kernel.org/u-boot/20220512142016.2025129-1-rui.si...@linaro.org/
1: 
https://lore.kernel.org/linux-usb/20220516091424.391209-1-linus.wall...@linaro.org/
2: 
https://lore.kernel.org/u-boot/20220511095541.1461937-1-rui.si...@linaro.org/T/#t
3: https://lore.kernel.org/u-boot/20220523090119.1212016-1-rui.si...@linaro.org/

Rui Miguel Silva (3):
  usb: common: move urb code to common
  usb: add isp1760 family driver
  corstone1000: enable isp1763 usb controller and mmc

 Makefile                                      |    1 +
 configs/corstone1000_defconfig                |    3 +
 drivers/usb/Kconfig                           |    2 +
 drivers/usb/common/Makefile                   |    3 +
 drivers/usb/common/usb_urb.c                  |  160 ++
 drivers/usb/host/r8a66597-hcd.c               |   30 +-
 drivers/usb/isp1760/Kconfig                   |   12 +
 drivers/usb/isp1760/Makefile                  |    6 +
 drivers/usb/isp1760/isp1760-core.c            |  380 +++
 drivers/usb/isp1760/isp1760-core.h            |   96 +
 drivers/usb/isp1760/isp1760-hcd.c             | 2477 +++++++++++++++++
 drivers/usb/isp1760/isp1760-hcd.h             |   81 +
 drivers/usb/isp1760/isp1760-if.c              |  125 +
 drivers/usb/isp1760/isp1760-regs.h            |  292 ++
 drivers/usb/isp1760/isp1760-uboot.c           |   75 +
 drivers/usb/isp1760/isp1760-uboot.h           |   27 +
 drivers/usb/musb-new/musb_core.c              |    2 +-
 drivers/usb/musb-new/musb_host.c              |    2 +-
 drivers/usb/musb-new/musb_host.h              |    2 +-
 drivers/usb/musb-new/musb_uboot.c             |   38 +-
 drivers/usb/musb-new/musb_uboot.h             |    2 +-
 include/configs/corstone1000.h                |    6 +
 .../linux/usb/usb_urb_compat.h                |   47 +-
 include/usb_defs.h                            |   32 +
 24 files changed, 3825 insertions(+), 76 deletions(-)
 create mode 100644 drivers/usb/common/usb_urb.c
 create mode 100644 drivers/usb/isp1760/Kconfig
 create mode 100644 drivers/usb/isp1760/Makefile
 create mode 100644 drivers/usb/isp1760/isp1760-core.c
 create mode 100644 drivers/usb/isp1760/isp1760-core.h
 create mode 100644 drivers/usb/isp1760/isp1760-hcd.c
 create mode 100644 drivers/usb/isp1760/isp1760-hcd.h
 create mode 100644 drivers/usb/isp1760/isp1760-if.c
 create mode 100644 drivers/usb/isp1760/isp1760-regs.h
 create mode 100644 drivers/usb/isp1760/isp1760-uboot.c
 create mode 100644 drivers/usb/isp1760/isp1760-uboot.h
 rename drivers/usb/musb-new/usb-compat.h => include/linux/usb/usb_urb_compat.h 
(59%)

-- 
2.36.1

Reply via email to