mirror of
https://github.com/riscv-software-src/opensbi.git
synced 2026-06-12 22:31:45 +01:00
include: mailbox: rpmi_msgprot: Add RPMI performance domain flag defines
Add bit-field defines for the RPMI performance domain attributes flags and fast-channel attributes flags as specified in the RPMI specification. These are needed by platform implementations that provide RPMI performance services (e.g. DVFS controllers). Also add the missing db_write_value field to rpmi_perf_get_fast_chn_attr_resp to match the RPMI spec layout. Signed-off-by: David E. Garcia Porras <david.garcia@aheadcomputing.com> Reviewed-by: Anup Patel <anup@brainfault.org> Link: https://lore.kernel.org/r/20260328054347.3706029-5-david.garcia@aheadcomputing.com Signed-off-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
committed by
Anup Patel
parent
547a5bbda7
commit
243035c565
@@ -857,6 +857,16 @@ struct rpmi_perf_get_attrs_req {
|
|||||||
|
|
||||||
struct rpmi_perf_get_attrs_resp {
|
struct rpmi_perf_get_attrs_resp {
|
||||||
s32 status;
|
s32 status;
|
||||||
|
#define RPMI_PERF_DOMAIN_ATTRS_FLAGS_MASK (7U << 0)
|
||||||
|
#define RPMI_PERF_DOMAIN_ATTRS_FLAGS_FASTCHANNEL_SUPP_POS 0
|
||||||
|
#define RPMI_PERF_DOMAIN_ATTRS_FLAGS_PERF_LVL_CHG_SUPP_POS 1
|
||||||
|
#define RPMI_PERF_DOMAIN_ATTRS_FLAGS_PERF_LIMIT_CHG_SUPP_POS 2
|
||||||
|
#define RPMI_PERF_DOMAIN_ATTRS_FLAGS_FASTCHANNEL_SUPP \
|
||||||
|
(1U << RPMI_PERF_DOMAIN_ATTRS_FLAGS_FASTCHANNEL_SUPP_POS)
|
||||||
|
#define RPMI_PERF_DOMAIN_ATTRS_FLAGS_PERF_LVL_CHG_SUPP \
|
||||||
|
(1U << RPMI_PERF_DOMAIN_ATTRS_FLAGS_PERF_LVL_CHG_SUPP_POS)
|
||||||
|
#define RPMI_PERF_DOMAIN_ATTRS_FLAGS_PERF_LIMIT_CHG_SUPP \
|
||||||
|
(1U << RPMI_PERF_DOMAIN_ATTRS_FLAGS_PERF_LIMIT_CHG_SUPP_POS)
|
||||||
u32 flags;
|
u32 flags;
|
||||||
u32 num_level;
|
u32 num_level;
|
||||||
u32 latency;
|
u32 latency;
|
||||||
@@ -936,16 +946,26 @@ struct rpmi_perf_get_fast_chn_attr_req {
|
|||||||
|
|
||||||
struct rpmi_perf_get_fast_chn_attr_resp {
|
struct rpmi_perf_get_fast_chn_attr_resp {
|
||||||
s32 status;
|
s32 status;
|
||||||
|
#define RPMI_PERF_FASTCHAN_ATTRS_FLAGS_MASK (7U << 0)
|
||||||
|
#define RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_SUPP_POS 0
|
||||||
|
#define RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_WIDTH_POS 1
|
||||||
|
#define RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_SUPP \
|
||||||
|
(1U << RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_SUPP_POS)
|
||||||
|
#define RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_WIDTH_MASK \
|
||||||
|
(3U << RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_WIDTH_POS)
|
||||||
|
#define RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_WIDTH_8 \
|
||||||
|
(0U << RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_WIDTH_POS)
|
||||||
|
#define RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_WIDTH_16 \
|
||||||
|
(1U << RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_WIDTH_POS)
|
||||||
|
#define RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_WIDTH_32 \
|
||||||
|
(2U << RPMI_PERF_FASTCHAN_ATTRS_FLAGS_DB_WIDTH_POS)
|
||||||
u32 flags;
|
u32 flags;
|
||||||
u32 region_offset_low;
|
u32 region_offset_low;
|
||||||
u32 region_offset_high;
|
u32 region_offset_high;
|
||||||
u32 region_size;
|
u32 region_size;
|
||||||
u32 db_addr_low;
|
u32 db_addr_low;
|
||||||
u32 db_addr_high;
|
u32 db_addr_high;
|
||||||
u32 db_id_low;
|
u32 db_write_value;
|
||||||
u32 db_id_high;
|
|
||||||
u32 db_perserved_low;
|
|
||||||
u32 db_perserved_high;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/** RPMI MM ServiceGroup Service IDs */
|
/** RPMI MM ServiceGroup Service IDs */
|
||||||
|
|||||||
Reference in New Issue
Block a user