Subversion Repositories HelenOS

Rev

Rev 3022 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3022 Rev 4055
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
 */