Rev 2479 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1301 | jermar | 1 | /* |
2 | * The PCI Library -- Internal Stuff |
||
3 | * |
||
4 | * Copyright (c) 1997--2004 Martin Mares <mj@ucw.cz> |
||
5 | * |
||
1324 | jermar | 6 | * May 8, 2006 - Modified and ported to HelenOS by Jakub Jermar. |
1301 | 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 { |
||
1302 | jermar | 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 *); |
||
1301 | jermar | 26 | }; |
27 | |||
1302 | jermar | 28 | void pci_generic_scan_bus(struct pci_access *, byte * busmap, int bus); |
1301 | jermar | 29 | void pci_generic_scan(struct pci_access *); |
30 | int pci_generic_fill_info(struct pci_dev *, int flags); |
||
1302 | jermar | 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); |
||
1301 | jermar | 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_linux_proc, |
||
1302 | jermar | 42 | pm_fbsd_device, pm_aix_device, pm_nbsd_libpci, pm_obsd_device, |
43 | pm_dump, pm_linux_sysfs; |