Lines Matching defs:buf

258 	int (*dma_trans)(struct brcmnand_host *host, u64 addr, u32 *buf,
1137 static inline bool flash_dma_buf_ok(const void *buf)
1139 return buf && !is_vmalloc_addr(buf) &&
1140 likely(IS_ALIGNED((uintptr_t)buf, 4));
1913 static void brcmnand_read_buf(struct nand_chip *chip, uint8_t *buf, int len)
1917 for (i = 0; i < len; i++, buf++)
1918 *buf = brcmnand_read_byte(chip);
1921 static void brcmnand_write_buf(struct nand_chip *chip, const uint8_t *buf,
1930 brcmnand_low_level_op(host, LL_OP_WR, buf[i],
1942 static int brcmnand_edu_trans(struct brcmnand_host *host, u64 addr, u32 *buf,
1955 "read" : "write"), buf, oob);
1957 pa = dma_map_single(ctrl->dev, buf, len, dir);
2062 dma_addr_t buf, u32 len, u8 dma_cmd,
2076 desc->dram_addr = lower_32_bits(buf);
2077 desc->dram_addr_ext = upper_32_bits(buf);
2118 static int brcmnand_dma_trans(struct brcmnand_host *host, u64 addr, u32 *buf,
2125 buf_pa = dma_map_single(ctrl->dev, buf, len, dir);
2150 u64 addr, unsigned int trans, u32 *buf,
2165 if (likely(buf)) {
2168 for (j = 0; j < FC_WORDS; j++, buf++)
2169 *buf = brcmnand_read_fc(ctrl, j);
2206 * buf will contain raw data.
2207 * Otherwise, buf gets filled with 0xffs and return the maximum number of
2212 struct nand_chip *chip, void *buf, u64 addr)
2222 if (!buf)
2223 buf = nand_get_data_buf(chip);
2226 ret = chip->ecc.read_page_raw(chip, buf, true, page);
2231 ecc_chunk = buf + chip->ecc.size * i;
2250 u64 addr, unsigned int trans, u32 *buf, u8 *oob)
2259 dev_dbg(ctrl->dev, "read %llx -> %p\n", (unsigned long long)addr, buf);
2265 flash_dma_buf_ok(buf)) {
2266 err = ctrl->dma_trans(host, addr, buf, oob,
2284 err = brcmnand_read_by_pio(mtd, chip, addr, trans, buf,
2310 err = brcmstb_nand_verify_erased_page(mtd, chip, buf,
2329 err = brcmnand_read_by_pio(mtd, chip, addr, trans, buf,
2342 static int brcmnand_read_page(struct nand_chip *chip, uint8_t *buf,
2352 mtd->writesize >> FC_SHIFT, (u32 *)buf, oob);
2355 static int brcmnand_read_page_raw(struct nand_chip *chip, uint8_t *buf,
2367 mtd->writesize >> FC_SHIFT, (u32 *)buf, oob);
2395 u64 addr, const u32 *buf, u8 *oob)
2402 dev_dbg(ctrl->dev, "write %llx <- %p\n", (unsigned long long)addr, buf);
2404 if (unlikely((unsigned long)buf & 0x03)) {
2405 dev_warn(ctrl->dev, "unaligned buffer: %p\n", buf);
2406 buf = (u32 *)((unsigned long)buf & ~0x03);
2418 if (use_dma(ctrl) && (has_edu(ctrl) || !oob) && flash_dma_buf_ok(buf)) {
2419 if (ctrl->dma_trans(host, addr, (u32 *)buf, oob, mtd->writesize,
2431 if (buf) {
2434 for (j = 0; j < FC_WORDS; j++, buf++)
2435 brcmnand_write_fc(ctrl, j, *buf);
2465 static int brcmnand_write_page(struct nand_chip *chip, const uint8_t *buf,
2473 brcmnand_write(mtd, chip, host->last_addr, (const u32 *)buf, oob);
2478 static int brcmnand_write_page_raw(struct nand_chip *chip, const uint8_t *buf,
2487 brcmnand_write(mtd, chip, host->last_addr, (const u32 *)buf, oob);
2619 char *buf, struct brcmnand_cfg *cfg)
2621 buf += sprintf(buf,
2631 sprintf(buf, ", Hamming ECC");
2633 sprintf(buf, ", BCH-%u (1KiB sector)", cfg->ecc_level << 1);
2635 sprintf(buf, ", BCH-%u", cfg->ecc_level);