diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/capp.h | 19 | ||||
-rw-r--r-- | include/phb4-capp.h | 3 |
2 files changed, 22 insertions, 0 deletions
diff --git a/include/capp.h b/include/capp.h index 587cc3a..597401d 100644 --- a/include/capp.h +++ b/include/capp.h @@ -65,8 +65,24 @@ enum capp_reg { apc_master_powerbus_ctrl = 0xB }; +struct capp_info { + unsigned int capp_index; + unsigned int phb_index; + uint64_t capp_fir_reg; + uint64_t capp_fir_mask_reg; + uint64_t capp_fir_action0_reg; + uint64_t capp_fir_action1_reg; + uint64_t capp_err_status_ctrl_reg; +}; + +struct capp_ops { + int64_t (*get_capp_info)(int, struct phb *, struct capp_info *); +}; + struct proc_chip; extern struct lock capi_lock; +extern struct capp_ops capi_ops; + extern bool capp_ucode_loaded(struct proc_chip *chip, unsigned int index); extern int64_t capp_load_ucode(unsigned int chip_id, uint32_t opal_id, @@ -77,4 +93,7 @@ extern int64_t capp_load_ucode(unsigned int chip_id, uint32_t opal_id, uint64_t snp_array_addr, uint64_t snp_array_write); +extern int64_t capp_get_info(int chip_id, struct phb *phb, + struct capp_info *info); + #endif /* __CAPP_H */ diff --git a/include/phb4-capp.h b/include/phb4-capp.h index 89de034..a9b81f6 100644 --- a/include/phb4-capp.h +++ b/include/phb4-capp.h @@ -23,6 +23,9 @@ #define CAPP_APC_MASTER_ARRAY_WRITE_REG 0x2010842 /* Satellite 2 */ #define CAPP_FIR 0x2010800 +#define CAPP_FIR_MASK 0x2010803 +#define CAPP_FIR_ACTION0 0x2010806 +#define CAPP_FIR_ACTION1 0x2010807 #define CAPP_ERR_RPT_CLR 0x2010813 #define APC_MASTER_PB_CTRL 0x2010818 #define APC_MASTER_CAPI_CTRL 0x2010819 |