/linux/drivers/watchdog/ |
H A 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/arch/powerpc/platforms/pseries/ |
H A 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 */ 55 dev_dbg(&pdev->dev, "EEH: Setting up device\n"); in pseries_pcibios_bus_add_device() 57 if (pdev->is_virtfn) { in pseries_pcibios_bus_add_device() 58 pdn->device_id = pdev->device; in pseries_pcibios_bus_add_device() 59 pdn->vendor_id = pdev->vendor; in pseries_pcibios_bus_add_device() [all …]
|
H A 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 …]
|
H A 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 20 #include <asm/rtas.h> 23 #include <asm/fadump-internal.h> 25 #include "rtas-fadump.h" 33 fadump_conf->fadumphdr_addr = (fadump_conf->boot_mem_dest_addr + in rtas_fadump_update_config() 34 fadump_conf->boot_memory_size); in rtas_fadump_update_config() 48 fadump_conf->boot_memory_size = 0; in rtas_fadump_get_config() 49 fadump_conf->boot_mem_regs_cnt = 0; in rtas_fadump_get_config() [all …]
|
H A 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 49 #include <asm/rtas.h> 50 #include <asm/pci-bridge.h> 60 #include <asm/papr-sysparm.h> 61 #include <asm/ppc-pci.h> 70 #include <asm/isa-bridge.h> [all …]
|
H A D | rtas-fadump.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * Firmware-Assisted Dump support on POWERVM platform. 37 * in the dump memory structure. Presently, three sections are used for 39 * can be used for boot memory regions. 55 /* ibm,configure-kernel-dump header. */ 68 /* Maximum time allowed to prevent an automatic dump-reboot. */ 74 * registering future kernel dump with power firmware through rtas call. 76 * In version 1, the platform permits one section header, dump-disk path 88 * The firmware-assisted dump format. 90 * The register save area is an area in the partition's memory used to preserve [all …]
|
H A D | hotplug-cpu.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * arch/powerpc/kernel/rtas.c, and arch/powerpc/platforms/pseries/smp.c 17 #define pr_fmt(fmt) "pseries-hotplug-cpu: " fmt 28 #include <asm/rtas.h> 44 * Record the CPU ids used on each nodes. 45 * Protected by cpu_add_remove_lock. 88 systemcfg->processorCount--; in pseries_cpu_disable() 111 * the cpu-offline. Here we wait for long enough to allow the cpu in question 112 * to self-destroy so that the cpu-offline thread can send the CPU_DEAD 115 * OTOH, pseries_cpu_offline_self() is called by the @cpu when it wants to [all …]
|
H A D | reconfig.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * pSeries_reconfig.c - support for dynamic reconfiguration (including PCI 26 int err = -ENOMEM; in pSeries_reconfig_add_node() 32 np->full_name = kstrdup(kbasename(path), GFP_KERNEL); in pSeries_reconfig_add_node() 33 if (!np->full_name) in pSeries_reconfig_add_node() 36 np->properties = proplist; in pSeries_reconfig_add_node() 40 np->parent = pseries_of_derive_parent(path); in pSeries_reconfig_add_node() 41 if (IS_ERR(np->parent)) { in pSeries_reconfig_add_node() 42 err = PTR_ERR(np->parent); in pSeries_reconfig_add_node() 52 of_node_put(np->parent); in pSeries_reconfig_add_node() [all …]
|
H A D | iommu.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 10 * Dynamic DMA mapping support, pSeries-specific parts, both SMP and LPAR. 21 #include <linux/dma-mapping.h> 31 #include <asm/rtas.h> 33 #include <asm/pci-bridge.h> 37 #include <asm/ppc-pci.h> 66 INIT_LIST_HEAD_RCU(&tbl->it_group_list); in iommu_pseries_alloc_table() 67 kref_init(&tbl->it_kref); in iommu_pseries_alloc_table() 84 table_group->ops = &spapr_tce_table_group_ops; in iommu_pseries_alloc_group() 85 table_group->pgsizes = SZ_4K; in iommu_pseries_alloc_group() [all …]
|
/linux/drivers/tty/hvc/ |
H A 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 110 bool "RISC-V SBI console support" 114 This enables support for console output via RISC-V SBI calls, which 115 is normally used only during boot to output printk. This driver [all …]
|
/linux/arch/powerpc/mm/ |
H A D | numa.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 63 [0 ... MAX_NUMNODES - 1] = { [0 ... MAX_NUMNODES - 1] = -1 } 65 static int numa_id_index_table[MAX_NUMNODES] = { [0 ... MAX_NUMNODES - 1] = NUMA_NO_NODE }; 141 numa_cpu_lookup_table[cpu] = -1; in reset_numa_cpu_lookup_table() 175 int index = primary_domain_index - 1; in __associativity_to_nid() 188 * Returns nid in the range [0..nr_node_ids], or -1 if no useful NUMA 270 * or -1 if not found. 291 if (nid != -1) in of_node_to_nid() 314 int index = be32_to_cpu(distance_ref_points[i]) - 1; in __initialize_form1_numa_distance() 338 * Used to update distance information w.r.t newly added node. [all …]
|
/linux/drivers/gpu/drm/imagination/ |
H A D | pvr_rogue_fwif_client.h | 1 /* SPDX-License-Identifier: GPL-2.0-only OR MIT */ 15 * Page size used for Parameter Management. 27 * Minimum PB = Base Pages + (NUM_TE_PIPES-1)*16K + (NUM_VCE_PIPES-1)*64K + 30 * Maximum PB size must ensure that no PM address space can be fully used, 31 * because if the full address space was used it would wrap and corrupt itself. 40 * of 4GB minus the Minimum PB. For convenience we take the smaller power-of-2 46 * Flags supported by the geometry DM command i.e. &struct rogue_fwif_cmd_geom. 55 * Flags supported by the fragment DM command i.e. &struct rogue_fwif_cmd_frag. 74 * Flags supported by the compute DM command i.e. &struct rogue_fwif_cmd_compute. 82 * Flags supported by the transfer DM command i.e. &struct rogue_fwif_cmd_transfer. [all …]
|
/linux/arch/powerpc/include/asm/ |
H A 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> 49 #define get_slb_shadow() (get_paca()->slb_shadow_ptr) 58 * This structure is not directly accessed by firmware or the service 66 * read-only (after boot) fields in the first cacheline to 80 u16 lock_token; /* Constant 0x8000, used in locks */ 84 u16 lock_token; /* Constant 0x8000, used in locks */ [all …]
|
H A D | processor.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 30 /* Default SMT priority is set to 3. Use 11- 13bits to save priority. */ 46 * in favor of using the device-tree 47 * -- BenH. 50 /* PREP sub-platform types. Unused */ 56 /* CHRP sub-platform types. These are arbitrary */ 82 /* FP and VSX 0-31 register set */ 113 * The following will contain addresses used by debug applications 145 void *pgdir; /* root of page-table tree */ 147 unsigned long rtas_sp; /* stack pointer for when in RTAS */ [all …]
|
/linux/Documentation/devicetree/bindings/serial/ |
H A D | 8250.yaml | 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - devicetree@vger.kernel.org 13 - $ref: serial.yaml# 14 - $ref: /schemas/memory-controllers/mc-peripheral-props.yaml# 15 - if: 17 - required: 18 - aspeed,lpc-io-reg 19 - required: 20 - aspeed,lpc-interrupts [all …]
|
/linux/arch/powerpc/platforms/chrp/ |
H A 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) 40 #include <asm/pci-bridge.h> 49 #include <asm/rtas.h> 62 /* Used for doing CHRP event-scans */ 68 /* To be replaced by RTAS when available */ 82 "Asynchronous", "Reserved", "Flow-Through Synchronous", 86 "Disabled", "Write-Through", "Copy-Back", "Transparent Mode" 253 * Per default, input/output-device points to the keyboard/screen [all …]
|
/linux/drivers/pci/hotplug/ |
H A D | rpaphp_slot.c | 1 // SPDX-License-Identifier: GPL-2.0+ 19 #include <asm/rtas.h> 22 /* free up the memory used by a slot */ 25 of_node_put(slot->dn); in dealloc_slot_struct() 26 kfree(slot->name); in dealloc_slot_struct() 38 slot->name = kstrdup(drc_name, GFP_KERNEL); in alloc_slot_struct() 39 if (!slot->name) in alloc_slot_struct() 41 slot->dn = of_node_get(dn); in alloc_slot_struct() 42 slot->index = drc_index; in alloc_slot_struct() 43 slot->power_domain = power_domain; in alloc_slot_struct() [all …]
|
/linux/arch/powerpc/sysdev/xics/ |
H A 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 …]
|
H A D | icp-native.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 53 /* Handled an interrupt latched by KVM */ in icp_native_get_xirr() 58 return in_be32(&icp_native_regs[cpu]->xirr.word); in icp_native_get_xirr() 65 out_be32(&icp_native_regs[cpu]->xirr.word, value); in icp_native_set_xirr() 72 out_8(&icp_native_regs[cpu]->xirr.bytes[0], value); in icp_native_set_cppr() 77 out_8(&icp_native_regs[n_cpu]->qirr.bytes[0], value); in icp_native_set_qirr() 131 /* We don't have a linux mapping, so have rtas mask it. */ in icp_native_get_irq() 152 * Currently not used to send IPIs to another CPU in icp_native_cause_ipi_rm() 163 xics_phys = paca_ptrs[cpu]->kvm_hstate.xics_phys; in icp_native_cause_ipi_rm() 170 * Called when an interrupt is received on an off-line CPU to [all …]
|
/linux/arch/powerpc/kexec/ |
H A 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 35 #include <asm/crashdump-ppc64.h> 51 for (i = 0; i < image->nr_segments; i++) in machine_kexec_prepare() 52 if (image->segment[i].mem < __pa(_end)) in machine_kexec_prepare() 53 return -ETXTBSY; in machine_kexec_prepare() 57 basep = of_get_property(node, "linux,tce-base", NULL); in machine_kexec_prepare() 58 sizep = of_get_property(node, "linux,tce-size", NULL); in machine_kexec_prepare() 65 for (i = 0; i < image->nr_segments; i++) { in machine_kexec_prepare() [all …]
|
/linux/arch/powerpc/kernel/ |
H A D | legacy_serial.c | 1 // SPDX-License-Identifier: GPL-2.0 16 #include <asm/pci-bridge.h> 17 #include <asm/ppc-pci.h> 43 {.type = "tsi-bridge",}, 46 {.compatible = "simple-bus",}, 47 {.compatible = "wrs,epld-localbus",}, 52 static int legacy_serial_console = -1; 60 offset = offset << p->regshift; in tsi_serial_in() 62 tmp = readl(p->membase + (UART_IIR & ~3)); in tsi_serial_in() 65 return readb(p->membase + offset); in tsi_serial_in() [all …]
|
H A D | head_64.S | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 4 * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) 6 * Rewritten by Cort Dougan (cort@cs.nmt.edu) for PReP 8 * Adapted for Power Macintosh by Paul Mackerras. 9 * Low-level exception handlers and MMU support 10 * rewritten by Paul Mackerras. 13 * Adapted for 64bit PowerPC by Dave Engebretsen, Peter Bergner, and 16 * This file contains the entry point for the 64-bit kernel along 17 * with some early initialization code common to all 64-bit powerpc 28 #include <asm/head-64.h> [all …]
|
H A D | eeh.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright 2001-2012 IBM Corporation. 32 #include <asm/ppc-pci.h> 33 #include <asm/rtas.h> 34 #include <asm/pte-walk.h> 40 * usual PCI framework, except by check-stopping the CPU. Systems 41 * that are designed for high-availability/reliability cannot afford 43 * An EEH-capable bridge operates by converting a detected error 44 * into a "slot freeze", taking the PCI adapter off-line, making 47 * ignored. EEH slot isolation events can be triggered by parity [all …]
|
/linux/Documentation/arch/powerpc/ |
H A D | firmware-assisted-dump.rst | 2 Firmware-Assisted Dump 7 The goal of firmware-assisted dump is to enable the dump of 8 a crashed system, and to do so from a fully-reset system, and 12 - Firmware-Assisted Dump (FADump) infrastructure is intended to replace 14 - Fadump uses the same firmware interfaces and memory reservation model 16 - Unlike phyp dump, FADump exports the memory dump through /proc/vmcore 19 - Unlike phyp dump, userspace tool does not need to refer any sysfs 21 - Unlike phyp dump, FADump allows user to release all the memory reserved 23 - Once enabled through kernel boot parameter, FADump can be 28 Comparing with kdump or other strategies, firmware-assisted [all …]
|
/linux/drivers/tty/serial/8250/ |
H A D | 8250_of.c | 1 // SPDX-License-Identifier: GPL-2.0+ 53 return DIV_ROUND_CLOSEST(port->uartclk, 16 * baud + 2) - 2; in npcm_get_divisor() 58 port->get_divisor = npcm_get_divisor; in npcm_setup() 59 port->startup = npcm_startup; in npcm_setup() 72 struct uart_8250_port *port8250 = serial8250_get_port(info->line); in of_platform_serial_clk_notifier_cb() 76 serial8250_update_uartclk(&port8250->port, ndata->new_rate); in of_platform_serial_clk_notifier_cb() 91 struct device *dev = &ofdev->dev; in of_platform_serial_setup() 92 struct device_node *np = dev->of_node; in of_platform_serial_setup() 93 struct uart_port *port = &up->port; in of_platform_serial_setup() 99 pm_runtime_enable(&ofdev->dev); in of_platform_serial_setup() [all …]
|