Lines Matching +full:bat +full:- +full:present
1 /*-
31 /*-
109 #include <machine/bat.h>
139 int hw_direct_map = -1;
173 /* Default MSR values set in the AIM/Book-E early startup code */
188 * Initialise the decrementer-based clock. in cpu_startup()
206 virtual_end - virtual_avail, in cpu_startup()
207 (virtual_end - virtual_avail) / 1048576); in cpu_startup()
218 phys_avail[indx + 1] - phys_avail[indx]; in cpu_startup()
221 printf("0x%016jx - 0x%016jx, %ju bytes (%ju pages)\n", in cpu_startup()
223 printf("0x%09jx - 0x%09jx, %ju bytes (%ju pages)\n", in cpu_startup()
226 (uintmax_t)phys_avail[indx + 1] - 1, in cpu_startup()
291 bzero(__sbss_start, __sbss_end - __sbss_start); in powerpc_init()
292 bzero(__bss_start, _end - __bss_start); in powerpc_init()
303 * Book-E started there, and AIM has done an rfi and restarted in powerpc_init()
311 * Parse metadata if present and fetch parameters. Must be done in powerpc_init()
330 md_offset = VM_MIN_KERNEL_ADDRESS - kernload; in powerpc_init()
368 * Self-loading kernel, we have to fake up metadata. in powerpc_init()
437 __syncicache((caddr_t)startkernel, endkernel - startkernel); in powerpc_init()
447 * Set up per-cpu data for the BSP now that the platform can tell in powerpc_init()
455 pc->pc_curthread = &thread0; in powerpc_init()
457 pc->pc_cpuid = bsp.cr_cpuid; in powerpc_init()
458 pc->pc_hwref = bsp.cr_hwref; in powerpc_init()
491 ((thread0.td_kstack + thread0.td_kstack_pages * PAGE_SIZE - in powerpc_init()
494 pc->pc_curpcb = thread0.td_pcb; in powerpc_init()
505 return (((uintptr_t)thread0.td_pcb - in powerpc_init()
506 (sizeof(struct callframe) - 3*sizeof(register_t))) & ~15UL); in powerpc_init()
543 if (!OF_hasprop(chosen, "linux,initrd-start") || in load_external_symtab()
544 !OF_hasprop(chosen, "linux,initrd-end")) in load_external_symtab()
547 size = OF_getencprop(chosen, "linux,initrd-start", cell, sizeof(cell)); in load_external_symtab()
555 size = OF_getencprop(chosen, "linux,initrd-end", cell, sizeof(cell)); in load_external_symtab()
563 if (!(end - start > 0)) in load_external_symtab()
583 kernelimg = (u_char *)pmap_early_io_map(start, (end - start)); in load_external_symtab()
586 shdr = (Elf_Shdr *)(kernelimg + ehdr->e_shoff); in load_external_symtab()
594 for (i = 0; i < ehdr->e_shnum; i++) { in load_external_symtab()
624 ksymtab_relbase = (__startkernel - KERNBASE); in load_external_symtab()
628 pmap_early_io_unmap(start, (end - start)); in load_external_symtab()
657 /* Padding -- Fields start on u_long boundaries */ in fake_preload_metadata()
670 (vm_offset_t)(__endkernel) - (vm_offset_t)(__startkernel); in fake_preload_metadata()
688 * Flush the D-cache for non-DMA I/O so that the I-cache can
702 off = addr & (cacheline_size - 1); in cpu_flush_dcache()
703 addr -= off; in cpu_flush_dcache()
710 len -= cacheline_size; in cpu_flush_dcache()
719 tf = td->td_frame; in ptrace_set_pc()
720 tf->srr0 = (register_t)addr; in ptrace_set_pc()
732 if (td->td_md.md_spinlock_count == 0) { in spinlock_enter()
735 td->td_md.md_spinlock_count = 1; in spinlock_enter()
736 td->td_md.md_saved_msr = msr; in spinlock_enter()
739 td->td_md.md_spinlock_count++; in spinlock_enter()
749 msr = td->td_md.md_saved_msr; in spinlock_exit()
750 td->td_md.md_spinlock_count--; in spinlock_exit()
751 if (td->td_md.md_spinlock_count == 0) { in spinlock_exit()
802 tf = have_addr ? (struct trapframe *)addr : curthread->td_frame; in DB_SHOW_COMMAND()
809 for (i = 0; i < nitems(tf->fixreg); i++) { in DB_SHOW_COMMAND()
810 reg = tf->fixreg[i]; in DB_SHOW_COMMAND()
813 reg = tf->lr; in DB_SHOW_COMMAND()
815 reg = tf->cr; in DB_SHOW_COMMAND()
817 reg = tf->xer; in DB_SHOW_COMMAND()
819 reg = tf->ctr; in DB_SHOW_COMMAND()
821 reg = tf->srr0; in DB_SHOW_COMMAND()
823 reg = tf->srr1; in DB_SHOW_COMMAND()
825 reg = tf->exc; in DB_SHOW_COMMAND()
827 reg = tf->dar; in DB_SHOW_COMMAND()
830 reg = tf->cpu.aim.dsisr; in DB_SHOW_COMMAND()
833 reg = tf->cpu.booke.esr; in DB_SHOW_COMMAND()
835 reg = tf->cpu.booke.dbcr0; in DB_SHOW_COMMAND()
841 /* __stack_chk_fail_local() is called in secure-plt (32-bit). */