forked from Minki/linux
ARM: l2c: clean up l2c_configure()
l2c_configure() does not follow the pattern of other l2c_* functions. Fix this so that it does to avoid future confusion. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
7705dd256c
commit
50beefde30
@ -110,15 +110,7 @@ static inline void l2c_unlock(void __iomem *base, unsigned num)
|
|||||||
|
|
||||||
static void l2c_configure(void __iomem *base)
|
static void l2c_configure(void __iomem *base)
|
||||||
{
|
{
|
||||||
if (outer_cache.configure) {
|
|
||||||
outer_cache.configure(&l2x0_saved_regs);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
l2c_write_sec(l2x0_saved_regs.aux_ctrl, base, L2X0_AUX_CTRL);
|
l2c_write_sec(l2x0_saved_regs.aux_ctrl, base, L2X0_AUX_CTRL);
|
||||||
|
|
||||||
if (l2x0_data->configure)
|
|
||||||
l2x0_data->configure(base);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -130,7 +122,11 @@ static void l2c_enable(void __iomem *base, u32 aux, unsigned num_lock)
|
|||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
l2x0_saved_regs.aux_ctrl = aux;
|
l2x0_saved_regs.aux_ctrl = aux;
|
||||||
l2c_configure(base);
|
|
||||||
|
if (outer_cache.configure)
|
||||||
|
outer_cache.configure(&l2x0_saved_regs);
|
||||||
|
else
|
||||||
|
l2x0_data->configure(base);
|
||||||
|
|
||||||
l2c_unlock(base, num_lock);
|
l2c_unlock(base, num_lock);
|
||||||
|
|
||||||
@ -252,6 +248,7 @@ static const struct l2c_init_data l2c210_data __initconst = {
|
|||||||
.num_lock = 1,
|
.num_lock = 1,
|
||||||
.enable = l2c_enable,
|
.enable = l2c_enable,
|
||||||
.save = l2c_save,
|
.save = l2c_save,
|
||||||
|
.configure = l2c_configure,
|
||||||
.outer_cache = {
|
.outer_cache = {
|
||||||
.inv_range = l2c210_inv_range,
|
.inv_range = l2c210_inv_range,
|
||||||
.clean_range = l2c210_clean_range,
|
.clean_range = l2c210_clean_range,
|
||||||
@ -409,6 +406,7 @@ static const struct l2c_init_data l2c220_data = {
|
|||||||
.num_lock = 1,
|
.num_lock = 1,
|
||||||
.enable = l2c220_enable,
|
.enable = l2c220_enable,
|
||||||
.save = l2c_save,
|
.save = l2c_save,
|
||||||
|
.configure = l2c_configure,
|
||||||
.outer_cache = {
|
.outer_cache = {
|
||||||
.inv_range = l2c220_inv_range,
|
.inv_range = l2c220_inv_range,
|
||||||
.clean_range = l2c220_clean_range,
|
.clean_range = l2c220_clean_range,
|
||||||
@ -569,6 +567,8 @@ static void l2c310_configure(void __iomem *base)
|
|||||||
{
|
{
|
||||||
unsigned revision;
|
unsigned revision;
|
||||||
|
|
||||||
|
l2c_configure(base);
|
||||||
|
|
||||||
/* restore pl310 setup */
|
/* restore pl310 setup */
|
||||||
l2c_write_sec(l2x0_saved_regs.tag_latency, base,
|
l2c_write_sec(l2x0_saved_regs.tag_latency, base,
|
||||||
L310_TAG_LATENCY_CTRL);
|
L310_TAG_LATENCY_CTRL);
|
||||||
@ -1066,6 +1066,7 @@ static const struct l2c_init_data of_l2c210_data __initconst = {
|
|||||||
.of_parse = l2x0_of_parse,
|
.of_parse = l2x0_of_parse,
|
||||||
.enable = l2c_enable,
|
.enable = l2c_enable,
|
||||||
.save = l2c_save,
|
.save = l2c_save,
|
||||||
|
.configure = l2c_configure,
|
||||||
.outer_cache = {
|
.outer_cache = {
|
||||||
.inv_range = l2c210_inv_range,
|
.inv_range = l2c210_inv_range,
|
||||||
.clean_range = l2c210_clean_range,
|
.clean_range = l2c210_clean_range,
|
||||||
@ -1084,6 +1085,7 @@ static const struct l2c_init_data of_l2c220_data __initconst = {
|
|||||||
.of_parse = l2x0_of_parse,
|
.of_parse = l2x0_of_parse,
|
||||||
.enable = l2c220_enable,
|
.enable = l2c220_enable,
|
||||||
.save = l2c_save,
|
.save = l2c_save,
|
||||||
|
.configure = l2c_configure,
|
||||||
.outer_cache = {
|
.outer_cache = {
|
||||||
.inv_range = l2c220_inv_range,
|
.inv_range = l2c220_inv_range,
|
||||||
.clean_range = l2c220_clean_range,
|
.clean_range = l2c220_clean_range,
|
||||||
@ -1416,6 +1418,7 @@ static const struct l2c_init_data of_aurora_with_outer_data __initconst = {
|
|||||||
.enable = l2c_enable,
|
.enable = l2c_enable,
|
||||||
.fixup = aurora_fixup,
|
.fixup = aurora_fixup,
|
||||||
.save = aurora_save,
|
.save = aurora_save,
|
||||||
|
.configure = l2c_configure,
|
||||||
.outer_cache = {
|
.outer_cache = {
|
||||||
.inv_range = aurora_inv_range,
|
.inv_range = aurora_inv_range,
|
||||||
.clean_range = aurora_clean_range,
|
.clean_range = aurora_clean_range,
|
||||||
@ -1435,6 +1438,7 @@ static const struct l2c_init_data of_aurora_no_outer_data __initconst = {
|
|||||||
.enable = aurora_enable_no_outer,
|
.enable = aurora_enable_no_outer,
|
||||||
.fixup = aurora_fixup,
|
.fixup = aurora_fixup,
|
||||||
.save = aurora_save,
|
.save = aurora_save,
|
||||||
|
.configure = l2c_configure,
|
||||||
.outer_cache = {
|
.outer_cache = {
|
||||||
.resume = l2c_resume,
|
.resume = l2c_resume,
|
||||||
},
|
},
|
||||||
@ -1608,6 +1612,7 @@ static void __init tauros3_save(void __iomem *base)
|
|||||||
|
|
||||||
static void tauros3_configure(void __iomem *base)
|
static void tauros3_configure(void __iomem *base)
|
||||||
{
|
{
|
||||||
|
l2c_configure(base);
|
||||||
writel_relaxed(l2x0_saved_regs.aux2_ctrl,
|
writel_relaxed(l2x0_saved_regs.aux2_ctrl,
|
||||||
base + TAUROS3_AUX2_CTRL);
|
base + TAUROS3_AUX2_CTRL);
|
||||||
writel_relaxed(l2x0_saved_regs.prefetch_ctrl,
|
writel_relaxed(l2x0_saved_regs.prefetch_ctrl,
|
||||||
|
Loading…
Reference in New Issue
Block a user