Thread (26 messages) 26 messages, 6 authors, 2015-04-12

[PATCH 3/3] arm64: dts: Add dts files for Hisilicon Hi6220 SoC

From: Brent Wang <hidden>
Date: 2015-02-11 01:49:29
Also in: linux-devicetree, lkml

Hello Mark,

2015-02-10 23:27 GMT+08:00 Mark Rutland [off-list ref]:
 [...]
quoted
quoted
quoted
quoted
quoted
quoted
quoted
+             pm_ctrl: pm_ctrl {
+                     compatible = "hisilicon,pmctrl", "syscon";
+                     #address-cells = <1>;
+                     #size-cells = <1>;
+                     reg = <0x0 0xf7032000 0x0 0x1000>;
+                     ranges = <0 0x0 0xf7032000 0x1000>;
+
+                     clock_power: clock3 at 0 {
+                             compatible = "hisilicon,hi6220-clock-power";
+                             reg = <0 0x1000>;
+                             #clock-cells = <1>;
+                     };
+             };
I really doesn't see the point in having a sub-device that covers the
entirely of the register space of the containing node, and that being
the case I am extremely concerned that the containers are marked as
syscon compatible.
The SoC clocks are designed and placed under different system controllers,
so I define corresponding nodes under different controllers for clock operation.
What I'm concerned wit hhere is that the pm_ctrl node and the clock3 at 0
sub-node have the _exact_ same register space.

Given this should mean that the clock3 at 0 node owns that register space,
having the container node export this as syscon does not make sense. And
the split between pm_ctrl and clock3@) doesn't seem to make sense given
they cover the same space.
I understand your worry and will find the max offset of those clocks
under this controller.
quoted
As I asked before, why is pm_ctrl marked as a syscon, and what's the
point of the separate sub-node?
There is no big difference between pm_ctrl and other controller,  they
are all designed as
the base address to control some functions of other modules (certainly
include some clock gates).
Are they just different instances of the same IP block, or are there
fundamental differences between them?
You can understand it as a different instance of the same IP block,
there is no fundamental
differences between them.
Ok. If that's the case each should have the same compatible string.
Although they have same function, they control different domain, I
should use different compatible string to distinguish different
domains.

Thanks,

Bintian
Thanks,
Mark.


-- 
Best Regards,

Bintian
===========================
Don't be nervous, just be happy!
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help