[PATCH v3 4/5] dt/s3c64xx/spi: Use of_get_child_by_name to get a named child.
Kukjin Kim
kgene.kim at samsung.com
Mon Sep 17 21:15:26 EST 2012
Srinivas KANDAGATLA wrote:
>
> From: Srinivas Kandagatla <srinivas.kandagatla at st.com>
>
> As follow-up to "dt: introduce of_get_child_by_name to get child node by
> name." patch, This patch removes some of the code duplication in the
> driver by replacing it with of_get_child_by_name instead.
>
Cc'ed Mark Brown who is handling spi now.
Would be helpful if you could Cc the first patch "dt: introduce
of_get_child_by_name..." in this series to us.
Thanks.
Best regards,
Kgene.
--
Kukjin Kim <kgene.kim at samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla at st.com>
> ---
> drivers/spi/spi-s3c64xx.c | 7 ++++---
> 1 files changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c
> index d1c8441..f226f33 100644
> --- a/drivers/spi/spi-s3c64xx.c
> +++ b/drivers/spi/spi-s3c64xx.c
> @@ -835,9 +835,7 @@ static struct s3c64xx_spi_csinfo
> *s3c64xx_get_slave_ctrldata(
> return ERR_PTR(-EINVAL);
> }
>
> - for_each_child_of_node(slave_np, data_np)
> - if (!strcmp(data_np->name, "controller-data"))
> - break;
> + data_np = of_get_child_by_name(slave_np, "controller-data");
> if (!data_np) {
> dev_err(&spi->dev, "child node 'controller-data' not
> found\n");
> return ERR_PTR(-EINVAL);
> @@ -847,6 +845,7 @@ static struct s3c64xx_spi_csinfo
> *s3c64xx_get_slave_ctrldata(
> if (!cs) {
> dev_err(&spi->dev, "could not allocate memory for
> controller"
> " data\n");
> + of_node_put(data_np);
> return ERR_PTR(-ENOMEM);
> }
>
> @@ -855,11 +854,13 @@ static struct s3c64xx_spi_csinfo
> *s3c64xx_get_slave_ctrldata(
> dev_err(&spi->dev, "chip select gpio is not specified or "
> "invalid\n");
> kfree(cs);
> + of_node_put(data_np);
> return ERR_PTR(-EINVAL);
> }
>
> of_property_read_u32(data_np, "samsung,spi-feedback-delay",
> &fb_delay);
> cs->fb_delay = fb_delay;
> + of_node_put(data_np);
> return cs;
> }
>
> --
> 1.7.0.4
More information about the devicetree-discuss
mailing list