Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: mfd: aspeed: Support for AST2700

Add reset, clk dt bindings headers, and update compatible
support for AST2700 clk, silicon-id in yaml.

Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Link: https://lore.kernel.org/r/20241023090153.1395220-2-ryan_chen@aspeedtech.com
Signed-off-by: Lee Jones <lee@kernel.org>

authored by

Ryan Chen and committed by
Lee Jones
76c6217c 10821a06

+294 -1
+7 -1
Documentation/devicetree/bindings/mfd/aspeed,ast2x00-scu.yaml
··· 9 9 description: 10 10 The Aspeed System Control Unit manages the global behaviour of the SoC, 11 11 configuring elements such as clocks, pinmux, and reset. 12 + In AST2700 SOC which has two soc connection, each soc have its own scu 13 + register control, ast2700-scu0 for soc0, ast2700-scu1 for soc1. 12 14 13 15 maintainers: 14 16 - Joel Stanley <joel@jms.id.au> ··· 23 21 - aspeed,ast2400-scu 24 22 - aspeed,ast2500-scu 25 23 - aspeed,ast2600-scu 24 + - aspeed,ast2700-scu0 25 + - aspeed,ast2700-scu1 26 26 - const: syscon 27 27 - const: simple-mfd 28 28 ··· 34 30 ranges: true 35 31 36 32 '#address-cells': 37 - const: 1 33 + minimum: 1 34 + maximum: 2 38 35 39 36 '#size-cells': 40 37 const: 1 ··· 81 76 - aspeed,ast2400-silicon-id 82 77 - aspeed,ast2500-silicon-id 83 78 - aspeed,ast2600-silicon-id 79 + - aspeed,ast2700-silicon-id 84 80 - const: aspeed,silicon-id 85 81 86 82 reg:
+163
include/dt-bindings/clock/aspeed,ast2700-scu.h
··· 1 + /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */ 2 + /* 3 + * Device Tree binding constants for AST2700 clock controller. 4 + * 5 + * Copyright (c) 2024 Aspeed Technology Inc. 6 + */ 7 + 8 + #ifndef __DT_BINDINGS_CLOCK_AST2700_H 9 + #define __DT_BINDINGS_CLOCK_AST2700_H 10 + 11 + /* SOC0 clk */ 12 + #define SCU0_CLKIN 0 13 + #define SCU0_CLK_24M 1 14 + #define SCU0_CLK_192M 2 15 + #define SCU0_CLK_UART 3 16 + #define SCU0_CLK_UART_DIV13 3 17 + #define SCU0_CLK_PSP 4 18 + #define SCU0_CLK_HPLL 5 19 + #define SCU0_CLK_HPLL_DIV2 6 20 + #define SCU0_CLK_HPLL_DIV4 7 21 + #define SCU0_CLK_HPLL_DIV_AHB 8 22 + #define SCU0_CLK_DPLL 9 23 + #define SCU0_CLK_MPLL 10 24 + #define SCU0_CLK_MPLL_DIV2 11 25 + #define SCU0_CLK_MPLL_DIV4 12 26 + #define SCU0_CLK_MPLL_DIV8 13 27 + #define SCU0_CLK_MPLL_DIV_AHB 14 28 + #define SCU0_CLK_D0 15 29 + #define SCU0_CLK_D1 16 30 + #define SCU0_CLK_CRT0 17 31 + #define SCU0_CLK_CRT1 18 32 + #define SCU0_CLK_MPHY 19 33 + #define SCU0_CLK_AXI0 20 34 + #define SCU0_CLK_AXI1 21 35 + #define SCU0_CLK_AHB 22 36 + #define SCU0_CLK_APB 23 37 + #define SCU0_CLK_UART4 24 38 + #define SCU0_CLK_EMMCMUX 25 39 + #define SCU0_CLK_EMMC 26 40 + #define SCU0_CLK_U2PHY_CLK12M 27 41 + #define SCU0_CLK_U2PHY_REFCLK 28 42 + 43 + /* SOC0 clk-gate */ 44 + #define SCU0_CLK_GATE_MCLK 29 45 + #define SCU0_CLK_GATE_ECLK 30 46 + #define SCU0_CLK_GATE_2DCLK 31 47 + #define SCU0_CLK_GATE_VCLK 32 48 + #define SCU0_CLK_GATE_BCLK 33 49 + #define SCU0_CLK_GATE_VGA0CLK 34 50 + #define SCU0_CLK_GATE_REFCLK 35 51 + #define SCU0_CLK_GATE_PORTBUSB2CLK 36 52 + #define SCU0_CLK_GATE_UHCICLK 37 53 + #define SCU0_CLK_GATE_VGA1CLK 38 54 + #define SCU0_CLK_GATE_DDRPHYCLK 39 55 + #define SCU0_CLK_GATE_E2M0CLK 40 56 + #define SCU0_CLK_GATE_HACCLK 41 57 + #define SCU0_CLK_GATE_PORTAUSB2CLK 42 58 + #define SCU0_CLK_GATE_UART4CLK 43 59 + #define SCU0_CLK_GATE_SLICLK 44 60 + #define SCU0_CLK_GATE_DACCLK 45 61 + #define SCU0_CLK_GATE_DP 46 62 + #define SCU0_CLK_GATE_E2M1CLK 47 63 + #define SCU0_CLK_GATE_CRT0CLK 48 64 + #define SCU0_CLK_GATE_CRT1CLK 49 65 + #define SCU0_CLK_GATE_ECDSACLK 50 66 + #define SCU0_CLK_GATE_RSACLK 51 67 + #define SCU0_CLK_GATE_RVAS0CLK 52 68 + #define SCU0_CLK_GATE_UFSCLK 53 69 + #define SCU0_CLK_GATE_EMMCCLK 54 70 + #define SCU0_CLK_GATE_RVAS1CLK 55 71 + 72 + /* SOC1 clk */ 73 + #define SCU1_CLKIN 0 74 + #define SCU1_CLK_HPLL 1 75 + #define SCU1_CLK_APLL 2 76 + #define SCU1_CLK_APLL_DIV2 3 77 + #define SCU1_CLK_APLL_DIV4 4 78 + #define SCU1_CLK_DPLL 5 79 + #define SCU1_CLK_UXCLK 6 80 + #define SCU1_CLK_HUXCLK 7 81 + #define SCU1_CLK_UARTX 8 82 + #define SCU1_CLK_HUARTX 9 83 + #define SCU1_CLK_AHB 10 84 + #define SCU1_CLK_APB 11 85 + #define SCU1_CLK_UART0 12 86 + #define SCU1_CLK_UART1 13 87 + #define SCU1_CLK_UART2 14 88 + #define SCU1_CLK_UART3 15 89 + #define SCU1_CLK_UART5 16 90 + #define SCU1_CLK_UART6 17 91 + #define SCU1_CLK_UART7 18 92 + #define SCU1_CLK_UART8 19 93 + #define SCU1_CLK_UART9 20 94 + #define SCU1_CLK_UART10 21 95 + #define SCU1_CLK_UART11 22 96 + #define SCU1_CLK_UART12 23 97 + #define SCU1_CLK_UART13 24 98 + #define SCU1_CLK_UART14 25 99 + #define SCU1_CLK_APLL_DIVN 26 100 + #define SCU1_CLK_SDMUX 27 101 + #define SCU1_CLK_SDCLK 28 102 + #define SCU1_CLK_RMII 29 103 + #define SCU1_CLK_RGMII 30 104 + #define SCU1_CLK_MACHCLK 31 105 + #define SCU1_CLK_MAC0RCLK 32 106 + #define SCU1_CLK_MAC1RCLK 33 107 + #define SCU1_CLK_CAN 34 108 + 109 + /* SOC1 clk gate */ 110 + #define SCU1_CLK_GATE_LCLK0 35 111 + #define SCU1_CLK_GATE_LCLK1 36 112 + #define SCU1_CLK_GATE_ESPI0CLK 37 113 + #define SCU1_CLK_GATE_ESPI1CLK 38 114 + #define SCU1_CLK_GATE_SDCLK 39 115 + #define SCU1_CLK_GATE_IPEREFCLK 40 116 + #define SCU1_CLK_GATE_REFCLK 41 117 + #define SCU1_CLK_GATE_LPCHCLK 42 118 + #define SCU1_CLK_GATE_MAC0CLK 43 119 + #define SCU1_CLK_GATE_MAC1CLK 44 120 + #define SCU1_CLK_GATE_MAC2CLK 45 121 + #define SCU1_CLK_GATE_UART0CLK 46 122 + #define SCU1_CLK_GATE_UART1CLK 47 123 + #define SCU1_CLK_GATE_UART2CLK 48 124 + #define SCU1_CLK_GATE_UART3CLK 49 125 + #define SCU1_CLK_GATE_I2CCLK 50 126 + #define SCU1_CLK_GATE_I3C0CLK 51 127 + #define SCU1_CLK_GATE_I3C1CLK 52 128 + #define SCU1_CLK_GATE_I3C2CLK 53 129 + #define SCU1_CLK_GATE_I3C3CLK 54 130 + #define SCU1_CLK_GATE_I3C4CLK 55 131 + #define SCU1_CLK_GATE_I3C5CLK 56 132 + #define SCU1_CLK_GATE_I3C6CLK 57 133 + #define SCU1_CLK_GATE_I3C7CLK 58 134 + #define SCU1_CLK_GATE_I3C8CLK 59 135 + #define SCU1_CLK_GATE_I3C9CLK 60 136 + #define SCU1_CLK_GATE_I3C10CLK 61 137 + #define SCU1_CLK_GATE_I3C11CLK 62 138 + #define SCU1_CLK_GATE_I3C12CLK 63 139 + #define SCU1_CLK_GATE_I3C13CLK 64 140 + #define SCU1_CLK_GATE_I3C14CLK 65 141 + #define SCU1_CLK_GATE_I3C15CLK 66 142 + #define SCU1_CLK_GATE_UART5CLK 67 143 + #define SCU1_CLK_GATE_UART6CLK 68 144 + #define SCU1_CLK_GATE_UART7CLK 69 145 + #define SCU1_CLK_GATE_UART8CLK 70 146 + #define SCU1_CLK_GATE_UART9CLK 71 147 + #define SCU1_CLK_GATE_UART10CLK 72 148 + #define SCU1_CLK_GATE_UART11CLK 73 149 + #define SCU1_CLK_GATE_UART12CLK 74 150 + #define SCU1_CLK_GATE_FSICLK 75 151 + #define SCU1_CLK_GATE_LTPIPHYCLK 76 152 + #define SCU1_CLK_GATE_LTPICLK 77 153 + #define SCU1_CLK_GATE_VGALCLK 78 154 + #define SCU1_CLK_GATE_UHCICLK 79 155 + #define SCU1_CLK_GATE_CANCLK 80 156 + #define SCU1_CLK_GATE_PCICLK 81 157 + #define SCU1_CLK_GATE_SLICLK 82 158 + #define SCU1_CLK_GATE_E2MCLK 83 159 + #define SCU1_CLK_GATE_PORTCUSB2CLK 84 160 + #define SCU1_CLK_GATE_PORTDUSB2CLK 85 161 + #define SCU1_CLK_GATE_LTPI1TXCLK 86 162 + 163 + #endif
+124
include/dt-bindings/reset/aspeed,ast2700-scu.h
··· 1 + /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */ 2 + /* 3 + * Device Tree binding constants for AST2700 reset controller. 4 + * 5 + * Copyright (c) 2024 Aspeed Technology Inc. 6 + */ 7 + 8 + #ifndef _MACH_ASPEED_AST2700_RESET_H_ 9 + #define _MACH_ASPEED_AST2700_RESET_H_ 10 + 11 + /* SOC0 */ 12 + #define SCU0_RESET_SDRAM 0 13 + #define SCU0_RESET_DDRPHY 1 14 + #define SCU0_RESET_RSA 2 15 + #define SCU0_RESET_SHA3 3 16 + #define SCU0_RESET_HACE 4 17 + #define SCU0_RESET_SOC 5 18 + #define SCU0_RESET_VIDEO 6 19 + #define SCU0_RESET_2D 7 20 + #define SCU0_RESET_PCIS 8 21 + #define SCU0_RESET_RVAS0 9 22 + #define SCU0_RESET_RVAS1 10 23 + #define SCU0_RESET_SM3 11 24 + #define SCU0_RESET_SM4 12 25 + #define SCU0_RESET_CRT0 13 26 + #define SCU0_RESET_ECC 14 27 + #define SCU0_RESET_DP_PCI 15 28 + #define SCU0_RESET_UFS 16 29 + #define SCU0_RESET_EMMC 17 30 + #define SCU0_RESET_PCIE1RST 18 31 + #define SCU0_RESET_PCIE1RSTOE 19 32 + #define SCU0_RESET_PCIE0RST 20 33 + #define SCU0_RESET_PCIE0RSTOE 21 34 + #define SCU0_RESET_JTAG 22 35 + #define SCU0_RESET_MCTP0 23 36 + #define SCU0_RESET_MCTP1 24 37 + #define SCU0_RESET_XDMA0 25 38 + #define SCU0_RESET_XDMA1 26 39 + #define SCU0_RESET_H2X1 27 40 + #define SCU0_RESET_DP 28 41 + #define SCU0_RESET_DP_MCU 29 42 + #define SCU0_RESET_SSP 30 43 + #define SCU0_RESET_H2X0 31 44 + #define SCU0_RESET_PORTA_VHUB 32 45 + #define SCU0_RESET_PORTA_PHY3 33 46 + #define SCU0_RESET_PORTA_XHCI 34 47 + #define SCU0_RESET_PORTB_VHUB 35 48 + #define SCU0_RESET_PORTB_PHY3 36 49 + #define SCU0_RESET_PORTB_XHCI 37 50 + #define SCU0_RESET_PORTA_VHUB_EHCI 38 51 + #define SCU0_RESET_PORTB_VHUB_EHCI 39 52 + #define SCU0_RESET_UHCI 40 53 + #define SCU0_RESET_TSP 41 54 + #define SCU0_RESET_E2M0 42 55 + #define SCU0_RESET_E2M1 43 56 + #define SCU0_RESET_VLINK 44 57 + 58 + /* SOC1 */ 59 + #define SCU1_RESET_LPC0 0 60 + #define SCU1_RESET_LPC1 1 61 + #define SCU1_RESET_MII 2 62 + #define SCU1_RESET_PECI 3 63 + #define SCU1_RESET_PWM 4 64 + #define SCU1_RESET_MAC0 5 65 + #define SCU1_RESET_MAC1 6 66 + #define SCU1_RESET_MAC2 7 67 + #define SCU1_RESET_ADC 8 68 + #define SCU1_RESET_SD 9 69 + #define SCU1_RESET_ESPI0 10 70 + #define SCU1_RESET_ESPI1 11 71 + #define SCU1_RESET_JTAG1 12 72 + #define SCU1_RESET_SPI0 13 73 + #define SCU1_RESET_SPI1 14 74 + #define SCU1_RESET_SPI2 15 75 + #define SCU1_RESET_I3C0 16 76 + #define SCU1_RESET_I3C1 17 77 + #define SCU1_RESET_I3C2 18 78 + #define SCU1_RESET_I3C3 19 79 + #define SCU1_RESET_I3C4 20 80 + #define SCU1_RESET_I3C5 21 81 + #define SCU1_RESET_I3C6 22 82 + #define SCU1_RESET_I3C7 23 83 + #define SCU1_RESET_I3C8 24 84 + #define SCU1_RESET_I3C9 25 85 + #define SCU1_RESET_I3C10 26 86 + #define SCU1_RESET_I3C11 27 87 + #define SCU1_RESET_I3C12 28 88 + #define SCU1_RESET_I3C13 29 89 + #define SCU1_RESET_I3C14 30 90 + #define SCU1_RESET_I3C15 31 91 + #define SCU1_RESET_MCU0 32 92 + #define SCU1_RESET_MCU1 33 93 + #define SCU1_RESET_H2A_SPI1 34 94 + #define SCU1_RESET_H2A_SPI2 35 95 + #define SCU1_RESET_UART0 36 96 + #define SCU1_RESET_UART1 37 97 + #define SCU1_RESET_UART2 38 98 + #define SCU1_RESET_UART3 39 99 + #define SCU1_RESET_I2C_FILTER 40 100 + #define SCU1_RESET_CALIPTRA 41 101 + #define SCU1_RESET_XDMA 42 102 + #define SCU1_RESET_FSI 43 103 + #define SCU1_RESET_CAN 44 104 + #define SCU1_RESET_MCTP 45 105 + #define SCU1_RESET_I2C 46 106 + #define SCU1_RESET_UART6 47 107 + #define SCU1_RESET_UART7 48 108 + #define SCU1_RESET_UART8 49 109 + #define SCU1_RESET_UART9 50 110 + #define SCU1_RESET_LTPI0 51 111 + #define SCU1_RESET_VGAL 52 112 + #define SCU1_RESET_LTPI1 53 113 + #define SCU1_RESET_ACE 54 114 + #define SCU1_RESET_E2M 55 115 + #define SCU1_RESET_UHCI 56 116 + #define SCU1_RESET_PORTC_USB2UART 57 117 + #define SCU1_RESET_PORTC_VHUB_EHCI 58 118 + #define SCU1_RESET_PORTD_USB2UART 59 119 + #define SCU1_RESET_PORTD_VHUB_EHCI 60 120 + #define SCU1_RESET_H2X 61 121 + #define SCU1_RESET_I3CDMA 62 122 + #define SCU1_RESET_PCIE2RST 63 123 + 124 + #endif /* _MACH_ASPEED_AST2700_RESET_H_ */