2019-05-18 17:21:28

by Luca Weiss

[permalink] [raw]
Subject: [PATCH] arm64: dts: allwinner: a64: Add lradc node

Add a node describing the KEYADC on the A64.

Signed-off-by: Luca Weiss <[email protected]>
---
arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
index 7734f70e1057..dc1bf8c1afb5 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
@@ -704,6 +704,13 @@
status = "disabled";
};

+ lradc: lradc@1c21800 {
+ compatible = "allwinner,sun4i-a10-lradc-keys";
+ reg = <0x01c21800 0x100>;
+ interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
i2s0: i2s@1c22000 {
#sound-dai-cells = <0>;
compatible = "allwinner,sun50i-a64-i2s",
--
2.21.0


2019-05-20 14:32:33

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

Hi!

On Sat, May 18, 2019 at 07:09:30PM +0200, Luca Weiss wrote:
> Add a node describing the KEYADC on the A64.
>
> Signed-off-by: Luca Weiss <[email protected]>
> ---
> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> index 7734f70e1057..dc1bf8c1afb5 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> @@ -704,6 +704,13 @@
> status = "disabled";
> };
>
> + lradc: lradc@1c21800 {
> + compatible = "allwinner,sun4i-a10-lradc-keys";
> + reg = <0x01c21800 0x100>;
> + interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
> + status = "disabled";
> + };
> +

The controller is pretty different on the A64 compared to the A10. The
A10 has two channels for example, while the A64 has only one.

It looks like the one in the A83t though, so you can use that
compatible instead.

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


Attachments:
(No filename) (1.11 kB)
signature.asc (235.00 B)
Download all attachments

2019-05-21 06:46:33

by Luca Weiss

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

On May 20, 2019 1:07:42 PM GMT+02:00, Maxime Ripard <[email protected]> wrote:
>Hi!
>
>On Sat, May 18, 2019 at 07:09:30PM +0200, Luca Weiss wrote:
>> Add a node describing the KEYADC on the A64.
>>
>> Signed-off-by: Luca Weiss <[email protected]>
>> ---
>> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 7 +++++++
>> 1 file changed, 7 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
>b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
>> index 7734f70e1057..dc1bf8c1afb5 100644
>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
>> @@ -704,6 +704,13 @@
>> status = "disabled";
>> };
>>
>> + lradc: lradc@1c21800 {
>> + compatible = "allwinner,sun4i-a10-lradc-keys";
>> + reg = <0x01c21800 0x100>;
>> + interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
>> + status = "disabled";
>> + };
>> +
>
>The controller is pretty different on the A64 compared to the A10. The
>A10 has two channels for example, while the A64 has only one.
>
>It looks like the one in the A83t though, so you can use that
>compatible instead.
>
>Maxime
>
>--
>Maxime Ripard, Bootlin
>Embedded Linux and Kernel engineering
>https://bootlin.com

Hi,
Looking at the patch for the A83t, the only difference is that it uses a 3/4 instead of a 2/3 voltage divider, nothing is changed with the channels. But I'm also not sure which one (or a different one) is used from looking at the "A64 User Manual".

Thanks, Luca

2019-05-21 13:11:52

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

On Tue, May 21, 2019 at 08:43:45AM +0200, [email protected] wrote:
> On May 20, 2019 1:07:42 PM GMT+02:00, Maxime Ripard <[email protected]> wrote:
> >On Sat, May 18, 2019 at 07:09:30PM +0200, Luca Weiss wrote:
> >> Add a node describing the KEYADC on the A64.
> >>
> >> Signed-off-by: Luca Weiss <[email protected]>
> >> ---
> >> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 7 +++++++
> >> 1 file changed, 7 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> >b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> >> index 7734f70e1057..dc1bf8c1afb5 100644
> >> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> >> @@ -704,6 +704,13 @@
> >> status = "disabled";
> >> };
> >>
> >> + lradc: lradc@1c21800 {
> >> + compatible = "allwinner,sun4i-a10-lradc-keys";
> >> + reg = <0x01c21800 0x100>;
> >> + interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
> >> + status = "disabled";
> >> + };
> >> +
> >
> >The controller is pretty different on the A64 compared to the A10. The
> >A10 has two channels for example, while the A64 has only one.
> >
> >It looks like the one in the A83t though, so you can use that
> >compatible instead.
>
> Looking at the patch for the A83t, the only difference is that it
> uses a 3/4 instead of a 2/3 voltage divider, nothing is changed with
> the channels.

I guess you can reuse the A83t compatible here then, and a more
specific a64 compatible in case we ever need to fix this.

> But I'm also not sure which one (or a different one)
> is used from looking at the "A64 User Manual".

I'm sorry, what are you referring to with "one" in that sentence?

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


Attachments:
(No filename) (1.79 kB)
signature.asc (235.00 B)
Download all attachments

2019-05-21 13:55:22

by Luca Weiss

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

On May 21, 2019 3:09:55 PM GMT+02:00, Maxime Ripard <[email protected]> wrote:
>On Tue, May 21, 2019 at 08:43:45AM +0200, [email protected] wrote:
>> On May 20, 2019 1:07:42 PM GMT+02:00, Maxime Ripard
><[email protected]> wrote:
>> >On Sat, May 18, 2019 at 07:09:30PM +0200, Luca Weiss wrote:
>> >> Add a node describing the KEYADC on the A64.
>> >>
>> >> Signed-off-by: Luca Weiss <[email protected]>
>> >> ---
>> >> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 7 +++++++
>> >> 1 file changed, 7 insertions(+)
>> >>
>> >> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
>> >b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
>> >> index 7734f70e1057..dc1bf8c1afb5 100644
>> >> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
>> >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
>> >> @@ -704,6 +704,13 @@
>> >> status = "disabled";
>> >> };
>> >>
>> >> + lradc: lradc@1c21800 {
>> >> + compatible = "allwinner,sun4i-a10-lradc-keys";
>> >> + reg = <0x01c21800 0x100>;
>> >> + interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
>> >> + status = "disabled";
>> >> + };
>> >> +
>> >
>> >The controller is pretty different on the A64 compared to the A10.
>The
>> >A10 has two channels for example, while the A64 has only one.
>> >
>> >It looks like the one in the A83t though, so you can use that
>> >compatible instead.
>>
>> Looking at the patch for the A83t, the only difference is that it
>> uses a 3/4 instead of a 2/3 voltage divider, nothing is changed with
>> the channels.
>
>I guess you can reuse the A83t compatible here then, and a more
>specific a64 compatible in case we ever need to fix this.
>
>> But I'm also not sure which one (or a different one)
>> is used from looking at the "A64 User Manual".
>
>I'm sorry, what are you referring to with "one" in that sentence?
>
>Maxime
>
>--
>Maxime Ripard, Bootlin
>Embedded Linux and Kernel engineering
>https://bootlin.com

Hi,

Sorry, I meant I didn't find anything in the A64 user manual whether a 3/4 or a 2/3 voltage divider (or one with different values) is used on the A64.

Luca

2019-05-21 14:27:30

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

On Tue, May 21, 2019 at 03:52:47PM +0200, [email protected] wrote:
> On May 21, 2019 3:09:55 PM GMT+02:00, Maxime Ripard <[email protected]> wrote:
> >On Tue, May 21, 2019 at 08:43:45AM +0200, [email protected] wrote:
> >> On May 20, 2019 1:07:42 PM GMT+02:00, Maxime Ripard
> ><[email protected]> wrote:
> >> >On Sat, May 18, 2019 at 07:09:30PM +0200, Luca Weiss wrote:
> >> >> Add a node describing the KEYADC on the A64.
> >> >>
> >> >> Signed-off-by: Luca Weiss <[email protected]>
> >> >> ---
> >> >> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 7 +++++++
> >> >> 1 file changed, 7 insertions(+)
> >> >>
> >> >> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> >> >b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> >> >> index 7734f70e1057..dc1bf8c1afb5 100644
> >> >> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> >> >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> >> >> @@ -704,6 +704,13 @@
> >> >> status = "disabled";
> >> >> };
> >> >>
> >> >> + lradc: lradc@1c21800 {
> >> >> + compatible = "allwinner,sun4i-a10-lradc-keys";
> >> >> + reg = <0x01c21800 0x100>;
> >> >> + interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
> >> >> + status = "disabled";
> >> >> + };
> >> >> +
> >> >
> >> >The controller is pretty different on the A64 compared to the A10.
> >The
> >> >A10 has two channels for example, while the A64 has only one.
> >> >
> >> >It looks like the one in the A83t though, so you can use that
> >> >compatible instead.
> >>
> >> Looking at the patch for the A83t, the only difference is that it
> >> uses a 3/4 instead of a 2/3 voltage divider, nothing is changed with
> >> the channels.
> >
> >I guess you can reuse the A83t compatible here then, and a more
> >specific a64 compatible in case we ever need to fix this.
> >
> >> But I'm also not sure which one (or a different one)
> >> is used from looking at the "A64 User Manual".
> >
> >I'm sorry, what are you referring to with "one" in that sentence?
>
> Sorry, I meant I didn't find anything in the A64 user manual whether
> a 3/4 or a 2/3 voltage divider (or one with different values) is
> used on the A64.

Ok :)

I guess you can just reuse the A83t compatible then, together with the
A64's.

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


Attachments:
(No filename) (2.33 kB)
signature.asc (235.00 B)
Download all attachments

2019-05-24 08:39:15

by Luca Weiss

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

On Dienstag, 21. Mai 2019 16:25:44 CEST Maxime Ripard wrote:
> On Tue, May 21, 2019 at 03:52:47PM +0200, [email protected] wrote:
> > On May 21, 2019 3:09:55 PM GMT+02:00, Maxime Ripard
<[email protected]> wrote:
> > >On Tue, May 21, 2019 at 08:43:45AM +0200, [email protected] wrote:
> > >> On May 20, 2019 1:07:42 PM GMT+02:00, Maxime Ripard
> > >
> > ><[email protected]> wrote:
> > >> >On Sat, May 18, 2019 at 07:09:30PM +0200, Luca Weiss wrote:
> > >> >> Add a node describing the KEYADC on the A64.
> > >> >>
> > >> >> Signed-off-by: Luca Weiss <[email protected]>
> > >> >> ---
> > >> >>
> > >> >> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 7 +++++++
> > >> >> 1 file changed, 7 insertions(+)
> > >> >>
> > >> >> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > >> >
> > >> >b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > >> >
> > >> >> index 7734f70e1057..dc1bf8c1afb5 100644
> > >> >> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > >> >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > >> >> @@ -704,6 +704,13 @@
> > >> >>
> > >> >> status = "disabled";
> > >> >>
> > >> >> };
> > >> >>
> > >> >> + lradc: lradc@1c21800 {
> > >> >> + compatible = "allwinner,sun4i-a10-lradc-
keys";
> > >> >> + reg = <0x01c21800 0x100>;
> > >> >> + interrupts = <GIC_SPI 30
IRQ_TYPE_LEVEL_HIGH>;
> > >> >> + status = "disabled";
> > >> >> + };
> > >> >> +
> > >> >
> > >> >The controller is pretty different on the A64 compared to the A10.
> > >
> > >The
> > >
> > >> >A10 has two channels for example, while the A64 has only one.
> > >> >
> > >> >It looks like the one in the A83t though, so you can use that
> > >> >compatible instead.
> > >>
> > >> Looking at the patch for the A83t, the only difference is that it
> > >> uses a 3/4 instead of a 2/3 voltage divider, nothing is changed with
> > >> the channels.
> > >
> > >I guess you can reuse the A83t compatible here then, and a more
> > >specific a64 compatible in case we ever need to fix this.
> > >
> > >> But I'm also not sure which one (or a different one)
> > >> is used from looking at the "A64 User Manual".
> > >
> > >I'm sorry, what are you referring to with "one" in that sentence?
> >
> > Sorry, I meant I didn't find anything in the A64 user manual whether
> > a 3/4 or a 2/3 voltage divider (or one with different values) is
> > used on the A64.
>
> Ok :)
>
> I guess you can just reuse the A83t compatible then, together with the
> A64's.
>
> Maxime
>
> --
> Maxime Ripard, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com

Hi Maxime,
I'd submit a v2 with these changes to v1 then:
lradc: lradc@1c21800 {
- compatible = "allwinner,sun4i-a10-lradc-keys";
- reg = <0x01c21800 0x100>;
+ compatible = "allwinner,sun50i-a64-lradc-keys",
+ "allwinner,sun8i-a83t-r-lradc";
+ reg = <0x01c21800 0x400>;
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
status = "disabled";
};
Does that look okay?
The reg change is due to me not spotting the address being 0x01C2
1800---0x01C2 1BFF, so the size should be 0x400 and not 0x100.

Thanks for the feedback,
Luca


2019-05-24 09:23:13

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

On Fri, May 24, 2019 at 10:35:36AM +0200, Luca Weiss wrote:
> On Dienstag, 21. Mai 2019 16:25:44 CEST Maxime Ripard wrote:
> > On Tue, May 21, 2019 at 03:52:47PM +0200, [email protected] wrote:
> > > On May 21, 2019 3:09:55 PM GMT+02:00, Maxime Ripard
> <[email protected]> wrote:
> > > >On Tue, May 21, 2019 at 08:43:45AM +0200, [email protected] wrote:
> > > >> On May 20, 2019 1:07:42 PM GMT+02:00, Maxime Ripard
> > > >
> > > ><[email protected]> wrote:
> > > >> >On Sat, May 18, 2019 at 07:09:30PM +0200, Luca Weiss wrote:
> > > >> >> Add a node describing the KEYADC on the A64.
> > > >> >>
> > > >> >> Signed-off-by: Luca Weiss <[email protected]>
> > > >> >> ---
> > > >> >>
> > > >> >> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 7 +++++++
> > > >> >> 1 file changed, 7 insertions(+)
> > > >> >>
> > > >> >> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > > >> >
> > > >> >b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > > >> >
> > > >> >> index 7734f70e1057..dc1bf8c1afb5 100644
> > > >> >> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > > >> >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > > >> >> @@ -704,6 +704,13 @@
> > > >> >>
> > > >> >> status = "disabled";
> > > >> >>
> > > >> >> };
> > > >> >>
> > > >> >> + lradc: lradc@1c21800 {
> > > >> >> + compatible = "allwinner,sun4i-a10-lradc-
> keys";
> > > >> >> + reg = <0x01c21800 0x100>;
> > > >> >> + interrupts = <GIC_SPI 30
> IRQ_TYPE_LEVEL_HIGH>;
> > > >> >> + status = "disabled";
> > > >> >> + };
> > > >> >> +
> > > >> >
> > > >> >The controller is pretty different on the A64 compared to the A10.
> > > >
> > > >The
> > > >
> > > >> >A10 has two channels for example, while the A64 has only one.
> > > >> >
> > > >> >It looks like the one in the A83t though, so you can use that
> > > >> >compatible instead.
> > > >>
> > > >> Looking at the patch for the A83t, the only difference is that it
> > > >> uses a 3/4 instead of a 2/3 voltage divider, nothing is changed with
> > > >> the channels.
> > > >
> > > >I guess you can reuse the A83t compatible here then, and a more
> > > >specific a64 compatible in case we ever need to fix this.
> > > >
> > > >> But I'm also not sure which one (or a different one)
> > > >> is used from looking at the "A64 User Manual".
> > > >
> > > >I'm sorry, what are you referring to with "one" in that sentence?
> > >
> > > Sorry, I meant I didn't find anything in the A64 user manual whether
> > > a 3/4 or a 2/3 voltage divider (or one with different values) is
> > > used on the A64.
> >
> > Ok :)
> >
> > I guess you can just reuse the A83t compatible then, together with the
> > A64's.
>
> I'd submit a v2 with these changes to v1 then:
> lradc: lradc@1c21800 {
> - compatible = "allwinner,sun4i-a10-lradc-keys";
> - reg = <0x01c21800 0x100>;
> + compatible = "allwinner,sun50i-a64-lradc-keys",
> + "allwinner,sun8i-a83t-r-lradc";
> + reg = <0x01c21800 0x400>;
> interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
> status = "disabled";
> };
> Does that look okay?
> The reg change is due to me not spotting the address being 0x01C2
> 1800---0x01C2 1BFF, so the size should be 0x400 and not 0x100.

It would be great to drop the -keys from the compatible, and to
document the bindings

Looks good otherwise

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


Attachments:
(No filename) (3.59 kB)
signature.asc (235.00 B)
Download all attachments

2019-05-31 10:29:44

by Luca Weiss

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

On Freitag, 24. Mai 2019 11:20:01 CEST Maxime Ripard wrote:
>
> It would be great to drop the -keys from the compatible, and to
> document the bindings
>
> Looks good otherwise
>
> Maxime

Hi again,

So I should just document the "allwinner,sun50i-a64-lradc" string in
Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt ? Don't I also
have to add the compatible to the driver code then? Just adding the a64
compatible to a dts wouldn't work without that.

Thanks, Luca



2019-06-03 07:46:17

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

Hi,

On Fri, May 31, 2019 at 12:27:55PM +0200, Luca Weiss wrote:
> On Freitag, 24. Mai 2019 11:20:01 CEST Maxime Ripard wrote:
> >
> > It would be great to drop the -keys from the compatible, and to
> > document the bindings
> >
> > Looks good otherwise
> >
> > Maxime
>
> So I should just document the "allwinner,sun50i-a64-lradc" string in
> Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt ? Don't I also
> have to add the compatible to the driver code then? Just adding the a64
> compatible to a dts wouldn't work without that.

What I meant was that you needed both, something like:

compatible = "allwinner,sun50i-a64-lradc", "allwinner,sun8i-a83t-lradc";

That way, the OS will try to match a driver for the A64 compatible if
any, and fallback to the A83's otherwise. And since we don't have any
quirk at the moment, there's no change needed to the driver.

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


Attachments:
(No filename) (0.98 kB)
signature.asc (235.00 B)
Download all attachments

2019-06-03 15:24:05

by Luca Weiss

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

On Montag, 3. Juni 2019 09:42:47 CEST Maxime Ripard wrote:
> Hi,
>
> On Fri, May 31, 2019 at 12:27:55PM +0200, Luca Weiss wrote:
> > On Freitag, 24. Mai 2019 11:20:01 CEST Maxime Ripard wrote:
> > > It would be great to drop the -keys from the compatible, and to
> > > document the bindings
> > >
> > > Looks good otherwise
> > >
> > > Maxime
> >
> > So I should just document the "allwinner,sun50i-a64-lradc" string in
> > Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt ? Don't I
> > also
> > have to add the compatible to the driver code then? Just adding the a64
> > compatible to a dts wouldn't work without that.
>
> What I meant was that you needed both, something like:
>
> compatible = "allwinner,sun50i-a64-lradc", "allwinner,sun8i-a83t-lradc";
>
> That way, the OS will try to match a driver for the A64 compatible if
> any, and fallback to the A83's otherwise. And since we don't have any
> quirk at the moment, there's no change needed to the driver.
>
> Maxime
>
> --
> Maxime Ripard, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com

Hi Maxime,
sorry for the long back and forth, I hope I understood you correctly now.
Here's what I would submit as v2 then (I'll split the two files into seperate
patches as the devicetree documentation suggests)

Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt:
- compatible: should be one of the following string:
"allwinner,sun4i-a10-lradc-keys"
"allwinner,sun8i-a83t-r-lradc"
+ "allwinner,sun50i-a64-lradc", "allwinner,sun8i-a83t-r-lradc"

arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi:
+ lradc: lradc@1c21800 {
+ compatible = "allwinner,sun50i-a64-lradc",
+ "allwinner,sun8i-a83t-r-lradc";
+ reg = <0x01c21800 0x400>;
+ interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+

Thanks,
Luca


Attachments:
signature.asc (849.00 B)
This is a digitally signed message part.

2019-06-04 08:30:50

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: allwinner: a64: Add lradc node

On Mon, Jun 03, 2019 at 05:20:51PM +0200, Luca Weiss wrote:
> On Montag, 3. Juni 2019 09:42:47 CEST Maxime Ripard wrote:
> > Hi,
> >
> > On Fri, May 31, 2019 at 12:27:55PM +0200, Luca Weiss wrote:
> > > On Freitag, 24. Mai 2019 11:20:01 CEST Maxime Ripard wrote:
> > > > It would be great to drop the -keys from the compatible, and to
> > > > document the bindings
> > > >
> > > > Looks good otherwise
> > > >
> > > > Maxime
> > >
> > > So I should just document the "allwinner,sun50i-a64-lradc" string in
> > > Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt ? Don't I
> > > also
> > > have to add the compatible to the driver code then? Just adding the a64
> > > compatible to a dts wouldn't work without that.
> >
> > What I meant was that you needed both, something like:
> >
> > compatible = "allwinner,sun50i-a64-lradc", "allwinner,sun8i-a83t-lradc";
> >
> > That way, the OS will try to match a driver for the A64 compatible if
> > any, and fallback to the A83's otherwise. And since we don't have any
> > quirk at the moment, there's no change needed to the driver.
>
> sorry for the long back and forth, I hope I understood you correctly now.
> Here's what I would submit as v2 then (I'll split the two files into seperate
> patches as the devicetree documentation suggests)
>
> Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt:
> - compatible: should be one of the following string:
> "allwinner,sun4i-a10-lradc-keys"
> "allwinner,sun8i-a83t-r-lradc"
> + "allwinner,sun50i-a64-lradc", "allwinner,sun8i-a83t-r-lradc"
>
> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi:
> + lradc: lradc@1c21800 {
> + compatible = "allwinner,sun50i-a64-lradc",
> + "allwinner,sun8i-a83t-r-lradc";
> + reg = <0x01c21800 0x400>;
> + interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
> + status = "disabled";
> + };
> +
>
> Thanks,
> Luca

That looks correct :)

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


Attachments:
(No filename) (2.17 kB)
signature.asc (235.00 B)
Download all attachments