ARM: exynos: fix l2x0 saved regs handling
The exynos4_l2x0_cache_init function tries to flush the data cache for the location of the saved l2x0 registers and pass the physical address to the s5p-sleep implementation. However, the s5p-sleep code is optional, and if it is disabled, we get a linker error here when the l2x0_regs_phys variable does not exist. To solve this, use a compile-time conditional to drop this code if we don't want it. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Ben Dooks <ben-linux@fluff.org>
This commit is contained in:
parent
714e330253
commit
39378e4143
@ -404,8 +404,10 @@ static int __init exynos4_l2x0_cache_init(void)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
l2x0_regs_phys = virt_to_phys(&l2x0_saved_regs);
|
||||
clean_dcache_area(&l2x0_regs_phys, sizeof(unsigned long));
|
||||
if (IS_ENABLED(CONFIG_S5P_SLEEP)) {
|
||||
l2x0_regs_phys = virt_to_phys(&l2x0_saved_regs);
|
||||
clean_dcache_area(&l2x0_regs_phys, sizeof(unsigned long));
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
early_initcall(exynos4_l2x0_cache_init);
|
||||
|
Loading…
Reference in New Issue
Block a user