cross-posted from: https://lemmy.world/post/1798744
I’m searching for a Notebook and I came across one that had a Qualcomm Snapdragon 7c which grabbed my attention… My main concern was that the processor specs says:
- Instruction Set: ARMv8-A64 (64 bit)
- Architecture: Kryo 468
Main questions:
- Does Linux already supports this processor?
- What I should look at? Instruction Set (A64) or Architecture (Kyro)?
If you have time to spend… How this CPU compares with an i3 6157U?
It’s complicated.
ARM system initialization doesn’t happen the same way as on x86 (the instruction set your computer is probably using unless you’re on a phone/tablet). On x86, once the CPU is initialized, it can inform the Linux kernel of what hardware is installed and how to talk to it through a protocol called ACPI. Thus, for Linux to work on a system, it must only support the CPU and some necessary hardware (e.g. I doubt you’ll have a usable system if USB, graphics, audio, and networking are unsupported, but otherwise it’s fine).
ARM functions quite differently; ACPI doesn’t exist ACPI is also usable on ARM but Qualcomm refuses to implement it, so instead the Linux kernel has to already know what hardware is installed and where through a configuration file called a device tree blob - basically weird JSON. Therefore it’s not enough that Linux supports the Snapdragon 7c (it does) - there must also be a builtin device tree config for your specific device. There likely is one; a simple way to check would be to look here for your device’s name (the Snapdragon 7c’s codename is SC7180, so the file you’re looking for would be sc7180-$vendor-$model.dts
). If there isn’t and you’re willing to get moderately deep in the weeds, you can write your own device tree source file and load it into the kernel (assuming you have at least a rudimentary familiarity with programming, this is doable with a little dedication).
As for your other questions, you don’t need to worry too much about instruction set and architecture - being ARM will limit what software can run, but emulation is sort of okay too. It will, however, be far more power-efficient than a 6th gen Intel i3 if that’s what you care about - and gut instinct says faster.
It really depends on your usecase, though. If your budget is limited enough that these are serious options, I’d honestly recommend finding a decent second-hand laptop running something a bit better and more recent - but if you run mostly open-source software, don’t care about gaming at all, and are willing to get a little deeper than the average hobbyist for some extra battery life, the ARM laptop might be interesting.
FWIW, ACPI on ARM is a thing, Qualcomm just doesn’t care about their chips
https://www.kernel.org/doc/html/latest/arch/arm64/arm-acpi.html
Thank you for this very detailed answer!
I was looking for a new Notebook for my parents, and they need Windows working as a dual boot and Linux as the main driver. After some research, I found that ARM for Windows was still bad, and we need it to work properly, so I discarded this option. But I appreciated the knowledge you shared with us. Thanks
that sounds like some cheap Chromebook and Chromebooks are not really fun to replace the ChromeOS with GNU/Linux and most people resent to Crostini or Crouton instead which works on top of an existing ChromeOS though
the most important thing here is however the model name of the Chromebook which will determine how easy this process will be and if there actually issues on hardware (like Microphone, Speakers or Trackpad not working correctly on GNU/Linux)