Mali-G78 GPU’s Valhall instruction set documentation released after reverse-engineering work

Arm Mali Valhall GPU product matrix

Collabora has been working on Panfrost open-source GPU driver for Arm Mali Bifrost and Midgard GPU for several years, and even getting official support from Arm. But apparently, that support does not include documentation for Mali-G78 GPU and other recent Arm Valhall Mali GPUs, as the company recently reverse-engineered Mali-G78 for about a month before releasing the documentation on the Valhall instruction set (PDF). Other results from the reverse-engineering include an XML architecture description that can be parsed by programs,  as well as a Valhall assembler and disassembler that were used as a reverse-engineering aid. Besides Mali-G78 “Borr” GPU, the work will be useful for other Valhall GPUs include Mali-G77 “TryM’, Mali-G57 “Natt-A/B”, Mali-G68 “Ottr”, and Mali-G78AE “Borr-AE” for automotive & industrial applications. Alyssa Rosenzweig explains Collabora’s work that was based on the International edition of the Samsung Galaxy S21 phone powered by Samsung Exynos 2100 system-on-chip with a Mali-G78 […]

Linux 5.12 – Main Changes, Arm, MIPS and RISC-V Architectures

Linux 5.12

Linux 5.12 release was expected last Sunday, but Linus Torvalds decided to release one more release candidate, namely Linux 5.12-RC8, to “make sure things are all settled down“, so the latest Linux kernel is now expected this weekend.  Tihs should not yield any significant changes, so we can check what’s new in Linux 5.12, notably with regards to Arm, MIPS, and RISC-V architectures often used in SoC’s found in embedded systems. Around two months ago, the release of Linux 5.11 added support for Intel’s software guard extensions (SGX) and Platform Monitoring Technology (PMT), AMD “Van Gogh” and “Dimgrey cavefish” graphics processors, MIPI I3C host controller interfaces, and much more. Some interesting changes in Linux 5.12 include: Added support for ACRN hypervisor designed for IoT & embedded devices Added support for Playstation DualSense & Nintendo 64 game controllers, as well as Nintendo 64 data cartridges Dynamic thermal power management via a […]

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

Linux 5.11 release

Linus Torvalds has released Linux 5.11 just in time for… “Valentine’s Day”: Nothing unexpected or particularly scary happened this week, so here we are – with 5.11 tagged and pushed out. In fact, it’s a smaller-than-average set of commits from rc7 to final, which makes me happy. And I already have several pull requests lined up for tomorrow, so we’re all set for the merge window to start. But in the meantime – and yes, I know it’s Valentine’s Day here in the US – maybe give this release a good testing before you go back and play with development kernels. All right? Because I’m sure your SO will understand. Linus Last time around, Linux 5.10 was an LTS release that added EXT-4 performance enhancements, improved post-Spectre performance, as well as the enablement of BCM2711 (Raspberry Pi 4) display pipeline, among other many changes. Some of the notable changes in […]

Samsung Exynos 2100 5G mobile SoC offers Cortex-X1 core, LPDDR5 memory and more

Samsung Exynos 2100

Following the introduction of Qualcomm Snapdragon 888 5G premium processor last December, Samsung has now unveiled the Exynos 2100 5G mobile SoC with many of the same features and specifications. The new 5G processor notable features a similar eight-core design with one Cortex-X1 core, three Cortex-A78 cores, and four low-power Cortex-A55 cores, 26 TOPS of AI computing, support for 4K UHD displays, as well as a 5G modem built into the chip. Samsung Exynos 2100 key features and specifications: SoC – Octa-core processor with Single-core Cortex-X1 @ up to 2.9GHz Triple-core Cortex-A78 @ up to 2.8GHz Quad-core Cortex-A55 @ up to 2.2GHz GPU – Mali-G78 MP14 AI Accelerator – 26 TOPS triple NPU Memory – LPDDR5 (51.2GB/s) Storage – UFS 3.1 Display – 4K/WQUXGA @ 120Hz max, QHD+ @ 144Hz max; HDR10+ support Cellular Modem 5G NR Sub-6GHz 5.1Gbps (DL) /1.92 Gbps (UL) 5G NR mmWave 7.35Gbps (DL) /3.67 Gbps […]

Linux 5.10 LTS release – Main changes, Arm, MIPS and RISC-V architectures

Linux 5.10 release

Linus Torvalds has just released Linux 5.10: Ok, here it is – 5.10 is tagged and pushed out. I pretty much always wish that the last week was even calmer than it was, and that’s true here too. There’s a fair amount of fixes in here, including a few last-minute reverts for things that didn’t get fixed, but nothing makes me go “we need another week”. Things look fairly normal. It’s mostly drivers – as it should be – with a smattering of fixes all over: networking, architectures, filesystems, tooling.. The shortlog is appended, and scanning it gives a good idea of what kind of things are there. Nothing that looks scary: most of the patches are very small, and the biggest one is fixing pin mapping definitions for a pincontrol driver. This also obviously means that the merge window for 5.11 will start tomorrow. I already have a couple […]

Box86 is an x86 Emulator for Raspberry Pi and other 32-bit Arm platforms

Box86 x86 emulation Raspberry Pi

Last week, we wrote about Raspberry Pi 4 Vulkan project status and future plans, and one person commented they are currently trying to get dxvk to work Box86, and that CNX Software should write about the latter. Cool, but what does that mean? dxvk is an open-source Vulkan-based implementation of D3D9, D3D10, and D3D11 for Linux,  and Box86 is a Linux userspace x86 emulator that works on 32-bit Arm targets like the Raspberry Pi SBC. Nice, and I remember I ran x86 Linux and Windows on Raspberry Pi a few years ago using a closed-source commercial program called Exagear, but having an open-source solution is even better. That means 64-bit Arm is not supported at all, and Box86 can not even be built for Aarch64 targets. Since many x86 games require OpenGL, as opposed to OpenGL ES, Box86 works best in conjunction with gl4es. By installing Box86 on Raspberry Pi […]

Samsung Exynos 1080 Octa-core Cortex-A78/A55 5G SoC includes Mali-G78 GPU

Arm Cortex-A78 CPU core and Mali-G78 GPU were announced in March 2020, and yesterday we covered the first Cortex-A78 processor with MediaTek MT8195 that should feature a Mali-G57 GPU. But today, Samsung has announced the first SoC to combine both Cortex-A78 cores with Mali-G78 GPU. Exynos 1080 octa-core processor also includes a 5G NR modem, supports for LPDDR5 memory, UFS 3.1 storage, and manufactured with a 5nm process. Samsung Exynos 1080 key features and specifications: CPU Single-core Cortex-A78 @ 2.8 GHz Triple-core Cortex-A78 @ 2.6 GHz Quad-core Cortex-A55 @ 2.0 GHz GPU – Mali-G78 MP10 AI Accelerators – Neural processing unit (NPU) and Digital Signal Processor (DSP) Memory – LPDDR5 / LPDDR4x Storage – UFS v3.1 Display – WQHD+ @ 90Hz; FHD+ @ 144Hz; HDR10+ Camera – Single-camera Up to 200MP, dual-camera 32MP+32MP Video – 4K 60fps encoding and decoding with HEVC(H.265)/H.264/VP8/VP9 (10-bit only with HEVC & VP9) Connectivity Cellular […]

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

Linux 5.9 release

Linus Torvalds has just announced the release of Linux 5.9 on lkml: Ok, so I’ll be honest – I had hoped for quite a bit fewer changes this last week, but at the same time there doesn’t really seem to be anything particularly scary in here. It’s just more commits and more lines changed than I would have wished for. The bulk of this is the networking fixes that I already mentioned as being pending in the rc8 release notes last weekend. In fact, about half the patch (and probably more of the number of commits) is from the networking stuff (both drivers and elsewhere). Outside of that, the most visible thing is a reinstatement of the fbdev amba-clcd driver – that’s a noticeable patch, but it’s basically just mainly a revert. The rest is really really tiny (mostly some other minor driver updates, but some filesystem and architecture fixes […]