• Josh Wu's avatar
    mtd: nand: teach write_page and write_page_raw return an error code · fdbad98d
    Josh Wu authored
    There is an implemention of hardware ECC write page function which may return an
    error indication.
    For instance, using Atmel HW PMECC to write one page into a nand flash, the hardware
    engine will compute the BCH ecc code for this page. so we need read a the
    status register to theck whether the ecc code is generated.
    But we cannot assume the status register always can be ready, for example,
    incorrect hardware configuration or hardware issue, in such case we need
    write_page() to return a error code.
    
    Since the definition of 'write_page' function in struct nand_ecc_ctrl is 'void'.
    So this patch will:
      1. add return 'int' value for 'write_page' function.
      2. to be consitent, add return 'int' value for 'write_page_raw' fuctions too.
      3. add code to test the return value, and if negative, indicate an
      error happend when write page with ECC.
      4. fix the compile warning in all impacted nand flash driver.
    
    Note: I couldn't compile-test all of these easily, as some had ARCH dependencies.
    Signed-off-by: default avatarJosh Wu <josh.wu@atmel.com>
    Signed-off-by: default avatarArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
    Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
    fdbad98d
bf5xx_nand.c 20.5 KB