Re: [PATCH] arm64: dts: freescale: add pixpaper display overlay for i.MX93 FRDM
From: Frank Li <Frank.li@nxp.com>
Date: 2026-01-27 18:09:17
Also in:
imx, linux-arm-kernel, lkml
On Tue, Jan 27, 2026 at 10:57:40AM +0800, Wig Cheng wrote:
Add device tree overlay to support the MayQueen PixPaper e-paper display
on the NXP i.MX93 FRDM board. The display is connected via LPSPI3
interface and uses GPIO pins for reset, busy and DC control.
The overlay configures:
- LPSPI3 pinmux for SPI communication (MOSI, MISO, CLK, CE0)
- PixPaper display device with proper GPIO assignments
- SPI frequency set to 5MHz for stable operation
This enables support for the Open-EP Community pixpaper-213-c module on
the NXP i.MX93 platform.Enable Open-EP Community pixpaper-213-c support on NXP i.MX93.
quoted hunk ↗ jump to hunk
Signed-off-by: Wig Cheng <redacted> --- arch/arm64/boot/dts/freescale/Makefile | 3 ++ .../freescale/imx93-11x11-frdm-pixpaper.dtso | 51 +++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 arch/arm64/boot/dts/freescale/imx93-11x11-frdm-pixpaper.dtsodiff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile index ce8f937c2315..fedd3552b577 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile@@ -403,6 +403,9 @@ dtb-$(CONFIG_ARCH_MXC) += imx93-kontron-bl-osm-s.dtb dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-nash.dtb dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-segin.dtb +imx93-11x11-frdm-pixpaper-dtbs += imx93-11x11-frdm.dtb imx93-11x11-frdm-pixpaper.dtbo +dtb-$(CONFIG_ARCH_MXC) += imx93-11x11-frdm-pixpaper.dtb +
imx93-11x11-frdm-pixpaper.dtb, Keep alphabet order.
quoted hunk ↗ jump to hunk
imx93-phyboard-nash-jtag-dtbs += imx93-phyboard-nash.dtb imx93-phyboard-nash-jtag.dtbo imx93-phyboard-nash-peb-wlbt-07-dtbs += imx93-phyboard-nash.dtb imx93-phyboard-nash-peb-wlbt-07.dtbo imx93-phyboard-nash-pwm-fan-dtbs += imx93-phyboard-nash.dtb imx93-phyboard-nash-pwm-fan.dtbodiff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm-pixpaper.dtso b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm-pixpaper.dtso new file mode 100644 index 000000000000..38e0c5dd82f9 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm-pixpaper.dtso@@ -0,0 +1,51 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Device Tree Overlay for Mayqueen (Open-EP Community) pixpaper display + * support on NXP FRDM i.MX 93 Development Board + * + * Copyright (C) 2026 Wig Cheng <onlywig@gmail.com> + */ + +#include <dt-bindings/gpio/gpio.h> +#include "imx93-pinfunc.h" + +/dts-v1/; +/plugin/; + +&iomuxc { + pinctrl_lpspi3: lpspi3grp { + fsl,pins = < + MX93_PAD_GPIO_IO08__GPIO2_IO08 0x3fe /* SPI3 CE0 */ + MX93_PAD_GPIO_IO09__LPSPI3_SIN 0x3fe /* SPI3 MISO */ + MX93_PAD_GPIO_IO10__LPSPI3_SOUT 0x3fe /* SPI3 MOSI */ + MX93_PAD_GPIO_IO11__LPSPI3_SCK 0x3fe /* SPI3 CLK*/ + >; + }; + + pinctrl_epd_ctrl: epdctrlgrp {
keep alphabet according to node name.
+ fsl,pins = <
+ MX93_PAD_GPIO_IO05__GPIO2_IO05 0x31e /* DC pin */
+ MX93_PAD_GPIO_IO06__GPIO2_IO06 0x31e /* RESET pin */
+ MX93_PAD_GPIO_IO26__GPIO2_IO26 0x31e /* BUSY pin */
+ >;
+ };
+};
+
+&lpspi3 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ fsl,spi-num-chipselects = <1>;vendor property should be last one just before status. You can use https://github.com/lznuaa/dt-format to format your dts. Frank Li
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lpspi3>, <&pinctrl_epd_ctrl>;
+ cs-gpios = <&gpio2 8 GPIO_ACTIVE_LOW>;
+ status = "okay";
+
+ display@0 {
+ compatible = "mayqueen,pixpaper";
+ reg = <0>;
+ spi-max-frequency = <5000000>;
+ reset-gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
+ dc-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>;
+ busy-gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
+ };
+};
--
2.43.0