From: "Grégoire Layet" <gregoire.layet@9elements.com>
To: joel@jms.id.au, andrew@codeconstruct.com.au
Cc: jacky_chou@aspeedtech.com, yh_chung@aspeedtech.com,
ninad@linux.ibm.com, linux-aspeed@lists.ozlabs.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org,
"Grégoire Layet" <gregoire.layet@9elements.com>
Subject: [PATCH v1 0/2] soc: aspeed: Add BMC and host driver for PCIe BMC device
Date: Tue, 2 Jun 2026 16:42:42 +0200 [thread overview]
Message-ID: <cover.1780409151.git.gregoire.layet@9elements.com> (raw)
This series upstreams the PCIe BMC device driver from the ASPEED kernel SDK (branch master-v6.18) [1].
There are two drivers: a BMC-side driver and a host-side driver.
Together they enable host<->BMC communication via PCIe.
This includes : shared memory, doorbell interrupt communication and two VUARTs.
This driver can be used on AST2600/AST2700 based PCIe extension cards, such as Asus IPMI Kommando Card.
The virtual UART support can be used for Serial over LAN.
The shared memory can be claimed by userspace programs.
Tested on :
BMC :
- Asus IPMI Kommando Card R1.01, AST2600 A3.
- OpenBMC
Host:
- Linux kernel v7.0.0
I tested VUART communication with interrupt.
No driver modifications were required.
Not tested on AST2700.
Provenance:
I did zero modifications to the ASPEED code, this is only an upstream patch.
The driver files match the ASPEED SDK tree at :
drivers/soc/aspeed/aspeed-bmc-dev.c
1815546a54f5f89bc9d3bd8f5658f0a573927509 [2]
"soc: aspeed: remove MMBI implement in host bmc dev"
drivers/soc/aspeed/aspeed-host-bmc-dev.c
7217e3c872166d56389a97e1b81996f73a3e76d5 [3]
"soc: aspeed: remove iounmap"
The driver code build cleanly against Linux 7.0 without any modification.
No fix were required.
I built both the BMC side and Host side with KCFLAGS=-W and no warning apperead.
Original authors are credited via Signed-off-by in the individual patches.
checkpatch.pl --strict reports 1 warning for BMC side driver
and 2 warnings for host side driver.
These are unchanged to keep zero diff against the ASPEED SDK tree.
I can clean them in a v2 if needed.
The host side driver had a submission from Ninad Palsule :
"soc/aspeed: Add host side BMC device driver" in August 2023 [4].
This submission stalled and did not make it into the mainline kernel.
Since then, the host drivers have changed a lot on the ASPEED SDK.
I decided not to base this patch on Ninad's one
but rather to simply upstream the new host driver from ASPEED.
[1]: https://github.com/AspeedTech-BMC/linux/tree/aspeed-master-v6.18/drivers/soc/aspeed
[2]: https://github.com/AspeedTech-BMC/linux/commit/1815546a54f5f89bc9d3bd8f5658f0a573927509
[3]: https://github.com/AspeedTech-BMC/linux/commit/7217e3c872166d56389a97e1b81996f73a3e76d5
[4]: https://lore.kernel.org/linux-aspeed/20230821183525.3427144-1-ninad@linux.ibm.com/
Grégoire Layet (2):
soc: aspeed: add BMC-side PCIe BMC device driver
soc: aspeed: add host-side PCIe BMC device driver
drivers/soc/aspeed/Kconfig | 22 +
drivers/soc/aspeed/Makefile | 2 +
drivers/soc/aspeed/aspeed-bmc-dev.c | 701 +++++++++++++++++++++++
drivers/soc/aspeed/aspeed-host-bmc-dev.c | 664 +++++++++++++++++++++
4 files changed, 1389 insertions(+)
create mode 100644 drivers/soc/aspeed/aspeed-bmc-dev.c
create mode 100644 drivers/soc/aspeed/aspeed-host-bmc-dev.c
--
2.51.2
next reply other threads:[~2026-06-02 14:48 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-02 14:42 Grégoire Layet [this message]
2026-06-02 14:42 ` [PATCH v1 1/2] soc: aspeed: add BMC-side PCIe BMC device driver Grégoire Layet
2026-06-02 14:42 ` [PATCH v1 2/2] soc: aspeed: add host-side " Grégoire Layet
2026-06-02 15:49 ` Andrew Lunn
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=cover.1780409151.git.gregoire.layet@9elements.com \
--to=gregoire.layet@9elements.com \
--cc=andrew@codeconstruct.com.au \
--cc=jacky_chou@aspeedtech.com \
--cc=joel@jms.id.au \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-aspeed@lists.ozlabs.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ninad@linux.ibm.com \
--cc=yh_chung@aspeedtech.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