From: Jonathan Cameron <jic23@kernel.org> To: Krzysztof Kozlowski <krzk@kernel.org> Cc: Hartmut Knaack <knaack.h@gmx.de>, Lars-Peter Clausen <lars@metafoo.de>, Peter Meerwald-Stadler <pmeerw@pmeerw.net>, Rob Herring <robh+dt@kernel.org>, Mark Rutland <mark.rutland@arm.com>, Kukjin Kim <kgene@kernel.org>, linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/2] iio: adc: exynos-adc: Use proper number of channels for Exynos4x12 Date: Tue, 12 Feb 2019 20:57:01 +0000 [thread overview] Message-ID: <20190212205701.4cf66d68@archlinux> (raw) In-Reply-To: <20190212174550.4383-2-krzk@kernel.org> On Tue, 12 Feb 2019 18:45:49 +0100 Krzysztof Kozlowski <krzk@kernel.org> wrote: > Exynos4212 and Exynos4412 have only four ADC channels so using > "samsung,exynos-adc-v1" compatible (for eight channels ADCv1) on them is > wrong. Add a new compatible for Exynos4x12. > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> I'll sneak this in as my last patch for this cycle (lucky timing ;). It could have done with a fixes tag. I'll mark it for stable as sounds and looks safe and simple. Looks like it goes all the way back so I'll leave it without one. Applied to the togreg branch of iio.git. This will be queued for the next merge window given how late we are in the cycle. Thanks, Jonathan > --- > .../bindings/iio/adc/samsung,exynos-adc.txt | 4 +++- > drivers/iio/adc/exynos_adc.c | 17 +++++++++++++++++ > 2 files changed, 20 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.txt b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.txt > index a10c1f89037d..e1fe02f3e3e9 100644 > --- a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.txt > +++ b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.txt > @@ -11,11 +11,13 @@ New driver handles the following > > Required properties: > - compatible: Must be "samsung,exynos-adc-v1" > - for exynos4412/5250 controllers. > + for Exynos5250 controllers. > Must be "samsung,exynos-adc-v2" for > future controllers. > Must be "samsung,exynos3250-adc" for > controllers compatible with ADC of Exynos3250. > + Must be "samsung,exynos4212-adc" for > + controllers compatible with ADC of Exynos4212 and Exynos4412. > Must be "samsung,exynos7-adc" for > the ADC in Exynos7 and compatibles > Must be "samsung,s3c2410-adc" for > diff --git a/drivers/iio/adc/exynos_adc.c b/drivers/iio/adc/exynos_adc.c > index fa2d2b5767f3..01f7c2570a1e 100644 > --- a/drivers/iio/adc/exynos_adc.c > +++ b/drivers/iio/adc/exynos_adc.c > @@ -115,6 +115,7 @@ > #define MAX_ADC_V2_CHANNELS 10 > #define MAX_ADC_V1_CHANNELS 8 > #define MAX_EXYNOS3250_ADC_CHANNELS 2 > +#define MAX_EXYNOS4212_ADC_CHANNELS 4 > #define MAX_S5PV210_ADC_CHANNELS 10 > > /* Bit definitions common for ADC_V1 and ADC_V2 */ > @@ -271,6 +272,19 @@ static void exynos_adc_v1_start_conv(struct exynos_adc *info, > writel(con1 | ADC_CON_EN_START, ADC_V1_CON(info->regs)); > } > > +/* Exynos4212 and 4412 is like ADCv1 but with four channels only */ > +static const struct exynos_adc_data exynos4212_adc_data = { > + .num_channels = MAX_EXYNOS4212_ADC_CHANNELS, > + .mask = ADC_DATX_MASK, /* 12 bit ADC resolution */ > + .needs_adc_phy = true, > + .phy_offset = EXYNOS_ADCV1_PHY_OFFSET, > + > + .init_hw = exynos_adc_v1_init_hw, > + .exit_hw = exynos_adc_v1_exit_hw, > + .clear_irq = exynos_adc_v1_clear_irq, > + .start_conv = exynos_adc_v1_start_conv, > +}; > + > static const struct exynos_adc_data exynos_adc_v1_data = { > .num_channels = MAX_ADC_V1_CHANNELS, > .mask = ADC_DATX_MASK, /* 12 bit ADC resolution */ > @@ -492,6 +506,9 @@ static const struct of_device_id exynos_adc_match[] = { > }, { > .compatible = "samsung,s5pv210-adc", > .data = &exynos_adc_s5pv210_data, > + }, { > + .compatible = "samsung,exynos4212-adc", > + .data = &exynos4212_adc_data, > }, { > .compatible = "samsung,exynos-adc-v1", > .data = &exynos_adc_v1_data,
WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Cameron <jic23@kernel.org> To: Krzysztof Kozlowski <krzk@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com>, devicetree@vger.kernel.org, Lars-Peter Clausen <lars@metafoo.de>, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Rob Herring <robh+dt@kernel.org>, Kukjin Kim <kgene@kernel.org>, Peter Meerwald-Stadler <pmeerw@pmeerw.net>, Hartmut Knaack <knaack.h@gmx.de>, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH 1/2] iio: adc: exynos-adc: Use proper number of channels for Exynos4x12 Date: Tue, 12 Feb 2019 20:57:01 +0000 [thread overview] Message-ID: <20190212205701.4cf66d68@archlinux> (raw) In-Reply-To: <20190212174550.4383-2-krzk@kernel.org> On Tue, 12 Feb 2019 18:45:49 +0100 Krzysztof Kozlowski <krzk@kernel.org> wrote: > Exynos4212 and Exynos4412 have only four ADC channels so using > "samsung,exynos-adc-v1" compatible (for eight channels ADCv1) on them is > wrong. Add a new compatible for Exynos4x12. > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> I'll sneak this in as my last patch for this cycle (lucky timing ;). It could have done with a fixes tag. I'll mark it for stable as sounds and looks safe and simple. Looks like it goes all the way back so I'll leave it without one. Applied to the togreg branch of iio.git. This will be queued for the next merge window given how late we are in the cycle. Thanks, Jonathan > --- > .../bindings/iio/adc/samsung,exynos-adc.txt | 4 +++- > drivers/iio/adc/exynos_adc.c | 17 +++++++++++++++++ > 2 files changed, 20 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.txt b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.txt > index a10c1f89037d..e1fe02f3e3e9 100644 > --- a/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.txt > +++ b/Documentation/devicetree/bindings/iio/adc/samsung,exynos-adc.txt > @@ -11,11 +11,13 @@ New driver handles the following > > Required properties: > - compatible: Must be "samsung,exynos-adc-v1" > - for exynos4412/5250 controllers. > + for Exynos5250 controllers. > Must be "samsung,exynos-adc-v2" for > future controllers. > Must be "samsung,exynos3250-adc" for > controllers compatible with ADC of Exynos3250. > + Must be "samsung,exynos4212-adc" for > + controllers compatible with ADC of Exynos4212 and Exynos4412. > Must be "samsung,exynos7-adc" for > the ADC in Exynos7 and compatibles > Must be "samsung,s3c2410-adc" for > diff --git a/drivers/iio/adc/exynos_adc.c b/drivers/iio/adc/exynos_adc.c > index fa2d2b5767f3..01f7c2570a1e 100644 > --- a/drivers/iio/adc/exynos_adc.c > +++ b/drivers/iio/adc/exynos_adc.c > @@ -115,6 +115,7 @@ > #define MAX_ADC_V2_CHANNELS 10 > #define MAX_ADC_V1_CHANNELS 8 > #define MAX_EXYNOS3250_ADC_CHANNELS 2 > +#define MAX_EXYNOS4212_ADC_CHANNELS 4 > #define MAX_S5PV210_ADC_CHANNELS 10 > > /* Bit definitions common for ADC_V1 and ADC_V2 */ > @@ -271,6 +272,19 @@ static void exynos_adc_v1_start_conv(struct exynos_adc *info, > writel(con1 | ADC_CON_EN_START, ADC_V1_CON(info->regs)); > } > > +/* Exynos4212 and 4412 is like ADCv1 but with four channels only */ > +static const struct exynos_adc_data exynos4212_adc_data = { > + .num_channels = MAX_EXYNOS4212_ADC_CHANNELS, > + .mask = ADC_DATX_MASK, /* 12 bit ADC resolution */ > + .needs_adc_phy = true, > + .phy_offset = EXYNOS_ADCV1_PHY_OFFSET, > + > + .init_hw = exynos_adc_v1_init_hw, > + .exit_hw = exynos_adc_v1_exit_hw, > + .clear_irq = exynos_adc_v1_clear_irq, > + .start_conv = exynos_adc_v1_start_conv, > +}; > + > static const struct exynos_adc_data exynos_adc_v1_data = { > .num_channels = MAX_ADC_V1_CHANNELS, > .mask = ADC_DATX_MASK, /* 12 bit ADC resolution */ > @@ -492,6 +506,9 @@ static const struct of_device_id exynos_adc_match[] = { > }, { > .compatible = "samsung,s5pv210-adc", > .data = &exynos_adc_s5pv210_data, > + }, { > + .compatible = "samsung,exynos4212-adc", > + .data = &exynos4212_adc_data, > }, { > .compatible = "samsung,exynos-adc-v1", > .data = &exynos_adc_v1_data, _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-02-12 20:57 UTC|newest] Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-02-12 17:45 [PATCH 0/2] ARM/dts/iio: exynos-adc: Use proper number of channels for Exynos4x12 Krzysztof Kozlowski 2019-02-12 17:45 ` Krzysztof Kozlowski 2019-02-12 17:45 ` [PATCH 1/2] iio: adc: " Krzysztof Kozlowski 2019-02-12 17:45 ` Krzysztof Kozlowski 2019-02-12 20:57 ` Jonathan Cameron [this message] 2019-02-12 20:57 ` Jonathan Cameron 2019-02-12 17:45 ` [PATCH 2/2] ARM: dts: exynos: Use ADC for Exynos4x12 on Exyno4412 Krzysztof Kozlowski 2019-02-12 17:45 ` Krzysztof Kozlowski 2019-03-18 18:38 ` Krzysztof Kozlowski 2019-03-18 18:38 ` Krzysztof Kozlowski
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=20190212205701.4cf66d68@archlinux \ --to=jic23@kernel.org \ --cc=devicetree@vger.kernel.org \ --cc=kgene@kernel.org \ --cc=knaack.h@gmx.de \ --cc=krzk@kernel.org \ --cc=lars@metafoo.de \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-iio@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-samsung-soc@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=pmeerw@pmeerw.net \ --cc=robh+dt@kernel.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.