summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnup Patel <[email protected]>2019-01-22 13:52:25 +0530
committerAnup Patel <[email protected]>2019-01-23 08:39:26 +0530
commitfea9e2b5f37446845bec3cc9e2edd6f8308c2332 (patch)
treee50c40a69a229f6d8f2eec0de3b48ded22179114
parentf293d21863c5b23dcb4b151c2fd879696830e0bc (diff)
lib: Remove hartid paramter from early_init() and final_init() callbacks
We simplify early_init() and final_init() callbacks of sbi_platform by removing "hartid" parameter. Signed-off-by: Anup Patel <[email protected]>
-rw-r--r--include/sbi/sbi_platform.h20
-rw-r--r--include/sbi/sbi_system.h6
-rw-r--r--lib/sbi_init.c8
-rw-r--r--lib/sbi_system.c10
-rw-r--r--platform/qemu/sifive_u/platform.c2
-rw-r--r--platform/qemu/virt/platform.c2
-rw-r--r--platform/sifive/fu540/platform.c2
7 files changed, 22 insertions, 28 deletions
diff --git a/include/sbi/sbi_platform.h b/include/sbi/sbi_platform.h
index 2a263462..d3b083e7 100644
--- a/include/sbi/sbi_platform.h
+++ b/include/sbi/sbi_platform.h
@@ -61,9 +61,9 @@ struct sbi_platform {
u64 disabled_hart_mask;
/** Platform early initialization */
- int (*early_init)(u32 hartid, bool cold_boot);
+ int (*early_init)(bool cold_boot);
/** Platform final initialization */
- int (*final_init)(u32 hartid, bool cold_boot);
+ int (*final_init)(bool cold_boot);
/** Get number of PMP regions for given HART */
u32 (*pmp_region_count)(u32 hartid);
@@ -155,12 +155,12 @@ static inline const char *sbi_platform_name(struct sbi_platform *plat)
*
* @return TRUE if HART is disabled and FALSE otherwise
*/
-static inline bool sbi_platform_hart_disabled(struct sbi_platform *plat, u32 hartid)
+static inline bool sbi_platform_hart_disabled(struct sbi_platform *plat,
+ u32 hartid)
{
if (plat && (plat->disabled_hart_mask & (1 << hartid)))
return 1;
- else
- return 0;
+ return 0;
}
/**
@@ -195,16 +195,15 @@ static inline u32 sbi_platform_hart_stack_size(struct sbi_platform *plat)
* Early initialization of a given HART
*
* @param plat pointer to struct sbi_platform
- * @param hartid HART ID
* @param cold_boot whether cold boot (TRUE) or warm_boot (FALSE)
*
* @return 0 on success and negative error code on failure
*/
static inline int sbi_platform_early_init(struct sbi_platform *plat,
- u32 hartid, bool cold_boot)
+ bool cold_boot)
{
if (plat && plat->early_init)
- return plat->early_init(hartid, cold_boot);
+ return plat->early_init(cold_boot);
return 0;
}
@@ -212,16 +211,15 @@ static inline int sbi_platform_early_init(struct sbi_platform *plat,
* Final initialization of a HART
*
* @param plat pointer to struct sbi_platform
- * @param hartid HART ID
* @param cold_boot whether cold boot (TRUE) or warm_boot (FALSE)
*
* @return 0 on success and negative error code on failure
*/
static inline int sbi_platform_final_init(struct sbi_platform *plat,
- u32 hartid, bool cold_boot)
+ bool cold_boot)
{
if (plat && plat->final_init)
- return plat->final_init(hartid, cold_boot);
+ return plat->final_init(cold_boot);
return 0;
}
diff --git a/include/sbi/sbi_system.h b/include/sbi/sbi_system.h
index f37445ee..3aad646a 100644
--- a/include/sbi/sbi_system.h
+++ b/include/sbi/sbi_system.h
@@ -14,11 +14,9 @@
struct sbi_scratch;
-int sbi_system_early_init(struct sbi_scratch *scratch, u32 hartid,
- bool cold_boot);
+int sbi_system_early_init(struct sbi_scratch *scratch, bool cold_boot);
-int sbi_system_final_init(struct sbi_scratch *scratch, u32 hartid,
- bool cold_boot);
+int sbi_system_final_init(struct sbi_scratch *scratch, bool cold_boot);
void __attribute__((noreturn)) sbi_system_reboot(struct sbi_scratch *scratch,
u32 type);
diff --git a/lib/sbi_init.c b/lib/sbi_init.c
index 35a543e0..7ae5f8bc 100644
--- a/lib/sbi_init.c
+++ b/lib/sbi_init.c
@@ -33,7 +33,7 @@ static void __noreturn init_coldboot(struct sbi_scratch *scratch, u32 hartid)
char str[64];
struct sbi_platform *plat = sbi_platform_ptr(scratch);
- rc = sbi_system_early_init(scratch, hartid, TRUE);
+ rc = sbi_system_early_init(scratch, TRUE);
if (rc)
sbi_hart_hang();
@@ -57,7 +57,7 @@ static void __noreturn init_coldboot(struct sbi_scratch *scratch, u32 hartid)
if (rc)
sbi_hart_hang();
- rc = sbi_system_final_init(scratch, hartid, TRUE);
+ rc = sbi_system_final_init(scratch, TRUE);
if (rc)
sbi_hart_hang();
@@ -103,7 +103,7 @@ static void __noreturn init_warmboot(struct sbi_scratch *scratch, u32 hartid)
if (sbi_platform_hart_disabled(plat, hartid))
sbi_hart_hang();
- rc = sbi_system_early_init(scratch, hartid, FALSE);
+ rc = sbi_system_early_init(scratch, FALSE);
if (rc)
sbi_hart_hang();
@@ -123,7 +123,7 @@ static void __noreturn init_warmboot(struct sbi_scratch *scratch, u32 hartid)
if (rc)
sbi_hart_hang();
- rc = sbi_system_final_init(scratch, hartid, FALSE);
+ rc = sbi_system_final_init(scratch, FALSE);
if (rc)
sbi_hart_hang();
diff --git a/lib/sbi_system.c b/lib/sbi_system.c
index f543cef2..738ff456 100644
--- a/lib/sbi_system.c
+++ b/lib/sbi_system.c
@@ -11,18 +11,16 @@
#include <sbi/sbi_platform.h>
#include <sbi/sbi_system.h>
-int sbi_system_early_init(struct sbi_scratch *scratch, u32 hartid,
- bool cold_boot)
+int sbi_system_early_init(struct sbi_scratch *scratch, bool cold_boot)
{
return sbi_platform_early_init(sbi_platform_ptr(scratch),
- hartid, cold_boot);
+ cold_boot);
}
-int sbi_system_final_init(struct sbi_scratch *scratch, u32 hartid,
- bool cold_boot)
+int sbi_system_final_init(struct sbi_scratch *scratch, bool cold_boot)
{
return sbi_platform_final_init(sbi_platform_ptr(scratch),
- hartid, cold_boot);
+ cold_boot);
}
void __attribute__((noreturn)) sbi_system_reboot(struct sbi_scratch *scratch,
diff --git a/platform/qemu/sifive_u/platform.c b/platform/qemu/sifive_u/platform.c
index 91fa4a76..66faf862 100644
--- a/platform/qemu/sifive_u/platform.c
+++ b/platform/qemu/sifive_u/platform.c
@@ -29,7 +29,7 @@
#define SIFIVE_U_UART0_ADDR 0x10013000
#define SIFIVE_U_UART1_ADDR 0x10023000
-static int sifive_u_final_init(u32 hartid, bool cold_boot)
+static int sifive_u_final_init(bool cold_boot)
{
void *fdt;
diff --git a/platform/qemu/virt/platform.c b/platform/qemu/virt/platform.c
index a28f9f1a..80e52618 100644
--- a/platform/qemu/virt/platform.c
+++ b/platform/qemu/virt/platform.c
@@ -29,7 +29,7 @@
#define VIRT_UART_BAUDRATE 115200
#define VIRT_UART_SHIFTREG_ADDR 1843200
-static int virt_final_init(u32 hartid, bool cold_boot)
+static int virt_final_init(bool cold_boot)
{
void *fdt;
diff --git a/platform/sifive/fu540/platform.c b/platform/sifive/fu540/platform.c
index 47918036..64e9a2c1 100644
--- a/platform/sifive/fu540/platform.c
+++ b/platform/sifive/fu540/platform.c
@@ -71,7 +71,7 @@ static void fu540_modify_dt(void *fdt)
plic_fdt_fixup(fdt, "riscv,plic0");
}
-static int fu540_final_init(u32 hartid, bool cold_boot)
+static int fu540_final_init(bool cold_boot)
{
void *fdt;