Few supported_models strings please (CM3 Lite, CM3+ Lite & Pi 400)
matthuisman opened this issue · comments
These are the strings used for matching NOOBS / PINN compatible OS's (supported_models)
Can anyone confirm Raspberry Pi Compute Module 3 Lite would be Pi Compute Module 3 Lite Rev
And that the Pi 400 is using Pi 4 Model B Rev
"Raspberry Pi 400 Rev 1.0"
i was about to say that no OS's would match that... but "Pi 4" would actually match that 👍
Wait... isn't the matching done on start of string? so Pi 4 wouldn't match to Raspberry Pi 400
Nevermind, I see here:
Line 470 in 0082207
just found there is a CM3+ Lite and CM4 Lite as well.
would that be Raspberry Pi Compute Module 3 Plus Lite Rev...
Might just group the Lites with the non-lites. pretty sure no difference software wise..
I don't have any CM4s, but I think I have a CM3 Lite - if I remember I'll try digging it out tonight and see what /proc/cpuinfo
and /proc/device-tree/model
says.
However IIRC the "Lite" compute-modules don't actually "know" that they're "Lite" modules, as they just see the (external) SD card attached to exactly the same pins as the (internal) eMMC would be.
Scanning the DTB files for strings yields the following list, but it is not complete (e.g. no Pi 400) as I think the firmware can make some adjustments.
Raspberry Pi Zero W
Raspberry Pi Model B
Raspberry Pi Model B+
Raspberry Pi Model B
Raspberry Pi Compute Module
Raspberry Pi Zero
Raspberry Pi Zero W
Raspberry Pi 2 Model B
Raspberry Pi 2 Model B rev 1.2
Raspberry Pi 3 Model B
Raspberry Pi 3 Model B+
Raspberry Pi Compute Module 3
Raspberry Pi 4 Model B
Raspberry Pi Compute Module 4
Sometimes things have to be deliberately obfuscated before products are launched, for obvious reasons 😉
Ahh! I spent a tedious evening a couple of weeks ago swapping SD cards, HDMI cables, power cables, USB cables, etc. back and forth, and managed to collate this list (forgot to post it earlier). I couldn't find my CM3+, and I don't have a CM4 yet (and I couldn't be bothered to flash the eMMC on a CM1). Details were copied by hand from the HDMI output (i.e. not copy'n'pasted from SSH) so there may be transcription errors.
Revision | Model |
---|---|
0x0002 | Raspberry Pi Model B Rev 1 |
0x0008 | Raspberry Pi Model A Rev 2 |
0x000e | Raspberry Pi Model B Rev 2 |
0x0010 | Raspberry Pi Model B Plus Rev 1.2 |
0x0012 | Raspberry Pi Model A Plus Rev 1.1 |
0x0015 | Raspberry Pi Model A Plus Rev 1.1 |
0x900092 | Raspberry Pi Zero Rev 1.2 |
0x9000c1 | Raspberry Pi Zero W Rev 1.1 |
0x9020e0 | Raspberry Pi 3 Model A Plus Rev 1.0 |
0xa02082 | Raspberry Pi 3 Model B Rev 1.2 |
0xa020a0 | Raspberry Pi Compute Module 3 Rev 1.0 |
0xa22042 | Raspberry Pi 2 Model B Rev 1.2 |
0xb03111 | Raspberry Pi 4 Model B Rev 1.1 |
0xc03130 | Raspberry Pi 400 Rev 1.0 |
0xd03114 | Raspberry Pi 4 Model B Rev 1.4 |
EDIT: And the CM3 in that list above was indeed a "Lite" model.
@lurch
Do you have the string for the Pi Zero 2 W?
Raspberry Pi Zero 2 W Rev ?
If so, how can an OS target the origin Zero and Zero W and not the new model?
Raspberry Pi Zero Rev
Raspberry Pi Zero W Rev
Raspberry Pi Zero 2 W Rev
"Pi Zero Rev" would not include the original W
So maybe two entries would be needed?
I don't have a Raspberry Pi Zero 2 W yet, but raspberrypi/linux@84dc624 says "Raspberry Pi Zero 2".
So yeah I guess you'd need multiple entries to signify support for Zero & Zero W but not Zero 2 W 🤷♂️
Thank you:)