diff options
Diffstat (limited to 'include/pbl.h')
-rw-r--r-- | include/pbl.h | 35 |
1 files changed, 16 insertions, 19 deletions
diff --git a/include/pbl.h b/include/pbl.h index f58daec735..0633e340be 100644 --- a/include/pbl.h +++ b/include/pbl.h @@ -6,32 +6,22 @@ #ifndef __PBL_H__ #define __PBL_H__ +#ifdef __PBL__ +#define IN_PBL 1 +#else +#define IN_PBL 0 +#endif + +#ifndef __ASSEMBLY__ + #include <linux/types.h> +#include <linux/compiler.h> extern unsigned long free_mem_ptr; extern unsigned long free_mem_end_ptr; void pbl_barebox_uncompress(void *dest, void *compressed_start, unsigned int len); -#ifdef __PBL__ -#define IN_PBL 1 - -struct pbl_bio { - void *priv; - int (*read)(struct pbl_bio *bio, off_t block_off, void *buf, unsigned nblocks); -}; - -static inline int pbl_bio_read(struct pbl_bio *bio, off_t block_off, - void *buf, unsigned nblocks) -{ - return bio->read(bio, block_off, buf, nblocks); -} - -ssize_t pbl_fat_load(struct pbl_bio *, const char *filename, void *dest, size_t len); -#else -#define IN_PBL 0 -#endif - void fdt_find_mem(const void *fdt, unsigned long *membase, unsigned long *memsize); struct fdt_device_id { @@ -43,4 +33,11 @@ const void * fdt_device_get_match_data(const void *fdt, const char *nodepath, const struct fdt_device_id ids[]); +int pbl_barebox_verify(const void *compressed_start, unsigned int len, + const void *hash, unsigned int hash_len); +#endif + +void __noreturn barebox_pbl_entry(ulong, ulong, void *); + + #endif /* __PBL_H__ */ |