summaryrefslogtreecommitdiffstats
path: root/src/arch/i386/include
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/i386/include')
-rw-r--r--src/arch/i386/include/pxe.h49
-rw-r--r--src/arch/i386/include/pxe_api.h118
2 files changed, 47 insertions, 120 deletions
diff --git a/src/arch/i386/include/pxe.h b/src/arch/i386/include/pxe.h
index 909c8d818..a6bb65c00 100644
--- a/src/arch/i386/include/pxe.h
+++ b/src/arch/i386/include/pxe.h
@@ -6,8 +6,12 @@ FILE_LICENCE ( GPL2_OR_LATER );
#include "pxe_types.h"
#include "pxe_api.h"
#include <ipxe/device.h>
+#include <ipxe/tables.h>
-/* Parameter block for pxenv_unknown() */
+/** PXE API invalid function code */
+#define PXENV_UNKNOWN 0xffff
+
+/** Parameter block for pxenv_unknown() */
struct s_PXENV_UNKNOWN {
PXENV_STATUS_t Status; /**< PXE status code */
} __attribute__ (( packed ));
@@ -72,6 +76,45 @@ union u_PXENV_ANY {
typedef union u_PXENV_ANY PXENV_ANY_t;
+/** A PXE API call */
+struct pxe_api_call {
+ /** Entry point
+ *
+ * @v params PXE API call parameters
+ * @ret exit PXE API call exit code
+ */
+ PXENV_EXIT_t ( * entry ) ( union u_PXENV_ANY *params );
+ /** Length of parameters */
+ uint16_t params_len;
+ /** Opcode */
+ uint16_t opcode;
+};
+
+/** PXE API call table */
+#define PXE_API_CALLS __table ( struct pxe_api_call, "pxe_api_calls" )
+
+/** Declare a PXE API call */
+#define __pxe_api_call __table_entry ( PXE_API_CALLS, 01 )
+
+/**
+ * Define a PXE API call
+ *
+ * @v _opcode Opcode
+ * @v _entry Entry point
+ * @v _params_type Type of parameter structure
+ * @ret call PXE API call
+ */
+#define PXE_API_CALL( _opcode, _entry, _params_type ) { \
+ .entry = ( ( ( ( PXENV_EXIT_t ( * ) ( _params_type *params ) ) NULL ) \
+ == ( ( typeof ( _entry ) * ) NULL ) ) \
+ ? ( ( PXENV_EXIT_t ( * ) \
+ ( union u_PXENV_ANY *params ) ) _entry ) \
+ : ( ( PXENV_EXIT_t ( * ) \
+ ( union u_PXENV_ANY *params ) ) _entry ) ), \
+ .params_len = sizeof ( _params_type ), \
+ .opcode = _opcode, \
+ }
+
/** An UNDI expansion ROM header */
struct undi_rom_header {
/** Signature
@@ -144,9 +187,11 @@ struct pcir_header {
#define PCIR_SIGNATURE \
( ( 'P' << 0 ) + ( 'C' << 8 ) + ( 'I' << 16 ) + ( 'R' << 24 ) )
-
extern struct net_device *pxe_netdev;
extern void pxe_set_netdev ( struct net_device *netdev );
+extern PXENV_EXIT_t pxenv_tftp_read_file ( struct s_PXENV_TFTP_READ_FILE
+ *tftp_read_file );
+extern PXENV_EXIT_t undi_loader ( struct s_UNDI_LOADER *undi_loader );
#endif /* PXE_H */
diff --git a/src/arch/i386/include/pxe_api.h b/src/arch/i386/include/pxe_api.h
index 9b40187ed..f40138467 100644
--- a/src/arch/i386/include/pxe_api.h
+++ b/src/arch/i386/include/pxe_api.h
@@ -252,9 +252,6 @@ struct s_PXENV_UNLOAD_STACK {
typedef struct s_PXENV_UNLOAD_STACK PXENV_UNLOAD_STACK_t;
-extern PXENV_EXIT_t pxenv_unload_stack ( struct s_PXENV_UNLOAD_STACK
- *unload_stack );
-
/** @} */ /* pxenv_unload_stack */
/** @defgroup pxenv_get_cached_info PXENV_GET_CACHED_INFO
@@ -403,9 +400,6 @@ struct bootph {
typedef struct bootph BOOTPLAYER_t;
-extern PXENV_EXIT_t pxenv_get_cached_info ( struct s_PXENV_GET_CACHED_INFO
- *get_cached_info );
-
/** @} */ /* pxenv_get_cached_info */
/** @defgroup pxenv_restart_tftp PXENV_RESTART_TFTP
@@ -423,9 +417,6 @@ struct s_PXENV_TFTP_READ_FILE;
typedef struct s_PXENV_RESTART_TFTP PXENV_RESTART_TFTP_t;
-extern PXENV_EXIT_t pxenv_restart_tftp ( struct s_PXENV_TFTP_READ_FILE
- *restart_tftp );
-
/** @} */ /* pxenv_restart_tftp */
/** @defgroup pxenv_start_undi PXENV_START_UNDI
@@ -496,8 +487,6 @@ struct s_PXENV_START_UNDI {
typedef struct s_PXENV_START_UNDI PXENV_START_UNDI_t;
-extern PXENV_EXIT_t pxenv_start_undi ( struct s_PXENV_START_UNDI *start_undi );
-
/** @} */ /* pxenv_start_undi */
/** @defgroup pxenv_stop_undi PXENV_STOP_UNDI
@@ -517,8 +506,6 @@ struct s_PXENV_STOP_UNDI {
typedef struct s_PXENV_STOP_UNDI PXENV_STOP_UNDI_t;
-extern PXENV_EXIT_t pxenv_stop_undi ( struct s_PXENV_STOP_UNDI *stop_undi );
-
/** @} */ /* pxenv_stop_undi */
/** @defgroup pxenv_start_base PXENV_START_BASE
@@ -538,8 +525,6 @@ struct s_PXENV_START_BASE {
typedef struct s_PXENV_START_BASE PXENV_START_BASE_t;
-extern PXENV_EXIT_t pxenv_start_base ( struct s_PXENV_START_BASE *start_base );
-
/** @} */ /* pxenv_start_base */
/** @defgroup pxenv_stop_base PXENV_STOP_BASE
@@ -559,8 +544,6 @@ struct s_PXENV_STOP_BASE {
typedef struct s_PXENV_STOP_BASE PXENV_STOP_BASE_t;
-extern PXENV_EXIT_t pxenv_stop_base ( struct s_PXENV_STOP_BASE *stop_base );
-
/** @} */ /* pxenv_stop_base */
/** @} */ /* pxe_preboot_api */
@@ -600,8 +583,6 @@ struct s_PXENV_TFTP_OPEN {
typedef struct s_PXENV_TFTP_OPEN PXENV_TFTP_OPEN_t;
-extern PXENV_EXIT_t pxenv_tftp_open ( struct s_PXENV_TFTP_OPEN *tftp_open );
-
/** @} */ /* pxenv_tftp_open */
/** @defgroup pxenv_tftp_close PXENV_TFTP_CLOSE
@@ -621,8 +602,6 @@ struct s_PXENV_TFTP_CLOSE {
typedef struct s_PXENV_TFTP_CLOSE PXENV_TFTP_CLOSE_t;
-extern PXENV_EXIT_t pxenv_tftp_close ( struct s_PXENV_TFTP_CLOSE *tftp_close );
-
/** @} */ /* pxenv_tftp_close */
/** @defgroup pxenv_tftp_read PXENV_TFTP_READ
@@ -645,8 +624,6 @@ struct s_PXENV_TFTP_READ {
typedef struct s_PXENV_TFTP_READ PXENV_TFTP_READ_t;
-extern PXENV_EXIT_t pxenv_tftp_read ( struct s_PXENV_TFTP_READ *tftp_read );
-
/** @} */ /* pxenv_tftp_read */
/** @defgroup pxenv_tftp_read_file PXENV_TFTP_READ_FILE
@@ -690,9 +667,6 @@ struct s_PXENV_TFTP_READ_FILE {
typedef struct s_PXENV_TFTP_READ_FILE PXENV_TFTP_READ_FILE_t;
-extern PXENV_EXIT_t pxenv_tftp_read_file ( struct s_PXENV_TFTP_READ_FILE
- *tftp_read_file );
-
/** @} */ /* pxenv_tftp_read_file */
/** @defgroup pxenv_tftp_get_fsize PXENV_TFTP_GET_FSIZE
@@ -716,9 +690,6 @@ struct s_PXENV_TFTP_GET_FSIZE {
typedef struct s_PXENV_TFTP_GET_FSIZE PXENV_TFTP_GET_FSIZE_t;
-extern PXENV_EXIT_t pxenv_tftp_get_fsize ( struct s_PXENV_TFTP_GET_FSIZE
- *get_fsize );
-
/** @} */ /* pxenv_tftp_get_fsize */
/** @} */ /* pxe_tftp_api */
@@ -748,8 +719,6 @@ struct s_PXENV_UDP_OPEN {
typedef struct s_PXENV_UDP_OPEN PXENV_UDP_OPEN_t;
-extern PXENV_EXIT_t pxenv_udp_open ( struct s_PXENV_UDP_OPEN *udp_open );
-
/** @} */ /* pxenv_udp_open */
/** @defgroup pxenv_udp_close PXENV_UDP_CLOSE
@@ -769,8 +738,6 @@ struct s_PXENV_UDP_CLOSE {
typedef struct s_PXENV_UDP_CLOSE PXENV_UDP_CLOSE_t;
-extern PXENV_EXIT_t pxenv_udp_close ( struct s_PXENV_UDP_CLOSE *udp_close );
-
/** @} */ /* pxenv_udp_close */
/** @defgroup pxenv_udp_write PXENV_UDP_WRITE
@@ -796,8 +763,6 @@ struct s_PXENV_UDP_WRITE {
typedef struct s_PXENV_UDP_WRITE PXENV_UDP_WRITE_t;
-extern PXENV_EXIT_t pxenv_udp_write ( struct s_PXENV_UDP_WRITE *udp_write );
-
/** @} */ /* pxenv_udp_write */
/** @defgroup pxenv_udp_read PXENV_UDP_READ
@@ -823,8 +788,6 @@ struct s_PXENV_UDP_READ {
typedef struct s_PXENV_UDP_READ PXENV_UDP_READ_t;
-extern PXENV_EXIT_t pxenv_udp_read ( struct s_PXENV_UDP_READ *udp_read );
-
/** @} */ /* pxenv_udp_read */
/** @} */ /* pxe_udp_api */
@@ -860,9 +823,6 @@ struct s_PXENV_UNDI_STARTUP {
typedef struct s_PXENV_UNDI_STARTUP PXENV_UNDI_STARTUP_t;
-extern PXENV_EXIT_t pxenv_undi_startup ( struct s_PXENV_UNDI_STARTUP
- *undi_startup );
-
/** @} */ /* pxenv_undi_startup */
/** @defgroup pxenv_undi_cleanup PXENV_UNDI_CLEANUP
@@ -882,9 +842,6 @@ struct s_PXENV_UNDI_CLEANUP {
typedef struct s_PXENV_UNDI_CLEANUP PXENV_UNDI_CLEANUP_t;
-extern PXENV_EXIT_t pxenv_undi_cleanup ( struct s_PXENV_UNDI_CLEANUP
- *undi_cleanup );
-
/** @} */ /* pxenv_undi_cleanup */
/** @defgroup pxenv_undi_initialize PXENV_UNDI_INITIALIZE
@@ -913,9 +870,6 @@ struct s_PXENV_UNDI_INITIALIZE {
typedef struct s_PXENV_UNDI_INITIALIZE PXENV_UNDI_INITIALIZE_t;
-extern PXENV_EXIT_t pxenv_undi_initialize ( struct s_PXENV_UNDI_INITIALIZE
- *undi_initialize );
-
/** @} */ /* pxenv_undi_initialize */
/** @defgroup pxenv_undi_reset_adapter PXENV_UNDI_RESET_ADAPTER
@@ -950,9 +904,6 @@ struct s_PXENV_UNDI_RESET {
typedef struct s_PXENV_UNDI_RESET PXENV_UNDI_RESET_t;
-extern PXENV_EXIT_t pxenv_undi_reset_adapter ( struct s_PXENV_UNDI_RESET
- *undi_reset_adapter );
-
/** @} */ /* pxenv_undi_reset_adapter */
/** @defgroup pxenv_undi_shutdown PXENV_UNDI_SHUTDOWN
@@ -972,9 +923,6 @@ struct s_PXENV_UNDI_SHUTDOWN {
typedef struct s_PXENV_UNDI_SHUTDOWN PXENV_UNDI_SHUTDOWN_t;
-extern PXENV_EXIT_t pxenv_undi_shutdown ( struct s_PXENV_UNDI_SHUTDOWN
- *undi_shutdown );
-
/** @} */ /* pxenv_undi_shutdown */
/** @defgroup pxenv_undi_open PXENV_UNDI_OPEN
@@ -1024,8 +972,6 @@ struct s_PXENV_UNDI_OPEN {
typedef struct s_PXENV_UNDI_OPEN PXENV_UNDI_OPEN_t;
-extern PXENV_EXIT_t pxenv_undi_open ( struct s_PXENV_UNDI_OPEN *undi_open );
-
/** @} */ /* pxenv_undi_open */
/** @defgroup pxenv_undi_close PXENV_UNDI_CLOSE
@@ -1045,8 +991,6 @@ struct s_PXENV_UNDI_CLOSE {
typedef struct s_PXENV_UNDI_CLOSE PXENV_UNDI_CLOSE_t;
-extern PXENV_EXIT_t pxenv_undi_close ( struct s_PXENV_UNDI_CLOSE *undi_close );
-
/** @} */ /* pxenv_undi_close */
/** @defgroup pxenv_undi_transmit PXENV_UNDI_TRANSMIT
@@ -1122,9 +1066,6 @@ struct s_PXENV_UNDI_TRANSMIT {
typedef struct s_PXENV_UNDI_TRANSMIT PXENV_UNDI_TRANSMIT_t;
-extern PXENV_EXIT_t pxenv_undi_transmit ( struct s_PXENV_UNDI_TRANSMIT
- *undi_transmit );
-
/** @} */ /* pxenv_undi_transmit */
/** @defgroup pxenv_undi_set_mcast_address PXENV_UNDI_SET_MCAST_ADDRESS
@@ -1146,9 +1087,6 @@ struct s_PXENV_UNDI_SET_MCAST_ADDRESS {
typedef struct s_PXENV_UNDI_SET_MCAST_ADDRESS PXENV_UNDI_SET_MCAST_ADDRESS_t;
-extern PXENV_EXIT_t pxenv_undi_set_mcast_address (
- struct s_PXENV_UNDI_SET_MCAST_ADDRESS *undi_set_mcast_address );
-
/** @} */ /* pxenv_undi_set_mcast_address */
/** @defgroup pxenv_undi_set_station_address PXENV_UNDI_SET_STATION_ADDRESS
@@ -1169,9 +1107,6 @@ struct s_PXENV_UNDI_SET_STATION_ADDRESS {
typedef struct s_PXENV_UNDI_SET_STATION_ADDRESS PXENV_UNDI_SET_STATION_ADDRESS_t;
-extern PXENV_EXIT_t pxenv_undi_set_station_address (
- struct s_PXENV_UNDI_SET_STATION_ADDRESS *undi_set_station_address );
-
/** @} */ /* pxenv_undi_set_station_address */
/** @defgroup pxenv_undi_set_packet_filter PXENV_UNDI_SET_PACKET_FILTER
@@ -1202,9 +1137,6 @@ struct s_PXENV_UNDI_SET_PACKET_FILTER {
typedef struct s_PXENV_UNDI_SET_PACKET_FILTER PXENV_UNDI_SET_PACKET_FILTER_t;
-extern PXENV_EXIT_t pxenv_undi_set_packet_filter (
- struct s_PXENV_UNDI_SET_PACKET_FILTER *undi_set_packet_filter );
-
/** @} */ /* pxenv_undi_set_packet_filter */
/** @defgroup pxenv_undi_get_information PXENV_UNDI_GET_INFORMATION
@@ -1248,9 +1180,6 @@ struct s_PXENV_UNDI_GET_INFORMATION {
typedef struct s_PXENV_UNDI_GET_INFORMATION PXENV_UNDI_GET_INFORMATION_t;
-extern PXENV_EXIT_t pxenv_undi_get_information (
- struct s_PXENV_UNDI_GET_INFORMATION *undi_get_information );
-
/** @} */ /* pxenv_undi_get_information */
/** @defgroup pxenv_undi_get_statistics PXENV_UNDI_GET_STATISTICS
@@ -1274,9 +1203,6 @@ struct s_PXENV_UNDI_GET_STATISTICS {
typedef struct s_PXENV_UNDI_GET_STATISTICS PXENV_UNDI_GET_STATISTICS_t;
-extern PXENV_EXIT_t pxenv_undi_get_statistics (
- struct s_PXENV_UNDI_GET_STATISTICS *undi_get_statistics );
-
/** @} */ /* pxenv_undi_get_statistics */
/** @defgroup pxenv_undi_clear_statistics PXENV_UNDI_CLEAR_STATISTICS
@@ -1296,9 +1222,6 @@ struct s_PXENV_UNDI_CLEAR_STATISTICS {
typedef struct s_PXENV_UNDI_CLEAR_STATISTICS PXENV_UNDI_CLEAR_STATISTICS_t;
-extern PXENV_EXIT_t pxenv_undi_clear_statistics (
- struct s_PXENV_UNDI_CLEAR_STATISTICS *undi_clear_statistics );
-
/** @} */ /* pxenv_undi_clear_statistics */
/** @defgroup pxenv_undi_initiate_diags PXENV_UNDI_INITIATE_DIAGS
@@ -1318,9 +1241,6 @@ struct s_PXENV_UNDI_INITIATE_DIAGS {
typedef struct s_PXENV_UNDI_INITIATE_DIAGS PXENV_UNDI_INITIATE_DIAGS_t;
-extern PXENV_EXIT_t pxenv_undi_initiate_diags (
- struct s_PXENV_UNDI_INITIATE_DIAGS *undi_initiate_diags );
-
/** @} */ /* pxenv_undi_initiate_diags */
/** @defgroup pxenv_undi_force_interrupt PXENV_UNDI_FORCE_INTERRUPT
@@ -1340,9 +1260,6 @@ struct s_PXENV_UNDI_FORCE_INTERRUPT {
typedef struct s_PXENV_UNDI_FORCE_INTERRUPT PXENV_UNDI_FORCE_INTERRUPT_t;
-extern PXENV_EXIT_t pxenv_undi_force_interrupt (
- struct s_PXENV_UNDI_FORCE_INTERRUPT *undi_force_interrupt );
-
/** @} */ /* pxenv_undi_force_interrupt */
/** @defgroup pxenv_undi_get_mcast_address PXENV_UNDI_GET_MCAST_ADDRESS
@@ -1364,9 +1281,6 @@ struct s_PXENV_UNDI_GET_MCAST_ADDRESS {
typedef struct s_PXENV_UNDI_GET_MCAST_ADDRESS PXENV_UNDI_GET_MCAST_ADDRESS_t;
-extern PXENV_EXIT_t pxenv_undi_get_mcast_address (
- struct s_PXENV_UNDI_GET_MCAST_ADDRESS *undi_get_mcast_address );
-
/** @} */ /* pxenv_undi_get_mcast_address */
/** @defgroup pxenv_undi_get_nic_type PXENV_UNDI_GET_NIC_TYPE
@@ -1427,9 +1341,6 @@ struct s_PXENV_UNDI_GET_NIC_TYPE {
typedef struct s_PXENV_UNDI_GET_NIC_TYPE PXENV_UNDI_GET_NIC_TYPE_t;
-extern PXENV_EXIT_t pxenv_undi_get_nic_type (
- struct s_PXENV_UNDI_GET_NIC_TYPE *undi_get_nic_type );
-
/** @} */ /* pxenv_undi_get_nic_type */
/** @defgroup pxenv_undi_get_iface_info PXENV_UNDI_GET_IFACE_INFO
@@ -1488,9 +1399,6 @@ struct s_PXENV_UNDI_GET_IFACE_INFO {
typedef struct s_PXENV_UNDI_GET_IFACE_INFO PXENV_UNDI_GET_IFACE_INFO_t;
-extern PXENV_EXIT_t pxenv_undi_get_iface_info (
- struct s_PXENV_UNDI_GET_IFACE_INFO *undi_get_iface_info );
-
/** @} */ /* pxenv_undi_get_iface_info */
/** @defgroup pxenv_undi_get_state PXENV_UNDI_GET_STATE
@@ -1524,9 +1432,6 @@ struct s_PXENV_UNDI_GET_STATE {
typedef struct s_PXENV_UNDI_GET_STATE PXENV_UNDI_GET_STATE_t;
-extern PXENV_EXIT_t pxenv_undi_get_state ( struct s_PXENV_UNDI_GET_STATE
- *undi_get_state );
-
/** @} */ /* pxenv_undi_get_state */
/** @defgroup pxenv_undi_isr PXENV_UNDI_ISR
@@ -1595,8 +1500,6 @@ struct s_PXENV_UNDI_ISR {
typedef struct s_PXENV_UNDI_ISR PXENV_UNDI_ISR_t;
-extern PXENV_EXIT_t pxenv_undi_isr ( struct s_PXENV_UNDI_ISR *undi_isr );
-
/** @} */ /* pxenv_undi_isr */
/** @} */ /* pxe_undi_api */
@@ -1628,8 +1531,6 @@ struct s_PXENV_FILE_OPEN {
typedef struct s_PXENV_FILE_OPEN PXENV_FILE_OPEN_t;
-extern PXENV_EXIT_t pxenv_file_open ( struct s_PXENV_FILE_OPEN *file_open );
-
/** @} */ /* pxenv_file_open */
/** @defgroup pxenv_file_close PXENV_FILE_CLOSE
@@ -1650,9 +1551,6 @@ struct s_PXENV_FILE_CLOSE {
typedef struct s_PXENV_FILE_CLOSE PXENV_FILE_CLOSE_t;
-extern PXENV_EXIT_t pxenv_file_close ( struct s_PXENV_FILE_CLOSE
- *file_close );
-
/** @} */ /* pxenv_file_close */
/** @defgroup pxenv_file_select PXENV_FILE_SELECT
@@ -1677,9 +1575,6 @@ struct s_PXENV_FILE_SELECT {
typedef struct s_PXENV_FILE_SELECT PXENV_FILE_SELECT_t;
-extern PXENV_EXIT_t pxenv_file_select ( struct s_PXENV_FILE_SELECT
- *file_select );
-
/** @} */ /* pxenv_file_select */
/** @defgroup pxenv_file_read PXENV_FILE_READ
@@ -1702,8 +1597,6 @@ struct s_PXENV_FILE_READ {
typedef struct s_PXENV_FILE_READ PXENV_FILE_READ_t;
-extern PXENV_EXIT_t pxenv_file_read ( struct s_PXENV_FILE_READ *file_read );
-
/** @} */ /* pxenv_file_read */
/** @defgroup pxenv_get_file_size PXENV_GET_FILE_SIZE
@@ -1725,9 +1618,6 @@ struct s_PXENV_GET_FILE_SIZE {
typedef struct s_PXENV_GET_FILE_SIZE PXENV_GET_FILE_SIZE_t;
-extern PXENV_EXIT_t pxenv_get_file_size ( struct s_PXENV_GET_FILE_SIZE
- *get_file_size );
-
/** @} */ /* pxenv_get_file_size */
/** @defgroup pxenv_file_exec PXENV_FILE_EXEC
@@ -1748,8 +1638,6 @@ struct s_PXENV_FILE_EXEC {
typedef struct s_PXENV_FILE_EXEC PXENV_FILE_EXEC_t;
-extern PXENV_EXIT_t pxenv_file_exec ( struct s_PXENV_FILE_EXEC *file_exec );
-
/** @} */ /* pxenv_file_exec */
/** @defgroup pxenv_file_api_check PXENV_FILE_API_CHECK
@@ -1774,8 +1662,6 @@ struct s_PXENV_FILE_API_CHECK {
typedef struct s_PXENV_FILE_API_CHECK PXENV_FILE_API_CHECK_t;
-extern PXENV_EXIT_t pxenv_file_api_check ( struct s_PXENV_FILE_API_CHECK *file_api_check );
-
/** @} */ /* pxenv_file_api_check */
/** @defgroup pxenv_file_exit_hook PXENV_FILE_EXIT_HOOK
@@ -1796,8 +1682,6 @@ struct s_PXENV_FILE_EXIT_HOOK {
typedef struct s_PXENV_FILE_EXIT_HOOK PXENV_FILE_EXIT_HOOK_t;
-extern PXENV_EXIT_t pxenv_file_exit_hook ( struct s_PXENV_FILE_EXIT_HOOK *file_exit_hook );
-
/** @} */ /* pxenv_file_exit_hook */
/** @} */ /* pxe_file_api */
@@ -1847,8 +1731,6 @@ struct s_UNDI_LOADER {
typedef struct s_UNDI_LOADER UNDI_LOADER_t;
-extern PXENV_EXIT_t undi_loader ( struct s_UNDI_LOADER *undi_loader );
-
/** @} */ /* pxe_loader_api */
/** @} */ /* pxe */