* Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
2025-10-24 16:46 ` Conor Dooley
@ 2025-10-24 16:47 ` Conor Dooley
2025-10-25 2:10 ` Longbin Li
2025-10-25 2:27 ` Longbin Li
2 siblings, 0 replies; 12+ messages in thread
From: Conor Dooley @ 2025-10-24 16:47 UTC (permalink / raw)
To: Longbin Li
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen Wang,
Inochi Amaoto, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti, Alexander Sverdlin, Yu Yuan, Ze Huang,
devicetree, sophgo, linux-kernel, linux-riscv
[-- Attachment #1.1: Type: text/plain, Size: 3920 bytes --]
On Fri, Oct 24, 2025 at 05:46:03PM +0100, Conor Dooley wrote:
> On Fri, Oct 24, 2025 at 11:05:14AM +0800, Longbin Li wrote:
> > The Sophgo CV1800/SG2000 SoC top misc system controller provides register
>
> Please remind me how it works, sg2000 is just a rebadge and really this
> just refers to one device?
>
> > access to configure related modules. It includes a usb2 phy and a dma
> > multiplexer.
> >
> > Co-developed-by: Inochi Amaoto <inochiama@gmail.com>
> > Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
> > Signed-off-by: Longbin Li <looong.bin@gmail.com>
> > ---
> > .../soc/sophgo/sophgo,cv1800b-top-syscon.yaml | 81 +++++++++++++++++++
> > 1 file changed, 81 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml
> > new file mode 100644
> > index 000000000000..d044ca661fa2
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml
> > @@ -0,0 +1,81 @@
> > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/soc/sophgo/sophgo,cv1800b-top-syscon.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Sophgo CV18XX/SG200X SoC top system controller
> > +
> > +maintainers:
> > + - Inochi Amaoto <inochiama@outlook.com>
> > +
> > +description:
> > + The Sophgo CV18XX/SG200X SoC top misc system controller provides
> > + register access to configure related modules.
>
> Here and in the title you have Xs, are those placeholder or is this
> going into cv180x.dtsi and going to be used on multiple devices?
nvm, I read the next patch. It's going into cv180x.dtsi.
> > +properties:
> > + compatible:
> > + oneOf:
> > + - items:
> > + - const: sophgo,cv1800b-top-syscon
> > + - const: syscon
> > + - const: simple-mfd
> > +
> > + reg:
> > + maxItems: 1
> > +
> > + "#address-cells":
> > + const: 1
> > +
> > + "#size-cells":
> > + const: 1
> > +
> > + ranges: true
>
> Do you actually use ranges?
>
> > +patternProperties:
> > + "dma-router@[0-9a-f]+$":
>
> Do these actually appear at variable addresses, or is it always 48 for
> the phy and 53 for the dma router?
>
> > + $ref: /schemas/dma/sophgo,cv1800b-dmamux.yaml#
> > + unevaluatedProperties: false
> > +
> > + "phy@[0-9a-f]+$":
> > + $ref: /schemas/phy/sophgo,cv1800b-usb2-phy.yaml#
> > + unevaluatedProperties: false
> > +
> > +required:
> > + - compatible
> > + - reg
> > + - "#address-cells"
> > + - "#size-cells"
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > + - |
> > + #include <dt-bindings/clock/sophgo,cv1800.h>
> > +
> > + syscon@3000000 {
> > + compatible = "sophgo,cv1800b-top-syscon", "syscon", "simple-mfd";
> > + reg = <0x03000000 0x1000>;
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > +
> > + usbphy: phy@48 {
>
> Drop the labels off of these two, since they're unused in the example.
>
> > + compatible = "sophgo,cv1800b-usb2-phy";
> > + reg = <0x48 0x4>;
> > + #phy-cells = <0>;
> > + clocks = <&clk CLK_USB_125M>,
> > + <&clk CLK_USB_33K>,
> > + <&clk CLK_USB_12M>;
> > + clock-names = "app", "stb", "lpm";
> > + resets = <&rst 58>;
> > + };
> > +
> > + dmamux: dma-router@154 {
> > + compatible = "sophgo,cv1800b-dmamux";
> > + reg = <0x154 0x8>, <0x298 0x4>;
> > + #dma-cells = <2>;
> > + dma-masters = <&dmac>;
> > + };
> > + };
> > +
> > +...
> > --
> > 2.51.0
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
[-- Attachment #2: Type: text/plain, Size: 161 bytes --]
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
2025-10-24 16:46 ` Conor Dooley
2025-10-24 16:47 ` Conor Dooley
@ 2025-10-25 2:10 ` Longbin Li
2025-10-25 2:27 ` Longbin Li
2 siblings, 0 replies; 12+ messages in thread
From: Longbin Li @ 2025-10-25 2:10 UTC (permalink / raw)
To: Conor Dooley
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen Wang,
Inochi Amaoto, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti, Alexander Sverdlin, Yu Yuan, Ze Huang,
devicetree, sophgo, linux-kernel, linux-riscv
On Fri, Oct 24, 2025 at 05:46:03PM +0100, Conor Dooley wrote:
> On Fri, Oct 24, 2025 at 11:05:14AM +0800, Longbin Li wrote:
> > The Sophgo CV1800/SG2000 SoC top misc system controller provides register
>
> Please remind me how it works, sg2000 is just a rebadge and really this
> just refers to one device?
>
SG2000 and CV1800 belong to the same SoC series.
So it's more accurate to describe as “CV18XX/SG200X”.
> > access to configure related modules. It includes a usb2 phy and a dma
> > multiplexer.
> >
> > ....
> >
> > +
> > +description:
> > + The Sophgo CV18XX/SG200X SoC top misc system controller provides
> > + register access to configure related modules.
>
> Here and in the title you have Xs, are those placeholder or is this
> going into cv180x.dtsi and going to be used on multiple devices?
>
Yes, the “XX” is going to be used in the whole CV18XX/SG200X SoC series.
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
2025-10-24 16:46 ` Conor Dooley
2025-10-24 16:47 ` Conor Dooley
2025-10-25 2:10 ` Longbin Li
@ 2025-10-25 2:27 ` Longbin Li
2025-10-25 12:44 ` Conor Dooley
2 siblings, 1 reply; 12+ messages in thread
From: Longbin Li @ 2025-10-25 2:27 UTC (permalink / raw)
To: Conor Dooley, Rob Herring
Cc: Krzysztof Kozlowski, Conor Dooley, Chen Wang, Inochi Amaoto,
Paul Walmsley, Palmer Dabbelt, Albert Ou, Alexandre Ghiti,
Alexander Sverdlin, Yu Yuan, Ze Huang, devicetree, sophgo,
linux-kernel, linux-riscv
On Fri, Oct 24, 2025 at 05:46:03PM +0100, Conor Dooley wrote:
> > ...
> > +
> > +properties:
> > + compatible:
> > + oneOf:
> > + - items:
> > + - const: sophgo,cv1800b-top-syscon
> > + - const: syscon
> > + - const: simple-mfd
> > +
> > + reg:
> > + maxItems: 1
> > +
> > + "#address-cells":
> > + const: 1
> > +
> > + "#size-cells":
> > + const: 1
> > +
> > + ranges: true
>
> Do you actually use ranges?
>
> > +patternProperties:
> > + "dma-router@[0-9a-f]+$":
>
> Do these actually appear at variable addresses, or is it always 48 for
> the phy and 53 for the dma router?
>
> > + $ref: /schemas/dma/sophgo,cv1800b-dmamux.yaml#
> > + unevaluatedProperties: false
> > +
> > + "phy@[0-9a-f]+$":
> > + $ref: /schemas/phy/sophgo,cv1800b-usb2-phy.yaml#
> > + unevaluatedProperties: false
> > +
> > +required:
> > + - compatible
> > + - reg
> > + - "#address-cells"
> > + - "#size-cells"
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > + - |
> > + #include <dt-bindings/clock/sophgo,cv1800.h>
> > +
> > + syscon@3000000 {
> > + compatible = "sophgo,cv1800b-top-syscon", "syscon", "simple-mfd";
> > + reg = <0x03000000 0x1000>;
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > +
> > + usbphy: phy@48 {
>
> Drop the labels off of these two, since they're unused in the example.
>
Hi,
Thanks for the review.
There are a couple of different opinions here.
Could you please help confirm which approach is preferred here?
This is Rob's reply:
https://lore.kernel.org/all/20251015134144.GA3265377-robh@kernel.org/
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
2025-10-25 2:27 ` Longbin Li
@ 2025-10-25 12:44 ` Conor Dooley
2025-10-26 9:47 ` Longbin Li
0 siblings, 1 reply; 12+ messages in thread
From: Conor Dooley @ 2025-10-25 12:44 UTC (permalink / raw)
To: Longbin Li
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen Wang,
Inochi Amaoto, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti, Alexander Sverdlin, Yu Yuan, Ze Huang,
devicetree, sophgo, linux-kernel, linux-riscv
[-- Attachment #1.1: Type: text/plain, Size: 2251 bytes --]
On Sat, Oct 25, 2025 at 10:27:13AM +0800, Longbin Li wrote:
> On Fri, Oct 24, 2025 at 05:46:03PM +0100, Conor Dooley wrote:
>
> > > ...
> > > +
> > > +properties:
> > > + compatible:
> > > + oneOf:
> > > + - items:
> > > + - const: sophgo,cv1800b-top-syscon
> > > + - const: syscon
> > > + - const: simple-mfd
> > > +
> > > + reg:
> > > + maxItems: 1
> > > +
> > > + "#address-cells":
> > > + const: 1
> > > +
> > > + "#size-cells":
> > > + const: 1
> > > +
> > > + ranges: true
> >
> > Do you actually use ranges?
> >
> > > +patternProperties:
> > > + "dma-router@[0-9a-f]+$":
> >
> > Do these actually appear at variable addresses, or is it always 48 for
> > the phy and 53 for the dma router?
> >
> > > + $ref: /schemas/dma/sophgo,cv1800b-dmamux.yaml#
> > > + unevaluatedProperties: false
> > > +
> > > + "phy@[0-9a-f]+$":
> > > + $ref: /schemas/phy/sophgo,cv1800b-usb2-phy.yaml#
> > > + unevaluatedProperties: false
> > > +
> > > +required:
> > > + - compatible
> > > + - reg
> > > + - "#address-cells"
> > > + - "#size-cells"
> > > +
> > > +additionalProperties: false
> > > +
> > > +examples:
> > > + - |
> > > + #include <dt-bindings/clock/sophgo,cv1800.h>
> > > +
> > > + syscon@3000000 {
> > > + compatible = "sophgo,cv1800b-top-syscon", "syscon", "simple-mfd";
> > > + reg = <0x03000000 0x1000>;
> > > + #address-cells = <1>;
> > > + #size-cells = <1>;
> > > +
> > > + usbphy: phy@48 {
> >
> > Drop the labels off of these two, since they're unused in the example.
> >
>
> Hi,
>
> Thanks for the review.
>
> There are a couple of different opinions here.
> Could you please help confirm which approach is preferred here?
>
> This is Rob's reply:
> https://lore.kernel.org/all/20251015134144.GA3265377-robh@kernel.org/
I don't think that Rob and I disgree about the example, having child
nodes is good, having the label on them is what I don't want.
Re: the child node patterns, I was not looking for a return to what Rob
didn't like, but rather a move to just making them normal properties
rather than a pattern, if there's only one possible address.
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
[-- Attachment #2: Type: text/plain, Size: 161 bytes --]
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
2025-10-25 12:44 ` Conor Dooley
@ 2025-10-26 9:47 ` Longbin Li
2025-10-26 21:44 ` Conor Dooley
0 siblings, 1 reply; 12+ messages in thread
From: Longbin Li @ 2025-10-26 9:47 UTC (permalink / raw)
To: Conor Dooley
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen Wang,
Inochi Amaoto, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti, Alexander Sverdlin, Yu Yuan, Ze Huang,
devicetree, sophgo, linux-kernel, linux-riscv
On Sat, Oct 25, 2025 at 01:44:00PM +0100, Conor Dooley wrote:
> On Sat, Oct 25, 2025 at 10:27:13AM +0800, Longbin Li wrote:
> > On Fri, Oct 24, 2025 at 05:46:03PM +0100, Conor Dooley wrote:
> >
> > > > ...
> > > > +
> > > > +properties:
> > > > + compatible:
> > > > + oneOf:
> > > > + - items:
> > > > + - const: sophgo,cv1800b-top-syscon
> > > > + - const: syscon
> > > > + - const: simple-mfd
> > > > +
> > > > + reg:
> > > > + maxItems: 1
> > > > +
> > > > + "#address-cells":
> > > > + const: 1
> > > > +
> > > > + "#size-cells":
> > > > + const: 1
> > > > +
> > > > + ranges: true
> > >
> > > Do you actually use ranges?
> > >
Actually, I do not use it.
I added it following Rob's suggestion in
https://lore.kernel.org/all/20251015134144.GA3265377-robh@kernel.org/.
Should I drop it or not?
> > > > +patternProperties:
> > > > + "dma-router@[0-9a-f]+$":
> > >
> > > Do these actually appear at variable addresses, or is it always 48 for
> > > the phy and 53 for the dma router?
> > >
> > > > + $ref: /schemas/dma/sophgo,cv1800b-dmamux.yaml#
> > > > + unevaluatedProperties: false
> > > > +
> > > > + "phy@[0-9a-f]+$":
> > > > + $ref: /schemas/phy/sophgo,cv1800b-usb2-phy.yaml#
> > > > + unevaluatedProperties: false
> > > > +
> > > > +required:
> > > > + - compatible
> > > > + - reg
> > > > + - "#address-cells"
> > > > + - "#size-cells"
> > > > +
> > > > +additionalProperties: false
> > > > +
> > > > +examples:
> > > > + - |
> > > > + #include <dt-bindings/clock/sophgo,cv1800.h>
> > > > +
> > > > + syscon@3000000 {
> > > > + compatible = "sophgo,cv1800b-top-syscon", "syscon", "simple-mfd";
> > > > + reg = <0x03000000 0x1000>;
> > > > + #address-cells = <1>;
> > > > + #size-cells = <1>;
> > > > +
> > > > + usbphy: phy@48 {
> > >
> > > Drop the labels off of these two, since they're unused in the example.
> > >
> >
> > Hi,
> >
> > Thanks for the review.
> >
> > There are a couple of different opinions here.
> > Could you please help confirm which approach is preferred here?
> >
> > This is Rob's reply:
> > https://lore.kernel.org/all/20251015134144.GA3265377-robh@kernel.org/
>
> I don't think that Rob and I disgree about the example, having child
> nodes is good, having the label on them is what I don't want.
>
> Re: the child node patterns, I was not looking for a return to what Rob
> didn't like, but rather a move to just making them normal properties
> rather than a pattern, if there's only one possible address.
Thanks!
I will drop the lable and move the child nodes to normal properties.
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
2025-10-26 9:47 ` Longbin Li
@ 2025-10-26 21:44 ` Conor Dooley
2025-10-27 15:13 ` Rob Herring
0 siblings, 1 reply; 12+ messages in thread
From: Conor Dooley @ 2025-10-26 21:44 UTC (permalink / raw)
To: Longbin Li
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen Wang,
Inochi Amaoto, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti, Alexander Sverdlin, Yu Yuan, Ze Huang,
devicetree, sophgo, linux-kernel, linux-riscv
[-- Attachment #1.1: Type: text/plain, Size: 1091 bytes --]
Rob, Longbin,
On Sun, Oct 26, 2025 at 05:47:32PM +0800, Longbin Li wrote:
> On Sat, Oct 25, 2025 at 01:44:00PM +0100, Conor Dooley wrote:
> > On Sat, Oct 25, 2025 at 10:27:13AM +0800, Longbin Li wrote:
> > > On Fri, Oct 24, 2025 at 05:46:03PM +0100, Conor Dooley wrote:
> > >
> > > > > ...
> > > > > +
> > > > > +properties:
> > > > > + compatible:
> > > > > + oneOf:
> > > > > + - items:
> > > > > + - const: sophgo,cv1800b-top-syscon
> > > > > + - const: syscon
> > > > > + - const: simple-mfd
> > > > > +
> > > > > + reg:
> > > > > + maxItems: 1
> > > > > +
> > > > > + "#address-cells":
> > > > > + const: 1
> > > > > +
> > > > > + "#size-cells":
> > > > > + const: 1
> > > > > +
> > > > > + ranges: true
> > > >
> > > > Do you actually use ranges?
> > > >
>
> Actually, I do not use it.
> I added it following Rob's suggestion in
> https://lore.kernel.org/all/20251015134144.GA3265377-robh@kernel.org/.
> Should I drop it or not?
I don't know why he suggested it, if it is not being used. Rob?
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
[-- Attachment #2: Type: text/plain, Size: 161 bytes --]
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
2025-10-26 21:44 ` Conor Dooley
@ 2025-10-27 15:13 ` Rob Herring
0 siblings, 0 replies; 12+ messages in thread
From: Rob Herring @ 2025-10-27 15:13 UTC (permalink / raw)
To: Conor Dooley
Cc: Longbin Li, Krzysztof Kozlowski, Conor Dooley, Chen Wang,
Inochi Amaoto, Paul Walmsley, Palmer Dabbelt, Albert Ou,
Alexandre Ghiti, Alexander Sverdlin, Yu Yuan, Ze Huang,
devicetree, sophgo, linux-kernel, linux-riscv
On Sun, Oct 26, 2025 at 09:44:12PM +0000, Conor Dooley wrote:
> Rob, Longbin,
>
> On Sun, Oct 26, 2025 at 05:47:32PM +0800, Longbin Li wrote:
> > On Sat, Oct 25, 2025 at 01:44:00PM +0100, Conor Dooley wrote:
> > > On Sat, Oct 25, 2025 at 10:27:13AM +0800, Longbin Li wrote:
> > > > On Fri, Oct 24, 2025 at 05:46:03PM +0100, Conor Dooley wrote:
> > > >
> > > > > > ...
> > > > > > +
> > > > > > +properties:
> > > > > > + compatible:
> > > > > > + oneOf:
> > > > > > + - items:
> > > > > > + - const: sophgo,cv1800b-top-syscon
> > > > > > + - const: syscon
> > > > > > + - const: simple-mfd
> > > > > > +
> > > > > > + reg:
> > > > > > + maxItems: 1
> > > > > > +
> > > > > > + "#address-cells":
> > > > > > + const: 1
> > > > > > +
> > > > > > + "#size-cells":
> > > > > > + const: 1
> > > > > > +
> > > > > > + ranges: true
> > > > >
> > > > > Do you actually use ranges?
> > > > >
> >
> > Actually, I do not use it.
> > I added it following Rob's suggestion in
> > https://lore.kernel.org/all/20251015134144.GA3265377-robh@kernel.org/.
> > Should I drop it or not?
>
> I don't know why he suggested it, if it is not being used. Rob?
Child nodes are memory-mapped, right? MMIO should have 'ranges' all the
way down. Doesn't matter if Linux (currently) uses it or not.
Rob
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 12+ messages in thread