Home
last modified time | relevance | path

Searched refs:pmecc (Results 1 – 11 of 11) sorted by relevance

/Linux-v4.19/drivers/mtd/nand/raw/atmel/
Dpmecc.c172 struct atmel_pmecc *pmecc; member
280 static int atmel_pmecc_prepare_user_req(struct atmel_pmecc *pmecc, in atmel_pmecc_prepare_user_req() argument
312 for (i = 0; i < pmecc->caps->nstrengths; i++) { in atmel_pmecc_prepare_user_req()
313 int nbytes, strength = pmecc->caps->strengths[i]; in atmel_pmecc_prepare_user_req()
346 atmel_pmecc_create_user(struct atmel_pmecc *pmecc, in atmel_pmecc_create_user() argument
353 ret = atmel_pmecc_prepare_user_req(pmecc, req); in atmel_pmecc_create_user()
372 user->pmecc = pmecc; in atmel_pmecc_create_user()
395 for (strength = 0; strength < pmecc->caps->nstrengths; strength++) { in atmel_pmecc_create_user()
396 if (pmecc->caps->strengths[strength] == req->ecc.strength) in atmel_pmecc_create_user()
422 const int *strengths = user->pmecc->caps->strengths; in get_strength()
[all …]
DMakefile1 obj-$(CONFIG_MTD_NAND_ATMEL) += atmel-nand-controller.o atmel-pmecc.o
4 atmel-pmecc-objs := pmecc.o
Dpmecc.h60 atmel_pmecc_create_user(struct atmel_pmecc *pmecc,
64 void atmel_pmecc_reset(struct atmel_pmecc *pmecc);
Dnand-controller.c167 struct atmel_pmecc_user *pmecc; member
223 struct atmel_pmecc *pmecc; member
741 ret = atmel_pmecc_enable(nand->pmecc, op); in atmel_nand_pmecc_enable()
754 atmel_pmecc_disable(nand->pmecc); in atmel_nand_pmecc_disable()
771 ret = atmel_pmecc_wait_rdy(nand->pmecc); in atmel_nand_pmecc_generate_eccbytes()
783 atmel_pmecc_get_generated_eccbytes(nand->pmecc, i, in atmel_nand_pmecc_generate_eccbytes()
806 ret = atmel_pmecc_wait_rdy(nand->pmecc); in atmel_nand_pmecc_correct_data()
819 ret = atmel_pmecc_correct_sector(nand->pmecc, i, databuf, in atmel_nand_pmecc_correct_data()
821 if (ret < 0 && !atmel_pmecc_correct_erased_chunks(nand->pmecc)) in atmel_nand_pmecc_correct_data()
858 atmel_pmecc_disable(nand->pmecc); in atmel_nand_pmecc_write_pg()
[all …]
/Linux-v4.19/Documentation/devicetree/bindings/mtd/
Datmel-nand.txt56 "atmel,at91sam9g45-pmecc"
57 "atmel,sama5d4-pmecc"
58 "atmel,sama5d2-pmecc"
78 pmecc: ecc-engine@ffffc070 {
79 compatible = "atmel,at91sam9g45-pmecc";
101 ecc-engine = <&pmecc>;
146 - atmel,has-pmecc : boolean to enable Programmable Multibit ECC hardware,
148 - atmel,pmecc-cap : error correct capability for Programmable Multibit ECC
151 - atmel,pmecc-sector-size : sector size for ECC computation. Supported values
153 - atmel,pmecc-lookup-table-offset : includes two offsets of lookup table in ROM
[all …]
/Linux-v4.19/arch/arm/boot/dts/
Dat91-kizboxmini.dts129 atmel,has-pmecc;
130 atmel,pmecc-cap = <4>;
131 atmel,pmecc-sector-size = <512>;
Dsama5d2.dtsi318 ecc-engine = <&pmecc>;
344 atmel,has-pmecc;
345 atmel,pmecc-lookup-table-offset = <0x0 0x8000>;
1125 pmecc: ecc-engine@f8014070 { label
1126 compatible = "atmel,sama5d2-pmecc";
Dat91sam9n12.dtsi97 pmecc: ecc-engine@ffffe000 { label
98 compatible = "atmel,at91sam9g45-pmecc";
1052 ecc-engine = <&pmecc>;
Dat91sam9x5.dtsi105 pmecc: ecc-engine@ffffe000 { label
106 compatible = "atmel,at91sam9g45-pmecc";
1274 ecc-engine = <&pmecc>;
Dsama5d3.dtsi443 pmecc: ecc-engine@ffffc070 { label
444 compatible = "atmel,at91sam9g45-pmecc";
1566 ecc-engine = <&pmecc>;
Dsama5d4.dtsi307 ecc-engine = <&pmecc>;
1319 pmecc: ecc-engine@ffffc070 { label
1320 compatible = "atmel,sama5d4-pmecc";