|
@@ -56,6 +56,8 @@
|
56
|
56
|
#include <pxe_types.h>
|
57
|
57
|
#endif
|
58
|
58
|
|
|
59
|
+#include "errno.h"
|
|
60
|
+
|
59
|
61
|
/* Defaults in case pxe_types.h did not define a type. These are
|
60
|
62
|
* placeholder structures just to make the code compile.
|
61
|
63
|
*/
|
|
@@ -673,149 +675,6 @@ typedef struct {
|
673
|
675
|
|
674
|
676
|
|
675
|
677
|
|
676
|
|
-/*
|
677
|
|
- **************************************************************************
|
678
|
|
- *
|
679
|
|
- * Status codes returned in the status word of the PXENV API parameter
|
680
|
|
- * structure. Some of these codes are also used to return status
|
681
|
|
- * information from a boot image loader back to the bootrom.
|
682
|
|
- */
|
683
|
|
-
|
684
|
|
-/* Generic API errors that are reported by the loader */
|
685
|
|
-#define PXENV_STATUS_SUCCESS 0x00
|
686
|
|
-#define PXENV_STATUS_FAILURE 0x01 /* general failure */
|
687
|
|
-#define PXENV_STATUS_BAD_FUNC 0x02 /* invalid function number */
|
688
|
|
-#define PXENV_STATUS_UNSUPPORTED 0x03 /* not yet supported */
|
689
|
|
-#define PXENV_STATUS_KEEP_UNDI 0x04 /* keep UNDI in memory */
|
690
|
|
-#define PXENV_STATUS_KEEP_ALL 0x05 /* keep everything in memory */
|
691
|
|
-#define PXENV_STATUS_OUT_OF_RESOURCES 0x06 /* also keep everything */
|
692
|
|
-
|
693
|
|
-/* ARP/UDP errors (0x10 to 0x1F) */
|
694
|
|
-#define PXENV_STATUS_ARP_CANCELED 0x10 /* ARP canceled by keystroke */
|
695
|
|
-#define PXENV_STATUS_ARP_TIMEOUT 0x11 /* ARP timeout */
|
696
|
|
-#define PXENV_STATUS_UDP_CLOSED 0x18 /* UDP closed */
|
697
|
|
-#define PXENV_STATUS_UDP_OPEN 0x19 /* UDP already open */
|
698
|
|
-#define PXENV_STATUS_TFTP_CLOSED 0x1A /* TFTP closed */
|
699
|
|
-#define PXENV_STATUS_TFTP_OPEN 0x1B /* TFTP already opened */
|
700
|
|
-
|
701
|
|
-/* BIOS/system errors (0x20 to 0x2F) */
|
702
|
|
-#define PXENV_STATUS_MCOPY_PROBLEM 0x20 /* can't copy into memory */
|
703
|
|
-
|
704
|
|
-/* TFP errors (0x30 to 0x3F) */
|
705
|
|
-#define PXENV_STATUS_TFTP_CANNOT_ARP 0x30 /* TFTP ARP problem */
|
706
|
|
-#define PXENV_STATUS_TFTP_OPEN_CANCELED 0x31 /* TFTP open canceled by key */
|
707
|
|
-#define PXENV_STATUS_TFTP_OPEN_TIMEOUT 0x32 /* timeout during TFTP open */
|
708
|
|
-#define PXENV_STATUS_TFTP_UNKNOWN_OPCODE 0x33 /* unknown TFTP opcode */
|
709
|
|
-#define PXENV_STATUS_TFTP_READ_CANCELED 0x34 /* TFTP read canceled by key */
|
710
|
|
-#define PXENV_STATUS_TFTP_READ_TIMEOUT 0x35 /* timeout during TFTP read */
|
711
|
|
-#define PXENV_STATUS_TFTP_ERROR_OPCODE 0x36 /* bad TFTP opcode */
|
712
|
|
-#define PXENV_STATUS_TFTP_CANNOT_OPEN_CONNECTION \
|
713
|
|
- 0x38 /* error during TFTP open */
|
714
|
|
-#define PXENV_STATUS_TFTP_CANNOT_READ_FROM_CONNECTION \
|
715
|
|
- 0x39 /* error during TFTP read */
|
716
|
|
-#define PXENV_STATUS_TFTP_TOO_MANY_PACKAGES \
|
717
|
|
- 0x3A /* too many packages */
|
718
|
|
-#define PXENV_STATUS_TFTP_FILE_NOT_FOUND 0x3B /* file not found */
|
719
|
|
-#define PXENV_STATUS_TFTP_ACCESS_VIOLATION 0x3C /* access violation */
|
720
|
|
-#define PXENV_STATUS_TFTP_NO_MCAST_ADDRESS 0x3D /* no multicast address */
|
721
|
|
-#define PXENV_STATUS_TFTP_NO_FILESIZE 0x3E /* unable to get file size */
|
722
|
|
-#define PXENV_STATUS_TFTP_INVALID_PACKET_SIZE \
|
723
|
|
- 0x3F /* invalid packet size */
|
724
|
|
-
|
725
|
|
-/* BOOTP errors (0x40 to 0x4F) */
|
726
|
|
-#define PXENV_STATUS_BOOTP_CANCELED 0x40 /* BOOTP canceled by key */
|
727
|
|
-#define PXENV_STATUS_BOOTP_TIMEOUT 0x41 /* timeout during BOOTP */
|
728
|
|
-#define PXENV_STATUS_BOOTP_NO_FILE 0x42 /* missing bootfile name */
|
729
|
|
-
|
730
|
|
-/* DHCP errors (0x50 to 0x5F) */
|
731
|
|
-#define PXENV_STATUS_DHCP_CANCELED 0x50 /* DHCP canceled by key */
|
732
|
|
-#define PXENV_STATUS_DHCP_TIMEOUT 0x51 /* timeout during DHCP */
|
733
|
|
-#define PXENV_STATUS_DHCP_NO_IP_ADDRESS 0x52 /* missing IP address */
|
734
|
|
-#define PXENV_STATUS_DHCP_NO_BOOTFILE_NAME 0x53 /* missing bootfile name */
|
735
|
|
-#define PXENV_STATUS_DHCP_BAD_IP_ADDRESS 0x54 /* invalid IP address */
|
736
|
|
-
|
737
|
|
-/* Driver errors (0x60 to 0x6F) */
|
738
|
|
-#define PXENV_STATUS_UNDI_INVALID_FUNCTION 0x60 /* invalid UNDI function */
|
739
|
|
-#define PXENV_STATUS_UNDI_MEDIATEST_FAILED 0x61 /* media test failed */
|
740
|
|
-#define PXENV_STATUS_UNDI_CANNOT_INIT_NIC_FOR_MCAST \
|
741
|
|
- 0x62 /* cannot init for multicast */
|
742
|
|
-#define PXENV_STATUS_UNDI_CANNOT_INITIALIZE_NIC \
|
743
|
|
- 0x63 /* cannot init NIC */
|
744
|
|
-#define PXENV_STATUS_UNDI_CANNOT_INITIALIZE_PHY \
|
745
|
|
- 0x64 /* cannot init hardware */
|
746
|
|
-#define PXENV_STATUS_UNDI_CANNOT_READ_CONFIG_DATA \
|
747
|
|
- 0x65 /* cannot read config data */
|
748
|
|
-#define PXENV_STATUS_UNDI_CANNOT_READ_INIT_DATA \
|
749
|
|
- 0x66 /* cannot read init data */
|
750
|
|
-#define PXENV_STATUS_UNDI_BAD_MAC_ADDRESS 0x67 /* invalid hardware address */
|
751
|
|
-#define PXENV_STATUS_UNDI_BAD_EEPROM_CHECKSUM \
|
752
|
|
- 0x68 /* invalid EEPROM checksum */
|
753
|
|
-#define PXENV_STATUS_UNDI_ERROR_SETTING_ISR 0x69
|
754
|
|
-#define PXENV_STATUS_UNDI_INVALID_STATE 0x6a /* invalid UNDI state */
|
755
|
|
-#define PXENV_STATUS_UNDI_TRANSMIT_ERROR 0x6b /* transmit error */
|
756
|
|
-#define PXENV_STATUS_UNDI_INVALID_PARAMETER \
|
757
|
|
- 0x6c /* almost anything */
|
758
|
|
-
|
759
|
|
-/* Bootstrap (.1) errors (0x70 to 0x7F) */
|
760
|
|
-#define PXENV_STATUS_BSTRAP_PROMPT_MENU 0x74 /* invalid bootstrap menu */
|
761
|
|
-#define PXENV_STATUS_BSTRAP_MCAST_ADDR 0x76 /* missing multicast address */
|
762
|
|
-#define PXENV_STATUS_BSTRAP_MISSING_LIST 0x77 /* missing file list */
|
763
|
|
-#define PXENV_STATUS_BSTRAP_NO_RESPONSE 0x78 /* no response from server */
|
764
|
|
-#define PXENV_STATUS_BSTRAP_FILE_TOO_BIG 0x79 /* next file too big */
|
765
|
|
-
|
766
|
|
-/* Environment (.2) errors (0x80 to 0x8F) */
|
767
|
|
-
|
768
|
|
-/* MTFTP errors (0x90 to 0x9F) */
|
769
|
|
-#define PXENV_STATUS_MTFTP_OPEN_CANCEL 0x91 /* MTFTP open canceled by key */
|
770
|
|
-#define PXENV_STATUS_MTFTP_OPEN_TIMEOUT 0x92 /* timeout during MTFTP open */
|
771
|
|
-#define PXENV_STATUS_MTFTP_UNKNOWN_OP 0x93 /* unknown TFTP opcode */
|
772
|
|
-#define PXENV_STATUS_MTFTP_READ_CANCEL 0x94 /* MTFTP read canceled by key */
|
773
|
|
-#define PXENV_STATUS_MTFTP_READ_TIMEOUT 0x95 /* timeout during MTFTP read */
|
774
|
|
-#define PXENV_STATUS_MTFTP_ERROR_OP 0x96 /* bad TFTP opcode */
|
775
|
|
-#define PXENV_STATUS_MTFTP_CANNOT_OPEN 0x98 /* error during MTFTP open */
|
776
|
|
-#define PXENV_STATUS_MTFTP_CANNOT_READ 0x99 /* error during MTFTP read */
|
777
|
|
-#define PXENV_STATUS_MTFTP_TOO_MANY 0x9A /* too many packages */
|
778
|
|
-#define PXENV_STATUS_MTFTP_PACK_SIZE 0x9B /* invalid package size */
|
779
|
|
-
|
780
|
|
-/* Misc. errors (0xA0 to 0xAF) */
|
781
|
|
-#define PXENV_STATUS_BINL_CANCELED_BY_KEYSTROKE \
|
782
|
|
- 0xA0 /* BINL canceled by key */
|
783
|
|
-#define PXENV_STATUS_BINL_NO_PXE_SERVER 0xA1 /* no BINL server found */
|
784
|
|
-#define PXENV_STATUS_NOT_AVAILABLE_IN_PMODE \
|
785
|
|
- 0xA2 /* not avail. in prot mode */
|
786
|
|
-#define PXENV_STATUS_NOT_AVAILABLE_IN_RMODE \
|
787
|
|
- 0xA3 /* not avail. in real mode */
|
788
|
|
-
|
789
|
|
-/* BUSD errors (0xB0 to 0xBF) */
|
790
|
|
-#define PXENV_STATUS_BUSD_DEVICE_NOT_SUPPORTED \
|
791
|
|
- 0xB0 /* BUSD services not enabled */
|
792
|
|
-#define PXENV_STATUS_BUSD_DEV_ENABLE 0xB1 /* BUSD device not enabled */
|
793
|
|
-
|
794
|
|
-/* Loader errors (0xC0 to 0xCF) */
|
795
|
|
-#define PXENV_STATUS_LOADER_NO_FREE_BASE_MEMORY \
|
796
|
|
- 0xC0 /* no free base memory */
|
797
|
|
-#define PXENV_STATUS_LOADER_NO_BC_ROMID 0xC1 /* no base code rom ID */
|
798
|
|
-#define PXENV_STATUS_LOADER_BAD_BC_ROMID 0xC2 /* bad base code rom ID */
|
799
|
|
-#define PXENV_STATUS_LOADER_BAD_BC_RUNTIME_IMAGE \
|
800
|
|
- 0xC3 /* bad base code image */
|
801
|
|
-#define PXENV_STATUS_LOADER_NO_UNDI_ROMID 0xC4 /* no UNDI rom ID */
|
802
|
|
-#define PXENV_STATUS_LOADER_BAD_UNDI_ROMID 0xC5 /* bad UNDI rom ID */
|
803
|
|
-#define PXENV_STATUS_LOADER_UNDI_DRIVER_IMAGE \
|
804
|
|
- 0xC6 /* bad UNDI runtime image */
|
805
|
|
-#define PXENV_STATUS_LOADER_NO_PXE_STRUCT 0xC8 /* missing !PXE struct */
|
806
|
|
-#define PXENV_STATUS_LOADER_NO_PXENV_STRUCT \
|
807
|
|
- 0xC9 /* missing PXENV+ struct */
|
808
|
|
-#define PXENV_STATUS_LOADER_UNDI_START 0xCA /* UNDI not started */
|
809
|
|
-#define PXENV_STATUS_LOADER_BC_START 0xCB /* base code not started */
|
810
|
|
-
|
811
|
|
-/* Reserved errors (0xD0 to 0xFF) */
|
812
|
|
-#define PXENV_STATUS_IMAGE_INVALID 0xD0 /* invalid boot image */
|
813
|
|
-#define PXENV_STATUS_STOP_BASE 0xD1 /* error stopping base code */
|
814
|
|
-#define PXENV_STATUS_UNLOAD_BASE 0xD2 /* error unloading base code */
|
815
|
|
-#define PXENV_STATUS_STOP_UNDI 0xD3 /* error stopping UNDI */
|
816
|
|
-#define PXENV_STATUS_CLEANUP_UNDI 0xD4 /* error cleaning up UNDI */
|
817
|
|
-
|
818
|
|
-
|
819
|
678
|
/*****************************************************************************
|
820
|
679
|
* The remainder of this file is original to Etherboot.
|
821
|
680
|
*****************************************************************************
|