diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/pci-epc.h | 43 |
1 files changed, 25 insertions, 18 deletions
diff --git a/include/linux/pci-epc.h b/include/linux/pci-epc.h index f7a04e1af112..e58e2de8936b 100644 --- a/include/linux/pci-epc.h +++ b/include/linux/pci-epc.h | |||
| @@ -39,17 +39,20 @@ enum pci_epc_irq_type { | |||
| 39 | * @owner: the module owner containing the ops | 39 | * @owner: the module owner containing the ops |
| 40 | */ | 40 | */ |
| 41 | struct pci_epc_ops { | 41 | struct pci_epc_ops { |
| 42 | int (*write_header)(struct pci_epc *pci_epc, | 42 | int (*write_header)(struct pci_epc *epc, u8 func_no, |
| 43 | struct pci_epf_header *hdr); | 43 | struct pci_epf_header *hdr); |
| 44 | int (*set_bar)(struct pci_epc *epc, enum pci_barno bar, | 44 | int (*set_bar)(struct pci_epc *epc, u8 func_no, |
| 45 | enum pci_barno bar, | ||
| 45 | dma_addr_t bar_phys, size_t size, int flags); | 46 | dma_addr_t bar_phys, size_t size, int flags); |
| 46 | void (*clear_bar)(struct pci_epc *epc, enum pci_barno bar); | 47 | void (*clear_bar)(struct pci_epc *epc, u8 func_no, |
| 47 | int (*map_addr)(struct pci_epc *epc, phys_addr_t addr, | 48 | enum pci_barno bar); |
| 48 | u64 pci_addr, size_t size); | 49 | int (*map_addr)(struct pci_epc *epc, u8 func_no, |
| 49 | void (*unmap_addr)(struct pci_epc *epc, phys_addr_t addr); | 50 | phys_addr_t addr, u64 pci_addr, size_t size); |
| 50 | int (*set_msi)(struct pci_epc *epc, u8 interrupts); | 51 | void (*unmap_addr)(struct pci_epc *epc, u8 func_no, |
| 51 | int (*get_msi)(struct pci_epc *epc); | 52 | phys_addr_t addr); |
| 52 | int (*raise_irq)(struct pci_epc *pci_epc, | 53 | int (*set_msi)(struct pci_epc *epc, u8 func_no, u8 interrupts); |
| 54 | int (*get_msi)(struct pci_epc *epc, u8 func_no); | ||
| 55 | int (*raise_irq)(struct pci_epc *epc, u8 func_no, | ||
| 53 | enum pci_epc_irq_type type, u8 interrupt_num); | 56 | enum pci_epc_irq_type type, u8 interrupt_num); |
| 54 | int (*start)(struct pci_epc *epc); | 57 | int (*start)(struct pci_epc *epc); |
| 55 | void (*stop)(struct pci_epc *epc); | 58 | void (*stop)(struct pci_epc *epc); |
| @@ -124,17 +127,21 @@ void pci_epc_destroy(struct pci_epc *epc); | |||
| 124 | int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf); | 127 | int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf); |
| 125 | void pci_epc_linkup(struct pci_epc *epc); | 128 | void pci_epc_linkup(struct pci_epc *epc); |
| 126 | void pci_epc_remove_epf(struct pci_epc *epc, struct pci_epf *epf); | 129 | void pci_epc_remove_epf(struct pci_epc *epc, struct pci_epf *epf); |
| 127 | int pci_epc_write_header(struct pci_epc *epc, struct pci_epf_header *hdr); | 130 | int pci_epc_write_header(struct pci_epc *epc, u8 func_no, |
| 128 | int pci_epc_set_bar(struct pci_epc *epc, enum pci_barno bar, | 131 | struct pci_epf_header *hdr); |
| 132 | int pci_epc_set_bar(struct pci_epc *epc, u8 func_no, | ||
| 133 | enum pci_barno bar, | ||
| 129 | dma_addr_t bar_phys, size_t size, int flags); | 134 | dma_addr_t bar_phys, size_t size, int flags); |
| 130 | void pci_epc_clear_bar(struct pci_epc *epc, int bar); | 135 | void pci_epc_clear_bar(struct pci_epc *epc, u8 func_no, int bar); |
| 131 | int pci_epc_map_addr(struct pci_epc *epc, phys_addr_t phys_addr, | 136 | int pci_epc_map_addr(struct pci_epc *epc, u8 func_no, |
| 137 | phys_addr_t phys_addr, | ||
| 132 | u64 pci_addr, size_t size); | 138 | u64 pci_addr, size_t size); |
| 133 | void pci_epc_unmap_addr(struct pci_epc *epc, phys_addr_t phys_addr); | 139 | void pci_epc_unmap_addr(struct pci_epc *epc, u8 func_no, |
| 134 | int pci_epc_set_msi(struct pci_epc *epc, u8 interrupts); | 140 | phys_addr_t phys_addr); |
| 135 | int pci_epc_get_msi(struct pci_epc *epc); | 141 | int pci_epc_set_msi(struct pci_epc *epc, u8 func_no, u8 interrupts); |
| 136 | int pci_epc_raise_irq(struct pci_epc *epc, enum pci_epc_irq_type type, | 142 | int pci_epc_get_msi(struct pci_epc *epc, u8 func_no); |
| 137 | u8 interrupt_num); | 143 | int pci_epc_raise_irq(struct pci_epc *epc, u8 func_no, |
| 144 | enum pci_epc_irq_type type, u8 interrupt_num); | ||
| 138 | int pci_epc_start(struct pci_epc *epc); | 145 | int pci_epc_start(struct pci_epc *epc); |
| 139 | void pci_epc_stop(struct pci_epc *epc); | 146 | void pci_epc_stop(struct pci_epc *epc); |
| 140 | struct pci_epc *pci_epc_get(const char *epc_name); | 147 | struct pci_epc *pci_epc_get(const char *epc_name); |
