mirror of
https://github.com/xcat2/xNBA.git
synced 2025-01-18 21:43:14 +00:00
Move include/image.h to include/gpxe/image.h
This commit is contained in:
parent
d84ec0e5d5
commit
4fc9333159
@ -1,13 +1,12 @@
|
||||
#include "image.h"
|
||||
#warning "This file is obsolete"
|
||||
#if 0
|
||||
|
||||
#include "memsizes.h"
|
||||
#include "realmode.h"
|
||||
#include "gateA20.h"
|
||||
#include "etherboot.h"
|
||||
#include "errno.h"
|
||||
|
||||
#warning "This file is obsolete"
|
||||
#if 0
|
||||
|
||||
/** @file
|
||||
*
|
||||
* NBI image format.
|
||||
|
@ -8,7 +8,6 @@
|
||||
#include "etherboot.h"
|
||||
#include "dev.h"
|
||||
#include "console.h"
|
||||
#include "image.h"
|
||||
|
||||
#include "config/general.h"
|
||||
|
||||
|
@ -1,8 +1,9 @@
|
||||
#include "dev.h"
|
||||
#include <gpxe/buffer.h>
|
||||
#include "image.h"
|
||||
#include <console.h>
|
||||
|
||||
#if 0
|
||||
|
||||
static struct image images[0] __image_start;
|
||||
static struct image images_end[0] __image_end;
|
||||
|
||||
@ -18,8 +19,6 @@ void print_images ( void ) {
|
||||
}
|
||||
}
|
||||
|
||||
#if 0
|
||||
|
||||
/*
|
||||
* Identify the image format
|
||||
*
|
||||
|
@ -25,7 +25,6 @@ Literature dealing with the network protocols:
|
||||
#include "cmdline.h"
|
||||
#include "console.h"
|
||||
#include <gpxe/init.h>
|
||||
#include "image.h"
|
||||
#include <stdarg.h>
|
||||
|
||||
#include <gpxe/device.h>
|
||||
|
60
src/include/gpxe/image.h
Normal file
60
src/include/gpxe/image.h
Normal file
@ -0,0 +1,60 @@
|
||||
#ifndef _GPXE_IMAGE_H
|
||||
#define _GPXE_IMAGE_H
|
||||
|
||||
/**
|
||||
* @file
|
||||
*
|
||||
* Executable/loadable image formats
|
||||
*
|
||||
*/
|
||||
|
||||
#include <gpxe/tables.h>
|
||||
|
||||
/** An executable or loadable image */
|
||||
struct image {
|
||||
/** Raw file image */
|
||||
userptr_t image;
|
||||
/** Length of raw file image */
|
||||
size_t len;
|
||||
|
||||
/** Execute method
|
||||
*
|
||||
* Filled in by the image loader. If NULL, then the image
|
||||
* cannot be executed.
|
||||
*/
|
||||
int ( * execute ) ( struct image *image );
|
||||
/** Entry point */
|
||||
physaddr_t entry;
|
||||
};
|
||||
|
||||
/** An executable or loadable image type */
|
||||
struct image_type {
|
||||
/** Name of this image type */
|
||||
char *name;
|
||||
/** Load image into memory
|
||||
*
|
||||
* @v image Executable/loadable image
|
||||
* @ret rc Return status code
|
||||
*
|
||||
* Load the image into memory. The file image may be
|
||||
* discarded after this call; the method must preserve any
|
||||
* information it may require later (e.g. the execution
|
||||
* address) within the @c image structure.
|
||||
*/
|
||||
int ( * load ) ( struct image *image );
|
||||
};
|
||||
|
||||
/** An executable or loadable image type */
|
||||
#define __image_type __table ( struct image_type, image_types, 01 )
|
||||
|
||||
/**
|
||||
* An unverifiable executable or loadable image type
|
||||
*
|
||||
* This should be used to mark image types for which there are no
|
||||
* signature or other checks that can be used to verify the validity
|
||||
* of the image (such as PXE images). These will then be tried last
|
||||
* in the list of image types.
|
||||
*/
|
||||
#define __default_image_type __table ( struct image_type, image_types, 02 )
|
||||
|
||||
#endif /* _GPXE_IMAGE_H */
|
@ -1,26 +0,0 @@
|
||||
#ifndef IMAGE_H
|
||||
#define IMAGE_H
|
||||
|
||||
#include "stdint.h"
|
||||
#include "io.h"
|
||||
#include <gpxe/tables.h>
|
||||
#include "dev.h"
|
||||
|
||||
struct image {
|
||||
char *name;
|
||||
int ( * probe ) ( physaddr_t data, off_t len, void **context );
|
||||
int ( * load ) ( physaddr_t data, off_t len, void *context );
|
||||
int ( * boot ) ( void *context );
|
||||
};
|
||||
|
||||
#define __image_start __table_start ( struct image, image )
|
||||
#define __image __table ( struct image, image, 01 )
|
||||
#define __default_image __table ( struct image, image, 02 )
|
||||
#define __image_end __table_end ( struct image, image )
|
||||
|
||||
/* Functions in image.c */
|
||||
|
||||
extern void print_images ( void );
|
||||
extern int autoload ( struct dev *dev, struct image **image, void **context );
|
||||
|
||||
#endif /* IMAGE_H */
|
Loading…
x
Reference in New Issue
Block a user