Re: [PATCH v2 3/3] drm/nuvoton: add MA35D1 display controller driver
From: Joey Lu
Date: Tue Mar 03 2026 - 03:21:03 EST
On 2/10/2026 8:02 PM, Icenowy Zheng wrote:
在 2026-02-09星期一的 16:45 +0800,Joey Lu写道:Our team is actively working on upstreaming support for MA35D1. It is possible to bring up the mainline kernel on arbitrary MA35D1 boards, but for the best experience I strongly recommend using our Buildroot[1] or Yocto[2] tooling available on the official GitHub. These provide board-specific configurations and greatly simplify the process.
On 2/6/2026 11:09 PM, Icenowy Zheng wrote:The kernel seems to dislike different drivers for similar IPs.
在 2026-01-29星期四的 12:05 +0800,Joey Lu写道:The DCU is a Vivante DCUltra IP rather than a DC8000 series.
========== 8< ============Please check my Verisilicon DC8200 driver, which is already part of
+#endif
diff --git a/drivers/gpu/drm/nuvoton/ma35_regs.h
b/drivers/gpu/drm/nuvoton/ma35_regs.h
new file mode 100644
index 000000000000..0f4a7a13e7d8
--- /dev/null
+++ b/drivers/gpu/drm/nuvoton/ma35_regs.h
@@ -0,0 +1,88 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Nuvoton DRM driver
+ *
+ * Copyright (C) 2026 Nuvoton Technology Corp.
+ *
+ * Author: Joey Lu <a0987203069@xxxxxxxxx>
+ */
+
+#ifndef _MA35_REGS_H_
+#define _MA35_REGS_H_
+
+#define MA35_FRAMEBUFFER_CONFIG 0x1518
drm-misc-next now.
The display controller here seems to be a earlier one from
Verisilicon.it looks like a DC8000, or maybe a more earlier one?
It's an earlier generation display controller and was customized for
Nuvoton, so it doesn't have a public model ID.
Because of that lineage, parts of the register layout and
functionality
remain similar to older DC IPs.
Please refer to MA35D1 datasheet for more details.I checked it, and the register definitions looks compatible with DC8000
registers at [1]. However no identification information is shown in the
manual.
I may get a MA35D1 board after the Lunar New Year (although it looks a
little expensive), is it easy to bring up mainline kernal on arbitary
MA35D1 boards?
[1]
https://github.com/milkv-megrez/rockos-u-boot/blob/c9221cf2fa77d39c0b241ab4b030c708e7ebe279/drivers/video/eswin/eswin_dc_reg.h
If you decide to get an MA35D1 board yourself, our Buildroot/Yocto setup will help you get started quickly and ensure you have the right patches and configurations in place.
Currently, the mainline kernel version is 6.6, which is sufficient for checking registers and basic functionality. For more complete feature support, our Buildroot/Yocto tooling remains the recommended path.
[1] https://github.com/OpenNuvoton/buildroot_2024
[2] https://github.com/OpenNuvoton/MA35D1_yocto-v5.0
Best regards,
Joey