[PATCH 0/3] Modernize the Faraday FOTG210 driver

Linus Walleij posted 3 patches 3 weeks, 5 days ago
There is a newer version of this series
drivers/usb/fotg210/Kconfig        |    2 +
drivers/usb/fotg210/fotg210-core.c |  276 +-
drivers/usb/fotg210/fotg210-hcd.c  | 5672 +-----------------------------------
drivers/usb/fotg210/fotg210-hcd.h  |  689 -----
drivers/usb/fotg210/fotg210-udc.c  |   97 +-
drivers/usb/fotg210/fotg210-udc.h  |    2 +-
drivers/usb/fotg210/fotg210.h      |   26 +-
drivers/usb/host/ehci-dbg.c        |    3 +-
drivers/usb/host/ehci-hcd.c        |   31 +-
drivers/usb/host/ehci-hub.c        |  100 +-
drivers/usb/host/ehci-timer.c      |    3 +-
drivers/usb/host/ehci.h            |   55 +-
12 files changed, 520 insertions(+), 6436 deletions(-)
[PATCH 0/3] Modernize the Faraday FOTG210 driver
Posted by Linus Walleij 3 weeks, 5 days ago
Replace the private FOTG210 EHCI fork with the common EHCI core and
quirks for its shifted or missing registers, integrated transaction
translator, speed reporting, and reset sequence.

This is a late reaction to a comment from Daniel Palmer in 2023:
https://lore.kernel.org/linux-usb/CAFr9PXmVXqAX73VUzAt_M2yPN93in9Y_LHyYcEA1Dfj_m_4ZHA@mail.gmail.com/

The fork was originally made from the v3.7 EHCI core driver. Arguably
this was a bad idea since it copied over 5000 lines of code. Correct the
mistake by using the maintained common implementation.

Also clean up fixed-role initialization, power and resource handling,
UDC lifecycle, and system sleep handling. The binding and Gemini board
updates are split into a separate series.

Tested on the D-Link DIR-685.

Assisted-by: LLM
Signed-off-by: Linus Walleij <linusw@kernel.org>
---
Linus Walleij (3):
      usb: ehci: support controllers with non-standard registers
      usb: fotg210: use the common EHCI core
      usb: fotg210-udc: fix endpoint and resource handling

 drivers/usb/fotg210/Kconfig        |    2 +
 drivers/usb/fotg210/fotg210-core.c |  276 +-
 drivers/usb/fotg210/fotg210-hcd.c  | 5672 +-----------------------------------
 drivers/usb/fotg210/fotg210-hcd.h  |  689 -----
 drivers/usb/fotg210/fotg210-udc.c  |   97 +-
 drivers/usb/fotg210/fotg210-udc.h  |    2 +-
 drivers/usb/fotg210/fotg210.h      |   26 +-
 drivers/usb/host/ehci-dbg.c        |    3 +-
 drivers/usb/host/ehci-hcd.c        |   31 +-
 drivers/usb/host/ehci-hub.c        |  100 +-
 drivers/usb/host/ehci-timer.c      |    3 +-
 drivers/usb/host/ehci.h            |   55 +-
 12 files changed, 520 insertions(+), 6436 deletions(-)
---
base-commit: cee9395acd8043be0644b25c34bfa86623f2b935
change-id: 20260203-gemini-usb-fotg2-3873e0d9288a

Best regards,
--  
Linus Walleij <linusw@kernel.org>