Re: [PATCH 00/15] Yunsilicon ethernet and RDMA drivers

From: Leon Romanovsky

Date: Tue Oct 13 2026 - 11:21:32 EST


On Mon, Oct 12, 2026 at 07:44:32PM +0800, Xin Tian wrote:
> Hi all,
>
> This is a new submission from Yunsilicon to upstream our converged
> network adapter driver. The hardware is a dual-function PCIe device
> (PCI vendor 0x1f67) that supports both ethernet and RDMA operations.
>
> The series adds three drivers, which share the xsc prefix. A shared PCI
> core driver binds to the physical function, brings up the command queue,
> the event queues and the interrupt handling, and publishes one auxiliary
> device per function. The ethernet and RDMA drivers bind to that
> auxiliary device instead of driving the PCI function themselves, so the
> two personalities share a single probe and resource set.
>
> 1. xsc_pci - the PCI core driver (CONFIG_YUNSILICON_XSC_PCI).
> Owns the PCI function, the command queue, the event queues, the
> interrupt vectors, the register access layer and the CQ/QP/SRQ
> resource pools. Patches 01-05.
>
> 2. xsc_eth - the ethernet driver (CONFIG_YUNSILICON_XSC_ETH).
> Registers the netdev, implements the TX/RX packet paths with NAPI
> and page_pool, RSS, checksum offloads and statistics. Patches
> 06-08, on top of the core.
>
> 3. xsc_ib - the RDMA driver (CONFIG_INFINIBAND_XSC).
> Registers the ib_device and provides the PD/MR, CQ/SRQ/AH and QP
> verbs including the send/receive data paths, plus RDMA counters and
> sysfs attributes. Patches 09-14, on top of the core and the
> ethernet driver (the netdev supplies port state and GID).
>
> Patch 15 adds the MAINTAINERS entry.
>
> The series is split so that every commit builds: the core patches
> introduce the register access, the command queue, the event queues and
> the resource pools incrementally, and the ethernet and RDMA patches only
> start creating queues once their dependencies are in place. Patch 05
> (core CQ/QP pools) is deliberately shared by both upper drivers; that is
> why it precedes the ethernet patches.
>
> The RDMA device is registered at patch 09, before all verbs exist, so
> kverbs_provider stays false until the mandatory verbs appear in patches
> 10-13. This keeps each intermediate tree compilable.
>
> Please review.

Please run Sashiko locally first.

Before we begin an active review of a new driver, we expect it to have
only a small number of Sashiko findings.

Thanks