summaryrefslogtreecommitdiffstats
path: root/src/include/isa.h
blob: 23a8f2ffad6206a65d249d5a2875c51746a19712 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef	ISA_H
#define ISA_H

struct dev;

#define ISAPNP_VENDOR(a,b,c)	(((((a)-'A'+1)&0x3f)<<2)|\
				((((b)-'A'+1)&0x18)>>3)|((((b)-'A'+1)&7)<<13)|\
				((((c)-'A'+1)&0x1f)<<8))

#define	GENERIC_ISAPNP_VENDOR	ISAPNP_VENDOR('P','N','P')

struct isa_driver
{
	int type;
	const char *name;
	int (*probe)(struct dev *, unsigned short *);
	unsigned short *ioaddrs;
};

#ifndef __HYPERSTONE__
#define __isa_driver	__attribute__ ((used,__section__(".drivers.isa")))
#else 
#define __isa_driver	__attribute__ ((used,__section__(".drivisa")))
#endif

extern const struct isa_driver isa_drivers[];
extern const struct isa_driver isa_drivers_end[];

#define ISA_ROM(IMAGE, DESCRIPTION)

#endif /* ISA_H */