KVM: PPC: Book3S HV: Allow passthrough of an emulated device to an L3 guest
[sfrench/cifs-2.6.git] / arch / powerpc / kvm / book3s_64_mmu_radix.c
index 5b3f266422d6e6943d0007008860cca17c826dd1..870ef9d5eee69c146dc3dedbfbe0a004fb594ca5 100644 (file)
@@ -37,11 +37,10 @@ unsigned long __kvmhv_copy_tofrom_guest_radix(int lpid, int pid,
        int old_pid, old_lpid;
        bool is_load = !!to;
 
-       /* Can't access quadrants 1 or 2 in non-HV mode */
-       if (kvmhv_on_pseries()) {
-               /* TODO h-call */
-               return -EPERM;
-       }
+       /* Can't access quadrants 1 or 2 in non-HV mode, call the HV to do it */
+       if (kvmhv_on_pseries())
+               return plpar_hcall_norets(H_COPY_TOFROM_GUEST, lpid, pid, eaddr,
+                                         __pa(to), __pa(from), n);
 
        quadrant = 1;
        if (!pid)