These clocks and resets are needed for video drivers.

Cc: Lukasz Majewski <lu...@denx.de>
Signed-off-by: Jernej Skrabec <jernej.skra...@siol.net>
---
 drivers/clk/sunxi/clk_a64.c | 12 ++++++++++++
 drivers/clk/sunxi/clk_h3.c  | 12 ++++++++++++
 2 files changed, 24 insertions(+)

diff --git a/drivers/clk/sunxi/clk_a64.c b/drivers/clk/sunxi/clk_a64.c
index 0553ffa4399a..28131240652f 100644
--- a/drivers/clk/sunxi/clk_a64.c
+++ b/drivers/clk/sunxi/clk_a64.c
@@ -26,6 +26,9 @@ static const struct ccu_clk_gate a64_gates[] = {
        [CLK_BUS_OHCI0]         = GATE(0x060, BIT(28)),
        [CLK_BUS_OHCI1]         = GATE(0x060, BIT(29)),
 
+       [CLK_BUS_HDMI]          = GATE(0x064, BIT(11)),
+       [CLK_BUS_DE]            = GATE(0x064, BIT(12)),
+
        [CLK_BUS_UART0]         = GATE(0x06c, BIT(16)),
        [CLK_BUS_UART1]         = GATE(0x06c, BIT(17)),
        [CLK_BUS_UART2]         = GATE(0x06c, BIT(18)),
@@ -41,6 +44,11 @@ static const struct ccu_clk_gate a64_gates[] = {
        [CLK_USB_HSIC_12M]      = GATE(0x0cc, BIT(11)),
        [CLK_USB_OHCI0]         = GATE(0x0cc, BIT(16)),
        [CLK_USB_OHCI1]         = GATE(0x0cc, BIT(17)),
+
+       [CLK_DE]                = GATE(0x104, BIT(31)),
+
+       [CLK_HDMI]              = GATE(0x150, BIT(31)),
+       [CLK_HDMI_DDC]          = GATE(0x154, BIT(31)),
 };
 
 static const struct ccu_reset a64_resets[] = {
@@ -60,6 +68,10 @@ static const struct ccu_reset a64_resets[] = {
        [RST_BUS_OHCI0]         = RESET(0x2c0, BIT(28)),
        [RST_BUS_OHCI1]         = RESET(0x2c0, BIT(29)),
 
+       [RST_BUS_HDMI0]         = RESET(0x2c4, BIT(10)),
+       [RST_BUS_HDMI1]         = RESET(0x2c4, BIT(11)),
+       [RST_BUS_DE]            = RESET(0x2c4, BIT(12)),
+
        [RST_BUS_UART0]         = RESET(0x2d8, BIT(16)),
        [RST_BUS_UART1]         = RESET(0x2d8, BIT(17)),
        [RST_BUS_UART2]         = RESET(0x2d8, BIT(18)),
diff --git a/drivers/clk/sunxi/clk_h3.c b/drivers/clk/sunxi/clk_h3.c
index f81633b92d5a..806a35b37435 100644
--- a/drivers/clk/sunxi/clk_h3.c
+++ b/drivers/clk/sunxi/clk_h3.c
@@ -30,6 +30,9 @@ static struct ccu_clk_gate h3_gates[] = {
        [CLK_BUS_OHCI2]         = GATE(0x060, BIT(30)),
        [CLK_BUS_OHCI3]         = GATE(0x060, BIT(31)),
 
+       [CLK_BUS_HDMI]          = GATE(0x064, BIT(11)),
+       [CLK_BUS_DE]            = GATE(0x064, BIT(12)),
+
        [CLK_BUS_UART0]         = GATE(0x06c, BIT(16)),
        [CLK_BUS_UART1]         = GATE(0x06c, BIT(17)),
        [CLK_BUS_UART2]         = GATE(0x06c, BIT(18)),
@@ -48,6 +51,11 @@ static struct ccu_clk_gate h3_gates[] = {
        [CLK_USB_OHCI1]         = GATE(0x0cc, BIT(17)),
        [CLK_USB_OHCI2]         = GATE(0x0cc, BIT(18)),
        [CLK_USB_OHCI3]         = GATE(0x0cc, BIT(19)),
+
+       [CLK_DE]                = GATE(0x104, BIT(31)),
+
+       [CLK_HDMI]              = GATE(0x150, BIT(31)),
+       [CLK_HDMI_DDC]          = GATE(0x154, BIT(31)),
 };
 
 static struct ccu_reset h3_resets[] = {
@@ -72,6 +80,10 @@ static struct ccu_reset h3_resets[] = {
        [RST_BUS_OHCI2]         = RESET(0x2c0, BIT(30)),
        [RST_BUS_OHCI3]         = RESET(0x2c0, BIT(31)),
 
+       [RST_BUS_HDMI0]         = RESET(0x2c4, BIT(10)),
+       [RST_BUS_HDMI1]         = RESET(0x2c4, BIT(11)),
+       [RST_BUS_DE]            = RESET(0x2c4, BIT(12)),
+
        [RST_BUS_EPHY]          = RESET(0x2c8, BIT(2)),
 
        [RST_BUS_UART0]         = RESET(0x2d8, BIT(16)),
-- 
2.30.1

Reply via email to