diff options
author | Tobias Klauser <tklauser@distanz.ch> | 2010-11-10 17:10:07 +0100 |
---|---|---|
committer | Tobias Klauser <tklauser@distanz.ch> | 2010-11-10 17:10:07 +0100 |
commit | 3cb7c05906b8eb8e884013b441f352256fded011 (patch) | |
tree | 4061936126e43746ed5d6157ead0eb778b256beb /image.h | |
parent | 32f507ce5f66dd9c89a45854688f46bde33c5e3d (diff) |
First bunch of rework, stil work in progress
Diffstat (limited to 'image.h')
-rw-r--r-- | image.h | 37 |
1 files changed, 37 insertions, 0 deletions
@@ -0,0 +1,37 @@ +/* + */ + +#ifndef _IMAGE_H_ +#define _IMAGE_H_ + +extern int image_load(const char *image_path, int image_format, uint8_t *mem_base, size_t mem_size); + +/* Image file loader functions */ +typedef int (*loader_func_t)(FILE *, const char *, uint8_t *, size_t); +extern int srec_load(FILE *fp, const char *name, uint8_t *mem_base, size_t mem_size); +extern int elf_load(FILE *fp, const char *name, uint8_t *mem_base, size_t mem_size); + +enum { + FORMAT_SREC, + FORMAT_ELF, +}; + +static inline char *image_format_str(int format) +{ + char *ret; + + switch (format) { + case FORMAT_SREC: + ret = "SREC"; + break; + case FORMAT_ELF: + ret = "ELF"; + break; + default: + ret = "<invalid format>"; + } + + return ret; +} + +#endif /* _IMAGE_H_ */ |