Rev 3343 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3343 | Rev 3665 | ||
|---|---|---|---|
| Line 49... | Line 49... | ||
| 49 | PCI_SABRE, |
49 | PCI_SABRE, |
| 50 | PCI_PSYCHO |
50 | PCI_PSYCHO |
| 51 | }; |
51 | }; |
| 52 | 52 | ||
| 53 | struct pci_operations { |
53 | struct pci_operations { |
| 54 | void (* enable_interrupt)(pci_t *pci, int inr); |
54 | void (* enable_interrupt)(pci_t *, int); |
| 55 | void (* clear_interrupt)(pci_t *pci, int inr); |
55 | void (* clear_interrupt)(pci_t *, int); |
| 56 | }; |
56 | }; |
| 57 | 57 | ||
| 58 | struct pci { |
58 | struct pci { |
| 59 | pci_model_t model; |
59 | pci_model_t model; |
| 60 | pci_operations_t *op; |
60 | pci_operations_t *op; |
| 61 | volatile uint64_t *reg; /**< Registers including interrupt registers. */ |
61 | volatile uint64_t *reg; /**< Registers including interrupt registers. */ |
| 62 | }; |
62 | }; |
| 63 | 63 | ||
| 64 | extern pci_t *pci_init(ofw_tree_node_t *node); |
64 | extern pci_t *pci_init(ofw_tree_node_t *); |
| 65 | extern void pci_enable_interrupt(pci_t *pci, int inr); |
65 | extern void pci_enable_interrupt(pci_t *, int); |
| 66 | extern void pci_clear_interrupt(pci_t *pci, int inr); |
66 | extern void pci_clear_interrupt(void *, int); |
| 67 | 67 | ||
| 68 | #endif |
68 | #endif |
| 69 | 69 | ||
| 70 | /** @} |
70 | /** @} |
| 71 | */ |
71 | */ |