Hi, I’m Micha艂 Wilczy艅ski 馃憢

A Linux Kernel Engineer who enjoys poking at hardware until it works. By day, I wrangle the kernel for Tizen smart devices at Samsung. Before that, I was at Intel taming 100G networking drivers.

This blog is my field notebook for low level adventures in drivers, performance tuning, eBPF, and bringing safe Rust to the kernel.

Igniting the GPU: From Kernel Plumbing to 3D Rendering on RISC-V

Introduction: Enabling the Hardware For years, PowerVR GPUs ubiquitous in the embedded world relied entirely on out of tree vendor drivers (often named pvrsrvkm). While source code was provided in Board Support Packages, these drivers were never accepted into the mainline kernel due to their non standard architecture. That changed when Imagination Technologies announced their commitment to an upstream, open source driver. The resulting drm/imagination driver has been upstream for some time, but it wasn鈥檛 usable on RISC-V platforms like the T-HEAD TH1520 (used in the Lichee Pi 4A). ...

December 28, 2025 路 11 min 路 Micha艂 Wilczy艅ski

Bringing Rust to the Linux PWM Subsystem

Introduction: Why Rust for PWM? For the past few months, I鈥檝e been on a mission to introduce a basic set of safe Rust abstractions to the Linux kernel鈥檚 PWM subsystem. If you鈥檝e ever controlled the brightness of an LED or the speed of a fan, you鈥檝e used PWM. It鈥檚 a fundamental part of how software interacts with hardware. The primary goal was to see if I could build an API that lets developers write PWM drivers in 100% safe Rust, gaining all the benefits of the language鈥檚 memory safety and powerful type system. As a practical demonstration, I also wrote a functional PWM driver for the T-HEAD TH1520 SoC, which is found on the popular Sipeed Lichee Pi 4A board. ...

November 9, 2025 路 9 min 路 Micha艂 Wilczy艅ski