1. 10

    I use daily Talos workstation, which is powerpc64 / powerpc64le, but I guess it doesn’t count since Rust is available for that.

    1. 2

      wow, those are not cheap. What made you buy one of those instead of a beefed up x86_64 workstation?

      1. 4

        I actually got it for free for development purposes, but I would have bought Blackbird anyway.

        I basically wanted FOSS firmware, I already used coreboot and didn’t like what AMD and Intel did with requiring blobs.

        1. 1

          Out of curiosity: How often do you run into problems where something does not work b/c you are on PowerPC?

          1. 7

            It really depends on what you want to run.

            If you pretty much use only FOSS software, you’re all set. So e.g. Skype, Steam or Zoom won’t work.

            Obviously, that also rules out Wine, but there is PPC64LE port in progress, which will be able to run amd64 Windows binaries when used with Hangover.

            There is also box86 port in progress, which will help with Linux i386 binaries.

            This is all on Linux.

            If you use FreeBSD or OpenBSD, the experience is worse. On FreeBSD, there’s currently no graphic acceleration, but things are pretty much usable (I’m actually a FreeBSD ports dev).

            I have no info about OpenBSD, but I think they still don’t have Rust working, which rules out Firefox at the moment.

            TLDR; It will work just great, if you’re already on Linux and running everything FOSS.

        2. 4

          I bought mine because I have more money than sense, I like PowerPC, and I wanted to support an alternative that actually is comparable in terms of performance. Plus, it’s not an exceptionally exotic architecture. People think it disappeared after the last G5 rolled off the production line and that’s hardly the case. It did largely disappear from the workstation market but it’s not that hard to bring sexy back.

          Your next question is why not buy ARM, and the simple reason is there wasn’t anything I liked as an ARM workstation at the time that was in that performance class, and anyway, ARM will survive just fine.

      1. 4

        There’s still a lot to be done until it actually works.

        Booting on Talos II:

        [   62.144906] kexec_core: Starting new kernel
        Hello, World!
        Copyright (c) 1982, 1986, 1989, 1991, 1993
                The Regents of the University of California.  All rights reserved.
        Copyright (c) 1995-2020 OpenBSD. All rights reserved.  https://www.OpenBSD.org
        
        dar 0x1093c4dd80 dsisr 0x0
        panic: trap type 380 srr1 9000000002803032 at 2537358 lr 2537f60
        
        The operating system has halted.
        Please press any key to reboot.
        
        1. 3

          I have PineBook Pro and would like to try NetBSD. I didn’t ever before use NetBSD, so I would be a total noob (but I use FreeBSD on most of my devices and the rest have OpenBSD so I guess that’s something). However, is it possible to set it up with encrypted root partition on NetBSD?

          1. 1

            In NetBSD, disk encryption is done via cgd(4). The arm64 port supports cgd according to dmesg but full disk encryption isn’t currently supported it seems (I don’t see a kernel module for it on offer to download).

          1. 1

            In the meantime, you are free to look at FreeBSD/powerpc64 which already works on all powerpc64 (including POWER9). There’s a lot of work going on in FreeBSD/ppc land.

            1. 1

              I don’t think I’ve ever had the FreeBSD bootloader work on pSeries…

              1. 1

                Not many people use those, most FreeBSD/powerpc64 use G5 and there’s more and more people using Raptor machines. It’s been also confirmed that FreeBSD works on Amiga X5000, Tyan POWER8 and IBM POWER9 machines.

                1. 1

                  IBM POWER9

                  Probably not those, because those are PowerVM (pSeries), not PowerNV…

                  1. 2

                    Not really. Some are PowerVM, but some are PowerNV. It depends whether they are OpenPOWER machines or not. OpenPOWER machines all (including Raptor machines) use OpenPOWER firmware (Hostboot, Petitboot etc.). IBM machines that are not OpenPOWER use IBM’s proprietary firmware.

                    By IBM POWER9 in my previous post I meant IBM’s OpenPOWER machines (they are available at OSU for FOSS developers). I don’t have any knowledge about whether PowerVM work now, probably no one tried FreeBSD on PowerVM with POWER9.

            1. 3

              Drew DeVault gave a stab at getting a good POWER9 machine

              https://drewdevault.com/2019/09/23/RaptorCS-Blackbird-a-horror-story.html

              I was tempted until I heard about his experience. YMMV Mr. DeVault is a very earnest and knowledgeable guy.

              Other companies may give you a better experience, and RaptorCS may have changed their tune.

              1. 6

                He did write a more positive post about them soon after though, https://drewdevault.com/2019/10/10/RaptorCS-redemption.html

                1. 3

                  I have a Raptor machine myself (Talos II, though it’s far from being a supercomputer, only 8 cores and 96GB RAM). It works great and there are no issues. The experience that Drew described was certainly a one-time problem and he was just unlucky.

                1. 1

                  Last I heard, you couldn’t do nested softraid on OpenBSD. Is that ok now?

                  1. 1

                    You could always do nested softraid. It’s just not brought up at boot time, in this example only the raid1 is configured at boot and the rest has to be configured/mounted manually.

                    So you are not able to boot from an nested softraid, that’s all.

                  1. 1

                    I hope it gets ported to ppc64 (BE).

                    1. 1

                      Shouldn’t be hard. I marked the couple places in the backend where endianess matters and the rest of the DOSBox dynrec patch for the (necessarily) big-endian ppc32 version should work for ppc64. All someone (tm) has to do is Just Do It.(tm)

                    1. 9

                      They could also use POWER9, which was actually the first CPU on the market with PCIe4.0 support.

                      1. 1

                        True.

                      1. 2

                        I use a couple of PC’s. There are two desktops under my desk:

                        1. ASUS KGPE-D16 (2x Opteron 6386SE), 64GB RAM, Radeon RX560.
                        2. Talos II (1x POWER9 8-core), 96GB RAM, Radeon HD7790.

                        I actually use both.

                        Apart from that, I have also ThinkPad X200, but plan to switch to Pinebook Pro next year.

                        1. 1

                          Is the POWER9 64 or 32 threads (SMT8 or SMT4)?

                          1. 3

                            Both. There are SU (scale up, SMT8) and SO (scale out, SMT4) chips. Sforza (variant used in Raptor boards) uses SO. SU are mainly for IBM boards used in enterprise (think AIX or IBM i, which won’t run on Raptor boards).

                        1. 1

                          Hm, found it: https://mail.coreboot.org/hyperkitty/list/coreboot@coreboot.org/thread/ZR7LMBXOFKR5FWVQDI22UB6O3LO5WGQ3/

                          I don’t even use suspend, so not having it doesn’t make it a problem for me. Can we just remove support for S3 for these boards and leave them in the repo?

                          1. 1

                            Somebody maintaining it would be great. Even just reporting to board-status is helpful to show that there’s still somebody using the things that are painful to maintain (that is, it’s worth to continue keeping things alive).

                            1. 1

                              I wanted to submit to board status, but it seems it relies on Linux-only functionality for mktemp (I use FreeBSD). I’ll try to boot Linux LiveCD tomorrow and send it.

                          1. 1

                            “The original plan at the beginning of the summer was to work on the AMD vendorcode; however, after discussion with my mentors we decided to skip it, since with the upcoming deprecations for coreboot 4.11 it might not be around much longer.”

                            I don’t like it, are AMD boards on Bulldozer platform going to be removed?

                            1. 3

                              So FreeBSD is de-facto dropping a bunch of architectures?

                              1. 6

                                From the email:

                                The timeline gives powerpc, mips, mips64, and sparc64 9 months to integrate either into an in-tree compiler, or to have a proven external toolchain solution. This is on top of the many-years-long warnings about this being the end game of the clang integration.

                                Sounds like there is still time and opportunity to keep a few of these architectures going. Folks who care about them apparently need to do a few fixes though.

                                1. 2

                                  Cool, so yes. I can’t imagine mips32, sparc etc landing in LLVM quickly. I guess this will push back RISC-V support too.

                                  1. 4

                                    sparc64 almost seems to work in openbsd with a few patches.

                                    1. 3

                                      Did gcc drop support for those in more recent releases? If not, I would think going the external toolchain route (eg. use gcc from ports) would be a faster fix than waiting for upstream support in LLVM.

                                      1. 1

                                        SPARC has been present in LLVM since 3.x. It’s just a matter of fixing some codegen issues.

                                        That said, FreeBSD/sparc64 has been on life support for years. As much as I hate to say this, it probably should be retired, so people who want to use their SPARCs can migrate to an OS that actually cares about them.

                                        (Hoping that I get time to port musl to sparc64 some time before this 9 months is up…)

                                    2. 5

                                      powerpc, powerpc64 and powerpcspe plan to switch to LLVM once LLVM 9.0 is released.

                                      Per https://lists.freebsd.org/pipermail/freebsd-arch/2019-August/019679.html, it looks like mips64 will also migrate.

                                    1. 3

                                      “We’ll turn off -Werror on gcc 4.2.1 (and MFC it to stable/11 and stable/12).”

                                      This is not ok. It’s a POLA violation since it may break any platform that currently uses base GCC in stable/11 and stable/12. I agree for removal from head but removing it from stable branches is not fine.

                                      1. 7

                                        In case anyone is lost in the jungle of acronyms:

                                        1. 3
                                        2. 1

                                          How would removing -Werror break things?

                                          1. 2

                                            Code that may build with GCC, but cause warnings may cause runtime errors only when built with GCC.

                                            1. 8

                                              GCC 4.2.1 hasn’t been the default compiler on tier-1 architectures for years, and is not shipped in any supported release on tier-1 architectures.

                                              In any case I’d suggest following up to the thread on the freebsd-arch mailing list to raise your concern.

                                        1. 2

                                          Wow, Monza and LaGrange are huge. I thought Sforza was quite big when I compared it live to my older CPU’s.

                                          1. 1

                                            It’s for all the extra memory and bandwidth. Interestingly, Monza and LaGrange are the same size; they spend their size on different tasks.

                                            1. 1

                                              Extra memory and bandwidth, but sadly less PCI-e, so using it for a desktop would be even harder (expandability-wise).

                                          1. 2

                                            1st point is only valid when you compile on i386/amd64. You should do some check on what architecture you compile.

                                              1. 1
                                                1. This is a new development, present in GCC9. Most people will use older compilers for some time.
                                                2. This only adds aarch64, e.g. ppc64 is still affected.
                                                1. 1

                                                  I don’t have arm environment at hand. https://www.phoronix.com/scan.php?page=news_item&px=GCC-8-march-native-ARM says gcc-8 should support -march=native option, is it wrong? Thanks!

                                                  1. 1

                                                    I can assure you it doesn’t work on ppc64 with GCC8 :)

                                                    1. 1

                                                      I think most users use X86 and ARM nowadays. If -march is already supported on these two platforms, I think it should be OK. :-)

                                                      1. 1

                                                        With Raptor boards being widely available, there’s much development happening in ppc64 nowadays, so not having it available on ppc64 is a big minus.

                                                        1. 2

                                                          Some guy gave a whole talk about these annoying shortcuts at asiabsdcon. More people should read his paper. :)

                                                          https://doi.asiabsdcon.org/10.25263/asiabsdcon2019/p02a

                                                          1. 3

                                                            Nice, looks like someone actually read my paper :)

                                            1. 1

                                              If this is similar in severity to Poodle, does that mean all CBC ciphers are doomed?

                                              This will be a major problem for many users, since (AFAIK) this will disable usage of TLS below 1.2. It would be nice if someone could clarify :)

                                              1. 3

                                                These are implementation flaws, but they’re caused by a spec that’s hard to get right.

                                                You can implement CBC mode in a secure way. It’s complicated. The underlying vuln is known since 13 years and people still don’t implement it correctly.

                                              1. 5

                                                I don’t get how they call it “open source”. It doesn’t have a FOSS (at least partially) firmware and uses either Intel’s or AMD’s CPU (both need proprietary firmware).

                                                If open source is your thing, just get Talos II or Blackbird.

                                                1. 7

                                                  They’ve made it pretty clear that the point of the Thelio line is to work toward freeing more and more components of the system over the course of many revisions. This model has the “Thelio I/O” board which frees thermal management and storage. Future products will likely be more free.

                                                  If freedom is your primary concern, you should definitely go with an older and more well-understood system, like the X200. If you need performance, that’s not really an option. I personally moved to the Thelio from a Corebooted ThinkPad because the level of performance it offered wasn’t acceptable for the work I was doing. I still use it as my mobile computing device.

                                                  1. 1

                                                    You compare moving from a laptor to a desktop. If you move to a desktop PC, you can move to Talos or Blackbird, or, if you need amd64, you can get ASUS KGPE-D16. KGPE-D16 is amd64 and can run blobless coreboot.

                                                    All those boards are quite fast, definitely much faster than a usual PC

                                                    1. 8

                                                      Price per performance is drastically out of proportion for all of these systems; either they have very bad price to performance or a very high starting cost. “much faster than a usual PC” is not really an acceptable metric for me; I have some specific tasks I need to do (many-core compilation; real time video transcode; physics simulation; some other things) and a college student budget. Thelio is currently the best solution to get much more openness for a reasonable cost, for me. I note this in the “Go/No Go” section.

                                                      There’s nothing wrong with using one if it fits your use case. I researched all of these options and none of them did.

                                                      1. 1

                                                        KGPE-D16 with two Opteron 62xx is great, that’s my daily driver. a build with that is sub-400 quid

                                                  2. 3

                                                    Or Minifree.

                                                    1. 2

                                                      I have X200 with coreboot, but if I were to buy it now, I wouldn’t do it. It’s better nowadays to get some Chromebook now that we have Panfrost.

                                                      1. 2

                                                        A Chromebook isn’t exactly the match of a ThinkPad.

                                                        1. 3

                                                          It isn’t, but you should compare ThinkPads X200, which are pretty old now (11 years old). With Chromebooks, you can get a better CPU and GPU, but only 4GB RAM and at most 64 GB flash HDD (although you can also insert SD card).

                                                          So it might be better, but it’s certainly a tradeoff. Still, there are no new other laptops that fit my needs, so I’ll probably switch to Chromebook anyway at some point (I’m postponing it until they have at least 8GB RAM).

                                                          1. 1

                                                            I have a ThinkPad X200, so I’m familiar with its performance. Even if you can get a Chromebook with a better CPU/GPU, as you point out you’re limited on RAM and storage (my X200 has 8Gb RAM and fast Samsung SSD), and moreover you miss out on other general ThinkPad features such as durability, user-repairability, and most importantly for me, the TrackPoint. (I’m not going to use any laptop that doesn’t have a decent pointing stick, which pretty much means a ThinkPad.) A small increase in CPU/GPU power isn’t worth it over these other features.

                                                            1. 2

                                                              Just got a ThinkPad recently with first TrackPoint. This is gonna sound really stupid but I just found out how to use the thing. I tried rubbing my finger across it like a track pad since pushing it didn’t do anything. Didn’t get results or really need it. So, I just went with track pad. Your comment made me have another round at it DuckDuckGo’ing this time how people use it. Didn’t expect an official page. So, press then move.

                                                              Well! That’s still weird but makes way more sense. A little playing around with it shows the precision changes with pressure. Which I’m also just now seeing at bottom of linked page at second glance. I’m used to trackpad. Might stick with it for familiarity. Probably will play around with this TrackPoint more in future. :)

                                                              1. 2

                                                                I’ve never really been able to properly use a laptop as a lap-top until discovering ThinkPads with TrackPoints: always had to have some sort of table and plug in a mouse. TrackPoints are pretty intuitive once you get the hang of it. You may need to configure the sensitivity to make it more usable. (Which is not as straightforward as it should be in Linux, but this page has good info: https://wiki.archlinux.org/index.php/TrackPoint .)

                                                        2. 1

                                                          Panfrost isn’t really ready for ‘daily use’, is it? The patches in Mesa seemed to contain a lot of stubs, but I’m definitely no expert so I could have the wrong impression.

                                                          1. 1

                                                            Apparently it’s complete now: https://www.phoronix.com/scan.php?page=news_item&px=Panfrost-Gallium-Update-For-Mid

                                                            I don’t own this hardware so I can’t really check.

                                                            1. 1

                                                              I was mainly referring to this message on the initial panfrost series that was merged in mesa earlier this month: https://cgit.freedesktop.org/mesa/mesa/commit/?id=61d3ae6e0bde93c5601278d1a60c44be655a7cb5

                                                              1. 1

                                                                More things have been merged into the main mesa tree since then. Still, you might (??) still need to use their tree if you wanted to try it out. Though that tree says “lives in upstream” now.

                                                      2. 1

                                                        What’s a Blackbird? It’s such a common name for things I can’t find anything googling.

                                                        1. 4

                                                          It’s a Raptor’s new board ( https://www.raptorcs.com/content/BK1MB1/intro.html ). Smaller (uATX) and designed more for desktop than a server. Also much cheaper.

                                                      1. 1

                                                        What’s the advantage to POWER9 PC?

                                                        POWER9 is faster and more expandable, while having similar price.

                                                        1. 3

                                                          Some people just specifically want an architecture for subjective reasons. I guess RISC-V being a new, cool™ and royalty-free ISA is a factor in this :) The perception of IBM as the uncool enterprise monster too, to a lesser extent.

                                                          tbh, the Raptor Talos line and the SiFive Unleashed (with the expansion board especially) are both incredibly expensive. The only non-amd64 PC platform I’m considering is the Marvell MACCHIATObin.

                                                          1. 1

                                                            Blackbird (also from Raptor) is much cheaper, though.

                                                            1. 2

                                                              Oh, right, the expansion board for the Unleashed is $1999, so we’re looking at $3000 vs $1200 (4-core bundle). I was thinking $2000 (incorrectly assuming the expansion is also $1000) vs $1500 (8-core Blackbird bundle).

                                                              Meanwhile the Macchiatobin is $269 :)

                                                              1. 1

                                                                True, but Blackbird is also much more powerful :)

                                                          2. 3

                                                            In my opinion they are not comparable. It is like looking at ARM and asking, whats the advantage over X64? Well, they have different purposes. POWER9 is targeted at a different set of tasks than RISC-V which is flexible to be used in spaces where MCUs like AVR, PIC and ARM dominate while still scaling up to territories currently covered by ARM and still up to X86 stuff. So it is a very flexible ISA. So far we’ve seen real world boards mostly catering to the MCU space such as the HiFive1 (https://www.sifive.com/boards/hifive1).

                                                            POWER9 is a whole different thing, it scales from WE’RE A FRICKING SERVER to WE’RE A LARGE FRICKING SERVER!!! Yes, you can use it as a Desktop, you can use it fo scientific computing, your build farm, whatever requires a ton of computing but you’d not put a POWER9 as a microcontroller for a router, nor would you build IoT stuff out of it. RISC-V might be a very flexible architecture that permeates a large part of our industry soon, people using the current crop of development boards are just getting ready for when it happens.

                                                            1. 2

                                                              You’re comparing RISC-V (architecture, which may be available in different sizes and prices) to one CPU. If you compare just RISC-V to POWER (so architecture to architecture), you can see that POWER is already available in embedded markets (of course it’s not a free as in freedom architecture, but this wasn’t my point).. But I wasn’t comparing POWER9 to the whole RISC-V architecture, only Unleashed to Talos / Blackbird (which is similar pricewise, but not so in other terms).

                                                          1. 3

                                                            Their boards use coreboot with some patches, so flashing procedure is just the same as other coreboot boards. Basically, obtain ROM image (usually via compilation when using coreboot, but PCEngines provides their own images) and run flashrom to update.

                                                            You could also upgrade to newer coreboot, 4.0 is a pretty old codebase with lots of backports :)

                                                            Note that you can also run vanilla coreboot on your APU (I do).

                                                            1. 1

                                                              You could also upgrade to newer coreboot, 4.0 is a pretty old codebase with lots of backports :)

                                                              Note that you can also run vanilla coreboot on your APU (I do).

                                                              PC Engines is very up-to-date with their bioses, they already have a coreboot 4.9 image available for their devices. I’m running 4.8 without any problems. But as noted in the article, “either the CAM or GEOM layer in FreeBSD 11.2 caused the mSATA to hang, preventing file writes” for which only the legacy 4.0 line has a fix according to PC Engines.

                                                              1. 3

                                                                It may be worth identifying that fix and upstreaming it, so that all future versions have it.

                                                                1. 1

                                                                  I know they are available, but the official images (available at https://pcengines.ch) are still 4.0.

                                                                  1. 1

                                                                    I thought these were also official: https://pcengines.github.io/

                                                                    About

                                                                    3mdeb Embedded Systems Consulting maintains https://pcengines.github.io and https://github.com/pcengines on behalf of PC Engines. Those services are provided as part of our coreboot maintainership package, if you are interested in similar support please contact us.

                                                                    1. 2

                                                                      Yup. Those are official. I linked to that in the article, but I might not have made it prominent enough. I’ll update with that at the top.

                                                              1. 1

                                                                I’m interested in this but haven’t used it. Anybody have any experience actually using coreboot?

                                                                1. 3

                                                                  If you’re running a BSD, then it seems like you might want to stay away.

                                                                  1. 3

                                                                    https://mail.coreboot.org/pipermail/coreboot/2018-December/088044.html indicates that NetBSD doesn’t have that issue.

                                                                    The problem is less in the “project’s origins” as alluded by Bryan, but in the testing that people do: the ThinkPad support is community provided, and apparently most people working on coreboot-on-Thinkpads use Linux.

                                                                    If somebody wants to get to the root of that issue, they can expect a supportive developer community, but coreboot is very much focused on developers, not consumers.

                                                                  2. 3

                                                                    I’m running coreboot on all my PC’s:

                                                                    • PCengines APU2 with OpenBSD
                                                                    • ThinkPad X200 with OpenBSD
                                                                    • ASUS KGPE-D16 with dualboot Gentoo / HardenedBSD
                                                                    • ASUS KGPE-D16 with HardenedBSD

                                                                    I also ran in the past ASUS F2A85-M with dualboot Gentoo / FreeBSD and ASROCK E350M1 with dualboot FreeBSD / 9front.

                                                                    My wife has ThinkPad X230 with Ubuntu.

                                                                    Generally, coreboot has its quirks but once you work it around, it works. If you have some questions, feel free to ask.

                                                                    1. 2

                                                                      Yes, reflashed my ThinkPad x60s some years ago now, had success on dfly, free, open, NetBSD. reflashed it with a new build couple of weeks ago, no issues under NetBSD. Helped someone with an x220 to reflash it a couple of years back and there was not issues on OpenBSD at the time. No idea if there have been any regressions. Currently waiting for a SOIC-8 clip so I can reflash my x230. I use the SeaBIOS payload on the x60s and x220 image I put together, the x230 will likely be the same but I may try tianocore as well. Don’t care for grub.

                                                                      1. 1

                                                                        I “used” it to boot FreeBSD (with non-upstreamed tegra210 patches) on the Nintendo Switch :D (ultimately not that interesting since the only connection to the outside world was a janky UART.. nothing showed up on XHCI when plugging in stuff via a USB-C-to-A adapter)

                                                                        A bit disappointed that there’s no framebuffer support for tegra210 in coreboot. (I thought Google would care to get display as early as possible on the Pixel C, but looks like they trust Linux to always start booting very quickly.)

                                                                        Coreboot also supports the Rockchip RK3399 — because chromebooks — so I’d like to see coreboot on the ROCKPro64, but unlike the Chromebooks, this board has DDR4 memory instead of DDR3, so there’s no memory training code (I wonder if it’s possible to attach the blob?)

                                                                        Also, I wonder if it’s possible to get an RK3399 Chromebook and just replace the depthcharge payload with TianoCore EDK2… (or at least U-Boot, that should work for sure)