1234567891011121314151617181920212223242526272829303132333435 |
- /*
- * Architecture-specific portion of pxe.h for Etherboot
- *
- * This file has to define the types SEGOFF16_t, SEGDESC_t and
- * SEGSEL_t for use in other PXE structures. See pxe.h for details.
- */
-
- #ifndef PXE_TYPES_H
- #define PXE_TYPES_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_TYPES_H */
|