X-Git-Url: https://git.kernelconcepts.de/?p=karo-tx-uboot.git;a=blobdiff_plain;f=include%2Fonenand_uboot.h;h=fd01040817bdda5ff1016ae290182bc52c35285a;hp=4449f987bf7ffb22adf79208b2b9b31866a3041e;hb=c0f1d684dc6851e3b647637a1fe39c8c4d4f379f;hpb=8155efbd7ae9c65564ca98affe94631d612ae088 diff --git a/include/onenand_uboot.h b/include/onenand_uboot.h index 4449f987bf..fd01040817 100644 --- a/include/onenand_uboot.h +++ b/include/onenand_uboot.h @@ -16,29 +16,39 @@ #include -struct kvec { - void *iov_base; - size_t iov_len; -}; - -typedef int spinlock_t; -typedef int wait_queue_head_t; - +/* Forward declarations */ struct mtd_info; +struct mtd_oob_ops; struct erase_info; +struct onenand_chip; + +extern struct mtd_info onenand_mtd; +extern struct onenand_chip onenand_chip; + +/* board */ +extern void onenand_board_init(struct mtd_info *); /* Functions */ extern void onenand_init(void); extern int onenand_read(struct mtd_info *mtd, loff_t from, size_t len, size_t * retlen, u_char * buf); -extern int onenand_read_oob(struct mtd_info *mtd, loff_t from, size_t len, - size_t * retlen, u_char * buf); +extern int onenand_read_oob(struct mtd_info *mtd, loff_t from, struct mtd_oob_ops *ops); extern int onenand_write(struct mtd_info *mtd, loff_t from, size_t len, size_t * retlen, const u_char * buf); extern int onenand_erase(struct mtd_info *mtd, struct erase_info *instr); -extern int onenand_unlock(struct mtd_info *mtd, loff_t ofs, size_t len); +extern char *onenand_print_device_info(int device, int version); + +extern unsigned onenand_block(struct onenand_chip *this, loff_t addr); + +extern loff_t onenand_addr(struct onenand_chip *this, int block); + +extern int flexonenand_region(struct mtd_info *mtd, loff_t addr); + +extern int flexonenand_set_boundary(struct mtd_info *mtd, int die, + int boundary, int lock); -extern void onenand_print_device_info(int device, int verbose); +/* SPL */ +void onenand_spl_load_image(uint32_t offs, uint32_t size, void *dst); #endif /* __UBOOT_ONENAND_H */