Hi Alexander, On Tue, 09 Dec 2014 21:53:12 +0100 Alexander Stein <alexanders83@xxxxxx> wrote: > Hi, > > On Monday 01 December 2014, 11:27:21 wrote Boris Brezillon: > > +static int at91_ebi_probe(struct platform_device *pdev) > > +{ > > + const struct of_device_id *match; > > + struct device_node *child; > > + struct device_node *np; > > + struct at91_ebi *ebi; > > + struct clk *clk; > > + int ret; > > + > > + match = of_match_device(at91_ebi_id_table, &pdev->dev); > > + if (!match || !match->data) > > + return -EINVAL; > > + > > + ebi = devm_kzalloc(&pdev->dev, sizeof(*ebi), GFP_KERNEL); > > + if (!ebi) > > + return -ENOMEM; > > + > > + ebi->caps = match->data; > > + ebi->dev = &pdev->dev; > > + > > + clk = devm_clk_get(&pdev->dev, NULL); > > + if (IS_ERR(clk)) > > + return PTR_ERR(clk); > > + > > + ebi->clk = clk; > > + > > + np = of_parse_phandle(pdev->dev.of_node, "atmel,smc", 0); > > + if (!np) > > + return -EINVAL; > > + > > + ebi->smc = syscon_node_to_regmap(np); > > + if (IS_ERR(ebi->smc)) > > + return PTR_ERR(ebi->smc); > > + > > + /* > > + * The sama5d3 does not provide an EBICSA register and thus does need > > + * to access the matrix registers. > > + */ > > + if (ebi->caps->ebi_csa) { > > + np = of_parse_phandle(pdev->dev.of_node, "atmel,matrix", 0); > > + if (np) > ^^^^^^^ > Shouldn't this be if (!np)? Absolutely, thanks for pointing this out. I'll test on other at91 platforms (I currently only test on sama5d3 boards, which do not have this EBICSA register) before submitting a new version. Regards, Boris -- Boris Brezillon, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html