2007-08-07 14:52:47 +02:00
|
|
|
/*
|
|
|
|
dmap.h
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*===========================================================================*
|
|
|
|
* Device <-> Driver Table *
|
|
|
|
*===========================================================================*/
|
|
|
|
|
|
|
|
/* Device table. This table is indexed by major device number. It provides
|
|
|
|
* the link between major device numbers and the routines that process them.
|
|
|
|
* The table can be update dynamically. The field 'dmap_flags' describe an
|
|
|
|
* entry's current status and determines what control options are possible.
|
|
|
|
*/
|
|
|
|
#define DMAP_MUTABLE 0x01 /* mapping can be overtaken */
|
|
|
|
#define DMAP_BUSY 0x02 /* driver busy with request */
|
|
|
|
#define DMAP_BABY 0x04 /* driver exec() not done yet */
|
|
|
|
|
|
|
|
extern struct dmap {
|
|
|
|
int _PROTOTYPE ((*dmap_opcl), (int, Dev_t, int, int) );
|
|
|
|
int _PROTOTYPE ((*dmap_io), (int, message *) );
|
2008-02-22 16:01:00 +01:00
|
|
|
endpoint_t dmap_driver;
|
2007-08-07 14:52:47 +02:00
|
|
|
int dmap_flags;
|
|
|
|
char dmap_label[16];
|
2008-02-22 16:01:00 +01:00
|
|
|
int dmap_async_driver;
|
|
|
|
struct filp *dmap_sel_filp;
|
2007-08-07 14:52:47 +02:00
|
|
|
} dmap[];
|