Re: [RFCv3 2/7] mfd: twl4030-madc: Add DT support and convert to IIO framework

From: Lee Jones
Date: Wed Feb 26 2014 - 04:27:27 EST


> This converts twl4030-madc module to use the Industrial IO ADC
> framework and adds device tree support.
>
> Signed-off-by: Sebastian Reichel <sre@xxxxxxxxxx>
> ---
> drivers/mfd/twl4030-madc.c | 122 ++++++++++++++++++++++++++++++++++++++++++---
> 1 file changed, 115 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/mfd/twl4030-madc.c b/drivers/mfd/twl4030-madc.c
> index 5458561..81484ee 100644
> --- a/drivers/mfd/twl4030-madc.c
> +++ b/drivers/mfd/twl4030-madc.c
> @@ -47,6 +47,8 @@
> #include <linux/gfp.h>
> #include <linux/err.h>
>
> +#include <linux/iio/iio.h>
> +
> /*
> * struct twl4030_madc_data - a container for madc info
> * @dev - pointer to device structure for madc
> @@ -59,10 +61,74 @@ struct twl4030_madc_data {
> struct device *dev;
> struct mutex lock; /* mutex protecting this data structure */
> struct twl4030_madc_request requests[TWL4030_MADC_NUM_METHODS];
> + bool use_second_irq;

This should go into the same patch that adds the header doc, or visa
versa.

> int imr;
> int isr;
> };
>
> +static int twl4030_madc_read(struct iio_dev *iio_dev,
> + const struct iio_chan_spec *chan,
> + int *val, int *val2, long mask)
> +{
> + struct twl4030_madc_data *madc = iio_priv(iio_dev);
> + struct twl4030_madc_request req;
> + int channel = chan->channel;

Does this really add anything you save 6 chars.

<snip>

> /*
> * Phoenix provides 2 interrupt lines. The first one is connected to
> * the OMAP. The other one can be connected to the other processor such
> * as modem. Hence two separate ISR and IMR registers.
> */
> - madc->imr = (pdata->irq_line == 1) ?
> + if (pdata)
> + madc->use_second_irq = pdata->irq_line != 1;

Unconventional an unclear.

Stick the comparison in the if statement.

> + else
> + madc->use_second_irq = of_property_read_bool(np,
> + "ti,system-uses-second-madc-irq");
> +
> + madc->imr = (madc->use_second_irq == 1) ?

madc->imr = madc->use_second_irq ? <blah> : <blah>;

> TWL4030_MADC_IMR1 : TWL4030_MADC_IMR2;
> - madc->isr = (pdata->irq_line == 1) ?
> + madc->isr = (madc->use_second_irq == 1) ?

Same here.

<snip>

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/