[HN Gopher] PowerPC 601 Support Being Retired in Linux 5.10 - Th... ___________________________________________________________________ PowerPC 601 Support Being Retired in Linux 5.10 - The First 32-Bit PowerPC CPU Author : rbanffy Score : 49 points Date : 2020-10-09 11:18 UTC (1 days ago) (HTM) web link (www.phoronix.com) (TXT) w3m dump (www.phoronix.com) | rwmj wrote: | I wonder if anyone using Linux regularly ran it on a PPC 601? | | Because as a former owner of an Itanium[1] I can say that even | when a processor is "officially supported" upstream, unless a | critical mass of people actually use it there are lots of weird | regressions. Debian/ia64 at the time (2015) only partially worked | - lots of common utilities would randomly segfault or fail in | peculiar ways. | | [1] https://rwmj.wordpress.com/2014/09/08/raise-the-itanic/ | https://rwmj.wordpress.com/2015/05/03/raise-the-itanic-part-... | rbanffy wrote: | How covered by automated tests is the kernel? Some tests would | require hardware emulators to some degree, but a lot wouldn't. | cbmuser wrote: | > Debian/ia64 at the time (2015) only partially worked - lots | of common utilities would randomly segfault or fail in peculiar | ways. | | It works reasonably well these days, albeit not perfect. | | There are issues with kernels >= 4.15 on larger NUMA systems, | but otherwise it runs mostly fine. | | Images can be found here: | | > https://cdimage.debian.org/cdimage/ports/ | Scuds wrote: | The kernel people can say one thing, userland people can say | another. | | "It compiles, it runs! No smoke tests. libc is busted? oh well, | patches welcome!" | rbanffy wrote: | I made the same comment above about the kernel. How covered | by automated tests is glibc? | Narishma wrote: | > unless a critical mass of people actually use it there are | lots of weird regressions. | | Even 32-bit x86 has been having some of those weird regressions | these past few years. | gautamcgoel wrote: | How do these old PowerPC processors relate to the latest POWER10 | processors? Is there a recognizable similarity? | apaprocki wrote: | As far as binaries go you can still target the COM instruction | set with the compiler and the same binary will run on any 32/64 | PPC up to the latest POWER chips. | rbanffy wrote: | I was wondering if someone could come up with a POWER9-based | accelerator board for PPC-based Macs. | | Obviously niche, but most amusing. Imagine a 48-core 5 GHz | MacPro G5. | Aloha wrote: | it'd probably totally be.. possible - to get OS X to boot | on a POWER9 system. There seems to be more interest in | getting Classic OS to run on modern hardware though | mhd wrote: | Mac System 9 running on modern hardware, not in an | emulator? | rbanffy wrote: | I'd totally want my Mac work environment running on a | dual socket POWER9 workstation. | Zenst wrote: | Bit like comparing a 8086 to the latest and greatest, still | have support for the instructions of the time, but been lots of | additions since. At least comparing the ISA level. | fiddlerwoaroof wrote: | Didn't PowerPC have some unique extensions that distinguishes | it from the the POWER CPUs? | wmf wrote: | Yeah, but Power3 and onward actually implement the PowerPC | ISA so the differences are smaller than they appear. | johnklos wrote: | No. Not even remotely close. The 8086 was an 8 bit processor | with some 16 bit extensions and segment registers. This is | worlds different than 32 bit x86. They're worlds apart. | | The PowerPC 601 is functionally quite similar to modern 32 | bit PowerPC. | foobiekr wrote: | The 8086 was a 16 bit CPU. Every register is 16 bit as is | the internal and external data bus (the address space is | actually 20 bits, but that's a different issue). | johnklos wrote: | ...except it barely more of a 16 bit processor than a | Z80, and had 8 bit instructions, extendable to longer, | like the Z80. Aside from the 20 bit addressing and 16 bit | offset, the 8088 and Z80 were equivalent. | | Or should we call the Z80 a 16 bit processor? | asveikau wrote: | It's been more than a decade since I wrote any ppc asm and I | don't remember much. | | I imagine they extended the ISA to 64 bits and maybe that was | an opportunity for further ISA changes? | shakna wrote: | The 601 was pre-standard, so I'd imagine that there would be a | huge difference. | | It had the first implementation of the multiprocessing unit, | and lacked the load/store and registry units of all the later | processors. | Scuds wrote: | Not knowing anything I'm guessing it's all embedded/non- | interactive systems, but I can't imagine someone compiling a | brand new new 5.9 kernel with drivers for a twenty year old | board. | protomyth wrote: | Well, wasn't the 601 a bit different than the 603/604 in | instruction sets? I seem to remember there were some difference | from the more refined, later chips. | mrpippy wrote: | The 601 had support for some POWER instructions that weren't | part of the PPC ISA and weren't supported by later chips, I | know Apple's developer notes for these machines mentioned that | you had to avoid those. | Zenst wrote: | Yes, some of the ISA was still be standardised so wasn't until | the later chips that got ratified, so some nuances, though at | hand none I can recall. | https://en.wikipedia.org/wiki/PowerPC_600#PowerPC_601 covers | this aspect at least. | | Also does seem that 32bit support is on the way out, slowly but | surely. | | Though 32bit will be around for a while in some flavour or | another, much like IPv4, it just hangs in there working away. | monocasa wrote: | > Also does seem that 32bit support is on the way out, slowly | but surely. | | I would be very, very surprised if 32bit support was on it's | way out any time soon. | | E500 cores are basically 603e, and they don't really seem to | be going anywhere. | | Killing off the early non standard core that no one has used | in decades anymore is one thing, but 32bit PowerPC support in | general sounds like crazy town to me. | happycube wrote: | e500mc is. e500v1 and v2 aren't even user-space compatible | because Ruiz-era Motorola was cheap and wanted SMD w/o | Altivec, so they replaced the FPU... | monocasa wrote: | They're not user space compatible, but they're very, very | similar uarchs as you can tell from the supervisor SPRs. | cbmuser wrote: | > e500v1 and v2 aren't even user-space compatible because | Ruiz-era Motorola was cheap and wanted SMD w/o Altivec, | so they replaced the FPU... | | Both run the standard Debian powerpc port with a kernel | with FPU emulation enabled. | | There used to be a powerpcspe in Debian which I | maintained where even Rust worked after I added target | support to the Rust compiler (and one very talented | FreeBSD developer improved the LLVM backend). | | However, GCC upstream decided to kill off the powerpcspe | port for GCC 9, so we had to drop it in Debian. | jeffbee wrote: | 32-bit hardware is still widely produced and deployed. Some | desktop-focused distros have dropped 32-bit x86 support but | I'm sure the kernel and toolchain will support 32-bit | platforms for the foreseeable future. Certainly 32-bit ARM | hasn't gone anywhere, and you can't swing a patch cable | without hitting a SuperH. | Teknoman117 wrote: | You also have the kernel recently adopting both 32 and 64 | bit RISC-V. | cbmuser wrote: | > Also does seem that 32bit support is on the way out, slowly | but surely. | | Nah, we're currently even adding LLVM/Rust support for m68k, | so don't worry, 32-bit support isn't going anywhere soon. | rbanffy wrote: | Compiling Rust on a m68k machine would demand some | patience. | monocasa wrote: | I imagine most would be using it as a cross compiler. | theduncan wrote: | from the article. "The PowerPC 601 code also | requires special handling from the rest of the PowerPC 6xx | support still within the kernel, thus it's a maintenance | burden." | | so yes some differences. | rangoon626 wrote: | Incredible that this was being maintained. | rbanffy wrote: | PPC ISA is still used in some embedded devices. | cbmuser wrote: | We are still actively maintaining support for the Motorola | 68000 CPU in the kernel which is even older. ___________________________________________________________________ (page generated 2020-10-10 23:00 UTC)