Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
4300 | trochtova | 1 | /* |
2 | * The PCI Library -- Internal Stuff |
||
3 | * |
||
4 | * Copyright (c) 1997--2004 Martin Mares <mj@ucw.cz> |
||
5 | * |
||
6 | * May 8, 2006 - Modified and ported to HelenOS by Jakub Jermar. |
||
7 | * |
||
8 | * Can be freely distributed and used under the terms of the GNU GPL. |
||
9 | */ |
||
10 | |||
11 | #include "pci.h" |
||
12 | #include "sysdep.h" |
||
13 | |||
14 | struct pci_methods { |
||
15 | char *name; |
||
16 | void (*config) (struct pci_access *); |
||
17 | int (*detect) (struct pci_access *); |
||
18 | void (*init) (struct pci_access *); |
||
19 | void (*cleanup) (struct pci_access *); |
||
20 | void (*scan) (struct pci_access *); |
||
21 | int (*fill_info) (struct pci_dev *, int flags); |
||
22 | int (*read) (struct pci_dev *, int pos, byte * buf, int len); |
||
23 | int (*write) (struct pci_dev *, int pos, byte * buf, int len); |
||
24 | void (*init_dev) (struct pci_dev *); |
||
25 | void (*cleanup_dev) (struct pci_dev *); |
||
26 | }; |
||
27 | |||
28 | void pci_generic_scan_bus(struct pci_access *, byte * busmap, int bus); |
||
29 | void pci_generic_scan(struct pci_access *); |
||
30 | int pci_generic_fill_info(struct pci_dev *, int flags); |
||
31 | int pci_generic_block_read(struct pci_dev *, int pos, byte * buf, int len); |
||
32 | int pci_generic_block_write(struct pci_dev *, int pos, byte * buf, |
||
33 | int len); |
||
34 | |||
35 | void *pci_malloc(struct pci_access *, int); |
||
36 | void pci_mfree(void *); |
||
37 | |||
38 | struct pci_dev *pci_alloc_dev(struct pci_access *); |
||
39 | int pci_link_dev(struct pci_access *, struct pci_dev *); |
||
40 | |||
41 | extern struct pci_methods pm_intel_conf1, pm_intel_conf2, pm_us2; |