Panfrost is an Open Source Driver for Arm Mali Midgard GPUs

Panfrost open source arm gpu driver

Getting GPU drivers to work on Linux with Arm SoCs was really a struggle a few years ago due to close-sources binary blobs that required all bugs to be fixed by a single team. But in recent years we’ve seen good progress with open source mobile GPU drivers including Freedreno for Adreno GPUs, and Etnaviv for Vivante GPUs. Arm Mali also got its own open source Lima driver worked on for many years but only for older Utgard GPUs (Mali 400, Mali 450). However, during the Opensource GPU Drivers BoF at Linaro Connect Bangkok 2019, Rob Herring, Technical Architect at Linaro and Tomeu Vizoso, Principal Software Engineer at Collabora, discuss the status of drivers, and I learned about an open source driver for Mali Midgard (Mali-T6xx, Mali-T7xx) GPU called Panfrost. As we’ll see below, the driver is already capable of running basic demos, has been upstreamed to Mesa, and tested on Rockchip RK3288 / R3399, and Amlogic S912 with respectively …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

ClearFog ITX Workstation May be the Ultimate Arm Developer Platform

ClearFog ITX Workstation

Most people are still doing Arm development work on x86 platforms, because there aren’t really any viable equivalent in the Arm world. Current options include Edge Server SynQuacer E-Series (aka Linaro Developer Box), a $1,250 Arm PC shipping with a 24-core Arm Cortex-A53 processor, 4GB RAM (by default), a 1TB hard drive, and Geforce GT710 graphics cards, as well as the much more powerful GIGABYTE ThunderXStation workstation with up to two Cavium ThunderX 32-core Armv8 processors,  32GB to 128GB RAM configuration, NVMe storage, and more. The former was a good place to get started, but the Arm Cortex-A53 cores clicked at 1GHz provided limited performance, and the GIGAGYTE workstation costs over $12,000, so it’s only suitable for projects with specific needs and/or a high expected return on investment. That’s why there will be a discussion about Designing a next generation ARM Developer Platform at Linaro Connect 2019 next week in Bangkok, Thailand. But courtesy of SolidRun, there may already be …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

PINE64 Plans to Move their Website on a 24-node RockPro64 Cluster

24-node RockPro64 Cluster

Boards’ clusters are always fun to see, and PINE64 has shared pictures of two RockPro64 clusters with respectively 48 and 24 boards neatly packed into  partially custom enclosures. The  48-node cluster will feature a total of 288 cores, including 96 Arm Cortex-A72 cores and 188 Cortex-A53 cores, as well as 192GB of LPDDR4 RAM. Low cost development boards may be seen as toys by some, so it’s interesting to learn that PINE64 plans to move their complete website infrastructure including the main website, a community website, forums, wiki, and possibly IRC on the 24-node cluster, while it seems the 48-node cluster may be used for their build environment. The company has just completed the assembly of the clusters, and did not disclose the full technical details just yet. However, a progress report may be written in due time. Once the migration is done, and everything works as it should, it will be a good showcase of the stability of RockPro64 …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

PYNQ-Z2 Python FPGA Board Adds Raspberry Pi Header, 24-Bit Audio Codec

PYNQ-Z2

PYNQ-Z1 is a board by Digilent powered by Xilinx Zynq-7020 Arm Cortex-A9 + FPGA SoC that’s designed specifically for PYNQ, an open-source project that aims to ease the design of embedded systems with Xilinx Zynq Systems on Chips (SoCs) by leveraging the Python language and libraries. PYNQ-Z2 is very similar to PYNQ-Z1, but it’s made by Taiwanese company TUL, and the board is slightly longer to allow for an extra 40-pin Raspberry Pi compatible header, and Analog Devices ADAU1761 24-bit audio codec. PYNQ-Z2 board specifications: SoC – Xilinx Zynq-7020 (XC7Z020-1CLG400C) dual core Arm Cortex-A9 processor @ 650 MHz with FPGA with 13,300 logic slices, each with four 6-input LUTs and 8 flip-flops System Memory – 512MB DDR3 Storage – Micro SD card slot, 16MB QSPI Flash with factory programmed globally unique identifier (48-bit EUI-48/64 compatible). Video – HDMI In and HDMI Out Audio – Mic in, Line Out  ADAU1761 codec with 3.5mm HP + Mic jack, 3.5mm Line in jack …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Linux 5.0 Release – Main Changes, Arm, MIPS & RISC-V Architectures

Linux 5.0 Changelog

Linus Torvalds has just released Linux 5.0: Ok, so the last week of the 5.0 release wasn’t entirely quiet, but it’s a lot smaller than rc8 was, and on the whole I’m happy that I delayed a week and did an rc8. It turns out that the actual patch that I talked about in the rc8 release wasn’t the worrisome bug I had thought: yes, we had an uninitialized variable, but the reason we hadn’t immediately noticed it due to a warning was that the way gcc works, the compiler had basically initialized it for us to the right value. So the same thing that caused not the lack of warning, also effectively meant that the fix was a no-op in practice. But hey, we had other bug fixes come in that actually did matter, and the uninitialized variable _could_ have been a problem with another compiler. Regardless – all is well that ends well. We have more than a …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

NXP i.MX 8M Nano is a Power-optimized Arm Cortex-A53/M7 Processor

NXP i.MX 8M Nano

NXP introduced their first 14nm i.MX processor at Embedded World 2018 last year with i.MX 8 Mini processor equipped with up to four Cortex A53 cores clocked at 2.0 GHz and one real-time Cortex-M4 cores clocked at 400+ MHz, and optional 1080p video output and decoding/encoding. The company has now added another 14nm member to their i.MX 8M family with NXP i.MX 8M Nano family also featuring four Cortex-A53 cores at up to 1.5 GHz, but replacing the Cortex-M4 by a more powerful Cortex-M7 core clocked at up to 600 MHz. The processor is also power-optimized for less than 2W total dynamic power (TDP) and sub-watt in many IoT edge applications. NXP i.MX 8M Nano key features and specifications: Application cores – One to four Arm Cortex-A53 cores up to 1.5 GHz per core; 32KB L1-I Cache/ 32 KB L1-D Cache; 512 KB L2 Cache Real-time core – Arm Cortex-M7 at speeds of up to 600 MHz; 16 KB L1-I …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Systems-on-Module Market Update – An Interview with Toradex CMO

Daniel Lang Toradex CMO

I’ve been interviewing Daniel Lang, Toradex Chief Marketing Officer (CMO), over email just before Embedded World 2019, to learn a bit more about the system-on-module market, and what’s ahead. CNXSoft: We’ve already covered several Toradex systems-on-module and development kits on CNX Software, but for readers who may not know Toradex yet, could you provide a short description of what the company does in the embedded systems space? Daniel Lang: Thanks for having me. Toradex builds high reliable Arm-based System on Modules. Our focus is to make the life of developers easier and to reduce the complexity and time-to-market. We sell hardware, but most of our engineering resources focus on Software and Support. Our products are used in areas such as Industrial Automation, Medical, Transportation, Test and Measurement, Building Automation and many more. CNXSoft: Could you explain why / what type of customers go the SoM route instead of designing for a complete custom single board computer? DL: Toradex SoMs are …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Arm Neoverse E1 & N1 Processors Target Edge and Cloud Infrastructure

Neoverse E1

Arm has just announced two new processors for compute workloads with a power efficient Neoverse E1 platform targeting edge devices like 5G base stations, as well as the more powerful Neoverse N1 platform designed for the cloud, and aiming at challenging Intel Xeon processors. Arm Neoverse E1 Key specifications and features of Arm Neoverse E1: Simultaneous Multithreading (SMT) supporting two threads concurrently Up to 8 cores (16 threads) per cluster Superscalar, out-of-order pipeline Configurable private L2 cache Configurable L3 cache Low-latency Accelerator Coherency Port (ACP) for closely coupled accelerator integration Support cache stashing into L2/L3 cache Arm Neoverse E1 is the first Arm processor to support SMT and is best suited for data plane compute workloads such as 4G/5G transport, software-defined networking, software-defined storage, and SD-WAN. The platform features a scalable architecture suitable for 10Gb wireless/wireline devices to high-performance 100G+ Dataplane Processing Unit (DPU). Arm developed a 5G small cell transport software prototype which simulates packet processing workloads at a …

Support CNX Software – Donate via PayPal or become a Patron on Patreon