c2965b0fe7
pxe_init_structures() fills in the fields of the !PXE and PXENV+ structures that aren't known until gPXE starts up. Once gPXE is started, these values will never change. Make pxe_init_structures() an initialisation function so that PXE users don't have to worry about calling it.
37 lines
790 B
C
37 lines
790 B
C
#ifndef _PXE_CALL_H
|
|
#define _PXE_CALL_H
|
|
|
|
/** @file
|
|
*
|
|
* PXE API entry point
|
|
*/
|
|
|
|
FILE_LICENCE ( GPL2_OR_LATER );
|
|
|
|
#include <pxe_api.h>
|
|
#include <realmode.h>
|
|
|
|
/** PXE load address segment */
|
|
#define PXE_LOAD_SEGMENT 0
|
|
|
|
/** PXE load address offset */
|
|
#define PXE_LOAD_OFFSET 0x7c00
|
|
|
|
/** PXE physical load address */
|
|
#define PXE_LOAD_PHYS ( ( PXE_LOAD_SEGMENT << 4 ) + PXE_LOAD_OFFSET )
|
|
|
|
/** !PXE structure */
|
|
extern struct s_PXE __text16 ( ppxe );
|
|
#define ppxe __use_text16 ( ppxe )
|
|
|
|
/** PXENV+ structure */
|
|
extern struct s_PXENV __text16 ( pxenv );
|
|
#define pxenv __use_text16 ( pxenv )
|
|
|
|
extern void pxe_hook_int1a ( void );
|
|
extern int pxe_unhook_int1a ( void );
|
|
extern int pxe_start_nbp ( void );
|
|
extern __asmcall void pxe_api_call ( struct i386_all_regs *ix86 );
|
|
|
|
#endif /* _PXE_CALL_H */
|