Lines Matching +full:used +full:- +full:by +full:- +full:rtas

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 */
224 unsigned long cpu_id = (unsigned long)v - 1; in show_cpuinfo()
240 if (cur_cpu_spec->pvr_mask && cur_cpu_spec->cpu_name) in show_cpuinfo()
241 seq_puts(m, cur_cpu_spec->cpu_name); in show_cpuinfo()
260 seq_printf(m, "temperature \t: %u-%u C (uncalibrated)\n", in show_cpuinfo()
297 default: /* e500/book-e */ in show_cpuinfo()
305 maj = ((pvr >> 8) & 0xFF) - 1; in show_cpuinfo()
308 case 0x004e: /* POWER9 bits 12-15 give chip type */ in show_cpuinfo()
341 *pos = cpumask_next(*pos - 1, cpu_online_mask); in c_start()
367 DBG(" -> check_for_initrd() initrd_start=0x%lx initrd_end=0x%lx\n", in check_for_initrd()
382 DBG(" <- check_for_initrd()\n"); in check_for_initrd()
421 * setup_cpu_maps - initialize the following cpu maps:
459 intserv = of_get_property(dn, "ibm,ppc-interrupt-server#s", in smp_setup_cpu_maps()
462 DBG(" ibm,ppc-interrupt-server#s -> %d threads\n", in smp_setup_cpu_maps()
465 DBG(" no ibm,ppc-interrupt-server#s -> 1 thread\n"); in smp_setup_cpu_maps()
480 DBG(" thread %d -> cpu %d (hard id %d)\n", in smp_setup_cpu_maps()
486 "enable-method", "spin-table"); in smp_setup_cpu_maps()
512 (dn = of_find_node_by_path("/rtas"))) { in smp_setup_cpu_maps()
519 ireg = of_get_property(dn, "ibm,lrdr-capacity", NULL); in smp_setup_cpu_maps()
545 vdso_data->processorCount = num_present_cpus(); in smp_setup_cpu_maps()
573 return -ENODEV; in add_pcspkr()
575 pd = platform_device_alloc("pcspkr", -1); in add_pcspkr()
577 return -ENOMEM; in add_pcspkr()
614 DBG(" %s ...", machine_id->name); in probe_machine()
635 int ret = -ENODEV; in check_legacy_ioport()
696 * If firmware-assisted dump has been registered then trigger in ppc_panic_event()
697 * firmware-assisted dump and let firmware handle everything else. in ppc_panic_event()
740 * For platforms that have configurable cache-coherency. This function
742 * left by the firmware, as indicated in the device tree. Since a mismatch
756 prop = of_get_property(np, "coherency-off", NULL); in check_cache_coherency()
782 pr_info("-----------------------------------------------------\n"); in print_system_info()
789 pr_info("cpu_features = 0x%016lx\n", cur_cpu_spec->cpu_features); in print_system_info()
795 cur_cpu_spec->cpu_user_features, in print_system_info()
796 cur_cpu_spec->cpu_user_features2); in print_system_info()
797 pr_info("mmu_features = 0x%08x\n", cur_cpu_spec->mmu_features); in print_system_info()
813 pr_info("-----------------------------------------------------\n"); in print_system_info()
834 * Called into from start_kernel this initializes memblock, which is used
843 /* Set a half-reasonable default so udelay does something sensible */ in setup_arch()
846 /* Unflatten the device-tree passed by prom_init or kexec */ in setup_arch()
850 * Initialize cache line/block info from device-tree (on ppc64) or in setup_arch()
855 /* Initialize RTAS if available. */ in setup_arch()
858 /* Check if we have an initrd provided via the device-tree. */ in setup_arch()
864 /* Setup panic notifier if requested by the platform. */ in setup_arch()
868 * Configure ppc_md.power_save (ppc32 only, 64-bit machines do in setup_arch()
879 /* Setup the various CPU maps based on the device-tree. */ in setup_arch()
893 * we can map physical -> logical CPU ids. in setup_arch()
895 * Freescale Book3e parts spin in a loop provided by firmware, in setup_arch()
901 /* On BookE, setup per-core TLB data structures. */ in setup_arch()
908 /* Reserve large chunks of memory for use by CMA for KVM. */ in setup_arch()
911 /* Reserve large chunks of memory for us by CMA for hugetlb */ in setup_arch()
941 /* Interrupt code needs to be 64K-aligned. */ in setup_arch()
943 panic("Kernelbase not 64K-aligned (0x%lx)!\n", in setup_arch()