Merged on Friday to the development codebase for the LLVM/Clang 19 compiler is support for the Arm Neoverse N3, V3, and V3AE SoCs.
Arm News Archives
325 Arm open-source and Linux related news articles on Phoronix since 2007.
The good news is that with the upcoming Linux 6.10 kernel cycle the ARM-based Acer Aspire One laptop will feature "almost full" support for this Qualcomm Snapdragon powered laptop. The downside though it's now a three year old device with far more interesting ARM laptops on the market and more powerful options coming to the market this year.
Queued as part of the ARM64 patches in the various "-next" branches ahead of the Linux 6.10 merge window is a script for being able to build Flat Image Trees (FITs). A Flat Image Tree is the compiled Linux kernel paired with the associated DeviceTree content that is compressed and easily then distributed and executed by capable bootloaders.
Arm China is looking at upstreaming their "Zhouyi" NPU driver into the Linux kernel via the recently-created accelerator "accel" subsystem. The Arm China Neural Processing Unit (NPU) driver in its current form has both an open-source kernel and user-space stack.
The open-source Panthor DRM driver for supporting newer Arm Mali GPUs was queued in drm-misc-next at the start of March ahead of the Linux 6.9 merge window. It ultimately though didn't see a drm-misc-next pull to DRM-Next ahead of the Linux 6.9 merge window and thus being held off until the Linux 6.10 cycle. This week though that drm-misc-next submission to DRM-Next took place as that driver and other changes begin queuing for Linux 6.10.
Following last week's main set of power management updates for Linux 6.9 that saw AMD P-State Preferred Core support and tuning for Intel Meteor Lake, a secondary set of power management subsystem changes were sent out today for this new kernel.
All of the ARM64 (AArch64) feature updates have been merged for the Linux 6.9 kernel. Besides the new SoC and platform hardware support, there are a few ARM64 architecture updates worth pointing out.
The 64-bit Arm (AArch64) little-endian kernel will be ready to support the Rust kernel code with the upcoming Linux 6.9 cycle.
While we are still waiting to get our hands on AmpereOne hardware for Ampere Computing's in-house design Arm cores with up to 192 cores, Friday night Git activity to LLVM has revealed an "Ampere1B" core.
As the first of Arm Mali firmware to be added to the linux-firmware.git repository, the Gen10 Mali "Panthor" firmware has been added as part of the effort on the new open-source Panthor DRM kernel driver currently working its way upstream.
All of the ARM SoC and platform driver changes have been submitted for the Linux 6.8 kernel that include bringing up the latest Qualcomm Snapdragon SoCs, enabling various low-cost gaming handheld console devices, finally upstreaming Google Tensor G1 support, and other hardware additions.
ARM11 MPCore support for the early ARMv6 multi-processor (SMP) support is set to be retired with the upcoming Linux 6.8 kernel cycle.
The upcoming Linux 6.8 kernel cycle will be adding mainline support for several low-cost ARM Linux handheld gaming consoles that are suitable for running retro games, older game emulators, and other lightweight software.
With patches pending for creating an Acer Aspire 1 embedded controller driver, this Qualcomm Snapdragon powered ARM laptop has "almost full support" with the upstream Linux kernel.
All the pieces have been aligned that the mainline Linux 6.8 kernel should be able to boot on the Qualcomm Snapdragon 8 Gen 3 SoC without any out-of-tree patches being necessary.
Ampere Computing has sent out its latest patch attempt at increasing the number of Arm CPU cores supported by the mainline Linux kernel. As it stands at the moment the 64-bit ARM mainline Linux kernel build supports 256 cores, which can be exceeded with Ampere's new AmpereOne processors in a multi-socket configuration.
Microsoft released CBL-Mariner 2.0.20230924 this week as the newest version of their in-house Linux distribution. The driving force behind this release is to get out rebuilt AArch64 packages following the recent GCC security vulnerability that affected Arm 64-bit built software.
The various Arm platform and SoC changes have been submitted for the ongoing Linux 6.6 merge window.
While Ampere Computing's wares with the Altra (Max) and forthcoming AmpereOne families of AArch64 server processors are designed for the data center, if you feel so inclined they have published a guide on being able to run Steam for Linux on these ARM64 processors -- including Steam Play (Proton) for enjoying Windows games on these Linux servers.
While Intel is well known -- and well regarded -- as being one of the top contributors to the Linux kernel as well as being a significant player in many other open-source projects with their countless open-source software contributions over the years, Arm is now trying to better promote their open-source support and open contributions.
A set of 35 patches were posted on Sunday for introducing ARM64 Guarded Control Stack (GCS) support to the Linux kernel. This is akin to x86 Shadow Stack support for hardware-protected stacks of return addresses to help fend off ROP attacks.
The ARM64 (AArch64) architecture code has seen some clean-ups and support for new Arm ISA features with the in-development Linux 6.5 kernel.
Arm and NXP engineers have posted the initial open-source Linux driver patches for an Ethos-U driver for their machine learning processor to enable Linux to dispatch AI inference jobs to the hardware. It's yet another inference/accelerator driver working its way toward the mainline kernel but is off to a rocky start with many code issues being raised.
For helping to ensure optimal performance of AArch64 binaries generated by LLVM/Clang for the Neoverse-V2 processor cores, LLVM 17 Git has received a proper Neoverse-V2 scheduling model.
Arm today announced the new high-end Cortex-X4 CPU core design for delivering their most powerful Cortex compute cluster.
On Monday the ARM64 (AArch64) architecture code changes were submitted for the in-development Linux 6.4 kernel along with the various SoC updates and various platform/machine additions for ARM hardware with this new kernel version.
Toward the end of last year Arm detailed Scalable Matrix Extension 2 (SME2) for adding more capabilities to Armv9-A around speedy matrix processing. Merged this morning is initial support for SME2 within Binutils as part of the GNU compiler toolchain for the GNU Assembler.
In addition to the mainline Linux kernel seeing recent support for the Arm-powered Lenovo ThinkPad X13s and Lenovo Yoga C630, among others, another Lenovo model working toward mainline kernel support is the Lenovo Flex 5G.
Along with all of the Arm SoC and board updates that were merged to the mainline Linux 6.3 kernel earlier in the week, the ARM64 (AArch64) architecture changes have also landed for this next Linux kernel version.
Ahead of the Linux 6.3 merge window officially opening up following the Linux 6.2 stable release tomorrow, Arnd Bergmann has already mailed in his pull requests of the Arm SoC and defconfig updates for this next kernel version. Most notable is having mainline support for the Qualcomm Snapdragon 8 Gen 2 as well as some other new, high-end embedded SoCs.
While initial Scalable Matrix Extension (SME) support for the Linux kernel only was mainlined last year to the kernel tree, Arm already has SME 2 and SME 2.1 support on the way to mainline.
Arm ended out January by publishing an early request for comments (RFC) version of its Confidential Compute Architecture (CCA) support for the Linux kernel so there can be KVM virtualization integration around Arm CCA, a KVM user-space ABI for managing Realms, and Linux guest support for Arm Realms.
Much of the Rust programming language support/infrastructure for the Linux kernel thus far has been with an x86_64 focus while obviously AArch64 is an important target as well. It's nice to see Arm Limited engineers working on the Rust Linux kernel support for AArch64/ARM64.
The Armv8.1-M based Cortex-M85 processor support has made it into the GCC 13 compiler for this highest performing Cortex-M processor use for MCUs and embedded applications.
The SoC tree's "for-next" branch has picked up a big set of patches that is set to lighten the kernel by 154k lines of code, documentation, and DeviceTree files in clearing out some old drivers and obsolete board/machine support.
Ampere Computing's SMPro is a system control processor that is an Arm Cortex-M3 serving as a co-processor and handles interfacing with the BMC, error handling, system booting, power fail detection, and other tasks. The SMPro is found starting with Ampere Computing's current Ampere Altra server processors while in Linux 6.2 a lot of its functionality is finally being upstreamed into the mainline Linux kernel.
The 64-bit Arm (ARM64 / AArch64) architecture improvements have landed in the Linux 6.2 kernel.
All of the Arm SoC support additions and DeviceTree updates have been merged for the Linux 6.2 merge window. There is support for a number of additional Qualcomm Snapdragon SoCs in the kernel as well as having the initial mainline bits for the Apple M1 Pro/Ultra/Max SoC variants.
Leading AArch64 server processor vendor Ampere Computing announced this summer AmpereOne as the branding for their next-generation AArch64 "cloud native" server processor design succeeding their current Ampere Altra / Ampere Altra Max processors based on Neoverse-N1. While the AmpereOne processors have yet to be formally launched, with the new AArch64 core being an original design, Ampere Computing has already been submitting support patches to the open-source compilers. The latest twist in this enablement is now acknowledging a new "Ampere-1A" variant.
The Linux kernel built with Clang has supported Shadow Call Stack "SCS: to prevent return address overwrites. With patches building up for Linux 6.2, Dynamic Shadow Call Stack is being implemented to avoid the overhead of SCS on processors supporting pointer authentication (PAC).
Made public earlier this year was Spectre-BHB / BHI as a speculative execution vulnerability similar to Spectre V2 and affecting Intel and Arm CPUs. At the time Neoverse N2 / N1 / V1 and older cores like Cortex-A15 / A57 / A72 were known to be vulnerable and required software mitigations. The upcoming AmpereOne is also vulnerable to Spectre-BHB and has a patch now on its way to the Linux kernel for mitigating this Spectre class vulnerability.
The 64-bit Arm (ARM64 / AArch64) architecture changes were merged last week for the ongoing Linux 6.1 merge window.
The Arm SoC and platform enablement pull requests were sent out this morning that provide the Linux 6.1 kernel with support for several new SoCs, various platforms including some newer smartphones, and other hardware support improvements.
Disclosed back in March was the Spectre-BHB / Branch History Injection (BHI) speculative execution vulnerability that on the Arm side affected CPUs from the likes of the Cortex-A15 through A78 series as well as the likes of the X1, X2, and A710, plus the Neoverse E1 / N1 / N2 / V1 CPUs. Now for Linux 6.1, a command-line option is being added for ARM64 to be able to disable the Spectre-BHB mitigation due to the "great impact" to performance.
When it comes to Linux on Arm laptops the recent excitement has been around the Asahi Linux porting work for the Apple M2 MacBooks and Linux 6.0 supporting the Qualcomm Snapdragon 8cx Gen3 and the flagship Lenovo ThinkPad X13s Arm laptop. Launched a few years ago though was the Lenovo Yoga C630 powered by a Qualcomm Snapdragon 850 and thanks now to the work of Linaro that older Arm laptop is seeing Linux support improvements.
The 64-bit Arm (ARM64) architecture updates have already been sent in for Linux 5.20 ahead of the merge window formally opening.
The "THP_SWAP" option for the Linux kernel allows swapping transparent huge-pages in one piece without splitting. With Linux 5.20 the 64-bit Arm kernel (ARM64 / AArch64) will now support this option as a performance optimization.
When it comes to compressing textures using the Adaptive Scalable Texture Compression (ASTC) format that is supported by the OpenGL / OpenGL ES / Vulkan APIs, Arm's ASTC Encoder has long reigned supreme. Out today is ASTC-Encoder 4.0 as the latest performance-boosting update to this open-source compressor.
A feature supported by the GNU Compiler Collection (GCC) that sadly isn't used more often is function multi-versioning (FMV) for supporting multiple versions of a function with the given function selected based upon the target processor in use. GCC FMV on x86_64 allows for different functions to be used whether supporting SSE4.2, AVX, or even a particular CPU micro-architecture. Arm is finally working on GCC function multi-versioning support for AArch64.
Support for Arm's Cortex-M85 based on Armv8.1-M has been added for the LLVM 15.0 compiler release this fall.
325 Arm news articles published on Phoronix.