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

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

This patchset adds Reset controller driver support for Meson-C3 SoC.
The RESET registers count and offset for C3 Soc are same as S4 Soc.

Changes since v1:
- remove Change-ID
- run scripts/checkpatch.pl and fix reported warnings
- sort dts node by base reg offset

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

Zelong Dong (3):
  dt-bindings: reset: Add compatible and DT bindings for Meson-C3 Reset
    Controller
  reset: reset-meson: add support for the Meson-C3 SoC Reset Controller
  arm64: dts: meson: add reset controller for Meson-C3 SoC

 .../bindings/reset/amlogic,meson-reset.yaml   |   1 +
 arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi   |   7 ++
 drivers/reset/reset-meson.c                   |   1 +
 .../reset/amlogic,meson-c3-reset.h            | 119 ++++++++++++++++++
 4 files changed, 128 insertions(+)
 create mode 100644 include/dt-bindings/reset/amlogic,meson-c3-reset.h

-- 
2.35.1


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

* [PATCH v2 1/3] dt-bindings: reset: Add compatible and DT bindings for Meson-C3 Reset Controller
  2023-07-18 12:35 [PATCH v2 0/3] reset: meson-c3: add reset driver zelong dong
@ 2023-07-18 12:35 ` zelong dong
  2023-07-19 22:03   ` Rob Herring
  2023-07-18 12:35 ` [PATCH v2 2/3] reset: reset-meson: add support for the Meson-C3 SoC " zelong dong
  2023-07-18 12:35 ` [PATCH v2 3/3] arm64: dts: meson: add reset controller for Meson-C3 SoC zelong dong
  2 siblings, 1 reply; 5+ messages in thread
From: zelong dong @ 2023-07-18 12:35 UTC (permalink / raw)
  To: Neil Armstrong, Philipp Zabel, Kevin Hilman, Rob Herring,
	Martin Blumenstingl, Jerome Brunet
  Cc: linux-kernel, linux-amlogic, linux-arm-kernel,
	Krzysztof Kozlowski, devicetree, kelvin.zhang, Zelong Dong

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

Add new compatible and DT bindings for Amlogic's Meson-C3 Reset Controller

Signed-off-by: Zelong Dong <zelong.dong@amlogic.com>
---
 .../bindings/reset/amlogic,meson-reset.yaml   |   1 +
 .../reset/amlogic,meson-c3-reset.h            | 119 ++++++++++++++++++
 2 files changed, 120 insertions(+)
 create mode 100644 include/dt-bindings/reset/amlogic,meson-c3-reset.h

diff --git a/Documentation/devicetree/bindings/reset/amlogic,meson-reset.yaml b/Documentation/devicetree/bindings/reset/amlogic,meson-reset.yaml
index d3fdee89d4f8..cf1da9f7bc51 100644
--- a/Documentation/devicetree/bindings/reset/amlogic,meson-reset.yaml
+++ b/Documentation/devicetree/bindings/reset/amlogic,meson-reset.yaml
@@ -18,6 +18,7 @@ properties:
       - 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,meson-c3-reset # Reset Controller on C3 and compatible SoCs
 
   reg:
     maxItems: 1
diff --git a/include/dt-bindings/reset/amlogic,meson-c3-reset.h b/include/dt-bindings/reset/amlogic,meson-c3-reset.h
new file mode 100644
index 000000000000..e071cd6d09cf
--- /dev/null
+++ b/include/dt-bindings/reset/amlogic,meson-c3-reset.h
@@ -0,0 +1,119 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR MIT) */
+/*
+ * Copyright (c) 2023 Amlogic, Inc. All rights reserved.
+ */
+
+#ifndef _DT_BINDINGS_AMLOGIC_MESON_C3_RESET_H
+#define _DT_BINDINGS_AMLOGIC_MESON_C3_RESET_H
+
+/* RESET0 */
+/*						0-3 */
+#define RESET_USBCTRL				4
+/*						5-7 */
+#define RESET_USBPHY20				8
+/*						9 */
+#define RESET_USB2DRD				10
+#define RESET_MIPI_DSI_HOST			11
+#define RESET_MIPI_DSI_PHY			12
+/*						13-20 */
+#define RESET_GE2D				21
+#define RESET_DWAP				22
+/*						23-31 */
+
+/* RESET1 */
+#define RESET_AUDIO				32
+/*						33-34 */
+#define RESET_DDRAPB				35
+#define RESET_DDR				36
+#define RESET_DOS_CAPB3				37
+#define RESET_DOS				38
+/*						39-46 */
+#define RESET_NNA				47
+#define RESET_ETHERNET				48
+#define RESET_ISP				49
+#define RESET_VC9000E_APB			50
+#define RESET_VC9000E_A				51
+/*						52 */
+#define RESET_VC9000E_CORE			53
+/*						54-63 */
+
+/* RESET2 */
+#define RESET_ABUS_ARB				64
+#define RESET_IRCTRL				65
+/*						66 */
+#define RESET_TEMP_PII				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-87 */
+#define RESET_ACODEC				88
+/*						89-90 */
+#define RESET_WATCHDOG				91
+/*						92-95 */
+
+/* RESET3 */
+#define RESET_ISP_NIC_GPV			96
+#define RESET_ISP_NIC_MAIN			97
+#define RESET_ISP_NIC_VCLK			98
+#define RESET_ISP_NIC_VOUT			99
+#define RESET_ISP_NIC_ALL			100
+#define RESET_VOUT				101
+#define RESET_VOUT_VENC				102
+/*						103 */
+#define RESET_CVE_NIC_GPV			104
+#define RESET_CVE_NIC_MAIN			105
+#define RESET_CVE_NIC_GE2D			106
+#define RESET_CVE_NIC_DW			106
+#define RESET_CVE_NIC_CVE			108
+#define RESET_CVE_NIC_ALL			109
+#define RESET_CVE				110
+/*						112-127 */
+
+/* RESET4 */
+#define RESET_RTC				128
+#define RESET_PWM_AB				129
+#define RESET_PWM_CD				130
+#define RESET_PWM_EF				131
+#define RESET_PWM_GH				132
+#define RESET_PWM_IJ				133
+#define RESET_PWM_KL				134
+#define RESET_PWM_MN				135
+/*						136-137 */
+#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
+#define RESET_UART_F				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_SD_EMMC_A				152
+#define RESET_SD_EMMC_B				153
+#define RESET_SD_EMMC_C				154
+
+/* RESET5 */
+/*						160-172 */
+#define RESET_BRG_NIC_NNA			173
+#define RESET_BRG_MUX_NIC_MAIN			174
+#define RESET_BRG_AO_NIC_ALL			175
+/*						176-183 */
+#define RESET_BRG_NIC_VAPB			184
+#define RESET_BRG_NIC_SDIO_B			185
+#define RESET_BRG_NIC_SDIO_A			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
-- 
2.35.1


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

* [PATCH v2 2/3] reset: reset-meson: add support for the Meson-C3 SoC Reset Controller
  2023-07-18 12:35 [PATCH v2 0/3] reset: meson-c3: add reset driver zelong dong
  2023-07-18 12:35 ` [PATCH v2 1/3] dt-bindings: reset: Add compatible and DT bindings for Meson-C3 Reset Controller zelong dong
@ 2023-07-18 12:35 ` zelong dong
  2023-07-18 12:35 ` [PATCH v2 3/3] arm64: dts: meson: add reset controller for Meson-C3 SoC zelong dong
  2 siblings, 0 replies; 5+ messages in thread
From: zelong dong @ 2023-07-18 12:35 UTC (permalink / raw)
  To: Neil Armstrong, Philipp Zabel, Kevin Hilman, Rob Herring,
	Martin Blumenstingl, Jerome Brunet
  Cc: linux-kernel, linux-amlogic, linux-arm-kernel,
	Krzysztof Kozlowski, devicetree, kelvin.zhang, Zelong Dong,
	Dmitry Rokosov

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

Add a new compatible string to support for the reset controller
on the C3 SoC. The count and offset for C3 Soc RESET registers are
same as S4 Soc.

Signed-off-by: Zelong Dong <zelong.dong@amlogic.com>
Reviewed-by: Dmitry Rokosov <ddrokosov@sberdevices.ru>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
---
 drivers/reset/reset-meson.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/reset/reset-meson.c b/drivers/reset/reset-meson.c
index 13878ca2779d..ee1d5caf0ee4 100644
--- a/drivers/reset/reset-meson.c
+++ b/drivers/reset/reset-meson.c
@@ -109,6 +109,7 @@ static const struct of_device_id meson_reset_dt_ids[] = {
 	 { .compatible = "amlogic,meson-axg-reset",  .data = &meson8b_param},
 	 { .compatible = "amlogic,meson-a1-reset",   .data = &meson_a1_param},
 	 { .compatible = "amlogic,meson-s4-reset",   .data = &meson_s4_param},
+	 { .compatible = "amlogic,meson-c3-reset",   .data = &meson_s4_param},
 	 { /* sentinel */ },
 };
 MODULE_DEVICE_TABLE(of, meson_reset_dt_ids);
-- 
2.35.1


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

* [PATCH v2 3/3] arm64: dts: meson: add reset controller for Meson-C3 SoC
  2023-07-18 12:35 [PATCH v2 0/3] reset: meson-c3: add reset driver zelong dong
  2023-07-18 12:35 ` [PATCH v2 1/3] dt-bindings: reset: Add compatible and DT bindings for Meson-C3 Reset Controller zelong dong
  2023-07-18 12:35 ` [PATCH v2 2/3] reset: reset-meson: add support for the Meson-C3 SoC " zelong dong
@ 2023-07-18 12:35 ` zelong dong
  2 siblings, 0 replies; 5+ messages in thread
From: zelong dong @ 2023-07-18 12:35 UTC (permalink / raw)
  To: Neil Armstrong, Philipp Zabel, Kevin Hilman, Rob Herring,
	Martin Blumenstingl, Jerome Brunet
  Cc: linux-kernel, linux-amlogic, linux-arm-kernel,
	Krzysztof Kozlowski, devicetree, kelvin.zhang, Zelong Dong

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

Add the reset controller device of Meson-C3 SoC family

Signed-off-by: Zelong Dong <zelong.dong@amlogic.com>
---
 arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi b/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
index 60ad4f3eef9d..ef81dd8338e0 100644
--- a/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
+++ b/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
@@ -6,6 +6,7 @@
 #include <dt-bindings/interrupt-controller/irq.h>
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/reset/amlogic,meson-c3-reset.h>
 
 / {
 	cpus {
@@ -72,6 +73,12 @@ apb4: bus@fe000000 {
 			#size-cells = <2>;
 			ranges = <0x0 0x0 0x0 0xfe000000 0x0 0x480000>;
 
+			reset: reset-controller@2000 {
+				compatible = "amlogic,meson-c3-reset";
+				reg = <0x0 0x2000 0x0 0x98>;
+				#reset-cells = <1>;
+			};
+
 			uart_b: serial@7a000 {
 				compatible = "amlogic,meson-s4-uart",
 					   "amlogic,meson-ao-uart";
-- 
2.35.1


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

* Re: [PATCH v2 1/3] dt-bindings: reset: Add compatible and DT bindings for Meson-C3 Reset Controller
  2023-07-18 12:35 ` [PATCH v2 1/3] dt-bindings: reset: Add compatible and DT bindings for Meson-C3 Reset Controller zelong dong
@ 2023-07-19 22:03   ` Rob Herring
  0 siblings, 0 replies; 5+ messages in thread
From: Rob Herring @ 2023-07-19 22:03 UTC (permalink / raw)
  To: zelong dong
  Cc: Rob Herring, Jerome Brunet, Neil Armstrong, linux-arm-kernel,
	Martin Blumenstingl, Krzysztof Kozlowski, kelvin.zhang,
	devicetree, Philipp Zabel, Kevin Hilman, linux-kernel,
	linux-amlogic


On Tue, 18 Jul 2023 20:35:48 +0800, zelong dong wrote:
> From: Zelong Dong <zelong.dong@amlogic.com>
> 
> Add new compatible and DT bindings for Amlogic's Meson-C3 Reset Controller
> 
> Signed-off-by: Zelong Dong <zelong.dong@amlogic.com>
> ---
>  .../bindings/reset/amlogic,meson-reset.yaml   |   1 +
>  .../reset/amlogic,meson-c3-reset.h            | 119 ++++++++++++++++++
>  2 files changed, 120 insertions(+)
>  create mode 100644 include/dt-bindings/reset/amlogic,meson-c3-reset.h
> 

Reviewed-by: Rob Herring <robh@kernel.org>


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

end of thread, other threads:[~2023-07-19 22:03 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-18 12:35 [PATCH v2 0/3] reset: meson-c3: add reset driver zelong dong
2023-07-18 12:35 ` [PATCH v2 1/3] dt-bindings: reset: Add compatible and DT bindings for Meson-C3 Reset Controller zelong dong
2023-07-19 22:03   ` Rob Herring
2023-07-18 12:35 ` [PATCH v2 2/3] reset: reset-meson: add support for the Meson-C3 SoC " zelong dong
2023-07-18 12:35 ` [PATCH v2 3/3] arm64: dts: meson: add reset controller for Meson-C3 SoC 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).