diff mbox series

[v2,12/16] lib: utils: Update fdt_cpu_fixup() to use current domain

Message ID 20201015132700.2232820-13-anup.patel@wdc.com
State Superseded
Headers show
Series OpenSBI domain support | expand

Commit Message

Anup Patel Oct. 15, 2020, 1:26 p.m. UTC
The fdt_cpu_fixup() should disable a HART in DT if the HART
is not assigned to the current HART domain. This patch updates
fdt_cpu_fixup() accordingly.

Signed-off-by: Anup Patel <anup.patel@wdc.com>
---
 lib/utils/fdt/fdt_fixup.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

Comments

Atish Patra Oct. 18, 2020, 11:46 p.m. UTC | #1
On Thu, Oct 15, 2020 at 6:28 AM Anup Patel <anup.patel@wdc.com> wrote:
>
> The fdt_cpu_fixup() should disable a HART in DT if the HART
> is not assigned to the current HART domain. This patch updates
> fdt_cpu_fixup() accordingly.
>
> Signed-off-by: Anup Patel <anup.patel@wdc.com>
> ---
>  lib/utils/fdt/fdt_fixup.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/lib/utils/fdt/fdt_fixup.c b/lib/utils/fdt/fdt_fixup.c
> index e9e1dff..eea450d 100644
> --- a/lib/utils/fdt/fdt_fixup.c
> +++ b/lib/utils/fdt/fdt_fixup.c
> @@ -12,7 +12,6 @@
>  #include <sbi/sbi_domain.h>
>  #include <sbi/sbi_math.h>
>  #include <sbi/sbi_hart.h>
> -#include <sbi/sbi_platform.h>
>  #include <sbi/sbi_scratch.h>
>  #include <sbi/sbi_string.h>
>  #include <sbi_utils/fdt/fdt_fixup.h>
> @@ -20,8 +19,7 @@
>
>  void fdt_cpu_fixup(void *fdt)
>  {
> -       struct sbi_scratch *scratch = sbi_scratch_thishart_ptr();
> -       const struct sbi_platform *plat = sbi_platform_ptr(scratch);
> +       struct sbi_domain *dom = sbi_domain_thishart_ptr();
>         int err, cpu_offset, cpus_offset, len;
>         const char *mmu_type;
>         u32 hartid;
> @@ -41,12 +39,12 @@ void fdt_cpu_fixup(void *fdt)
>
>                 /*
>                  * Disable a HART DT node if one of the following is true:
> -                * 1. The HART is marked invalid by platform support
> +                * 1. The HART is not assigned to the current domain
>                  * 2. MMU is not available for the HART
>                  */
>
>                 mmu_type = fdt_getprop(fdt, cpu_offset, "mmu-type", &len);
> -               if (sbi_platform_hart_invalid(plat, hartid) ||
> +               if (!sbi_domain_is_assigned_hart(dom, hartid) ||
>                     !mmu_type || !len)
>                         fdt_setprop_string(fdt, cpu_offset, "status",
>                                            "disabled");
> --
> 2.25.1
>
>
> --
> opensbi mailing list
> opensbi@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/opensbi

Reviewed-by: Atish Patra <atish.patra@wdc.com>
diff mbox series

Patch

diff --git a/lib/utils/fdt/fdt_fixup.c b/lib/utils/fdt/fdt_fixup.c
index e9e1dff..eea450d 100644
--- a/lib/utils/fdt/fdt_fixup.c
+++ b/lib/utils/fdt/fdt_fixup.c
@@ -12,7 +12,6 @@ 
 #include <sbi/sbi_domain.h>
 #include <sbi/sbi_math.h>
 #include <sbi/sbi_hart.h>
-#include <sbi/sbi_platform.h>
 #include <sbi/sbi_scratch.h>
 #include <sbi/sbi_string.h>
 #include <sbi_utils/fdt/fdt_fixup.h>
@@ -20,8 +19,7 @@ 
 
 void fdt_cpu_fixup(void *fdt)
 {
-	struct sbi_scratch *scratch = sbi_scratch_thishart_ptr();
-	const struct sbi_platform *plat = sbi_platform_ptr(scratch);
+	struct sbi_domain *dom = sbi_domain_thishart_ptr();
 	int err, cpu_offset, cpus_offset, len;
 	const char *mmu_type;
 	u32 hartid;
@@ -41,12 +39,12 @@  void fdt_cpu_fixup(void *fdt)
 
 		/*
 		 * Disable a HART DT node if one of the following is true:
-		 * 1. The HART is marked invalid by platform support
+		 * 1. The HART is not assigned to the current domain
 		 * 2. MMU is not available for the HART
 		 */
 
 		mmu_type = fdt_getprop(fdt, cpu_offset, "mmu-type", &len);
-		if (sbi_platform_hart_invalid(plat, hartid) ||
+		if (!sbi_domain_is_assigned_hart(dom, hartid) ||
 		    !mmu_type || !len)
 			fdt_setprop_string(fdt, cpu_offset, "status",
 					   "disabled");