diff --git a/src/arch/i386/image/bzimage.c b/src/arch/i386/image/bzimage.c index bc947769..5ca3aafd 100644 --- a/src/arch/i386/image/bzimage.c +++ b/src/arch/i386/image/bzimage.c @@ -430,7 +430,7 @@ static int bzimage_write_header ( struct image *image __unused, struct bzimage_cmdline cmdline; /* Update the header and copy it into the loaded kernel */ - bzhdr->type_of_loader = BZI_LOADER_TYPE_ETHERBOOT; + bzhdr->type_of_loader = BZI_LOADER_TYPE_GPXE; if ( bzhdr->version >= 0x0201 ) { bzhdr->heap_end_ptr = ( load_ctx->rm_heap - 0x200 ); bzhdr->loadflags |= BZI_CAN_USE_HEAP; diff --git a/src/arch/i386/include/bzimage.h b/src/arch/i386/include/bzimage.h index e536b6e8..f443fae7 100644 --- a/src/arch/i386/include/bzimage.h +++ b/src/arch/i386/include/bzimage.h @@ -71,7 +71,13 @@ struct bzimage_header { #define BZI_SIGNATURE 0x53726448 /** bzImage boot loader identifier for Etherboot */ -#define BZI_LOADER_TYPE_ETHERBOOT 4 +#define BZI_LOADER_TYPE_ETHERBOOT 0x40 + +/** bzImage boot loader identifier for gPXE + * + * We advertise ourselves as Etherboot version 6. + */ +#define BZI_LOADER_TYPE_GPXE ( BZI_LOADER_TYPE_ETHERBOOT | 0x06 ) /** bzImage "load high" flag */ #define BZI_LOAD_HIGH 0x01