Attachment C: Preboot API Common Type Definitions

Important: The code provided in this attachment is provided for informational purposes only.

/*
 *
* Copyright(c) 1997 by Intel Corporation.  All Rights Reserved.
 *
 */

#ifndef _PXENV_CMN_H
#define _PXENV_CMN_H

/* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
/* PXENV.H - PXENV/TFTP/UNDI API common, Version 2.x, 97-Jan-17
 *
 * Constant and type definitions used in other PXENV API header files.
 */


/* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
/* Parameter/Result structure storage types.
 */
typedef unsigned char UINT8;
typedef unsigned short UINT16;
typedef unsigned long UINT32;
typedef signed char INT8;
typedef signed short INT16;
typedef signed long INT32;


/* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
/* Result codes returned in AX by a PXENV API service.
 */
#define PXENV_EXIT_SUCCESS0x0000
#define PXENV_EXIT_FAILURE0x0001
#definePXENV_EXIT_CHAIN0xFFFF/* used internally */


/* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
/* CPU types
 */
#definePXENV_CPU_X860
#definePXENV_CPU_ALPHA1
#definePXENV_CPU_PPC2


/* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
/* Bus types
 */
#definePXENV_BUS_ISA0
#definePXENV_BUS_EISA1
#definePXENV_BUS_MCA2
#definePXENV_BUS_PCI3
#definePXENV_BUS_VESA4
#definePXENV_BUS_PCMCIA5

/* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
/* Status codes returned in the status word of PXENV API parameter structures.
 */

/* Generic API errors that are reported by the loader*/
#define PXENV_STATUS_SUCCESS0x00
#definePXENV_STATUS_FAILURE0x01
/* General failure. */
#definePXENV_STATUS_BAD_FUNC0x02
/* Invalid function number. */
#definePXENV_STATUS_UNSUPPORTED0x03
/* Function is not yet supported. */
#definePXENV_STATUS_1A_HOOKED0x04
/* Int 1Ah cannot be unhooked. */

/* ARP errors (0x10 to 0x1F) */
#definePXENV_STATUS_ARP_CANCELED_BY_KEYSTROKE0x10
#definePXENV_STATUS_ARP_TIMEOUT0x11

/* BIOS/system errors (0x20 to 0x2F) */
#definePXENV_STATUS_MCOPY_PROBLEM0x20

/* TFTP errors (0x30 to 0x3F) */
#definePXENV_STATUS_TFTP_CANNOT_ARP_ADDRESS0x30
#definePXENV_STATUS_TFTP_OPEN_CANCELED_BY_KEYSTROKE0x31
#definePXENV_STATUS_TFTP_OPEN_TIMEOUT0x32
#definePXENV_STATUS_TFTP_UNKNOWN_OPCODE0x33
#definePXENV_STATUS_TFTP_ERROR_OPCODE0x34
#definePXENV_STATUS_TFTP_READ_TIMEOUT0x35
#definePXENV_STATUS_TFTP_ERROR_OPCODE0x36
#definePXENV_STATUS_TFTP_CANNOT_OPEN_CONNECTION0x38
#definePXENV_STATUS_TFTP_CANNOT_READ_FROM_CONNECTION0x39
#definePXENV_STATUS_TFTP_TOO_MANY_PACKAGES0x3A
#definePXENV_STATUS_TFTP_FILE_NOT_FOUND0x3B
#definePXENV_STATUS_TFTP_ACCESS_VIOLATION0x3C
#definePXENV_STATUS_TFTP_NO_MCAST_ADDRESS0x3D

/* BOOTP errors 0x40 to 0x4F) */
#definePXENV_STATUS_BOOTP_CANCELED_BY_KEYSTROKE0x40
#definePXENV_STATUS_BOOTP_TIMEOUT0x41
#definePXENV_STATUS_BOOTP_NO_BOOTFILE_NAME0x43

/* DHCP errors (0x50 to 0x5F) */
#definePXENV_STATUS_DHCP_CANCELED_BY_KEYSTROKE0x50
#definePXENV_STATUS_DHCP_TIMEOUT0x51
#define PXENV_STATUS_DHCP_NO_IP_ADDRESS0x52
#definePXENV_STATUS_DHCP_NO_BOOTFILE_NAME0x53

/* Driver errors (0x60 to 0x6F) */
/* These errors are for UNDI compatible NIC drivers. */
#definePXENV_STATUS_UNDI_MEDIATEST_FAILED 0x61
#definePXENV_STATUS_UNDI_CANNOT_INIT_NIC_FOR_MCAST0x62

/* Bootstrap (.1) errors (0x70 to 0x7F) */
/* These errors are for the LSA/LCM bootstrap layer. */

/* Environment (.2) errors (0x80 to 0x8F) */
/* These errors are for LSA/LCM environment layers. */

/* MTFTP errors */
#definePXENV_STATUS_MTFTP_OPEN_CANCELED_BY_KEYSTROKE0x91
#definePXENV_STATUS_MTFTP_OPEN_TIMEOUT0x92
#definePXENV_STATUS_MTFTP_UNKNOWN_OPCODE0x93
#definePXENV_STATUS_MTFTP_READ_CANCELED_BY_KEYSTROKE0x94
#definePXENV_STATUS_MTFTP_READ_TIMEOUT0x95
#definePXENV_STATUS_MTFTP_ERROR_OPCODE0x96
#definePXENV_STATUS_MTFTP_CANNOT_OPEN_CONNECTION0x98
#definePXENV_STATUS_MTFTP_CANNOT_READ_FROM_CONNECTION0x99
#definePXENV_STATUS_MTFTP_TOO_MANY_PACKAGES0x9A

/* Misc errors (0xA0 to 0xAF) */
#definePXENV_STATUS_BINL_CANCELED_BY_KEYSTROKE0xA0
#definePXENV_STATUS_BINL_NO_PXE_SERVER0xA1
#definePXENV_STATUS_NOT_AVAILABLE_IN_PMODE0xA2
#definePXENV_STATUS_NOT_AVAILABLE_IN_RMODE0xA3
/* Reserved errors (0xB0 to 0xCF) */

/* Vendor errors (0xD0 to 0xFF) */

#endif /* _PXENV_CMN_H */

/* EOF - $Workfile:   pxe_cmn.h  $ */