Lines Matching defs:ecc
98 * @bch_type: Type of BCH ecc
112 dev_err(dev, "unsupported config ecc-size=%d\n", ecc_step_size);
117 dev_err(dev, "unsupported config ecc-step=%d\n", ecc_steps);
157 * @ecc: buffer with calculated ecc
159 * Load syndrome fragment registers with calculated ecc in reverse order.
162 struct elm_errorvec *err_vec, u8 *ecc)
176 /* syndrome fragment 0 = ecc[9-12B] */
177 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[9]);
180 /* syndrome fragment 1 = ecc[5-8B] */
182 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[5]);
185 /* syndrome fragment 2 = ecc[1-4B] */
187 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[1]);
190 /* syndrome fragment 3 = ecc[0B] */
192 val = ecc[0];
196 /* syndrome fragment 0 = ecc[20-52b] bits */
197 val = ((__force u32)cpu_to_be32(*(u32 *)&ecc[3]) >> 4) |
198 ((ecc[2] & 0xf) << 28);
201 /* syndrome fragment 1 = ecc[0-20b] bits */
203 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[0]) >> 12;
207 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[22]);
210 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[18]);
213 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[14]);
216 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[10]);
219 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[6]);
222 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[2]);
225 val = (__force u32)cpu_to_be32(*(u32 *)&ecc[0]) >> 16;
233 /* Update ecc pointer with ecc byte size */
234 ecc += info->ecc_syndrome_size;
347 /* Load valid ecc byte to syndrome fragment register */