mirror of
https://github.com/xcat2/xNBA.git
synced 2024-12-15 07:41:45 +00:00
824d6ffa7f
I want to get to the point where any header in include/ reflects a standard user-level header (e.g. a POSIX header), while everything that's specific to gPXE lives in include/gpxe/. Headers that reflect a Linux header (e.g. if_ether.h) should also be in include/gpxe/, with the same name as the Linux header and, preferably, the same names used for the definitions.
27 lines
635 B
C
27 lines
635 B
C
#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(image)
|
|
#define __image __table(image,01)
|
|
#define __default_image __table(image,02)
|
|
#define __image_end __table_end(image)
|
|
|
|
/* Functions in image.c */
|
|
|
|
extern void print_images ( void );
|
|
extern int autoload ( struct dev *dev, struct image **image, void **context );
|
|
|
|
#endif /* IMAGE_H */
|