forked from Minki/linux
First round of amlogic clock update for v5.5:
Add sm1 support in the audio clock controller -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE9OFZrhjz9W1fG7cb5vwPHDfy2oUFAl24R0oACgkQ5vwPHDfy 2oVV2A//QhVPXXZK6BdXt/Y5vr3nBbIRsSrRXcqXZSc81rBrxRT4j6afkHz75439 9DY0tSlEEQkTS9vv7QhyJ9cuqC0FsV53w/2nmr93jRO7KlTZLPi6YC/E4oQry1W5 4HiP1th5z8T/AOmbfEwnCj1ZvW2quhC8T67ggmGYzkTrUjTjgfe2csM9Mm1WzAAn wuvgx8x1kpIUiVM13MfzpsZ6p+n/seSDC+w6LB5xDK72Zkyg7OmK31lpwhB/VQc7 oVmyTv7VE5Zo4nfySOeG5srKyUHWJjx13YEyykRaGZyE/5zI6r5w94GqFyGF2SP8 iHbdnVVBR4AW8t07dugSmpZYcU3NKqUSw6Z49BMCl1BtTQISgDYBfDzWAhbeGUEY GamoQwYFBnoGRN3okeVGQcVrQdzj2EhYlDzu+do0QQKmylMgt1+EblxUqfEQ8Lq7 x30CWywIBTGXsCEI1T0PF4uTK7PvZ8JoQyifcbVXclZe/mtAve9v2Vf1YwA81frS +tUw8UqYzXvp/mp7ysJbSnl/8mOyJURqpic+xjxHptc2Qm2ydwRcFIP8St0MkRE6 w587UwfjM1yICeWu0ijE40ySKqWH5WaPFPCfrEhRhwaWJwMaUXGvww01d7yQw5iy XbN4BMQNeUGzqY+O4mDhwxINzNw991PJR/fgECdI47QD2XXDC7E= =neWk -----END PGP SIGNATURE----- Merge tag 'clk-meson-v5.5-1' of https://github.com/BayLibre/clk-meson into clk-amlogic Pull Amlogic clk updates from Jerome Brunet: - Add sm1 support in the Amlogic audio clock controller * tag 'clk-meson-v5.5-1' of https://github.com/BayLibre/clk-meson: clk: meson: axg-audio: use devm_platform_ioremap_resource() to simplify code clk: meson: axg_audio: add sm1 support clk: meson: axg-audio: provide clk top signal name clk: meson: axg-audio: prepare sm1 addition clk: meson: axg-audio: fix regmap last register clk: meson: axg-audio: remove useless defines dt-bindings: clock: meson: add sm1 resets to the axg-audio controller dt-bindings: clk: axg-audio: add sm1 bindings clk: meson: g12a: set CLK_MUX_ROUND_CLOSEST on the cpu clock muxes clk: meson: g12a: fix cpu clock rate setting clk: meson: gxbb: let sar_adc_clk_div set the parent clock rate
This commit is contained in:
commit
fac3810fb0
@ -7,7 +7,8 @@ devices.
|
||||
Required Properties:
|
||||
|
||||
- compatible : should be "amlogic,axg-audio-clkc" for the A113X and A113D,
|
||||
"amlogic,g12a-audio-clkc" for G12A.
|
||||
"amlogic,g12a-audio-clkc" for G12A,
|
||||
"amlogic,sm1-audio-clkc" for S905X3.
|
||||
- reg : physical base address of the clock controller and length of
|
||||
memory mapped region.
|
||||
- clocks : a list of phandle + clock-specifier pairs for the clocks listed
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -50,6 +50,20 @@
|
||||
#define AUDIO_CLK_PDMIN_CTRL1 0x0B0
|
||||
#define AUDIO_CLK_SPDIFOUT_B_CTRL 0x0B4
|
||||
|
||||
/* SM1 introduce new register and some shifts :( */
|
||||
#define AUDIO_CLK_GATE_EN1 0x004
|
||||
#define AUDIO_SM1_MCLK_A_CTRL 0x008
|
||||
#define AUDIO_SM1_MCLK_B_CTRL 0x00C
|
||||
#define AUDIO_SM1_MCLK_C_CTRL 0x010
|
||||
#define AUDIO_SM1_MCLK_D_CTRL 0x014
|
||||
#define AUDIO_SM1_MCLK_E_CTRL 0x018
|
||||
#define AUDIO_SM1_MCLK_F_CTRL 0x01C
|
||||
#define AUDIO_SM1_MST_PAD_CTRL0 0x020
|
||||
#define AUDIO_SM1_MST_PAD_CTRL1 0x024
|
||||
#define AUDIO_SM1_SW_RESET0 0x028
|
||||
#define AUDIO_SM1_SW_RESET1 0x02C
|
||||
#define AUDIO_CLK81_CTRL 0x030
|
||||
#define AUDIO_CLK81_EN 0x034
|
||||
/*
|
||||
* CLKID index values
|
||||
* These indices are entirely contrived and do not map onto the hardware.
|
||||
@ -115,10 +129,15 @@
|
||||
#define AUD_CLKID_TDMOUT_C_SCLK_POST_EN 150
|
||||
#define AUD_CLKID_SPDIFOUT_B_CLK_SEL 153
|
||||
#define AUD_CLKID_SPDIFOUT_B_CLK_DIV 154
|
||||
#define AUD_CLKID_CLK81_EN 173
|
||||
#define AUD_CLKID_SYSCLK_A_DIV 174
|
||||
#define AUD_CLKID_SYSCLK_B_DIV 175
|
||||
#define AUD_CLKID_SYSCLK_A_EN 176
|
||||
#define AUD_CLKID_SYSCLK_B_EN 177
|
||||
|
||||
/* include the CLKIDs which are part of the DT bindings */
|
||||
#include <dt-bindings/clock/axg-audio-clkc.h>
|
||||
|
||||
#define NR_CLKS 163
|
||||
#define NR_CLKS 178
|
||||
|
||||
#endif /*__AXG_AUDIO_CLKC_H */
|
||||
|
@ -343,6 +343,7 @@ static struct clk_regmap g12a_cpu_clk_premux0 = {
|
||||
.offset = HHI_SYS_CPU_CLK_CNTL0,
|
||||
.mask = 0x3,
|
||||
.shift = 0,
|
||||
.flags = CLK_MUX_ROUND_CLOSEST,
|
||||
},
|
||||
.hw.init = &(struct clk_init_data){
|
||||
.name = "cpu_clk_dyn0_sel",
|
||||
@ -353,8 +354,7 @@ static struct clk_regmap g12a_cpu_clk_premux0 = {
|
||||
{ .hw = &g12a_fclk_div3.hw },
|
||||
},
|
||||
.num_parents = 3,
|
||||
/* This sub-tree is used a parking clock */
|
||||
.flags = CLK_SET_RATE_NO_REPARENT,
|
||||
.flags = CLK_SET_RATE_PARENT,
|
||||
},
|
||||
};
|
||||
|
||||
@ -410,6 +410,7 @@ static struct clk_regmap g12a_cpu_clk_postmux0 = {
|
||||
.offset = HHI_SYS_CPU_CLK_CNTL0,
|
||||
.mask = 0x1,
|
||||
.shift = 2,
|
||||
.flags = CLK_MUX_ROUND_CLOSEST,
|
||||
},
|
||||
.hw.init = &(struct clk_init_data){
|
||||
.name = "cpu_clk_dyn0",
|
||||
@ -466,6 +467,7 @@ static struct clk_regmap g12a_cpu_clk_dyn = {
|
||||
.offset = HHI_SYS_CPU_CLK_CNTL0,
|
||||
.mask = 0x1,
|
||||
.shift = 10,
|
||||
.flags = CLK_MUX_ROUND_CLOSEST,
|
||||
},
|
||||
.hw.init = &(struct clk_init_data){
|
||||
.name = "cpu_clk_dyn",
|
||||
@ -485,6 +487,7 @@ static struct clk_regmap g12a_cpu_clk = {
|
||||
.offset = HHI_SYS_CPU_CLK_CNTL0,
|
||||
.mask = 0x1,
|
||||
.shift = 11,
|
||||
.flags = CLK_MUX_ROUND_CLOSEST,
|
||||
},
|
||||
.hw.init = &(struct clk_init_data){
|
||||
.name = "cpu_clk",
|
||||
@ -504,6 +507,7 @@ static struct clk_regmap g12b_cpu_clk = {
|
||||
.offset = HHI_SYS_CPU_CLK_CNTL0,
|
||||
.mask = 0x1,
|
||||
.shift = 11,
|
||||
.flags = CLK_MUX_ROUND_CLOSEST,
|
||||
},
|
||||
.hw.init = &(struct clk_init_data){
|
||||
.name = "cpu_clk",
|
||||
@ -523,6 +527,7 @@ static struct clk_regmap g12b_cpub_clk_premux0 = {
|
||||
.offset = HHI_SYS_CPUB_CLK_CNTL,
|
||||
.mask = 0x3,
|
||||
.shift = 0,
|
||||
.flags = CLK_MUX_ROUND_CLOSEST,
|
||||
},
|
||||
.hw.init = &(struct clk_init_data){
|
||||
.name = "cpub_clk_dyn0_sel",
|
||||
@ -533,6 +538,7 @@ static struct clk_regmap g12b_cpub_clk_premux0 = {
|
||||
{ .hw = &g12a_fclk_div3.hw },
|
||||
},
|
||||
.num_parents = 3,
|
||||
.flags = CLK_SET_RATE_PARENT,
|
||||
},
|
||||
};
|
||||
|
||||
@ -567,6 +573,7 @@ static struct clk_regmap g12b_cpub_clk_postmux0 = {
|
||||
.offset = HHI_SYS_CPUB_CLK_CNTL,
|
||||
.mask = 0x1,
|
||||
.shift = 2,
|
||||
.flags = CLK_MUX_ROUND_CLOSEST,
|
||||
},
|
||||
.hw.init = &(struct clk_init_data){
|
||||
.name = "cpub_clk_dyn0",
|
||||
@ -644,6 +651,7 @@ static struct clk_regmap g12b_cpub_clk_dyn = {
|
||||
.offset = HHI_SYS_CPUB_CLK_CNTL,
|
||||
.mask = 0x1,
|
||||
.shift = 10,
|
||||
.flags = CLK_MUX_ROUND_CLOSEST,
|
||||
},
|
||||
.hw.init = &(struct clk_init_data){
|
||||
.name = "cpub_clk_dyn",
|
||||
@ -663,6 +671,7 @@ static struct clk_regmap g12b_cpub_clk = {
|
||||
.offset = HHI_SYS_CPUB_CLK_CNTL,
|
||||
.mask = 0x1,
|
||||
.shift = 11,
|
||||
.flags = CLK_MUX_ROUND_CLOSEST,
|
||||
},
|
||||
.hw.init = &(struct clk_init_data){
|
||||
.name = "cpub_clk",
|
||||
|
@ -935,6 +935,7 @@ static struct clk_regmap gxbb_sar_adc_clk_div = {
|
||||
&gxbb_sar_adc_clk_sel.hw
|
||||
},
|
||||
.num_parents = 1,
|
||||
.flags = CLK_SET_RATE_PARENT,
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -80,5 +80,15 @@
|
||||
#define AUD_CLKID_TDM_SCLK_PAD0 160
|
||||
#define AUD_CLKID_TDM_SCLK_PAD1 161
|
||||
#define AUD_CLKID_TDM_SCLK_PAD2 162
|
||||
#define AUD_CLKID_TOP 163
|
||||
#define AUD_CLKID_TORAM 164
|
||||
#define AUD_CLKID_EQDRC 165
|
||||
#define AUD_CLKID_RESAMPLE_B 166
|
||||
#define AUD_CLKID_TOVAD 167
|
||||
#define AUD_CLKID_LOCKER 168
|
||||
#define AUD_CLKID_SPDIFIN_LB 169
|
||||
#define AUD_CLKID_FRDDR_D 170
|
||||
#define AUD_CLKID_TODDR_D 171
|
||||
#define AUD_CLKID_LOOPBACK_B 172
|
||||
|
||||
#endif /* __AXG_AUDIO_CLKC_BINDINGS_H */
|
||||
|
@ -35,4 +35,19 @@
|
||||
#define AUD_RESET_TOHDMITX 24
|
||||
#define AUD_RESET_CLKTREE 25
|
||||
|
||||
/* SM1 added resets */
|
||||
#define AUD_RESET_RESAMPLE_B 26
|
||||
#define AUD_RESET_TOVAD 27
|
||||
#define AUD_RESET_LOCKER 28
|
||||
#define AUD_RESET_SPDIFIN_LB 29
|
||||
#define AUD_RESET_FRATV 30
|
||||
#define AUD_RESET_FRHDMIRX 31
|
||||
#define AUD_RESET_FRDDR_D 32
|
||||
#define AUD_RESET_TODDR_D 33
|
||||
#define AUD_RESET_LOOPBACK_B 34
|
||||
#define AUD_RESET_EARCTX 35
|
||||
#define AUD_RESET_EARCRX 36
|
||||
#define AUD_RESET_FRDDR_E 37
|
||||
#define AUD_RESET_TODDR_E 38
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user