diff mbox series

ARM: dts: turris-omnia: Add mcu node

Message ID 20220819131152.6513-1-pali@kernel.org (mailing list archive)
State New, archived
Headers show
Series ARM: dts: turris-omnia: Add mcu node | expand

Commit Message

Pali Rohár Aug. 19, 2022, 1:11 p.m. UTC
At i2c address 0x2a is MCU command interface which provides access to GPIOs
connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.

Signed-off-by: Pali Rohár <pali@kernel.org>

---
Same change was already sent to U-Boot project together with driver. As
Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
this change also in Linux. There is a plan to write also Linux driver for
Turris Omnia MCU, like there is already in U-Boot.

https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
---
 arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

Comments

Pali Rohár Aug. 31, 2022, 2:28 p.m. UTC | #1
PING?

On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
> At i2c address 0x2a is MCU command interface which provides access to GPIOs
> connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
> 
> Signed-off-by: Pali Rohár <pali@kernel.org>
> 
> ---
> Same change was already sent to U-Boot project together with driver. As
> Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
> this change also in Linux. There is a plan to write also Linux driver for
> Turris Omnia MCU, like there is already in U-Boot.
> 
> https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
> https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
> ---
>  arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> index f4878df39753..f655e9229d68 100644
> --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
> +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> @@ -184,7 +184,13 @@
>  			#size-cells = <0>;
>  			reg = <0>;
>  
> -			/* STM32F0 command interface at address 0x2a */
> +			/* MCU command i2c API */
> +			mcu: mcu@2a {
> +				compatible = "cznic,turris-omnia-mcu";
> +				reg = <0x2a>;
> +				gpio-controller;
> +				#gpio-cells = <3>;
> +			};
>  
>  			led-controller@2b {
>  				compatible = "cznic,turris-omnia-leds";
> -- 
> 2.20.1
>
Andrew Lunn Sept. 1, 2022, 10:45 p.m. UTC | #2
On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
> PING?
> 
> On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
> > At i2c address 0x2a is MCU command interface which provides access to GPIOs
> > connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
> > 
> > Signed-off-by: Pali Rohár <pali@kernel.org>
> > 
> > ---
> > Same change was already sent to U-Boot project together with driver. As
> > Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
> > this change also in Linux. There is a plan to write also Linux driver for
> > Turris Omnia MCU, like there is already in U-Boot.
> > 
> > https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
> > https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
> > ---
> >  arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
> >  1 file changed, 7 insertions(+), 1 deletion(-)
> > 
> > diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > index f4878df39753..f655e9229d68 100644
> > --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > @@ -184,7 +184,13 @@
> >  			#size-cells = <0>;
> >  			reg = <0>;
> >  
> > -			/* STM32F0 command interface at address 0x2a */
> > +			/* MCU command i2c API */
> > +			mcu: mcu@2a {
> > +				compatible = "cznic,turris-omnia-mcu";
> > +				reg = <0x2a>;
> > +				gpio-controller;
> > +				#gpio-cells = <3>;
> > +			};

Please document the binding, preferably in yaml.

I'm also not sure what the DT people will say about the node name mcu.
I don't see any examples of that in the binding documentation. They
might request you rename it to gpio-controller, unless it does more
than GPIO? And if it does do more than GPIO we are then into mfd
territory, and the binding then becomes much more interesting. Then we
start the questions, are you defining a ABI now, before there is even
a driver for it?

       Andrew
Marek Behún Sept. 3, 2022, 2:39 a.m. UTC | #3
On Fri, 2 Sep 2022 00:45:58 +0200
Andrew Lunn <andrew@lunn.ch> wrote:

> On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
> > PING?
> > 
> > On Friday 19 August 2022 15:11:52 Pali Rohár wrote:  
> > > At i2c address 0x2a is MCU command interface which provides access to GPIOs
> > > connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
> > > 
> > > Signed-off-by: Pali Rohár <pali@kernel.org>
> > > 
> > > ---
> > > Same change was already sent to U-Boot project together with driver. As
> > > Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
> > > this change also in Linux. There is a plan to write also Linux driver for
> > > Turris Omnia MCU, like there is already in U-Boot.
> > > 
> > > https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
> > > https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
> > > ---
> > >  arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
> > >  1 file changed, 7 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > index f4878df39753..f655e9229d68 100644
> > > --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > @@ -184,7 +184,13 @@
> > >  			#size-cells = <0>;
> > >  			reg = <0>;
> > >  
> > > -			/* STM32F0 command interface at address 0x2a */
> > > +			/* MCU command i2c API */
> > > +			mcu: mcu@2a {
> > > +				compatible = "cznic,turris-omnia-mcu";
> > > +				reg = <0x2a>;
> > > +				gpio-controller;
> > > +				#gpio-cells = <3>;
> > > +			};  
> 
> Please document the binding, preferably in yaml.
> 
> I'm also not sure what the DT people will say about the node name mcu.
> I don't see any examples of that in the binding documentation. They
> might request you rename it to gpio-controller, unless it does more
> than GPIO? And if it does do more than GPIO we are then into mfd
> territory, and the binding then becomes much more interesting. Then we
> start the questions, are you defining a ABI now, before there is even
> a driver for it?

Most probably mfd territory. It is at least a gpio-controller,
reset-controller and watchdog.

Marek
Andrew Lunn Sept. 3, 2022, 3:12 p.m. UTC | #4
> > > > diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > > index f4878df39753..f655e9229d68 100644
> > > > --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > > +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > > @@ -184,7 +184,13 @@
> > > >  			#size-cells = <0>;
> > > >  			reg = <0>;
> > > >  
> > > > -			/* STM32F0 command interface at address 0x2a */
> > > > +			/* MCU command i2c API */
> > > > +			mcu: mcu@2a {
> > > > +				compatible = "cznic,turris-omnia-mcu";
> > > > +				reg = <0x2a>;
> > > > +				gpio-controller;
> > > > +				#gpio-cells = <3>;
> > > > +			};  
> > 
> > Please document the binding, preferably in yaml.
> > 
> > I'm also not sure what the DT people will say about the node name mcu.
> > I don't see any examples of that in the binding documentation. They
> > might request you rename it to gpio-controller, unless it does more
> > than GPIO? And if it does do more than GPIO we are then into mfd
> > territory, and the binding then becomes much more interesting. Then we
> > start the questions, are you defining a ABI now, before there is even
> > a driver for it?
> 
> Most probably mfd territory. It is at least a gpio-controller,
> reset-controller and watchdog.

O.K.

Then i suggest we wait for the actual drivers before committing any
DT. The binding will need revier, and could change.

    Andrew
Pali Rohár Sept. 3, 2022, 3:27 p.m. UTC | #5
On Friday 02 September 2022 00:45:58 Andrew Lunn wrote:
> On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
> > PING?
> > 
> > On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
> > > At i2c address 0x2a is MCU command interface which provides access to GPIOs
> > > connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
> > > 
> > > Signed-off-by: Pali Rohár <pali@kernel.org>
> > > 
> > > ---
> > > Same change was already sent to U-Boot project together with driver. As
> > > Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
> > > this change also in Linux. There is a plan to write also Linux driver for
> > > Turris Omnia MCU, like there is already in U-Boot.
> > > 
> > > https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
> > > https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
> > > ---
> > >  arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
> > >  1 file changed, 7 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > index f4878df39753..f655e9229d68 100644
> > > --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > @@ -184,7 +184,13 @@
> > >  			#size-cells = <0>;
> > >  			reg = <0>;
> > >  
> > > -			/* STM32F0 command interface at address 0x2a */
> > > +			/* MCU command i2c API */
> > > +			mcu: mcu@2a {
> > > +				compatible = "cznic,turris-omnia-mcu";
> > > +				reg = <0x2a>;
> > > +				gpio-controller;
> > > +				#gpio-cells = <3>;
> > > +			};
> 
> Please document the binding, preferably in yaml.

I'm not going to send any new yaml dt binding document as I see that
dt bindings is clearly deprecated project. Either patches for dt
bindings are waiting without any answer for months (maybe year?) or
patches are ignored/not accepted by beyond reasons or there are request
for changes which cannot work on the real hardware or that new yaml
cannot be parsed/validated due to ton of bugs in other schemas.

Sorry, this is just a waste of time and energy to write new those yamls
as it does not bring any value.

> I'm also not sure what the DT people will say about the node name mcu.
> I don't see any examples of that in the binding documentation. They
> might request you rename it to gpio-controller, unless it does more
> than GPIO? And if it does do more than GPIO we are then into mfd
> territory, and the binding then becomes much more interesting. Then we
> start the questions, are you defining a ABI now, before there is even
> a driver for it?
> 
>        Andrew

Yes, there is already driver. See my previous email, I mentioned it and
also I wrote link for this driver. Moreover now driver is merged in
upstream u-boot.

Driver has currently implemented only GPIO support, but other functions
supported by MCU would be implemented later.
Andrew Lunn Sept. 4, 2022, 1:02 a.m. UTC | #6
> > I'm also not sure what the DT people will say about the node name mcu.
> > I don't see any examples of that in the binding documentation. They
> > might request you rename it to gpio-controller, unless it does more
> > than GPIO? And if it does do more than GPIO we are then into mfd
> > territory, and the binding then becomes much more interesting. Then we
> > start the questions, are you defining a ABI now, before there is even
> > a driver for it?
> > 
> >        Andrew
> 
> Yes, there is already driver. See my previous email, I mentioned it and
> also I wrote link for this driver. Moreover now driver is merged in
> upstream u-boot.

I'm not comfortable accepting a DT binding for a driver which does not
exist in Linux. As i said, there are interesting ABI issues here, and
it could be the MFD, GPIO or reset Maintainers don't accept a binding
until a Linux driver exists.

At minimum, you need an Acked-by from the GPIO Maintainer, of the
binding before this DT change is merged via MVEBU.

	Andrew
Florian Fainelli Sept. 5, 2022, 4:19 p.m. UTC | #7
On 9/3/2022 8:27 AM, Pali Rohár wrote:
> On Friday 02 September 2022 00:45:58 Andrew Lunn wrote:
>> On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
>>> PING?
>>>
>>> On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
>>>> At i2c address 0x2a is MCU command interface which provides access to GPIOs
>>>> connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
>>>>
>>>> Signed-off-by: Pali Rohár <pali@kernel.org>
>>>>
>>>> ---
>>>> Same change was already sent to U-Boot project together with driver. As
>>>> Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
>>>> this change also in Linux. There is a plan to write also Linux driver for
>>>> Turris Omnia MCU, like there is already in U-Boot.
>>>>
>>>> https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
>>>> https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
>>>> ---
>>>>   arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
>>>>   1 file changed, 7 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
>>>> index f4878df39753..f655e9229d68 100644
>>>> --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
>>>> +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
>>>> @@ -184,7 +184,13 @@
>>>>   			#size-cells = <0>;
>>>>   			reg = <0>;
>>>>   
>>>> -			/* STM32F0 command interface at address 0x2a */
>>>> +			/* MCU command i2c API */
>>>> +			mcu: mcu@2a {
>>>> +				compatible = "cznic,turris-omnia-mcu";
>>>> +				reg = <0x2a>;
>>>> +				gpio-controller;
>>>> +				#gpio-cells = <3>;
>>>> +			};
>>
>> Please document the binding, preferably in yaml.
> 
> I'm not going to send any new yaml dt binding document as I see that
> dt bindings is clearly deprecated project. Either patches for dt
> bindings are waiting without any answer for months (maybe year?) or
> patches are ignored/not accepted by beyond reasons or there are request
> for changes which cannot work on the real hardware or that new yaml
> cannot be parsed/validated due to ton of bugs in other schemas.

These are some pretty hard statements that are not nearly true, maybe 
they are based upon your past experience, but Rob and Krysztof provide 
feedback within a few days at most on DT bindings and DTS files.

> 
> Sorry, this is just a waste of time and energy to write new those yamls
> as it does not bring any value.

So you say.
Krzysztof Kozlowski Sept. 5, 2022, 4:34 p.m. UTC | #8
On 05/09/2022 18:19, Florian Fainelli wrote:
> 
> 
> On 9/3/2022 8:27 AM, Pali Rohár wrote:
>> On Friday 02 September 2022 00:45:58 Andrew Lunn wrote:
>>> On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
>>>> PING?
>>>>
>>>> On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
>>>>> At i2c address 0x2a is MCU command interface which provides access to GPIOs
>>>>> connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
>>>>>
>>>>> Signed-off-by: Pali Rohár <pali@kernel.org>
>>>>>
>>>>> ---
>>>>> Same change was already sent to U-Boot project together with driver. As
>>>>> Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
>>>>> this change also in Linux. There is a plan to write also Linux driver for
>>>>> Turris Omnia MCU, like there is already in U-Boot.
>>>>>
>>>>> https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
>>>>> https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
>>>>> ---
>>>>>   arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
>>>>>   1 file changed, 7 insertions(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
>>>>> index f4878df39753..f655e9229d68 100644
>>>>> --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
>>>>> +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
>>>>> @@ -184,7 +184,13 @@
>>>>>   			#size-cells = <0>;
>>>>>   			reg = <0>;
>>>>>   
>>>>> -			/* STM32F0 command interface at address 0x2a */
>>>>> +			/* MCU command i2c API */
>>>>> +			mcu: mcu@2a {
>>>>> +				compatible = "cznic,turris-omnia-mcu";
>>>>> +				reg = <0x2a>;
>>>>> +				gpio-controller;
>>>>> +				#gpio-cells = <3>;
>>>>> +			};
>>>
>>> Please document the binding, preferably in yaml.
>>
>> I'm not going to send any new yaml dt binding document as I see that
>> dt bindings is clearly deprecated project. Either patches for dt
>> bindings are waiting without any answer for months (maybe year?) or
>> patches are ignored/not accepted by beyond reasons or there are request
>> for changes which cannot work on the real hardware or that new yaml
>> cannot be parsed/validated due to ton of bugs in other schemas.
> 
> These are some pretty hard statements that are not nearly true, maybe 
> they are based upon your past experience, but Rob and Krysztof provide 
> feedback within a few days at most on DT bindings and DTS files.

Pali, you wrote in the past that you cannot run one command to install
dtschema ("pip") thus for you this automated testing is
difficult/broken/non working. If running one "pip" command is not
possible, what I can say more? Shall I login to your machine and set it
up? Or did you configure your machine that way, that it is not possible
to run one pip command?

Whether the patches are waiting for months and years is difficult to
address to, without actual links. Because for sure you will be able to
find one patch which was missed in our inboxes and you did not get an
answer...  With Rob we both work much more than reasonable/healthy 8h
per day... Yet I recall you always received feedback, just not always
what you expected or wanted.

This binding here was never sent to mailing list:
https://lore.kernel.org/all/?q=cznic%2Cturris-omnia-mcu

>> Sorry, this is just a waste of time and energy to write new those yamls
>> as it does not bring any value.

It brings quite nice value - allows to check whether your bindings and
your DTS are correct. Any difficulty to install and run dtschema is not
equal to "does not bring any value"...

Anyway devices cannot go without bindings, thus it's a NAK.

Best regards,
Krzysztof
Pali Rohár Sept. 5, 2022, 5:12 p.m. UTC | #9
On Monday 05 September 2022 18:34:48 Krzysztof Kozlowski wrote:
> On 05/09/2022 18:19, Florian Fainelli wrote:
> > 
> > 
> > On 9/3/2022 8:27 AM, Pali Rohár wrote:
> >> On Friday 02 September 2022 00:45:58 Andrew Lunn wrote:
> >>> On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
> >>>> PING?
> >>>>
> >>>> On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
> >>>>> At i2c address 0x2a is MCU command interface which provides access to GPIOs
> >>>>> connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
> >>>>>
> >>>>> Signed-off-by: Pali Rohár <pali@kernel.org>
> >>>>>
> >>>>> ---
> >>>>> Same change was already sent to U-Boot project together with driver. As
> >>>>> Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
> >>>>> this change also in Linux. There is a plan to write also Linux driver for
> >>>>> Turris Omnia MCU, like there is already in U-Boot.
> >>>>>
> >>>>> https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
> >>>>> https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
> >>>>> ---
> >>>>>   arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
> >>>>>   1 file changed, 7 insertions(+), 1 deletion(-)
> >>>>>
> >>>>> diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> >>>>> index f4878df39753..f655e9229d68 100644
> >>>>> --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
> >>>>> +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> >>>>> @@ -184,7 +184,13 @@
> >>>>>   			#size-cells = <0>;
> >>>>>   			reg = <0>;
> >>>>>   
> >>>>> -			/* STM32F0 command interface at address 0x2a */
> >>>>> +			/* MCU command i2c API */
> >>>>> +			mcu: mcu@2a {
> >>>>> +				compatible = "cznic,turris-omnia-mcu";
> >>>>> +				reg = <0x2a>;
> >>>>> +				gpio-controller;
> >>>>> +				#gpio-cells = <3>;
> >>>>> +			};
> >>>
> >>> Please document the binding, preferably in yaml.
> >>
> >> I'm not going to send any new yaml dt binding document as I see that
> >> dt bindings is clearly deprecated project. Either patches for dt
> >> bindings are waiting without any answer for months (maybe year?) or
> >> patches are ignored/not accepted by beyond reasons or there are request
> >> for changes which cannot work on the real hardware or that new yaml
> >> cannot be parsed/validated due to ton of bugs in other schemas.
> > 
> > These are some pretty hard statements that are not nearly true, maybe 
> > they are based upon your past experience, but Rob and Krysztof provide 
> > feedback within a few days at most on DT bindings and DTS files.
> 
> Pali, you wrote in the past that you cannot run one command to install
> dtschema ("pip") thus for you this automated testing is
> difficult/broken/non working. If running one "pip" command is not
> possible, what I can say more? Shall I login to your machine and set it
> up? Or did you configure your machine that way, that it is not possible
> to run one pip command?

Sorry no, it is too late. I have already lost interested in it. For me
it is like a ride on the dead horse.

> Whether the patches are waiting for months and years is difficult to
> address to, without actual links. Because for sure you will be able to
> find one patch which was missed in our inboxes and you did not get an
> answer...  With Rob we both work much more than reasonable/healthy 8h
> per day... Yet I recall you always received feedback, just not always
> what you expected or wanted.

Now I have replied to one example email without a reaction. Another
example is this https://github.com/devicetree-org/dt-schema/pull/64
which completely blocked any improvements which I proposed in PCIe core
code for fixing PCIe state machine. After half of year of waiting I
decided to stop any work on this as I see it is dead those schemas.
Other examples are that received feedback suggest to do change which
does not work on the real hardware. So yes, I cannot accept, expect or
want something like that. Schema which works in that ultra-supper-duper
software but DTS written according to it does not work on the real
hardware is for me useless...

> This binding here was never sent to mailing list:
> https://lore.kernel.org/all/?q=cznic%2Cturris-omnia-mcu
> 
> >> Sorry, this is just a waste of time and energy to write new those yamls
> >> as it does not bring any value.
> 
> It brings quite nice value - allows to check whether your bindings and
> your DTS are correct. Any difficulty to install and run dtschema is not
> equal to "does not bring any value"...

It just took lot of my time and did nothing useful. Hence for it it has
zero value.

> Anyway devices cannot go without bindings, thus it's a NAK.
> 
> Best regards,
> Krzysztof
Krzysztof Kozlowski Sept. 6, 2022, 6:34 a.m. UTC | #10
On 05/09/2022 19:12, Pali Rohár wrote:
> On Monday 05 September 2022 18:34:48 Krzysztof Kozlowski wrote:
>> On 05/09/2022 18:19, Florian Fainelli wrote:
>>>
>>>
>>> On 9/3/2022 8:27 AM, Pali Rohár wrote:
>>>> On Friday 02 September 2022 00:45:58 Andrew Lunn wrote:
>>>>> On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
>>>>>> PING?
>>>>>>
>>>>>> On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
>>>>>>> At i2c address 0x2a is MCU command interface which provides access to GPIOs
>>>>>>> connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
>>>>>>>
>>>>>>> Signed-off-by: Pali Rohár <pali@kernel.org>
>>>>>>>
>>>>>>> ---
>>>>>>> Same change was already sent to U-Boot project together with driver. As
>>>>>>> Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
>>>>>>> this change also in Linux. There is a plan to write also Linux driver for
>>>>>>> Turris Omnia MCU, like there is already in U-Boot.
>>>>>>>
>>>>>>> https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
>>>>>>> https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
>>>>>>> ---
>>>>>>>   arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
>>>>>>>   1 file changed, 7 insertions(+), 1 deletion(-)
>>>>>>>
>>>>>>> diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
>>>>>>> index f4878df39753..f655e9229d68 100644
>>>>>>> --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
>>>>>>> +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
>>>>>>> @@ -184,7 +184,13 @@
>>>>>>>   			#size-cells = <0>;
>>>>>>>   			reg = <0>;
>>>>>>>   
>>>>>>> -			/* STM32F0 command interface at address 0x2a */
>>>>>>> +			/* MCU command i2c API */
>>>>>>> +			mcu: mcu@2a {
>>>>>>> +				compatible = "cznic,turris-omnia-mcu";
>>>>>>> +				reg = <0x2a>;
>>>>>>> +				gpio-controller;
>>>>>>> +				#gpio-cells = <3>;
>>>>>>> +			};
>>>>>
>>>>> Please document the binding, preferably in yaml.
>>>>
>>>> I'm not going to send any new yaml dt binding document as I see that
>>>> dt bindings is clearly deprecated project. Either patches for dt
>>>> bindings are waiting without any answer for months (maybe year?) or
>>>> patches are ignored/not accepted by beyond reasons or there are request
>>>> for changes which cannot work on the real hardware or that new yaml
>>>> cannot be parsed/validated due to ton of bugs in other schemas.
>>>
>>> These are some pretty hard statements that are not nearly true, maybe 
>>> they are based upon your past experience, but Rob and Krysztof provide 
>>> feedback within a few days at most on DT bindings and DTS files.
>>
>> Pali, you wrote in the past that you cannot run one command to install
>> dtschema ("pip") thus for you this automated testing is
>> difficult/broken/non working. If running one "pip" command is not
>> possible, what I can say more? Shall I login to your machine and set it
>> up? Or did you configure your machine that way, that it is not possible
>> to run one pip command?
> 
> Sorry no, it is too late. I have already lost interested in it. For me
> it is like a ride on the dead horse.
> 
>> Whether the patches are waiting for months and years is difficult to
>> address to, without actual links. Because for sure you will be able to
>> find one patch which was missed in our inboxes and you did not get an
>> answer...  With Rob we both work much more than reasonable/healthy 8h
>> per day... Yet I recall you always received feedback, just not always
>> what you expected or wanted.
> 
> Now I have replied to one example email without a reaction. 

Which was not a patch. You asked us for some knowledge and Rob provided
you answers. Or maybe you think that our job is to solve each technical
problem of everyone in the world till asking person is happy? Sounds
like nice job. :)

> Another
> example is this https://github.com/devicetree-org/dt-schema/pull/64
> which completely blocked any improvements which I proposed in PCIe core
> code for fixing PCIe state machine. After half of year of waiting I
> decided to stop any work on this as I see it is dead those schemas.

It finished with Rob comments, so ball is on your side, isn't it?

> Other examples are that received feedback suggest to do change which
> does not work on the real hardware. So yes, I cannot accept, expect or
> want something like that. Schema which works in that ultra-supper-duper
> software but DTS written according to it does not work on the real
> hardware is for me useless...
> 
>> This binding here was never sent to mailing list:
>> https://lore.kernel.org/all/?q=cznic%2Cturris-omnia-mcu
>>
>>>> Sorry, this is just a waste of time and energy to write new those yamls
>>>> as it does not bring any value.
>>
>> It brings quite nice value - allows to check whether your bindings and
>> your DTS are correct. Any difficulty to install and run dtschema is not
>> equal to "does not bring any value"...
> 
> It just took lot of my time and did nothing useful. Hence for it it has
> zero value.

Sorry to hear. When I was very, very small, C also took a lot of my time
and did nothing useful. Nothing useful in that stage of my knowledge, of
course.


Best regards,
Krzysztof
Pali Rohár Sept. 6, 2022, 7:24 a.m. UTC | #11
On Tuesday 06 September 2022 08:34:42 Krzysztof Kozlowski wrote:
> On 05/09/2022 19:12, Pali Rohár wrote:
> > On Monday 05 September 2022 18:34:48 Krzysztof Kozlowski wrote:
> >> On 05/09/2022 18:19, Florian Fainelli wrote:
> >>>
> >>>
> >>> On 9/3/2022 8:27 AM, Pali Rohár wrote:
> >>>> On Friday 02 September 2022 00:45:58 Andrew Lunn wrote:
> >>>>> On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
> >>>>>> PING?
> >>>>>>
> >>>>>> On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
> >>>>>>> At i2c address 0x2a is MCU command interface which provides access to GPIOs
> >>>>>>> connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
> >>>>>>>
> >>>>>>> Signed-off-by: Pali Rohár <pali@kernel.org>
> >>>>>>>
> >>>>>>> ---
> >>>>>>> Same change was already sent to U-Boot project together with driver. As
> >>>>>>> Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
> >>>>>>> this change also in Linux. There is a plan to write also Linux driver for
> >>>>>>> Turris Omnia MCU, like there is already in U-Boot.
> >>>>>>>
> >>>>>>> https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
> >>>>>>> https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
> >>>>>>> ---
> >>>>>>>   arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
> >>>>>>>   1 file changed, 7 insertions(+), 1 deletion(-)
> >>>>>>>
> >>>>>>> diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> >>>>>>> index f4878df39753..f655e9229d68 100644
> >>>>>>> --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
> >>>>>>> +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> >>>>>>> @@ -184,7 +184,13 @@
> >>>>>>>   			#size-cells = <0>;
> >>>>>>>   			reg = <0>;
> >>>>>>>   
> >>>>>>> -			/* STM32F0 command interface at address 0x2a */
> >>>>>>> +			/* MCU command i2c API */
> >>>>>>> +			mcu: mcu@2a {
> >>>>>>> +				compatible = "cznic,turris-omnia-mcu";
> >>>>>>> +				reg = <0x2a>;
> >>>>>>> +				gpio-controller;
> >>>>>>> +				#gpio-cells = <3>;
> >>>>>>> +			};
> >>>>>
> >>>>> Please document the binding, preferably in yaml.
> >>>>
> >>>> I'm not going to send any new yaml dt binding document as I see that
> >>>> dt bindings is clearly deprecated project. Either patches for dt
> >>>> bindings are waiting without any answer for months (maybe year?) or
> >>>> patches are ignored/not accepted by beyond reasons or there are request
> >>>> for changes which cannot work on the real hardware or that new yaml
> >>>> cannot be parsed/validated due to ton of bugs in other schemas.
> >>>
> >>> These are some pretty hard statements that are not nearly true, maybe 
> >>> they are based upon your past experience, but Rob and Krysztof provide 
> >>> feedback within a few days at most on DT bindings and DTS files.
> >>
> >> Pali, you wrote in the past that you cannot run one command to install
> >> dtschema ("pip") thus for you this automated testing is
> >> difficult/broken/non working. If running one "pip" command is not
> >> possible, what I can say more? Shall I login to your machine and set it
> >> up? Or did you configure your machine that way, that it is not possible
> >> to run one pip command?
> > 
> > Sorry no, it is too late. I have already lost interested in it. For me
> > it is like a ride on the dead horse.
> > 
> >> Whether the patches are waiting for months and years is difficult to
> >> address to, without actual links. Because for sure you will be able to
> >> find one patch which was missed in our inboxes and you did not get an
> >> answer...  With Rob we both work much more than reasonable/healthy 8h
> >> per day... Yet I recall you always received feedback, just not always
> >> what you expected or wanted.
> > 
> > Now I have replied to one example email without a reaction. 
> 
> Which was not a patch. You asked us for some knowledge and Rob provided
> you answers. Or maybe you think that our job is to solve each technical
> problem of everyone in the world till asking person is happy? Sounds
> like nice job. :)

No and no. You were unhappy with my last patches, so this time I first
send an email asking how to do it prevent sending something which would
be rejected. And now you are saying that it is a technical problem, not
answer. Nice way how to demotivate to try to do any new contribution
into this project area.

> > Another
> > example is this https://github.com/devicetree-org/dt-schema/pull/64
> > which completely blocked any improvements which I proposed in PCIe core
> > code for fixing PCIe state machine. After half of year of waiting I
> > decided to stop any work on this as I see it is dead those schemas.
> 
> It finished with Rob comments, so ball is on your side, isn't it?

Yes, after half o year? And I should continue to wait another half year
for another round? Why? And why should I wait again? Demotivate?

> > Other examples are that received feedback suggest to do change which
> > does not work on the real hardware. So yes, I cannot accept, expect or
> > want something like that. Schema which works in that ultra-supper-duper
> > software but DTS written according to it does not work on the real
> > hardware is for me useless...
> > 
> >> This binding here was never sent to mailing list:
> >> https://lore.kernel.org/all/?q=cznic%2Cturris-omnia-mcu
> >>
> >>>> Sorry, this is just a waste of time and energy to write new those yamls
> >>>> as it does not bring any value.
> >>
> >> It brings quite nice value - allows to check whether your bindings and
> >> your DTS are correct. Any difficulty to install and run dtschema is not
> >> equal to "does not bring any value"...
> > 
> > It just took lot of my time and did nothing useful. Hence for it it has
> > zero value.
> 
> Sorry to hear. When I was very, very small, C also took a lot of my time
> and did nothing useful. Nothing useful in that stage of my knowledge, of
> course.
> 
> 
> Best regards,
> Krzysztof

Seems that you just want to demotivate, nothing more.
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
index f4878df39753..f655e9229d68 100644
--- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
+++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
@@ -184,7 +184,13 @@ 
 			#size-cells = <0>;
 			reg = <0>;
 
-			/* STM32F0 command interface at address 0x2a */
+			/* MCU command i2c API */
+			mcu: mcu@2a {
+				compatible = "cznic,turris-omnia-mcu";
+				reg = <0x2a>;
+				gpio-controller;
+				#gpio-cells = <3>;
+			};
 
 			led-controller@2b {
 				compatible = "cznic,turris-omnia-leds";