Lines Matching refs:mtd_info
48 struct mtd_info *mtd;
131 int (*ecc)(struct mtd_info *mtd, int section,
133 int (*rfree)(struct mtd_info *mtd, int section,
152 struct mtd_info { struct
234 int (*_erase) (struct mtd_info *mtd, struct erase_info *instr); argument
236 int (*_point) (struct mtd_info *mtd, loff_t from, size_t len, argument
238 int (*_unpoint) (struct mtd_info *mtd, loff_t from, size_t len); argument
240 unsigned long (*_get_unmapped_area) (struct mtd_info *mtd, argument
244 int (*_read) (struct mtd_info *mtd, loff_t from, size_t len, argument
246 int (*_write) (struct mtd_info *mtd, loff_t to, size_t len, argument
248 int (*_panic_write) (struct mtd_info *mtd, loff_t to, size_t len, argument
250 int (*_read_oob) (struct mtd_info *mtd, loff_t from, argument
252 int (*_write_oob) (struct mtd_info *mtd, loff_t to, argument
254 int (*_get_fact_prot_info) (struct mtd_info *mtd, size_t len, argument
256 int (*_read_fact_prot_reg) (struct mtd_info *mtd, loff_t from, argument
258 int (*_get_user_prot_info) (struct mtd_info *mtd, size_t len, argument
260 int (*_read_user_prot_reg) (struct mtd_info *mtd, loff_t from, argument
262 int (*_write_user_prot_reg) (struct mtd_info *mtd, loff_t to, argument
264 int (*_lock_user_prot_reg) (struct mtd_info *mtd, loff_t from, argument
267 int (*_writev) (struct mtd_info *mtd, const struct kvec *vecs, argument
270 void (*_sync) (struct mtd_info *mtd); argument
271 int (*_lock) (struct mtd_info *mtd, loff_t ofs, uint64_t len); argument
272 int (*_unlock) (struct mtd_info *mtd, loff_t ofs, uint64_t len); argument
273 int (*_is_locked) (struct mtd_info *mtd, loff_t ofs, uint64_t len); argument
274 int (*_block_isreserved) (struct mtd_info *mtd, loff_t ofs); argument
275 int (*_block_isbad) (struct mtd_info *mtd, loff_t ofs); argument
276 int (*_block_markbad) (struct mtd_info *mtd, loff_t ofs); argument
278 int (*_suspend) (struct mtd_info *mtd); argument
279 void (*_resume) (struct mtd_info *mtd); argument
280 void (*_reboot) (struct mtd_info *mtd); argument
286 int (*_get_device) (struct mtd_info *mtd); argument
287 void (*_put_device) (struct mtd_info *mtd); argument
315 struct mtd_info *parent; argument
337 static inline void mtd_set_ofnode(struct mtd_info *mtd, ofnode node) in mtd_set_ofnode() argument
342 static inline ofnode mtd_get_ofnode(struct mtd_info *mtd) in mtd_get_ofnode()
349 static inline void mtd_set_of_node(struct mtd_info *mtd, in mtd_set_of_node()
354 static inline const struct device_node *mtd_get_of_node(struct mtd_info *mtd) in mtd_get_of_node()
360 static inline bool mtd_is_partition(const struct mtd_info *mtd) in mtd_is_partition()
365 static inline bool mtd_has_partitions(const struct mtd_info *mtd) in mtd_has_partitions()
370 bool mtd_partitions_used(struct mtd_info *master);
372 int mtd_ooblayout_ecc(struct mtd_info *mtd, int section,
374 int mtd_ooblayout_find_eccregion(struct mtd_info *mtd, int eccbyte,
377 int mtd_ooblayout_get_eccbytes(struct mtd_info *mtd, u8 *eccbuf,
379 int mtd_ooblayout_set_eccbytes(struct mtd_info *mtd, const u8 *eccbuf,
381 int mtd_ooblayout_free(struct mtd_info *mtd, int section,
383 int mtd_ooblayout_get_databytes(struct mtd_info *mtd, u8 *databuf,
385 int mtd_ooblayout_set_databytes(struct mtd_info *mtd, const u8 *databuf,
387 int mtd_ooblayout_count_freebytes(struct mtd_info *mtd);
388 int mtd_ooblayout_count_eccbytes(struct mtd_info *mtd);
390 static inline void mtd_set_ooblayout(struct mtd_info *mtd, in mtd_set_ooblayout()
396 static inline u32 mtd_oobavail(struct mtd_info *mtd, struct mtd_oob_ops *ops) in mtd_oobavail()
401 int mtd_erase(struct mtd_info *mtd, struct erase_info *instr);
403 int mtd_point(struct mtd_info *mtd, loff_t from, size_t len, size_t *retlen,
405 int mtd_unpoint(struct mtd_info *mtd, loff_t from, size_t len);
407 unsigned long mtd_get_unmapped_area(struct mtd_info *mtd, unsigned long len,
409 int mtd_read(struct mtd_info *mtd, loff_t from, size_t len, size_t *retlen,
411 int mtd_write(struct mtd_info *mtd, loff_t to, size_t len, size_t *retlen,
413 int mtd_panic_write(struct mtd_info *mtd, loff_t to, size_t len, size_t *retlen,
417 static inline struct mtd_info *blk_desc_to_mtd(struct blk_desc *bdesc) in blk_desc_to_mtd()
424 return *((struct mtd_info **)priv); in blk_desc_to_mtd()
427 int mtd_bind(struct udevice *dev, struct mtd_info **mtd);
429 static inline struct mtd_info *blk_desc_to_mtd(struct blk_desc *bdesc) in blk_desc_to_mtd()
434 static inline int mtd_bind(struct udevice *dev, struct mtd_info **mtd) in mtd_bind()
440 int mtd_read_oob(struct mtd_info *mtd, loff_t from, struct mtd_oob_ops *ops);
441 int mtd_write_oob(struct mtd_info *mtd, loff_t to, struct mtd_oob_ops *ops);
443 int mtd_get_fact_prot_info(struct mtd_info *mtd, size_t len, size_t *retlen,
445 int mtd_read_fact_prot_reg(struct mtd_info *mtd, loff_t from, size_t len,
447 int mtd_get_user_prot_info(struct mtd_info *mtd, size_t len, size_t *retlen,
449 int mtd_read_user_prot_reg(struct mtd_info *mtd, loff_t from, size_t len,
451 int mtd_write_user_prot_reg(struct mtd_info *mtd, loff_t to, size_t len,
453 int mtd_lock_user_prot_reg(struct mtd_info *mtd, loff_t from, size_t len);
456 int mtd_writev(struct mtd_info *mtd, const struct kvec *vecs,
460 static inline void mtd_sync(struct mtd_info *mtd) in mtd_sync()
466 int mtd_lock(struct mtd_info *mtd, loff_t ofs, uint64_t len);
467 int mtd_unlock(struct mtd_info *mtd, loff_t ofs, uint64_t len);
468 int mtd_is_locked(struct mtd_info *mtd, loff_t ofs, uint64_t len);
469 int mtd_block_isreserved(struct mtd_info *mtd, loff_t ofs);
470 int mtd_block_isbad(struct mtd_info *mtd, loff_t ofs);
471 int mtd_block_markbad(struct mtd_info *mtd, loff_t ofs);
474 static inline int mtd_suspend(struct mtd_info *mtd) in mtd_suspend()
479 static inline void mtd_resume(struct mtd_info *mtd) in mtd_resume()
486 static inline uint32_t mtd_div_by_eb(uint64_t sz, struct mtd_info *mtd) in mtd_div_by_eb()
494 static inline uint32_t mtd_mod_by_eb(uint64_t sz, struct mtd_info *mtd) in mtd_mod_by_eb()
501 static inline uint32_t mtd_div_by_ws(uint64_t sz, struct mtd_info *mtd) in mtd_div_by_ws()
509 static inline uint32_t mtd_mod_by_ws(uint64_t sz, struct mtd_info *mtd) in mtd_mod_by_ws()
516 static inline int mtd_has_oob(const struct mtd_info *mtd) in mtd_has_oob()
521 static inline int mtd_type_is_nand(const struct mtd_info *mtd) in mtd_type_is_nand()
526 static inline int mtd_can_have_bb(const struct mtd_info *mtd) in mtd_can_have_bb()
536 extern int mtd_device_parse_register(struct mtd_info *mtd,
543 extern int mtd_device_unregister(struct mtd_info *master);
544 extern struct mtd_info *get_mtd_device(struct mtd_info *mtd, int num);
545 extern int __get_mtd_device(struct mtd_info *mtd);
546 extern void __put_mtd_device(struct mtd_info *mtd);
547 extern struct mtd_info *get_mtd_device_nm(const char *name);
548 extern void put_mtd_device(struct mtd_info *mtd);
552 void (*add)(struct mtd_info *mtd);
553 void (*remove)(struct mtd_info *mtd);
560 void *mtd_kmalloc_up_to(const struct mtd_info *mtd, size_t *size);
574 unsigned mtd_mmap_capabilities(struct mtd_info *mtd);
579 int add_mtd_device(struct mtd_info *mtd);
580 int del_mtd_device(struct mtd_info *mtd);
582 static inline int add_mtd_device(struct mtd_info *mtd) in add_mtd_device()
587 static inline int del_mtd_device(struct mtd_info *mtd) in del_mtd_device()
594 int add_mtd_partitions(struct mtd_info *, const struct mtd_partition *, int);
595 int del_mtd_partitions(struct mtd_info *);
597 static inline int add_mtd_partitions(struct mtd_info *mtd, in add_mtd_partitions()
604 static inline int del_mtd_partitions(struct mtd_info *mtd) in del_mtd_partitions()
612 int add_mtd_partitions_of(struct mtd_info *master);
614 static inline int add_mtd_partitions_of(struct mtd_info *master) in add_mtd_partitions_of()
620 struct mtd_info *__mtd_next_device(int i);
627 void mtd_get_len_incl_bad(struct mtd_info *mtd, uint64_t offset,