mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-18 22:14:16 +00:00
clk: sunxi-ng: Constify struct ccu_reset_map
'struct ccu_reset_map' are not modified in these drivers. Constifying this structure moves some data to a read-only section, so increase overall security. On a x86_64, with allmodconfig, as an example: Before: ====== text data bss dec hex filename 1533 2224 0 3757 ead drivers/clk/sunxi-ng/ccu-sun20i-d1-r.o After: ===== text data bss dec hex filename 1597 2160 0 3757 ead drivers/clk/sunxi-ng/ccu-sun20i-d1-r.o Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Link: https://patch.msgid.link/44745f27034fa670605cd16966a39b7fe88fe5a6.1726863905.git.christophe.jaillet@wanadoo.fr Signed-off-by: Chen-Yu Tsai <wens@csie.org>
This commit is contained in:
parent
d0c322b6e4
commit
c7e09a613b
25 changed files with 33 additions and 33 deletions
|
@ -91,7 +91,7 @@ static struct clk_hw_onecell_data sun20i_d1_r_hw_clks = {
|
|||
},
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun20i_d1_r_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun20i_d1_r_ccu_resets[] = {
|
||||
[RST_BUS_R_TIMER] = { 0x11c, BIT(16) },
|
||||
[RST_BUS_R_TWD] = { 0x12c, BIT(16) },
|
||||
[RST_BUS_R_PPU] = { 0x1ac, BIT(16) },
|
||||
|
|
|
@ -1232,7 +1232,7 @@ static struct clk_hw_onecell_data sun20i_d1_hw_clks = {
|
|||
},
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun20i_d1_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun20i_d1_ccu_resets[] = {
|
||||
[RST_MBUS] = { 0x540, BIT(30) },
|
||||
[RST_BUS_DE] = { 0x60c, BIT(16) },
|
||||
[RST_BUS_DI] = { 0x62c, BIT(16) },
|
||||
|
|
|
@ -1382,7 +1382,7 @@ static struct clk_hw_onecell_data sun7i_a20_hw_clks = {
|
|||
.num = CLK_NUMBER_SUN7I,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sunxi_a10_a20_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sunxi_a10_a20_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
[RST_USB_PHY2] = { 0x0cc, BIT(2) },
|
||||
|
|
|
@ -166,7 +166,7 @@ static struct clk_hw_onecell_data sun50i_a100_r_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_a100_r_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_a100_r_ccu_resets[] = {
|
||||
[RST_R_APB1_TIMER] = { 0x11c, BIT(16) },
|
||||
[RST_R_APB1_BUS_PWM] = { 0x13c, BIT(16) },
|
||||
[RST_R_APB1_PPU] = { 0x17c, BIT(16) },
|
||||
|
|
|
@ -1061,7 +1061,7 @@ static struct clk_hw_onecell_data sun50i_a100_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_a100_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_a100_ccu_resets[] = {
|
||||
[RST_MBUS] = { 0x540, BIT(30) },
|
||||
|
||||
[RST_BUS_DE] = { 0x60c, BIT(16) },
|
||||
|
|
|
@ -858,7 +858,7 @@ static struct clk_hw_onecell_data sun50i_a64_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_a64_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_a64_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
[RST_USB_HSIC] = { 0x0cc, BIT(2) },
|
||||
|
|
|
@ -179,7 +179,7 @@ static struct clk_hw_onecell_data sun50i_h616_r_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_h6_r_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_h6_r_ccu_resets[] = {
|
||||
[RST_R_APB1_TIMER] = { 0x11c, BIT(16) },
|
||||
[RST_R_APB1_TWD] = { 0x12c, BIT(16) },
|
||||
[RST_R_APB1_PWM] = { 0x13c, BIT(16) },
|
||||
|
@ -190,7 +190,7 @@ static struct ccu_reset_map sun50i_h6_r_ccu_resets[] = {
|
|||
[RST_R_APB1_W1] = { 0x1ec, BIT(16) },
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_h616_r_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_h616_r_ccu_resets[] = {
|
||||
[RST_R_APB1_TWD] = { 0x12c, BIT(16) },
|
||||
[RST_R_APB2_I2C] = { 0x19c, BIT(16) },
|
||||
[RST_R_APB2_RSB] = { 0x1bc, BIT(16) },
|
||||
|
|
|
@ -1076,7 +1076,7 @@ static struct clk_hw_onecell_data sun50i_h6_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_h6_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_h6_ccu_resets[] = {
|
||||
[RST_MBUS] = { 0x540, BIT(30) },
|
||||
|
||||
[RST_BUS_DE] = { 0x60c, BIT(16) },
|
||||
|
|
|
@ -1002,7 +1002,7 @@ static struct clk_hw_onecell_data sun50i_h616_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_h616_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_h616_ccu_resets[] = {
|
||||
[RST_MBUS] = { 0x540, BIT(30) },
|
||||
|
||||
[RST_BUS_DE] = { 0x60c, BIT(16) },
|
||||
|
|
|
@ -731,7 +731,7 @@ static struct clk_hw_onecell_data sun5i_a10s_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun5i_a10s_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun5i_a10s_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
|
||||
|
|
|
@ -1146,7 +1146,7 @@ static struct clk_hw_onecell_data sun6i_a31_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun6i_a31_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun6i_a31_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
[RST_USB_PHY2] = { 0x0cc, BIT(2) },
|
||||
|
|
|
@ -668,7 +668,7 @@ static struct clk_hw_onecell_data sun8i_a23_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_a23_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_a23_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
[RST_USB_HSIC] = { 0x0cc, BIT(2) },
|
||||
|
|
|
@ -712,7 +712,7 @@ static struct clk_hw_onecell_data sun8i_a33_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_a33_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_a33_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
[RST_USB_HSIC] = { 0x0cc, BIT(2) },
|
||||
|
|
|
@ -797,7 +797,7 @@ static struct clk_hw_onecell_data sun8i_a83t_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_a83t_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_a83t_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
[RST_USB_HSIC] = { 0x0cc, BIT(2) },
|
||||
|
|
|
@ -146,7 +146,7 @@ static struct clk_hw_onecell_data sun50i_a64_de2_hw_clks = {
|
|||
.num = CLK_NUMBER_WITH_ROT,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_a83t_de2_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_a83t_de2_resets[] = {
|
||||
[RST_MIXER0] = { 0x08, BIT(0) },
|
||||
/*
|
||||
* Mixer1 reset line is shared with wb, so only RST_WB is
|
||||
|
@ -156,7 +156,7 @@ static struct ccu_reset_map sun8i_a83t_de2_resets[] = {
|
|||
[RST_ROT] = { 0x08, BIT(3) },
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_h3_de2_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_h3_de2_resets[] = {
|
||||
[RST_MIXER0] = { 0x08, BIT(0) },
|
||||
/*
|
||||
* Mixer1 reset line is shared with wb, so only RST_WB is
|
||||
|
@ -166,14 +166,14 @@ static struct ccu_reset_map sun8i_h3_de2_resets[] = {
|
|||
[RST_WB] = { 0x08, BIT(2) },
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_a64_de2_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_a64_de2_resets[] = {
|
||||
[RST_MIXER0] = { 0x08, BIT(0) },
|
||||
[RST_MIXER1] = { 0x08, BIT(1) },
|
||||
[RST_WB] = { 0x08, BIT(2) },
|
||||
[RST_ROT] = { 0x08, BIT(3) },
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_h5_de2_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_h5_de2_resets[] = {
|
||||
[RST_MIXER0] = { 0x08, BIT(0) },
|
||||
[RST_MIXER1] = { 0x08, BIT(1) },
|
||||
[RST_WB] = { 0x08, BIT(2) },
|
||||
|
|
|
@ -876,7 +876,7 @@ static struct clk_hw_onecell_data sun50i_h5_hw_clks = {
|
|||
.num = CLK_NUMBER_H5,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_h3_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_h3_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
[RST_USB_PHY2] = { 0x0cc, BIT(2) },
|
||||
|
@ -939,7 +939,7 @@ static struct ccu_reset_map sun8i_h3_ccu_resets[] = {
|
|||
[RST_BUS_SCR0] = { 0x2d8, BIT(20) },
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_h5_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_h5_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
[RST_USB_PHY2] = { 0x0cc, BIT(2) },
|
||||
|
|
|
@ -178,7 +178,7 @@ static struct clk_hw_onecell_data sun50i_a64_r_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_a83t_r_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_a83t_r_ccu_resets[] = {
|
||||
[RST_APB0_IR] = { 0xb0, BIT(1) },
|
||||
[RST_APB0_TIMER] = { 0xb0, BIT(2) },
|
||||
[RST_APB0_RSB] = { 0xb0, BIT(3) },
|
||||
|
@ -186,14 +186,14 @@ static struct ccu_reset_map sun8i_a83t_r_ccu_resets[] = {
|
|||
[RST_APB0_I2C] = { 0xb0, BIT(6) },
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_h3_r_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_h3_r_ccu_resets[] = {
|
||||
[RST_APB0_IR] = { 0xb0, BIT(1) },
|
||||
[RST_APB0_TIMER] = { 0xb0, BIT(2) },
|
||||
[RST_APB0_UART] = { 0xb0, BIT(4) },
|
||||
[RST_APB0_I2C] = { 0xb0, BIT(6) },
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun50i_a64_r_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun50i_a64_r_ccu_resets[] = {
|
||||
[RST_APB0_IR] = { 0xb0, BIT(1) },
|
||||
[RST_APB0_TIMER] = { 0xb0, BIT(2) },
|
||||
[RST_APB0_RSB] = { 0xb0, BIT(3) },
|
||||
|
|
|
@ -1162,7 +1162,7 @@ static struct clk_hw_onecell_data sun8i_r40_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_r40_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_r40_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
[RST_USB_PHY1] = { 0x0cc, BIT(1) },
|
||||
[RST_USB_PHY2] = { 0x0cc, BIT(2) },
|
||||
|
|
|
@ -644,7 +644,7 @@ static struct clk_hw_onecell_data sun8i_v3_hw_clks = {
|
|||
.num = CLK_I2S0 + 1,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_v3s_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_v3s_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
|
||||
[RST_MBUS] = { 0x0fc, BIT(31) },
|
||||
|
@ -679,7 +679,7 @@ static struct ccu_reset_map sun8i_v3s_ccu_resets[] = {
|
|||
[RST_BUS_UART2] = { 0x2d8, BIT(18) },
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun8i_v3_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun8i_v3_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
|
||||
[RST_MBUS] = { 0x0fc, BIT(31) },
|
||||
|
|
|
@ -177,7 +177,7 @@ static struct clk_hw_onecell_data sun9i_a80_de_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun9i_a80_de_resets[] = {
|
||||
static const struct ccu_reset_map sun9i_a80_de_resets[] = {
|
||||
[RST_FE0] = { 0x0c, BIT(0) },
|
||||
[RST_FE1] = { 0x0c, BIT(1) },
|
||||
[RST_FE2] = { 0x0c, BIT(2) },
|
||||
|
|
|
@ -68,7 +68,7 @@ static struct clk_hw_onecell_data sun9i_a80_usb_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun9i_a80_usb_resets[] = {
|
||||
static const struct ccu_reset_map sun9i_a80_usb_resets[] = {
|
||||
[RST_USB0_HCI] = { 0x0, BIT(17) },
|
||||
[RST_USB1_HCI] = { 0x0, BIT(18) },
|
||||
[RST_USB2_HCI] = { 0x0, BIT(19) },
|
||||
|
|
|
@ -1108,7 +1108,7 @@ static struct clk_hw_onecell_data sun9i_a80_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map sun9i_a80_ccu_resets[] = {
|
||||
static const struct ccu_reset_map sun9i_a80_ccu_resets[] = {
|
||||
/* AHB0 reset controls */
|
||||
[RST_BUS_FD] = { 0x5a0, BIT(0) },
|
||||
[RST_BUS_VE] = { 0x5a0, BIT(1) },
|
||||
|
|
|
@ -477,7 +477,7 @@ static struct clk_hw_onecell_data suniv_hw_clks = {
|
|||
.num = CLK_NUMBER,
|
||||
};
|
||||
|
||||
static struct ccu_reset_map suniv_ccu_resets[] = {
|
||||
static const struct ccu_reset_map suniv_ccu_resets[] = {
|
||||
[RST_USB_PHY0] = { 0x0cc, BIT(0) },
|
||||
|
||||
[RST_BUS_DMA] = { 0x2c0, BIT(6) },
|
||||
|
|
|
@ -50,7 +50,7 @@ struct sunxi_ccu_desc {
|
|||
|
||||
struct clk_hw_onecell_data *hw_clks;
|
||||
|
||||
struct ccu_reset_map *resets;
|
||||
const struct ccu_reset_map *resets;
|
||||
unsigned long num_resets;
|
||||
};
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ struct ccu_reset_map {
|
|||
|
||||
struct ccu_reset {
|
||||
void __iomem *base;
|
||||
struct ccu_reset_map *reset_map;
|
||||
const struct ccu_reset_map *reset_map;
|
||||
spinlock_t *lock;
|
||||
|
||||
struct reset_controller_dev rcdev;
|
||||
|
|
Loading…
Add table
Reference in a new issue