Re: [PATCH v6 00/16] Device / Driver PCI / Platform Rust abstractions

From: Dirk Behme
Date: Fri Dec 13 2024 - 02:06:29 EST


On 12.12.24 17:33, Danilo Krummrich wrote:
> This patch series implements the necessary Rust abstractions to implement
> device drivers in Rust.
>
> This includes some basic generalizations for driver registration, handling of ID
> tables, MMIO operations and device resource handling.
>
> Those generalizations are used to implement device driver support for two
> busses, the PCI and platform bus (with OF IDs) in order to provide some evidence
> that the generalizations work as intended.
>
> The patch series also includes two patches adding two driver samples, one PCI
> driver and one platform driver.
>
> The PCI bits are motivated by the Nova driver project [1], but are used by at
> least one more OOT driver (rnvme [2]).
>
> The platform bits, besides adding some more evidence to the base abstractions,
> are required by a few more OOT drivers aiming at going upstream, i.e. rvkms [3],
> cpufreq-dt [4], asahi [5] and the i2c work from Fabien [6].
>
> The patches of this series can also be [7], [8] and [9].

With v6.13-rc2 and Fabien's regmap/regulator/I2C on top I gave it a
try on x86 with qemu. Additionally cross compiled for arm64 and will
try it on real hardware once I have it available. But previous
versions of this series have been fine on that, already. No issues
observed for running the samples and for the examples/KUnit. So:

Tested-by: Dirk Behme <dirk.behme@xxxxxxxxxxxx>

Many thanks!

Dirk