The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH v3 0/2] drm/panel: Add support for Novatek NT36532 panel
@ 2026-08-04  7:34 Junjie Cao
  2026-08-04  7:39 ` [PATCH v3 1/2] dt-bindings: display: panel: Add Novatek NT36532 Junjie Cao
  2026-08-04  7:42 ` [PATCH v3 2/2] drm/panel: Add Novatek NT36532 panel driver Junjie Cao
  0 siblings, 2 replies; 3+ messages in thread
From: Junjie Cao @ 2026-08-04  7:34 UTC (permalink / raw)
  To: neil.armstrong, jesszhan0024, maarten.lankhorst, mripard,
	tzimmermann, airlied, simona, robh, krzk+dt, conor+dt
  Cc: dmitry.baryshkov, konrad.dybcio, mitltlatltl, dri-devel,
	devicetree, linux-arm-msm, linux-kernel

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/20260729160804.912826-1-junjie.cao@linux.dev
- Link to v1: https://lore.kernel.org/all/20251001135914.13754-1-caojunjie650@gmail.com

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


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-08-04  7:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-04  7:34 [PATCH v3 0/2] drm/panel: Add support for Novatek NT36532 panel Junjie Cao
2026-08-04  7:39 ` [PATCH v3 1/2] dt-bindings: display: panel: Add Novatek NT36532 Junjie Cao
2026-08-04  7:42 ` [PATCH v3 2/2] drm/panel: Add Novatek NT36532 panel driver Junjie Cao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox