mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ash Logan <ash@heyquark.com>
To: arnd@arndb.de, christophe.leroy@csgroup.eu
Cc: "linuxppc-dev@lists.ozlabs.org" <linuxppc-dev@lists.ozlabs.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	officialTechflashYT@gmail.com, AWilcox@Wilcox-Tech.com,
	Michael Ellerman <mpe@ellerman.id.au>
Subject: 32-bit HIGHMEM and game console downstreams
Date: Sat, 13 Sep 2025 20:53:08 +1000	[thread overview]
Message-ID: <3e8cb683-a084-4847-8f69-e1f4d9125c45@heyquark.com> (raw)

Hello!

LWN recently did a piece on 32-bit support in the kernel, and thought as 
a user of 32-bit I would share my 2c. [1]

I maintain a downstream fork of 6.6 to support the Nintendo Wii U 
hardware [2]. I'm also in regular contact with another doing the same 
for the older Wii [3]. Linux on this era of game consoles is doing 
pretty well :)

The Wii and Wii U are both 32-bit PowerPC machines with holes in their 
memory map, which I think makes them interesting for this discussion. 
Let me summarize the hardware and kernels involved:

Wii (2006)
- 1x PowerPC 750CL "Broadway" @ 729MHz
- 24MB "MEM1" + 64MB "MEM2" (non-contiguous - MEM2 starts 256MiB in)
- Kernel 4.19 (+ CIP patchset), dev has been working on forward-porting 
all the drivers one major version at a time (he's currently up to 5.15 
last I checked) + limited upstream support (hardware bringup, UART, not 
many peripherals)

Wii U (2012)
- 3x PowerPC 750CL "Espresso" @ 1.2GHz
- 32MB "MEM1" + 2GB "MEM2" (also starts 256MiB in) + various small SRAMs
- Kernel 6.6 (+ LTS patchset), I also had a run at upstreaming some of 
it in 2022 [4] and would eventually like to go again

Special mention to the GameCube, basically a slower Wii with only 24MB 
direct RAM and 16MB of non-mapped "ARAM". Wii Linux has experimental 
support for this where they use the ARAM as swap.

All of these are flatmem devices, as that's all the 32-bit PowerPC arch 
supports, with the Wii U additionally enabling highmem for its 2GB of 
RAM. Both devices have a small memory area (MEM1) with the "bulk" of RAM 
starting at 256MiB. The Wii U in particular sounds like a candidate 
system for densemem - I would like to read up more about this if I can, 
I was only able to find seemingly unrelated information about CXL when 
searching online.

There is a somewhat active userbase for both devices. I only have stats 
for the Wii U side, but some rough nginx grepping for the last few days 
- Sep 7th-Sep 12th - shows 39 downloads of distribution tarballs and 
bootloader binaries in that period, not including torrents. In the past 
2 weeks - Aug 29th-Sep 12th - 9 people joined the community Discord, 442 
total. Anecdotally, the Wii Linux userbase appears at least twice as big 
(based on their Discord activity).

Distribution-wise, we're supported by ArchPOWER [5], Adélie Linux [6], 
and other distros. The Wii U's Espresso has CPU errata requiring a 
patched compiler, and both distributions ship separate package repos for 
this CPU. ArchPOWER requested I rebase onto 6.6 so they could have 
firmware compression - previously the Wii U was on 4.19 - so there is 
some demand for newer kernel features as well.

I know I'm talking about hobbyist use - and mostly downstream use at 
that - and I do suspect that in the event of a wider 32-bit deprecation 
we'd be fine on the final LTS, whatever that ends up being. Still, I 
think the Wii and Wii U represent a decent number of 32-bit users, so I 
wanted to add to the conversation here.

Thanks,
Ash

[1] https://lwn.net/Articles/1035727/
[2] https://linux-wiiu.org/
[3] https://wii-linux.org/
[4] https://lore.kernel.org/lkml/20221119113041.284419-1-ash@heyquark.com/
[5] https://archlinuxpower.org/
[6] https://www.adelielinux.org/

             reply	other threads:[~2025-09-13 10:53 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-13 10:53 Ash Logan [this message]
2025-09-13 13:52 ` Arnd Bergmann
2025-09-16  1:57   ` Ash Logan
2025-09-16  6:20     ` Arnd Bergmann
2025-09-16  7:00       ` Willy Tarreau
2025-09-16  9:13         ` Arnd Bergmann
2025-09-16 16:58     ` Segher Boessenkool
2025-09-14 14:14 ` Segher Boessenkool
2025-09-16  2:10   ` Ash Logan
2025-09-16 15:41     ` Segher Boessenkool

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=3e8cb683-a084-4847-8f69-e1f4d9125c45@heyquark.com \
    --to=ash@heyquark.com \
    --cc=AWilcox@Wilcox-Tech.com \
    --cc=arnd@arndb.de \
    --cc=christophe.leroy@csgroup.eu \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mpe@ellerman.id.au \
    --cc=officialTechflashYT@gmail.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®