You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
powerpc/powernv: Enable reading and updating of system parameters
This patch enables reading and updating of system parameters through OPAL call. Signed-off-by: Neelesh Gupta <neelegup@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
committed by
Benjamin Herrenschmidt
parent
8d72482322
commit
4029cd6654
@@ -167,8 +167,10 @@ extern int opal_enter_rtas(struct rtas_args *args,
|
||||
#define OPAL_DUMP_ACK 84
|
||||
#define OPAL_GET_MSG 85
|
||||
#define OPAL_CHECK_ASYNC_COMPLETION 86
|
||||
#define OPAL_DUMP_RESEND 91
|
||||
#define OPAL_SYNC_HOST_REBOOT 87
|
||||
#define OPAL_GET_PARAM 89
|
||||
#define OPAL_SET_PARAM 90
|
||||
#define OPAL_DUMP_RESEND 91
|
||||
#define OPAL_DUMP_INFO2 94
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
@@ -410,6 +412,13 @@ enum OpalLPCAddressType {
|
||||
OPAL_LPC_FW = 2,
|
||||
};
|
||||
|
||||
/* System parameter permission */
|
||||
enum OpalSysparamPerm {
|
||||
OPAL_SYSPARAM_READ = 0x1,
|
||||
OPAL_SYSPARAM_WRITE = 0x2,
|
||||
OPAL_SYSPARAM_RW = (OPAL_SYSPARAM_READ | OPAL_SYSPARAM_WRITE),
|
||||
};
|
||||
|
||||
struct opal_msg {
|
||||
uint32_t msg_type;
|
||||
uint32_t reserved;
|
||||
@@ -859,6 +868,10 @@ int64_t opal_dump_resend_notification(void);
|
||||
int64_t opal_get_msg(uint64_t buffer, size_t size);
|
||||
int64_t opal_check_completion(uint64_t buffer, size_t size, uint64_t token);
|
||||
int64_t opal_sync_host_reboot(void);
|
||||
int64_t opal_get_param(uint64_t token, uint32_t param_id, uint64_t buffer,
|
||||
size_t length);
|
||||
int64_t opal_set_param(uint64_t token, uint32_t param_id, uint64_t buffer,
|
||||
size_t length);
|
||||
|
||||
/* Internal functions */
|
||||
extern int early_init_dt_scan_opal(unsigned long node, const char *uname, int depth, void *data);
|
||||
@@ -900,6 +913,7 @@ extern void opal_nvram_init(void);
|
||||
extern void opal_flash_init(void);
|
||||
extern int opal_elog_init(void);
|
||||
extern void opal_platform_dump_init(void);
|
||||
extern void opal_sys_param_init(void);
|
||||
|
||||
extern int opal_machine_check(struct pt_regs *regs);
|
||||
extern bool opal_mce_check_early_recovery(struct pt_regs *regs);
|
||||
|
||||
Reference in New Issue
Block a user