| /kernel/linux/linux-5.10/arch/powerpc/kernel/ |
| D | rtas.c | 4 * Procedures for interfacing to the RTAS on CHRP machines. 29 #include <asm/rtas.h> 49 struct rtas_t rtas = { variable 52 EXPORT_SYMBOL(rtas); 69 /* RTAS use home made raw locking instead of spin_lock_irqsave 80 arch_spin_lock(&rtas.lock); in lock_rtas() 86 arch_spin_unlock(&rtas.lock); in unlock_rtas() 100 if (!rtas.base) in call_rtas_display_status() 104 rtas_call_unlocked(&rtas.args, 10, 1, 1, NULL, c); in call_rtas_display_status() 141 * hardcode rtas.base/entry etc. [all …]
|
| D | proc_powerpc.c | 13 #include <asm/rtas.h> 66 * Create the ppc64 and ppc64/rtas directories early. This allows us to 82 if (!of_find_node_by_path("/rtas")) in proc_ppc64_create() 85 if (!proc_mkdir("rtas", root)) in proc_ppc64_create() 88 if (!proc_symlink("rtas", NULL, "powerpc/rtas")) in proc_ppc64_create()
|
| D | rtasd.c | 24 #include <asm/rtas.h> 45 /* RTAS service tokens */ 58 * Since we use 32 bit RTAS, the physical address of this must be below 97 /* To see this info, grep RTAS /var/log/messages and each entry 102 * format of error logs returned from RTAS: 116 char * str = "RTAS event"; in printk_log_rtas() 124 * with RTAS and a changing number, so syslogd will in printk_log_rtas() 132 n = sprintf(buffer, "RTAS %d:", i/perline); in printk_log_rtas() 165 /* rtas fixed header */ in log_rtas_len() 188 * method for the type of error. Currently, only RTAS [all …]
|
| D | crash_dump.c | 20 #include <asm/rtas.h> 122 * The crashkernel region will almost always overlap the RTAS region, so 131 basep = of_get_property(rtas.dev, "linux,rtas-base", NULL); in crash_free_reserved_phys_range() 132 sizep = of_get_property(rtas.dev, "rtas-size", NULL); in crash_free_reserved_phys_range() 140 /* Does this page overlap with the RTAS region? */ in crash_free_reserved_phys_range()
|
| D | rtas_flash.c | 5 * /proc/powerpc/rtas/firmware_flash interface 9 * firmware image and flash it as it reboots (see rtas.c). 19 #include <asm/rtas.h> 29 /* General RTAS Status Codes */ 35 #define FLASH_AUTH -9002 /* RTAS Not Service Authority Partition */ 43 #define MANAGE_AUTH -9002 /* RTAS Not Service Authority Partition */ 44 #define MANAGE_ACTIVE_ERR -9001 /* RTAS Cannot Overwrite Active Img */ 46 #define MANAGE_PARAM_ERR -3 /* RTAS Parameter Error */ 47 #define MANAGE_HW_ERR -1 /* RTAS Hardware Error */ 50 #define VALIDATE_AUTH -9002 /* RTAS Not Service Authority Partition */ [all …]
|
| /kernel/linux/linux-6.6/arch/powerpc/kernel/ |
| D | rtas_entry.S | 9 * RTAS is called with MSR IR, DR, EE disabled, and LR in the return address. 11 * Note: r3 is an input parameter to rtas, so don't trash it... 19 LOAD_REG_ADDR(r4, rtas) 20 lis r6,1f@ha /* physical return address for rtas */ 55 * 32-bit rtas on 64-bit machines has the additional problem that RTAS may 63 /* Because RTAS is running in 32b mode, it clobbers the high order half 65 * RTAS might touch to the stack. (r0, r3-r12 are caller saved) 81 /* Temporary workaround to clear CR until RTAS can be modified to 91 * our original state after RTAS returns. 102 LOAD_REG_ADDR(r4, rtas) [all …]
|
| D | rtas.c | 4 * Procedures for interfacing to the RTAS on CHRP machines. 10 #define pr_fmt(fmt) "rtas: " fmt 41 #include <asm/rtas-work-area.h> 42 #include <asm/rtas.h> 61 * struct rtas_function - Descriptor for RTAS functions. 63 * @token: Value of @name if it exists under the /rtas node. 65 * @filter: If non-NULL, invoking this function via the rtas syscall is 317 * "ibm,reset-pe-dma-windows" (plural), but RTAS 416 .name = "rtas-last-error", 464 * Nearly all RTAS calls need to be serialized. All uses of the [all …]
|
| D | rtasd.c | 25 #include <asm/rtas.h> 45 /* RTAS service tokens */ 58 * Since we use 32 bit RTAS, the physical address of this must be below 97 /* To see this info, grep RTAS /var/log/messages and each entry 102 * format of error logs returned from RTAS: 116 char * str = "RTAS event"; in printk_log_rtas() 124 * with RTAS and a changing number, so syslogd will in printk_log_rtas() 132 n = sprintf(buffer, "RTAS %d:", i/perline); in printk_log_rtas() 165 /* rtas fixed header */ in log_rtas_len() 188 * method for the type of error. Currently, only RTAS [all …]
|
| D | proc_powerpc.c | 14 #include <asm/rtas.h> 66 * Create the ppc64 and ppc64/rtas directories early. This allows us to 82 if (!of_find_node_by_path("/rtas")) in proc_ppc64_create() 85 if (!proc_mkdir("rtas", root)) in proc_ppc64_create() 88 if (!proc_symlink("rtas", NULL, "powerpc/rtas")) in proc_ppc64_create()
|
| D | crash_dump.c | 20 #include <asm/rtas.h> 97 * The crashkernel region will almost always overlap the RTAS region, so 106 basep = of_get_property(rtas.dev, "linux,rtas-base", NULL); in crash_free_reserved_phys_range() 107 sizep = of_get_property(rtas.dev, "rtas-size", NULL); in crash_free_reserved_phys_range() 115 /* Does this page overlap with the RTAS region? */ in crash_free_reserved_phys_range()
|
| D | rtas_flash.c | 5 * /proc/powerpc/rtas/firmware_flash interface 9 * firmware image and flash it as it reboots (see rtas.c). 19 #include <asm/rtas.h> 29 /* General RTAS Status Codes */ 35 #define FLASH_AUTH -9002 /* RTAS Not Service Authority Partition */ 43 #define MANAGE_AUTH -9002 /* RTAS Not Service Authority Partition */ 44 #define MANAGE_ACTIVE_ERR -9001 /* RTAS Cannot Overwrite Active Img */ 46 #define MANAGE_PARAM_ERR -3 /* RTAS Parameter Error */ 47 #define MANAGE_HW_ERR -1 /* RTAS Hardware Error */ 50 #define VALIDATE_AUTH -9002 /* RTAS Not Service Authority Partition */ [all …]
|
| D | rtas-proc.c | 6 * RTAS (Runtime Abstraction Services) stuff 8 * to use the RTAS. 12 * location. Write Documentation on what the /proc/rtas/ entries 32 #include <asm/rtas.h> 236 rtas_node = of_find_node_by_name(NULL, "rtas"); in proc_rtas_init() 240 proc_create("powerpc/rtas/progress", 0644, NULL, in proc_rtas_init() 242 proc_create("powerpc/rtas/clock", 0644, NULL, in proc_rtas_init() 244 proc_create("powerpc/rtas/poweron", 0644, NULL, in proc_rtas_init() 246 proc_create_single("powerpc/rtas/sensors", 0444, NULL, in proc_rtas_init() 248 proc_create("powerpc/rtas/frequency", 0644, NULL, in proc_rtas_init() [all …]
|
| /kernel/linux/linux-5.10/arch/powerpc/include/asm/ |
| D | rtas.h | 8 #include <asm/rtas-types.h> 13 * Definitions for talking to the RTAS on CHRP machines. 20 #define RTAS_INSTANTIATE_MAX (1ULL<<30) /* Don't instantiate rtas at/above this value */ 25 /* RTAS return status codes */ 27 #define RTAS_BUSY -2 /* RTAS Busy */ 32 * In general to call RTAS use rtas_token("string") to lookup 33 * an RTAS token for the given string (e.g. "event-scan"). 42 * may be safely used for one-shot calls to RTAS. 46 /* RTAS event classes */ 53 /* RTAS event severity */ [all …]
|
| /kernel/linux/linux-6.6/arch/powerpc/include/asm/ |
| D | rtas.h | 8 #include <asm/rtas-types.h> 13 * Definitions for talking to the RTAS on CHRP machines. 105 * Opaque handle for client code to refer to RTAS functions. All valid 199 #define RTAS_INSTANTIATE_MAX (1ULL<<30) /* Don't instantiate rtas at/above this value */ 204 /* RTAS return status codes */ 206 #define RTAS_BUSY -2 /* RTAS Busy */ 217 /* RTAS event classes */ 224 /* RTAS event severity */ 232 /* RTAS event disposition */ 237 /* RTAS event initiator */ [all …]
|
| /kernel/linux/linux-5.10/drivers/watchdog/ |
| D | wdrtas.c | 4 * RTAS calls are available 8 * RTAS watchdog driver 11 * device driver to exploit watchdog RTAS functions 29 #include <asm/rtas.h> 36 MODULE_DESCRIPTION("RTAS watchdog driver"); 68 * RTAS function set-indicator (surveillance). The unit of interval is 77 /* rtas uses minutes */ in wdrtas_set_interval() 95 * @fallback_value: value (in seconds) to use, if the RTAS call fails 100 * as reported by the RTAS function ibm,get-system-parameter. The unit 123 /* rtas uses minutes */ in wdrtas_get_interval() [all …]
|
| /kernel/linux/linux-6.6/drivers/watchdog/ |
| D | wdrtas.c | 4 * RTAS calls are available 8 * RTAS watchdog driver 11 * device driver to exploit watchdog RTAS functions 29 #include <asm/rtas.h> 36 MODULE_DESCRIPTION("RTAS watchdog driver"); 68 * RTAS function set-indicator (surveillance). The unit of interval is 77 /* rtas uses minutes */ in wdrtas_set_interval() 95 * @fallback_value: value (in seconds) to use, if the RTAS call fails 100 * as reported by the RTAS function ibm,get-system-parameter. The unit 123 /* rtas uses minutes */ in wdrtas_get_interval() [all …]
|
| /kernel/linux/linux-6.6/drivers/pci/hotplug/ |
| D | rpaphp_pci.c | 16 #include <asm/rtas.h> 23 * RTAS call get-sensor-state(DR_ENTITY_SENSE) return values as per PAPR: 27 * -3: Invalid sensor. RTAS Parameter Error. 29 * -9000: Need DR entity to be powered up and unisolated before RTAS call 30 * -9001: Need DR entity to be powered up, but not unisolated, before RTAS call 59 * On certain PHB failures, the RTAS call rtas_call(get-sensor-state) returns 60 * extended busy error (9902) until PHB is recovered by pHyp. The RTAS call 61 * interface rtas_get_sensor() loops over the RTAS call on extended delay 67 * recovery state and return -EBUSY error based on RTAS return status. This
|
| /kernel/linux/linux-5.10/arch/powerpc/platforms/pseries/ |
| D | ras.c | 15 #include <asm/rtas.h> 41 /* RTAS pseries MCE errorlog section. */ 75 /* RTAS pseries MCE error types */ 84 /* RTAS pseries MCE error sub types */ 186 " UPS/battery. Check RTAS error log for details\n"); in handle_system_shutdown() 191 " RTAS error log for details\n"); in handle_system_shutdown() 196 pr_emerg("High ambient temperature detected. Check RTAS" in handle_system_shutdown() 247 pr_info("Non-critical cooling issue detected. Check RTAS error" in rtas_parse_epow_errlog() 252 pr_info("Non-critical power issue detected. Check RTAS error" in rtas_parse_epow_errlog() 261 pr_emerg("Critical power/cooling issue detected. Check RTAS" in rtas_parse_epow_errlog() [all …]
|
| D | scanlog.c | 27 #include <asm/rtas.h> 39 static unsigned int ibm_scan_log_dump; /* RTAS token */ 54 /* This is the min supported by this RTAS call. Rather in scanlog_read() 99 "from rtas: %d\n", status); in scanlog_read() 125 pr_debug("scanlog: rtas returns %d\n", status); in scanlog_write() 177 ent = proc_create("powerpc/rtas/scan-log-dump", 0400, NULL, in scanlog_init() 189 remove_proc_entry("powerpc/rtas/scan-log-dump", NULL); in scanlog_cleanup()
|
| D | eeh_pseries.c | 4 * Actually, the pseries platform is built based on RTAS heavily. That means the 5 * pseries platform dependent EEH operations will be built on RTAS calls. The functions 34 #include <asm/rtas.h> 36 /* RTAS tokens */ 90 * The EEH RTAS calls use a tuple consisting of: (buid_hi, buid_lo, 145 * I haven't found *any* systems that don't have that RTAS call in pseries_eeh_get_pe_config_addr() 164 /* Reset PE through RTAS call */ in pseries_eeh_phb_reset() 212 * If RTAS returns a delay value that's above 100ms, cut it in pseries_eeh_phb_configure_bridge() 238 * Buffer for reporting slot-error-detail rtas calls. Its here 240 * RMO where RTAS can access it. [all …]
|
| /kernel/linux/linux-6.6/arch/powerpc/platforms/pseries/ |
| D | rtas-work-area.c | 3 #define pr_fmt(fmt) "rtas-work-area: " fmt 17 #include <asm/rtas-work-area.h> 18 #include <asm/rtas.h> 34 * PAPR+ 7.3.20 ibm,get-vpd RTAS Call 128 * reliably reserve an arena that satisfies RTAS addressing 130 * immmediately after RTAS instantiation. Then we have to wait until 151 * All RTAS functions that consume work areas are OK with in rtas_work_area_allocator_init() 186 * rtas_work_area_reserve_arena() - Reserve memory suitable for RTAS work areas.
|
| D | ras.c | 15 #include <asm/rtas.h> 36 /* RTAS pseries MCE errorlog section. */ 76 /* RTAS pseries MCE error types */ 86 /* RTAS pseries MCE error sub types */ 194 " UPS/battery. Check RTAS error log for details\n"); in handle_system_shutdown() 199 " RTAS error log for details\n"); in handle_system_shutdown() 204 pr_emerg("High ambient temperature detected. Check RTAS" in handle_system_shutdown() 255 pr_info("Non-critical cooling issue detected. Check RTAS error" in rtas_parse_epow_errlog() 260 pr_info("Non-critical power issue detected. Check RTAS error" in rtas_parse_epow_errlog() 269 pr_emerg("Critical power/cooling issue detected. Check RTAS" in rtas_parse_epow_errlog() [all …]
|
| D | eeh_pseries.c | 4 * Actually, the pseries platform is built based on RTAS heavily. That means the 5 * pseries platform dependent EEH operations will be built on RTAS calls. The functions 34 #include <asm/rtas.h> 36 /* RTAS tokens */ 92 * The EEH RTAS calls use a tuple consisting of: (buid_hi, buid_lo, 147 * I haven't found *any* systems that don't have that RTAS call in pseries_eeh_get_pe_config_addr() 166 /* Reset PE through RTAS call */ in pseries_eeh_phb_reset() 214 * If RTAS returns a delay value that's above 100ms, cut it in pseries_eeh_phb_configure_bridge() 240 * Buffer for reporting slot-error-detail rtas calls. Its here 242 * RMO where RTAS can access it. [all …]
|
| /kernel/linux/linux-5.10/arch/powerpc/platforms/chrp/ |
| D | pci.c | 21 #include <asm/rtas.h> 95 * Access functions for PCI config space using RTAS calls. 193 struct device_node *rtas; in setup_peg2() local 195 rtas = of_find_node_by_name (root, "rtas"); in setup_peg2() 196 if (rtas) { in setup_peg2() 198 of_node_put(rtas); in setup_peg2() 200 printk ("RTAS supporting Pegasos OF not found, please upgrade" in setup_peg2() 301 printk("No methods for %pOF (model %s), using RTAS\n", in chrp_find_bridges()
|
| /kernel/linux/linux-6.6/arch/powerpc/platforms/chrp/ |
| D | pci.c | 21 #include <asm/rtas.h> 95 * Access functions for PCI config space using RTAS calls. 192 struct device_node *rtas; in setup_peg2() local 194 rtas = of_find_node_by_name (root, "rtas"); in setup_peg2() 195 if (rtas) { in setup_peg2() 197 of_node_put(rtas); in setup_peg2() 199 printk ("RTAS supporting Pegasos OF not found, please upgrade" in setup_peg2() 300 printk("No methods for %pOF (model %s), using RTAS\n", in chrp_find_bridges()
|