devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver
@ 2024-07-15  5:12 zelong dong
  2024-07-15  5:12 ` [PATCH v2 1/3] dt-bindings: reset: Add compatible for Amlogic A4/A5 Reset Controller zelong dong
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: zelong dong @ 2024-07-15  5:12 UTC (permalink / raw)
  To: Neil Armstrong, Philipp Zabel, Kevin Hilman, Rob Herring,
	Martin Blumenstingl, Jerome Brunet, Krzysztof Kozlowski
  Cc: linux-kernel, linux-amlogic, linux-arm-kernel, devicetree,
	kelvin.zhang, Zelong Dong

From: Zelong Dong <zelong.dong@amlogic.com>

This patchset adds Reset controller driver support for
Amlogic A4/A5 SoC. The RESET registers count and offset
for A4/A5 Soc are same as S4 Soc.

Changes since v1:
- remove 'amlogic,t7-reset'
- move 'amlogic,c3-reset' to the other enum list
- move reset node from amlogic-a4-common.dtsi to
  amlogic-a4.dtsi/amlogic-a5.dtsi

---
v1:https://lore.kernel.org/all/20240703061610.37217-1-zelong.dong@amlogic.com/

Zelong Dong (3):
  dt-bindings: reset: Add compatible and DT bindings for Amlogic A4/A5
    Reset Controller
  arm64: dts: amlogic: Add Amlogic A4 reset controller
  arm64: dts: amlogic: Add Amlogic A5 reset controller

 .../bindings/reset/amlogic,meson-reset.yaml   | 21 ++--
 .../arm64/boot/dts/amlogic/amlogic-a4-reset.h | 93 ++++++++++++++++++
 arch/arm64/boot/dts/amlogic/amlogic-a4.dtsi   | 10 ++
 .../arm64/boot/dts/amlogic/amlogic-a5-reset.h | 95 +++++++++++++++++++
 arch/arm64/boot/dts/amlogic/amlogic-a5.dtsi   | 10 ++
 5 files changed, 222 insertions(+), 7 deletions(-)
 create mode 100644 arch/arm64/boot/dts/amlogic/amlogic-a4-reset.h
 create mode 100644 arch/arm64/boot/dts/amlogic/amlogic-a5-reset.h

-- 
2.35.1


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

* [PATCH v2 1/3] dt-bindings: reset: Add compatible for Amlogic A4/A5 Reset Controller
  2024-07-15  5:12 [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver zelong dong
@ 2024-07-15  5:12 ` zelong dong
  2024-07-15 16:13   ` Conor Dooley
  2024-07-15  5:12 ` [PATCH v2 2/3] arm64: dts: amlogic: Add Amlogic A4 reset controller zelong dong
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 6+ messages in thread
From: zelong dong @ 2024-07-15  5:12 UTC (permalink / raw)
  To: Neil Armstrong, Philipp Zabel, Kevin Hilman, Rob Herring,
	Martin Blumenstingl, Jerome Brunet, Krzysztof Kozlowski
  Cc: linux-kernel, linux-amlogic, linux-arm-kernel, devicetree,
	kelvin.zhang, Zelong Dong

From: Zelong Dong <zelong.dong@amlogic.com>

Add new compatible for Amlogic A4/A5 Reset Controller

Signed-off-by: Zelong Dong <zelong.dong@amlogic.com>
---
 .../bindings/reset/amlogic,meson-reset.yaml   | 21 ++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/Documentation/devicetree/bindings/reset/amlogic,meson-reset.yaml b/Documentation/devicetree/bindings/reset/amlogic,meson-reset.yaml
index f0c6c0df0ce3..11bfe484a5d3 100644
--- a/Documentation/devicetree/bindings/reset/amlogic,meson-reset.yaml
+++ b/Documentation/devicetree/bindings/reset/amlogic,meson-reset.yaml
@@ -12,13 +12,20 @@ maintainers:
 
 properties:
   compatible:
-    enum:
-      - amlogic,meson8b-reset # Reset Controller on Meson8b and compatible SoCs
-      - amlogic,meson-gxbb-reset # Reset Controller on GXBB and compatible SoCs
-      - amlogic,meson-axg-reset # Reset Controller on AXG and compatible SoCs
-      - amlogic,meson-a1-reset # Reset Controller on A1 and compatible SoCs
-      - amlogic,meson-s4-reset # Reset Controller on S4 and compatible SoCs
-      - amlogic,c3-reset # Reset Controller on C3 and compatible SoCs
+    oneOf:
+      - items:
+          - enum:
+              - amlogic,meson8b-reset # Reset Controller on Meson8b and compatible SoCs
+              - amlogic,meson-gxbb-reset # Reset Controller on GXBB and compatible SoCs
+              - amlogic,meson-axg-reset # Reset Controller on AXG and compatible SoCs
+              - amlogic,meson-a1-reset # Reset Controller on A1 and compatible SoCs
+              - amlogic,meson-s4-reset # Reset Controller on S4 and compatible SoCs
+              - amlogic,c3-reset # Reset Controller on C3 and compatible SoCs
+      - items:
+          - enum:
+              - amlogic,a4-reset
+              - amlogic,a5-reset
+          - const: amlogic,meson-s4-reset
 
   reg:
     maxItems: 1
-- 
2.35.1


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

* [PATCH v2 2/3] arm64: dts: amlogic: Add Amlogic A4 reset controller
  2024-07-15  5:12 [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver zelong dong
  2024-07-15  5:12 ` [PATCH v2 1/3] dt-bindings: reset: Add compatible for Amlogic A4/A5 Reset Controller zelong dong
@ 2024-07-15  5:12 ` zelong dong
  2024-07-15  5:12 ` [PATCH v2 3/3] arm64: dts: amlogic: Add Amlogic A5 " zelong dong
  2024-09-02 11:28 ` [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver Zelong Dong
  3 siblings, 0 replies; 6+ messages in thread
From: zelong dong @ 2024-07-15  5:12 UTC (permalink / raw)
  To: Neil Armstrong, Philipp Zabel, Kevin Hilman, Rob Herring,
	Martin Blumenstingl, Jerome Brunet, Krzysztof Kozlowski
  Cc: linux-kernel, linux-amlogic, linux-arm-kernel, devicetree,
	kelvin.zhang, Zelong Dong

From: Zelong Dong <zelong.dong@amlogic.com>

Add the device node and related header file for Amlogic
A4 reset controller. The count and offset for A4 Soc
RESET registers are same as S4 Soc.

Signed-off-by: Zelong Dong <zelong.dong@amlogic.com>
---
 .../arm64/boot/dts/amlogic/amlogic-a4-reset.h | 93 +++++++++++++++++++
 arch/arm64/boot/dts/amlogic/amlogic-a4.dtsi   | 10 ++
 2 files changed, 103 insertions(+)
 create mode 100644 arch/arm64/boot/dts/amlogic/amlogic-a4-reset.h

diff --git a/arch/arm64/boot/dts/amlogic/amlogic-a4-reset.h b/arch/arm64/boot/dts/amlogic/amlogic-a4-reset.h
new file mode 100644
index 000000000000..f6a4c90bab3c
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/amlogic-a4-reset.h
@@ -0,0 +1,93 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR MIT) */
+/*
+ * Copyright (c) 2024 Amlogic, Inc. All rights reserved.
+ */
+
+#ifndef __DTS_AMLOGIC_A4_RESET_H
+#define __DTS_AMLOGIC_A4_RESET_H
+
+/* RESET0 */
+/*						0-3 */
+#define RESET_USB				4
+/*						5-6*/
+#define RESET_U2PHY22				7
+#define RESET_USBPHY20				8
+#define RESET_U2PHY21				9
+#define RESET_USB2DRD				10
+#define RESET_U2H				11
+#define RESET_LED_CTRL				12
+/*						13-31 */
+
+/* RESET1 */
+#define RESET_AUDIO				32
+#define RESET_AUDIO_VAD				33
+/*						34*/
+#define RESET_DDR_APB				35
+#define RESET_DDR				36
+#define RESET_VOUT_VENC				37
+#define RESET_VOUT				38
+/*						39-47 */
+#define RESET_ETHERNET				48
+/*						49-63 */
+
+/* RESET2 */
+#define RESET_DEVICE_MMC_ARB			64
+#define RESET_IRCTRL				65
+/*						66*/
+#define RESET_TS_PLL				67
+/*						68-72*/
+#define RESET_SPICC_0				73
+#define RESET_SPICC_1				74
+/*						75-79*/
+#define RESET_MSR_CLK				80
+/*						81*/
+#define RESET_SAR_ADC				82
+/*						83-87*/
+#define RESET_ACODEC				88
+/*						89-90*/
+#define RESET_WATCHDOG				91
+/*						92-95*/
+
+/* RESET3 */
+/*						96-127 */
+
+/* RESET4 */
+/*						128-131 */
+#define RESET_PWM_AB				132
+#define RESET_PWM_CD				133
+#define RESET_PWM_EF				134
+#define RESET_PWM_GH				135
+/*						136-137*/
+#define RESET_UART_A				138
+#define RESET_UART_B				139
+/*						140*/
+#define RESET_UART_D				141
+#define RESET_UART_E				142
+/*						143-144*/
+#define RESET_I2C_M_A				145
+#define RESET_I2C_M_B				146
+#define RESET_I2C_M_C				147
+#define RESET_I2C_M_D				148
+/*						149-151*/
+#define RESET_SDEMMC_A				152
+/*						153*/
+#define RESET_SDEMMC_C				154
+/*						155-159*/
+
+/* RESET5 */
+/*						160-175*/
+#define RESET_BRG_AO_NIC_SYS			176
+/*						177*/
+#define RESET_BRG_AO_NIC_MAIN			178
+#define RESET_BRG_AO_NIC_AUDIO			179
+/*						180-183*/
+#define RESET_BRG_AO_NIC_ALL			184
+/*						185*/
+#define RESET_BRG_NIC_SDIO			186
+#define RESET_BRG_NIC_EMMC			187
+#define RESET_BRG_NIC_DSU			188
+#define RESET_BRG_NIC_CLK81			189
+#define RESET_BRG_NIC_MAIN			190
+#define RESET_BRG_NIC_ALL			191
+
+#endif
diff --git a/arch/arm64/boot/dts/amlogic/amlogic-a4.dtsi b/arch/arm64/boot/dts/amlogic/amlogic-a4.dtsi
index de10e7aebf21..3fd1c52fb55b 100644
--- a/arch/arm64/boot/dts/amlogic/amlogic-a4.dtsi
+++ b/arch/arm64/boot/dts/amlogic/amlogic-a4.dtsi
@@ -4,6 +4,7 @@
  */
 
 #include "amlogic-a4-common.dtsi"
+#include "amlogic-a4-reset.h"
 #include <dt-bindings/power/amlogic,a4-pwrc.h>
 / {
 	cpus {
@@ -48,3 +49,12 @@ pwrc: power-controller {
 		};
 	};
 };
+
+&apb {
+	reset: reset-controller@2000 {
+		compatible = "amlogic,a4-reset",
+			     "amlogic,meson-s4-reset";
+		reg = <0x0 0x2000 0x0 0x98>;
+		#reset-cells = <1>;
+	};
+};
-- 
2.35.1


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

* [PATCH v2 3/3] arm64: dts: amlogic: Add Amlogic A5 reset controller
  2024-07-15  5:12 [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver zelong dong
  2024-07-15  5:12 ` [PATCH v2 1/3] dt-bindings: reset: Add compatible for Amlogic A4/A5 Reset Controller zelong dong
  2024-07-15  5:12 ` [PATCH v2 2/3] arm64: dts: amlogic: Add Amlogic A4 reset controller zelong dong
@ 2024-07-15  5:12 ` zelong dong
  2024-09-02 11:28 ` [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver Zelong Dong
  3 siblings, 0 replies; 6+ messages in thread
From: zelong dong @ 2024-07-15  5:12 UTC (permalink / raw)
  To: Neil Armstrong, Philipp Zabel, Kevin Hilman, Rob Herring,
	Martin Blumenstingl, Jerome Brunet, Krzysztof Kozlowski
  Cc: linux-kernel, linux-amlogic, linux-arm-kernel, devicetree,
	kelvin.zhang, Zelong Dong

From: Zelong Dong <zelong.dong@amlogic.com>

Add the device node and related header file for Amlogic
A5 reset controller. The count and offset for A5 Soc
RESET registers are same as S4 Soc.

Signed-off-by: Zelong Dong <zelong.dong@amlogic.com>
---
 .../arm64/boot/dts/amlogic/amlogic-a5-reset.h | 95 +++++++++++++++++++
 arch/arm64/boot/dts/amlogic/amlogic-a5.dtsi   | 10 ++
 2 files changed, 105 insertions(+)
 create mode 100644 arch/arm64/boot/dts/amlogic/amlogic-a5-reset.h

diff --git a/arch/arm64/boot/dts/amlogic/amlogic-a5-reset.h b/arch/arm64/boot/dts/amlogic/amlogic-a5-reset.h
new file mode 100644
index 000000000000..cdf0f5159620
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/amlogic-a5-reset.h
@@ -0,0 +1,95 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR MIT) */
+/*
+ * Copyright (c) 2024 Amlogic, Inc. All rights reserved.
+ */
+
+#ifndef __DTS_AMLOGIC_A5_RESET_H
+#define __DTS_AMLOGIC_A5_RESET_H
+
+/* RESET0 */
+/*						0-3 */
+#define RESET_USB				4
+/*						5-7 */
+#define RESET_USBPHY20				8
+/*						9 */
+#define RESET_USB2DRD				10
+/*						11-31 */
+
+/* RESET1 */
+#define RESET_AUDIO				32
+#define RESET_AUDIO_VAD				33
+/*                                              34 */
+#define RESET_DDR_APB				35
+#define RESET_DDR				36
+/*						37-40 */
+#define RESET_DSPA_DEBUG			41
+/*                                              42 */
+#define RESET_DSPA				43
+/*						44-46 */
+#define RESET_NNA				47
+#define RESET_ETHERNET				48
+/*						49-63 */
+
+/* RESET2 */
+#define RESET_ABUS_ARB				64
+#define RESET_IRCTRL				65
+/*						66 */
+#define RESET_TS_PLL				67
+/*						68-72 */
+#define RESET_SPICC_0				73
+#define RESET_SPICC_1				74
+#define RESET_RSA				75
+
+/*						76-79 */
+#define RESET_MSR_CLK				80
+#define RESET_SPIFC				81
+#define RESET_SAR_ADC				82
+/*						83-90 */
+#define RESET_WATCHDOG				91
+/*						92-95 */
+
+/* RESET3 */
+/*						96-127 */
+
+/* RESET4 */
+#define RESET_RTC				128
+/*						129-131 */
+#define RESET_PWM_AB				132
+#define RESET_PWM_CD				133
+#define RESET_PWM_EF				134
+#define RESET_PWM_GH				135
+/*						104-105 */
+#define RESET_UART_A				138
+#define RESET_UART_B				139
+#define RESET_UART_C				140
+#define RESET_UART_D				141
+#define RESET_UART_E				142
+/*						143*/
+#define RESET_I2C_S_A				144
+#define RESET_I2C_M_A				145
+#define RESET_I2C_M_B				146
+#define RESET_I2C_M_C				147
+#define RESET_I2C_M_D				148
+/*						149-151 */
+#define RESET_SDEMMC_A				152
+/*						153 */
+#define RESET_SDEMMC_C				154
+/*						155-159*/
+
+/* RESET5 */
+/*						160-175 */
+#define RESET_BRG_AO_NIC_SYS			176
+#define RESET_BRG_AO_NIC_DSPA			177
+#define RESET_BRG_AO_NIC_MAIN			178
+#define RESET_BRG_AO_NIC_AUDIO			179
+/*						180-183 */
+#define RESET_BRG_AO_NIC_ALL			184
+#define RESET_BRG_NIC_NNA			185
+#define RESET_BRG_NIC_SDIO			186
+#define RESET_BRG_NIC_EMMC			187
+#define RESET_BRG_NIC_DSU			188
+#define RESET_BRG_NIC_SYSCLK			189
+#define RESET_BRG_NIC_MAIN			190
+#define RESET_BRG_NIC_ALL			191
+
+#endif
diff --git a/arch/arm64/boot/dts/amlogic/amlogic-a5.dtsi b/arch/arm64/boot/dts/amlogic/amlogic-a5.dtsi
index 43f68a7da2f7..aa035c5c63af 100644
--- a/arch/arm64/boot/dts/amlogic/amlogic-a5.dtsi
+++ b/arch/arm64/boot/dts/amlogic/amlogic-a5.dtsi
@@ -4,6 +4,7 @@
  */
 
 #include "amlogic-a4-common.dtsi"
+#include "amlogic-a5-reset.h"
 / {
 	cpus {
 		#address-cells = <2>;
@@ -38,3 +39,12 @@ cpu3: cpu@300 {
 		};
 	};
 };
+
+&apb {
+	reset: reset-controller@2000 {
+		compatible = "amlogic,a5-reset",
+			     "amlogic,meson-s4-reset";
+		reg = <0x0 0x2000 0x0 0x98>;
+		#reset-cells = <1>;
+	};
+};
-- 
2.35.1


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

* Re: [PATCH v2 1/3] dt-bindings: reset: Add compatible for Amlogic A4/A5 Reset Controller
  2024-07-15  5:12 ` [PATCH v2 1/3] dt-bindings: reset: Add compatible for Amlogic A4/A5 Reset Controller zelong dong
@ 2024-07-15 16:13   ` Conor Dooley
  0 siblings, 0 replies; 6+ messages in thread
From: Conor Dooley @ 2024-07-15 16:13 UTC (permalink / raw)
  To: zelong dong
  Cc: Neil Armstrong, Philipp Zabel, Kevin Hilman, Rob Herring,
	Martin Blumenstingl, Jerome Brunet, Krzysztof Kozlowski,
	linux-kernel, linux-amlogic, linux-arm-kernel, devicetree,
	kelvin.zhang

[-- Attachment #1: Type: text/plain, Size: 285 bytes --]

On Mon, Jul 15, 2024 at 01:12:15PM +0800, zelong dong wrote:
> From: Zelong Dong <zelong.dong@amlogic.com>
> 
> Add new compatible for Amlogic A4/A5 Reset Controller
> 
> Signed-off-by: Zelong Dong <zelong.dong@amlogic.com>

Acked-by: Conor Dooley <conor.dooley@microchip.com>

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

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

* Re: [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver
  2024-07-15  5:12 [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver zelong dong
                   ` (2 preceding siblings ...)
  2024-07-15  5:12 ` [PATCH v2 3/3] arm64: dts: amlogic: Add Amlogic A5 " zelong dong
@ 2024-09-02 11:28 ` Zelong Dong
  3 siblings, 0 replies; 6+ messages in thread
From: Zelong Dong @ 2024-09-02 11:28 UTC (permalink / raw)
  To: Neil Armstrong, Philipp Zabel, Kevin Hilman, Rob Herring,
	Martin Blumenstingl, Jerome Brunet, Krzysztof Kozlowski
  Cc: linux-kernel, linux-amlogic, linux-arm-kernel, devicetree,
	kelvin.zhang

Hi Philipp,

Sorry, I've mixed up the emails.
How about this patchset Amlogic A4/A5 Reset driver?

在 2024/7/15 13:12, zelong dong 写道:
> From: Zelong Dong <zelong.dong@amlogic.com>
> 
> This patchset adds Reset controller driver support for
> Amlogic A4/A5 SoC. The RESET registers count and offset
> for A4/A5 Soc are same as S4 Soc.
> 
> Changes since v1:
> - remove 'amlogic,t7-reset'
> - move 'amlogic,c3-reset' to the other enum list
> - move reset node from amlogic-a4-common.dtsi to
>    amlogic-a4.dtsi/amlogic-a5.dtsi
> 
> ---
> v1:https://lore.kernel.org/all/20240703061610.37217-1-zelong.dong@amlogic.com/
> 
> Zelong Dong (3):
>    dt-bindings: reset: Add compatible and DT bindings for Amlogic A4/A5
>      Reset Controller
>    arm64: dts: amlogic: Add Amlogic A4 reset controller
>    arm64: dts: amlogic: Add Amlogic A5 reset controller
> 
>   .../bindings/reset/amlogic,meson-reset.yaml   | 21 ++--
>   .../arm64/boot/dts/amlogic/amlogic-a4-reset.h | 93 ++++++++++++++++++
>   arch/arm64/boot/dts/amlogic/amlogic-a4.dtsi   | 10 ++
>   .../arm64/boot/dts/amlogic/amlogic-a5-reset.h | 95 +++++++++++++++++++
>   arch/arm64/boot/dts/amlogic/amlogic-a5.dtsi   | 10 ++
>   5 files changed, 222 insertions(+), 7 deletions(-)
>   create mode 100644 arch/arm64/boot/dts/amlogic/amlogic-a4-reset.h
>   create mode 100644 arch/arm64/boot/dts/amlogic/amlogic-a5-reset.h
> 

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

end of thread, other threads:[~2024-09-02 11:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-15  5:12 [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver zelong dong
2024-07-15  5:12 ` [PATCH v2 1/3] dt-bindings: reset: Add compatible for Amlogic A4/A5 Reset Controller zelong dong
2024-07-15 16:13   ` Conor Dooley
2024-07-15  5:12 ` [PATCH v2 2/3] arm64: dts: amlogic: Add Amlogic A4 reset controller zelong dong
2024-07-15  5:12 ` [PATCH v2 3/3] arm64: dts: amlogic: Add Amlogic A5 " zelong dong
2024-09-02 11:28 ` [PATCH v2 0/3] reset: amlogic-a4/a5: add reset driver Zelong Dong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).