mirror of
https://github.com/ipxe/ipxe
synced 2025-12-19 11:00:27 +03:00
Split PXE code into preboot, udp, tftp, undi and loader units.
PXE code now compiles without errors (though it won't actually work).
This commit is contained in:
@@ -13,7 +13,6 @@
|
||||
|
||||
#include "etherboot.h"
|
||||
#include "pxe_callbacks.h"
|
||||
#include "pxe_export.h"
|
||||
#include "pxe.h"
|
||||
|
||||
unsigned long pxe_load_offset;
|
||||
|
||||
@@ -8,28 +8,10 @@
|
||||
#ifndef PXE_ADDR_H
|
||||
#define PXE_ADDR_H
|
||||
|
||||
/* SEGOFF16_t defined in separate header
|
||||
*/
|
||||
#include "realmode.h"
|
||||
typedef segoff_t I386_SEGOFF16_t;
|
||||
#define SEGOFF16_t I386_SEGOFF16_t
|
||||
|
||||
#define IS_NULL_SEGOFF16(x) ( ( (x).segment == 0 ) && ( (x).offset == 0 ) )
|
||||
#define SEGOFF16_TO_PTR(x) ( VIRTUAL( (x).segment, (x).offset ) )
|
||||
#define PTR_TO_SEGOFF16(ptr,segoff16) \
|
||||
(segoff16).segment = SEGMENT(ptr); \
|
||||
(segoff16).offset = OFFSET(ptr);
|
||||
|
||||
typedef struct {
|
||||
uint16_t Seg_Addr;
|
||||
uint32_t Phy_Addr;
|
||||
uint16_t Seg_Size;
|
||||
} PACKED I386_SEGDESC_t; /* PACKED is required, otherwise gcc pads
|
||||
* this out to 12 bytes -
|
||||
* mbrown@fensystems.co.uk (mcb30) 17/5/03 */
|
||||
#define SEGDESC_t I386_SEGDESC_t
|
||||
|
||||
typedef uint16_t I386_SEGSEL_t;
|
||||
#define SEGSEL_t I386_SEGSEL_t
|
||||
|
||||
#endif /* PXE_ADDR_H */
|
||||
|
||||
@@ -5,12 +5,12 @@
|
||||
#define PXE_CALLBACKS_H
|
||||
|
||||
#include "etherboot.h"
|
||||
#include "pxe.h"
|
||||
#include "pxe_types.h"
|
||||
|
||||
typedef struct {
|
||||
segoff_t orig_retaddr;
|
||||
uint16_t opcode;
|
||||
segoff_t segoff;
|
||||
SEGOFF16_t orig_retaddr;
|
||||
UINT16_t opcode;
|
||||
SEGOFF16_t segoff;
|
||||
} PACKED pxe_call_params_t;
|
||||
|
||||
/*
|
||||
@@ -22,7 +22,7 @@ typedef struct {
|
||||
|
||||
/* Function prototypes
|
||||
*/
|
||||
extern pxe_stack_t * install_pxe_stack ( void *base );
|
||||
extern struct pxe_stack * install_pxe_stack ( void *base );
|
||||
extern void use_undi_ds_for_rm_stack ( uint16_t ds );
|
||||
extern int hook_pxe_stack ( void );
|
||||
extern int unhook_pxe_stack ( void );
|
||||
|
||||
Reference in New Issue
Block a user