/u-boot/lib/ |
A D | bch.c | 249 load_ecc8(bch, bch->ecc_buf, ecc); in encode_bch() 302 store_ecc8(bch, ecc, bch->ecc_buf); in encode_bch() 347 return (a && b) ? bch->a_pow_tab[mod_s(bch, bch->a_log_tab[a]+ in gf_mul() 353 return a ? bch->a_pow_tab[mod_s(bch, 2*bch->a_log_tab[a])] : 0; in gf_sqr() 359 return a ? bch->a_pow_tab[mod_s(bch, bch->a_log_tab[a]+ in gf_div() 365 return bch->a_pow_tab[GF_N(bch)-bch->a_log_tab[a]]; in gf_inv() 380 return mod_s(bch, GF_N(bch)-bch->a_log_tab[x]); in a_ilog() 601 roots[n++] = mod_s(bch, GF_N(bch)-bch->a_log_tab[poly->c[0]]+ in find_poly_deg1_roots() 860 gf_poly_logrep(bch, f, bch->cache); in compute_trace_bk_mod() 1071 compute_syndromes(bch, bch->ecc_buf, bch->syn); in decode_bch() [all …]
|
A D | Makefile | 93 obj-$(CONFIG_BCH) += bch.o
|
A D | Kconfig | 21 Enables software based BCH ECC algorithm present in lib/bch.c
|
/u-boot/drivers/mtd/nand/raw/ |
A D | octeontx_bch.c | 96 bch_reset(bch); in bch_disable() 111 bch_reset(bch); in bch_device_init() 123 bch->max_vfs = pci_sriov_get_totalvfs(bch->dev); in bch_device_init() 130 bch->vfs_enabled = bch->max_vfs; in bch_device_init() 136 rc = do_bch_init(bch); in bch_device_init() 147 dev->name, numvfs, bch, bch->vfs_in_use, bch->vfs_enabled); in bch_sriov_configure() 148 if (bch->vfs_in_use) in bch_sriov_configure() 171 struct bch_device *bch; in octeontx_pci_bchpf_probe() local 176 if (!bch) in octeontx_pci_bchpf_probe() 180 bch->dev = dev; in octeontx_pci_bchpf_probe() [all …]
|
A D | nand_bch.c | 31 struct bch_control *bch; member 51 encode_bch(nbc->bch, buf, chip->ecc.size, code); in nand_bch_calculate_ecc() 77 count = decode_bch(nbc->bch, NULL, chip->ecc.size, read_ecc, calc_ecc, in nand_bch_correct_data() 140 nbc->bch = init_bch(m, t, 0); in nand_bch_init() 141 if (!nbc->bch) in nand_bch_init() 145 if (nbc->bch->ecc_bytes != eccbytes) { in nand_bch_init() 147 eccbytes, nbc->bch->ecc_bytes); in nand_bch_init() 206 encode_bch(nbc->bch, erased_page, eccsize, nbc->eccmask); in nand_bch_init() 228 free_bch(nbc->bch); in nand_bch_free()
|
A D | arasan_nfc.c | 174 u8 bch; member 1198 (ecc_matrix[found].bch << ARASAN_NAND_ECC_BCH_SHIFT); in arasan_nand_ecc_init() 1201 if (ecc_matrix[found].bch) { in arasan_nand_ecc_init()
|
/u-boot/include/linux/ |
A D | bch.h | 58 void free_bch(struct bch_control *bch); 60 void encode_bch(struct bch_control *bch, const uint8_t *data, 63 int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
|
/u-boot/board/ge/common/ |
A D | vpd_reader.c | 59 struct bch_control *bch = init_bch(gfo, ecc_bits, prim_poly); in verify_bch() local 61 if (!bch) in verify_bch() 64 if (bch->ecc_bytes != ecc_length) { in verify_bch() 65 free_bch(bch); in verify_bch() 71 int errors = decode_bch(bch, data, data_length, ecc, NULL, NULL, in verify_bch() 74 free_bch(bch); in verify_bch()
|
/u-boot/arch/mips/dts/ |
A D | ci20.dts | 58 ingenic,bch-controller = <&bch>; 108 &bch {
|
A D | jz4780.dtsi | 156 bch: bch@134d0000 { label 157 compatible = "ingenic,jz4780-bch";
|
/u-boot/tools/ |
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()
|
/u-boot/arch/arm/dts/ |
A D | imx23.dtsi | 84 reg-names = "gpmi-nand", "bch"; 86 interrupt-names = "bch";
|
A D | imx28.dtsi | 108 reg-names = "gpmi-nand", "bch"; 110 interrupt-names = "bch";
|
A D | imx8mm.dtsi | 989 reg-names = "gpmi-nand", "bch"; 991 interrupt-names = "bch";
|
A D | imx8mn.dtsi | 963 reg-names = "gpmi-nand", "bch"; 965 interrupt-names = "bch";
|
A D | imx6ul.dtsi | 194 reg-names = "gpmi-nand", "bch"; 196 interrupt-names = "bch";
|
A D | imx6qdl.dtsi | 167 reg-names = "gpmi-nand", "bch"; 169 interrupt-names = "bch";
|
A D | imx7s.dtsi | 1140 reg-names = "gpmi-nand", "bch"; 1142 interrupt-names = "bch";
|
A D | imx6sx.dtsi | 223 reg-names = "gpmi-nand", "bch"; 225 interrupt-names = "bch";
|
/u-boot/doc/ |
A D | README.omap3 | 142 OMAP3 devices we can use the BCH library in lib/bch.c. To do so add CONFIG_BCH
|
/u-boot/arch/arm/mach-imx/ |
A D | cmd_nandbcb.c | 341 struct bch_control *bch = init_bch(m, eccbits, 0); in encode_bch_ecc() local 371 encode_bch(bch, psrc, blocksize, ecc_buf); in encode_bch_ecc() 383 free_bch(bch); in encode_bch_ecc()
|