aboutsummaryrefslogtreecommitdiff
path: root/include/capp.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/capp.h')
-rw-r--r--include/capp.h19
1 files changed, 19 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 */