2020-07-14 03:23:54

by Dillon Min

[permalink] [raw]
Subject: [PATCH v2] ARM: dts: Configure osc clock for d_can on am437x

From: dillon min <[email protected]>

V1 -> V2:
correct commit messages based on Stephen Rothwell's reviewing.
make Fixes tags to oneline.
make all commit message tags at the end of commit message


V1:
Got following d_can probe errors with kernel 5.8-rc1 on am437x

[ 10.730822] CAN device driver interface
Starting Wait for Network to be Configured...
[ OK ] Reached target Network.
[ 10.787363] c_can_platform 481cc000.can: probe failed
[ 10.792484] c_can_platform: probe of 481cc000.can failed with
error -2
[ 10.799457] c_can_platform 481d0000.can: probe failed
[ 10.804617] c_can_platform: probe of 481d0000.can failed with
error -2

actually, Tony has fixed this issue on am335x, the patch [3]
commit messages:
"
The reason why the issue happens is because we now attempt to read the
interconnect target module revision register by first manually enabling
all the device clocks in sysc_probe(). And looks like d_can also needs
the osc clock in addition to the module clock, and it may or may not be
enabled depending on the bootloader version and if other devices have
already requested osc clock.

Let's fix the issue by adding osc clock as an optional clock for the
module for am335x. Note that am437x does not seem to list the osc clock
at all, so presumably it is not needed for am437x.
"

from TRM of am335x/am437x [1][2], they have the same clock structure,
so, we can just reuse [3] for am437x platform.

Tested on custom am4372 board.

[1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
Integration
[2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
Integration
[3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")


dillon min (1):
Since am437x have the same clock structure with am335x [1][2],
reuse the code from Tony Lindgren's patch [reference] to fix dcan
probe failed on am437x platform.

arch/arm/boot/dts/am437x-l4.dtsi | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)

--
2.7.4


2020-07-14 03:24:03

by Dillon Min

[permalink] [raw]
Subject: [PATCH v2] Since am437x have the same clock structure with am335x [1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan probe failed on am437x platform.

From: dillon min <[email protected]>

Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during init to read revision")

[1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
Integration
[2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
Integration
[3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")

Signed-off-by: dillon min <[email protected]>
---

Hi Stephen,

This changes correct commit messages based on your reviewing.
make Fixes tags to oneline.
make all commit message tags at the end of commit message


arch/arm/boot/dts/am437x-l4.dtsi | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/am437x-l4.dtsi b/arch/arm/boot/dts/am437x-l4.dtsi
index 0d0f9fe4a882..4129affde54e 100644
--- a/arch/arm/boot/dts/am437x-l4.dtsi
+++ b/arch/arm/boot/dts/am437x-l4.dtsi
@@ -1541,8 +1541,9 @@
reg = <0xcc020 0x4>;
reg-names = "rev";
/* Domains (P, C): per_pwrdm, l4ls_clkdm */
- clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN0_CLKCTRL 0>;
- clock-names = "fck";
+ clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN0_CLKCTRL 0>,
+ <&dcan0_fck>;
+ clock-names = "fck", "osc";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0xcc000 0x2000>;
@@ -1550,6 +1551,8 @@
dcan0: can@0 {
compatible = "ti,am4372-d_can", "ti,am3352-d_can";
reg = <0x0 0x2000>;
+ clocks = <&dcan0_fck>;
+ clock-names = "fck";
syscon-raminit = <&scm_conf 0x644 0>;
interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
status = "disabled";
@@ -1561,8 +1564,9 @@
reg = <0xd0020 0x4>;
reg-names = "rev";
/* Domains (P, C): per_pwrdm, l4ls_clkdm */
- clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN1_CLKCTRL 0>;
- clock-names = "fck";
+ clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN1_CLKCTRL 0>,
+ <&dcan1_fck>;
+ clock-names = "fck", "osc";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0xd0000 0x2000>;
@@ -1570,6 +1574,8 @@
dcan1: can@0 {
compatible = "ti,am4372-d_can", "ti,am3352-d_can";
reg = <0x0 0x2000>;
+ clocks = <&dcan1_fck>;
+ clock-name = "fck";
syscon-raminit = <&scm_conf 0x644 1>;
interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
status = "disabled";
--
2.7.4

2020-07-14 03:39:38

by Stephen Rothwell

[permalink] [raw]
Subject: Re: [PATCH v2] Since am437x have the same clock structure with am335x [1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan probe failed on am437x platform.

Hi,

On Tue, 14 Jul 2020 11:23:18 +0800 [email protected] wrote:
>
> From: dillon min <[email protected]>
>
> Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during init to read revision")
>
> [1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
> Integration
> [2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
> Integration
> [3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")
>
> Signed-off-by: dillon min <[email protected]>
> ---
>
> Hi Stephen,
>
> This changes correct commit messages based on your reviewing.
> make Fixes tags to oneline.
> make all commit message tags at the end of commit message

But the Fixes: line should be down with the Signed-off-by: line ...

--
Cheers,
Stephen Rothwell


Attachments:
(No filename) (499.00 B)
OpenPGP digital signature

2020-07-14 03:44:48

by Dillon Min

[permalink] [raw]
Subject: Re: [PATCH v2] Since am437x have the same clock structure with am335x [1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan probe failed on am437x platform.

On Tue, Jul 14, 2020 at 11:38 AM Stephen Rothwell <[email protected]> wrote:
>
> Hi,
>
> On Tue, 14 Jul 2020 11:23:18 +0800 [email protected] wrote:
> >
> > From: dillon min <[email protected]>
> >
> > Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during init to read revision")
> >
> > [1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
> > Integration
> > [2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
> > Integration
> > [3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")
> >
> > Signed-off-by: dillon min <[email protected]>
> > ---
> >
> > Hi Stephen,
> >
> > This changes correct commit messages based on your reviewing.
> > make Fixes tags to oneline.
> > make all commit message tags at the end of commit message
>
> But the Fixes: line should be down with the Signed-off-by: line ...
>
Ok, should it be like this,i will resubmit it.

Subject: [PATCH v2] Since am437x have the same clock structure with am335x
[1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan
probe failed on the am437x platform.

[1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
Integration
[2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
Integration
[3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")

Signed-off-by: dillon min <[email protected]>
Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during
init to read revision")

Thanks,
Dillon,
> --
> Cheers,
> Stephen Rothwell

2020-07-14 03:56:45

by Stephen Rothwell

[permalink] [raw]
Subject: Re: [PATCH v2] Since am437x have the same clock structure with am335x [1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan probe failed on am437x platform.

Hi Dillon,

On Tue, 14 Jul 2020 11:43:31 +0800 dillon min <[email protected]> wrote:
>
> On Tue, Jul 14, 2020 at 11:38 AM Stephen Rothwell <[email protected]> wrote:
> >
> > On Tue, 14 Jul 2020 11:23:18 +0800 [email protected] wrote:
> > >
> > > From: dillon min <[email protected]>
> > >
> > > Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during init to read revision")
> > >
> > > [1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
> > > Integration
> > > [2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
> > > Integration
> > > [3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")
> > >
> > > Signed-off-by: dillon min <[email protected]>
> > > ---
> > >
> > > Hi Stephen,
> > >
> > > This changes correct commit messages based on your reviewing.
> > > make Fixes tags to oneline.
> > > make all commit message tags at the end of commit message
> >
> > But the Fixes: line should be down with the Signed-off-by: line ...
> >
> Ok, should it be like this,i will resubmit it.
>
> Subject: [PATCH v2] Since am437x have the same clock structure with am335x
> [1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan
> probe failed on the am437x platform.

You should have a shorter subject and maybe the above could be the
first paragraph of the commit message.

>
> [1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
> Integration
> [2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
> Integration
> [3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")
>
> Signed-off-by: dillon min <[email protected]>
> Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during
> init to read revision")

No wrapping the the Fixes line, please and it would usually go before
your Signed=off-by line
--
Cheers,
Stephen Rothwell


Attachments:
(No filename) (499.00 B)
OpenPGP digital signature

2020-07-14 05:22:22

by Dillon Min

[permalink] [raw]
Subject: Re: [PATCH v2] Since am437x have the same clock structure with am335x [1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan probe failed on am437x platform.

On Tue, Jul 14, 2020 at 11:54 AM Stephen Rothwell <[email protected]> wrote:
>
> Hi Dillon,
>
> On Tue, 14 Jul 2020 11:43:31 +0800 dillon min <[email protected]> wrote:
> >
> > On Tue, Jul 14, 2020 at 11:38 AM Stephen Rothwell <[email protected]> wrote:
> > >
> > > On Tue, 14 Jul 2020 11:23:18 +0800 [email protected] wrote:
> > > >
> > > > From: dillon min <[email protected]>
> > > >
> > > > Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during init to read revision")
> > > >
> > > > [1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
> > > > Integration
> > > > [2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
> > > > Integration
> > > > [3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")
> > > >
> > > > Signed-off-by: dillon min <[email protected]>
> > > > ---
> > > >
> > > > Hi Stephen,
> > > >
> > > > This changes correct commit messages based on your reviewing.
> > > > make Fixes tags to oneline.
> > > > make all commit message tags at the end of commit message
> > >
> > > But the Fixes: line should be down with the Signed-off-by: line ...
> > >
> > Ok, should it be like this,i will resubmit it.
> >
> > Subject: [PATCH v2] Since am437x have the same clock structure with am335x
> > [1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan
> > probe failed on the am437x platform.
>
> You should have a shorter subject and maybe the above could be the
> first paragraph of the commit message.
>
> >
> > [1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
> > Integration
> > [2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
> > Integration
> > [3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")
> >
> > Signed-off-by: dillon min <[email protected]>
> > Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during
> > init to read revision")
>
> No wrapping the the Fixes line, please and it would usually go before
> your Signed=off-by line

Hi Stephen,

Thanks, how about the below commit message.

Subject: [PATCH v4] Fix dcan driver probe failed on am437x platform

Got following d_can probe errors with kernel 5.8-rc1 on am437x

[ 10.730822] CAN device driver interface
Starting Wait for Network to be Configured...
[ OK ] Reached target Network.
[ 10.787363] c_can_platform 481cc000.can: probe failed
[ 10.792484] c_can_platform: probe of 481cc000.can failed with
error -2
[ 10.799457] c_can_platform 481d0000.can: probe failed
[ 10.804617] c_can_platform: probe of 481d0000.can failed with
error -2

actually, Tony has fixed this issue on am335x with the patch [3]

Since am437x has the same clock structure with am335x
[1][2], so reuse the code from Tony Lindgren's patch [3] to fix it.


[1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
Integration
[2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
Integration
[3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")

Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during
init to read revision")
Signed-off-by: dillon min <[email protected]>
---

Hi Stephen,

This changes correct commit messages based on your reviewing.
make Fixes tags to oneline.
make all commit message tags at the end of commit message
make Fixes tags before Signed-off-by line.
add probe failed log to commit message.


> --
> Cheers,
> Stephen Rothwell

2020-07-14 05:37:38

by Stephen Rothwell

[permalink] [raw]
Subject: Re: [PATCH v2] Since am437x have the same clock structure with am335x [1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan probe failed on am437x platform.

Hi Dillon,

On Tue, 14 Jul 2020 13:21:07 +0800 dillon min <[email protected]> wrote:
>
> Thanks, how about the below commit message.
>
> Subject: [PATCH v4] Fix dcan driver probe failed on am437x platform
>
> Got following d_can probe errors with kernel 5.8-rc1 on am437x
>
> [ 10.730822] CAN device driver interface
> Starting Wait for Network to be Configured...
> [ OK ] Reached target Network.
> [ 10.787363] c_can_platform 481cc000.can: probe failed
> [ 10.792484] c_can_platform: probe of 481cc000.can failed with
> error -2
> [ 10.799457] c_can_platform 481d0000.can: probe failed
> [ 10.804617] c_can_platform: probe of 481d0000.can failed with
> error -2
>
> actually, Tony has fixed this issue on am335x with the patch [3]
>
> Since am437x has the same clock structure with am335x
> [1][2], so reuse the code from Tony Lindgren's patch [3] to fix it.
>
>
> [1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
> Integration
> [2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
> Integration
> [3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")
>
> Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during
> init to read revision")
> Signed-off-by: dillon min <[email protected]>
> ---
>
> Hi Stephen,
>
> This changes correct commit messages based on your reviewing.
> make Fixes tags to oneline.
> make all commit message tags at the end of commit message
> make Fixes tags before Signed-off-by line.
> add probe failed log to commit message.

Apart from the line wrapping, that looks better. I assume that your
email client (looks like Gmail web gui) is wrapping the lines, please
see if you can stop it doing that (see the section on Gmail in
Documentation/process/email-clients.rst).

--
Cheers,
Stephen Rothwell


Attachments:
(No filename) (499.00 B)
OpenPGP digital signature

2020-07-14 06:35:09

by Dillon Min

[permalink] [raw]
Subject: Re: [PATCH v2] Since am437x have the same clock structure with am335x [1][2], reuse the code from Tony Lindgren's patch [3] to fix dcan probe failed on am437x platform.

Hi Stephen,

On Tue, Jul 14, 2020 at 1:37 PM Stephen Rothwell <[email protected]> wrote:
>
> Hi Dillon,
>
> On Tue, 14 Jul 2020 13:21:07 +0800 dillon min <[email protected]> wrote:
> >
> > Thanks, how about the below commit message.
> >
> > Subject: [PATCH v4] Fix dcan driver probe failed on am437x platform
> >
> > Got following d_can probe errors with kernel 5.8-rc1 on am437x
> >
> > [ 10.730822] CAN device driver interface
> > Starting Wait for Network to be Configured...
> > [ OK ] Reached target Network.
> > [ 10.787363] c_can_platform 481cc000.can: probe failed
> > [ 10.792484] c_can_platform: probe of 481cc000.can failed with
> > error -2
> > [ 10.799457] c_can_platform 481d0000.can: probe failed
> > [ 10.804617] c_can_platform: probe of 481d0000.can failed with
> > error -2
> >
> > actually, Tony has fixed this issue on am335x with the patch [3]
> >
> > Since am437x has the same clock structure with am335x
> > [1][2], so reuse the code from Tony Lindgren's patch [3] to fix it.
> >
> >
> > [1]: https://www.ti.com/lit/pdf/spruh73 Chapter-23, Figure 23-1. DCAN
> > Integration
> > [2]: https://www.ti.com/lit/pdf/spruhl7 Chapter-25, Figure 25-1. DCAN
> > Integration
> > [3]: commit 516f1117d0fb ("ARM: dts: Configure osc clock for d_can on am335x")
> >
> > Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during
> > init to read revision")
> > Signed-off-by: dillon min <[email protected]>
> > ---
> >
> > Hi Stephen,
> >
> > This changes correct commit messages based on your reviewing.
> > make Fixes tags to oneline.
> > make all commit message tags at the end of commit message
> > make Fixes tags before Signed-off-by line.
> > add probe failed log to commit message.
>
> Apart from the line wrapping, that looks better. I assume that your
> email client (looks like Gmail web gui) is wrapping the lines, please
> see if you can stop it doing that (see the section on Gmail in
> Documentation/process/email-clients.rst).
>
Thanks.
I checked with git send-email , there is no line wrapping. maybe gmail just has
the feature which text be split into lines of about 78 characters in
gmail web clients.

if add '>' before the line which exceeds 78 characters in gmail web
clients, this line will not be wrapped.

>Fixes: 1a5cd7c23cc5 ("bus: ti-sysc: Enable all clocks directly during init to read revision")

I will sumit v4 version for you.

thanks,
dillon,

> --
> Cheers,
> Stephen Rothwell