mirror of
https://github.com/LineageOS/android_kernel_samsung_msm8226.git
synced 2026-09-28 00:00:22 +02:00
msm: pm: clean msm_pm_pc_pgd in the cache after writing
Since a CPU will read the msm_pm_pc_pgd value as it comes up from power collapse when caches are disabled, it needs to be guaranteed that the value has been written to memory before any CPU power collapses. Change-Id: I7f6358a001255f9bac99a6378532c96fd460f82b Signed-off-by: Steve Muckle <smuckle@codeaurora.org>
This commit is contained in:
committed by
Murali Nalajala
parent
c25a936123
commit
730ad7abaa
@@ -1202,6 +1202,8 @@ static int __init msm_pm_init(void)
|
||||
pmd[2] = __pmd(pmdval + (2 << (PGDIR_SHIFT - 1)));
|
||||
flush_pmd_entry(pmd);
|
||||
msm_pm_pc_pgd = virt_to_phys(pc_pgd);
|
||||
clean_caches((unsigned long)&msm_pm_pc_pgd, sizeof(msm_pm_pc_pgd),
|
||||
virt_to_phys(&msm_pm_pc_pgd));
|
||||
|
||||
ret = request_irq(rpm_cpu0_wakeup_irq,
|
||||
msm_pm_rpm_wakeup_interrupt, IRQF_TRIGGER_RISING,
|
||||
|
||||
@@ -1899,6 +1899,8 @@ static int __init msm_pm_init(void)
|
||||
pmd[2] = __pmd(pmdval + (2 << (PGDIR_SHIFT - 1)));
|
||||
flush_pmd_entry(pmd);
|
||||
msm_pm_pc_pgd = virt_to_phys(pc_pgd);
|
||||
clean_caches((unsigned long)&msm_pm_pc_pgd, sizeof(msm_pm_pc_pgd),
|
||||
virt_to_phys(&msm_pm_pc_pgd));
|
||||
#endif
|
||||
|
||||
pm_power_off = msm_pm_power_off;
|
||||
|
||||
Reference in New Issue
Block a user