|
iPXE
|
#include "realmode.h"Go to the source code of this file.
Macros | |
| #define | __data16(variable) |
| #define | __data16_array(variable, array) |
| #define | __bss16(variable) |
| #define | __bss16_array(variable, array) |
| #define | __text16(variable) |
| #define | __text16_array(variable, array) |
| #define | __use_data16(variable) |
| #define | __use_text16(variable) |
| #define | __from_data16(pointer) |
| #define | __from_text16(pointer) |
| #define | rm_cs ( _rm_cs() ) |
| #define | rm_ds ( _rm_ds() ) |
| #define | copy_to_real copy_to_real_libkir |
| #define | copy_from_real copy_from_real_libkir |
| #define | put_real_kir_const_off(var, seg, off) |
| #define | put_real_kir_nonconst_off(var, seg, off) |
| #define | put_real_kir(var, seg, off) |
| #define | get_real_kir_const_off(var, seg, off) |
| #define | get_real_kir_nonconst_off(var, seg, off) |
| #define | get_real_kir(var, seg, off) |
| #define | put_real put_real_kir |
| #define | get_real get_real_kir |
| #define | TEXT16_CODE(asm_code_str) |
| #define | REAL_CODE(asm_code_str) |
Typedefs | |
| typedef uint32_t | userptr_t |
| A pointer to a user buffer. | |
Functions | |
| static | __attribute__ ((always_inline)) void copy_to_user(userptr_t buffer |
| Copy data to user buffer. | |
| static void | copy_to_real_libkir (unsigned int dest_seg, unsigned int dest_off, const void *src, size_t n) |
| static void | copy_from_real_libkir (void *dest, unsigned int src_seg, unsigned int src_off, size_t n) |
Variables | |
| static off_t | offset |
| static off_t const void * | src |
| static off_t const void size_t | len |
| static userptr_t | buffer |
| #define __data16 | ( | variable | ) |
Definition at line 14 of file libkir.h.
Referenced by __data16(), __data16(), __data16(), __data16(), __data16(), __data16(), __data16(), and __data16().
| #define __data16_array | ( | variable, | |
| array ) |
| #define __bss16 | ( | variable | ) |
| #define __bss16_array | ( | variable, | |
| array ) |
Definition at line 17 of file libkir.h.
Referenced by __bss16_array(), __bss16_array(), and __bss16_array().
| #define __text16 | ( | variable | ) |
Definition at line 18 of file libkir.h.
Referenced by __attribute__(), __text16(), __text16(), __text16(), __text16(), __text16(), __text16(), __text16(), __text16(), and __text16().
| #define __text16_array | ( | variable, | |
| array ) |
| #define __from_data16 | ( | pointer | ) |
Definition at line 22 of file libkir.h.
Referenced by int13_get_parameters(), int13_install(), int13_load_eltorito(), int13con_rw(), int22(), meme820(), nbi_boot16(), pxenv_get_cached_info(), pxenv_undi_isr(), undi_load(), undinet_call(), undinet_transmit(), vesafb_mode_info(), and vesafb_mode_list().
| #define __from_text16 | ( | pointer | ) |
Definition at line 23 of file libkir.h.
Referenced by int22(), pxe_activate(), pxe_start_nbp(), and undi_loader().
| #define rm_cs ( _rm_cs() ) |
Definition at line 38 of file libkir.h.
Referenced by __text16(), hide_etherboot(), hook_bios_interrupt(), int22(), pxe_init_structures(), pxe_start_nbp(), undi_loader(), and unhook_bios_interrupt().
| #define rm_ds ( _rm_ds() ) |
Definition at line 39 of file libkir.h.
Referenced by __text16(), hide_etherboot(), int13_get_parameters(), int13_install(), int13con_rw(), int22(), pxe_init_structures(), pxe_start_nbp(), pxenv_get_cached_info(), pxenv_undi_isr(), setup_sipi(), undinet_call(), and undinet_transmit().
| #define copy_to_real copy_to_real_libkir |
Definition at line 78 of file libkir.h.
Referenced by hook_bios_interrupt(), int13_cdrom_status_terminate(), int13_get_extended_parameters(), setup_sipi(), and unhook_bios_interrupt().
| #define copy_from_real copy_from_real_libkir |
Definition at line 79 of file libkir.h.
Referenced by check_bios_interrupts(), hook_bios_interrupt(), int13_cdrom_read_boot_catalog(), int13_extended_rw(), int13_extended_seek(), int13_extended_verify(), int13con_init(), is_pnp_bios(), pxenv_undi_transmit(), undi_load(), undinet_poll(), undirom_parse_pcirheader(), undirom_parse_pxeromid(), undirom_probe(), and unhook_bios_interrupt().
| #define put_real_kir_const_off | ( | var, | |
| seg, | |||
| off ) |
Definition at line 98 of file libkir.h.
| #define put_real_kir_nonconst_off | ( | var, | |
| seg, | |||
| off ) |
Definition at line 107 of file libkir.h.
| #define put_real_kir | ( | var, | |
| seg, | |||
| off ) |
Definition at line 116 of file libkir.h.
| #define get_real_kir_const_off | ( | var, | |
| seg, | |||
| off ) |
Definition at line 124 of file libkir.h.
| #define get_real_kir_nonconst_off | ( | var, | |
| seg, | |||
| off ) |
Definition at line 133 of file libkir.h.
| #define get_real_kir | ( | var, | |
| seg, | |||
| off ) |
Definition at line 142 of file libkir.h.
| #define put_real put_real_kir |
Definition at line 150 of file libkir.h.
Referenced by bios_currticks(), bios_reboot(), int13_extended_rw(), int13_sync_num_drives(), set_fbms(), and undi_unload().
| #define get_real get_real_kir |
Definition at line 151 of file libkir.h.
Referenced by bios_currticks(), bios_getchar(), bios_handle_dectcem_set(), get_fbms(), int13_check_num_drives(), int13_extended_rw(), int13_get_extended_parameters(), int13_load_mbr(), int13_sync_num_drives(), and rsdp_find_rsdt().
| #define TEXT16_CODE | ( | asm_code_str | ) |
Definition at line 217 of file libkir.h.
Referenced by _dump_regs(), bios_inject_startup(), fake_e820(), hook_comboot_interrupts(), int13_hook_vector(), and rtc_hook_isr().
| #define REAL_CODE | ( | asm_code_str | ) |
Definition at line 226 of file libkir.h.
Referenced by apm_poweroff(), bios_getchar(), bios_handle_cup(), bios_handle_dectcem_reset(), bios_handle_dectcem_set(), bios_handle_ed(), bios_inject(), bios_iskey(), bios_putchar(), bios_reboot(), bzimage_exec(), call_bootsector(), com32_cfarcall(), com32_farcall(), com32_intcall(), comboot_exec_loop(), comboot_force_text_mode(), extmemsize_88(), extmemsize_e801(), int13_load_eltorito(), int13_load_mbr(), int13con_init(), int13con_rw(), int22(), interrupt(), librm_test_exec(), meme820(), nbi_boot16(), pcibios_discover(), pcibios_read(), pcibios_write(), pxe_activate(), pxe_start_nbp(), rtc_get_noise(), sdi_exec(), undi_load(), undinet_call(), vesafb_font(), vesafb_init(), vesafb_mode_info(), vesafb_mode_list(), vesafb_restore(), and vesafb_set_mode().
|
inlinestatic |
Copy data to user buffer.
Convert virtual address to user buffer.
Convert segment:offset address to user buffer.
Copy data from user buffer.
| buffer | User buffer |
| offset | Offset within user buffer |
| src | Source |
| len | Length |
| dest | Destination |
| buffer | User buffer |
| offset | Offset within user buffer |
| len | Length |
| segment | Real-mode segment |
| offset | Real-mode offset |
| buffer | User buffer |
| virtual | Virtual address |
| buffer | User buffer |
This constructs a user buffer from an ordinary pointer. Use it when you need to pass a pointer to an internal buffer to a function that expects a userptr_t.
Definition at line 26 of file libkir.h.
References __asm__(), __volatile__(), and cs.
|
inlinestatic |
|
inlinestatic |
Definition at line 60 of file libkir.h.
References __asm__(), __volatile__(), dest, discard_c, discard_D, and discard_S.
| unsigned int offset |