* [PATCH v2 2/9] powerpc/pseries: Define HVPIPE specific macros
2025-08-12 22:57 [PATCH v2 0/9] powerpc/pseries: Add hypervisor pipe (HVPIPE) suport Haren Myneni
@ 2025-08-12 22:57 ` Haren Myneni
0 siblings, 0 replies; 2+ messages in thread
From: Haren Myneni @ 2025-08-12 22:57 UTC (permalink / raw)
To: linuxppc-dev
Cc: maddy, mpe, msuchanek, mahesh, tyreld, npiggin, bjking1, hbabu,
haren
Define HVPIPE specific macros which are needed to support
ibm,send-hvpipe-msg and ibm,receive-hvpipe-msg RTAS calls
and used to handle HVPIPE message events.
Signed-off-by: Haren Myneni <haren@linux.ibm.com>
---
arch/powerpc/include/asm/rtas.h | 9 +++++++++
arch/powerpc/kernel/rtas.c | 24 ++++++++++++++++++++++++
arch/powerpc/kernel/rtasd.c | 2 ++
3 files changed, 35 insertions(+)
diff --git a/arch/powerpc/include/asm/rtas.h b/arch/powerpc/include/asm/rtas.h
index 75fa0293c508..d046bbd5017d 100644
--- a/arch/powerpc/include/asm/rtas.h
+++ b/arch/powerpc/include/asm/rtas.h
@@ -68,9 +68,11 @@ enum rtas_function_index {
RTAS_FNIDX__IBM_READ_PCI_CONFIG,
RTAS_FNIDX__IBM_READ_SLOT_RESET_STATE,
RTAS_FNIDX__IBM_READ_SLOT_RESET_STATE2,
+ RTAS_FNIDX__IBM_RECEIVE_HVPIPE_MSG,
RTAS_FNIDX__IBM_REMOVE_PE_DMA_WINDOW,
RTAS_FNIDX__IBM_RESET_PE_DMA_WINDOW,
RTAS_FNIDX__IBM_SCAN_LOG_DUMP,
+ RTAS_FNIDX__IBM_SEND_HVPIPE_MSG,
RTAS_FNIDX__IBM_SET_DYNAMIC_INDICATOR,
RTAS_FNIDX__IBM_SET_EEH_OPTION,
RTAS_FNIDX__IBM_SET_SLOT_RESET,
@@ -163,9 +165,11 @@ typedef struct {
#define RTAS_FN_IBM_READ_PCI_CONFIG rtas_fn_handle(RTAS_FNIDX__IBM_READ_PCI_CONFIG)
#define RTAS_FN_IBM_READ_SLOT_RESET_STATE rtas_fn_handle(RTAS_FNIDX__IBM_READ_SLOT_RESET_STATE)
#define RTAS_FN_IBM_READ_SLOT_RESET_STATE2 rtas_fn_handle(RTAS_FNIDX__IBM_READ_SLOT_RESET_STATE2)
+#define RTAS_FN_IBM_RECEIVE_HVPIPE_MSG rtas_fn_handle(RTAS_FNIDX__IBM_RECEIVE_HVPIPE_MSG)
#define RTAS_FN_IBM_REMOVE_PE_DMA_WINDOW rtas_fn_handle(RTAS_FNIDX__IBM_REMOVE_PE_DMA_WINDOW)
#define RTAS_FN_IBM_RESET_PE_DMA_WINDOW rtas_fn_handle(RTAS_FNIDX__IBM_RESET_PE_DMA_WINDOW)
#define RTAS_FN_IBM_SCAN_LOG_DUMP rtas_fn_handle(RTAS_FNIDX__IBM_SCAN_LOG_DUMP)
+#define RTAS_FN_IBM_SEND_HVPIPE_MSG rtas_fn_handle(RTAS_FNIDX__IBM_SEND_HVPIPE_MSG)
#define RTAS_FN_IBM_SET_DYNAMIC_INDICATOR rtas_fn_handle(RTAS_FNIDX__IBM_SET_DYNAMIC_INDICATOR)
#define RTAS_FN_IBM_SET_EEH_OPTION rtas_fn_handle(RTAS_FNIDX__IBM_SET_EEH_OPTION)
#define RTAS_FN_IBM_SET_SLOT_RESET rtas_fn_handle(RTAS_FNIDX__IBM_SET_SLOT_RESET)
@@ -217,6 +221,7 @@ typedef struct {
#define RTAS_HARDWARE_ERROR -1 /* Hardware or other unspecified error. */
#define RTAS_BUSY -2 /* Retry immediately. */
#define RTAS_INVALID_PARAMETER -3 /* Invalid indicator/domain/sensor etc. */
+#define RTAS_FUNC_NOT_SUPPORTED -5 /* Function not supported */
#define RTAS_UNEXPECTED_STATE_CHANGE -7 /* Seems limited to EEH and slot reset. */
#define RTAS_EXTENDED_DELAY_MIN 9900 /* Retry after delaying for ~1ms. */
#define RTAS_EXTENDED_DELAY_MAX 9905 /* Retry after delaying for ~100s. */
@@ -233,6 +238,7 @@ typedef struct {
#define RTAS_EPOW_WARNING 0x40000000 /* set bit 1 */
#define RTAS_HOTPLUG_EVENTS 0x10000000 /* set bit 3 */
#define RTAS_IO_EVENTS 0x08000000 /* set bit 4 */
+#define RTAS_HVPIPE_MSG_EVENTS 0x04000000 /* set bit 5 */
#define RTAS_EVENT_SCAN_ALL_EVENTS 0xffffffff
/* RTAS event severity */
@@ -282,6 +288,7 @@ typedef struct {
#define RTAS_TYPE_DEALLOC 0xE3
#define RTAS_TYPE_DUMP 0xE4
#define RTAS_TYPE_HOTPLUG 0xE5
+#define RTAS_TYPE_HVPIPE 0xE6
/* I don't add PowerMGM events right now, this is a different topic */
#define RTAS_TYPE_PMGM_POWER_SW_ON 0x60
#define RTAS_TYPE_PMGM_POWER_SW_OFF 0x61
@@ -374,6 +381,7 @@ inline uint32_t rtas_ext_event_company_id(struct rtas_ext_event_log_v6 *ext_log)
#define PSERIES_ELOG_SECT_ID_HMC_ID (('H' << 8) | 'M')
#define PSERIES_ELOG_SECT_ID_EPOW (('E' << 8) | 'P')
#define PSERIES_ELOG_SECT_ID_IO_EVENT (('I' << 8) | 'E')
+#define PSERIES_ELOG_SECT_ID_HVPIPE_EVENT (('P' << 8) | 'E')
#define PSERIES_ELOG_SECT_ID_MANUFACT_INFO (('M' << 8) | 'I')
#define PSERIES_ELOG_SECT_ID_CALL_HOME (('C' << 8) | 'H')
#define PSERIES_ELOG_SECT_ID_USER_DEF (('U' << 8) | 'D')
@@ -519,6 +527,7 @@ extern struct mutex rtas_ibm_get_indices_lock;
extern struct mutex rtas_ibm_set_dynamic_indicator_lock;
extern struct mutex rtas_ibm_get_dynamic_sensor_state_lock;
extern struct mutex rtas_ibm_physical_attestation_lock;
+extern struct mutex rtas_ibm_send_hvpipe_msg_lock;
#define GLOBAL_INTERRUPT_QUEUE 9005
diff --git a/arch/powerpc/kernel/rtas.c b/arch/powerpc/kernel/rtas.c
index e61245c4468e..8d81c1e7a8db 100644
--- a/arch/powerpc/kernel/rtas.c
+++ b/arch/powerpc/kernel/rtas.c
@@ -98,6 +98,8 @@ DEFINE_MUTEX(rtas_ibm_get_vpd_lock);
DEFINE_MUTEX(rtas_ibm_get_indices_lock);
DEFINE_MUTEX(rtas_ibm_set_dynamic_indicator_lock);
DEFINE_MUTEX(rtas_ibm_get_dynamic_sensor_state_lock);
+DEFINE_MUTEX(rtas_ibm_receive_hvpipe_msg_lock);
+DEFINE_MUTEX(rtas_ibm_send_hvpipe_msg_lock);
static struct rtas_function rtas_function_table[] __ro_after_init = {
[RTAS_FNIDX__CHECK_EXCEPTION] = {
@@ -373,6 +375,17 @@ static struct rtas_function rtas_function_table[] __ro_after_init = {
[RTAS_FNIDX__IBM_READ_SLOT_RESET_STATE2] = {
.name = "ibm,read-slot-reset-state2",
},
+ [RTAS_FNIDX__IBM_RECEIVE_HVPIPE_MSG] {
+ .name = "ibm,receive-hvpipe-msg",
+ .filter = &(const struct rtas_filter) {
+ .buf_idx1 = 0, .size_idx1 = 1,
+ .buf_idx2 = -1, .size_idx2 = -1,
+ },
+ /*
+ * PAPR+ v2.13 R1–7.3.32.1
+ */
+ .lock = &rtas_ibm_receive_hvpipe_msg_lock,
+ },
[RTAS_FNIDX__IBM_REMOVE_PE_DMA_WINDOW] = {
.name = "ibm,remove-pe-dma-window",
},
@@ -391,6 +404,17 @@ static struct rtas_function rtas_function_table[] __ro_after_init = {
.buf_idx2 = -1, .size_idx2 = -1,
},
},
+ [RTAS_FNIDX__IBM_SEND_HVPIPE_MSG] {
+ .name = "ibm,send-hvpipe-msg",
+ .filter = &(const struct rtas_filter) {
+ .buf_idx1 = 1, .size_idx1 = -1,
+ .buf_idx2 = -1, .size_idx2 = -1,
+ },
+ /*
+ * PAPR+ v2.13 R1–7.3.32.2
+ */
+ .lock = &rtas_ibm_send_hvpipe_msg_lock,
+ },
[RTAS_FNIDX__IBM_SET_DYNAMIC_INDICATOR] = {
.name = "ibm,set-dynamic-indicator",
.filter = &(const struct rtas_filter) {
diff --git a/arch/powerpc/kernel/rtasd.c b/arch/powerpc/kernel/rtasd.c
index 9bba469239fc..6336ec9aedd0 100644
--- a/arch/powerpc/kernel/rtasd.c
+++ b/arch/powerpc/kernel/rtasd.c
@@ -89,6 +89,8 @@ static char *rtas_event_type(int type)
return "Platform Resource Reassignment Event";
case RTAS_TYPE_HOTPLUG:
return "Hotplug Event";
+ case RTAS_TYPE_HVPIPE:
+ return "Hypervisor Pipe Notification event";
}
return rtas_type[0];
--
2.43.5
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2 2/9] powerpc/pseries: Define HVPIPE specific macros
@ 2025-08-13 19:32 kernel test robot
0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2025-08-13 19:32 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp
::::::
:::::: Manual check reason: "low confidence static check warning: arch/powerpc/kernel/rtas.c:378:46: sparse: sparse: obsolete array initializer, use C99 syntax"
::::::
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
In-Reply-To: <20250812225715.339225-3-haren@linux.ibm.com>
References: <20250812225715.339225-3-haren@linux.ibm.com>
TO: Haren Myneni <haren@linux.ibm.com>
TO: linuxppc-dev@lists.ozlabs.org
CC: maddy@linux.ibm.com
CC: mpe@ellerman.id.au
CC: msuchanek@suse.de
CC: mahesh@linux.ibm.com
CC: tyreld@linux.ibm.com
CC: npiggin@gmail.com
CC: bjking1@linux.ibm.com
CC: hbabu@us.ibm.com
CC: haren@linux.ibm.com
Hi Haren,
kernel test robot noticed the following build warnings:
[auto build test WARNING on v6.17-rc1]
[also build test WARNING on linus/master next-20250813]
[cannot apply to powerpc/next powerpc/fixes]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Haren-Myneni/powerpc-pseries-Define-papr-hvpipe-ioctl/20250813-070046
base: v6.17-rc1
patch link: https://lore.kernel.org/r/20250812225715.339225-3-haren%40linux.ibm.com
patch subject: [PATCH v2 2/9] powerpc/pseries: Define HVPIPE specific macros
:::::: branch date: 20 hours ago
:::::: commit date: 20 hours ago
config: powerpc-randconfig-r112-20250813 (https://download.01.org/0day-ci/archive/20250814/202508140315.vBExalVa-lkp@intel.com/config)
compiler: powerpc-linux-gcc (GCC) 8.5.0
reproduce: (https://download.01.org/0day-ci/archive/20250814/202508140315.vBExalVa-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/r/202508140315.vBExalVa-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> arch/powerpc/kernel/rtas.c:378:46: sparse: sparse: obsolete array initializer, use C99 syntax
arch/powerpc/kernel/rtas.c:407:43: sparse: sparse: obsolete array initializer, use C99 syntax
>> arch/powerpc/kernel/rtas.c:101:1: sparse: sparse: symbol 'rtas_ibm_receive_hvpipe_msg_lock' was not declared. Should it be static?
vim +378 arch/powerpc/kernel/rtas.c
adf7a019e5f826 Nathan Lynch 2023-12-12 103
8252b88294d2a7 Nathan Lynch 2023-02-10 104 static struct rtas_function rtas_function_table[] __ro_after_init = {
8252b88294d2a7 Nathan Lynch 2023-02-10 105 [RTAS_FNIDX__CHECK_EXCEPTION] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 106 .name = "check-exception",
8252b88294d2a7 Nathan Lynch 2023-02-10 107 },
8252b88294d2a7 Nathan Lynch 2023-02-10 108 [RTAS_FNIDX__DISPLAY_CHARACTER] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 109 .name = "display-character",
8252b88294d2a7 Nathan Lynch 2023-02-10 110 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 111 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 112 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 113 },
8252b88294d2a7 Nathan Lynch 2023-02-10 114 },
8252b88294d2a7 Nathan Lynch 2023-02-10 115 [RTAS_FNIDX__EVENT_SCAN] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 116 .name = "event-scan",
8252b88294d2a7 Nathan Lynch 2023-02-10 117 },
8252b88294d2a7 Nathan Lynch 2023-02-10 118 [RTAS_FNIDX__FREEZE_TIME_BASE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 119 .name = "freeze-time-base",
8252b88294d2a7 Nathan Lynch 2023-02-10 120 },
8252b88294d2a7 Nathan Lynch 2023-02-10 121 [RTAS_FNIDX__GET_POWER_LEVEL] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 122 .name = "get-power-level",
8252b88294d2a7 Nathan Lynch 2023-02-10 123 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 124 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 125 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 126 },
8252b88294d2a7 Nathan Lynch 2023-02-10 127 },
8252b88294d2a7 Nathan Lynch 2023-02-10 128 [RTAS_FNIDX__GET_SENSOR_STATE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 129 .name = "get-sensor-state",
8252b88294d2a7 Nathan Lynch 2023-02-10 130 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 131 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 132 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 133 },
8252b88294d2a7 Nathan Lynch 2023-02-10 134 },
8252b88294d2a7 Nathan Lynch 2023-02-10 135 [RTAS_FNIDX__GET_TERM_CHAR] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 136 .name = "get-term-char",
8252b88294d2a7 Nathan Lynch 2023-02-10 137 },
8252b88294d2a7 Nathan Lynch 2023-02-10 138 [RTAS_FNIDX__GET_TIME_OF_DAY] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 139 .name = "get-time-of-day",
8252b88294d2a7 Nathan Lynch 2023-02-10 140 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 141 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 142 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 143 },
8252b88294d2a7 Nathan Lynch 2023-02-10 144 },
8252b88294d2a7 Nathan Lynch 2023-02-10 145 [RTAS_FNIDX__IBM_ACTIVATE_FIRMWARE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 146 .name = "ibm,activate-firmware",
8252b88294d2a7 Nathan Lynch 2023-02-10 147 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 148 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 149 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 150 },
adf7a019e5f826 Nathan Lynch 2023-12-12 151 /*
adf7a019e5f826 Nathan Lynch 2023-12-12 152 * PAPR+ as of v2.13 doesn't explicitly impose any
adf7a019e5f826 Nathan Lynch 2023-12-12 153 * restriction, but this typically requires multiple
adf7a019e5f826 Nathan Lynch 2023-12-12 154 * calls before success, and there's no reason to
adf7a019e5f826 Nathan Lynch 2023-12-12 155 * allow sequences to interleave.
adf7a019e5f826 Nathan Lynch 2023-12-12 156 */
adf7a019e5f826 Nathan Lynch 2023-12-12 157 .lock = &rtas_ibm_activate_firmware_lock,
8252b88294d2a7 Nathan Lynch 2023-02-10 158 },
8252b88294d2a7 Nathan Lynch 2023-02-10 159 [RTAS_FNIDX__IBM_CBE_START_PTCAL] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 160 .name = "ibm,cbe-start-ptcal",
8252b88294d2a7 Nathan Lynch 2023-02-10 161 },
8252b88294d2a7 Nathan Lynch 2023-02-10 162 [RTAS_FNIDX__IBM_CBE_STOP_PTCAL] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 163 .name = "ibm,cbe-stop-ptcal",
8252b88294d2a7 Nathan Lynch 2023-02-10 164 },
8252b88294d2a7 Nathan Lynch 2023-02-10 165 [RTAS_FNIDX__IBM_CHANGE_MSI] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 166 .name = "ibm,change-msi",
8252b88294d2a7 Nathan Lynch 2023-02-10 167 },
8252b88294d2a7 Nathan Lynch 2023-02-10 168 [RTAS_FNIDX__IBM_CLOSE_ERRINJCT] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 169 .name = "ibm,close-errinjct",
8252b88294d2a7 Nathan Lynch 2023-02-10 170 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 171 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 172 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 173 },
8252b88294d2a7 Nathan Lynch 2023-02-10 174 },
8252b88294d2a7 Nathan Lynch 2023-02-10 175 [RTAS_FNIDX__IBM_CONFIGURE_BRIDGE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 176 .name = "ibm,configure-bridge",
8252b88294d2a7 Nathan Lynch 2023-02-10 177 },
8252b88294d2a7 Nathan Lynch 2023-02-10 178 [RTAS_FNIDX__IBM_CONFIGURE_CONNECTOR] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 179 .name = "ibm,configure-connector",
8252b88294d2a7 Nathan Lynch 2023-02-10 180 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 181 .buf_idx1 = 0, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 182 .buf_idx2 = 1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 183 .fixed_size = 4096,
8252b88294d2a7 Nathan Lynch 2023-02-10 184 },
8252b88294d2a7 Nathan Lynch 2023-02-10 185 },
8252b88294d2a7 Nathan Lynch 2023-02-10 186 [RTAS_FNIDX__IBM_CONFIGURE_KERNEL_DUMP] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 187 .name = "ibm,configure-kernel-dump",
8252b88294d2a7 Nathan Lynch 2023-02-10 188 },
8252b88294d2a7 Nathan Lynch 2023-02-10 189 [RTAS_FNIDX__IBM_CONFIGURE_PE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 190 .name = "ibm,configure-pe",
8252b88294d2a7 Nathan Lynch 2023-02-10 191 },
8252b88294d2a7 Nathan Lynch 2023-02-10 192 [RTAS_FNIDX__IBM_CREATE_PE_DMA_WINDOW] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 193 .name = "ibm,create-pe-dma-window",
8252b88294d2a7 Nathan Lynch 2023-02-10 194 },
8252b88294d2a7 Nathan Lynch 2023-02-10 195 [RTAS_FNIDX__IBM_DISPLAY_MESSAGE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 196 .name = "ibm,display-message",
8252b88294d2a7 Nathan Lynch 2023-02-10 197 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 198 .buf_idx1 = 0, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 199 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 200 },
8252b88294d2a7 Nathan Lynch 2023-02-10 201 },
8252b88294d2a7 Nathan Lynch 2023-02-10 202 [RTAS_FNIDX__IBM_ERRINJCT] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 203 .name = "ibm,errinjct",
8252b88294d2a7 Nathan Lynch 2023-02-10 204 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 205 .buf_idx1 = 2, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 206 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 207 .fixed_size = 1024,
8252b88294d2a7 Nathan Lynch 2023-02-10 208 },
8252b88294d2a7 Nathan Lynch 2023-02-10 209 },
8252b88294d2a7 Nathan Lynch 2023-02-10 210 [RTAS_FNIDX__IBM_EXTI2C] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 211 .name = "ibm,exti2c",
8252b88294d2a7 Nathan Lynch 2023-02-10 212 },
8252b88294d2a7 Nathan Lynch 2023-02-10 213 [RTAS_FNIDX__IBM_GET_CONFIG_ADDR_INFO] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 214 .name = "ibm,get-config-addr-info",
8252b88294d2a7 Nathan Lynch 2023-02-10 215 },
8252b88294d2a7 Nathan Lynch 2023-02-10 216 [RTAS_FNIDX__IBM_GET_CONFIG_ADDR_INFO2] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 217 .name = "ibm,get-config-addr-info2",
8252b88294d2a7 Nathan Lynch 2023-02-10 218 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 219 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 220 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 221 },
8252b88294d2a7 Nathan Lynch 2023-02-10 222 },
8252b88294d2a7 Nathan Lynch 2023-02-10 223 [RTAS_FNIDX__IBM_GET_DYNAMIC_SENSOR_STATE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 224 .name = "ibm,get-dynamic-sensor-state",
8252b88294d2a7 Nathan Lynch 2023-02-10 225 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 226 .buf_idx1 = 1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 227 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 228 },
adf7a019e5f826 Nathan Lynch 2023-12-12 229 /*
adf7a019e5f826 Nathan Lynch 2023-12-12 230 * PAPR+ v2.13 R1–7.3.19–3 is explicit that the OS
adf7a019e5f826 Nathan Lynch 2023-12-12 231 * must not call ibm,get-dynamic-sensor-state with
adf7a019e5f826 Nathan Lynch 2023-12-12 232 * different inputs until a non-retry status has been
adf7a019e5f826 Nathan Lynch 2023-12-12 233 * returned.
adf7a019e5f826 Nathan Lynch 2023-12-12 234 */
adf7a019e5f826 Nathan Lynch 2023-12-12 235 .lock = &rtas_ibm_get_dynamic_sensor_state_lock,
8252b88294d2a7 Nathan Lynch 2023-02-10 236 },
8252b88294d2a7 Nathan Lynch 2023-02-10 237 [RTAS_FNIDX__IBM_GET_INDICES] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 238 .name = "ibm,get-indices",
8252b88294d2a7 Nathan Lynch 2023-02-10 239 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 240 .buf_idx1 = 2, .size_idx1 = 3,
8252b88294d2a7 Nathan Lynch 2023-02-10 241 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 242 },
adf7a019e5f826 Nathan Lynch 2023-12-12 243 /*
adf7a019e5f826 Nathan Lynch 2023-12-12 244 * PAPR+ v2.13 R1–7.3.17–2 says that the OS must not
adf7a019e5f826 Nathan Lynch 2023-12-12 245 * interleave ibm,get-indices call sequences with
adf7a019e5f826 Nathan Lynch 2023-12-12 246 * different inputs.
adf7a019e5f826 Nathan Lynch 2023-12-12 247 */
adf7a019e5f826 Nathan Lynch 2023-12-12 248 .lock = &rtas_ibm_get_indices_lock,
8252b88294d2a7 Nathan Lynch 2023-02-10 249 },
8252b88294d2a7 Nathan Lynch 2023-02-10 250 [RTAS_FNIDX__IBM_GET_RIO_TOPOLOGY] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 251 .name = "ibm,get-rio-topology",
8252b88294d2a7 Nathan Lynch 2023-02-10 252 },
8252b88294d2a7 Nathan Lynch 2023-02-10 253 [RTAS_FNIDX__IBM_GET_SYSTEM_PARAMETER] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 254 .name = "ibm,get-system-parameter",
8252b88294d2a7 Nathan Lynch 2023-02-10 255 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 256 .buf_idx1 = 1, .size_idx1 = 2,
8252b88294d2a7 Nathan Lynch 2023-02-10 257 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 258 },
8252b88294d2a7 Nathan Lynch 2023-02-10 259 },
8252b88294d2a7 Nathan Lynch 2023-02-10 260 [RTAS_FNIDX__IBM_GET_VPD] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 261 .name = "ibm,get-vpd",
8252b88294d2a7 Nathan Lynch 2023-02-10 262 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 263 .buf_idx1 = 0, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 264 .buf_idx2 = 1, .size_idx2 = 2,
8252b88294d2a7 Nathan Lynch 2023-02-10 265 },
adf7a019e5f826 Nathan Lynch 2023-12-12 266 /*
adf7a019e5f826 Nathan Lynch 2023-12-12 267 * PAPR+ v2.13 R1–7.3.20–4 indicates that sequences
adf7a019e5f826 Nathan Lynch 2023-12-12 268 * should not be allowed to interleave.
adf7a019e5f826 Nathan Lynch 2023-12-12 269 */
adf7a019e5f826 Nathan Lynch 2023-12-12 270 .lock = &rtas_ibm_get_vpd_lock,
8252b88294d2a7 Nathan Lynch 2023-02-10 271 },
8252b88294d2a7 Nathan Lynch 2023-02-10 272 [RTAS_FNIDX__IBM_GET_XIVE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 273 .name = "ibm,get-xive",
8252b88294d2a7 Nathan Lynch 2023-02-10 274 },
8252b88294d2a7 Nathan Lynch 2023-02-10 275 [RTAS_FNIDX__IBM_INT_OFF] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 276 .name = "ibm,int-off",
8252b88294d2a7 Nathan Lynch 2023-02-10 277 },
8252b88294d2a7 Nathan Lynch 2023-02-10 278 [RTAS_FNIDX__IBM_INT_ON] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 279 .name = "ibm,int-on",
8252b88294d2a7 Nathan Lynch 2023-02-10 280 },
8252b88294d2a7 Nathan Lynch 2023-02-10 281 [RTAS_FNIDX__IBM_IO_QUIESCE_ACK] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 282 .name = "ibm,io-quiesce-ack",
8252b88294d2a7 Nathan Lynch 2023-02-10 283 },
8252b88294d2a7 Nathan Lynch 2023-02-10 284 [RTAS_FNIDX__IBM_LPAR_PERFTOOLS] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 285 .name = "ibm,lpar-perftools",
8252b88294d2a7 Nathan Lynch 2023-02-10 286 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 287 .buf_idx1 = 2, .size_idx1 = 3,
8252b88294d2a7 Nathan Lynch 2023-02-10 288 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 289 },
adf7a019e5f826 Nathan Lynch 2023-12-12 290 /*
adf7a019e5f826 Nathan Lynch 2023-12-12 291 * PAPR+ v2.13 R1–7.3.26–6 says the OS should allow
adf7a019e5f826 Nathan Lynch 2023-12-12 292 * only one call sequence in progress at a time.
adf7a019e5f826 Nathan Lynch 2023-12-12 293 */
adf7a019e5f826 Nathan Lynch 2023-12-12 294 .lock = &rtas_ibm_lpar_perftools_lock,
8252b88294d2a7 Nathan Lynch 2023-02-10 295 },
8252b88294d2a7 Nathan Lynch 2023-02-10 296 [RTAS_FNIDX__IBM_MANAGE_FLASH_IMAGE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 297 .name = "ibm,manage-flash-image",
8252b88294d2a7 Nathan Lynch 2023-02-10 298 },
8252b88294d2a7 Nathan Lynch 2023-02-10 299 [RTAS_FNIDX__IBM_MANAGE_STORAGE_PRESERVATION] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 300 .name = "ibm,manage-storage-preservation",
8252b88294d2a7 Nathan Lynch 2023-02-10 301 },
8252b88294d2a7 Nathan Lynch 2023-02-10 302 [RTAS_FNIDX__IBM_NMI_INTERLOCK] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 303 .name = "ibm,nmi-interlock",
8252b88294d2a7 Nathan Lynch 2023-02-10 304 },
8252b88294d2a7 Nathan Lynch 2023-02-10 305 [RTAS_FNIDX__IBM_NMI_REGISTER] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 306 .name = "ibm,nmi-register",
8252b88294d2a7 Nathan Lynch 2023-02-10 307 },
8252b88294d2a7 Nathan Lynch 2023-02-10 308 [RTAS_FNIDX__IBM_OPEN_ERRINJCT] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 309 .name = "ibm,open-errinjct",
8252b88294d2a7 Nathan Lynch 2023-02-10 310 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 311 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 312 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 313 },
8252b88294d2a7 Nathan Lynch 2023-02-10 314 },
8252b88294d2a7 Nathan Lynch 2023-02-10 315 [RTAS_FNIDX__IBM_OPEN_SRIOV_ALLOW_UNFREEZE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 316 .name = "ibm,open-sriov-allow-unfreeze",
8252b88294d2a7 Nathan Lynch 2023-02-10 317 },
8252b88294d2a7 Nathan Lynch 2023-02-10 318 [RTAS_FNIDX__IBM_OPEN_SRIOV_MAP_PE_NUMBER] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 319 .name = "ibm,open-sriov-map-pe-number",
8252b88294d2a7 Nathan Lynch 2023-02-10 320 },
8252b88294d2a7 Nathan Lynch 2023-02-10 321 [RTAS_FNIDX__IBM_OS_TERM] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 322 .name = "ibm,os-term",
8252b88294d2a7 Nathan Lynch 2023-02-10 323 },
8252b88294d2a7 Nathan Lynch 2023-02-10 324 [RTAS_FNIDX__IBM_PARTNER_CONTROL] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 325 .name = "ibm,partner-control",
8252b88294d2a7 Nathan Lynch 2023-02-10 326 },
8252b88294d2a7 Nathan Lynch 2023-02-10 327 [RTAS_FNIDX__IBM_PHYSICAL_ATTESTATION] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 328 .name = "ibm,physical-attestation",
8252b88294d2a7 Nathan Lynch 2023-02-10 329 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 330 .buf_idx1 = 0, .size_idx1 = 1,
8252b88294d2a7 Nathan Lynch 2023-02-10 331 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 332 },
adf7a019e5f826 Nathan Lynch 2023-12-12 333 /*
adf7a019e5f826 Nathan Lynch 2023-12-12 334 * This follows a sequence-based pattern similar to
adf7a019e5f826 Nathan Lynch 2023-12-12 335 * ibm,get-vpd et al. Since PAPR+ restricts
adf7a019e5f826 Nathan Lynch 2023-12-12 336 * interleaving call sequences for other functions of
adf7a019e5f826 Nathan Lynch 2023-12-12 337 * this style, assume the restriction applies here,
adf7a019e5f826 Nathan Lynch 2023-12-12 338 * even though it's not explicit in the spec.
adf7a019e5f826 Nathan Lynch 2023-12-12 339 */
adf7a019e5f826 Nathan Lynch 2023-12-12 340 .lock = &rtas_ibm_physical_attestation_lock,
8252b88294d2a7 Nathan Lynch 2023-02-10 341 },
8252b88294d2a7 Nathan Lynch 2023-02-10 342 [RTAS_FNIDX__IBM_PLATFORM_DUMP] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 343 .name = "ibm,platform-dump",
8252b88294d2a7 Nathan Lynch 2023-02-10 344 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 345 .buf_idx1 = 4, .size_idx1 = 5,
8252b88294d2a7 Nathan Lynch 2023-02-10 346 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 347 },
adf7a019e5f826 Nathan Lynch 2023-12-12 348 /*
adf7a019e5f826 Nathan Lynch 2023-12-12 349 * PAPR+ v2.13 7.3.3.4.1 indicates that concurrent
adf7a019e5f826 Nathan Lynch 2023-12-12 350 * sequences of ibm,platform-dump are allowed if they
adf7a019e5f826 Nathan Lynch 2023-12-12 351 * are operating on different dump tags. So leave the
adf7a019e5f826 Nathan Lynch 2023-12-12 352 * lock pointer unset for now. This may need
adf7a019e5f826 Nathan Lynch 2023-12-12 353 * reconsideration if kernel-internal users appear.
adf7a019e5f826 Nathan Lynch 2023-12-12 354 */
8252b88294d2a7 Nathan Lynch 2023-02-10 355 },
8252b88294d2a7 Nathan Lynch 2023-02-10 356 [RTAS_FNIDX__IBM_POWER_OFF_UPS] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 357 .name = "ibm,power-off-ups",
8252b88294d2a7 Nathan Lynch 2023-02-10 358 },
8252b88294d2a7 Nathan Lynch 2023-02-10 359 [RTAS_FNIDX__IBM_QUERY_INTERRUPT_SOURCE_NUMBER] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 360 .name = "ibm,query-interrupt-source-number",
8252b88294d2a7 Nathan Lynch 2023-02-10 361 },
8252b88294d2a7 Nathan Lynch 2023-02-10 362 [RTAS_FNIDX__IBM_QUERY_PE_DMA_WINDOW] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 363 .name = "ibm,query-pe-dma-window",
8252b88294d2a7 Nathan Lynch 2023-02-10 364 },
8252b88294d2a7 Nathan Lynch 2023-02-10 365 [RTAS_FNIDX__IBM_READ_PCI_CONFIG] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 366 .name = "ibm,read-pci-config",
8252b88294d2a7 Nathan Lynch 2023-02-10 367 },
8252b88294d2a7 Nathan Lynch 2023-02-10 368 [RTAS_FNIDX__IBM_READ_SLOT_RESET_STATE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 369 .name = "ibm,read-slot-reset-state",
8252b88294d2a7 Nathan Lynch 2023-02-10 370 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 371 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 372 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 373 },
8252b88294d2a7 Nathan Lynch 2023-02-10 374 },
8252b88294d2a7 Nathan Lynch 2023-02-10 375 [RTAS_FNIDX__IBM_READ_SLOT_RESET_STATE2] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 376 .name = "ibm,read-slot-reset-state2",
8252b88294d2a7 Nathan Lynch 2023-02-10 377 },
e143d65baaf23c Haren Myneni 2025-08-12 @378 [RTAS_FNIDX__IBM_RECEIVE_HVPIPE_MSG] {
e143d65baaf23c Haren Myneni 2025-08-12 379 .name = "ibm,receive-hvpipe-msg",
e143d65baaf23c Haren Myneni 2025-08-12 380 .filter = &(const struct rtas_filter) {
e143d65baaf23c Haren Myneni 2025-08-12 381 .buf_idx1 = 0, .size_idx1 = 1,
e143d65baaf23c Haren Myneni 2025-08-12 382 .buf_idx2 = -1, .size_idx2 = -1,
e143d65baaf23c Haren Myneni 2025-08-12 383 },
e143d65baaf23c Haren Myneni 2025-08-12 384 /*
e143d65baaf23c Haren Myneni 2025-08-12 385 * PAPR+ v2.13 R1–7.3.32.1
e143d65baaf23c Haren Myneni 2025-08-12 386 */
e143d65baaf23c Haren Myneni 2025-08-12 387 .lock = &rtas_ibm_receive_hvpipe_msg_lock,
e143d65baaf23c Haren Myneni 2025-08-12 388 },
8252b88294d2a7 Nathan Lynch 2023-02-10 389 [RTAS_FNIDX__IBM_REMOVE_PE_DMA_WINDOW] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 390 .name = "ibm,remove-pe-dma-window",
8252b88294d2a7 Nathan Lynch 2023-02-10 391 },
fad87dbd48156a Nathan Lynch 2024-02-22 392 [RTAS_FNIDX__IBM_RESET_PE_DMA_WINDOW] = {
fad87dbd48156a Nathan Lynch 2024-02-22 393 /*
fad87dbd48156a Nathan Lynch 2024-02-22 394 * Note: PAPR+ v2.13 7.3.31.4.1 spells this as
fad87dbd48156a Nathan Lynch 2024-02-22 395 * "ibm,reset-pe-dma-windows" (plural), but RTAS
fad87dbd48156a Nathan Lynch 2024-02-22 396 * implementations use the singular form in practice.
fad87dbd48156a Nathan Lynch 2024-02-22 397 */
fad87dbd48156a Nathan Lynch 2024-02-22 398 .name = "ibm,reset-pe-dma-window",
8252b88294d2a7 Nathan Lynch 2023-02-10 399 },
8252b88294d2a7 Nathan Lynch 2023-02-10 400 [RTAS_FNIDX__IBM_SCAN_LOG_DUMP] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 401 .name = "ibm,scan-log-dump",
8252b88294d2a7 Nathan Lynch 2023-02-10 402 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 403 .buf_idx1 = 0, .size_idx1 = 1,
8252b88294d2a7 Nathan Lynch 2023-02-10 404 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 405 },
8252b88294d2a7 Nathan Lynch 2023-02-10 406 },
e143d65baaf23c Haren Myneni 2025-08-12 407 [RTAS_FNIDX__IBM_SEND_HVPIPE_MSG] {
e143d65baaf23c Haren Myneni 2025-08-12 408 .name = "ibm,send-hvpipe-msg",
e143d65baaf23c Haren Myneni 2025-08-12 409 .filter = &(const struct rtas_filter) {
e143d65baaf23c Haren Myneni 2025-08-12 410 .buf_idx1 = 1, .size_idx1 = -1,
e143d65baaf23c Haren Myneni 2025-08-12 411 .buf_idx2 = -1, .size_idx2 = -1,
e143d65baaf23c Haren Myneni 2025-08-12 412 },
e143d65baaf23c Haren Myneni 2025-08-12 413 /*
e143d65baaf23c Haren Myneni 2025-08-12 414 * PAPR+ v2.13 R1–7.3.32.2
e143d65baaf23c Haren Myneni 2025-08-12 415 */
e143d65baaf23c Haren Myneni 2025-08-12 416 .lock = &rtas_ibm_send_hvpipe_msg_lock,
e143d65baaf23c Haren Myneni 2025-08-12 417 },
8252b88294d2a7 Nathan Lynch 2023-02-10 418 [RTAS_FNIDX__IBM_SET_DYNAMIC_INDICATOR] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 419 .name = "ibm,set-dynamic-indicator",
8252b88294d2a7 Nathan Lynch 2023-02-10 420 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 421 .buf_idx1 = 2, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 422 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 423 },
adf7a019e5f826 Nathan Lynch 2023-12-12 424 /*
adf7a019e5f826 Nathan Lynch 2023-12-12 425 * PAPR+ v2.13 R1–7.3.18–3 says the OS must not call
adf7a019e5f826 Nathan Lynch 2023-12-12 426 * this function with different inputs until a
adf7a019e5f826 Nathan Lynch 2023-12-12 427 * non-retry status has been returned.
adf7a019e5f826 Nathan Lynch 2023-12-12 428 */
adf7a019e5f826 Nathan Lynch 2023-12-12 429 .lock = &rtas_ibm_set_dynamic_indicator_lock,
8252b88294d2a7 Nathan Lynch 2023-02-10 430 },
8252b88294d2a7 Nathan Lynch 2023-02-10 431 [RTAS_FNIDX__IBM_SET_EEH_OPTION] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 432 .name = "ibm,set-eeh-option",
8252b88294d2a7 Nathan Lynch 2023-02-10 433 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 434 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 435 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 436 },
8252b88294d2a7 Nathan Lynch 2023-02-10 437 },
8252b88294d2a7 Nathan Lynch 2023-02-10 438 [RTAS_FNIDX__IBM_SET_SLOT_RESET] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 439 .name = "ibm,set-slot-reset",
8252b88294d2a7 Nathan Lynch 2023-02-10 440 },
8252b88294d2a7 Nathan Lynch 2023-02-10 441 [RTAS_FNIDX__IBM_SET_SYSTEM_PARAMETER] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 442 .name = "ibm,set-system-parameter",
8252b88294d2a7 Nathan Lynch 2023-02-10 443 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 444 .buf_idx1 = 1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 445 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 446 },
8252b88294d2a7 Nathan Lynch 2023-02-10 447 },
8252b88294d2a7 Nathan Lynch 2023-02-10 448 [RTAS_FNIDX__IBM_SET_XIVE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 449 .name = "ibm,set-xive",
8252b88294d2a7 Nathan Lynch 2023-02-10 450 },
8252b88294d2a7 Nathan Lynch 2023-02-10 451 [RTAS_FNIDX__IBM_SLOT_ERROR_DETAIL] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 452 .name = "ibm,slot-error-detail",
8252b88294d2a7 Nathan Lynch 2023-02-10 453 },
8252b88294d2a7 Nathan Lynch 2023-02-10 454 [RTAS_FNIDX__IBM_SUSPEND_ME] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 455 .name = "ibm,suspend-me",
8252b88294d2a7 Nathan Lynch 2023-02-10 456 .banned_for_syscall_on_le = true,
8252b88294d2a7 Nathan Lynch 2023-02-10 457 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 458 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 459 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 460 },
8252b88294d2a7 Nathan Lynch 2023-02-10 461 },
8252b88294d2a7 Nathan Lynch 2023-02-10 462 [RTAS_FNIDX__IBM_TUNE_DMA_PARMS] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 463 .name = "ibm,tune-dma-parms",
8252b88294d2a7 Nathan Lynch 2023-02-10 464 },
8252b88294d2a7 Nathan Lynch 2023-02-10 465 [RTAS_FNIDX__IBM_UPDATE_FLASH_64_AND_REBOOT] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 466 .name = "ibm,update-flash-64-and-reboot",
8252b88294d2a7 Nathan Lynch 2023-02-10 467 },
8252b88294d2a7 Nathan Lynch 2023-02-10 468 [RTAS_FNIDX__IBM_UPDATE_NODES] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 469 .name = "ibm,update-nodes",
8252b88294d2a7 Nathan Lynch 2023-02-10 470 .banned_for_syscall_on_le = true,
8252b88294d2a7 Nathan Lynch 2023-02-10 471 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 472 .buf_idx1 = 0, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 473 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 474 .fixed_size = 4096,
8252b88294d2a7 Nathan Lynch 2023-02-10 475 },
8252b88294d2a7 Nathan Lynch 2023-02-10 476 },
8252b88294d2a7 Nathan Lynch 2023-02-10 477 [RTAS_FNIDX__IBM_UPDATE_PROPERTIES] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 478 .name = "ibm,update-properties",
8252b88294d2a7 Nathan Lynch 2023-02-10 479 .banned_for_syscall_on_le = true,
8252b88294d2a7 Nathan Lynch 2023-02-10 480 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 481 .buf_idx1 = 0, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 482 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 483 .fixed_size = 4096,
8252b88294d2a7 Nathan Lynch 2023-02-10 484 },
8252b88294d2a7 Nathan Lynch 2023-02-10 485 },
8252b88294d2a7 Nathan Lynch 2023-02-10 486 [RTAS_FNIDX__IBM_VALIDATE_FLASH_IMAGE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 487 .name = "ibm,validate-flash-image",
8252b88294d2a7 Nathan Lynch 2023-02-10 488 },
8252b88294d2a7 Nathan Lynch 2023-02-10 489 [RTAS_FNIDX__IBM_WRITE_PCI_CONFIG] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 490 .name = "ibm,write-pci-config",
8252b88294d2a7 Nathan Lynch 2023-02-10 491 },
8252b88294d2a7 Nathan Lynch 2023-02-10 492 [RTAS_FNIDX__NVRAM_FETCH] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 493 .name = "nvram-fetch",
8252b88294d2a7 Nathan Lynch 2023-02-10 494 },
8252b88294d2a7 Nathan Lynch 2023-02-10 495 [RTAS_FNIDX__NVRAM_STORE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 496 .name = "nvram-store",
8252b88294d2a7 Nathan Lynch 2023-02-10 497 },
8252b88294d2a7 Nathan Lynch 2023-02-10 498 [RTAS_FNIDX__POWER_OFF] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 499 .name = "power-off",
8252b88294d2a7 Nathan Lynch 2023-02-10 500 },
8252b88294d2a7 Nathan Lynch 2023-02-10 501 [RTAS_FNIDX__PUT_TERM_CHAR] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 502 .name = "put-term-char",
8252b88294d2a7 Nathan Lynch 2023-02-10 503 },
8252b88294d2a7 Nathan Lynch 2023-02-10 504 [RTAS_FNIDX__QUERY_CPU_STOPPED_STATE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 505 .name = "query-cpu-stopped-state",
8252b88294d2a7 Nathan Lynch 2023-02-10 506 },
8252b88294d2a7 Nathan Lynch 2023-02-10 507 [RTAS_FNIDX__READ_PCI_CONFIG] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 508 .name = "read-pci-config",
8252b88294d2a7 Nathan Lynch 2023-02-10 509 },
8252b88294d2a7 Nathan Lynch 2023-02-10 510 [RTAS_FNIDX__RTAS_LAST_ERROR] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 511 .name = "rtas-last-error",
8252b88294d2a7 Nathan Lynch 2023-02-10 512 },
8252b88294d2a7 Nathan Lynch 2023-02-10 513 [RTAS_FNIDX__SET_INDICATOR] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 514 .name = "set-indicator",
8252b88294d2a7 Nathan Lynch 2023-02-10 515 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 516 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 517 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 518 },
8252b88294d2a7 Nathan Lynch 2023-02-10 519 },
8252b88294d2a7 Nathan Lynch 2023-02-10 520 [RTAS_FNIDX__SET_POWER_LEVEL] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 521 .name = "set-power-level",
8252b88294d2a7 Nathan Lynch 2023-02-10 522 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 523 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 524 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 525 },
8252b88294d2a7 Nathan Lynch 2023-02-10 526 },
8252b88294d2a7 Nathan Lynch 2023-02-10 527 [RTAS_FNIDX__SET_TIME_FOR_POWER_ON] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 528 .name = "set-time-for-power-on",
8252b88294d2a7 Nathan Lynch 2023-02-10 529 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 530 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 531 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 532 },
8252b88294d2a7 Nathan Lynch 2023-02-10 533 },
8252b88294d2a7 Nathan Lynch 2023-02-10 534 [RTAS_FNIDX__SET_TIME_OF_DAY] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 535 .name = "set-time-of-day",
8252b88294d2a7 Nathan Lynch 2023-02-10 536 .filter = &(const struct rtas_filter) {
8252b88294d2a7 Nathan Lynch 2023-02-10 537 .buf_idx1 = -1, .size_idx1 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 538 .buf_idx2 = -1, .size_idx2 = -1,
8252b88294d2a7 Nathan Lynch 2023-02-10 539 },
8252b88294d2a7 Nathan Lynch 2023-02-10 540 },
8252b88294d2a7 Nathan Lynch 2023-02-10 541 [RTAS_FNIDX__START_CPU] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 542 .name = "start-cpu",
8252b88294d2a7 Nathan Lynch 2023-02-10 543 },
8252b88294d2a7 Nathan Lynch 2023-02-10 544 [RTAS_FNIDX__STOP_SELF] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 545 .name = "stop-self",
8252b88294d2a7 Nathan Lynch 2023-02-10 546 },
8252b88294d2a7 Nathan Lynch 2023-02-10 547 [RTAS_FNIDX__SYSTEM_REBOOT] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 548 .name = "system-reboot",
8252b88294d2a7 Nathan Lynch 2023-02-10 549 },
8252b88294d2a7 Nathan Lynch 2023-02-10 550 [RTAS_FNIDX__THAW_TIME_BASE] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 551 .name = "thaw-time-base",
8252b88294d2a7 Nathan Lynch 2023-02-10 552 },
8252b88294d2a7 Nathan Lynch 2023-02-10 553 [RTAS_FNIDX__WRITE_PCI_CONFIG] = {
8252b88294d2a7 Nathan Lynch 2023-02-10 554 .name = "write-pci-config",
8252b88294d2a7 Nathan Lynch 2023-02-10 555 },
8252b88294d2a7 Nathan Lynch 2023-02-10 556 };
8252b88294d2a7 Nathan Lynch 2023-02-10 557
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-08-13 19:32 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-13 19:32 [PATCH v2 2/9] powerpc/pseries: Define HVPIPE specific macros kernel test robot
-- strict thread matches above, loose matches on Subject: below --
2025-08-12 22:57 [PATCH v2 0/9] powerpc/pseries: Add hypervisor pipe (HVPIPE) suport Haren Myneni
2025-08-12 22:57 ` [PATCH v2 2/9] powerpc/pseries: Define HVPIPE specific macros Haren Myneni
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.