From: Maxime Ripard <maxime@cerno.tech> To: Andre Przywara <andre.przywara@arm.com> Cc: Chen-Yu Tsai <wens@csie.org>, Samuel Holland <samuel@sholland.org>, Jernej Skrabec <jernej.skrabec@siol.net>, devicetree <devicetree@vger.kernel.org>, linux-arm-kernel <linux-arm-kernel@lists.infradead.org>, linux-sunxi@lists.linux.dev, linux-kernel <linux-kernel@vger.kernel.org> Subject: Re: [PATCH 0/2] sunxi: Enforce consistent MMC numbering Date: Fri, 30 Apr 2021 11:10:35 +0200 [thread overview] Message-ID: <20210430091035.i4zoyzb4c2l22msb@gilmour> (raw) In-Reply-To: <20210419095443.1548432e@slackpad.fritz.box> [-- Attachment #1: Type: text/plain, Size: 2860 bytes --] On Mon, Apr 19, 2021 at 09:54:43AM +0100, Andre Przywara wrote: > On Mon, 19 Apr 2021 11:17:19 +0800 > Chen-Yu Tsai <wens@csie.org> wrote: > > Hi, > > > On Mon, Apr 19, 2021 at 10:52 AM Samuel Holland <samuel@sholland.org> wrote: > > > > > > Dealing with the inconsistent numbering has been a major pain, and > > > there is a solution with (as far as I can tell) no tangible downsides. > > > So let's use it. > > Thanks Samuel for sending this! > > > > Yes, I know the kernel supports UUIDs for root=. But UUIDs do not help > > > when referencing the whole, unpartitioned device, like is needed for > > > updating the bootloader and firmware. So for the use case of "write a > > > bootloader to the SD card, regardless of where the board is currently > > > booted from", I know of two options: > > > - Dig around in sysfs to find the mmc number from the MMIO address, > > > which means I have to know the MMIO addresses for every SoC, or > > > - Apply patches like these. > > > > > > Samuel Holland (2): > > > ARM: dts: sunxi: h3/h5: Enforce consistent MMC numbering > > > arm64: dts: allwinner: Enforce consistent MMC numbering > > > > > > arch/arm/boot/dts/sunxi-h3-h5.dtsi | 6 ++++++ > > > arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 6 ++++++ > > > arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 6 ++++++ > > > > At least with Rockchip this is now done at the board level. IIRC it was > > a request from other people to not do it at the SoC level. I don't recall > > exactly who though. > > FWIW, I am very much in favour of these patches, at a SoC level: > The *SoC* BootROM imposes an order, by probing the first (by MMIO > address order) MMC controller first for boot devices. IIRC that's a > different story for Rockchip? > And if people really don't care about the order, then having a certain > order doesn't hurt, so we could as well use the "natural" order, as it > was before. This doesn't have anything to do with the BootRom though but what we provide to the userspace? The userspace has no guarantee about the kernel enumeration order for any bus (but UART for some reason), I'm not really sure why MMC would be an exception. Especially since the kernel will not try to catch up, this will be bound to be broken on a regular basis. And that aside, assuming that a device only has an eMMC this would create the mmc2 device, which is completely weird and inconsistent with how any other bus behaves. > Also UUIDs only help if you boot with an initramfs to resolve them, > which proves to be extra pain if you don't compile kernels on the > device, or not inside a distribution environment. I'm not sure what you mean? The kernel is perfectly able to resolve them. You can also use PARTLABEL if you want something more user friendly. Maxime [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 228 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: Maxime Ripard <maxime@cerno.tech> To: Andre Przywara <andre.przywara@arm.com> Cc: Chen-Yu Tsai <wens@csie.org>, Samuel Holland <samuel@sholland.org>, Jernej Skrabec <jernej.skrabec@siol.net>, devicetree <devicetree@vger.kernel.org>, linux-arm-kernel <linux-arm-kernel@lists.infradead.org>, linux-sunxi@lists.linux.dev, linux-kernel <linux-kernel@vger.kernel.org> Subject: Re: [PATCH 0/2] sunxi: Enforce consistent MMC numbering Date: Fri, 30 Apr 2021 11:10:35 +0200 [thread overview] Message-ID: <20210430091035.i4zoyzb4c2l22msb@gilmour> (raw) In-Reply-To: <20210419095443.1548432e@slackpad.fritz.box> [-- Attachment #1.1: Type: text/plain, Size: 2860 bytes --] On Mon, Apr 19, 2021 at 09:54:43AM +0100, Andre Przywara wrote: > On Mon, 19 Apr 2021 11:17:19 +0800 > Chen-Yu Tsai <wens@csie.org> wrote: > > Hi, > > > On Mon, Apr 19, 2021 at 10:52 AM Samuel Holland <samuel@sholland.org> wrote: > > > > > > Dealing with the inconsistent numbering has been a major pain, and > > > there is a solution with (as far as I can tell) no tangible downsides. > > > So let's use it. > > Thanks Samuel for sending this! > > > > Yes, I know the kernel supports UUIDs for root=. But UUIDs do not help > > > when referencing the whole, unpartitioned device, like is needed for > > > updating the bootloader and firmware. So for the use case of "write a > > > bootloader to the SD card, regardless of where the board is currently > > > booted from", I know of two options: > > > - Dig around in sysfs to find the mmc number from the MMIO address, > > > which means I have to know the MMIO addresses for every SoC, or > > > - Apply patches like these. > > > > > > Samuel Holland (2): > > > ARM: dts: sunxi: h3/h5: Enforce consistent MMC numbering > > > arm64: dts: allwinner: Enforce consistent MMC numbering > > > > > > arch/arm/boot/dts/sunxi-h3-h5.dtsi | 6 ++++++ > > > arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 6 ++++++ > > > arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 6 ++++++ > > > > At least with Rockchip this is now done at the board level. IIRC it was > > a request from other people to not do it at the SoC level. I don't recall > > exactly who though. > > FWIW, I am very much in favour of these patches, at a SoC level: > The *SoC* BootROM imposes an order, by probing the first (by MMIO > address order) MMC controller first for boot devices. IIRC that's a > different story for Rockchip? > And if people really don't care about the order, then having a certain > order doesn't hurt, so we could as well use the "natural" order, as it > was before. This doesn't have anything to do with the BootRom though but what we provide to the userspace? The userspace has no guarantee about the kernel enumeration order for any bus (but UART for some reason), I'm not really sure why MMC would be an exception. Especially since the kernel will not try to catch up, this will be bound to be broken on a regular basis. And that aside, assuming that a device only has an eMMC this would create the mmc2 device, which is completely weird and inconsistent with how any other bus behaves. > Also UUIDs only help if you boot with an initramfs to resolve them, > which proves to be extra pain if you don't compile kernels on the > device, or not inside a distribution environment. I'm not sure what you mean? The kernel is perfectly able to resolve them. You can also use PARTLABEL if you want something more user friendly. Maxime [-- Attachment #1.2: signature.asc --] [-- Type: application/pgp-signature, Size: 228 bytes --] [-- Attachment #2: Type: text/plain, Size: 176 bytes --] _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2021-04-30 9:10 UTC|newest] Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-04-19 2:52 [PATCH 0/2] sunxi: Enforce consistent MMC numbering Samuel Holland 2021-04-19 2:52 ` Samuel Holland 2021-04-19 2:52 ` [PATCH 1/2] ARM: dts: sunxi: h3/h5: " Samuel Holland 2021-04-19 2:52 ` Samuel Holland 2021-04-19 2:52 ` [PATCH 2/2] arm64: dts: allwinner: " Samuel Holland 2021-04-19 2:52 ` Samuel Holland 2021-04-19 3:17 ` [PATCH 0/2] sunxi: " Chen-Yu Tsai 2021-04-19 3:17 ` Chen-Yu Tsai 2021-04-19 8:54 ` Andre Przywara 2021-04-19 8:54 ` Andre Przywara 2021-04-30 9:10 ` Maxime Ripard [this message] 2021-04-30 9:10 ` Maxime Ripard 2021-04-30 10:55 ` Andre Przywara 2021-04-30 10:55 ` Andre Przywara 2021-05-24 13:56 ` Maxime Ripard 2021-05-24 13:56 ` Maxime Ripard
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=20210430091035.i4zoyzb4c2l22msb@gilmour \ --to=maxime@cerno.tech \ --cc=andre.przywara@arm.com \ --cc=devicetree@vger.kernel.org \ --cc=jernej.skrabec@siol.net \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-sunxi@lists.linux.dev \ --cc=samuel@sholland.org \ --cc=wens@csie.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: linkBe 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.