]> rtime.felk.cvut.cz Git - jailhouse.git/commitdiff
core: Prefix arch-specific PCI functions properly
authorJan Kiszka <jan.kiszka@siemens.com>
Tue, 23 Sep 2014 16:30:39 +0000 (18:30 +0200)
committerJan Kiszka <jan.kiszka@siemens.com>
Thu, 25 Sep 2014 13:47:23 +0000 (15:47 +0200)
Add the "arch_"-prefix to pci_suppress_msi, pci_update_msi and
pci_update_msix_vector. This clearly signals that those functions have
to be implemented by the architecture support.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
hypervisor/arch/x86/pci.c
hypervisor/include/jailhouse/pci.h
hypervisor/pci.c

index 2626026e8b93bc9fce09eb7672ba1e8478cf9ea0..599b992dd3b1aef3e59918f75e552a82ddd175d1 100644 (file)
@@ -282,8 +282,8 @@ pci_translate_msi_vector(struct pci_device *device, unsigned int vector,
        return irq_msg;
 }
 
-void pci_suppress_msi(struct pci_device *device,
-                     const struct jailhouse_pci_capability *cap)
+void arch_pci_suppress_msi(struct pci_device *device,
+                          const struct jailhouse_pci_capability *cap)
 {
        unsigned int n, vectors = pci_enabled_msi_vectors(device);
        const struct jailhouse_pci_device *info = device->info;
@@ -329,8 +329,8 @@ static u32 pci_get_x86_msi_remap_address(unsigned int index)
        return (u32)msi.raw.address;
 }
 
-int pci_update_msi(struct pci_device *device,
-                  const struct jailhouse_pci_capability *cap)
+int arch_pci_update_msi(struct pci_device *device,
+                       const struct jailhouse_pci_capability *cap)
 {
        unsigned int n, vectors = pci_enabled_msi_vectors(device);
        union x86_msi_vector msi = pci_get_x86_msi_vector(device);
@@ -369,7 +369,7 @@ int pci_update_msi(struct pci_device *device,
        return 0;
 }
 
-int pci_update_msix_vector(struct pci_device *device, unsigned int index)
+int arch_pci_update_msix_vector(struct pci_device *device, unsigned int index)
 {
        union x86_msi_vector msi = {
                .raw.address = device->msix_vectors[index].field.address,
index 22d64b79f1e956ff1afdbadd0a317e952e489268..2c1fe0d8cf5d06a60fce1e4eb2153708c10d60d2 100644 (file)
@@ -99,12 +99,6 @@ void pci_config_commit(struct cell *cell_added_removed);
 
 unsigned int pci_enabled_msi_vectors(struct pci_device *device);
 
-void pci_suppress_msi(struct pci_device *device,
-                     const struct jailhouse_pci_capability *cap);
-int pci_update_msi(struct pci_device *device,
-                  const struct jailhouse_pci_capability *cap);
-int pci_update_msix_vector(struct pci_device *device, unsigned int index);
-
 void pci_prepare_handover(void);
 void pci_shutdown(void);
 
@@ -114,4 +108,10 @@ void arch_pci_write_config(u16 bdf, u16 address, u32 value, unsigned int size);
 int arch_pci_add_device(struct cell *cell, struct pci_device *device);
 void arch_pci_remove_device(struct pci_device *device);
 
+void arch_pci_suppress_msi(struct pci_device *device,
+                          const struct jailhouse_pci_capability *cap);
+int arch_pci_update_msi(struct pci_device *device,
+                       const struct jailhouse_pci_capability *cap);
+int arch_pci_update_msix_vector(struct pci_device *device, unsigned int index);
+
 #endif /* !_JAILHOUSE_PCI_H */
index b7b458b04c450d314530ae4f2bb73fed86f1e24e..0981f627373c532de103b5f74352ed05152be93b 100644 (file)
@@ -201,7 +201,7 @@ static int pci_update_msix(struct pci_device *device,
        int result;
 
        for (n = 0; n < device->info->num_msix_vectors; n++) {
-               result = pci_update_msix_vector(device, n);
+               result = arch_pci_update_msix_vector(device, n);
                if (result < 0)
                        return result;
        }
@@ -260,7 +260,7 @@ enum pci_access pci_cfg_write_moderate(struct pci_device *device, u16 address,
                device->msi_registers.raw[cap_offs / 4] &= ~mask;
                device->msi_registers.raw[cap_offs / 4] |= value;
 
-               if (pci_update_msi(device, cap) < 0)
+               if (arch_pci_update_msi(device, cap) < 0)
                        return PCI_ACCESS_REJECT;
 
                /*
@@ -349,7 +349,7 @@ found:
                                     *value);
                } else {
                        device->msix_vectors[index].raw[dword] = *value;
-                       if (pci_update_msix_vector(device, index) < 0)
+                       if (arch_pci_update_msix_vector(device, index) < 0)
                                goto invalid_access;
                }
        } else {
@@ -497,7 +497,7 @@ void pci_prepare_handover(void)
                if (device->cell)
                        for_each_pci_cap(cap, device, n)
                                if (cap->id == PCI_CAP_MSI)
-                                       pci_suppress_msi(device, cap);
+                                       arch_pci_suppress_msi(device, cap);
                                else if (cap->id == PCI_CAP_MSIX)
                                        pci_suppress_msix(device, cap, true);
        }
@@ -679,7 +679,7 @@ void pci_config_commit(struct cell *cell_added_removed)
                if (device->cell)
                        for_each_pci_cap(cap, device, n) {
                                if (cap->id == PCI_CAP_MSI) {
-                                       err = pci_update_msi(device, cap);
+                                       err = arch_pci_update_msi(device, cap);
                                } else if (cap->id == PCI_CAP_MSIX) {
                                        err = pci_update_msix(device, cap);
                                        pci_suppress_msix(device, cap, false);