[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1594708507-6794-1-git-send-email-dillon.minfei@gmail.com>
Date: Tue, 14 Jul 2020 14:35:06 +0800
From: dillon.minfei@...il.com
To: sfr@...b.auug.org.au, bcousson@...libre.com, tony@...mide.com,
robh+dt@...nel.org
Cc: linux-omap@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, dillon min <dillon.minfei@...il.com>
Subject: [PATCH v4] ARM: dts: Configure osc clock for d_can on am437x
From: dillon min <dillon.minfei@...il.com>
V3 -> V4:
make Fixes tags before Signed-off-by line.
make subject more clear and short.
add driver probe failed log to commit message.
V2 -> V3:
make Fixes tags after Signed-off-by line.
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
Powered by blists - more mailing lists