Revision 5d87e4b7

b/hw/intc/xics.c
27 27

  
28 28
#include "hw/hw.h"
29 29
#include "trace.h"
30
#include "qemu/timer.h"
30 31
#include "hw/ppc/spapr.h"
31 32
#include "hw/ppc/xics.h"
32 33
#include "qemu/error-report.h"
......
679 680
    return H_SUCCESS;
680 681
}
681 682

  
683
static target_ulong h_xirr_x(PowerPCCPU *cpu, sPAPREnvironment *spapr,
684
                             target_ulong opcode, target_ulong *args)
685
{
686
    CPUState *cs = CPU(cpu);
687
    ICPState *ss = &spapr->icp->ss[cs->cpu_index];
688
    uint32_t xirr = icp_accept(ss);
689

  
690
    args[0] = xirr;
691
    args[1] = cpu_get_real_ticks();
692
    return H_SUCCESS;
693
}
694

  
682 695
static target_ulong h_eoi(PowerPCCPU *cpu, sPAPREnvironment *spapr,
683 696
                          target_ulong opcode, target_ulong *args)
684 697
{
......
853 866
    spapr_register_hypercall(H_CPPR, h_cppr);
854 867
    spapr_register_hypercall(H_IPI, h_ipi);
855 868
    spapr_register_hypercall(H_XIRR, h_xirr);
869
    spapr_register_hypercall(H_XIRR_X, h_xirr_x);
856 870
    spapr_register_hypercall(H_EOI, h_eoi);
857 871
    spapr_register_hypercall(H_IPOLL, h_ipoll);
858 872

  
b/include/hw/ppc/spapr.h
283 283
#define H_GET_EM_PARMS          0x2B8
284 284
#define H_SET_MPP               0x2D0
285 285
#define H_GET_MPP               0x2D4
286
#define H_XIRR_X                0x2FC
286 287
#define H_SET_MODE              0x31C
287 288
#define MAX_HCALL_OPCODE        H_SET_MODE
288 289

  

Also available in: Unified diff