Home
last modified time | relevance | path

Searched refs:mtd (Results 1 – 25 of 337) sorted by relevance

12345678910>>...14

/Linux-v4.19/drivers/mtd/
Dmtdcore.c56 struct mtd_info *mtd = dev_get_drvdata(dev); in mtd_cls_suspend() local
58 return mtd ? mtd_suspend(mtd) : 0; in mtd_cls_suspend()
63 struct mtd_info *mtd = dev_get_drvdata(dev); in mtd_cls_resume() local
65 if (mtd) in mtd_cls_resume()
66 mtd_resume(mtd); in mtd_cls_resume()
105 struct mtd_info *mtd = dev_get_drvdata(dev); in mtd_release() local
106 dev_t index = MTD_DEVT(mtd->index); in mtd_release()
115 struct mtd_info *mtd = dev_get_drvdata(dev); in mtd_type_show() local
118 switch (mtd->type) { in mtd_type_show()
154 struct mtd_info *mtd = dev_get_drvdata(dev); in mtd_flags_show() local
[all …]
Dmtdpart.c49 struct mtd_info mtd; member
59 static inline struct mtd_part *mtd_to_part(const struct mtd_info *mtd) in mtd_to_part() argument
61 return container_of(mtd, struct mtd_part, mtd); in mtd_to_part()
70 static int part_read(struct mtd_info *mtd, loff_t from, size_t len, in part_read() argument
73 struct mtd_part *part = mtd_to_part(mtd); in part_read()
81 mtd->ecc_stats.failed += in part_read()
84 mtd->ecc_stats.corrected += in part_read()
89 static int part_point(struct mtd_info *mtd, loff_t from, size_t len, in part_point() argument
92 struct mtd_part *part = mtd_to_part(mtd); in part_point()
98 static int part_unpoint(struct mtd_info *mtd, loff_t from, size_t len) in part_unpoint() argument
[all …]
Dmtdchar.c51 struct mtd_info *mtd; member
58 return fixed_size_llseek(file, offset, orig, mfi->mtd->size); in mtdchar_lseek()
66 struct mtd_info *mtd; in mtdchar_open() local
76 mtd = get_mtd_device(NULL, devnum); in mtdchar_open()
78 if (IS_ERR(mtd)) { in mtdchar_open()
79 ret = PTR_ERR(mtd); in mtdchar_open()
83 if (mtd->type == MTD_ABSENT) { in mtdchar_open()
89 if ((file->f_mode & FMODE_WRITE) && !(mtd->flags & MTD_WRITEABLE)) { in mtdchar_open()
99 mfi->mtd = mtd; in mtdchar_open()
105 put_mtd_device(mtd); in mtdchar_open()
[all …]
Dmtdconcat.c44 struct mtd_info mtd; member
68 concat_read(struct mtd_info *mtd, loff_t from, size_t len, in concat_read() argument
71 struct mtd_concat *concat = CONCAT(mtd); in concat_read()
97 mtd->ecc_stats.failed++; in concat_read()
100 mtd->ecc_stats.corrected++; in concat_read()
120 concat_write(struct mtd_info *mtd, loff_t to, size_t len, in concat_write() argument
123 struct mtd_concat *concat = CONCAT(mtd); in concat_write()
158 concat_writev(struct mtd_info *mtd, const struct kvec *vecs, in concat_writev() argument
161 struct mtd_concat *concat = CONCAT(mtd); in concat_writev()
173 if (mtd->writesize > 1) { in concat_writev()
[all …]
Dmtdsuper.c29 struct mtd_info *mtd = _mtd; in get_sb_mtd_compare() local
31 if (sb->s_mtd == mtd) { in get_sb_mtd_compare()
33 mtd->index, mtd->name); in get_sb_mtd_compare()
38 sb->s_mtd->index, sb->s_mtd->name, mtd->index, mtd->name); in get_sb_mtd_compare()
51 struct mtd_info *mtd = _mtd; in get_sb_mtd_set() local
53 sb->s_mtd = mtd; in get_sb_mtd_set()
54 sb->s_dev = MKDEV(MTD_BLOCK_MAJOR, mtd->index); in get_sb_mtd_set()
65 struct mtd_info *mtd, in mount_mtd_aux() argument
71 sb = sget(fs_type, get_sb_mtd_compare, get_sb_mtd_set, flags, mtd); in mount_mtd_aux()
80 mtd->index, mtd->name); in mount_mtd_aux()
[all …]
Dmtdoops.c63 struct mtd_info *mtd; member
89 struct mtd_info *mtd = cxt->mtd; in mtdoops_erase_block() local
90 u32 start_page_offset = mtd_div_by_eb(offset, mtd) * mtd->erasesize; in mtdoops_erase_block()
92 u32 erase_pages = mtd->erasesize / record_size; in mtdoops_erase_block()
98 erase.len = mtd->erasesize; in mtdoops_erase_block()
100 ret = mtd_erase(mtd, &erase); in mtdoops_erase_block()
138 struct mtd_info *mtd = cxt->mtd; in mtdoops_workfunc_erase() local
142 if (!mtd) in mtdoops_workfunc_erase()
145 mod = (cxt->nextpage * record_size) % mtd->erasesize; in mtdoops_workfunc_erase()
147 cxt->nextpage = cxt->nextpage + ((mtd->erasesize - mod) / record_size); in mtdoops_workfunc_erase()
[all …]
/Linux-v4.19/include/linux/mtd/
Dmtd.h114 int (*ecc)(struct mtd_info *mtd, int section,
116 int (*free)(struct mtd_info *mtd, int section,
190 int (*get_info)(struct mtd_info *mtd, int wunit,
192 int (*get_wunit)(struct mtd_info *mtd,
285 int (*_erase) (struct mtd_info *mtd, struct erase_info *instr);
286 int (*_point) (struct mtd_info *mtd, loff_t from, size_t len,
288 int (*_unpoint) (struct mtd_info *mtd, loff_t from, size_t len);
289 int (*_read) (struct mtd_info *mtd, loff_t from, size_t len,
291 int (*_write) (struct mtd_info *mtd, loff_t to, size_t len,
293 int (*_panic_write) (struct mtd_info *mtd, loff_t to, size_t len,
[all …]
/Linux-v4.19/drivers/mtd/nand/raw/
Dmpc5121_nfc.c131 static void mpc5121_nfc_done(struct mtd_info *mtd);
134 static inline u16 nfc_read(struct mtd_info *mtd, uint reg) in nfc_read() argument
136 struct nand_chip *chip = mtd_to_nand(mtd); in nfc_read()
143 static inline void nfc_write(struct mtd_info *mtd, uint reg, u16 val) in nfc_write() argument
145 struct nand_chip *chip = mtd_to_nand(mtd); in nfc_write()
152 static inline void nfc_set(struct mtd_info *mtd, uint reg, u16 bits) in nfc_set() argument
154 nfc_write(mtd, reg, nfc_read(mtd, reg) | bits); in nfc_set()
158 static inline void nfc_clear(struct mtd_info *mtd, uint reg, u16 bits) in nfc_clear() argument
160 nfc_write(mtd, reg, nfc_read(mtd, reg) & ~bits); in nfc_clear()
164 static inline void mpc5121_nfc_send_addr(struct mtd_info *mtd, u16 addr) in mpc5121_nfc_send_addr() argument
[all …]
Dnand_base.c51 static int nand_get_device(struct mtd_info *mtd, int new_state);
53 static int nand_do_write_oob(struct mtd_info *mtd, loff_t to,
57 static int nand_ooblayout_ecc_sp(struct mtd_info *mtd, int section, in nand_ooblayout_ecc_sp() argument
60 struct nand_chip *chip = mtd_to_nand(mtd); in nand_ooblayout_ecc_sp()
68 if (mtd->oobsize == 16) in nand_ooblayout_ecc_sp()
73 if (mtd->oobsize == 8) in nand_ooblayout_ecc_sp()
83 static int nand_ooblayout_free_sp(struct mtd_info *mtd, int section, in nand_ooblayout_free_sp() argument
89 if (mtd->oobsize == 16) { in nand_ooblayout_free_sp()
112 static int nand_ooblayout_ecc_lp(struct mtd_info *mtd, int section, in nand_ooblayout_ecc_lp() argument
115 struct nand_chip *chip = mtd_to_nand(mtd); in nand_ooblayout_ecc_lp()
[all …]
Dau1550nd.c36 static u_char au_read_byte(struct mtd_info *mtd) in au_read_byte() argument
38 struct nand_chip *this = mtd_to_nand(mtd); in au_read_byte()
51 static void au_write_byte(struct mtd_info *mtd, u_char byte) in au_write_byte() argument
53 struct nand_chip *this = mtd_to_nand(mtd); in au_write_byte()
64 static u_char au_read_byte16(struct mtd_info *mtd) in au_read_byte16() argument
66 struct nand_chip *this = mtd_to_nand(mtd); in au_read_byte16()
79 static void au_write_byte16(struct mtd_info *mtd, u_char byte) in au_write_byte16() argument
81 struct nand_chip *this = mtd_to_nand(mtd); in au_write_byte16()
92 static u16 au_read_word(struct mtd_info *mtd) in au_read_word() argument
94 struct nand_chip *this = mtd_to_nand(mtd); in au_read_word()
[all …]
Dnand_bbt.c79 static int nand_update_bbt(struct mtd_info *mtd, loff_t offs);
171 static int read_bbt(struct mtd_info *mtd, uint8_t *buf, int page, int num, in read_bbt() argument
175 struct nand_chip *this = mtd_to_nand(mtd); in read_bbt()
198 res = mtd_read(mtd, from, len, &retlen, buf); in read_bbt()
202 from & ~mtd->writesize); in read_bbt()
206 from & ~mtd->writesize); in read_bbt()
227 mtd->ecc_stats.bbtblocks++; in read_bbt()
244 mtd->ecc_stats.badblocks++; in read_bbt()
264 static int read_abs_bbt(struct mtd_info *mtd, uint8_t *buf, struct nand_bbt_descr *td, int chip) in read_abs_bbt() argument
266 struct nand_chip *this = mtd_to_nand(mtd); in read_abs_bbt()
[all …]
/Linux-v4.19/drivers/mtd/nand/onenand/
Donenand_base.c69 static int flexonenand_ooblayout_ecc(struct mtd_info *mtd, int section, in flexonenand_ooblayout_ecc() argument
81 static int flexonenand_ooblayout_free(struct mtd_info *mtd, int section, in flexonenand_ooblayout_free() argument
105 static int onenand_ooblayout_128_ecc(struct mtd_info *mtd, int section, in onenand_ooblayout_128_ecc() argument
117 static int onenand_ooblayout_128_free(struct mtd_info *mtd, int section, in onenand_ooblayout_128_free() argument
141 static int onenand_ooblayout_32_64_ecc(struct mtd_info *mtd, int section, in onenand_ooblayout_32_64_ecc() argument
153 static int onenand_ooblayout_32_64_free(struct mtd_info *mtd, int section, in onenand_ooblayout_32_64_free() argument
156 int sections = (mtd->oobsize / 32) * 2; in onenand_ooblayout_32_64_free()
380 int flexonenand_region(struct mtd_info *mtd, loff_t addr) in flexonenand_region() argument
384 for (i = 0; i < mtd->numeraseregions; i++) in flexonenand_region()
385 if (addr < mtd->eraseregions[i].offset) in flexonenand_region()
[all …]
/Linux-v4.19/drivers/mtd/ubi/
Dgluebi.c57 struct mtd_info mtd; member
97 static int gluebi_get_device(struct mtd_info *mtd) in gluebi_get_device() argument
102 if (mtd->flags & MTD_WRITEABLE) in gluebi_get_device()
105 gluebi = container_of(mtd, struct gluebi_device, mtd); in gluebi_get_device()
143 static void gluebi_put_device(struct mtd_info *mtd) in gluebi_put_device() argument
147 gluebi = container_of(mtd, struct gluebi_device, mtd); in gluebi_put_device()
166 static int gluebi_read(struct mtd_info *mtd, loff_t from, size_t len, in gluebi_read() argument
172 gluebi = container_of(mtd, struct gluebi_device, mtd); in gluebi_read()
173 lnum = div_u64_rem(from, mtd->erasesize, &offs); in gluebi_read()
176 size_t to_read = mtd->erasesize - offs; in gluebi_read()
[all …]
/Linux-v4.19/drivers/mtd/chips/
Dmap_ram.c23 static int mapram_point (struct mtd_info *mtd, loff_t from, size_t len,
25 static int mapram_unpoint(struct mtd_info *mtd, loff_t from, size_t len);
36 struct mtd_info *mtd; in map_ram_probe() local
59 mtd = kzalloc(sizeof(*mtd), GFP_KERNEL); in map_ram_probe()
60 if (!mtd) in map_ram_probe()
64 mtd->priv = map; in map_ram_probe()
65 mtd->name = map->name; in map_ram_probe()
66 mtd->type = MTD_RAM; in map_ram_probe()
67 mtd->size = map->size; in map_ram_probe()
68 mtd->_erase = mapram_erase; in map_ram_probe()
[all …]
Dmap_rom.c22 static int maprom_erase (struct mtd_info *mtd, struct erase_info *info);
23 static int maprom_point (struct mtd_info *mtd, loff_t from, size_t len,
25 static int maprom_unpoint(struct mtd_info *mtd, loff_t from, size_t len);
45 struct mtd_info *mtd; in map_rom_probe() local
47 mtd = kzalloc(sizeof(*mtd), GFP_KERNEL); in map_rom_probe()
48 if (!mtd) in map_rom_probe()
52 mtd->priv = map; in map_rom_probe()
53 mtd->name = map->name; in map_rom_probe()
54 mtd->type = MTD_ROM; in map_rom_probe()
55 mtd->size = map->size; in map_rom_probe()
[all …]
Dmap_absent.c46 struct mtd_info *mtd; in map_absent_probe() local
48 mtd = kzalloc(sizeof(*mtd), GFP_KERNEL); in map_absent_probe()
49 if (!mtd) { in map_absent_probe()
54 mtd->priv = map; in map_absent_probe()
55 mtd->name = map->name; in map_absent_probe()
56 mtd->type = MTD_ABSENT; in map_absent_probe()
57 mtd->size = map->size; in map_absent_probe()
58 mtd->_erase = map_absent_erase; in map_absent_probe()
59 mtd->_read = map_absent_read; in map_absent_probe()
60 mtd->_write = map_absent_write; in map_absent_probe()
[all …]
/Linux-v4.19/drivers/mtd/devices/
Dmtdram.c39 static int check_offs_len(struct mtd_info *mtd, loff_t ofs, uint64_t len) in check_offs_len() argument
44 if (mtd_mod_by_eb(ofs, mtd)) { in check_offs_len()
50 if (mtd_mod_by_eb(len, mtd)) { in check_offs_len()
58 static int ram_erase(struct mtd_info *mtd, struct erase_info *instr) in ram_erase() argument
60 if (check_offs_len(mtd, instr->addr, instr->len)) in ram_erase()
62 memset((char *)mtd->priv + instr->addr, 0xff, instr->len); in ram_erase()
67 static int ram_point(struct mtd_info *mtd, loff_t from, size_t len, in ram_point() argument
70 *virt = mtd->priv + from; in ram_point()
96 static int ram_unpoint(struct mtd_info *mtd, loff_t from, size_t len) in ram_unpoint() argument
101 static int ram_read(struct mtd_info *mtd, loff_t from, size_t len, in ram_read() argument
[all …]
Dpowernv_flash.c40 struct mtd_info mtd; member
55 static int powernv_flash_async_op(struct mtd_info *mtd, enum flash_op op, in powernv_flash_async_op() argument
58 struct powernv_flash *info = (struct powernv_flash *)mtd->priv; in powernv_flash_async_op()
59 struct device *dev = &mtd->dev; in powernv_flash_async_op()
146 static int powernv_flash_read(struct mtd_info *mtd, loff_t from, size_t len, in powernv_flash_read() argument
149 return powernv_flash_async_op(mtd, FLASH_OP_READ, from, in powernv_flash_read()
162 static int powernv_flash_write(struct mtd_info *mtd, loff_t to, size_t len, in powernv_flash_write() argument
165 return powernv_flash_async_op(mtd, FLASH_OP_WRITE, to, in powernv_flash_write()
174 static int powernv_flash_erase(struct mtd_info *mtd, struct erase_info *erase) in powernv_flash_erase() argument
178 rc = powernv_flash_async_op(mtd, FLASH_OP_ERASE, erase->addr, in powernv_flash_erase()
[all …]
Dlart.c361 static int flash_erase (struct mtd_info *mtd,struct erase_info *instr) in flash_erase() argument
379 for (i = 0; i < mtd->numeraseregions && instr->addr >= mtd->eraseregions[i].offset; i++) ; in flash_erase()
388 if (i < 0 || (instr->addr & (mtd->eraseregions[i].erasesize - 1))) in flash_erase()
401 … for (; i < mtd->numeraseregions && instr->addr + instr->len >= mtd->eraseregions[i].offset; i++) ; in flash_erase()
405 if (i < 0 || ((instr->addr + instr->len) & (mtd->eraseregions[i].erasesize - 1))) in flash_erase()
419 addr += mtd->eraseregions[i].erasesize; in flash_erase()
420 len -= mtd->eraseregions[i].erasesize; in flash_erase()
422 …if (addr == mtd->eraseregions[i].offset + (mtd->eraseregions[i].erasesize * mtd->eraseregions[i].n… in flash_erase()
428 static int flash_read (struct mtd_info *mtd,loff_t from,size_t len,size_t *retlen,u_char *buf) in flash_read() argument
503 static int flash_write (struct mtd_info *mtd,loff_t to,size_t len,size_t *retlen,const u_char *buf) in flash_write() argument
[all …]
/Linux-v4.19/drivers/mtd/tests/
Doobtest.c43 static struct mtd_info *mtd; variable
73 loff_t addr = (loff_t)ebnum * mtd->erasesize; in write_eraseblock()
76 for (i = 0; i < pgcnt; ++i, addr += mtd->writesize) { in write_eraseblock()
85 err = mtd_write_oob(mtd, addr, &ops); in write_eraseblock()
182 loff_t addr = (loff_t)ebnum * mtd->erasesize; in verify_eraseblock()
186 for (i = 0; i < pgcnt; ++i, addr += mtd->writesize) { in verify_eraseblock()
195 err = mtd_read_oob(mtd, addr, &ops); in verify_eraseblock()
221 if (use_offset != 0 || use_len < mtd->oobavail) { in verify_eraseblock()
227 ops.ooblen = mtd->oobavail; in verify_eraseblock()
232 err = mtd_read_oob(mtd, addr, &ops); in verify_eraseblock()
[all …]
Dpagetest.c40 static struct mtd_info *mtd; variable
55 loff_t addr = (loff_t)ebnum * mtd->erasesize; in write_eraseblock()
57 prandom_bytes_state(&rnd_state, writebuf, mtd->erasesize); in write_eraseblock()
59 return mtdtest_write(mtd, addr, mtd->erasesize, writebuf); in write_eraseblock()
67 loff_t addr = (loff_t)ebnum * mtd->erasesize; in verify_eraseblock()
71 addr0 += mtd->erasesize; in verify_eraseblock()
73 addrn = mtd->size; in verify_eraseblock()
75 addrn -= mtd->erasesize; in verify_eraseblock()
77 prandom_bytes_state(&rnd_state, writebuf, mtd->erasesize); in verify_eraseblock()
80 err = mtdtest_read(mtd, addr0, bufsize, twopages); in verify_eraseblock()
[all …]
Dstresstest.c44 static struct mtd_info *mtd; variable
94 if (offs >= mtd->erasesize) in do_read()
95 offs -= mtd->erasesize; in do_read()
96 if (offs + len > mtd->erasesize) in do_read()
97 len = mtd->erasesize - offs; in do_read()
99 addr = (loff_t)eb * mtd->erasesize + offs; in do_read()
100 return mtdtest_read(mtd, addr, len, readbuf); in do_read()
109 if (offs >= mtd->erasesize) { in do_write()
110 err = mtdtest_erase_eraseblock(mtd, eb); in do_write()
117 if (offs + len > mtd->erasesize) { in do_write()
[all …]
Dspeedtest.c45 static struct mtd_info *mtd; variable
59 loff_t addr = (loff_t)ebnum * mtd->erasesize; in multiblock_erase()
63 ei.len = mtd->erasesize * blocks; in multiblock_erase()
65 err = mtd_erase(mtd, &ei); in multiblock_erase()
77 loff_t addr = (loff_t)ebnum * mtd->erasesize; in write_eraseblock()
79 return mtdtest_write(mtd, addr, mtd->erasesize, iobuf); in write_eraseblock()
85 loff_t addr = (loff_t)ebnum * mtd->erasesize; in write_eraseblock_by_page()
89 err = mtdtest_write(mtd, addr, pgsize, buf); in write_eraseblock_by_page()
103 loff_t addr = (loff_t)ebnum * mtd->erasesize; in write_eraseblock_by_2pages()
107 err = mtdtest_write(mtd, addr, sz, buf); in write_eraseblock_by_2pages()
[all …]
/Linux-v4.19/drivers/net/ethernet/sfc/
Dmtd.c19 #define to_efx_mtd_partition(mtd) \ argument
20 container_of(mtd, struct efx_mtd_partition, mtd)
24 static int efx_mtd_erase(struct mtd_info *mtd, struct erase_info *erase) in efx_mtd_erase() argument
26 struct efx_nic *efx = mtd->priv; in efx_mtd_erase()
28 return efx->type->mtd_erase(mtd, erase->addr, erase->len); in efx_mtd_erase()
31 static void efx_mtd_sync(struct mtd_info *mtd) in efx_mtd_sync() argument
33 struct efx_mtd_partition *part = to_efx_mtd_partition(mtd); in efx_mtd_sync()
34 struct efx_nic *efx = mtd->priv; in efx_mtd_sync()
37 rc = efx->type->mtd_sync(mtd); in efx_mtd_sync()
48 rc = mtd_device_unregister(&part->mtd); in efx_mtd_remove_partition()
[all …]
/Linux-v4.19/drivers/net/ethernet/sfc/falcon/
Dmtd.c19 #define to_ef4_mtd_partition(mtd) \ argument
20 container_of(mtd, struct ef4_mtd_partition, mtd)
24 static int ef4_mtd_erase(struct mtd_info *mtd, struct erase_info *erase) in ef4_mtd_erase() argument
26 struct ef4_nic *efx = mtd->priv; in ef4_mtd_erase()
28 return efx->type->mtd_erase(mtd, erase->addr, erase->len); in ef4_mtd_erase()
31 static void ef4_mtd_sync(struct mtd_info *mtd) in ef4_mtd_sync() argument
33 struct ef4_mtd_partition *part = to_ef4_mtd_partition(mtd); in ef4_mtd_sync()
34 struct ef4_nic *efx = mtd->priv; in ef4_mtd_sync()
37 rc = efx->type->mtd_sync(mtd); in ef4_mtd_sync()
48 rc = mtd_device_unregister(&part->mtd); in ef4_mtd_remove_partition()
[all …]

12345678910>>...14