Add sata nodes to rk356x
Subsystems (5)
v6 cover Add sata nodes to rk356x
From: Frank Wunderlich <[email protected]>
This Series converts the binding for ahci-platform to yaml and adds sata nodes to rockchip rk356x device trees.
---
v6:
- add fix for spear1340
- fix indentation of examples
- add compatible marvell,berlin2-ahci
- change maximum of ports-implemented
- add select to exclude qcom compatibles
- drop marvell,armada-380-ahci
it is not handled in the ahci-platform.c but ahci_mvebu.c and incompatible due to missing phys/target-supply
v5:
DTS:
- drop broadcom-patch as it is already applied
- add fix for marvell
YAML:
- change subject
- drop brcm,iproc-ahci from standalone enum
- fix reg address in example 2
- move clocknames next to clocks, regnames to reg
- drop interrupts description
- drop newline from dma-coherent
- drop max-items from ports-implemented
- min2max in child phys
- fix identation for compatible and sata-common
- add additionalProperties=false for subnodes
- pipe for paragraphs and newline after title
- add maximum for ports-implemented (found only 0x1 as its value)
- add phy-names to sata-ports
v4:
YAML binding:
- fix min vs. max
- fix indention of examples
- move up sata-common.yaml
- reorder compatible
- add descriptions/maxitems
- fix compatible-structure
- fix typo in example achi vs. ahci
- add clock-names and reg-names
DTS-Patches:
- drop newline in dts
- re-add clock-names
- add soc specific compatible
- fix sata nodename in arch/arm64/boot/dts/broadcom/northstar2/ns2.dtsi
v3:
- add conversion to sata-series
- fix some errors in dt_binding_check and dtbs_check
- move to unevaluated properties = false
- add power-domain to yaml
- move sata0 to rk3568.dtsi
- drop clock-names and interrupt-names
Frank Wunderlich (6):
dt-bindings: ata: ahci-platform: Convert DT bindings to yaml
arm64: dts: marvell: Fix anyOf conditional failed
ARM: dts: spear13xx: Fix sata node name
dt-bindings: ata: ahci-platform: Add power-domains property
dt-bindings: ata: ahci-platform: Add rk3568-dwc-ahci compatible
arm64: dts: rockchip: Add sata nodes to rk356x
.../devicetree/bindings/ata/ahci-platform.txt | 79 -------- .../bindings/ata/ahci-platform.yaml | 189 ++++++++++++++++++ arch/arm/boot/dts/spear1310.dtsi | 6 +- arch/arm/boot/dts/spear1340-evb.dts | 2 +- arch/arm/boot/dts/spear1340.dtsi | 2 +- .../arm64/boot/dts/marvell/armada-7040-db.dts | 1 + .../boot/dts/marvell/armada-7040-mochabin.dts | 2 + .../marvell/armada-8040-clearfog-gt-8k.dts | 1 + .../arm64/boot/dts/marvell/armada-8040-db.dts | 2 + .../boot/dts/marvell/armada-8040-mcbin.dtsi | 1 + .../dts/marvell/armada-8040-puzzle-m801.dts | 2 + arch/arm64/boot/dts/marvell/armada-cp11x.dtsi | 2 + arch/arm64/boot/dts/marvell/cn9130-crb-B.dts | 1 + arch/arm64/boot/dts/marvell/cn9131-db.dtsi | 1 + arch/arm64/boot/dts/marvell/cn9132-db.dtsi | 1 + arch/arm64/boot/dts/rockchip/rk3568.dtsi | 14 ++ arch/arm64/boot/dts/rockchip/rk356x.dtsi | 28 +++ 17 files changed, 250 insertions(+), 84 deletions(-) delete mode 100644 Documentation/devicetree/bindings/ata/ahci-platform.txt create mode 100644 Documentation/devicetree/bindings/ata/ahci-platform.yaml
Signature · 1 line
2.25.1
PATCH v6 1/6 dt-bindings: ata: ahci-platform: Convert DT bindings to yaml
From: Frank Wunderlich <[email protected]>
Create a yaml file for dtbs_check from the old txt binding.
---
v6:
- fix indentation of examples
- add compatible marvell,berlin2-ahci
- change maximum of ports-implemented
- add select to exclude qcom compatibles
- drop marvell,armada-380-ahci
it is not handled in the ahci-platform.c but ahci_mvebu.c and incompatible due to missing phys/target-supply
v5:
- change subject
- drop brcm,iproc-ahci from standalone enum
- fix reg address in example 2
- move clocknames next to clocks, regnames to reg
- drop interrupts description
- drop newline from dma-coherent
- drop max-items from ports-implemented
- min2max in child phys
- fix identation for compatible and sata-common
- add additionalProperties=false for subnodes
- pipe for paragraphs and newline after title
- add maximum for ports-implemented (found only 0x1 as its value)
- add phy-names to sata-ports
v4:
- fix min vs. max
- fix indention of examples
- move up sata-common.yaml
- reorder compatible
- add descriptions/maxitems
- fix compatible-structure
- fix typo in example achi vs. ahci
- add clock-names and reg-names
- fix ns2 errors in separate patch
v3:
- add conversion to sata-series
- fix some errors in dt_binding_check and dtbs_check
- move to unevaluated properties = false
arch/arm/boot/dts/qcom-apq8064.dtsi had caused errors for clock-count
---
have not added reviewed-by from v5 because i have changed patch too much
--- .../devicetree/bindings/ata/ahci-platform.txt | 79 -------- .../bindings/ata/ahci-platform.yaml | 182 ++++++++++++++++++ 2 files changed, 182 insertions(+), 79 deletions(-) delete mode 100644 Documentation/devicetree/bindings/ata/ahci-platform.txt create mode 100644 Documentation/devicetree/bindings/ata/ahci-platform.yaml
Documentation/devicetree/bindings/ata/ahci-platform.txt deleted +0 -79
@@ -1,79 +0,0 @@ -* AHCI SATA Controller - -SATA nodes are defined to describe on-chip Serial ATA controllers. -Each SATA controller should have its own node. - -It is possible, but not required, to represent each port as a sub-node. -It allows to enable each port independently when dealing with multiple -PHYs. - -Required properties: -- compatible : compatible string, one of: - - "brcm,iproc-ahci" - - "hisilicon,hisi-ahci" - - "cavium,octeon-7130-ahci" - - "ibm,476gtr-ahci" - - "marvell,armada-380-ahci" - - "marvell,armada-3700-ahci" - - "snps,dwc-ahci" - - "snps,spear-ahci" - - "generic-ahci" -- interrupts : <interrupt mapping for SATA IRQ> -- reg : <registers mapping> - -Please note that when using "generic-ahci" you must also specify a SoC specific -compatible: - compatible = "manufacturer,soc-model-ahci", "generic-ahci"; - -Optional properties: -- dma-coherent : Present if dma operations are coherent -- clocks : a list of phandle + clock specifier pairs -- resets : a list of phandle + reset specifier pairs -- target-supply : regulator for SATA target power -- phy-supply : regulator for PHY power -- phys : reference to the SATA PHY node -- phy-names : must be "sata-phy" -- ahci-supply : regulator for AHCI controller -- ports-implemented : Mask that indicates which ports that the HBA supports - are available for software to use. Useful if PORTS_IMPL - is not programmed by the BIOS, which is true with - some embedded SOC's. - -Required properties when using sub-nodes: -- #address-cells : number of cells to encode an address -- #size-cells : number of cells representing the size of an address - -Sub-nodes required properties: -- reg : the port number -And at least one of the following properties: -- phys : reference to the SATA PHY node -- target-supply : regulator for SATA target power - -Examples: - sata@ffe08000 { - compatible = "snps,spear-ahci"; - reg = <0xffe08000 0x1000>; - interrupts = <115>; - }; - -With sub-nodes: - sata@f7e90000 { - compatible = "marvell,berlin2q-achi", "generic-ahci"; - reg = <0xe90000 0x1000>; - interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; - clocks = <&chip CLKID_SATA>; - #address-cells = <1>; - #size-cells = <0>; - - sata0: sata-port@0 { - reg = <0>; - phys = <&sata_phy 0>; - target-supply = <®_sata0>; - }; - - sata1: sata-port@1 { - reg = <1>; - phys = <&sata_phy 1>; - target-supply = <®_sata1>;; - }; - };
Documentation/devicetree/bindings/ata/ahci-platform.yaml new file +182 -0
182 lines not on this page · raw message
Signature · 1 line
2.25.1
Re: [PATCH v6 1/6] dt-bindings: ata: ahci-platform: Convert DT bindings to yaml
Quoted 49 lines · Frank Wunderlich
From: Frank Wunderlich <[email protected]>
Create a yaml file for
dtbs_checkfrom the old txt binding.Signed-off-by Frank Wunderlich <[email protected]>---
v6:
- fix indentation of examples
- add compatible marvell,berlin2-ahci
- change maximum of ports-implemented
- add select to exclude qcom compatibles
- drop marvell,armada-380-ahci
it is not handled in theahci-platform.cbutahci_mvebu.cand incompatible due to missing phys/target-supplyv5:
- change subject
- drop brcm,iproc-ahci from standalone enum
- fix reg address in example 2
- move clocknames next to clocks, regnames to reg
- drop interrupts description
- drop newline from dma-coherent
- drop max-items from ports-implemented
- min2max in child phys
- fix identation for compatible and sata-common
- add additionalProperties=false for subnodes
- pipe for paragraphs and newline after title
- add maximum for ports-implemented (found only0x1as its value)
- add phy-names to sata-portsv4:
- fix min vs. max
- fix indention of examples
- move upsata-common.yaml
- reorder compatible
- add descriptions/maxitems
- fix compatible-structure
- fix typo in example achi vs. ahci
- add clock-names and reg-names
- fix ns2 errors in separate patch
v3:
- add conversion to sata-series
- fix some errors indt_binding_checkanddtbs_check
- move to unevaluated properties = false
arch/arm/boot/dts/qcom-apq8064.dtsihad caused errors for clock-count
---
Quoted 9 lines
have not added reviewed-by from v5 because i have changed patch too much
--- .../devicetree/bindings/ata/ahci-platform.txt | 79 -------- .../bindings/ata/ahci-platform.yaml | 182 ++++++++++++++++++ 2 files changed, 182 insertions(+), 79 deletions(-) delete mode 100644 Documentation/devicetree/bindings/ata/ahci-platform.txt create mode 100644 Documentation/devicetree/bindings/ata/ahci-platform.yaml
Applied, thanks!
PATCH v6 2/6 arm64: dts: marvell: Fix anyOf conditional failed
In reply to Frank WunderlichFrom: Frank Wunderlich <[email protected]>
after converting the ahci-platform binding to yaml the following files reporting "'anyOf' conditional failed" on
sata@540000: sata-port@0
armada-7040-db.dtsarmada-8040-clearfog-gt-8k.dtsarmada-8040-mcbin.dtsarmada-8040-mcbin-singleshot.dtscn9130-db.dtscn9130-db-B.dtscn9131-db.dtscn9131-db-B.dtscn9132-db.dtscn9132-db-B.dts
the following files reporting 'anyOf' conditional failed on
sata@540000: sata-port@1
cn9132-db.dtscn9132-db-B.dtscn9130-crb-B.dts
'phys' is a required property
'target-supply' is a required property
From schema: Documentation/devicetree/bindings/ata/ahci-platform.yaml
This is caused by defining sata-ports incomplete in armada-cp11x.dtsi and overriding only a subset of ports with the needed phys/target-supply property.
Fix this by disabling the node-templates and enabling the needed nodes.
---
v5: add fixes-tag
the dtsi uses a macro for the node-label defined in armada-common.dtsi
CP11X_LABEL(sata0): sata@540000 {
so i hope i catched all right nodes to be enabled... have enabled all cpX_sata0 sata-portY childs
--- arch/arm64/boot/dts/marvell/armada-7040-db.dts | 1 + arch/arm64/boot/dts/marvell/armada-7040-mochabin.dts | 2 ++ arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts | 1 + arch/arm64/boot/dts/marvell/armada-8040-db.dts | 2 ++ arch/arm64/boot/dts/marvell/armada-8040-mcbin.dtsi | 1 + arch/arm64/boot/dts/marvell/armada-8040-puzzle-m801.dts | 2 ++ arch/arm64/boot/dts/marvell/armada-cp11x.dtsi | 2 ++ arch/arm64/boot/dts/marvell/cn9130-crb-B.dts | 1 + arch/arm64/boot/dts/marvell/cn9131-db.dtsi | 1 + arch/arm64/boot/dts/marvell/cn9132-db.dtsi | 1 + 10 files changed, 14 insertions(+)
arch/arm64/boot/dts/marvell/armada-7040-db.dts +1 -0
@@ -215,6 +215,7 @@ &cp0_sata0 { sata-port@1 { phys = <&cp0_comphy3 1>; phy-names = "cp0-sata0-1-phy"; + status = "okay"; }; };
arch/arm64/boot/dts/marvell/armada-7040-mochabin.dts +2 -0
@@ -436,12 +436,14 @@ &cp0_sata0 { sata-port@0 { phys = <&cp0_comphy2 0>; phy-names = "cp0-sata0-0-phy"; + status = "okay"; }; /* M.2-2250 B-key (J39) */ sata-port@1 { phys = <&cp0_comphy3 1>; phy-names = "cp0-sata0-1-phy"; + status = "okay"; }; };
arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts +1 -0
@@ -476,6 +476,7 @@ &cp1_sata0 { sata-port@1 { phys = <&cp1_comphy0 1>; phy-names = "cp1-sata0-1-phy"; + status = "okay"; }; };
arch/arm64/boot/dts/marvell/armada-8040-db.dts +2 -0
@@ -146,10 +146,12 @@ &cp0_sata0 { sata-port@0 { phys = <&cp0_comphy1 0>; phy-names = "cp0-sata0-0-phy"; + status = "okay"; }; sata-port@1 { phys = <&cp0_comphy3 1>; phy-names = "cp0-sata0-1-phy"; + status = "okay"; }; };
arch/arm64/boot/dts/marvell/armada-8040-mcbin.dtsi +1 -0
@@ -246,6 +246,7 @@ &cp0_sata0 { sata-port@1 { phys = <&cp0_comphy5 1>; phy-names = "cp0-sata0-1-phy"; + status = "okay"; }; };
arch/arm64/boot/dts/marvell/armada-8040-puzzle-m801.dts +2 -0
@@ -409,11 +409,13 @@ &cp0_sata0 { sata-port@0 { phys = <&cp0_comphy2 0>; phy-names = "cp0-sata0-0-phy"; + status = "okay"; }; sata-port@1 { phys = <&cp0_comphy5 1>; phy-names = "cp0-sata0-1-phy"; + status = "okay"; }; };
arch/arm64/boot/dts/marvell/armada-cp11x.dtsi +2 -0
@@ -342,10 +342,12 @@ CP11X_LABEL(sata0): sata@540000 { sata-port@0 { reg = <0>; + status = "disabled"; }; sata-port@1 { reg = <1>; + status = "disabled"; }; };
arch/arm64/boot/dts/marvell/cn9130-crb-B.dts +1 -0
@@ -28,6 +28,7 @@ sata-port@0 { status = "okay"; /* Generic PHY, providing serdes lanes */ phys = <&cp0_comphy2 0>; + status = "okay"; }; };
arch/arm64/boot/dts/marvell/cn9131-db.dtsi +1 -0
@@ -127,6 +127,7 @@ &cp1_sata0 { sata-port@1 { /* Generic PHY, providing serdes lanes */ phys = <&cp1_comphy5 1>; + status = "okay"; }; };
arch/arm64/boot/dts/marvell/cn9132-db.dtsi +1 -0
@@ -175,6 +175,7 @@ &cp2_sata0 { sata-port@0 { /* Generic PHY, providing serdes lanes */ phys = <&cp2_comphy2 0>; + status = "okay"; }; };
Signature · 1 line
2.25.1
PATCH v6 3/6 ARM: dts: spear13xx: Fix sata node name
In reply to Frank WunderlichFrom: Frank Wunderlich <[email protected]>
After converting the binding to yaml the node name does not match the standard pattern, change it.
arch/arm/boot/dts/spear1340-evb.dt.yaml: ahci@b1000000:
$nodename:0: 'ahci@b1000000' does not match '^sata(@.*)?$'
From schema: Documentation/devicetree/bindings/ata/ahci-platform.yaml
--- arch/arm/boot/dts/spear1310.dtsi | 6 +++--- arch/arm/boot/dts/spear1340-evb.dts | 2 +- arch/arm/boot/dts/spear1340.dtsi | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-)
arch/arm/boot/dts/spear1310.dtsi +3 -3
@@ -50,7 +50,7 @@ miphy2: miphy@eb808000 { status = "disabled"; }; - ahci0: ahci@b1000000 { + ahci0: sata@b1000000 { compatible = "snps,spear-ahci"; reg = <0xb1000000 0x10000>; interrupts = <0 68 0x4>;
@@ -59,7 +59,7 @@ ahci0: ahci@b1000000 { status = "disabled"; }; - ahci1: ahci@b1800000 { + ahci1: sata@b1800000 { compatible = "snps,spear-ahci"; reg = <0xb1800000 0x10000>; interrupts = <0 69 0x4>;
@@ -68,7 +68,7 @@ ahci1: ahci@b1800000 { status = "disabled"; }; - ahci2: ahci@b4000000 { + ahci2: sata@b4000000 { compatible = "snps,spear-ahci"; reg = <0xb4000000 0x10000>; interrupts = <0 70 0x4>;
arch/arm/boot/dts/spear1340-evb.dts +1 -1
@@ -112,7 +112,7 @@ pcie { }; }; - ahci@b1000000 { + sata@b1000000 { status = "okay"; };
arch/arm/boot/dts/spear1340.dtsi +1 -1
@@ -33,7 +33,7 @@ miphy0: miphy@eb800000 { status = "disabled"; }; - ahci0: ahci@b1000000 { + ahci0: sata@b1000000 { compatible = "snps,spear-ahci"; reg = <0xb1000000 0x10000>; interrupts = <0 72 0x4>;
Signature · 1 line
2.25.1
Re: [PATCH v6 3/6] ARM: dts: spear13xx: Fix sata node name
Quoted 10 lines · Frank Wunderlich
From: Frank Wunderlich <[email protected]>
After converting the binding to yaml the node name does not match the standard pattern, change it.
arch/arm/boot/dts/spear1340-evb.dt.yaml: ahci@b1000000:
$nodename:0: 'ahci@b1000000' does not match '^sata(@.*)?$'
From schema:Documentation/devicetree/bindings/ata/ahci-platform.yamlFixes 07658d9a659b ("SPEAr13xx: Add dts and dtsi files")
I don't think this is correct. The above patch is correct. The first patch in this series changes the names and that's where things break.
I think you could have added these patches before changing to yaml and then nothing would ever have broken.
Since this isn't a big deal anyway, I think you can just drop the Fixes tag here, and other dts patches you have.
Signature · 1 line
viresh
Aw: Re: [PATCH v6 3/6] ARM: dts: spear13xx: Fix sata node name
Hi,
thanks for for checking the spear-patch.
Quoted 9 lines
Gesendet: Montag, 14. März 2022 um 04:49 Uhr
Von: "Viresh Kumar" <[email protected]>Quoted 5 lines · Frank Wunderlich
From: Frank Wunderlich <[email protected]>
After converting the binding to yaml the node name does not match the standard pattern, change it.
Quoted 8 lines
Quoted 5 lines
arch/arm/boot/dts/spear1340-evb.dt.yaml: ahci@b1000000:
$nodename:0: 'ahci@b1000000' does not match '^sata(@.*)?$'
From schema:Documentation/devicetree/bindings/ata/ahci-platform.yamlFixes 07658d9a659b ("SPEAr13xx: Add dts and dtsi files")I don't think this is correct. The above patch is correct. The first patch in this series changes the names and that's where things break.
it's right that my binding will break it, but the nodes are not named the right way. And i used the commit that introduces the wrong node-names.
Maybe fixes-tag is wrong in this case.
Quoted 5 lines
I think you could have added these patches before changing to yaml and then nothing would ever have broken.
Since this isn't a big deal anyway, I think you can just drop the Fixes tag here, and other dts patches you have.
regards Frank
Rob Herring
maintainerRe: Re: [PATCH v6 3/6] ARM: dts: spear13xx: Fix sata node name
Quoted 17 lines · Frank Wunderlich
Hi,
thanks for for checking the spear-patch.
Quoted 13 lines
Gesendet: Montag, 14. März 2022 um 04:49 Uhr
Von: "Viresh Kumar" <[email protected]>Quoted 9 lines · Frank Wunderlich
From: Frank Wunderlich <[email protected]>
After converting the binding to yaml the node name does not match the standard pattern, change it.
arch/arm/boot/dts/spear1340-evb.dt.yaml: ahci@b1000000:
$nodename:0: 'ahci@b1000000' does not match '^sata(@.*)?$'
From schema:Documentation/devicetree/bindings/ata/ahci-platform.yaml
Quoted 8 lines
Quoted 4 lines
Quoted 1 line
Fixes 07658d9a659b ("SPEAr13xx: Add dts and dtsi files")I don't think this is correct. The above patch is correct. The first patch in this series changes the names and that's where things break.
it's right that my binding will break it, but the nodes are not named the right way. And i used the commit that introduces the wrong node-names.
Maybe fixes-tag is wrong in this case.
I'm pretty sure Viresh just meant the Fixes tag is not right.
Rob
Re: [PATCH v6 3/6] ARM: dts: spear13xx: Fix sata node name
Quoted 18 lines · Rob Herring
Quoted 17 lines · Frank Wunderlich
Hi,
thanks for for checking the spear-patch.
Quoted 13 lines
Gesendet: Montag, 14. März 2022 um 04:49 Uhr
Von: "Viresh Kumar" <[email protected]>Quoted 9 lines · Frank Wunderlich
From: Frank Wunderlich <[email protected]>
After converting the binding to yaml the node name does not match the standard pattern, change it.
arch/arm/boot/dts/spear1340-evb.dt.yaml: ahci@b1000000:
$nodename:0: 'ahci@b1000000' does not match '^sata(@.*)?$'
From schema:Documentation/devicetree/bindings/ata/ahci-platform.yaml
Quoted 8 lines
Quoted 8 lines
Quoted 4 lines
Quoted 1 line
Fixes 07658d9a659b ("SPEAr13xx: Add dts and dtsi files")I don't think this is correct. The above patch is correct. The first patch in this series changes the names and that's where things break.
it's right that my binding will break it, but the nodes are not named the right way. And i used the commit that introduces the wrong node-names.
Maybe fixes-tag is wrong in this case.
The problem is that people will try and backport this patch of yours to earlier stable kernels, because it has a Fixes tag, while the kernel isn't really broken then and there is no need to backport anything. This patch (and others in series) are just fine, just drop the Fixes tag.
Quoted 1 line
I'm pretty sure Viresh just meant the Fixes tag is not right.
Right.
Signature · 1 line
viresh
PATCH v6 4/6 dt-bindings: ata: ahci-platform: Add power-domains property
In reply to Frank WunderlichFrom: Frank Wunderlich <[email protected]>
Some SoC using power-domains property so add it here
---
changes in v5: added reviewed by
changes in v4: none
changes in v3:
- new patch
--- Documentation/devicetree/bindings/ata/ahci-platform.yaml | 3 +++ 1 file changed, 3 insertions(+)
Documentation/devicetree/bindings/ata/ahci-platform.yaml +3 -0
@@ -108,6 +108,9 @@ properties: some embedded SoCs. maximum: 0x1f + power-domains: + maxItems: 1 + resets: maxItems: 1
Signature · 1 line
2.25.1
Re: [PATCH v6 4/6] dt-bindings: ata: ahci-platform: Add power-domains property
Quoted 6 lines · Frank Wunderlich
From: Frank Wunderlich <[email protected]>
Some SoC using power-domains property so add it here
Signed-off-by Frank Wunderlich <[email protected]>Reviewed-by Krzysztof Kozlowski <[email protected]>
Quoted 9 lines
---
changes in v5: added reviewed by
changes in v4: none
changes in v3:
- new patch--- Documentation/devicetree/bindings/ata/ahci-platform.yaml | 3 +++ 1 file changed, 3 insertions(+)
Applied, thanks!
PATCH v6 5/6 dt-bindings: ata: ahci-platform: Add rk3568-dwc-ahci compatible
In reply to Frank WunderlichFrom: Frank Wunderlich <[email protected]>
Add SoC specific compatible for rk3568 ahci controller
---
v6:
change subject to dwc instead of dwc3
--- Documentation/devicetree/bindings/ata/ahci-platform.yaml | 4 ++++ 1 file changed, 4 insertions(+)
Documentation/devicetree/bindings/ata/ahci-platform.yaml +4 -0
@@ -49,6 +49,10 @@ properties: - marvell,berlin2-ahci - marvell,berlin2q-ahci - const: generic-ahci + - items: + - enum: + - rockchip,rk3568-dwc-ahci + - const: snps,dwc-ahci - enum: - cavium,octeon-7130-ahci - hisilicon,hisi-ahci
Signature · 1 line
2.25.1
Re: [PATCH v6 5/6] dt-bindings: ata: ahci-platform: Add rk3568-dwc-ahci compatible
Quoted 4 lines · Frank Wunderlich
From: Frank Wunderlich <[email protected]>
Add SoC specific compatible for rk3568 ahci controller
Quoted 9 lines
Signed-off-by Frank Wunderlich <[email protected]>Reviewed-by Krzysztof Kozlowski <[email protected]>---
v6:
change subject to dwc instead of dwc3--- Documentation/devicetree/bindings/ata/ahci-platform.yaml | 4 ++++ 1 file changed, 4 insertions(+)
Applied, thanks!
PATCH v6 6/6 arm64: dts: rockchip: Add sata nodes to rk356x
In reply to Frank WunderlichFrom: Frank Wunderlich <[email protected]>
RK356x supports up to 3 sata controllers which were compatible with the existing snps,dwc-ahci binding.
---
changes in v4:
- drop newline in dts
- re-add clock-names
- add soc specific compatible
changes in v3:
- fix combphy error by moving sata0 to rk3568.dtsi
- remove clock-names and interrupt-names
changes in v2:
- added sata0 + 1, but have only tested sata2
--- arch/arm64/boot/dts/rockchip/rk3568.dtsi | 14 ++++++++++++ arch/arm64/boot/dts/rockchip/rk356x.dtsi | 28 ++++++++++++++++++++++++ 2 files changed, 42 insertions(+)
arch/arm64/boot/dts/rockchip/rk3568.dtsi +14 -0
@@ -8,6 +8,20 @@ / { compatible = "rockchip,rk3568"; + sata0: sata@fc000000 { + compatible = "rockchip,rk3568-dwc-ahci", "snps,dwc-ahci"; + reg = <0 0xfc000000 0 0x1000>; + clocks = <&cru ACLK_SATA0>, <&cru CLK_SATA0_PMALIVE>, + <&cru CLK_SATA0_RXOOB>; + clock-names = "sata", "pmalive", "rxoob"; + interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; + phys = <&combphy0 PHY_TYPE_SATA>; + phy-names = "sata-phy"; + ports-implemented = <0x1>; + power-domains = <&power RK3568_PD_PIPE>; + status = "disabled"; + }; + pipe_phy_grf0: syscon@fdc70000 { compatible = "rockchip,rk3568-pipe-phy-grf", "syscon"; reg = <0x0 0xfdc70000 0x0 0x1000>;
arch/arm64/boot/dts/rockchip/rk356x.dtsi +28 -0
@@ -230,6 +230,34 @@ scmi_shmem: sram@0 { }; }; + sata1: sata@fc400000 { + compatible = "rockchip,rk3568-dwc-ahci", "snps,dwc-ahci"; + reg = <0 0xfc400000 0 0x1000>; + clocks = <&cru ACLK_SATA1>, <&cru CLK_SATA1_PMALIVE>, + <&cru CLK_SATA1_RXOOB>; + clock-names = "sata", "pmalive", "rxoob"; + interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; + phys = <&combphy1 PHY_TYPE_SATA>; + phy-names = "sata-phy"; + ports-implemented = <0x1>; + power-domains = <&power RK3568_PD_PIPE>; + status = "disabled"; + }; + + sata2: sata@fc800000 { + compatible = "rockchip,rk3568-dwc-ahci", "snps,dwc-ahci"; + reg = <0 0xfc800000 0 0x1000>; + clocks = <&cru ACLK_SATA2>, <&cru CLK_SATA2_PMALIVE>, + <&cru CLK_SATA2_RXOOB>; + clock-names = "sata", "pmalive", "rxoob"; + interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; + phys = <&combphy2 PHY_TYPE_SATA>; + phy-names = "sata-phy"; + ports-implemented = <0x1>; + power-domains = <&power RK3568_PD_PIPE>; + status = "disabled"; + }; + gic: interrupt-controller@fd400000 { compatible = "arm,gic-v3"; reg = <0x0 0xfd400000 0 0x10000>, /* GICD */
Signature · 1 line
2.25.1
Quoted 4 lines · Frank Wunderlich
From: Frank Wunderlich <[email protected]>
This Series converts the binding for ahci-platform to yaml and adds sata nodes to rockchip rk356x device trees.
Rob,
I saw you took patches 1, 4 and 5. What about the others ? Are you taking them or should I take them through the ATA tree ?
Signature · 2 lines
Damien Le Moal Western Digital Research
Hi Damien,
Am 12. März 2022 09:00:53 MEZ schrieb Damien Le Moal <[email protected]>:
Quoted 10 lines · Frank Wunderlich
Quoted 4 lines
From: Frank Wunderlich <[email protected]>
This Series converts the binding for ahci-platform to yaml and adds sata nodes to rockchip rk356x device trees.
Rob,
I saw you took patches 1, 4 and 5. What about the others ? Are you taking them or should I take them through the ATA tree ?
Imho the dts "fixes" should be tested by someone having such board or at least be reviewed.
I only fixed the binding warnings,but i'm not sure it breaks hardware as i cannot test function.
Afaik last part should go through Heikos tree.
regards Frank
Rob Herring
maintainerQuoted 10 lines · Damien Le Moal
Quoted 4 lines · Frank Wunderlich
From: Frank Wunderlich <[email protected]>
This Series converts the binding for ahci-platform to yaml and adds sata nodes to rockchip rk356x device trees.
Rob,
I saw you took patches 1, 4 and 5. What about the others ? Are you taking them or should I take them through the ATA tree ?
It's all dts changes, so they should go via the sub-arch trees.
Rob
Re: (subset) [PATCH v6 0/6] Add sata nodes to rk356x
In reply to Frank WunderlichQuoted 2 lines · Frank Wunderlich
This Series converts the binding for ahci-platform to yaml and adds sata nodes to rockchip rk356x device trees.
Applied, thanks!
[6/6] arm64: dts: rockchip: Add sata nodes to rk356x
commit: b2e5612f6ea23c87397e50f8d976cd8c95e3ed17
Best regards,
Signature · 1 line
Heiko Stuebner <[email protected]>