Loading…
Sched is temporarily in maintenance Read-Only mode. You can continue using the event and personal schedule, but will not be able to make any changes. We apologize for the inconvenience.

Check our Status Page for updates →
April 16-18, 2024
Seattle, Washington
View More Details & Registration
Note: The schedule is subject to change.

The Sched app allows you to build your schedule but is not a substitute for your event registration. You must be registered for Embedded Open Source Summit North America 2024 to participate in the sessions. If you have not registered but would like to join us, please go to the event registration page to purchase a registration.

This schedule is automatically displayed in Pacific Daylight Time (UTC/GMT -8). To see the schedule in your preferred timezone, please select from the drop-down menu to the right, above "Filter by Date."

IMPORTANT NOTE: Timing of sessions and room locations are subject to change.

Thursday April 18, 2024 4:10pm - 4:50pm PDT


The GPIO subsystem is one of the oldest driver abstraction layers in the linux kernel. First, somewhat unified GPIO interfaces appeared around 20 years ago. Over the years it has become one of the most ubiquitous subsystems in embedded linux as GPIOs are used universally by all kinds of devices for a multitude of more, less or not-at-all standardized functions. Over the years GPIOLIB has become its own, self-contained library, was integrated into the driver model and acquired many new features (device-tree and ACPI support, GPIO irqchips, plug-and-play) but it came at a cost. The subsystem was hit especially hard by ARM fragmentation, the fallout of which is still visible in countless board files containing suboptimal code we need to maintain. We eventually ended up with two in-kernel APIs, two uAPI variants, complex glue code to pinctrl and interrupt subsystems as well as piles upon piles of quirks and corner-cases. Efforts to improve the situation have been ongoing and have picked up in 2023/2024. This talk will cover how we try to improve serialization, hot-pluggability and reduce the API abuse treewide while dancing carefully around existing legacy users.
Speakers
avatar for Bartosz Golaszewski

Bartosz Golaszewski

Linux Kernel Engineer, Qualcomm
Bartosz Golaszewski has over 16 years of engineering experience in the embedded systems domain ranging from low-level, real-time operating systems, through the linux kernel up to user-space plumbing, libraries and build systems. Bartosz has contributed hundreds of patches to a wide... Read More →
Thursday April 18, 2024 4:10pm - 4:50pm PDT
335-336 (Level 3)
  Embedded Linux Conference
  • Content Experience Level Advanced
  • Session Slides Attached Yes
Feedback form is now closed.

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Share Modal

Share this link via

Or copy link