On Fri, May 09, 2014 at 06:47:22PM +0200, Boris BREZILLON wrote:
> On 09/05/2014 18:03, Ezequiel Garcia wrote:
> > On 12 Mar 07:07 PM, Boris BREZILLON wrote:
> >> --- /dev/null
> >> +++ b/drivers/mtd/nand/sunxi_nand.c
> >> @@ -0,0 +1,1276 @@
...
> >> +static int sunxi_nand_ecc_init(struct mtd_info *mtd, struct nand_ecc_ctrl
> >> *ecc,
> >> + struct device_node *np)
> >> +{
> >> + struct nand_chip *nand = mtd->priv;
> >> + int ecc_step_size, ecc_strength;
> >> + int ret;
> >> +
> >> + ecc_step_size = of_get_nand_ecc_step_size(np);
> >> + ecc_strength = of_get_nand_ecc_strength(np);
> >> + if (ecc_step_size > 0 && ecc_strength > 0) {
> >> + ecc->size = ecc_step_size;
> >> + ecc->strength = ecc_strength;
> >> + } else {
> >> + ecc->size = nand->ecc_step_ds;
> >> + ecc->strength = nand->ecc_strength_ds;
> >> + }
> >> +
> > Shouldn't you check the devicetree value is not weaker than the
> > ONFI-obtained?
>
> I can definitely do that.
You can do that here, but take a look at the discussion Ezequiel and I
had about this:
http://thread.gmane.org/gmane.linux.drivers.devicetree/67462
We probably don't want to be doing anything drastic like overriding the
device tree configuration. Instead, we might want to stick a warning
into the core nand_base code that does the proper comparison of the
'*_ds' values with the actual values chosen in
chip->ecc->{size,strength}. The comparison is kind of subtle, actually,
so it'd be good to do it exactly once for everyone.
Brian
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html