We already have some PBL MCI implementations in barebox, but none are used for chainloading a barebox from a file system. In preparation for supporting first stage boot on SoCs where it's customary for both the BootROM and first stage bootloader to load the follow-up stage from FAT, add a very basic block I/O API that MCI drivers can implement. Signed-off-by: Ahmad Fatoum <ahmad@xxxxxx> --- include/pbl.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/pbl.h b/include/pbl.h index 787bd8293ff1..7cc162dfd039 100644 --- a/include/pbl.h +++ b/include/pbl.h @@ -7,6 +7,8 @@ #ifndef __PBL_H__ #define __PBL_H__ +#include <linux/types.h> + extern unsigned long free_mem_ptr; extern unsigned long free_mem_end_ptr; @@ -14,6 +16,10 @@ 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 int nblocks); +}; #else #define IN_PBL 0 #endif -- 2.20.1 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox