From: Christian Marangi <ansuelsmth@gmail.com>
To: Michael Turquette <mturquette@baylibre.com>,
Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Christian Marangi <ansuelsmth@gmail.com>,
Vinod Koul <vkoul@kernel.org>,
Kishon Vijay Abraham I <kishon@kernel.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@collabora.com>,
Lorenzo Bianconi <lorenzo@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Daniel Danzberger <dd@embedd.com>, Arnd Bergmann <arnd@arndb.de>,
Alexander Sverdlin <alexander.sverdlin@gmail.com>,
Nikita Shubin <nikita.shubin@maquefel.me>,
Linus Walleij <linus.walleij@linaro.org>,
Yangyu Chen <cyy@cyyself.name>,
Ben Hutchings <ben@decadent.org.uk>, Felix Fietkau <nbd@nbd.name>,
linux-clk@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-phy@lists.infradead.org,
linux-mediatek@lists.infradead.org, linux-usb@vger.kernel.org,
upstream@airoha.com
Subject: [PATCH v2 00/11] airoha: en7581: clk cleanup + USB support
Date: Thu, 20 Mar 2025 14:00:23 +0100 [thread overview]
Message-ID: <20250320130054.4804-1-ansuelsmth@gmail.com> (raw)
This series implement all the changes required to correctly handle
USB support for the Airoha EN7581 SoC.
The first few patch are cleanup for the clock driver and the
introduction of the SCU SSR SoC driver.
The SoC always support USB 2.0 but for USB 3.0 it needs additional
configuration for the Serdes port. Such port can be either configured
for USB usage or for PCIe lines or HSGMII and these are configured
in the SCU space.
The xHCI USB is based on the Mediatek implementation but the PHY
handling although conceptually similar, is indded different compared
to Mediatek due to SSR checks and different port power up.
The SSR driver expose an API to poll the current status of the Serdes
port and the USB PHY driver validates it. Refer to the specific commit
for additional info.
Consider that there is currently an inconsistency as AN7581 and
EN7581 refer to the same thing. This is due to the fact that
the SoC born under EcoNet but then was acquired by Airoha.
Changes v2:
- Drop changes for simple-mfd
- Rework PHY node structure to single node
- Drop port-id property in favor of serdes-port and
usb2-monitor-clock-sel
- Make the SSR driver probe from the clock driver
Christian Marangi (11):
clk: en7523: convert driver to regmap API
clk: en7523: generalize register clocks function
dt-bindings: clock: en7523: add Documentation for Airoha AN7581 SCU
SSR
soc: airoha: add support for configuring SCU SSR Serdes port
clk: en7523: define and register SoC SCU SSR driver for EN7581
soc: airoha: scu-ssr: expose API to read current Serdes Port mode
dt-bindings: phy: Add documentation for Airoha AN7581 USB PHY
phy: move Airoha PCIe PHY driver to dedicated directory
phy: airoha: Add support for Airoha AN7581 USB PHY
usb: host: add ARCH_AIROHA in XHCI MTK dependency
arm64: dts: airoha: en7581: add USB nodes
.../bindings/clock/airoha,en7523-scu.yaml | 101 +-
.../bindings/phy/airoha,an7581-usb-phy.yaml | 83 ++
MAINTAINERS | 21 +-
arch/arm64/boot/dts/airoha/en7581.dtsi | 49 +
drivers/clk/clk-en7523.c | 340 +++--
drivers/phy/Kconfig | 11 +-
drivers/phy/Makefile | 5 +-
drivers/phy/airoha/Kconfig | 23 +
drivers/phy/airoha/Makefile | 4 +
drivers/phy/airoha/phy-airoha-pcie-regs.h | 494 +++++++
drivers/phy/airoha/phy-airoha-pcie.c | 1290 +++++++++++++++++
drivers/phy/airoha/phy-airoha-usb.c | 571 ++++++++
drivers/soc/Kconfig | 1 +
drivers/soc/Makefile | 1 +
drivers/soc/airoha/Kconfig | 18 +
drivers/soc/airoha/Makefile | 3 +
drivers/soc/airoha/airoha-scu-ssr.c | 271 ++++
drivers/usb/host/Kconfig | 2 +-
.../dt-bindings/phy/airoha,an7581-usb-phy.h | 11 +
include/dt-bindings/soc/airoha,scu-ssr.h | 11 +
include/linux/clk/clk-en7523.h | 10 +
include/linux/soc/airoha/airoha-scu-ssr.h | 34 +
22 files changed, 3202 insertions(+), 152 deletions(-)
create mode 100644 Documentation/devicetree/bindings/phy/airoha,an7581-usb-phy.yaml
create mode 100644 drivers/phy/airoha/Kconfig
create mode 100644 drivers/phy/airoha/Makefile
create mode 100644 drivers/phy/airoha/phy-airoha-pcie-regs.h
create mode 100644 drivers/phy/airoha/phy-airoha-pcie.c
create mode 100644 drivers/phy/airoha/phy-airoha-usb.c
create mode 100644 drivers/soc/airoha/Kconfig
create mode 100644 drivers/soc/airoha/Makefile
create mode 100644 drivers/soc/airoha/airoha-scu-ssr.c
create mode 100644 include/dt-bindings/phy/airoha,an7581-usb-phy.h
create mode 100644 include/dt-bindings/soc/airoha,scu-ssr.h
create mode 100644 include/linux/clk/clk-en7523.h
create mode 100644 include/linux/soc/airoha/airoha-scu-ssr.h
--
2.48.1
next reply other threads:[~2025-03-20 13:01 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-20 13:00 Christian Marangi [this message]
2025-03-20 13:00 ` [PATCH v2 01/11] clk: en7523: convert driver to regmap API Christian Marangi
2025-03-20 13:00 ` [PATCH v2 02/11] clk: en7523: generalize register clocks function Christian Marangi
2025-03-20 13:00 ` [PATCH v2 03/11] dt-bindings: clock: en7523: add Documentation for Airoha AN7581 SCU SSR Christian Marangi
2025-03-21 22:37 ` Rob Herring
2025-03-20 13:00 ` [PATCH v2 04/11] soc: airoha: add support for configuring SCU SSR Serdes port Christian Marangi
2025-03-20 14:49 ` Arnd Bergmann
2025-03-20 14:59 ` Christian Marangi
2025-03-20 13:00 ` [PATCH v2 05/11] clk: en7523: define and register SoC SCU SSR driver for EN7581 Christian Marangi
2025-03-20 13:00 ` [PATCH v2 06/11] soc: airoha: scu-ssr: expose API to read current Serdes Port mode Christian Marangi
2025-03-20 13:00 ` [PATCH v2 07/11] dt-bindings: phy: Add documentation for Airoha AN7581 USB PHY Christian Marangi
2025-03-24 15:49 ` Rob Herring
2025-03-20 13:00 ` [PATCH v2 08/11] phy: move Airoha PCIe PHY driver to dedicated directory Christian Marangi
2025-03-20 13:00 ` [PATCH v2 09/11] phy: airoha: Add support for Airoha AN7581 USB PHY Christian Marangi
2025-03-20 13:00 ` [PATCH v2 10/11] usb: host: add ARCH_AIROHA in XHCI MTK dependency Christian Marangi
2025-03-20 13:00 ` [PATCH v2 11/11] arm64: dts: airoha: en7581: add USB nodes Christian Marangi
2025-03-20 18:26 ` [PATCH v2 00/11] airoha: en7581: clk cleanup + USB support Rob Herring (Arm)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250320130054.4804-1-ansuelsmth@gmail.com \
--to=ansuelsmth@gmail.com \
--cc=alexander.sverdlin@gmail.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=arnd@arndb.de \
--cc=ben@decadent.org.uk \
--cc=conor+dt@kernel.org \
--cc=cyy@cyyself.name \
--cc=dd@embedd.com \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=kishon@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-phy@lists.infradead.org \
--cc=linux-usb@vger.kernel.org \
--cc=lorenzo@kernel.org \
--cc=matthias.bgg@gmail.com \
--cc=mturquette@baylibre.com \
--cc=nbd@nbd.name \
--cc=nikita.shubin@maquefel.me \
--cc=robh@kernel.org \
--cc=sboyd@kernel.org \
--cc=upstream@airoha.com \
--cc=vkoul@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox