On Sun, 2020-08-16 at 10:24 +0200, Frank Wunderlich wrote:
> From: Frank Wunderlich <fran...@public-files.de>
> 
> asm_sel is for switching between sata and pcie mode
> on r64 there is GPIO90 connected to ASM1480 which
> switches RX/TX pairs to PCIe/SATA connector
> output-low means sata-controller is active
> 
> with 2020-10 now reg is also needed for the phy itself
> 
> Signed-off-by: Frank Wunderlich <fran...@public-files.de>
> ---
>  arch/arm/dts/mt7622-bananapi-bpi-r64.dts |  9 +++++++
>  arch/arm/dts/mt7622.dtsi                 | 32 ++++++++++++++++++++++++
>  2 files changed, 41 insertions(+)
> 
> diff --git a/arch/arm/dts/mt7622-bananapi-bpi-r64.dts 
> b/arch/arm/dts/mt7622-bananapi-bpi-r64.dts
> index 768f15bc2c..c36ec8f8d0 100644
> --- a/arch/arm/dts/mt7622-bananapi-bpi-r64.dts
> +++ b/arch/arm/dts/mt7622-bananapi-bpi-r64.dts
> @@ -204,3 +204,12 @@
>               full-duplex;
>       };
>  };
> +
> +&gpio {
> +     /*gpio 90 for setting mode to sata*/
> +     asm_sel {
> +             gpio-hog;
> +             gpios = <90 GPIO_ACTIVE_HIGH>;
> +             output-low;
> +     };
> +};
> diff --git a/arch/arm/dts/mt7622.dtsi b/arch/arm/dts/mt7622.dtsi
> index fec071643e..c43ad65702 100644
> --- a/arch/arm/dts/mt7622.dtsi
> +++ b/arch/arm/dts/mt7622.dtsi
> @@ -10,6 +10,7 @@
>  #include <dt-bindings/power/mt7629-power.h>
>  #include <dt-bindings/reset/mt7629-reset.h>
>  #include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/phy/phy.h>
>  
>  / {
>       compatible = "mediatek,mt7622";
> @@ -270,6 +271,37 @@
>               };
>       };
>  
> +     sata: sata@1a200000 {
> +             compatible = "mediatek,mtk-ahci";
> +             reg = <0x1a200000 0x1100>;
> +             resets = <&pciesys MT7622_SATA_AXI_BUS_RST>,
> +                     <&pciesys MT7622_SATA_PHY_SW_RST>,
> +                     <&pciesys MT7622_SATA_PHY_REG_RST>;
> +             reset-names = "axi", "sw", "reg";
> +             mediatek,phy-mode = <&pciesys>;
> +             ports-implemented = <0x1>;
> +             phys = <&sata_port PHY_TYPE_SATA>;
> +             phy-names = "sata-phy";
> +             status = "okay";
> +     };
> +
> +     sata_phy: sata-phy@1a243000 {
> +             compatible = "mediatek,generic-tphy-v1";
> +             reg = <0x1a243000 0x0100>;
Would you please change the tphy driver to make the shared reg optional
when version is v1 for sata, as Linux kernel does.
then we can remove "reg" property here.

> +             #address-cells = <1>;
> +             #size-cells = <1>;
> +             ranges;
> +             status = "okay";
> +
> +             sata_port: sata-phy@1a243000 {
> +                     reg = <0x1a243000 0x0100>;
> +                     clocks = <&topckgen CLK_TOP_ETH_500M>;
> +                     clock-names = "ref";
> +                     #phy-cells = <1>;
> +                     status = "okay";
> +             };
> +     };
> +
>       ethsys: syscon@1b000000 {
>               compatible = "mediatek,mt7622-ethsys", "syscon";
>               reg = <0x1b000000 0x1000>;

Reply via email to