riscv: sophgo: add top syscon device for cv18xx
Subsystems (3)
v4 cover riscv: sophgo: add top syscon device for cv18xx
Add top syscon device bindings related DTS change for CV1800.
---
Changes from v3:
- https://lore.kernel.org/all/[email protected]/
- Corrected Co-developed-by information in commit message.
- Fixed patch version number.
Changes from v2:
- https://lore.kernel.org/all/[email protected]/
- Add ranges property.
- Use proper regex in patternProperties.
- Add complete example including child nodes.
Changed by RFC:
- https://lore.kernel.org/all/[email protected]/
---
Longbin Li (3):
dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
riscv: dts: sophgo: Add syscon node for cv18xx
riscv: dts: sophgo: Add USB support for cv18xx
.../soc/sophgo/sophgo,cv1800b-top-syscon.yaml | 81 +++++++++++++++++++ .../boot/dts/sophgo/cv1800b-milkv-duo.dts | 5 ++ arch/riscv/boot/dts/sophgo/cv180x.dtsi | 42 ++++++++++ .../boot/dts/sophgo/cv1812h-huashan-pi.dts | 5 ++ .../dts/sophgo/sg2002-licheerv-nano-b.dts | 5 ++ 5 files changed, 138 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml
--
2.51.0
PATCH v4 1/3 dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
The Sophgo CV1800/SG2000 SoC top misc system controller provides register access to configure related modules. It includes a usb2 phy and a dma multiplexer.
--- .../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
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +81 -0
@@ -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 <[email protected]> + +description: + The Sophgo CV18XX/SG200X SoC top misc system controller provides + register access to configure related modules. + +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 + +patternProperties: + "dma-router@[0-9a-f]+$": + $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 { + 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
Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
Quoted 1 line · Longbin Li
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?
Quoted 21 lines
access to configure related modules. It includes a usb2 phy and a dma multiplexer.
Co-developed-by Inochi Amaoto <[email protected]>Signed-off-by Inochi Amaoto <[email protected]>Signed-off-by Longbin Li <[email protected]>--- .../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.yamlDocumentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +4
-0@@ -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#
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 14
Quoted 10 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +10
-0+$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Sophgo CV18XX/SG200X SoC top system controller + +maintainers: + - Inochi Amaoto <[email protected]> + +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?
Quoted 9 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +9
-0+ +properties: + compatible: + oneOf: + - items: + - const: sophgo,cv1800b-top-syscon + - const: syscon + - const: simple-mfd +
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 33
Quoted 10 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +10
-0+ reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 1 + + ranges: true
Do you actually use ranges?
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 36
Quoted 2 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +2
-0+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?
Quoted 16 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +16
-0+ $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:
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 62
Quoted 10 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +10
-0+ - | + #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.
Quoted 21 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +19
-1+ 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
Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
Quoted 32 lines · Conor Dooley
Quoted 1 line · Longbin Li
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?
Quoted 26 lines
access to configure related modules. It includes a usb2 phy and a dma multiplexer.
Co-developed-by Inochi Amaoto <[email protected]>Signed-off-by Inochi Amaoto <[email protected]>Signed-off-by Longbin Li <[email protected]>--- .../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.yamlDocumentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +9
-0@@ -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:
Quoted 8 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 14
Quoted 5 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +5
-0+ - Inochi Amaoto <[email protected]> + +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.dtsiand going to be used on multiple devices?
nvm, I read the next patch. It's going into cv180x.dtsi.
Quoted 77 lines
Quoted 8 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +8
-0+properties: + compatible: + oneOf: + - items: + - const: sophgo,cv1800b-top-syscon + - const: syscon + - const: simple-mfd +Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 33
Quoted 10 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +10
-0+ reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 1 + + ranges: trueDo you actually use ranges?
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 36
Quoted 2 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +2
-0+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?
Quoted 16 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +16
-0+ $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:Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 62
Quoted 10 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +10
-0+ - | + #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.
Quoted 21 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +19
-1+ 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
Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
In reply to Conor DooleyQuoted 6 lines · Conor Dooley
Quoted 1 line · Longbin Li
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”.
Quoted 5 lines
Quoted 5 lines
access to configure related modules. It includes a usb2 phy and a dma multiplexer.
....
Quoted 8 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 14
Quoted 4 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +4
-0+ +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.dtsiand going to be used on multiple devices?
Yes, the “XX” is going to be used in the whole CV18XX/SG200X SoC series.
Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
In reply to Conor DooleyQuoted 49 lines · Conor Dooley
Quoted 10 lines
...
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +9
-0+ +properties: + compatible: + oneOf: + - items: + - const: sophgo,cv1800b-top-syscon + - const: syscon + - const: simple-mfd +Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 33
Quoted 10 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +10
-0+ reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 1 + + ranges: trueDo you actually use ranges?
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 36
Quoted 2 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +2
-0+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?
Quoted 20 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +20
-0+ $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 {
Quoted 9 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 62
Quoted 6 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +6
-0+ 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/[email protected]/
Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
Quoted 63 lines · Longbin Li
Quoted 49 lines · Conor Dooley
Quoted 10 lines
...
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +9
-0+ +properties: + compatible: + oneOf: + - items: + - const: sophgo,cv1800b-top-syscon + - const: syscon + - const: simple-mfd +Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 33
Quoted 10 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +10
-0+ reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 1 + + ranges: trueDo you actually use ranges?
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 36
Quoted 2 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +2
-0+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?
Quoted 20 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +20
-0+ $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 {Quoted 9 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 62
Quoted 6 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +6
-0+ 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,
Quoted 7 lines
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/[email protected]/
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.
Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
Quoted 18 lines · Conor Dooley
Quoted 17 lines · Longbin Li
Quoted 15 lines · Conor Dooley
Quoted 15 lines
...
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +14
-0+ +properties: + compatible: + oneOf: + - items: + - const: sophgo,cv1800b-top-syscon + - const: syscon + - const: simple-mfd + + reg: + maxItems: 1 + + "#address-cells": + const: 1
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 33
Quoted 5 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +5
-0+ + "#size-cells": + const: 1 + + ranges: trueDo you actually use ranges?
Actually, I do not use it.
I added it following Rob's suggestion in
https://lore.kernel.org/all/[email protected]/.
Should I drop it or not?
Quoted 46 lines
Quoted 38 lines
Quoted 26 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 36
Quoted 2 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +2
-0+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?
Quoted 20 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +20
-0+ $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 {Quoted 9 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 62
Quoted 6 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +6
-0+ 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,
Quoted 7 lines
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/[email protected]/
Quoted 6 lines
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.
Re: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
Rob, Longbin,
Quoted 28 lines · Longbin Li
Quoted 18 lines · Conor Dooley
Quoted 17 lines · Longbin Li
Quoted 15 lines · Conor Dooley
Quoted 15 lines
...
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +14
-0+ +properties: + compatible: + oneOf: + - items: + - const: sophgo,cv1800b-top-syscon + - const: syscon + - const: simple-mfd + + reg: + maxItems: 1 + + "#address-cells": + const: 1Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 33
Quoted 5 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +5
-0+ + "#size-cells": + const: 1 + + ranges: trueDo you actually use ranges?
Quoted 4 lines
Actually, I do not use it.
I added it following Rob's suggestion in
https://lore.kernel.org/all/[email protected]/.
Should I drop it or not?
I don't know why he suggested it, if it is not being used. Rob?
Rob Herring
maintainerRe: [PATCH v4 1/3] dt-bindings: soc: sophgo: add TOP syscon for CV18XX/SG200X series SoC
Quoted 31 lines · Conor Dooley
Rob, Longbin,
Quoted 28 lines · Longbin Li
Quoted 26 lines · Conor Dooley
Quoted 25 lines · Longbin Li
Quoted 23 lines · Conor Dooley
Quoted 10 lines
...
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +9
-0+ +properties: + compatible: + oneOf: + - items: + - const: sophgo,cv1800b-top-syscon + - const: syscon + - const: simple-mfd +Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml line 33
Quoted 10 lines
Documentation/devicetree/bindings/soc/sophgo/sophgo,cv1800b-top-syscon.yaml new file +10
-0+ reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 1 + + ranges: trueDo you actually use ranges?
Quoted 6 lines
Quoted 4 lines
Actually, I do not use it.
I added it following Rob's suggestion in
https://lore.kernel.org/all/[email protected]/.
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
PATCH v4 2/3 riscv: dts: sophgo: Add syscon node for cv18xx
In reply to Longbin LiAdd top syscon node and all subdevice nodes for cv18xx series SoC.
--- arch/riscv/boot/dts/sophgo/cv180x.dtsi | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+)
arch/riscv/boot/dts/sophgo/cv180x.dtsi +26 -0
@@ -25,6 +25,32 @@ soc { #size-cells = <1>; ranges; + syscon: syscon@3000000 { + compatible = "sophgo,cv1800b-top-syscon", + "syscon", "simple-mfd"; + reg = <0x03000000 0x1000>; + #address-cells = <1>; + #size-cells = <1>; + + usbphy: phy@48 { + 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 RST_COMBO_PHY0>; + }; + + dmamux: dma-router@154 { + compatible = "sophgo,cv1800b-dmamux"; + reg = <0x154 0x8>, <0x298 0x4>; + #dma-cells = <2>; + dma-masters = <&dmac>; + }; + }; + rst: reset-controller@3003000 { compatible = "sophgo,cv1800b-reset"; reg = <0x3003000 0x1000>;
--
2.51.0
PATCH v4 3/3 riscv: dts: sophgo: Add USB support for cv18xx
In reply to Longbin LiAdd USB controller node for cv18xx and enable it for Huashan Pi, milkv-duo.
--- arch/riscv/boot/dts/sophgo/cv1800b-milkv-duo.dts | 5 +++++ arch/riscv/boot/dts/sophgo/cv180x.dtsi | 16 ++++++++++++++++ .../riscv/boot/dts/sophgo/cv1812h-huashan-pi.dts | 5 +++++ .../boot/dts/sophgo/sg2002-licheerv-nano-b.dts | 5 +++++ 4 files changed, 31 insertions(+)
arch/riscv/boot/dts/sophgo/cv1800b-milkv-duo.dts +5 -0
@@ -100,3 +100,8 @@ &uart0 { pinctrl-names = "default"; status = "okay"; }; + +&usb { + dr_mode = "host"; + status = "okay"; +};
arch/riscv/boot/dts/sophgo/cv180x.dtsi +16 -0
@@ -432,6 +432,22 @@ dmac: dma-controller@4330000 { status = "disabled"; }; + usb: usb@4340000 { + compatible = "sophgo,cv1800b-usb"; + reg = <0x04340000 0x10000>; + clocks = <&clk CLK_AXI4_USB>, <&clk CLK_APB_USB>; + clock-names = "otg", "utmi"; + g-np-tx-fifo-size = <32>; + g-rx-fifo-size = <536>; + g-tx-fifo-size = <768 512 512 384 128 128>; + interrupts = <SOC_PERIPHERAL_IRQ(14) IRQ_TYPE_LEVEL_HIGH>; + phys = <&usbphy>; + phy-names = "usb2-phy"; + resets = <&rst RST_USB>; + reset-names = "dwc2"; + status = "disabled"; + }; + rtc@5025000 { compatible = "sophgo,cv1800b-rtc", "syscon"; reg = <0x5025000 0x2000>;
arch/riscv/boot/dts/sophgo/cv1812h-huashan-pi.dts +5 -0
@@ -86,3 +86,8 @@ &sdhci1 { &uart0 { status = "okay"; }; + +&usb { + dr_mode = "host"; + status = "okay"; +};
arch/riscv/boot/dts/sophgo/sg2002-licheerv-nano-b.dts +5 -0
@@ -93,3 +93,8 @@ &uart0 { pinctrl-names = "default"; status = "okay"; }; + +&usb { + dr_mode = "host"; + status = "okay"; +};
--
2.51.0