linux/drivers/pnp/pnpbios/pnpbios.h
<<
>>
Prefs
   1/*
   2 * pnpbios.h - contains local definitions
   3 */
   4
   5#pragma pack(1)
   6union 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
  27extern int pnp_bios_present(void);
  28extern int  pnpbios_dont_use_current_config;
  29
  30extern int pnpbios_parse_data_stream(struct pnp_dev *dev, struct pnp_bios_node * node);
  31extern int pnpbios_read_resources_from_node(struct pnp_resource_table *res, struct pnp_bios_node * node);
  32extern int pnpbios_write_resources_to_node(struct pnp_resource_table *res, struct pnp_bios_node * node);
  33extern void pnpid32_to_pnpid(u32 id, char *str);
  34
  35extern void pnpbios_print_status(const char * module, u16 status);
  36extern void pnpbios_calls_init(union pnp_bios_install_struct * header);
  37
  38#ifdef CONFIG_PNPBIOS_PROC_FS
  39extern int pnpbios_interface_attach_device(struct pnp_bios_node * node);
  40extern int pnpbios_proc_init (void);
  41extern void pnpbios_proc_exit (void);
  42#else
  43static inline int pnpbios_interface_attach_device(struct pnp_bios_node * node) { return 0; }
  44static inline int pnpbios_proc_init (void) { return 0; }
  45static inline void pnpbios_proc_exit (void) { ; }
  46#endif /* CONFIG_PNPBIOS_PROC_FS */
  47