From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F229F4218AB; Wed, 4 Feb 2026 15:20:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770218428; cv=none; b=XwqgmkYrEigi8BiSwTvSv6dzRtEWpU2u7t+EN7Dnw7+aqbG5+N/s/qSsmZ7CMuTCzLrj1fH2JuCZxoT83BmLD+Vs+fqFpNBoo3qG7/Fr/Sw3ihL0OFAH9L6hmADOlKCA8pFwRhaDgeKpKmevrF6zbwitPK1tUu2V1WwmTScdKEo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770218428; c=relaxed/simple; bh=LV83XAoHqKAShfT+AE1ovPhvCrwFlhSL6wBvyLgD+xY=; h=Mime-Version:Content-Type:Date:Message-Id:Subject:Cc:To:From: References:In-Reply-To; b=j2GE6jlBpIhJJTqasBRNvRcIFgjX+C9uKdne7qjMMSq13Ry3GgQRdTHZzzXtOlSdyfMhvmztdp7utafCOTcemdLm4U7kmHT7NeoyFY/FW00yXkmu8y+1ilxl+1hOk8PLzOz1RaPE96ufEtJ5qyPf8I2ahVgAo3ikwLdEAkRl1bs= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ubXJVA9I; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ubXJVA9I" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D537DC19423; Wed, 4 Feb 2026 15:20:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1770218427; bh=LV83XAoHqKAShfT+AE1ovPhvCrwFlhSL6wBvyLgD+xY=; h=Date:Subject:Cc:To:From:References:In-Reply-To:From; b=ubXJVA9IWQFsVT10MV2cX8xswhetEh26NAfls/hCUAlfrGGDCWcWxFPBf7Zi5FVzg ZVvKGaDsLhtq4c0XyIq9GvAgi8sZDwd56jJXpJliLSsDtyM3l3d8PghQupdMMVALTD 8Z44+C7aR1EXkXVA28gk2mQVJomrAxQfxnLTTioF3nuWtawWMU3TwM5WaxQkV2/BtN E3FbJj++4DNnvWR3TyGdZZ8lg1un5DVgh+693lqv/tDluv/nYwwYPr/ZEbhW/ZFpiv Ng6eYhXiyLX3/BdlY/jMPTb+n99xaEWOjC0DtKeV8QVBBEnvpLvLec6vZetewHt2fT KJrj0xGWmUGkA== Precedence: bulk X-Mailing-List: rust-for-linux@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Wed, 04 Feb 2026 16:20:20 +0100 Message-Id: Subject: Re: [PATCH v2 1/4] rust: io: Add big-endian read and write functions Cc: , "Madhavan Srinivasan" , "Michael Ellerman" , "Nicholas Piggin" , "Christophe Leroy (CS GROUP)" , "Srinivas Kandagatla" , "Miguel Ojeda" , "Boqun Feng" , "Gary Guo" , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , "Benno Lossin" , "Andreas Hindborg" , "Alice Ryhl" , "Trevor Gross" , "Daniel Almeida" , "Ard Biesheuvel" , "Martin K. Petersen" , "Eric Biggers" , "Greg Kroah-Hartman" , "Lyude Paul" , "Asahi Lina" , "Viresh Kumar" , "Lorenzo Stoakes" , "Tamir Duberstein" , "FUJITA Tomonori" , , , , "Ash Logan" , "Roberto Van Eeden" , =?utf-8?q?Jonathan_Neusch=C3=A4fer?= To: "Link Mauve" From: "Danilo Krummrich" References: <20260204040505.8447-1-linkmauve@linkmauve.fr> <20260204040505.8447-2-linkmauve@linkmauve.fr> In-Reply-To: On Wed Feb 4, 2026 at 4:18 PM CET, Danilo Krummrich wrote: > On Wed Feb 4, 2026 at 5:04 AM CET, Link Mauve wrote: >> Another option would be to call u32::swap_bytes() on the data being >> read/written, but these helpers make the Rust code as ergonomic as the C >> code. >> >> Signed-off-by: Link Mauve > > The I/O stuff recently changed quite significantly, please have a look at= the > driver-core-next branch [1] in the driver-core tree. > > Also, instead of providing additional *be() methods, we should just creat= e a new > type io::Endianness and use it to indicate the device endianness when req= uesting > the I/O resource. > > For instance, for your driver we could have > > request.iomap_exclusive_sized::<8>(Endianness::Big)? > > and then let the I/O backend choose the correct accessors based on this. > > I.e. the device is either big or little endian, hence we don't need to pr= ovide > both accessors at the same time. > > [1] https://git.kernel.org/pub/scm/linux/kernel/git/driver-core/driver-co= re.git/log/?h=3Ddriver-core-next Forgot to mention, please also consider this patch series [2] for your work= . [2] https://lore.kernel.org/all/20260202-io-v1-0-9bb2177d23be@nvidia.com/