This patch series adds support for the Mayqueen Pixpaper 4.26 monochrome e-ink display panel, controlled via SPI.
The series includes: - Device tree binding updates for the Pixpaper 4.26 panel - A DRM tiny driver implementation for the Pixpaper 4.26 panel - A MAINTAINERS update for the Pixpaper DRM drivers and binding The panel supports 800x480 resolution with XRGB8888 framebuffer input and uses SPI, along with GPIO lines for reset, busy, and data/command control. Tested on: - Raspberry Pi 5 with Linux kernel 7.1.0-rc1 Feedback is welcome. Signed-off-by: LiangCheng Wang <[email protected]> --- Changes in v3: - Keep Conor's Acked-by on the DT binding patch. - Avoid passing stack and read-only buffers to spi_write(). - Use le32_to_cpu() when reading XRGB8888 pixels. - Document the panel RAM X direction used during framebuffer conversion. - Document why busy-wait timeouts remain warning-only. - Rename the busy-wait helper to pixpaper_wait_for_panel(). - Drop the forward declaration of pixpaper_xrgb8888_to_bw() by moving its definition before its first use. - Use a fixed display mode with drm_connector_helper_get_modes_fixed(). - Drop the redundant mode_config mode_valid callback; resolution is validated only by the CRTC mode_valid callback. - Use drm_err_once() for errors in userspace-triggered update paths. - Link to v2: https://lore.kernel.org/r/[email protected] Changes in v2: - Explain why pixpaper-426m requires a distinct compatible string despite sharing the same SPI and GPIO properties with the existing Pixpaper panel. - Drop the duplicated pixpaper-426m DT binding example. - Update the binding description for multiple Pixpaper panels. - Select DRM_GEM_SHMEM_HELPER instead of DRM_GEM_DMA_HELPER for the pixpaper-426m driver. - Link to v1: https://lore.kernel.org/r/[email protected] --- LiangCheng Wang (2): dt-bindings: display: mayqueen,pixpaper: add pixpaper-426m drm/tiny: add support for PIXPAPER 4.26 monochrome e-ink panel .../bindings/display/mayqueen,pixpaper.yaml | 13 +- MAINTAINERS | 3 +- drivers/gpu/drm/tiny/Kconfig | 16 + drivers/gpu/drm/tiny/Makefile | 1 + drivers/gpu/drm/tiny/pixpaper-426m.c | 817 +++++++++++++++++++++ 5 files changed, 844 insertions(+), 6 deletions(-) --- base-commit: a293ec25d59dd96309058c70df5a4dd0f889a1e4 change-id: 20260505-bar-523f2c3f6939 Best regards, -- LiangCheng Wang <[email protected]>
