( Pontscho | 2010. 09. 04., szo - 13:02 )

Azert a tobbitol sem kell hasra esni. Pillanatnyi kedvencem ez a 2004-es keltezesu, a kernelben 2009 ota letezo aranyos kis joszag az omap nand driverbol:

    
/* Read from ECC Control Register */
val = __raw_readl(info->gpmc_baseaddr + GPMC_ECC_CONTROL);
/* Clear all ECC | Enable Reg1 */
val = ((0x00000001<<8) | 0x00000001);
__raw_writel(val, info->gpmc_baseaddr + GPMC_ECC_CONTROL);

Meg a 2.6.35-ben is benne van, persze szuletett erre is patch ami fixalna, hirtelen nem talalom, de "termeszetesen" valahogy elkallodott.

Allitolag igy lenne helyes:


val = gpmc_register_read(sc->sc_gpmcsc, GPMC_ECC_CONTROL);
/* clear ecc, select ecc register 1 */
val &= ~ECCPOINTER;
val |= ECCCLEAR | MASKEDINT(ECCPOINTER, 1);
gpmc_register_write(sc->sc_gpmcsc, GPMC_ECC_CONTROL, val);

ECC check pwned minden TI hardveren futo disten.

Persze tudok vicces kodot mutatni Darwin/IOKitben es a FreeBSD/tun driverben is.

(thx to Replaced)

---
pontscho / fresh!mindworkz