From: Changhuang Liang <changhuang.liang@starfivetech.com>
To: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Jonathan Corbet <corbet@lwn.net>, Joel Stanley <joel@jms.id.au>,
Andrew Jeffery <andrew@codeconstruct.com.au>,
Chia-Wei Wang <chiawei_wang@aspeedtech.com>,
Oskar Senft <osk@google.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Changhuang Liang <changhuang.liang@starfivetech.com>,
Shuah Khan <skhan@linuxfoundation.org>,
Jani Nikula <jani.nikula@intel.com>,
Vitaly Lubart <lubvital@gmail.com>,
Hanjun Guo <guohanjun@huawei.com>,
Andrew Morton <akpm@linux-foundation.org>,
Alexander Usyskin <alexander.usyskin@intel.com>,
Jason Gunthorpe <jgg@ziepe.ca>, Breno Leitao <leitao@debian.org>,
Philipp Zabel <p.zabel@pengutronix.de>,
James Morse <james.morse@arm.com>,
Paolo Abeni <pabeni@redhat.com>,
Stephen Hemminger <stephen@networkplumber.org>,
Dave Penkler <dpenkler@gmail.com>,
Jakub Kicinski <kuba@kernel.org>,
Jonathan Cameron <jic23@kernel.org>,
Dan Williams <djbw@kernel.org>,
Mukesh Rathor <mrathor@linux.microsoft.com>,
Vladimir Oltean <vladimir.oltean@nxp.com>,
Alexandra Winter <wintera@linux.ibm.com>,
Julian Braha <julianbraha@gmail.com>,
Karthikeyan KS <karthiproffesional@gmail.com>,
Pengpeng Hou <pengpeng@iscas.ac.cn>,
openbmc@lists.ozlabs.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org, linux-doc@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-aspeed@lists.ozlabs.org
Subject: [PATCH v3 0/4] Add support for StarFive JHB100 UART Routing
Date: Thu, 24 Sep 2026 22:09:43 -0700 [thread overview]
Message-ID: <20260925050947.9900-1-changhuang.liang@starfivetech.com> (raw)
Currently, since Aspeed also has a similar driver, there is some code
with identical structures on both sides, but a common framework is
lacking. Therefore, this series introduces a generic UART routing
framework. It also moves aspeed-uart-routing.c under this generic
framework and makes it use the interfaces provided by the generic
framework. At the same time, StarFive also registers its own driver
based on this generic framework.
StarFive JHB100 UART Routing allows dynamic routing of inputs between
built-in UARTs and physical serial I/O ports, enabling use cases such
as Host <-> BMC communication via UARTs.
This series has been tested on the EVB1 board.
changes since v2:
PATCH 2:
- Add a "depends on ARCH_ASPEED || COMPILE_TEST" to the "UART routing drivers"
menu.
PATCH 3:
- Move the binding to bindings/soc/starfive/ and update the $id
PATCH 4:
- Append the depends on ARCH_STARFIVE to the "UART routing drivers"
- Use RST literal blocks instead of backslash-escaped asterisks in the
sysfs ABI documentation.
- Update the MAINTAINERS entry for binding.
v2: https://lore.kernel.org/all/20260905102901.126035-1-changhuang.liang@starfivetech.com/
v1: https://lore.kernel.org/all/20260830065118.51551-1-changhuang.liang@starfivetech.com/
Changhuang Liang (4):
uart-routing: Add common UART routing framework
soc: aspeed: Move UART routing driver to drivers/uart-routing
dt-bindings: soc: starfive: Add StarFive JHB100 UART routing
uart-routing: Add UART Routing driver for StarFive JHB100 SoC
.../sysfs-driver-starfive-uart-routing | 49 ++
.../soc/starfive/starfive,uart-routing.yaml | 46 ++
Documentation/driver-api/index.rst | 1 +
Documentation/driver-api/uart-routing.rst | 145 +++++
MAINTAINERS | 25 +
drivers/Kconfig | 2 +
drivers/Makefile | 1 +
drivers/soc/aspeed/Kconfig | 10 -
drivers/soc/aspeed/Makefile | 1 -
drivers/soc/aspeed/aspeed-uart-routing.c | 601 ------------------
drivers/uart-routing/Kconfig | 45 ++
drivers/uart-routing/Makefile | 5 +
drivers/uart-routing/aspeed-uart-routing.c | 415 ++++++++++++
drivers/uart-routing/starfive-uart-routing.c | 192 ++++++
drivers/uart-routing/uart-routing.c | 200 ++++++
drivers/uart-routing/uart-routing.h | 84 +++
16 files changed, 1210 insertions(+), 612 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-driver-starfive-uart-routing
create mode 100644 Documentation/devicetree/bindings/soc/starfive/starfive,uart-routing.yaml
create mode 100644 Documentation/driver-api/uart-routing.rst
delete mode 100644 drivers/soc/aspeed/aspeed-uart-routing.c
create mode 100644 drivers/uart-routing/Kconfig
create mode 100644 drivers/uart-routing/Makefile
create mode 100644 drivers/uart-routing/aspeed-uart-routing.c
create mode 100644 drivers/uart-routing/starfive-uart-routing.c
create mode 100644 drivers/uart-routing/uart-routing.c
create mode 100644 drivers/uart-routing/uart-routing.h
--
2.25.1
next reply other threads:[~2026-09-25 5:11 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-25 5:09 Changhuang Liang [this message]
2026-09-25 5:09 ` [PATCH v3 1/4] uart-routing: Add common UART routing framework Changhuang Liang
2026-09-25 5:09 ` [PATCH v3 2/4] soc: aspeed: Move UART routing driver to drivers/uart-routing Changhuang Liang
2026-09-25 5:09 ` [PATCH v3 3/4] dt-bindings: soc: starfive: Add StarFive JHB100 UART routing Changhuang Liang
2026-09-25 5:09 ` [PATCH v3 4/4] uart-routing: Add UART Routing driver for StarFive JHB100 SoC Changhuang Liang
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=20260925050947.9900-1-changhuang.liang@starfivetech.com \
--to=changhuang.liang@starfivetech.com \
--cc=akpm@linux-foundation.org \
--cc=alexander.usyskin@intel.com \
--cc=andrew@codeconstruct.com.au \
--cc=chiawei_wang@aspeedtech.com \
--cc=conor+dt@kernel.org \
--cc=corbet@lwn.net \
--cc=devicetree@vger.kernel.org \
--cc=djbw@kernel.org \
--cc=dpenkler@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=guohanjun@huawei.com \
--cc=james.morse@arm.com \
--cc=jani.nikula@intel.com \
--cc=jgg@ziepe.ca \
--cc=jic23@kernel.org \
--cc=joel@jms.id.au \
--cc=julianbraha@gmail.com \
--cc=karthiproffesional@gmail.com \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=leitao@debian.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-aspeed@lists.ozlabs.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lubvital@gmail.com \
--cc=mrathor@linux.microsoft.com \
--cc=openbmc@lists.ozlabs.org \
--cc=osk@google.com \
--cc=p.zabel@pengutronix.de \
--cc=pabeni@redhat.com \
--cc=pengpeng@iscas.ac.cn \
--cc=robh@kernel.org \
--cc=skhan@linuxfoundation.org \
--cc=stephen@networkplumber.org \
--cc=vladimir.oltean@nxp.com \
--cc=wintera@linux.ibm.com \
/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
all inboxes | Powered by JetHome®