Thread (1 message) 1 message, 1 author, 2013-06-11

Re: [PATCH 21/22] iio/ti_am335x_adc: Allow to specify input line

From: Sebastian Andrzej Siewior <hidden>
Date: 2013-06-11 07:55:28
Also in: linux-iio

Possibly related (same subject, not in this thread)

On 06/09/2013 06:52 PM, Lars-Peter Clausen wrote:
quoted
@@ -199,8 +213,11 @@ static int tiadc_probe(struct platform_device *pdev)
 	struct tiadc_device	*adc_dev;
 	struct ti_tscadc_dev	*tscadc_dev = ti_tscadc_dev_get(pdev);
 	struct device_node	*node = tscadc_dev->dev->of_node;
+	struct property		*prop;
+	const __be32		*cur;
 	int			err;
-	u32			val32;
+	u32			val;
+	int channels		= 0;
The indention here looks a bit strange.
fixed
quoted
 
 	if (!node) {
 		dev_err(&pdev->dev, "Could not find valid DT data.\n");
@@ -222,11 +239,13 @@ static int tiadc_probe(struct platform_device *pdev)
 		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;
+
+	of_property_for_each_u32(node, "ti,adc-channels", prop, cur, val) {
+
No need for the extra new line
fixed
quoted
+		adc_dev->channel_line[channels] = val;
+		channels++;
You should make sure that channels is never >= 8
This is done in the mfd part where it is also checked for adc channels
+ touch channles not > 8.

Sebastian
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help