| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* | 
|  | 2 | * pnpbios.h - contains local definitions | 
|  | 3 | */ | 
|  | 4 |  | 
|  | 5 | #pragma pack(1) | 
|  | 6 | union pnp_bios_install_struct { | 
|  | 7 | struct { | 
|  | 8 | u32 signature;    /* "$PnP" */ | 
|  | 9 | u8 version;	  /* in BCD */ | 
|  | 10 | u8 length;	  /* length in bytes, currently 21h */ | 
|  | 11 | u16 control;	  /* system capabilities */ | 
|  | 12 | u8 checksum;	  /* all bytes must add up to 0 */ | 
|  | 13 |  | 
|  | 14 | u32 eventflag;    /* phys. address of the event flag */ | 
|  | 15 | u16 rmoffset;     /* real mode entry point */ | 
|  | 16 | u16 rmcseg; | 
|  | 17 | u16 pm16offset;   /* 16 bit protected mode entry */ | 
|  | 18 | u32 pm16cseg; | 
|  | 19 | u32 deviceID;	  /* EISA encoded system ID or 0 */ | 
|  | 20 | u16 rmdseg;	  /* real mode data segment */ | 
|  | 21 | u32 pm16dseg;	  /* 16 bit pm data segment base */ | 
|  | 22 | } fields; | 
|  | 23 | char chars[0x21];	  /* To calculate the checksum */ | 
|  | 24 | }; | 
|  | 25 | #pragma pack() | 
|  | 26 |  | 
|  | 27 | extern int pnp_bios_present(void); | 
|  | 28 | extern int  pnpbios_dont_use_current_config; | 
|  | 29 | extern void *pnpbios_kmalloc(size_t size, int f); | 
|  | 30 |  | 
|  | 31 | extern int pnpbios_parse_data_stream(struct pnp_dev *dev, struct pnp_bios_node * node); | 
|  | 32 | extern int pnpbios_read_resources_from_node(struct pnp_resource_table *res, struct pnp_bios_node * node); | 
|  | 33 | extern int pnpbios_write_resources_to_node(struct pnp_resource_table *res, struct pnp_bios_node * node); | 
|  | 34 | extern void pnpid32_to_pnpid(u32 id, char *str); | 
|  | 35 |  | 
|  | 36 | extern void pnpbios_print_status(const char * module, u16 status); | 
|  | 37 | extern void pnpbios_calls_init(union pnp_bios_install_struct * header); | 
|  | 38 |  | 
|  | 39 | #ifdef CONFIG_PNPBIOS_PROC_FS | 
|  | 40 | extern int pnpbios_interface_attach_device(struct pnp_bios_node * node); | 
|  | 41 | extern int pnpbios_proc_init (void); | 
|  | 42 | extern void pnpbios_proc_exit (void); | 
|  | 43 | #else | 
|  | 44 | static inline int pnpbios_interface_attach_device(struct pnp_bios_node * node) { return 0; } | 
|  | 45 | static inline int pnpbios_proc_init (void) { return 0; } | 
|  | 46 | static inline void pnpbios_proc_exit (void) { ; } | 
|  | 47 | #endif /* CONFIG_PNPBIOS_PROC_FS */ |