[PATCH v3 0/2] drm/panel: Add support for Novatek NT36532 panel

Junjie Cao <[email protected]> Tue, 4 Aug 2026 00:34:17 -0700
Newsgroups org.kernel.vger.linux-arm-msm,org.freedesktop.lists.dri-devel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
This series adds support for panels using the Novatek NT36532 Display
Driver IC, a dual-DSI, dual-DSC controller that requires DPU support
for MIPI_DSI_MODE_DSC_ALL_SLICES_IN_PKT.

The first user is the CSOT PPC100HB1-1 panel found in the OnePlus Pad 2
(OnePlus Pad Pro in China) tablet: 3000x2120, dual-DSI in bonded mode,
DSC 1.2 with two slices per line.

v2 has been tested on the OnePlus Pad 2: the panel comes up in its
native 3000x2120 mode at 120Hz over dual-DSI in bonded mode with DSC,
and displays a stable image. The only wire-level change in v3 is the
page 0x23 0x51 write going from two bytes to one, matching the stock
firmware DT.

Changes in v3:
- Kconfig: select DRM_DISPLAY_DSC_HELPER, DRM_DISPLAY_HELPER and
  DRM_KMS_HELPER, depend on BACKLIGHT_CLASS_DEVICE.
- Write the page 0x23 dimming table entry 0x51 as a plain one-byte
  write instead of the two-byte DCS brightness helper.
- Spell the page 0x10 brightness write as MIPI_DCS_SET_DISPLAY_BRIGHTNESS
  with an explicit 07 ff payload instead of the byte-swapped 0xff07.
- Drop accidental MIPI_DCS_* macro names from vendor-page register
  writes.
- Make the DSC config const and copy it into the panel instance at
  probe time.
- Support an external backlight via drm_panel_of_backlight().
- Report the panel physical size via the display mode.
- Link to v2: https://lore.kernel.org/all/[email protected]
- Link to v1: https://lore.kernel.org/all/[email protected]

Junjie Cao (2):
  dt-bindings: display: panel: Add Novatek NT36532
  drm/panel: Add Novatek NT36532 panel driver

 .../display/panel/novatek,nt36532.yaml        |  83 ++++
 MAINTAINERS                                   |   7 +
 drivers/gpu/drm/panel/Kconfig                 |  14 +
 drivers/gpu/drm/panel/Makefile                |   1 +
 drivers/gpu/drm/panel/panel-novatek-nt36532.c | 431 ++++++++++++++++++
 5 files changed, 536 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/novatek,nt36532.yaml
 create mode 100644 drivers/gpu/drm/panel/panel-novatek-nt36532.c


base-commit: 0d33d21e47d9dc66f91e44da3fc9220c74d93df7
-- 
2.43.0