Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC

Conor Dooley
2025-10-24T16:47:53Z

[-- Attachment #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 #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]