* [PATCH robh next] dt-bindings: bus: add Broadcom CRU
@ 2021-03-09 14:22 ` Rafał Miłecki
0 siblings, 0 replies; 8+ messages in thread
From: Rafał Miłecki @ 2021-03-09 14:22 UTC (permalink / raw)
To: Rob Herring
Cc: Florian Fainelli, linux-arm-kernel, devicetree,
bcm-kernel-feedback-list, Rafał Miłecki
From: Rafał Miłecki <rafal@milecki.pl>
CRU is a block used in Northstar devices. It can be seen in the
bcm5301x.dtsi and this binding documents its proper usage.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
---
.../devicetree/bindings/bus/brcm,cru.yaml | 41 +++++++++++++++++++
1 file changed, 41 insertions(+)
create mode 100644 Documentation/devicetree/bindings/bus/brcm,cru.yaml
diff --git a/Documentation/devicetree/bindings/bus/brcm,cru.yaml b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
new file mode 100644
index 000000000000..c3b1ca53a443
--- /dev/null
+++ b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
@@ -0,0 +1,41 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/bus/brcm,cru.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Broadcom CRU
+
+maintainers:
+ - Rafał Miłecki <rafal@milecki.pl>
+
+description: |
+ Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware
+ block grouping smaller blocks. It contains e.g. clocks, pinctrl, USB PHY and
+ thermal.
+
+allOf:
+ - $ref: /schemas/simple-bus.yaml#
+
+properties:
+ compatible:
+ contains:
+ const: brcm,cru
+
+ reg:
+ description: CRU registers
+
+unevaluatedProperties: false
+
+required:
+ - reg
+
+examples:
+ - |
+ cru-bus@1800c100 {
+ compatible = "brcm,cru", "simple-bus";
+ reg = <0x1800c100 0x1d0>;
+ ranges;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ };
--
2.26.2
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH robh next] dt-bindings: bus: add Broadcom CRU
@ 2021-03-09 14:22 ` Rafał Miłecki
0 siblings, 0 replies; 8+ messages in thread
From: Rafał Miłecki @ 2021-03-09 14:22 UTC (permalink / raw)
To: Rob Herring
Cc: Florian Fainelli, linux-arm-kernel, devicetree,
bcm-kernel-feedback-list, Rafał Miłecki
From: Rafał Miłecki <rafal@milecki.pl>
CRU is a block used in Northstar devices. It can be seen in the
bcm5301x.dtsi and this binding documents its proper usage.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
---
.../devicetree/bindings/bus/brcm,cru.yaml | 41 +++++++++++++++++++
1 file changed, 41 insertions(+)
create mode 100644 Documentation/devicetree/bindings/bus/brcm,cru.yaml
diff --git a/Documentation/devicetree/bindings/bus/brcm,cru.yaml b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
new file mode 100644
index 000000000000..c3b1ca53a443
--- /dev/null
+++ b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
@@ -0,0 +1,41 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/bus/brcm,cru.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Broadcom CRU
+
+maintainers:
+ - Rafał Miłecki <rafal@milecki.pl>
+
+description: |
+ Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware
+ block grouping smaller blocks. It contains e.g. clocks, pinctrl, USB PHY and
+ thermal.
+
+allOf:
+ - $ref: /schemas/simple-bus.yaml#
+
+properties:
+ compatible:
+ contains:
+ const: brcm,cru
+
+ reg:
+ description: CRU registers
+
+unevaluatedProperties: false
+
+required:
+ - reg
+
+examples:
+ - |
+ cru-bus@1800c100 {
+ compatible = "brcm,cru", "simple-bus";
+ reg = <0x1800c100 0x1d0>;
+ ranges;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ };
--
2.26.2
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH robh next] dt-bindings: bus: add Broadcom CRU
2021-03-09 14:22 ` Rafał Miłecki
@ 2021-04-05 22:44 ` Rafał Miłecki
-1 siblings, 0 replies; 8+ messages in thread
From: Rafał Miłecki @ 2021-04-05 22:44 UTC (permalink / raw)
To: Rafał Miłecki, Rob Herring
Cc: Florian Fainelli, linux-arm-kernel, devicetree, bcm-kernel-feedback-list
Hi Rob,
On 09.03.2021 15:22, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal@milecki.pl>
>
> CRU is a block used in Northstar devices. It can be seen in the
> bcm5301x.dtsi and this binding documents its proper usage.
>
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
could you review and push or reject this patch, please?
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH robh next] dt-bindings: bus: add Broadcom CRU
@ 2021-04-05 22:44 ` Rafał Miłecki
0 siblings, 0 replies; 8+ messages in thread
From: Rafał Miłecki @ 2021-04-05 22:44 UTC (permalink / raw)
To: Rafał Miłecki, Rob Herring
Cc: Florian Fainelli, linux-arm-kernel, devicetree, bcm-kernel-feedback-list
Hi Rob,
On 09.03.2021 15:22, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal@milecki.pl>
>
> CRU is a block used in Northstar devices. It can be seen in the
> bcm5301x.dtsi and this binding documents its proper usage.
>
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
could you review and push or reject this patch, please?
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH robh next] dt-bindings: bus: add Broadcom CRU
2021-03-09 14:22 ` Rafał Miłecki
@ 2021-04-07 20:58 ` Rob Herring
-1 siblings, 0 replies; 8+ messages in thread
From: Rob Herring @ 2021-04-07 20:58 UTC (permalink / raw)
To: Rafał Miłecki
Cc: Florian Fainelli, linux-arm-kernel, devicetree,
bcm-kernel-feedback-list, Rafał Miłecki
On Tue, Mar 09, 2021 at 03:22:41PM +0100, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal@milecki.pl>
>
> CRU is a block used in Northstar devices. It can be seen in the
> bcm5301x.dtsi and this binding documents its proper usage.
>
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
> ---
> .../devicetree/bindings/bus/brcm,cru.yaml | 41 +++++++++++++++++++
> 1 file changed, 41 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/bus/brcm,cru.yaml
>
> diff --git a/Documentation/devicetree/bindings/bus/brcm,cru.yaml b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
> new file mode 100644
> index 000000000000..c3b1ca53a443
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
> @@ -0,0 +1,41 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/bus/brcm,cru.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Broadcom CRU
> +
> +maintainers:
> + - Rafał Miłecki <rafal@milecki.pl>
> +
> +description: |
> + Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware
> + block grouping smaller blocks. It contains e.g. clocks, pinctrl, USB PHY and
Are these really separate blocks? I really need to see a complete
binding for the block.
> + thermal.
> +
> +allOf:
> + - $ref: /schemas/simple-bus.yaml#
I don't think this should be a 'simple-bus'. Maybe 'simple-mfd' instead.
> +
> +properties:
> + compatible:
> + contains:
> + const: brcm,cru
This should be SoC specific.
> +
> + reg:
> + description: CRU registers
> +
> +unevaluatedProperties: false
> +
> +required:
> + - reg
> +
> +examples:
> + - |
> + cru-bus@1800c100 {
> + compatible = "brcm,cru", "simple-bus";
> + reg = <0x1800c100 0x1d0>;
> + ranges;
> + #address-cells = <1>;
> + #size-cells = <1>;
> + };
> --
> 2.26.2
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH robh next] dt-bindings: bus: add Broadcom CRU
@ 2021-04-07 20:58 ` Rob Herring
0 siblings, 0 replies; 8+ messages in thread
From: Rob Herring @ 2021-04-07 20:58 UTC (permalink / raw)
To: Rafał Miłecki
Cc: Florian Fainelli, linux-arm-kernel, devicetree,
bcm-kernel-feedback-list, Rafał Miłecki
On Tue, Mar 09, 2021 at 03:22:41PM +0100, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal@milecki.pl>
>
> CRU is a block used in Northstar devices. It can be seen in the
> bcm5301x.dtsi and this binding documents its proper usage.
>
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
> ---
> .../devicetree/bindings/bus/brcm,cru.yaml | 41 +++++++++++++++++++
> 1 file changed, 41 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/bus/brcm,cru.yaml
>
> diff --git a/Documentation/devicetree/bindings/bus/brcm,cru.yaml b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
> new file mode 100644
> index 000000000000..c3b1ca53a443
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
> @@ -0,0 +1,41 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/bus/brcm,cru.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Broadcom CRU
> +
> +maintainers:
> + - Rafał Miłecki <rafal@milecki.pl>
> +
> +description: |
> + Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware
> + block grouping smaller blocks. It contains e.g. clocks, pinctrl, USB PHY and
Are these really separate blocks? I really need to see a complete
binding for the block.
> + thermal.
> +
> +allOf:
> + - $ref: /schemas/simple-bus.yaml#
I don't think this should be a 'simple-bus'. Maybe 'simple-mfd' instead.
> +
> +properties:
> + compatible:
> + contains:
> + const: brcm,cru
This should be SoC specific.
> +
> + reg:
> + description: CRU registers
> +
> +unevaluatedProperties: false
> +
> +required:
> + - reg
> +
> +examples:
> + - |
> + cru-bus@1800c100 {
> + compatible = "brcm,cru", "simple-bus";
> + reg = <0x1800c100 0x1d0>;
> + ranges;
> + #address-cells = <1>;
> + #size-cells = <1>;
> + };
> --
> 2.26.2
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH robh next] dt-bindings: bus: add Broadcom CRU
2021-04-07 20:58 ` Rob Herring
@ 2021-04-07 21:43 ` Florian Fainelli
-1 siblings, 0 replies; 8+ messages in thread
From: Florian Fainelli @ 2021-04-07 21:43 UTC (permalink / raw)
To: Rob Herring, Rafał Miłecki
Cc: linux-arm-kernel, devicetree, bcm-kernel-feedback-list,
Rafał Miłecki
On 4/7/2021 1:58 PM, Rob Herring wrote:
> On Tue, Mar 09, 2021 at 03:22:41PM +0100, Rafał Miłecki wrote:
>> From: Rafał Miłecki <rafal@milecki.pl>
>>
>> CRU is a block used in Northstar devices. It can be seen in the
>> bcm5301x.dtsi and this binding documents its proper usage.
>>
>> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
>> ---
>> .../devicetree/bindings/bus/brcm,cru.yaml | 41 +++++++++++++++++++
>> 1 file changed, 41 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/bus/brcm,cru.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/bus/brcm,cru.yaml b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
>> new file mode 100644
>> index 000000000000..c3b1ca53a443
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
>> @@ -0,0 +1,41 @@
>> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/bus/brcm,cru.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Broadcom CRU
>> +
>> +maintainers:
>> + - Rafał Miłecki <rafal@milecki.pl>
>> +
>> +description: |
>> + Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware
>> + block grouping smaller blocks. It contains e.g. clocks, pinctrl, USB PHY and
>
> Are these really separate blocks? I really need to see a complete
> binding for the block.
The situation is a bit confusing because the CRU that is being described
here is not the CRU that is being described in the datasheet as a
block... but the registers are still prefixed CRU because they have a
clocking and reset component/function.
There are CRU registers within the DMU (Device Management Unit) and the
DMU is a sundry of various things containing:
- an internal MDIO bus controller (PCU_MDIO_MGT, PCU_MDIO_CMD)
- 4 registers to control and show the internal regulator status
- a collection of PLL and clock controls from 0x1800_c100 through 0x180_c180
- reset controls
- internal MDIO mux
- GPIO/pinmux/drive strength controls
- switch register interrupts
- adaptive voltage scaling registers
- gap
- crystal control
The 0x1d0 size would span all registers mentioned above and end
somewhere in the gap between AVS and XTAL.
>
>> + thermal.
>> +
>> +allOf:
>> + - $ref: /schemas/simple-bus.yaml#
>
> I don't think this should be a 'simple-bus'. Maybe 'simple-mfd' instead.
>
>> +
>> +properties:
>> + compatible:
>> + contains:
>> + const: brcm,cru
>
> This should be SoC specific.
Yes agreed, brcm,bcm5301x-cru at least sine this is common to all
Northstar platforms.
--
Florian
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH robh next] dt-bindings: bus: add Broadcom CRU
@ 2021-04-07 21:43 ` Florian Fainelli
0 siblings, 0 replies; 8+ messages in thread
From: Florian Fainelli @ 2021-04-07 21:43 UTC (permalink / raw)
To: Rob Herring, Rafał Miłecki
Cc: linux-arm-kernel, devicetree, bcm-kernel-feedback-list,
Rafał Miłecki
On 4/7/2021 1:58 PM, Rob Herring wrote:
> On Tue, Mar 09, 2021 at 03:22:41PM +0100, Rafał Miłecki wrote:
>> From: Rafał Miłecki <rafal@milecki.pl>
>>
>> CRU is a block used in Northstar devices. It can be seen in the
>> bcm5301x.dtsi and this binding documents its proper usage.
>>
>> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
>> ---
>> .../devicetree/bindings/bus/brcm,cru.yaml | 41 +++++++++++++++++++
>> 1 file changed, 41 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/bus/brcm,cru.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/bus/brcm,cru.yaml b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
>> new file mode 100644
>> index 000000000000..c3b1ca53a443
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/bus/brcm,cru.yaml
>> @@ -0,0 +1,41 @@
>> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/bus/brcm,cru.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Broadcom CRU
>> +
>> +maintainers:
>> + - Rafał Miłecki <rafal@milecki.pl>
>> +
>> +description: |
>> + Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware
>> + block grouping smaller blocks. It contains e.g. clocks, pinctrl, USB PHY and
>
> Are these really separate blocks? I really need to see a complete
> binding for the block.
The situation is a bit confusing because the CRU that is being described
here is not the CRU that is being described in the datasheet as a
block... but the registers are still prefixed CRU because they have a
clocking and reset component/function.
There are CRU registers within the DMU (Device Management Unit) and the
DMU is a sundry of various things containing:
- an internal MDIO bus controller (PCU_MDIO_MGT, PCU_MDIO_CMD)
- 4 registers to control and show the internal regulator status
- a collection of PLL and clock controls from 0x1800_c100 through 0x180_c180
- reset controls
- internal MDIO mux
- GPIO/pinmux/drive strength controls
- switch register interrupts
- adaptive voltage scaling registers
- gap
- crystal control
The 0x1d0 size would span all registers mentioned above and end
somewhere in the gap between AVS and XTAL.
>
>> + thermal.
>> +
>> +allOf:
>> + - $ref: /schemas/simple-bus.yaml#
>
> I don't think this should be a 'simple-bus'. Maybe 'simple-mfd' instead.
>
>> +
>> +properties:
>> + compatible:
>> + contains:
>> + const: brcm,cru
>
> This should be SoC specific.
Yes agreed, brcm,bcm5301x-cru at least sine this is common to all
Northstar platforms.
--
Florian
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2021-04-07 21:45 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-09 14:22 [PATCH robh next] dt-bindings: bus: add Broadcom CRU Rafał Miłecki
2021-03-09 14:22 ` Rafał Miłecki
2021-04-05 22:44 ` Rafał Miłecki
2021-04-05 22:44 ` Rafał Miłecki
2021-04-07 20:58 ` Rob Herring
2021-04-07 20:58 ` Rob Herring
2021-04-07 21:43 ` Florian Fainelli
2021-04-07 21:43 ` Florian Fainelli
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.