Lines Matching +full:psci +full:- +full:0
15 #include <asm/asm-offsets.h>
18 #include <asm/psci.h>
34 int nr_tests = 0, len, i; in check_setup()
37 for (i = 0; i < argc; ++i) { in check_setup()
40 if (len == -1) in check_setup()
43 argv[i][len] = '\0'; in check_setup()
46 if (strcmp(argv[i], "mem") == 0) { in check_setup()
48 phys_addr_t memsize = PHYS_END - PHYS_OFFSET; in check_setup()
56 } else if (strcmp(argv[i], "smp") == 0) { in check_setup()
74 phys_addr_t highest_end = 0; in check_pabt_init()
87 for (r = mem_regions; r->end; ++r) { in check_pabt_init()
88 if (r->flags & MR_F_IO) in check_pabt_init()
90 if (r->end > highest_end) in check_pabt_init()
91 highest_end = PAGE_ALIGN(r->end); in check_pabt_init()
98 mmu_clear_user(current_thread_info()->pgtable, vaddr); in check_pabt_init()
118 "mov r0, %0\n" \
119 "stmia r0, { r0-lr }\n" \
122 "mov r1, #-1\n" \
139 for (i = 0; i < ARRAY_SIZE(regs->uregs); ++i) { in check_regs()
140 if (regs->uregs[i] != expected_regs.uregs[i]) in check_regs()
157 test_exception("", "mcr p2, 0, r0, c0, c0", "", "r0"); in check_und()
166 u32 svc = *(u32 *)(regs->ARM_pc - 4) & 0xffffff; in svc_handler()
174 regs->ARM_lr = *(unsigned long *)(regs->ARM_sp + 4); in svc_handler()
213 regs->ARM_pc = regs->ARM_lr; in pabt_handler()
245 "mov x1, %0\n" \
249 "mov x1, %0\n" \
283 for (i = 0; i < ARRAY_SIZE(regs->regs); ++i) { in check_regs()
284 if (regs->regs[i] != expected_regs.regs[i]) in check_regs()
288 regs->pstate &= 0xf0000000 /* NZCV */ | 0x3c0 /* DAIF */ in check_regs()
291 return regs->sp == expected_regs.sp in check_regs()
292 && regs->pc == expected_regs.pc in check_regs()
293 && regs->pstate == expected_regs.pstate; in check_regs()
303 asm volatile("mrs %0, daif" : "=r" (daif) ::); in check_vector_prep()
311 regs->pc += 4; in unknown_handler()
330 u16 svc = esr & 0xffff; in svc_handler()
358 regs->pc = regs->regs[30]; in pabt_handler()
406 int ver = psci_invoke(PSCI_0_2_FN_PSCI_VERSION, 0, 0, 0); in psci_print()
407 report_info("PSCI version: %d.%d", PSCI_VERSION_MAJOR(ver), in psci_print()
409 report_info("PSCI method: %s", psci_invoke_fn == arm_smccc_hvc ? in psci_print()
434 if (strcmp(argv[1], "setup") == 0) { in main()
436 check_setup(argc-2, &argv[2]); in main()
438 } else if (strcmp(argv[1], "vectors-kernel") == 0) { in main()
442 } else if (strcmp(argv[1], "vectors-user") == 0) { in main()
447 } else if (strcmp(argv[1], "smp") == 0) { in main()