Lines Matching +full:ip +full:- +full:core
1 // SPDX-License-Identifier: GPL-2.0-only
25 {.compatible = "brcm,kona-smc"},
26 {.compatible = "bcm,kona-smc"}, /* deprecated name */
40 return -ENODEV; in bcm_kona_smc_init()
45 return -EINVAL; in bcm_kona_smc_init()
49 return -ENOMEM; in bcm_kona_smc_init()
60 * Only core 0 can run the secure monitor code. If an "smc" request
61 * is initiated on a different core it must be redirected to core 0
69 * Parameters to the "smc" request are passed in r4-r6 as follows:
89 register u32 ip asm("ip"); /* Also called r12 */ in bcm_kona_do_smc()
101 __asmeq("%0", "ip") in bcm_kona_do_smc()
108 : "=r" (ip), "=r" (r0) in bcm_kona_do_smc()
112 BUG_ON(ip != SEC_EXIT_NORMAL); in bcm_kona_do_smc()
117 /* __bcm_kona_smc() should only run on CPU 0, with pre-emption disabled */
127 writel_relaxed(data->arg0, args++); in __bcm_kona_smc()
128 writel_relaxed(data->arg1, args++); in __bcm_kona_smc()
129 writel_relaxed(data->arg2, args++); in __bcm_kona_smc()
130 writel(data->arg3, args); in __bcm_kona_smc()
136 data->result = bcm_kona_do_smc(data->service_id, bcm_smc_buffer_phys); in __bcm_kona_smc()
153 * infrastructure to forward all secure monitor calls to Core 0. in bcm_kona_smc()