All of lore.kernel.org
 help / color / mirror / Atom feed
From: Link Mauve <linkmauve@linkmauve.fr>
To: Link Mauve <linkmauve@linkmauve.fr>
Cc: rust-for-linux@vger.kernel.org,
	"Madhavan Srinivasan" <maddy@linux.ibm.com>,
	"Michael Ellerman" <mpe@ellerman.id.au>,
	"Nicholas Piggin" <npiggin@gmail.com>,
	"Christophe Leroy (CS GROUP)" <chleroy@kernel.org>,
	"Srinivas Kandagatla" <srini@kernel.org>,
	"Miguel Ojeda" <ojeda@kernel.org>,
	"Boqun Feng" <boqun@kernel.org>, "Gary Guo" <gary@garyguo.net>,
	"Björn Roy Baron" <bjorn3_gh@protonmail.com>,
	"Benno Lossin" <lossin@kernel.org>,
	"Andreas Hindborg" <a.hindborg@kernel.org>,
	"Alice Ryhl" <aliceryhl@google.com>,
	"Trevor Gross" <tmgross@umich.edu>,
	"Danilo Krummrich" <dakr@kernel.org>,
	"Daniel Almeida" <daniel.almeida@collabora.com>,
	"Ard Biesheuvel" <ardb@kernel.org>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	"Eric Biggers" <ebiggers@google.com>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Lyude Paul" <lyude@redhat.com>,
	"Asahi Lina" <lina+kernel@asahilina.net>,
	"Viresh Kumar" <viresh.kumar@linaro.org>,
	"Lorenzo Stoakes" <lorenzo.stoakes@oracle.com>,
	"Tamir Duberstein" <tamird@kernel.org>,
	"FUJITA Tomonori" <fujita.tomonori@gmail.com>,
	linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org,
	officialTechflashYT@gmail.com, "Ash Logan" <ash@heyquark.com>,
	"Roberto Van Eeden" <rw-r-r-0644@protonmail.com>,
	"Jonathan Neuschäfer" <j.neuschaefer@gmx.net>
Subject: Re: [PATCH v2 3/4] nvmem: Replace the Wii and Wii U OTP driver with a Rust one
Date: Wed, 4 Mar 2026 19:46:59 +0100	[thread overview]
Message-ID: <aah-I7qxeI0Va3Qy@luna> (raw)
In-Reply-To: <20260204040505.8447-4-linkmauve@linkmauve.fr>

Hi,

I’m working on a v3 of this series atm.

On Wed, Feb 04, 2026 at 05:05:00AM +0100, Link Mauve wrote:
> I wrote this driver long ago, and wanted to try seeing how hard it would
> be to convert it to Rust.
> 
> It is a very simple driver, we write the address we want to read in one
> memory address, and read the data from a second memory address.  A third
> memory address can be used to disable all reads in a range until the
> system has been rebooted, but I didn’t find any reason to expose that
> feature.
> 
> I made sure to use no unsafe in this driver, to make sure the API
> exposed in the previous commit is usable.
> 
> Ideally we wouldn’t have to impl the write() function in
> NintendoOtpProvider, but currently the vtable requires both.
> 
> I have tested this driver only on a Wii so far, but I assume it will
> work the same on a Wii U, just exposing more memory banks.
> 
> Signed-off-by: Link Mauve <linkmauve@linkmauve.fr>
> ---
>  drivers/nvmem/Kconfig         |   1 +
>  drivers/nvmem/Makefile        |   2 +-
>  drivers/nvmem/nintendo-otp.c  | 122 --------------------------------
>  drivers/nvmem/nintendo_otp.rs | 127 ++++++++++++++++++++++++++++++++++
>  4 files changed, 129 insertions(+), 123 deletions(-)
>  delete mode 100644 drivers/nvmem/nintendo-otp.c
>  create mode 100644 drivers/nvmem/nintendo_otp.rs

Should I make it a Rust reference driver[1] and keep the C version, or
is replacing the C driver like I’m doing here okay?  Ideally I would
only maintain the Rust version in the end, but I’m fine with maintaining
both for the time being, until we have everything sorted out.

[1] https://rust-for-linux.com/rust-reference-drivers

-- 
Link Mauve


  reply	other threads:[~2026-03-04 18:47 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-04  4:04 [PATCH v2 0/4] Add Rust abstractions for nvmem-provider Link Mauve
2026-02-04  4:04 ` [PATCH v2 1/4] rust: io: Add big-endian read and write functions Link Mauve
2026-02-04 15:18   ` Danilo Krummrich
2026-02-04 15:20     ` Danilo Krummrich
2026-02-05 14:28     ` Daniel Almeida
2026-02-05 14:56       ` Danilo Krummrich
2026-02-05 15:16       ` Gary Guo
2026-02-05 17:28         ` Daniel Almeida
2026-02-05 19:05           ` Danilo Krummrich
2026-02-05 21:20             ` Link Mauve
2026-02-05 22:11               ` Danilo Krummrich
2026-02-05 22:31             ` Gary Guo
2026-02-05 22:43               ` Danilo Krummrich
2026-02-08 17:17                 ` Daniel Almeida
2026-02-08 17:52                   ` Danilo Krummrich
2026-02-05 22:46               ` Danilo Krummrich
2026-02-04  4:04 ` [PATCH v2 2/4] rust: nvmem: Add an abstraction for nvmem providers Link Mauve
2026-02-04 15:22   ` Danilo Krummrich
2026-02-05 12:48     ` Link Mauve
2026-02-05 12:57       ` Danilo Krummrich
2026-02-04  4:05 ` [PATCH v2 3/4] nvmem: Replace the Wii and Wii U OTP driver with a Rust one Link Mauve
2026-03-04 18:46   ` Link Mauve [this message]
2026-02-04  4:05 ` [PATCH v2 4/4] powerpc: wii_defconfig: Enable Rust Link Mauve

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=aah-I7qxeI0Va3Qy@luna \
    --to=linkmauve@linkmauve.fr \
    --cc=a.hindborg@kernel.org \
    --cc=aliceryhl@google.com \
    --cc=ardb@kernel.org \
    --cc=ash@heyquark.com \
    --cc=bjorn3_gh@protonmail.com \
    --cc=boqun@kernel.org \
    --cc=chleroy@kernel.org \
    --cc=dakr@kernel.org \
    --cc=daniel.almeida@collabora.com \
    --cc=ebiggers@google.com \
    --cc=fujita.tomonori@gmail.com \
    --cc=gary@garyguo.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=j.neuschaefer@gmx.net \
    --cc=lina+kernel@asahilina.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=lorenzo.stoakes@oracle.com \
    --cc=lossin@kernel.org \
    --cc=lyude@redhat.com \
    --cc=maddy@linux.ibm.com \
    --cc=martin.petersen@oracle.com \
    --cc=mpe@ellerman.id.au \
    --cc=npiggin@gmail.com \
    --cc=officialTechflashYT@gmail.com \
    --cc=ojeda@kernel.org \
    --cc=rust-for-linux@vger.kernel.org \
    --cc=rw-r-r-0644@protonmail.com \
    --cc=srini@kernel.org \
    --cc=tamird@kernel.org \
    --cc=tmgross@umich.edu \
    --cc=viresh.kumar@linaro.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.