/Linux-v5.15/arch/powerpc/kernel/ |
D | rtas.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 4 * Procedures for interfacing to the RTAS on CHRP machines. 30 #include <asm/rtas.h> 47 /* This is here deliberately so it's only used in this file */ 54 srr_regs_clobbered(); /* rtas uses SRRs, invalidate */ in do_enter_rtas() 57 struct rtas_t rtas = { variable 60 EXPORT_SYMBOL(rtas); 71 * If non-NULL, this gets called when the kernel terminates. 77 /* RTAS use home made raw locking instead of spin_lock_irqsave 88 arch_spin_lock(&rtas.lock); in lock_rtas() [all …]
|
D | udbg.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 37 /* RTAS panel debug */ in udbg_early_init() 40 /* RTAS console debug */ in udbg_early_init() 79 /* udbg library, used by xmon et al */ 109 while (((c = *s++) != '\0') && (remain-- > 0)) { in udbg_write() 117 return n - remain; in udbg_write() 157 * Called by setup_system after ppc_md->probe and ppc_md->early_init. 158 * Call it again after setting udbg_putc in ppc_md->setup_arch. 168 if (strstr(boot_command_line, "udbg-immortal")) { in register_early_udbg_console()
|
D | prom_init.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright (C) 1996-2005 Paul Mackerras. 8 * Adapted for 64bit PowerPC by Dave Engebretsen and Peter Bergner. 32 #include <asm/rtas.h> 44 #include <asm/asm-prototypes.h> 45 #include <asm/ultravisor-api.h> 70 * On ppc32 we compile with -mrelocatable, which means that references 80 * ADDR is used in calls to call_prom. The 4th and following 81 * arguments to call_prom should be 32-bit values. 189 /* Platforms codes are now obsolete in the kernel. Now only used within this [all …]
|
D | setup-common.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Common boot and setup code for both 32-bit and 64-bit. 51 #include <asm/rtas.h> 77 /* The main machine-dep calls structure 84 int boot_cpuid = -1; 88 * These are used in binfmt_elf.c to put aux entries on the stack 95 * This still seems to be needed... -- paulus 123 int crashing_cpu = -1; 126 /* also used by kexec */ 170 /* Used by the G5 thermal driver */ [all …]
|
/Linux-v5.15/arch/powerpc/include/asm/ |
D | rtas.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 8 #include <asm/rtas-types.h> 13 * Definitions for talking to the RTAS on CHRP machines. 19 #define RTAS_UNKNOWN_SERVICE (-1) 20 #define RTAS_INSTANTIATE_MAX (1ULL<<30) /* Don't instantiate rtas at/above this value */ 25 /* RTAS return status codes */ 26 #define RTAS_BUSY -2 /* RTAS Busy */ 30 /* statuses specific to ibm,suspend-me */ 32 #define RTAS_NOT_SUSPENDABLE -9004 /* Partition not suspendable */ 33 #define RTAS_THREADS_ACTIVE -9005 /* Multiple processor threads active */ [all …]
|
D | paca.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 5 * There are some pointers defined that are utilized by PLIC. 21 #include <asm/exception-64e.h> 23 #include <asm/exception-64s.h> 34 #include <asm-generic/mmiowb_types.h> 50 #define get_lppaca() (get_paca()->lppaca_ptr) 53 #define get_slb_shadow() (get_paca()->slb_shadow_ptr) 61 * This structure is not directly accessed by firmware or the service 69 * read-only (after boot) fields in the first cacheline to 83 u16 lock_token; /* Constant 0x8000, used in locks */ [all …]
|
/Linux-v5.15/drivers/watchdog/ |
D | wdrtas.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 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"); 62 * wdrtas_set_interval - sets the watchdog interval 67 * wdrtas_set_interval sets the watchdog keepalive interval by calling the 68 * RTAS function set-indicator (surveillance). The unit of interval is 77 /* rtas uses minutes */ in wdrtas_set_interval() [all …]
|
/Linux-v5.15/arch/powerpc/platforms/pseries/ |
D | smp.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 36 #include <asm/rtas.h> 43 #include <asm/code-patching.h> 50 * The Primary thread of each non-boot processor was started from the OF client 51 * interface by prom_hold_cpus and is spinning on secondary_hold_spinloop. 59 int qcss_tok = rtas_token("query-cpu-stopped-state"); in smp_query_cpu_stopped() 63 "Firmware doesn't support query-cpu-stopped-state\n"); in smp_query_cpu_stopped() 70 "RTAS query-cpu-stopped-state failed: %i\n", status); in smp_query_cpu_stopped() 78 * smp_startup_cpu() - start the given cpu 81 * started from Open Firmware. For anything else, call RTAS with the [all …]
|
D | io_event_irq.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright 2010 2011 Mark Nelson and Tseng-Hui (Frank) Lin, IBM Corporation 16 #include <asm/rtas.h> 23 * IO event interrupt is a mechanism provided by RTAS to return 24 * information about hardware error and non-error events. Device 30 * by one until the IO event is claimed by one of the handlers. 32 * event is handled by the event handler or NOTIFY_DONE if the 41 * if (! is_my_event(p->scope, p->event_type)) return NOTIFY_DONE; 66 * @elog: RTAS error/event log. 75 /* We should only ever get called for io-event interrupts, but if in ioei_find_event() [all …]
|
D | eeh_pseries.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 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 33 #include <asm/ppc-pci.h> 34 #include <asm/rtas.h> 36 /* RTAS tokens */ 53 dev_dbg(&pdev->dev, "EEH: Setting up device\n"); in pseries_pcibios_bus_add_device() 55 if (pdev->is_virtfn) { in pseries_pcibios_bus_add_device() 56 pdn->device_id = pdev->device; in pseries_pcibios_bus_add_device() 57 pdn->vendor_id = pdev->vendor; in pseries_pcibios_bus_add_device() [all …]
|
D | msi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Copyright 2006-2007 Michael Ellerman, IBM Corp. 12 #include <asm/rtas.h> 14 #include <asm/ppc-pci.h> 29 /* RTAS Helpers */ 37 addr = rtas_config_addr(pdn->busno, pdn->devfn, 0); in rtas_change_msi() 38 buid = pdn->phb->buid; in rtas_change_msi() 56 * If the RTAS call succeeded, return the number of irqs allocated. in rtas_change_msi() 62 rc = -rc; in rtas_change_msi() 79 * disabling MSI with the explicit interface also disables MSI-X in rtas_disable_msi() [all …]
|
D | rtas-fadump.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Firmware-Assisted Dump support on POWERVM platform. 9 #define pr_fmt(fmt) "rtas fadump: " fmt 19 #include <asm/rtas.h> 21 #include <asm/fadump-internal.h> 23 #include "rtas-fadump.h" 31 fadump_conf->boot_mem_dest_addr = in rtas_fadump_update_config() 32 be64_to_cpu(fdm->rmr_region.destination_address); in rtas_fadump_update_config() 34 fadump_conf->fadumphdr_addr = (fadump_conf->boot_mem_dest_addr + in rtas_fadump_update_config() 35 fadump_conf->boot_memory_size); in rtas_fadump_update_config() [all …]
|
D | setup.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * 64-bit pSeries and RS/6000 setup code. 6 * Adapted from 'alpha' version by Gary Thomas 7 * Modified by Cort Dougan (cort@cs.nmt.edu) 8 * Modified by PPC64 Team, IBM Corp 47 #include <asm/rtas.h> 48 #include <asm/pci-bridge.h> 58 #include <asm/ppc-pci.h> 67 #include <asm/isa-bridge.h> 69 #include <asm/asm-const.h> [all …]
|
D | rtas-fadump.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * Firmware-Assisted Dump support on POWERVM platform. 43 /* ibm,configure-kernel-dump header. */ 56 /* Maximum time allowed to prevent an automatic dump-reboot. */ 62 * registering future kernel dump with power firmware through rtas call. 81 * The firmware-assisted dump format. 83 * The register save area is an area in the partition's memory used to preserve 86 * by register entries. Each list of registers for a CPU starts with "CPUSTRT" 106 while (be64_to_cpu(reg_entry->reg_id) != \ 112 #define RTAS_FADUMP_CPU_ID_MASK ((1UL << 32) - 1)
|
/Linux-v5.15/drivers/tty/hvc/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 8 It will automatically be selected if one of the back-end console drivers 38 bool "IBM RTAS Console support" 42 IBM Console device driver which makes use of RTAS 51 This driver provides a Hypervisor console (HVC) back-end to access 76 This is meant to be used during HW bring up or debugging when 87 driver. This console is used through a JTAG only on ARM. If you don't have 91 bool "RISC-V SBI console support" 95 This enables support for console output via RISC-V SBI calls, which 96 is normally used only during boot to output printk. [all …]
|
/Linux-v5.15/arch/powerpc/ |
D | Kconfig.debug | 1 # SPDX-License-Identifier: GPL-2.0 4 bool "Don't build arch/powerpc code with -Werror" 7 arch/powerpc with the -Werror flag (which means warnings 11 arch/powerpc code caused by a warning, and you don't feel 47 emulated by the in-kernel emulator. Counters for the various classes 50 system. Optionally (controlled by 51 powerpc/emulated_instructions/do_warn in debugfs), rate-limited 56 bool "Run self-tests of the code-patching code" 78 bool "Run self-tests of the feature-fixup code" 82 bool "Run self-tests of the MSI bitmap code" [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 17 # On Book3S 64, the default virtual address space for 64-bit processes 20 # between bottom-up and top-down allocations for applications that 23 default 29 if PPC_BOOK3S_64 && PPC_64K_PAGES # 29 = 45 (32T) - 16 (64K) 24 default 33 if PPC_BOOK3S_64 # 33 = 45 (32T) - 12 (4K) 26 # On all other 64-bit platforms (currently only Book3E), the virtual 29 default 32 if 64BIT # 32 = 44 (16T) - 12 (4K) 31 # For 32-bit, use the compat values, as they're the same. 36 default 14 if 64BIT && PPC_64K_PAGES # 14 = 30 (1GB) - 16 (64K) 37 default 18 if 64BIT # 18 = 30 (1GB) - 12 (4K) [all …]
|
/Linux-v5.15/arch/powerpc/platforms/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 37 bool "ePAPR para-virtualization support" 39 Enables ePAPR para-virtualization support for guests. 48 a hypervisor. This option is not user-selectable but should 49 be selected by all platforms that need it. 65 bool "Device-tree based CPU feature discovery & setup" 76 bool "RTAS based debug console" 108 The driver provides a way to wake up the system by MPIC 124 registers are used for inter-processor communication. 145 bool "Proc interface to RTAS" [all …]
|
/Linux-v5.15/arch/powerpc/mm/ |
D | numa.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 64 [0 ... MAX_NUMNODES - 1] = { [0 ... MAX_NUMNODES - 1] = -1 } 66 static int numa_id_index_table[MAX_NUMNODES] = { [0 ... MAX_NUMNODES - 1] = NUMA_NO_NODE }; 142 numa_cpu_lookup_table[cpu] = -1; in reset_numa_cpu_lookup_table() 176 int index = primary_domain_index - 1; in __associativity_to_nid() 189 * Returns nid in the range [0..nr_node_ids], or -1 if no useful NUMA 271 * or -1 if not found. 292 if (nid != -1) in of_node_to_nid() 315 int index = be32_to_cpu(distance_ref_points[i]) - 1; in __initialize_form1_numa_distance() 339 * Used to update distance information w.r.t newly added node. [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/serial/ |
D | 8250.yaml | 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - devicetree@vger.kernel.org 13 - $ref: serial.yaml# 14 - if: 16 - required: 17 - aspeed,lpc-io-reg 18 - required: 19 - aspeed,lpc-interrupts 20 - required: [all …]
|
/Linux-v5.15/drivers/cpuidle/ |
D | cpuidle-pseries.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * cpuidle-pseries - idle state cpuidle driver. 24 #include <asm/rtas.h> 78 * were soft-disabled in check_and_cede_processor() 92 * "ibm,get-systems-parameter" RTAS call with the token 98 * table with all the parameters to ibm,get-system-parameters. 115 * ----------------------------- 118 * ----------------------------- 121 * ----------------------------- 124 * | tb-ticks | | [all …]
|
/Linux-v5.15/arch/powerpc/platforms/chrp/ |
D | setup.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Adapted from 'alpha' version by Gary Thomas 5 * Modified by Cort Dougan (cort@cs.nmt.edu) 38 #include <asm/pci-bridge.h> 47 #include <asm/rtas.h> 60 /* Used for doing CHRP event-scans */ 66 /* To be replaced by RTAS when available */ 80 "Asynchronous", "Reserved", "Flow-Through Synchronous", 84 "Disabled", "Write-Through", "Copy-Back", "Transparent Mode" 251 * Per default, input/output-device points to the keyboard/screen [all …]
|
/Linux-v5.15/arch/powerpc/kexec/ |
D | core_64.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2004-2005, IBM Corp. 7 * Created by: Milton D Miller II 31 #include <asm/asm-prototypes.h> 49 for (i = 0; i < image->nr_segments; i++) in default_machine_kexec_prepare() 50 if (image->segment[i].mem < __pa(_end)) in default_machine_kexec_prepare() 51 return -ETXTBSY; in default_machine_kexec_prepare() 55 basep = of_get_property(node, "linux,tce-base", NULL); in default_machine_kexec_prepare() 56 sizep = of_get_property(node, "linux,tce-size", NULL); in default_machine_kexec_prepare() 63 for (i = 0; i < image->nr_segments; i++) { in default_machine_kexec_prepare() [all …]
|
/Linux-v5.15/drivers/pci/hotplug/ |
D | rpaphp_slot.c | 1 // SPDX-License-Identifier: GPL-2.0+ 18 #include <asm/rtas.h> 21 /* free up the memory used by a slot */ 24 of_node_put(slot->dn); in dealloc_slot_struct() 25 kfree(slot->name); in dealloc_slot_struct() 37 slot->name = kstrdup(drc_name, GFP_KERNEL); in alloc_slot_struct() 38 if (!slot->name) in alloc_slot_struct() 40 slot->dn = of_node_get(dn); in alloc_slot_struct() 41 slot->index = drc_index; in alloc_slot_struct() 42 slot->power_domain = power_domain; in alloc_slot_struct() [all …]
|
/Linux-v5.15/arch/powerpc/sysdev/xics/ |
D | xics-common.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 26 #include <asm/rtas.h> 60 ireg = of_get_property(np, "ibm,ppc-interrupt-gserver#s", &ilen); in xics_update_irq_servers() 69 * entry of "ibm,ppc-interrupt-gserver#s" property. Get the last in xics_update_irq_servers() 84 /* GIQ stuff, currently only supported on RTAS setups, will have 96 index = (1UL << xics_interrupt_server_size) - 1 - gserver; in xics_set_cpu_giq() 100 WARN(status < 0, "set-indicator(%d, %d, %u) returned %d\n", in xics_set_cpu_giq() 107 icp_ops->set_priority(LOWEST_PRIORITY); in xics_setup_cpu() 118 xics_ics->mask_unknown(xics_ics, vec); in xics_mask_unknown_vec() 134 BUG_ON(request_irq(ipi, icp_ops->ipi_action, in xics_request_ipi() [all …]
|