[U-Boot] [PATCH] MTD: mxs_nand: Fix BCH read timeout error on boards requiring ECC

Stefano Babic sbabic at denx.de
Wed Feb 13 07:42:01 UTC 2019



On 13/02/19 00:05, Tom Rini wrote:
> On Tue, Feb 12, 2019 at 03:44:05PM -0600, Adam Ford wrote:
>> On Tue, Feb 12, 2019 at 3:41 PM Scott Wood <oss at buserror.net> wrote:
>>>
>>> On Sun, 2019-02-10 at 07:48 -0600, Adam Ford wrote:
>>>> On Sun, Feb 10, 2019 at 7:30 AM Adam Ford <aford173 at gmail.com> wrote:
>>>>>
>>>>> On Mon, Feb 4, 2019 at 12:17 PM Tim Harvey <tharvey at gateworks.com> wrote:
>>>>>>
>>>>>> On Wed, Jan 2, 2019 at 6:37 PM Adam Ford <aford173 at gmail.com> wrote:
>>>>>>>
>>>>>>> The LogicPD board uses a Micron Flash with ECC.  To boot this from
>>>>>>> SPL, the ECC needs to be correctly configured or the BCH engine
>>>>>>> times out.
>>>>>>>
>>>>>>> Signed-off-by: Adam Ford <aford173 at gmail.com>
>>>>>>>
>>>>>>> diff --git a/drivers/mtd/nand/raw/mxs_nand.c
>>>>>>> b/drivers/mtd/nand/raw/mxs_nand.c
>>>>>>> index e3341812a2..2d84bfffe2 100644
>>>>>>> --- a/drivers/mtd/nand/raw/mxs_nand.c
>>>>>>> +++ b/drivers/mtd/nand/raw/mxs_nand.c
>>>>>>> @@ -1163,6 +1163,12 @@ int mxs_nand_init_spl(struct nand_chip *nand)
>>>>>>>
>>>>>>>         nand_info->gpmi_regs = (struct mxs_gpmi_regs *)MXS_GPMI_BASE;
>>>>>>>         nand_info->bch_regs = (struct mxs_bch_regs *)MXS_BCH_BASE;
>>>>>>> +
>>>>>>> +       if (is_mx6sx() || is_mx7())
>>>>>>> +               nand_info->max_ecc_strength_supported = 62;
>>>>>>> +       else
>>>>>>> +               nand_info->max_ecc_strength_supported = 40;
>>>>>>> +
>>>>>>>         err = mxs_nand_alloc_buffers(nand_info);
>>>>>>>         if (err)
>>>>>>>                 return err;
>>>>>>> diff --git a/drivers/mtd/nand/raw/mxs_nand_spl.c
>>>>>>> b/drivers/mtd/nand/raw/mxs_nand_spl.c
>>>>>>> index c628f3adec..ba85baac60 100644
>>>>>>> --- a/drivers/mtd/nand/raw/mxs_nand_spl.c
>>>>>>> +++ b/drivers/mtd/nand/raw/mxs_nand_spl.c
>>>>>>> @@ -201,6 +201,7 @@ static int mxs_nand_init(void)
>>>>>>>         /* setup flash layout (does not scan as we override that) */
>>>>>>>         mtd->size = nand_chip.chipsize;
>>>>>>>         nand_chip.scan_bbt(mtd);
>>>>>>> +       mxs_nand_setup_ecc(mtd);
>>>>>>>
>>>>>>>         return 0;
>>>>>>>  }
>>>>>>> --
>>>>>>> 2.17.1
>>>>>>>
>>>>>>
>>>>>> Thanks Adam,
>>>>
>>>>  Scott / Stefano,
>>>>
>>>> I had to use Scott's other -email.
>>>>
>>>>
>>>>  Any chance this can get reviewed and/or applied for the next release?
>>>>  We've got a few people who have their respective tested-by comments.
>>>
>>> I haven't been involved in U-Boot for a while now.
>>
>> Tom / Stefano,
>>
>> Patchwork is showing this is being delegated to Scott, but he's saying
>> he isn't the right person.  Is there someone else who can review
>> and/or apply a few of these patches designated to Scott?  Both of the
>> patches I care about deligated to him are imx6 related
> 
> I've assigned the mxs related patches to Stefano, thanks!
> 

Ok, thanks - I take care of this.

Regards,
Stefano

-- 
=====================================================================
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================


More information about the U-Boot mailing list