On 11 Aug 09:57 PM, Robert Jarzmik wrote:
> The cases of READID detection are broken on pxa3xx. The reason is that
> in the early stages of nand probing, ie. at pxa3xx_nand_scan(), we
> always have :
>  - info->use_dma = 0 (regardless of dma support yet)
>  - info->chunk_size = 0 (not yet detected)
> 
> The READID issued by pxa3xx_nand_scan() will therefore end up in
> handle_data_pio(), and do_bytes will be 0, leading to not reading the
> nand id, and blocking detection.
> 
> This doesn't happen if "keep_config" is used, which is probably the most
> tested case.
> 
> Signed-off-by: Robert Jarzmik <robert.jarz...@free.fr>
> Fixes: 70ed85232a93 ("mtd: nand: pxa3xx: Introduce multiple page I/O
> support")

To be fair, Antoine submitted this a while ago:

http://lists.infradead.org/pipermail/linux-mtd/2015-April/058739.html

Not sure which one takes precedence in such a case (and yours
has a proper Fixes tag).

> ---
>  drivers/mtd/nand/pxa3xx_nand.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c
> index edfe329cc9db..b0737aec7caf 100644
> --- a/drivers/mtd/nand/pxa3xx_nand.c
> +++ b/drivers/mtd/nand/pxa3xx_nand.c
> @@ -1482,6 +1482,7 @@ static int pxa3xx_nand_scan(struct mtd_info *mtd)
>       int i, ret, num;
>       uint16_t ecc_strength, ecc_step;
>  
> +     info->chunk_size = 512;
>       if (pdata->keep_config && !pxa3xx_nand_detect_config(info))
>               goto KEEP_CONFIG;
>  
> -- 
> 2.1.4
> 
> 
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/

-- 
Ezequiel Garcia, VanguardiaSur
www.vanguardiasur.com.ar
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to