| /rk3399_rockchip-uboot/lib/ |
| H A D | bch.c | 155 static void encode_bch_unaligned(struct bch_control *bch, in encode_bch_unaligned() argument 161 const int l = BCH_ECC_WORDS(bch)-1; in encode_bch_unaligned() 164 p = bch->mod8_tab + (l+1)*(((ecc[0] >> 24)^(*data++)) & 0xff); in encode_bch_unaligned() 176 static void load_ecc8(struct bch_control *bch, uint32_t *dst, in load_ecc8() argument 180 unsigned int i, nwords = BCH_ECC_WORDS(bch)-1; in load_ecc8() 185 memcpy(pad, src, BCH_ECC_BYTES(bch)-4*nwords); in load_ecc8() 192 static void store_ecc8(struct bch_control *bch, uint8_t *dst, in store_ecc8() argument 196 unsigned int i, nwords = BCH_ECC_WORDS(bch)-1; in store_ecc8() 208 memcpy(dst, pad, BCH_ECC_BYTES(bch)-4*nwords); in store_ecc8() 225 void encode_bch(struct bch_control *bch, const uint8_t *data, in encode_bch() argument [all …]
|
| H A D | Makefile | 86 obj-$(CONFIG_BCH) += bch.o
|
| H A D | Kconfig | 6 Enables software based BCH ECC algorithm present in lib/bch.c
|
| /rk3399_rockchip-uboot/drivers/mtd/nand/raw/ |
| H A D | nand_bch.c | 29 struct bch_control *bch; member 49 encode_bch(nbc->bch, buf, chip->ecc.size, code); in nand_bch_calculate_ecc() 75 count = decode_bch(nbc->bch, NULL, chip->ecc.size, read_ecc, calc_ecc, in nand_bch_correct_data() 138 nbc->bch = init_bch(m, t, 0); in nand_bch_init() 139 if (!nbc->bch) in nand_bch_init() 143 if (nbc->bch->ecc_bytes != eccbytes) { in nand_bch_init() 145 eccbytes, nbc->bch->ecc_bytes); in nand_bch_init() 204 encode_bch(nbc->bch, erased_page, eccsize, nbc->eccmask); in nand_bch_init() 226 free_bch(nbc->bch); in nand_bch_free()
|
| H A D | arasan_nfc.c | 165 u8 bch; member 1160 (ecc_matrix[found].bch << ARASAN_NAND_ECC_BCH_SHIFT); in arasan_nand_ecc_init() 1163 if (ecc_matrix[found].bch) { in arasan_nand_ecc_init()
|
| /rk3399_rockchip-uboot/include/linux/ |
| H A D | bch.h | 59 void free_bch(struct bch_control *bch); 61 void encode_bch(struct bch_control *bch, const uint8_t *data, 64 int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
|
| /rk3399_rockchip-uboot/tools/ |
| H A D | sunxi-spl-image-builder.c | 115 struct bch_control *bch, int page) in write_page() argument 216 encode_bch(bch, buffer, info->ecc_step_size + 4, ecc); in write_page() 241 struct bch_control *bch; in create_image() local 245 bch = init_bch(14, info->ecc_strength, BCH_PRIMITIVE_POLY); in create_image() 246 if (!bch) { in create_image() 281 ret = write_page(info, buffer, src, rnd, dst, bch, page++); in create_image()
|
| /rk3399_rockchip-uboot/doc/ |
| H A D | README.omap3 | 159 OMAP3 devices we can use the BCH library in lib/bch.c. To do so add CONFIG_BCH
|
| /rk3399_rockchip-uboot/arch/arm/dts/ |
| H A D | imx6ul.dtsi | 167 reg-names = "gpmi-nand", "bch"; 169 interrupt-names = "bch";
|
| H A D | imx6ull.dtsi | 195 reg-names = "gpmi-nand", "bch"; 197 interrupt-names = "bch";
|
| H A D | imx6qdl.dtsi | 99 reg-names = "gpmi-nand", "bch"; 101 interrupt-names = "bch";
|
| H A D | imx6sx.dtsi | 190 reg-names = "gpmi-nand", "bch"; 192 interrupt-names = "bch";
|