Tag Archives: Driver

Linux 5.2 Ups Laptop Support From A New Intel Power Button Driver To Better Ryzen Input


Both Intel and AMD laptop hardware are seeing various improvements coming with the in-development Linux 5.2 kernel.

First up, Linux 5.2 will finally offer better compatibility with many AMD Ryzen laptops out there… In particular, as previously covered, the new AMD PCIe MP2 I2C controller driver has been merged and allows many laptop touchpads / touchscreens to finally function accordingly under Linux. It has taken a long time for this AMD driver to get into shape for mainline but it’s here with Linux 5.2 to finally provide out-of-the-box/working touchpad/touchscreen support without requiring an out-of-tree DKMS module or hitting other snags.

The AMD PCIe MP2 I2C controller driver is the headlining feature of the I2C pull request for the ongoing Linux 5.2 merge window.

Meanwhile on the Intel laptop front, the platform-drivers-x86 pull has a few goodies. There is a new “intel_mrfld_pwrbtn” driver providing Intel Basin Cove power button support as found on some Merrifield-based devices. It’s about time on that front with the Atom Merrifield products having come out back in 2014.

Other laptop work includes the ASUS WMI driver now having Fn lock mode switch support, switching from a blacklist to whitelist for dealing with non-working WiFi on newer Lenovo IdeaPad systems, EC information on newer Lenovo ThnkPads is now properly recognized, and various other quirks/fixes.

Plus the tons of Linux 5.2 improvements in general will surely please many Intel/AMD laptop owners once switching over to this new kernel that will debut as stable in July.

Google Worked On A New Aspeed Control Driver For Linux 5.2


Aspeed BMCs have seen a lot of mainline Linux kernel driver activity from a recent Aspeed video engine driver to an AST2500 SoC DRM driver queued for Linux 5.2 and now also joining that is the Aspeed P2A CTRL driver.

This Aspeed P2A control driver was worked on by Google developers and is for dealing with the AST2400/AST2500 where supporting a PCI-to-AHB MMIO bridge for leeting the system read/write to the BMC’s physical address space as part of features like sending files to the BMC. The 500+ lines of code for the ASPEED_PTA_CTRL “aspeed-pta-ctrl” driver is used for managing this interface.

The driver by Google’s Patrick Venture was added to the char-misc-next area ahead of Linux 5.2. The commit explains:

The host may use this to send down a firmware image by staging data at a specific memory address, and in a coordinated effort with the BMC’s software stack and kernel, transmit the bytes.

This driver enables the BMC to unlock the PCI bridge on demand, and configure it via ioctl to allow the host to write bytes to an agreed upon location. In the primary use-case, the region to use is known apriori on the BMC, and the host requests this information. Once this request is received, the BMC’s software stack will enable the bridge and the region and then using some software flow control (possibly via IPMI packets), copy the bytes down. Once the process is complete, the BMC will disable the bridge and unset any region involved.

The default behavior of this bridge when present is: enabled and all regions marked read-write. This driver will fix the regions to be read-only and then disable the bridge entirely.

The memory regions protected are:

* BMC flash MMIO window
* System flash MMIO windows
* SOC IO (peripheral MMIO)

The DRAM region itself is all of DRAM and cannot be further specified. Once the PCI bridge is enabled, the host can read all of DRAM, and if the DRAM section is write-enabled, then it can write to all of it.

NVIDIA “AltMode” Open-Source Driver Heading To Mainline Kernel With Linux 5.2


There’s a new open-source NVIDIA driver heading to the mainline kernel with Linux 5.2, but don’t get too excited.

The NVIDIA AltMode driver queued up for entrance into the Linux 5.2 kernel is for handling VirtualLink devices with the newest RTX Turing graphics cards that have a USB Type-C connector.

Previously we’ve seen NVIDIA post a new i2c driver for the USB-C connections on their newest Turing graphics cards while this latest addition is a simple driver for enabling the Type-C Alternate Mode for VirtualLink devices.

With this new code by NVIDIA is now support for VirtualLink devices on Linux 5.2+.

This was queued in the USB-next code-base following patches by Intel for UCSI DisplayPort Alternate Mode Support across a few commits also destined for Linux 5.2.

NVIDIA supplied a larger code contribution as well of firmware flashing support for their Type-C controller in order to perform firmware upgrades under Linux.

While their USB Type-C/VirtualLink code bits are open-source, there are signed firmware blobs involved in bringing up their USB controller support.

Valve’s upcoming “Index” VR headset might be among the first VR HMDs supporting a VirtualLink interface.

Panfrost DRM Driver Being Added To Linux 5.2 For Midgard / Bifrost Graphics

ARM --

Not only is the longtime Lima DRM driver for Arm Mali 400/450 graphics set to finally premiere with the Linux 5.2 kernel, but the Panfrost DRM driver is also being mainlined for the newer Mali graphics hardware.

The Panfrost DRM driver is set to be added to the Linux 5.2 kernel. Panfrost is the open-source, reverse-engineered DRM/KMS driver for Arm Mali Midgard and Bifrost graphics processors where as the Lima driver focuses on the 400/450 series.

Since earlier this year Mesa has had the Panfrost Gallium3D driver, which provides basic OpenGL functionality and can pair with this DRM/KMS kernel driver for a fully-open and functioning driver stack for Bifrost/Midgard. Though before getting too excited, at this stage Panfrost is just running some basic games and the Kodi HTPC software.

Panfrost Gallium3D is getting closer to offering OpenGL ES 3.0 support, but still more work is ahead before it can offer similar GL functionality to Arm’s proprietary driver. Also, Panfrost doesn’t yet have any OpenCL or Vulkan API support, unlike the proprietary driver.

Nevertheless, for those looking forward to open-source Midgard/Bifrost support, this new driver has been added to drm-misc-next for queuing in DRM-Next until the Linux 5.2 kernel merge window opens in May.

Haiku OS Picks Up An NVMe Storage Driver


Back during the BeOS days of the 90’s, NVM Express solid-state storage obviously wasn’t a thing but the open-source Haiku OS inspired by it now has an NVMe driver.

Haiku that aims to be an open-source OS based off BeOS now has support for NVMe SSDs. This driver didn’t make last September’s Haiku R1 beta but now being found within the latest development code is for NVMe SSD hardware.

As of the latest Haiku code, NVMe SSDs should be fully usable now under their BeOS-inspired operating system. More details via Haiku.org.