!************************************************************************** !* !* Boot-ROM-Code to load an operating system across a TCP/IP network. !* !* Module: pnp.inc !* Purpose: Definitions for accessing PnP BIOS functions !* Entries: None !* !************************************************************************** !* !* Copyright (C) 1999-2003 Gero Kuhlmann !* !* This program is free software; you can redistribute it and/or modify !* it under the terms of the GNU General Public License as published by !* the Free Software Foundation; either version 2 of the License, or !* any later version. !* !* This program is distributed in the hope that it will be useful, !* but WITHOUT ANY WARRANTY; without even the implied warranty of !* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the !* GNU General Public License for more details. !* !* You should have received a copy of the GNU General Public License !* along with this program; if not, write to the Free Software !* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. !* !* $Id: pnp.inc,v 1.4 2003/01/25 23:29:40 gkminix Exp $ !* #ifndef _HW_PNP_INC #define _HW_PNP_INC ! !************************************************************************** ! ! PnP entry point structure: ! PNPE_SIG equ $0000 ! entry point structure signature PNPE_VERSION equ $0004 ! structure version number PNPE_LENGTH equ $0005 ! structure length PNPE_CONTROL equ $0006 ! system capabilities information PNPE_CHECKSUM equ $0008 ! structure checksum PNPE_EVENT equ $0009 ! event notification flag address PNPE_REAL_OFS equ $000D ! real mode offset to entry point PNPE_REAL_SEG equ $000F ! real mode segment of entry point PNPE_PROT_OFS equ $0011 ! protected mode offset to entry point PNPE_PROT_BASE equ $0013 ! protected mode code segment base PNPE_DEVID equ $0017 ! OEM device identifier PNPE_REAL_DATA equ $001B ! real mode data segment PNPE_PROT_DATA equ $001D ! protected mode data segment base ! !************************************************************************** ! ! System capabilities flags: ! PNP_EVENT_MASK equ %000000000000011 ! bit mask PNP_EVENT_POLL equ %000000000000001 ! event handled through polling PNP_EVENT_ASYNC equ %000000000000010 ! event is asynchronous ! !************************************************************************** ! ! PnP BIOS functions: ! PNP_FUNC_GET_NODE_NUM equ $0000 ! get number of system nodes PNP_FUNC_GET_NODE equ $0001 ! get system device node PNP_FUNC_SET_NODE equ $0002 ! set system device node PNP_FUNC_GET_EVENT equ $0003 ! get event PNP_FUNC_SEND_MSG equ $0004 ! send message PNP_FUNC_GET_DOCK_INFO equ $0005 ! get docking station info PNP_FUNC_SET_PRIM_BOOT equ $0007 ! set primary boot device PNP_FUNC_GET_PRIM_BOOT equ $0008 ! get primary boot device PNP_FUNC_SET_SARI equ $0009 ! set statically allocated info PNP_FUNC_GET_SARI equ $000A ! get statically allocated info PNP_FUNC_GET_APM_ID equ $000B ! get APM ID table PNP_FUNC_GET_CONFIG equ $0040 ! get PnP config structure PNP_FUNC_GET_ESCD equ $0041 ! get ESCD info PNP_FUNC_READ_ESCD equ $0042 ! read ESCD data PNP_FUNC_WRITE_ESCD equ $0043 ! write ESCD data PNP_FUNC_GET_BBS_VER equ $0060 ! get BBS version number PNP_FUNC_GET_DEV_COUNT equ $0061 ! get BBS device count PNP_FUNC_GET_PRIORITY equ $0062 ! get BBS priority and table PNP_FUNC_SET_PRIORITY equ $0063 ! set BBS priority PNP_FUNC_GET_IPL_DEV equ $0064 ! get IPL device from last boot PNP_FUNC_GET_BOOT_FIRST equ $0065 ! get first boot device PNP_FUNC_SET_BOOT_FIRST equ $0066 ! set first boot device ! !************************************************************************** ! ! Return codes: ! PNP_RET_SUCCESS equ $0000 ! success PNP_RET_UNKNOWN equ $0081 ! unknown function PNP_RET_UNSUPPORTED equ $0082 ! function unsupported PNP_RET_INV_HANDLE equ $0083 ! invalid handle PNP_RET_BAD_PARAM equ $0084 ! invalid function parameter PNP_RET_SET_FAILED equ $0085 ! set device node failed PNP_RET_NO_EVENTS equ $0086 ! no events pending PNP_RET_NOT_DOCKED equ $0087 ! system is not docked PNP_RET_NO_PNP_CARDS equ $0088 ! no ISA PnP cards found PNP_RET_DOCK_CAP equ $0089 ! not able to determine docking PNP_RET_NO_BATT equ $008A ! no battery in docking station PNP_RET_RES_CONFLICT equ $008B ! resource conflict PNP_RET_BUFFER_SMALL equ $008C ! buffer too small PNP_RET_USE_ESCD equ $008D ! have to use ESCD functions PNP_RET_MSG_UNSUPPORTED equ $008E ! message type not supported PNP_RET_HW_ERROR equ $008F ! hardware failure ! !************************************************************************** ! ! Plug and Play ISA configuration structure: ! PNP_CONF_REV equ $0000 ! structure revision PNP_CONF_CSN_NUM equ $0001 ! total number of CSNs assigned PNP_CONF_DATA_PORT equ $0002 ! ISA read data port PNP_CONF_SIZE equ $0006 ! size of structure ! !************************************************************************** ! #endif