Hacker Newsnew | past | comments | ask | show | jobs | submit | walterbell's commentslogin

Apple Macbooks support virtualization of Linux on MacOS.


That's a low bar. Microsoft does too, with a much better hypervisor.


Yes, Linux developers are officially supported by both Apple and Microsoft, with Microsoft developers being a major contributor to upstream Linux and WSL2 having grown into a capable Linux development environment.


Asahi focusing on M1 would also encourage secondary market sales of M1 laptops, which are already a primary competitor (see Apple marketing) to current Apple laptops. If Apple wanted to encourage Asahi Linux users to move from M1 or Qualcomm to M5/M6 Apple devices, they could improve device firmware compatibility with Linux, or contribute directly to mainline Linux.


Haha, I can't imagine Apple contributing open source driver code to mainline Linux.

My assumption is that if they ever decided they would provide support for Linux, it would be a private Mac-linux fork.

It's hard to imagine they would go the shim + blob route like nvidia as that would still require upstreaming stuff.

Honestly, they should just document their hardware so we can write our own drivers without hurclean reverse engineering efforts.


A declared winner in the tug-of-war between commercial interests (forced bundling of Vision Pro headset and future smart glasses features into phone and tablets), security of individual users (heretofore claimed as a numerically small subset), collective resistance of users to unwanted UX, national and class-action groups with lawyers to opine on the security of their clients.


How does Ubuntu Linux on recent Qualcomm (ex-Apple Nuvia) Arm laptops compare to Asahi Linux on Apple Silicon?


Most people don't realize that the Asahi team ship features only once they work without quirks. For the set of supported hardware features, Asahi is much closer to a macOS experience than to an average x86 Linux laptop experience.

Meanwhile, Linux on my Lenovo X13s "works" but has tons of quirks: Boot fails 2 out of 3 times, the device hard-resets sometimes when waking up with a display connected, and the speakers are unusable due to lack of active overheat protection (and somehow this affects even external speakers). It technically works, but it's incredibly frustrating to use in practice.

If you plan to use Linux and don't need an ARM laptop, there's little reason to prefer a Qualcomm device over an x86 one currently. On the other hand, M1/M2 easily outperform a broad class of x86 laptops, and they have a Linux experience that's for many use cases close to on par with official vendor support.


Pretty rude to call this ex Apple Nuvia. I don't think any of those lawsuits by Apple or ARM have been won. Qualcomm declares this to be a new chip. But yes it has talent from those places. Still, let's not try to tip the scales of perception quite so indelicately?

I am curious what the boot situation is. It seems like Qualcomm actually has pretty good support for their cores. But since these PC systems sort of lack a bios, each one needing a hand built DeviceTree: it makes supporting them kind of a nightmare. Even a raspberry pi has a much more advanced and accommodating boot environment than these frustrating Qualcomm laptops. Alas. I don't know but I expect Asahi has to do similar hand tailoring. I am curious to know what the boot chain looks like! How much the system willingly helps vs how much hard to be bespoke hand coded system config! (Wish it wasn't like this, it's so bad)


Circular talent economy, https://www.tomshardware.com/pc-components/cpus/legendary-qu...

  Just several months after leaving Qualcomm, distinguished CPU and system architects Gerard Williams, John Bruno, and Ram Srinivasan, who are celebrated for their high-performance processors developed at Apple, Nuvia, and, more recently, Qualcomm, established a new CPU startup — Nuvacore — that promises no less than to 'rewrite the rules of silicon.'


Seems like a good thing, no? People getting paid well to skip around and improve products across the board. A virtuosos cycle, as opposed to the cynical cycle of ruining one project and parachuting to the next.


Also keeps lawyers busy.


Without stirring the pot too much, I’m a bit out of the loop on what the above poster implied and you took slight to. Could you share a little more about this and why you feel what they said was rude?


There's nothing rude about it; the Nuvia CPU core is pretty much the entire selling point of the Snapdragon X Elite product family. Everything else on those chips is underwhelming. But the provenance of the CPU core is really irrelevant to the question of Linux support, which is gated by driver support for the rest of the SoC, which didn't come from Nuvia. So focusing on the Nuvia aspect is a bit of a red herring.


Qualcomm may be a tech company, but they behave more like a pack of lawyers (probably the best in the tech business at extracting money” double dipping”) they will never support Linux in any usable way, not without a huge ongoing fee/payola on their so called partners.


That certainly is what their past looked like!

And in many ways that probably is true. But it's not uninform. There's a lot of places where Qualcomm is clearly working very hard to get upstream, to get mainline support. https://www.phoronix.com/search/Qualcomm

I was super impressed with their work offloading sound to a USB sound card, to let the CPU sleep more. Really wild subsystem to build. And they did it! Kept at it! Really cool stuff to have in the kernel.

They've hired some good people for GPU support, which is rad. I feel like Qualcomm is so so close to having a great system people can genuinely love. But there's always some missing pieces, it's always an end result that is far far far quirkier and more difficult than a PC would be. Some of the other comments in this thread give me some hope that there is a more normal boot chain here at least, that it's other troubles. But it's hard. And Qualcomm only has so much power over what their OEM partners actually build.

Qualcomm is the only name in wifi right now for OpenWRT like systems. MediaTek looks good, is present too, but supposedly their drivers are just a total garbage fire, buggy & crash tastic beyond words.

I think it's important we reassess our old biases. And give some credit where due. Qualcomm has an absolutely forsaken reputation & their lawyerliness is a thing of legend, forbidding as heck. But there are also a lot of signs that at least some of the company is tired of making chips that are utterly unsupportable, and has some real drive towards good open source support. Thank you, warriors of light there.

Really hoping we see some Linux running Snapdragon X2 Elite Extreme units in the next 12 months. Looks like an amazing system! Good job engineering the new cores ya'll!! Amazing performance.


> bit of a red herring

It offers an A/B test of "similar" SoC performance and battery life (which users now expect from laptops), without a vertically integrated operating system that was also created by the company who designed the SoC.


Apple and ARM have sued Qualcomm over the Nuvia talent.


Qualcomm at its heart is a patent troll company. They and Microsoft actually deserve each other. Long-term their partnership will end in tears.

BecauseMicrosoft is at this time in different to the Surface computers they are all in on copilot. It is basically copilot or bust for Microsoft.


> these PC systems sort of lack a bios, each one needing a hand built DeviceTree: it makes supporting them kind of a nightmare.

Modern PC ARM systems like Snapdragon Elite X use UEFI and ACPI. This is actually what makes them difficult, because they're trying to operate in a "new world" while most ARM SOC IP and peripheral drivers work in the "old world."

The issue with ARM has never _really_ been early boot; yes, it's arcane and a pain in the butt on some platforms, but it really only needs to be done once - once your DRAM is trained and running (this is usually the hardest part) and you can load and jump into a kernel, you're set. Hypervisor / security processor driven systems like Qualcomm (and for that matter, Intel and AMD) actually make this even easier at the expense of openness, because the vendor blob usually brought everything up for you already.

The issue has always been hardware discovery and mutable device configuration. When ARM devices were first supported by Linux, they were mostly embedded devices with one configuration, ever. So, they used devicetree, which is a fixed structure for each board, defined before boot and provided by the bootloader.

Because of this, most SOC / platform / IP soft-core drivers were built to work with fixed, proprietary configurations and usually only tested against a single platform to start.

On the other hand, x86 devices have been forced to work as highly mutable, arbitrary combinations of hardware (Plug n Play) with dynamic reconfiguration using ACPI since the start, so the drivers for x86 peripherals have always had to cope with a completely unpredictable environment.

What this means is that there's a ton of effort required to transition ARM _peripheral drivers_ from the "devicetree" world where drivers took fixed arbitrary, proprietary key=value parameters provided by a magic blob at boot to the ACPI world, where everything is dynamic, scripted, and abstract.

I'd actually argue that Pi have the most hacked tooling on top of the "old devicetree way," which means they're the most set on it. Pi peripherals are usually configured at pre-boot time using devicetree overlays and their drivers usually don't support any kind of probing/autodiscovery. As far as I know there's no real plan to change this (and maybe there doesn't have to be; it seems to work for them).

Anyway, this is all to say: I don't think the issue with either system is the "boot situation," it's the "peripheral configuration situation." In this sense, Asahi are actually in a fine situation to use devicetrees, which they do, because basically all of the SOC peripherals are proprietary and there are a fixed number of Apple devices to target and the only external interfaces are existing hot plug standards (USB/Thunderbolt/HDMI/DP). Qualcomm are smart to have started to try to use ACPI, because their SoCs could be hosted on boards with standard peripherals configured in thousands of different ways, like all PCs. But, they're playing on hard mode because most of the existing ARM peripheral drivers weren't made to support this model.


While it's true that early Linux ARM devices where embedded and generally only supported a single configuration, they didn't actually use devicetree.

Originally, embedded Linux ARM devices used a board file with a platform bus and hard-coded device metadata. The bootloader had to pass a machine id which told the kernel which hardware you were running on and which board file to use.

You can see remenants of this in the kernel still, though it's quickly being removed. I'm actually working on a hybrid kernel with the goal of bringing modern Linux support (on an lts branch) to old MSM7x300 devices, like the Evo 4G Shift I intent to use a tmux console/cyberdeck.

On another note, ACPI/UEFI doesn't always give you a clean abstract surface to work with either. ACPI is notorious for building in OS checks into it's compiled bytecode to the point that Linux often lies to it about what OS is running.


I remember that era (and it's still present on some other architectures) - devicetrees were at least a huge improvement over compile-time board config!

> ACPI/UEFI doesn't always give you a clean abstract surface to work with either.

That's putting it lightly. I think the best abstraction would probably land somewhere inside the big gap in the board config headers -> devicetree --------------> ACPI complexity continuum, but I'm not sure it's possible to do that at this point in the game as both sides are so entrenched.

> ACPI is notorious for building in OS checks into it's compiled bytecode to the point that Linux often lies

The problem with ACPI in this dimension is that there's a bidirectional errata game: the bytecode tries to work around the OS and the OS tries to work around the bytecode.

Unfortunately, there was never a real version standard for the Linux firmware interface early on (the _OSI("Linux") debacle), so the only testable versioned ACPI interface is Windows. This means that Linux is basically forced to become a Windows ACPI emulator. I think there are political reasons for this (obviously the 90s and 2000s were a bad time for Linux/Microsoft coexistence) but also just some decisions that look like big engineering mistakes in hindsight - the historic allergy of Linux maintainers to any kind of specified or versioned interface aimed at anything but user land definitely strikes again here.

I think that the versioning/errata issue and the native code trapdoor are the two biggest issues with ACPI (and admittedly both are large enough to drive a bus through); otherwise it's a kind of nasty thing but it fills in nicely for a lot of much nastier ideas and covers a really broad problem space reasonably well.


So much talent, resources and yet-to-be-realized potential already proven by those who have unshackled iPads to use JIT and VMs. In this golden CLI age of LLMs, Apple ships some of the world's best silicon (e.g. M5) for local LLMs on iPad, but it's actively prevented by Apple leadership from running performant CLI apps.


Coming soon to Macbooks, now that Apple's in-house modem removes the need to give Qualcomm a percentage of retail sales price.

iPads offer $2/GB prepaid US data via eSIM.


They will if/when Google does, which may happen this year.


Partially there on Android Pixels with "Linux Terminal". With the rumored convergence of ChromeOS and Android, it should be possible to have a desktop ChromeOS pKVM VM with accelerated vGPU graphics on Android mobile devices that have enough RAM.


When Google ships unified ChromeOS+Android on pKVM on ex-Apple Qualcomm laptops from Dell/HP/Lenovo, Apple executives will have a market-driven reason to make this change. Some iPad improvements appeared after Microsoft shipped Surface 2-in-1.


With smart glasses too, another potential Apple product.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: