lib: sbi: Add domain parameter to hart protection (un)configure()

The switch_to_next_domain_context() already has the pointers to current
and next domains so pass them as parameters to hart protection configure()
and unconfigure() callbacks.

Signed-off-by: Anup Patel <anup.patel@oss.qualcomm.com>
Reviewed-by: Rahul Pathak <rahul.pathak@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260727042504.1743250-4-anup.patel@oss.qualcomm.com
Signed-off-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
Anup Patel
2026-08-02 15:17:12 +05:30
committed by Anup Patel
parent 48725e95b4
commit 5053774c2f
6 changed files with 50 additions and 29 deletions
+3 -3
View File
@@ -435,7 +435,7 @@ static void __noreturn init_coldboot(struct sbi_scratch *scratch, u32 hartid)
* Configure hart protection at last because if SMEPMP is
* detected, M-mode access to the S/U space will be rescinded.
*/
rc = sbi_hart_protection_configure(scratch);
rc = sbi_hart_protection_configure(scratch, sbi_domain_thishart_ptr());
if (rc) {
sbi_printf("%s: hart protection configure failed (error %d)\n",
__func__, rc);
@@ -518,7 +518,7 @@ static void __noreturn init_warm_startup(struct sbi_scratch *scratch,
* Configure hart protection at last because if SMEPMP is
* detected, M-mode access to the S/U space will be rescinded.
*/
rc = sbi_hart_protection_configure(scratch);
rc = sbi_hart_protection_configure(scratch, sbi_domain_thishart_ptr());
if (rc)
sbi_hart_hang();
@@ -539,7 +539,7 @@ static void __noreturn init_warm_resume(struct sbi_scratch *scratch,
if (rc)
sbi_hart_hang();
rc = sbi_hart_protection_configure(scratch);
rc = sbi_hart_protection_configure(scratch, sbi_domain_thishart_ptr());
if (rc)
sbi_hart_hang();