[PATCH 04/16] dts: k1: import pinctrl dts file from upstream folder

Yao Zi me at ziyao.cc
Thu Apr 30 03:26:38 CEST 2026


On Wed, Apr 29, 2026 at 08:48:39PM +0100, Conor Dooley wrote:
> On Wed, Apr 22, 2026 at 10:31:00AM -0400, Raymond Mao wrote:
> > From: Raymond Mao <raymond.mao at riscstar.com>
> > 
> > Import k1-pinctrl.dtsi from upstream folder.
> 
> Why doesn't the platform just use the upstream dts directly?

AFAIK, U-Boot's reset driver for SpacemiT K1 predates land of the
kernel side driver, and follows a complete different (and to me,
broken since it combines completely unrelated MMIO regions) ABI.

U-Boot's version,

	reset: reset-controller at d4050000 {
		compatible = "spacemit,k1-reset";
		reg = <0x0 0xd4050000 0x0 0x209c>,
		      <0x0 0xd4282800 0x0 0x400>,
		      <0x0 0xd4015000 0x0 0x1000>,
		      <0x0 0xd4090000 0x0 0x1000>,
		      <0x0 0xd4282c00 0x0 0x400>,
		      <0x0 0xd8440000 0x0 0x98>,
		      <0x0 0xc0000000 0x0 0x4280>,
		      <0x0 0xf0610000 0x0 0x20>;
		      reg-names = "mpmu", "apmu", "apbc", "apbs", "ciu", "dciu", "ddrc", "apbc2";
		      #reset-cells = <1>;
		      status = "disabled";
	};

Kernel's version,

	syscon_apmu: system-controller at d4282800 {
		compatible = "spacemit,k1-syscon-apmu";
		reg = <0x0 0xd4282800 0x0 0x400>;
		clocks = <&osc_32k>, <&vctcxo_1m>, <&vctcxo_3m>,
			 <&vctcxo_24m>;
		clock-names = "osc", "vctcxo_1m", "vctcxo_3m",
			 "vctcxo_24m";
		#clock-cells = <1>;
		#power-domain-cells = <1>;
		#reset-cells = <1>;
	};

	(and many other independent system-controller nodes, each for a
	 distinct MMIO region)

I suspect we have to deal with the difference before switching to
upstream devicetree, since I2C controllers introduced in this series
do depend on resets.

Regards,
Yao Zi


More information about the U-Boot mailing list