Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f7046bf0 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'iio-for-3.10b' of...

Merge tag 'iio-for-3.10b' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next

Jonathan writes:

	Second round of IIO cleanups for the 3.10 cycle

	1) A nice little removal of the unwanted private pointer from
	   struct iio_trigger.
	2) Some clean up of the ad799x driver.
	3) Couple of cleanups for the exynos_adc driver and some documentation.
	4) Move the mxs-lradc initialization a little earlier in the driver to avoid
	   wiping out the configuration just after setting it.

	A nice small set of worthy bits and bobs.
parents 698f57f4 2b684024
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
Samsung Exynos Analog to Digital Converter bindings

This devicetree binding are for the new adc driver written fori
The devicetree bindings are for the new ADC driver written for
Exynos4 and upward SoCs from Samsung.

New driver handles the following
@@ -20,6 +20,9 @@ Required properties:
			format is being dependent on which interrupt controller
			the Samsung device uses.
- #io-channel-cells = <1>; As ADC has multiple outputs
- clocks		From common clock binding: handle to adc clock.
- clock-names		From common clock binding: Shall be "adc".
- vdd-supply		VDD input supply.

Note: child nodes can be added for auto probing from device tree.

@@ -31,6 +34,11 @@ adc: adc@12D10000 {
	interrupts = <0 106 0>;
	#io-channel-cells = <1>;
	io-channel-ranges;

	clocks = <&clock 303>;
	clock-names = "adc";

	vdd-supply = <&buck5_reg>;
};


@@ -49,4 +57,4 @@ adc@12D10000 {
};

Note: Does not apply to ADC driver under arch/arm/plat-samsung/
Note: The child node can be added under the adc node or seperately.
Note: The child node can be added under the adc node or separately.
+1 −1
Original line number Diff line number Diff line
@@ -25,7 +25,7 @@

int st_accel_trig_set_state(struct iio_trigger *trig, bool state)
{
	struct iio_dev *indio_dev = trig->private_data;
	struct iio_dev *indio_dev = iio_trigger_get_drvdata(trig);

	return st_sensors_set_dataready_irq(indio_dev, state);
}
+1 −1
Original line number Diff line number Diff line
@@ -470,7 +470,7 @@ static int ad_sd_probe_trigger(struct iio_dev *indio_dev)
		disable_irq_nosync(sigma_delta->spi->irq);
	}
	sigma_delta->trig->dev.parent = &sigma_delta->spi->dev;
	sigma_delta->trig->private_data = sigma_delta;
	iio_trigger_set_drvdata(sigma_delta->trig, sigma_delta);

	ret = iio_trigger_register(sigma_delta->trig);
	if (ret)
+2 −2
Original line number Diff line number Diff line
@@ -188,7 +188,7 @@ static u8 at91_adc_get_trigger_value_by_name(struct iio_dev *idev,

static int at91_adc_configure_trigger(struct iio_trigger *trig, bool state)
{
	struct iio_dev *idev = trig->private_data;
	struct iio_dev *idev = iio_trigger_get_drvdata(trig);
	struct at91_adc_state *st = iio_priv(idev);
	struct iio_buffer *buffer = idev->buffer;
	struct at91_adc_reg_desc *reg = st->registers;
@@ -254,7 +254,7 @@ static struct iio_trigger *at91_adc_allocate_trigger(struct iio_dev *idev,
		return NULL;

	trig->dev.parent = idev->dev.parent;
	trig->private_data = idev;
	iio_trigger_set_drvdata(trig, idev);
	trig->ops = &at91_adc_trigger_ops;

	ret = iio_trigger_register(trig);
+1 −1
Original line number Diff line number Diff line
@@ -440,7 +440,7 @@ static struct platform_driver exynos_adc_driver = {
	.driver		= {
		.name	= "exynos-adc",
		.owner	= THIS_MODULE,
		.of_match_table = of_match_ptr(exynos_adc_match),
		.of_match_table = exynos_adc_match,
		.pm	= &exynos_adc_pm_ops,
	},
};
Loading