From: Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> To: Samuel Ortiz <sameo-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> Cc: Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org>, linux-iio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-input-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Dmitry Torokhov <dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>, Jonathan Cameron <jic23-KWPb1pKIrIJaa/9Udqfwiw@public.gmane.org>, "Patil, Rachna" <rachna-l0cyMroinI0@public.gmane.org>, Pantelis Antoniou <panto-wVdstyuyKrO8r51toPun2/C9HSW9iNxf@public.gmane.org>, Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> Subject: [PATCH 08/22] iio/ti_am335x_adc: Add DT support Date: Wed, 5 Jun 2013 18:24:41 +0200 [thread overview] Message-ID: <1370449495-29981-9-git-send-email-bigeasy@linutronix.de> (raw) In-Reply-To: <1370449495-29981-1-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> From: "Patil, Rachna" <rachna-l0cyMroinI0@public.gmane.org> Add DT support for client ADC driver. [ panto-wVdstyuyKrO8r51toPun2/C9HSW9iNxf@public.gmane.org : use of_get_child_by_name instead of of_find_node_by_name ] Acked-by: Jonathan Cameron <jic23-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> Signed-off-by: Pantelis Antoniou <panto-wVdstyuyKrO8r51toPun2/C9HSW9iNxf@public.gmane.org> Signed-off-by: Patil, Rachna <rachna-l0cyMroinI0@public.gmane.org> Signed-off-by: Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org> [bigeasy: shift the code to the left, fix clean up on of_get_child_by_name() failer] Signed-off-by: Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> --- drivers/iio/adc/ti_am335x_adc.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/drivers/iio/adc/ti_am335x_adc.c b/drivers/iio/adc/ti_am335x_adc.c index 543b9c4..95bcd56 100644 --- a/drivers/iio/adc/ti_am335x_adc.c +++ b/drivers/iio/adc/ti_am335x_adc.c @@ -22,6 +22,8 @@ #include <linux/platform_device.h> #include <linux/io.h> #include <linux/iio/iio.h> +#include <linux/of.h> +#include <linux/of_device.h> #include <linux/mfd/ti_am335x_tscadc.h> #include <linux/platform_data/ti_am335x_adc.h> @@ -152,11 +154,12 @@ static int tiadc_probe(struct platform_device *pdev) struct iio_dev *indio_dev; struct tiadc_device *adc_dev; struct ti_tscadc_dev *tscadc_dev = ti_tscadc_dev_get(pdev); - struct mfd_tscadc_board *pdata; + struct mfd_tscadc_board *pdata = tscadc_dev->dev->platform_data; + struct device_node *node = tscadc_dev->dev->of_node; int err; + u32 val32; - pdata = tscadc_dev->dev->platform_data; - if (!pdata || !pdata->adc_init) { + if (!pdata && !node) { dev_err(&pdev->dev, "Could not find platform data\n"); return -EINVAL; } @@ -170,7 +173,21 @@ static int tiadc_probe(struct platform_device *pdev) adc_dev = iio_priv(indio_dev); adc_dev->mfd_tscadc = tscadc_dev; - adc_dev->channels = pdata->adc_init->adc_channels; + + if (pdata) + adc_dev->channels = pdata->adc_init->adc_channels; + else { + node = of_get_child_by_name(node, "adc"); + if (!node) { + err = -EINVAL; + goto err_free_device; + } + err = of_property_read_u32(node, + "ti,adc-channels", &val32); + if (err < 0) + goto err_free_device; + adc_dev->channels = val32; + } indio_dev->dev.parent = &pdev->dev; indio_dev->name = dev_name(&pdev->dev); -- 1.7.10.4
WARNING: multiple messages have this Message-ID (diff)
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de> To: Samuel Ortiz <sameo@linux.intel.com> Cc: Felipe Balbi <balbi@ti.com>, linux-iio@vger.kernel.org, linux-input@vger.kernel.org, Dmitry Torokhov <dmitry.torokhov@gmail.com>, Jonathan Cameron <jic23@cam.ac.uk>, "Patil, Rachna" <rachna@ti.com>, Pantelis Antoniou <panto@antoniou-consulting.com>, Sebastian Andrzej Siewior <bigeasy@linutronix.de> Subject: [PATCH 08/22] iio/ti_am335x_adc: Add DT support Date: Wed, 5 Jun 2013 18:24:41 +0200 [thread overview] Message-ID: <1370449495-29981-9-git-send-email-bigeasy@linutronix.de> (raw) In-Reply-To: <1370449495-29981-1-git-send-email-bigeasy@linutronix.de> From: "Patil, Rachna" <rachna@ti.com> Add DT support for client ADC driver. [ panto@antoniou-consulting.com : use of_get_child_by_name instead of of_find_node_by_name ] Acked-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com> Signed-off-by: Patil, Rachna <rachna@ti.com> Signed-off-by: Felipe Balbi <balbi@ti.com> [bigeasy: shift the code to the left, fix clean up on of_get_child_by_name() failer] Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> --- drivers/iio/adc/ti_am335x_adc.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/drivers/iio/adc/ti_am335x_adc.c b/drivers/iio/adc/ti_am335x_adc.c index 543b9c4..95bcd56 100644 --- a/drivers/iio/adc/ti_am335x_adc.c +++ b/drivers/iio/adc/ti_am335x_adc.c @@ -22,6 +22,8 @@ #include <linux/platform_device.h> #include <linux/io.h> #include <linux/iio/iio.h> +#include <linux/of.h> +#include <linux/of_device.h> #include <linux/mfd/ti_am335x_tscadc.h> #include <linux/platform_data/ti_am335x_adc.h> @@ -152,11 +154,12 @@ static int tiadc_probe(struct platform_device *pdev) struct iio_dev *indio_dev; struct tiadc_device *adc_dev; struct ti_tscadc_dev *tscadc_dev = ti_tscadc_dev_get(pdev); - struct mfd_tscadc_board *pdata; + struct mfd_tscadc_board *pdata = tscadc_dev->dev->platform_data; + struct device_node *node = tscadc_dev->dev->of_node; int err; + u32 val32; - pdata = tscadc_dev->dev->platform_data; - if (!pdata || !pdata->adc_init) { + if (!pdata && !node) { dev_err(&pdev->dev, "Could not find platform data\n"); return -EINVAL; } @@ -170,7 +173,21 @@ static int tiadc_probe(struct platform_device *pdev) adc_dev = iio_priv(indio_dev); adc_dev->mfd_tscadc = tscadc_dev; - adc_dev->channels = pdata->adc_init->adc_channels; + + if (pdata) + adc_dev->channels = pdata->adc_init->adc_channels; + else { + node = of_get_child_by_name(node, "adc"); + if (!node) { + err = -EINVAL; + goto err_free_device; + } + err = of_property_read_u32(node, + "ti,adc-channels", &val32); + if (err < 0) + goto err_free_device; + adc_dev->channels = val32; + } indio_dev->dev.parent = &pdev->dev; indio_dev->name = dev_name(&pdev->dev); -- 1.7.10.4
next prev parent reply other threads:[~2013-06-05 16:24 UTC|newest] Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-06-05 16:24 AM335x tsc & adc, dt + cleanup take 3 Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 03/22] input/ti_am33x_tsc: Step enable bits made configurable Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior [not found] ` <1370449495-29981-1-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> 2013-06-05 16:24 ` [PATCH 01/22] mfd/ti_am335x_tscadc: remove regmap Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 02/22] mfd & input & iio/ti_am335x_adc: use one structure for ti_tscadc_dev Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 04/22] input/ti_am33x_tsc: Order of TSC wires, made configurable Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 06/22] input/ti_am33x_tsc: Add DT support Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 07/22] input/ti_am33x_tsc: remove platform_data support Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior [this message] 2013-06-05 16:24 ` [PATCH 08/22] iio/ti_am335x_adc: Add DT support Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 14/22] arm/am33xx: add TSC/ADC mfd device support Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 16/22] mfd & input/ti_am335x_tsc: rename device from tsc to TI-am335x-tsc Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 17/22] mfd & iio/ti_am335x_adc: rename device from tiadc to TI-am335x-adc Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior [not found] ` <1370449495-29981-18-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> 2013-06-08 9:19 ` Jonathan Cameron 2013-06-08 9:19 ` Jonathan Cameron 2013-06-05 16:24 ` [PATCH 18/22] input/ti_am335x_adc: use only FIFO0 and clean up a little Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 19/22] input/ti_am335x_tsc: ACK the HW_PEN irq in ISR Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 20/22] input/ti_am335x_tsc: return IRQ_NONE if there was no IRQ for us Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 21/22] iio/ti_am335x_adc: Allow to specify input line Sebastian Andrzej Siewior 2013-06-05 16:24 ` Sebastian Andrzej Siewior [not found] ` <1370449495-29981-22-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> 2013-06-08 9:24 ` Jonathan Cameron 2013-06-08 9:24 ` Jonathan Cameron [not found] ` <51B2F85E.2080805-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> 2013-06-10 7:32 ` Sebastian Andrzej Siewior 2013-06-10 7:32 ` Sebastian Andrzej Siewior 2013-06-09 16:52 ` Lars-Peter Clausen 2013-06-09 16:52 ` Lars-Peter Clausen [not found] ` <51B4B2CE.3020300-Qo5EllUWu/uELgA04lAiVw@public.gmane.org> 2013-06-11 7:55 ` Sebastian Andrzej Siewior 2013-06-11 7:55 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 05/22] input/ti_am33x_tsc: remove unwanted fifo flush Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 09/22] iio/ti_am335x_adc: remove platform_data support Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 10/22] mfd/ti_am335x_tscadc: Add DT support Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 11/22] mfd/ti_am335x_tscadc: remove platform_data support Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 12/22] iio/ti_tscadc: Update with IIO map interface Sebastian Andrzej Siewior [not found] ` <1370449495-29981-13-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> 2013-06-08 9:18 ` Jonathan Cameron 2013-06-08 9:18 ` Jonathan Cameron 2013-06-09 16:41 ` Lars-Peter Clausen 2013-06-09 16:41 ` Lars-Peter Clausen 2013-06-10 7:40 ` Sebastian Andrzej Siewior [not found] ` <51B582D3.1050501-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> 2013-06-10 8:10 ` Pantelis Antoniou 2013-06-10 8:10 ` Pantelis Antoniou 2013-06-10 8:32 ` Lars-Peter Clausen [not found] ` <51B58F39.7020405-Qo5EllUWu/uELgA04lAiVw@public.gmane.org> 2013-06-10 8:33 ` Pantelis Antoniou 2013-06-10 8:33 ` Pantelis Antoniou 2013-06-10 8:38 ` Lars-Peter Clausen 2013-06-10 8:38 ` Lars-Peter Clausen [not found] ` <51B59071.9090908-Qo5EllUWu/uELgA04lAiVw@public.gmane.org> 2013-06-10 9:15 ` Sebastian Andrzej Siewior 2013-06-10 9:15 ` Sebastian Andrzej Siewior 2013-06-10 16:27 ` Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 13/22] mfd/ti_tscadc: deal with partial activation Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 15/22] input & mfd: ti_am335x_tsc remove remaining platform data pieces Sebastian Andrzej Siewior 2013-06-05 16:24 ` [PATCH 22/22] iio/ti_am335x_adc: check if we found the value Sebastian Andrzej Siewior 2013-06-11 11:30 am335x: TSC & ADC reworking including DT pieces, take 4 Sebastian Andrzej Siewior 2013-06-11 11:30 ` [PATCH 08/22] iio/ti_am335x_adc: Add DT support Sebastian Andrzej Siewior
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1370449495-29981-9-git-send-email-bigeasy@linutronix.de \ --to=bigeasy-hfztesqfncyowbw4kg4ksq@public.gmane.org \ --cc=balbi-l0cyMroinI0@public.gmane.org \ --cc=dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \ --cc=jic23-KWPb1pKIrIJaa/9Udqfwiw@public.gmane.org \ --cc=linux-iio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linux-input-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=panto-wVdstyuyKrO8r51toPun2/C9HSW9iNxf@public.gmane.org \ --cc=rachna-l0cyMroinI0@public.gmane.org \ --cc=sameo-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.