diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2018-07-09 08:21:04 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2018-07-09 08:21:04 +0200 |
commit | 0e8bd85d9b2f981ad24847badda70c73397d8385 (patch) | |
tree | ad0e96ae3da29ab5c5797d99555d280e9b4d5d14 /include | |
parent | b5ba232df1cf1fd68bd2d7dfb0f3f70f11903c99 (diff) | |
parent | a54a47ff7710d12e5a6c88953b3da85cc162c1ea (diff) | |
download | barebox-0e8bd85d9b2f981ad24847badda70c73397d8385.tar.gz barebox-0e8bd85d9b2f981ad24847badda70c73397d8385.tar.xz |
Merge branch 'for-next/bootm'
Diffstat (limited to 'include')
-rw-r--r-- | include/bootm.h | 5 | ||||
-rw-r--r-- | include/elf.h | 10 | ||||
-rw-r--r-- | include/filetype.h | 1 |
3 files changed, 14 insertions, 2 deletions
diff --git a/include/bootm.h b/include/bootm.h index 62951d6058..fdc73f711a 100644 --- a/include/bootm.h +++ b/include/bootm.h @@ -78,7 +78,6 @@ struct image_data { void *fit_config; struct device_node *of_root_node; - struct fdt_header *oftree; struct resource *oftree_res; /* @@ -126,7 +125,9 @@ int bootm_load_os(struct image_data *data, unsigned long load_address); bool bootm_has_initrd(struct image_data *data); int bootm_load_initrd(struct image_data *data, unsigned long load_address); -int bootm_load_devicetree(struct image_data *data, unsigned long load_address); +void *bootm_get_devicetree(struct image_data *data); +int bootm_load_devicetree(struct image_data *data, void *fdt, + unsigned long load_address); int bootm_get_os_size(struct image_data *data); enum bootm_verify bootm_get_verify_mode(void); diff --git a/include/elf.h b/include/elf.h index ebcec7db0d..92c8d9c127 100644 --- a/include/elf.h +++ b/include/elf.h @@ -2,6 +2,7 @@ #define _LINUX_ELF_H #include <linux/types.h> +#include <linux/list.h> //#include <linux/auxvec.h> //#include <linux/elf-em.h> #include <asm/elf.h> @@ -397,4 +398,13 @@ static inline void arch_write_notes(struct file *file) { } #define ELF_CORE_WRITE_EXTRA_NOTES arch_write_notes(file) #endif /* ARCH_HAVE_EXTRA_ELF_NOTES */ +struct elf_image { + struct list_head list; + unsigned long entry; + void *buf; +}; + +struct elf_image *elf_load_image(void *buf); +void elf_release_image(struct elf_image *elf); + #endif /* _LINUX_ELF_H */ diff --git a/include/filetype.h b/include/filetype.h index d9963a2449..237ed3fbe9 100644 --- a/include/filetype.h +++ b/include/filetype.h @@ -42,6 +42,7 @@ enum filetype { filetype_kwbimage_v1, filetype_android_sparse, filetype_arm64_linux_image, + filetype_elf, filetype_max, }; |