lib: utils: Mark RPMI drivers as experimental

These drivers were merged on an experimental basis without the RPMI
specification being frozen. As a result, they may not be compatible with
the frozen version of the RPMI protocol. Additionally, their devicetree
bindings have not been reviewed and are subject to change. Warn the user
that these drivers make no compatibility guarantees, and that their
behavior and devicetree bindings may change incompatibly in future
versions of OpenSBI.

Signed-off-by: Samuel Holland <samuel.holland@sifive.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
Samuel Holland
2024-12-18 21:02:39 -08:00
committed by Anup Patel
parent 0c5dc12d73
commit 8d8cc9507b
8 changed files with 11 additions and 0 deletions

View File

@@ -370,4 +370,5 @@ static const struct fdt_match rpmi_cppc_match[] = {
struct fdt_driver fdt_cppc_rpmi = {
.match_table = rpmi_cppc_match,
.init = rpmi_cppc_cold_init,
.experimental = true,
};

View File

@@ -30,6 +30,10 @@ int fdt_driver_init_by_offset(const void *fdt, int nodeoff,
if (!fdt_stringlist_contains(prop, len, match->compatible))
continue;
if (driver->experimental)
sbi_printf("WARNING: %s driver is experimental and may change\n",
match->compatible);
rc = driver->init(fdt, nodeoff, match);
if (rc < 0) {
const char *name;

View File

@@ -359,4 +359,5 @@ static const struct fdt_match rpmi_hsm_match[] = {
struct fdt_driver fdt_hsm_rpmi = {
.match_table = rpmi_hsm_match,
.init = rpmi_hsm_cold_init,
.experimental = true,
};

View File

@@ -768,6 +768,7 @@ struct fdt_mailbox fdt_mailbox_rpmi_shmem = {
.driver = {
.match_table = rpmi_shmem_mbox_match,
.init = rpmi_shmem_mbox_init,
.experimental = true,
},
.xlate = fdt_mailbox_simple_xlate,
};

View File

@@ -439,4 +439,5 @@ static const struct fdt_match mpxy_mbox_match[] = {
struct fdt_driver fdt_mpxy_rpmi_mbox = {
.match_table = mpxy_mbox_match,
.init = mpxy_mbox_init,
.experimental = true,
};

View File

@@ -138,4 +138,5 @@ static const struct fdt_match rpmi_reset_match[] = {
struct fdt_driver fdt_reset_rpmi = {
.match_table = rpmi_reset_match,
.init = rpmi_reset_init,
.experimental = true,
};

View File

@@ -135,4 +135,5 @@ static const struct fdt_match rpmi_suspend_match[] = {
struct fdt_driver fdt_suspend_rpmi = {
.match_table = rpmi_suspend_match,
.init = rpmi_suspend_init,
.experimental = true,
};