diff options
author | Michael Shalayeff <mickey@cvs.openbsd.org> | 2000-03-26 22:38:40 +0000 |
---|---|---|
committer | Michael Shalayeff <mickey@cvs.openbsd.org> | 2000-03-26 22:38:40 +0000 |
commit | 971bb4bc1ce2f7f91c9871b0f50a68e39326fd1c (patch) | |
tree | 349aff69b835169acc1c72f4e2c4ad13c674fcbd /sys/arch/i386/include | |
parent | 4a8a2378aeebf4afb7f090031193a8fc582384e2 (diff) |
from netbsd: pci interrupt routing code.
also, change a few pcidevs names to match netbsd (and more descriptive).
tested on a bunch of laptops, helps resolving 'pin X unmapped'
problems for (usually) usb and cardbus cntrollers.
Diffstat (limited to 'sys/arch/i386/include')
-rw-r--r-- | sys/arch/i386/include/biosvar.h | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/sys/arch/i386/include/biosvar.h b/sys/arch/i386/include/biosvar.h index 2b77643e0d5..a80bf2f4a2d 100644 --- a/sys/arch/i386/include/biosvar.h +++ b/sys/arch/i386/include/biosvar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: biosvar.h,v 1.34 2000/03/05 19:07:43 mickey Exp $ */ +/* $OpenBSD: biosvar.h,v 1.35 2000/03/26 22:38:33 mickey Exp $ */ /* * Copyright (c) 1997-1999 Michael Shalayeff @@ -61,6 +61,25 @@ #define BIOS_MAP_NVS 0x04 /* ACPI NVS memory */ /* + * BIOS32 + */ +typedef +struct bios32_entry_info { + paddr_t bei_base; + psize_t bei_size; + paddr_t bei_entry; +} *bios32_entry_info_t; + +typedef +struct bios32_entry { + caddr_t offset; + u_int16_t segment; +} __attribute__((__packed__)) *bios32_entry_t; + +#define BIOS32_MAKESIG(a, b, c, d) \ + ((a) | ((b) << 8) | ((c) << 16) | ((d) << 24)) + +/* * CTL_BIOS definitions. */ #define BIOS_DEV 1 /* int: BIOS boot device */ @@ -192,6 +211,10 @@ int bioscngetc __P((dev_t)); void bioscnpollc __P((dev_t, int)); void bios_getopt __P((void)); +/* bios32.c */ +void bios32_init __P((void)); +int bios32_service __P((u_int32_t, bios32_entry_t, bios32_entry_info_t)); + extern u_int bootapiver; extern bios_memmap_t *bios_memmap; extern bios_pciinfo_t *bios_pciinfo; |