Mercurial > mplayer.hg
annotate libdha/libdha.h @ 22153:0cf24df5d97b
Revert part of commit r22170.
FFmpeg lavcodecs version is still
(or according to ffmpeg commit r7868, it's back to)
49.3.0, so global variables are not yet directly accessable (if ever).
author | iive |
---|---|
date | Wed, 07 Feb 2007 12:31:37 +0000 |
parents | f6d2772efca3 |
children |
rev | line source |
---|---|
3973 | 1 /* |
2 libgha.h - Library for direct hardware access | |
3 Copyrights: | |
4 1996/10/27 - Robin Cutshaw (robin@xfree86.org) | |
5 XFree86 3.3.3 implementation | |
6 1999 - Øyvind Aabling. | |
7 Modified for GATOS/win/gfxdump. | |
8 2002 - library implementation by Nick Kurshev | |
9 | |
10 supported O/S's: SVR4, UnixWare, SCO, Solaris, | |
11 FreeBSD, NetBSD, 386BSD, BSDI BSD/386, | |
12 Linux, Mach/386, ISC | |
13 DOS (WATCOM 9.5 compiler), Win9x (with mapdev.vxd) | |
14 Licence: GPL | |
15 */ | |
16 #ifndef LIBDHA_H | |
17 #define LIBDHA_H | |
18 | |
19 #ifdef __cplusplus | |
20 extern "C" { | |
21 #endif | |
22 | |
23 #define MAX_DEV_PER_VENDOR_CFG1 64 | |
24 #define MAX_PCI_DEVICES_PER_BUS 32 | |
25 #define MAX_PCI_DEVICES 64 | |
26 #define PCI_MULTIFUNC_DEV 0x80 | |
9767
f6d2772efca3
Ignore disabled cards. (Jon Burgess <jburgess@uklinux.net>)
ranma
parents:
5702
diff
changeset
|
27 #define PCI_COMMAND_IO 0x1 /* Enable response to I/O space */ |
3973 | 28 |
29 typedef struct pciinfo_s | |
30 { | |
4192 | 31 int bus,card,func; /* PCI/AGP bus:card:func */ |
9767
f6d2772efca3
Ignore disabled cards. (Jon Burgess <jburgess@uklinux.net>)
ranma
parents:
5702
diff
changeset
|
32 unsigned short command; /* Device control register */ |
4192 | 33 unsigned short vendor,device; /* Card vendor+device ID */ |
34 unsigned base0,base1,base2,baserom; /* Memory and I/O base addresses */ | |
4277 | 35 // unsigned base0_limit, base1_limit, base2_limit, baserom_limit; |
3973 | 36 }pciinfo_t; |
37 | |
4174
4cfb6b9a6da3
api changed: enable/disable_os_io returns error-code (or zero if ok) and pciconfig_read exported for mga_vid
alex
parents:
3995
diff
changeset
|
38 /* needed for mga_vid */ |
4277 | 39 extern int pci_config_read(unsigned char bus, unsigned char dev, unsigned char func, |
40 unsigned char cmd, int len, unsigned long *val); | |
3973 | 41 /* Fill array pci_list which must have size MAX_PCI_DEVICES |
42 and return 0 if sucessful */ | |
43 extern int pci_scan(pciinfo_t *pci_list,unsigned *num_card); | |
44 | |
45 | |
4192 | 46 /* Enables/disables accessing to IO space from application side. |
47 Should return 0 if o'k or errno on error. */ | |
48 extern int enable_app_io( void ); | |
49 extern int disable_app_io( void ); | |
3973 | 50 |
3995 | 51 extern unsigned char INPORT8(unsigned idx); |
52 extern unsigned short INPORT16(unsigned idx); | |
53 extern unsigned INPORT32(unsigned idx); | |
54 #define INPORT(idx) INPORT32(idx) | |
55 extern void OUTPORT8(unsigned idx,unsigned char val); | |
56 extern void OUTPORT16(unsigned idx,unsigned short val); | |
57 extern void OUTPORT32(unsigned idx,unsigned val); | |
58 #define OUTPORT(idx,val) OUTPORT32(idx,val) | |
3973 | 59 |
5702 | 60 extern void * map_phys_mem(unsigned long base, unsigned long size); |
61 extern void unmap_phys_mem(void *ptr, unsigned long size); | |
3973 | 62 |
4476 | 63 /* These are the region types */ |
64 #define MTRR_TYPE_UNCACHABLE 0 | |
65 #define MTRR_TYPE_WRCOMB 1 | |
66 #define MTRR_TYPE_WRTHROUGH 4 | |
67 #define MTRR_TYPE_WRPROT 5 | |
68 #define MTRR_TYPE_WRBACK 6 | |
69 extern int mtrr_set_type(unsigned base,unsigned size,int type); | |
70 | |
3973 | 71 #ifdef __cplusplus |
72 } | |
73 #endif | |
74 | |
5702 | 75 #endif |