icp_ops
extern const struct icp_ops *icp_ops;
static const struct icp_ops icp_hv_ops = {
icp_ops = &icp_hv_ops;
static const struct icp_ops icp_native_ops = {
icp_ops = &icp_native_ops;
static const struct icp_ops icp_opal_ops = {
icp_ops = &icp_opal_ops;
ics_native_irq_chip.irq_eoi = icp_ops->eoi;
ics_opal_irq_chip.irq_eoi = icp_ops->eoi;
ics_rtas_irq_chip.irq_eoi = icp_ops->eoi;
icp_ops->set_priority(LOWEST_PRIORITY);
BUG_ON(request_irq(ipi, icp_ops->ipi_action,
smp_ops->cause_ipi = icp_ops->cause_ipi;
icp_ops->set_priority(0);
icp_ops->teardown_cpu();
icp_ops->flush_ipi();
icp_ops->set_priority(0);
icp_ops->set_priority(DEFAULT_PRIORITY);
const struct icp_ops *icp_ops;
ppc_md.get_irq = icp_ops->get_irq;
xics_ipi_chip.irq_eoi = icp_ops->eoi;