Zephyr Project API 3.5.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
loader.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2023 Intel Corporation
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#ifndef ZEPHYR_LLEXT_LOADER_H
8#define ZEPHYR_LLEXT_LOADER_H
9
10#include <zephyr/llext/elf.h>
11#include <stddef.h>
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
44
62 int (*read)(struct llext_loader *ldr, void *out, size_t len);
63
76 int (*seek)(struct llext_loader *s, size_t pos);
77
79 elf_ehdr_t hdr;
81 uint32_t *sect_map;
82 uint32_t sect_cnt;
83 uint32_t sym_cnt;
85};
86
91#ifdef __cplusplus
92}
93#endif
94
95#endif /* ZEPHYR_LLEXT_LOADER_H */
irp nz macro MOVR cc s mov cc s endm endr irp aw macro LDR aa s
Definition asm-macro-32-bit-gnu.h:17
llext_section
Enum of sections for lookup tables.
Definition loader.h:27
@ LLEXT_SECT_STRTAB
Definition loader.h:39
@ LLEXT_SECT_REL_TEXT
Definition loader.h:33
@ LLEXT_SECT_RODATA
Definition loader.h:30
@ LLEXT_SECT_REL_DATA
Definition loader.h:34
@ LLEXT_SECT_COUNT
Definition loader.h:42
@ LLEXT_SECT_REL_BSS
Definition loader.h:36
@ LLEXT_SECT_DATA
Definition loader.h:29
@ LLEXT_SECT_TEXT
Definition loader.h:28
@ LLEXT_SECT_REL_RODATA
Definition loader.h:35
@ LLEXT_SECT_SHSTRTAB
Definition loader.h:40
@ LLEXT_SECT_BSS
Definition loader.h:31
@ LLEXT_SECT_SYMTAB
Definition loader.h:38
static int pos
Definition printk.c:11
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
ELF Header(64-bit)
Definition elf.h:103
Section Header(64-bit)
Definition elf.h:175
Linkable loadable extension loader context.
Definition loader.h:48
int(* seek)(struct llext_loader *s, size_t pos)
Seek to a new absolute location.
Definition loader.h:76
int(* read)(struct llext_loader *ldr, void *out, size_t len)
Read (copy) from the loader.
Definition loader.h:62