|
iPXE
|
SYSLINUX COMBOOT (16-bit) image format. More...
#include <stdint.h>#include <stdlib.h>#include <string.h>#include <strings.h>#include <errno.h>#include <assert.h>#include <realmode.h>#include <basemem.h>#include <comboot.h>#include <ipxe/image.h>#include <ipxe/segment.h>#include <ipxe/init.h>#include <ipxe/features.h>#include <ipxe/console.h>Go to the source code of this file.
Data Structures | |
| struct | comboot_psp |
| COMBOOT PSP, copied to offset 0 of code segment. More... | |
Macros | |
| #define | COMBOOT_PSP_CMDLINE_OFFSET 0x81 |
| Offset in PSP of command line. | |
| #define | COMBOOT_MAX_CMDLINE_LEN 125 |
| Maximum length of command line in PSP (127 bytes minus space and CR) | |
Functions | |
| FILE_LICENCE (GPL2_OR_LATER) | |
| FEATURE (FEATURE_IMAGE, "COMBOOT", DHCP_EB_FEATURE_COMBOOT, 1) | |
| static void | comboot_copy_cmdline (struct image *image, void *seg) |
| Copy command line to PSP. | |
| static void | comboot_init_psp (struct image *image, void *seg) |
| Initialize PSP. | |
| static int | comboot_exec_loop (struct image *image) |
| Execute COMBOOT image. | |
| static int | comboot_identify (struct image *image) |
| Check image name extension. | |
| static int | comboot_prepare_segment (struct image *image) |
| Load COMBOOT image into memory, preparing a segment and returning it. | |
| static int | comboot_probe (struct image *image) |
| Probe COMBOOT image. | |
| static int | comboot_exec (struct image *image) |
| Execute COMBOOT image. | |
| struct image_type comboot_image_type | __image_type (PROBE_NORMAL) |
| SYSLINUX COMBOOT (16-bit) image type. | |
SYSLINUX COMBOOT (16-bit) image format.
Definition in file comboot.c.
| #define COMBOOT_PSP_CMDLINE_OFFSET 0x81 |
Offset in PSP of command line.
Definition at line 57 of file comboot.c.
Referenced by comboot_copy_cmdline().
| #define COMBOOT_MAX_CMDLINE_LEN 125 |
Maximum length of command line in PSP (127 bytes minus space and CR)
Definition at line 61 of file comboot.c.
Referenced by comboot_copy_cmdline().
| FILE_LICENCE | ( | GPL2_OR_LATER | ) |
| FEATURE | ( | FEATURE_IMAGE | , |
| "COMBOOT" | , | ||
| DHCP_EB_FEATURE_COMBOOT | , | ||
| 1 | ) |
References DHCP_EB_FEATURE_COMBOOT, and FEATURE_IMAGE.
|
static |
Copy command line to PSP.
| image | COMBOOT image |
Definition at line 69 of file comboot.c.
References cmdline, image::cmdline, COMBOOT_MAX_CMDLINE_LEN, COMBOOT_PSP_CMDLINE_OFFSET, memcpy(), seg, and strlen().
Referenced by comboot_init_psp().
|
static |
Initialize PSP.
| image | COMBOOT image |
| seg | segment to initialize |
Definition at line 98 of file comboot.c.
References comboot_copy_cmdline(), DBGC, comboot_psp::first_non_free_para, get_fbms(), comboot_psp::int20, image::name, and seg.
Referenced by comboot_exec_loop().
|
static |
Execute COMBOOT image.
| image | COMBOOT image |
| rc | Return status code |
Definition at line 124 of file comboot.c.
References __asm__(), __volatile__(), assert, COMBOOT_EXIT, COMBOOT_EXIT_COMMAND, COMBOOT_EXIT_RUN_KERNEL, comboot_force_text_mode(), comboot_init_psp(), COMBOOT_PSP_SEG, comboot_return, DBGC, hook_comboot_interrupts(), image::name, REAL_CODE, real_to_virt(), image::replacement, rmsetjmp, seg, state, unhook_comboot_interrupts(), and unregister_image().
Referenced by comboot_exec().
|
static |
Check image name extension.
| image | COMBOOT image |
| rc | Return status code |
Definition at line 210 of file comboot.c.
References DBGC, ENOEXEC, ext, image::name, strcasecmp(), and strrchr().
Referenced by comboot_probe().
|
static |
Load COMBOOT image into memory, preparing a segment and returning it.
| image | COMBOOT image |
| rc | Return status code |
Definition at line 237 of file comboot.c.
References COMBOOT_PSP_SEG, image::data, DBGC, image::len, memcpy(), memset(), memsz, image::name, prep_segment(), rc, real_to_virt(), seg, and strerror().
Referenced by comboot_exec().
|
static |
Probe COMBOOT image.
| image | COMBOOT image |
| rc | Return status code |
Definition at line 274 of file comboot.c.
References comboot_identify(), and rc.
Referenced by __image_type().
|
static |
Execute COMBOOT image.
| image | COMBOOT image |
| rc | Return status code |
Definition at line 292 of file comboot.c.
References comboot_exec_loop(), comboot_prepare_segment(), console_reset(), DBGC, ENOEXEC, image::len, image::name, and rc.
Referenced by __image_type().
| struct image_type comboot_image_type __image_type | ( | PROBE_NORMAL | ) |
SYSLINUX COMBOOT (16-bit) image type.
References __image_type, comboot_exec(), comboot_probe(), and PROBE_NORMAL.