Home
last modified time | relevance | path

Searched refs:nand_chip (Results 1 – 25 of 64) sorted by relevance

123

/linux/drivers/mtd/nand/raw/
H A Dsocrates_nand.c27 struct nand_chip nand_chip; member
38 static void socrates_nand_write_buf(struct nand_chip *this, const uint8_t *buf, in socrates_nand_write_buf()
57 static void socrates_nand_read_buf(struct nand_chip *this, uint8_t *buf, in socrates_nand_read_buf()
77 static uint8_t socrates_nand_read_byte(struct nand_chip *this) in socrates_nand_read_byte()
87 static void socrates_nand_cmd_ctrl(struct nand_chip *nand_chip, int cmd, in socrates_nand_cmd_ctrl() argument
90 struct socrates_nand_host *host = nand_get_controller_data(nand_chip); in socrates_nand_cmd_ctrl()
112 static int socrates_nand_device_ready(struct nand_chip *nand_chip) in socrates_nand_device_ready() argument
114 struct socrates_nand_host *host = nand_get_controller_data(nand_chip); in socrates_nand_device_ready()
121 static int socrates_attach_chip(struct nand_chip *chip) in socrates_attach_chip()
141 struct nand_chip *nand_chip; in socrates_nand_probe() local
[all …]
H A Dinternals.h48 void (*detect)(struct nand_chip *chip);
49 int (*init)(struct nand_chip *chip);
50 void (*cleanup)(struct nand_chip *chip);
51 void (*fixup_onfi_param_page)(struct nand_chip *chip,
84 int nand_bbm_get_next_page(struct nand_chip *chip, int page);
85 int nand_markbad_bbm(struct nand_chip *chip, loff_t ofs);
86 int nand_erase_nand(struct nand_chip *chip, struct erase_info *instr,
88 void onfi_fill_interface_config(struct nand_chip *chip,
96 int nand_choose_best_sdr_timings(struct nand_chip *chip,
99 int nand_choose_best_nvddr_timings(struct nand_chip *chip,
[all …]
H A Dlpc32xx_mlc.c132 struct nand_chip *nand_chip = mtd_to_nand(mtd); in lpc32xx_ooblayout_ecc() local
134 if (section >= nand_chip->ecc.steps) in lpc32xx_ooblayout_ecc()
137 oobregion->offset = ((section + 1) * 16) - nand_chip->ecc.bytes; in lpc32xx_ooblayout_ecc()
138 oobregion->length = nand_chip->ecc.bytes; in lpc32xx_ooblayout_ecc()
146 struct nand_chip *nand_chip = mtd_to_nand(mtd); in lpc32xx_ooblayout_free() local
148 if (section >= nand_chip->ecc.steps) in lpc32xx_ooblayout_free()
152 oobregion->length = 16 - nand_chip->ecc.bytes; in lpc32xx_ooblayout_free()
176 struct nand_chip nand_chip; member
278 static void lpc32xx_nand_cmd_ctrl(struct nand_chip *nand_chip, int cmd, in lpc32xx_nand_cmd_ctrl() argument
281 struct lpc32xx_nand_host *host = nand_get_controller_data(nand_chip); in lpc32xx_nand_cmd_ctrl()
[all …]
H A Dnand_legacy.c28 static uint8_t nand_read_byte(struct nand_chip *chip) in nand_read_byte()
40 static uint8_t nand_read_byte16(struct nand_chip *chip) in nand_read_byte16()
52 static void nand_select_chip(struct nand_chip *chip, int chipnr) in nand_select_chip()
74 static void nand_write_byte(struct nand_chip *chip, uint8_t byte) in nand_write_byte()
86 static void nand_write_byte16(struct nand_chip *chip, uint8_t byte) in nand_write_byte16()
117 static void nand_write_buf(struct nand_chip *chip, const uint8_t *buf, int len) in nand_write_buf()
130 static void nand_read_buf(struct nand_chip *chip, uint8_t *buf, int len) in nand_read_buf()
143 static void nand_write_buf16(struct nand_chip *chip, const uint8_t *buf, in nand_write_buf16()
159 static void nand_read_buf16(struct nand_chip *chip, uint8_t *buf, int len) in nand_read_buf16()
174 static void panic_nand_wait_ready(struct nand_chip *chip, unsigned long timeo) in panic_nand_wait_ready()
[all …]
H A Dnand_toshiba.c29 static int toshiba_nand_benand_read_eccstatus_op(struct nand_chip *chip, in toshiba_nand_benand_read_eccstatus_op()
50 static int toshiba_nand_benand_eccstatus(struct nand_chip *chip) in toshiba_nand_benand_eccstatus()
96 toshiba_nand_read_page_benand(struct nand_chip *chip, uint8_t *buf, in toshiba_nand_read_page_benand()
109 toshiba_nand_read_subpage_benand(struct nand_chip *chip, uint32_t data_offs, in toshiba_nand_read_subpage_benand()
122 static void toshiba_nand_benand_init(struct nand_chip *chip) in toshiba_nand_benand_init()
146 static void toshiba_nand_decode_id(struct nand_chip *chip) in toshiba_nand_decode_id()
202 tc58teg5dclta00_choose_interface_config(struct nand_chip *chip, in tc58teg5dclta00_choose_interface_config()
211 tc58nvg0s3e_choose_interface_config(struct nand_chip *chip, in tc58nvg0s3e_choose_interface_config()
220 th58nvg2s3hbai4_choose_interface_config(struct nand_chip *chip, in th58nvg2s3hbai4_choose_interface_config()
246 static int tc58teg5dclta00_init(struct nand_chip *chip) in tc58teg5dclta00_init()
[all …]
H A Dnand_macronix.c50 static int macronix_nand_setup_read_retry(struct nand_chip *chip, int mode) in macronix_nand_setup_read_retry()
63 static int macronix_nand_randomizer_check_enable(struct nand_chip *chip) in macronix_nand_randomizer_check_enable()
102 static void macronix_nand_onfi_init(struct nand_chip *chip) in macronix_nand_onfi_init()
158 static void macronix_nand_fix_broken_get_timings(struct nand_chip *chip) in macronix_nand_fix_broken_get_timings()
198 static int mxic_nand_lock(struct nand_chip *chip, loff_t ofs, uint64_t len) in mxic_nand_lock()
214 static int mxic_nand_unlock(struct nand_chip *chip, loff_t ofs, uint64_t len) in mxic_nand_unlock()
230 static void macronix_nand_block_protection_support(struct nand_chip *chip) in macronix_nand_block_protection_support()
259 static int nand_power_down_op(struct nand_chip *chip) in nand_power_down_op()
281 static int mxic_nand_suspend(struct nand_chip *chip) in mxic_nand_suspend()
294 static void mxic_nand_resume(struct nand_chip *chip) in mxic_nand_resume()
[all …]
H A Dxway_nand.c66 struct nand_chip chip;
73 struct nand_chip *chip = mtd_to_nand(mtd); in xway_readb()
81 struct nand_chip *chip = mtd_to_nand(mtd); in xway_writeb()
87 static void xway_select_chip(struct nand_chip *chip, int select) in xway_select_chip()
107 static void xway_cmd_ctrl(struct nand_chip *chip, int cmd, unsigned int ctrl) in xway_cmd_ctrl()
123 static int xway_dev_ready(struct nand_chip *chip) in xway_dev_ready()
128 static unsigned char xway_read_byte(struct nand_chip *chip) in xway_read_byte()
133 static void xway_read_buf(struct nand_chip *chip, u_char *buf, int len) in xway_read_buf()
141 static void xway_write_buf(struct nand_chip *chip, const u_char *buf, int len) in xway_write_buf()
149 static int xway_attach_chip(struct nand_chip *chip) in xway_attach_chip()
[all …]
H A Dnand_base.c100 static int check_offs_len(struct nand_chip *chip, loff_t ofs, uint64_t len) in check_offs_len()
172 void nand_select_target(struct nand_chip *chip, unsigned int cs) in nand_select_target()
195 void nand_deselect_target(struct nand_chip *chip) in nand_deselect_target()
210 static void nand_release_device(struct nand_chip *chip) in nand_release_device()
226 int nand_bbm_get_next_page(struct nand_chip *chip, int page) in nand_bbm_get_next_page()
253 static int nand_block_bad(struct nand_chip *chip, loff_t ofs) in nand_block_bad()
292 static bool nand_region_is_secured(struct nand_chip *chip, loff_t offset, u64 size) in nand_region_is_secured()
313 static int nand_isbad_bbm(struct nand_chip *chip, loff_t ofs) in nand_isbad_bbm()
339 static void nand_get_device(struct nand_chip *chip) in nand_get_device()
361 static int nand_check_wp(struct nand_chip *chip) in nand_check_wp()
[all …]
H A Dsharpsl.c22 struct nand_chip chip;
57 static void sharpsl_nand_hwcontrol(struct nand_chip *chip, int cmd, in sharpsl_nand_hwcontrol()
76 static int sharpsl_nand_dev_ready(struct nand_chip *chip) in sharpsl_nand_dev_ready()
82 static void sharpsl_nand_enable_hwecc(struct nand_chip *chip, int mode) in sharpsl_nand_enable_hwecc()
88 static int sharpsl_nand_calculate_ecc(struct nand_chip *chip, in sharpsl_nand_calculate_ecc()
98 static int sharpsl_attach_chip(struct nand_chip *chip) in sharpsl_attach_chip()
122 struct nand_chip *this; in sharpsl_nand_probe()
155 this = (struct nand_chip *)(&sharpsl->chip); in sharpsl_nand_probe()
216 struct nand_chip *chip = &sharpsl->chip; in sharpsl_nand_remove()
H A Dau1550nd.c21 struct nand_chip chip;
27 static struct au1550nd_ctx *chip_to_au_ctx(struct nand_chip *this) in chip_to_au_ctx()
40 static void au_write_buf(struct nand_chip *this, const void *buf, in au_write_buf()
61 static void au_read_buf(struct nand_chip *this, void *buf, in au_read_buf()
82 static void au_write_buf16(struct nand_chip *this, const void *buf, in au_write_buf16()
104 static void au_read_buf16(struct nand_chip *this, void *buf, unsigned int len) in au_read_buf16()
138 static int au1550nd_waitrdy(struct nand_chip *this, unsigned int timeout_ms) in au1550nd_waitrdy()
153 static int au1550nd_exec_instr(struct nand_chip *this, in au1550nd_exec_instr()
210 static int au1550nd_exec_op(struct nand_chip *this, in au1550nd_exec_op()
240 static int au1550nd_attach_chip(struct nand_chip *chip) in au1550nd_attach_chip()
[all …]
H A Dmpc5121_nfc.c108 struct nand_chip chip;
124 struct nand_chip *chip = mtd_to_nand(mtd); in nfc_read()
133 struct nand_chip *chip = mtd_to_nand(mtd); in nfc_write()
203 struct nand_chip *chip = mtd_to_nand(mtd); in mpc5121_nfc_irq()
215 struct nand_chip *chip = mtd_to_nand(mtd); in mpc5121_nfc_done()
235 struct nand_chip *chip = mtd_to_nand(mtd); in mpc5121_nfc_addr_cycle()
254 static void mpc5121_nfc_select_chip(struct nand_chip *nand, int chip) in mpc5121_nfc_select_chip()
272 struct nand_chip *chip = mtd_to_nand(mtd); in ads5121_chipselect_init()
292 static void ads5121_select_chip(struct nand_chip *nand, int chip) in ads5121_select_chip()
310 static int mpc5121_nfc_dev_ready(struct nand_chip *nand) in mpc5121_nfc_dev_ready()
[all …]
H A Dnand_hynix.c59 static bool hynix_nand_has_valid_jedecid(struct nand_chip *chip) in hynix_nand_has_valid_jedecid()
71 static int hynix_nand_cmd_op(struct nand_chip *chip, u8 cmd) in hynix_nand_cmd_op()
87 static int hynix_nand_reg_write_op(struct nand_chip *chip, u8 addr, u8 val) in hynix_nand_reg_write_op()
107 static int hynix_nand_setup_read_retry(struct nand_chip *chip, int retry_mode) in hynix_nand_setup_read_retry()
190 static int hynix_read_rr_otp(struct nand_chip *chip, in hynix_read_rr_otp()
286 static int hynix_mlc_1xnm_rr_init(struct nand_chip *chip, in hynix_mlc_1xnm_rr_init()
371 static int hynix_nand_rr_init(struct nand_chip *chip) in hynix_nand_rr_init()
407 static void hynix_nand_extract_oobsize(struct nand_chip *chip, in hynix_nand_extract_oobsize()
494 static void hynix_nand_extract_ecc_requirements(struct nand_chip *chip, in hynix_nand_extract_ecc_requirements()
583 static void hynix_nand_extract_scrambling_requirements(struct nand_chip *chip, in hynix_nand_extract_scrambling_requirements()
[all …]
H A Dndfc.c35 struct nand_chip chip;
42 static void ndfc_select_chip(struct nand_chip *nchip, int chip) in ndfc_select_chip()
56 static void ndfc_hwcontrol(struct nand_chip *chip, int cmd, unsigned int ctrl) in ndfc_hwcontrol()
69 static int ndfc_ready(struct nand_chip *chip) in ndfc_ready()
76 static void ndfc_enable_hwecc(struct nand_chip *chip, int mode) in ndfc_enable_hwecc()
87 static int ndfc_calculate_ecc(struct nand_chip *chip, in ndfc_calculate_ecc()
111 static void ndfc_read_buf(struct nand_chip *chip, uint8_t *buf, int len) in ndfc_read_buf()
120 static void ndfc_write_buf(struct nand_chip *chip, const uint8_t *buf, int len) in ndfc_write_buf()
136 struct nand_chip *chip = &ndfc->chip; in ndfc_chip_init()
247 struct nand_chip *chip = &ndfc->chip; in ndfc_remove()
H A Dtxx9ndfmc.c61 struct nand_chip chip;
77 struct nand_chip *chip = mtd_to_nand(mtd); in mtd_to_platdev()
101 static uint8_t txx9ndfmc_read_byte(struct nand_chip *chip) in txx9ndfmc_read_byte()
108 static void txx9ndfmc_write_buf(struct nand_chip *chip, const uint8_t *buf, in txx9ndfmc_write_buf()
121 static void txx9ndfmc_read_buf(struct nand_chip *chip, uint8_t *buf, int len) in txx9ndfmc_read_buf()
130 static void txx9ndfmc_cmd_ctrl(struct nand_chip *chip, int cmd, in txx9ndfmc_cmd_ctrl()
160 static int txx9ndfmc_dev_ready(struct nand_chip *chip) in txx9ndfmc_dev_ready()
167 static int txx9ndfmc_calculate_ecc(struct nand_chip *chip, const uint8_t *dat, in txx9ndfmc_calculate_ecc()
187 static int txx9ndfmc_correct_data(struct nand_chip *chip, unsigned char *buf, in txx9ndfmc_correct_data()
208 static void txx9ndfmc_enable_hwecc(struct nand_chip *chip, int mode) in txx9ndfmc_enable_hwecc()
[all …]
H A Dpasemi_nand.c30 struct nand_chip chip;
37 static void pasemi_read_buf(struct nand_chip *chip, u_char *buf, int len) in pasemi_read_buf()
47 static void pasemi_write_buf(struct nand_chip *chip, const u_char *buf, in pasemi_write_buf()
58 static void pasemi_hwcontrol(struct nand_chip *chip, int cmd, in pasemi_hwcontrol()
76 static int pasemi_device_ready(struct nand_chip *chip) in pasemi_device_ready()
83 static int pasemi_attach_chip(struct nand_chip *chip) in pasemi_attach_chip()
102 struct nand_chip *chip; in pasemi_nand_probe()
205 struct nand_chip *chip; in pasemi_nand_remove()
H A Dnand_micron.c69 static int micron_nand_setup_read_retry(struct nand_chip *chip, int retry_mode) in micron_nand_setup_read_retry()
79 static int micron_nand_onfi_init(struct nand_chip *chip) in micron_nand_onfi_init()
135 struct nand_chip *chip = mtd_to_nand(mtd); in micron_nand_on_die_8_ooblayout_ecc()
150 struct nand_chip *chip = mtd_to_nand(mtd); in micron_nand_on_die_8_ooblayout_free()
166 static int micron_nand_on_die_ecc_setup(struct nand_chip *chip, bool enable) in micron_nand_on_die_ecc_setup()
188 static int micron_nand_on_die_ecc_status_4(struct nand_chip *chip, u8 status, in micron_nand_on_die_ecc_status_4()
275 static int micron_nand_on_die_ecc_status_8(struct nand_chip *chip, u8 status) in micron_nand_on_die_ecc_status_8()
304 micron_nand_read_page_on_die_ecc(struct nand_chip *chip, uint8_t *buf, in micron_nand_read_page_on_die_ecc()
369 micron_nand_write_page_on_die_ecc(struct nand_chip *chip, const uint8_t *buf, in micron_nand_write_page_on_die_ecc()
414 static int micron_supports_on_die_ecc(struct nand_chip *chip) in micron_supports_on_die_ecc()
[all …]
H A Dmtk_nand.c126 struct nand_chip nand;
178 static inline struct mtk_nfc_nand_chip *to_mtk_nand(struct nand_chip *nand) in to_mtk_nand()
183 static inline u8 *data_ptr(struct nand_chip *chip, const u8 *p, int i) in data_ptr()
188 static inline u8 *oob_ptr(struct nand_chip *chip, int i) in oob_ptr()
207 static inline int mtk_data_len(struct nand_chip *chip) in mtk_data_len()
214 static inline u8 *mtk_data_ptr(struct nand_chip *chip, int i) in mtk_data_ptr()
221 static inline u8 *mtk_oob_ptr(struct nand_chip *chip, int i) in mtk_oob_ptr()
320 struct nand_chip *chip = mtd_to_nand(mtd); in mtk_nfc_hw_runtime_config()
400 static inline u8 mtk_nfc_read_byte(struct nand_chip *chip) in mtk_nfc_read_byte()
428 static void mtk_nfc_read_buf(struct nand_chip *chip, u8 *buf, int len) in mtk_nfc_read_buf()
[all …]
H A Dmeson_nand.c124 struct nand_chip nand;
258 static struct meson_nfc_nand_chip *to_meson_nand(struct nand_chip *nand) in to_meson_nand()
263 static void meson_nfc_select_chip(struct nand_chip *nand, int chip) in meson_nfc_select_chip()
306 static int meson_nfc_is_boot_page(struct nand_chip *nand, int page) in meson_nfc_is_boot_page()
315 static void meson_nfc_cmd_access(struct nand_chip *nand, int raw, bool dir, int page) in meson_nfc_cmd_access()
393 static u8 *meson_nfc_oob_ptr(struct nand_chip *nand, int i) in meson_nfc_oob_ptr()
403 static u8 *meson_nfc_data_ptr(struct nand_chip *nand, int i) in meson_nfc_data_ptr()
414 static void meson_nfc_get_data_oob(struct nand_chip *nand, in meson_nfc_get_data_oob()
433 static void meson_nfc_set_data_oob(struct nand_chip *nand, in meson_nfc_set_data_oob()
452 static int meson_nfc_wait_no_rb_pin(struct nand_chip *nand, int timeout_ms, in meson_nfc_wait_no_rb_pin()
[all …]
H A Dnand_bbt.c76 static inline uint8_t bbt_get_entry(struct nand_chip *chip, int block) in bbt_get_entry()
83 static inline void bbt_mark_entry(struct nand_chip *chip, int block, in bbt_mark_entry()
166 static int read_bbt(struct nand_chip *this, uint8_t *buf, int page, int num, in read_bbt()
259 static int read_abs_bbt(struct nand_chip *this, uint8_t *buf, in read_abs_bbt()
287 static int scan_read_data(struct nand_chip *this, uint8_t *buf, loff_t offs, in scan_read_data()
312 static int scan_read_oob(struct nand_chip *this, uint8_t *buf, loff_t offs, in scan_read_oob()
343 static int scan_read(struct nand_chip *this, uint8_t *buf, loff_t offs, in scan_read()
353 static int scan_write_bbt(struct nand_chip *this, loff_t offs, size_t len, in scan_write_bbt()
369 static u32 bbt_get_ver_offs(struct nand_chip *this, struct nand_bbt_descr *td) in bbt_get_ver_offs()
389 static void read_abs_bbts(struct nand_chip *this, uint8_t *buf, in read_abs_bbts()
[all …]
H A Dintel-nand-controller.c114 struct nand_chip chip;
127 static inline struct ebu_nand_controller *nand_to_ebu(struct nand_chip *chip) in nand_to_ebu()
132 static int ebu_nand_waitrdy(struct nand_chip *chip, int timeout_ms) in ebu_nand_waitrdy()
142 static u8 ebu_nand_readb(struct nand_chip *chip) in ebu_nand_readb()
153 static void ebu_nand_writeb(struct nand_chip *chip, u32 offset, u8 value) in ebu_nand_writeb()
162 static void ebu_read_buf(struct nand_chip *chip, u_char *buf, unsigned int len) in ebu_read_buf()
170 static void ebu_write_buf(struct nand_chip *chip, const u_char *buf, int len) in ebu_write_buf()
178 static void ebu_nand_disable(struct nand_chip *chip) in ebu_nand_disable()
185 static void ebu_select_chip(struct nand_chip *chip) in ebu_select_chip()
197 static int ebu_nand_set_timings(struct nand_chip *chip, int csline, in ebu_nand_set_timings()
[all …]
H A Dgpio.c34 struct nand_chip nand_chip; member
45 return container_of(mtd_to_nand(mtd), struct gpiomtd, nand_chip); in gpio_nand_getpriv()
75 static int gpio_nand_exec_instr(struct nand_chip *chip, in gpio_nand_exec_instr()
137 static int gpio_nand_exec_op(struct nand_chip *chip, in gpio_nand_exec_op()
164 static int gpio_nand_attach_chip(struct nand_chip *chip) in gpio_nand_attach_chip()
271 struct nand_chip *chip = &gpiomtd->nand_chip; in gpio_nand_remove()
288 struct nand_chip *chip; in gpio_nand_probe()
301 chip = &gpiomtd->nand_chip; in gpio_nand_probe()
H A Dtechnologic-nand-controller.c34 struct nand_chip chip;
40 static inline struct ts72xx_nand_data *chip_to_ts72xx(struct nand_chip *chip) in chip_to_ts72xx()
45 static int ts72xx_nand_attach_chip(struct nand_chip *chip) in ts72xx_nand_attach_chip()
60 static void ts72xx_nand_ctrl(struct nand_chip *chip, u8 value) in ts72xx_nand_ctrl()
68 static int ts72xx_nand_exec_instr(struct nand_chip *chip, in ts72xx_nand_exec_instr()
112 static int ts72xx_nand_exec_op(struct nand_chip *chip, in ts72xx_nand_exec_op()
195 struct nand_chip *chip = &data->chip; in ts72xx_nand_remove()
H A Dmxic_nand.c181 struct nand_chip chip;
324 static int mxic_nfc_wait_ready(struct nand_chip *chip) in mxic_nfc_wait_ready()
388 static int mxic_nfc_exec_op(struct nand_chip *chip, in mxic_nfc_exec_op()
454 static int mxic_nfc_setup_interface(struct nand_chip *chip, int chipnr, in mxic_nfc_setup_interface()
491 struct nand_chip *nand_chip; in mxic_nfc_probe() local
516 nand_chip = &nfc->chip; in mxic_nfc_probe()
517 mtd = nand_to_mtd(nand_chip); in mxic_nfc_probe()
521 nand_set_flash_node(nand_chip, nand_np); in mxic_nfc_probe()
523 nand_chip->priv = nfc; in mxic_nfc_probe()
527 nand_chip->controller = &nfc->controller; in mxic_nfc_probe()
[all …]
/linux/include/linux/mtd/
H A Drawnand.h26 struct nand_chip;
363 void (*hwctl)(struct nand_chip *chip, int mode);
364 int (*calculate)(struct nand_chip *chip, const uint8_t *dat,
366 int (*correct)(struct nand_chip *chip, uint8_t *dat, uint8_t *read_ecc,
368 int (*read_page_raw)(struct nand_chip *chip, uint8_t *buf,
370 int (*write_page_raw)(struct nand_chip *chip, const uint8_t *buf,
372 int (*read_page)(struct nand_chip *chip, uint8_t *buf,
374 int (*read_subpage)(struct nand_chip *chip, uint32_t offs,
376 int (*write_subpage)(struct nand_chip *chip, uint32_t offset,
379 int (*write_page)(struct nand_chip *chip, const uint8_t *buf,
[all …]
H A Dplatnand.h56 int (*dev_ready)(struct nand_chip *chip);
57 void (*select_chip)(struct nand_chip *chip, int cs);
58 void (*cmd_ctrl)(struct nand_chip *chip, int dat, unsigned int ctrl);
59 void (*write_buf)(struct nand_chip *chip, const uint8_t *buf, int len);
60 void (*read_buf)(struct nand_chip *chip, uint8_t *buf, int len);

123