]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
arm64: tegra: Add SDMMC auto-calibration settings
authorSowjanya Komatineni <skomatineni@nvidia.com>
Thu, 10 Jan 2019 22:46:02 +0000 (14:46 -0800)
committerThierry Reding <treding@nvidia.com>
Thu, 7 Feb 2019 18:03:57 +0000 (19:03 +0100)
Add SDMMC initial pad offsets used by auto calibration process.

Add SDMMC fixed drive strengths for Tegra210, Tegra186 and
Tegra194 which are used when calibration timeouts.

Fixed drive strengths are based on Pre SI Analysis of the pads.

Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
arch/arm64/boot/dts/nvidia/tegra186.dtsi
arch/arm64/boot/dts/nvidia/tegra194.dtsi
arch/arm64/boot/dts/nvidia/tegra210.dtsi

index 22815db4a3ede3eadc492397308e98d0e250e6fc..169aee59ceace232daf775f9dcc98f207d313a93 100644 (file)
                nvidia,pad-autocal-pull-down-offset-hs400 = <0x05>;
                nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x0a>;
                nvidia,pad-autocal-pull-down-offset-1v8-timeout = <0x0a>;
+               nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x0a>;
+               nvidia,pad-autocal-pull-down-offset-3v3-timeout = <0x0a>;
                nvidia,default-tap = <0x5>;
                nvidia,default-trim = <0x9>;
                nvidia,dqs-trim = <63>;
index 607b5bde94f082c013f454ef4bfd66d25a951c7d..99eaf9bc3d43fafc85bf97398eec4e72a32b4658 100644 (file)
                        clock-names = "sdhci";
                        resets = <&bpmp TEGRA194_RESET_SDMMC1>;
                        reset-names = "sdhci";
+                       nvidia,pad-autocal-pull-up-offset-3v3-timeout =
+                                                                       <0x07>;
+                       nvidia,pad-autocal-pull-down-offset-3v3-timeout =
+                                                                       <0x07>;
+                       nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x06>;
+                       nvidia,pad-autocal-pull-down-offset-1v8-timeout =
+                                                                       <0x07>;
+                       nvidia,pad-autocal-pull-up-offset-sdr104 = <0x00>;
+                       nvidia,pad-autocal-pull-down-offset-sdr104 = <0x00>;
+                       nvidia,default-tap = <0x9>;
+                       nvidia,default-trim = <0x5>;
                        status = "disabled";
                };
 
                        clock-names = "sdhci";
                        resets = <&bpmp TEGRA194_RESET_SDMMC3>;
                        reset-names = "sdhci";
+                       nvidia,pad-autocal-pull-up-offset-1v8 = <0x00>;
+                       nvidia,pad-autocal-pull-down-offset-1v8 = <0x7a>;
+                       nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x07>;
+                       nvidia,pad-autocal-pull-down-offset-3v3-timeout =
+                                                                       <0x07>;
+                       nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x06>;
+                       nvidia,pad-autocal-pull-down-offset-1v8-timeout =
+                                                                       <0x07>;
+                       nvidia,pad-autocal-pull-up-offset-sdr104 = <0x00>;
+                       nvidia,pad-autocal-pull-down-offset-sdr104 = <0x00>;
+                       nvidia,default-tap = <0x9>;
+                       nvidia,default-trim = <0x5>;
                        status = "disabled";
                };
 
                        clock-names = "sdhci";
                        resets = <&bpmp TEGRA194_RESET_SDMMC4>;
                        reset-names = "sdhci";
+                       nvidia,pad-autocal-pull-up-offset-hs400 = <0x00>;
+                       nvidia,pad-autocal-pull-down-offset-hs400 = <0x00>;
+                       nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x0a>;
+                       nvidia,pad-autocal-pull-down-offset-1v8-timeout =
+                                                                       <0x0a>;
+                       nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x0a>;
+                       nvidia,pad-autocal-pull-down-offset-3v3-timeout =
+                                                                       <0x0a>;
+                       nvidia,default-tap = <0x8>;
+                       nvidia,default-trim = <0x14>;
+                       nvidia,dqs-trim = <40>;
                        status = "disabled";
                };
 
index b5858b5ea05224be4b897959dd9ca5d0d12b7e59..ef2725f898c26d0eb6559167ec088d1db900a24a 100644 (file)
                compatible = "nvidia,tegra210-pinmux";
                reg = <0x0 0x700008d4 0x0 0x29c>, /* Pad control registers */
                      <0x0 0x70003000 0x0 0x294>; /* Mux registers */
+               sdmmc1_3v3_drv: sdmmc1-3v3-drv {
+                       sdmmc1 {
+                               nvidia,pins = "drive_sdmmc1";
+                               nvidia,pull-down-strength = <0x8>;
+                               nvidia,pull-up-strength = <0x8>;
+                       };
+               };
+               sdmmc1_1v8_drv: sdmmc1-1v8-drv {
+                       sdmmc1 {
+                               nvidia,pins = "drive_sdmmc1";
+                               nvidia,pull-down-strength = <0x4>;
+                               nvidia,pull-up-strength = <0x3>;
+                       };
+               };
+               sdmmc2_1v8_drv: sdmmc2-1v8-drv {
+                       sdmmc2 {
+                               nvidia,pins = "drive_sdmmc2";
+                               nvidia,pull-down-strength = <0x10>;
+                               nvidia,pull-up-strength = <0x10>;
+                       };
+               };
+               sdmmc3_3v3_drv: sdmmc3-3v3-drv {
+                       sdmmc3 {
+                               nvidia,pins = "drive_sdmmc3";
+                               nvidia,pull-down-strength = <0x8>;
+                               nvidia,pull-up-strength = <0x8>;
+                       };
+               };
+               sdmmc3_1v8_drv: sdmmc3-1v8-drv {
+                       sdmmc3 {
+                               nvidia,pins = "drive_sdmmc3";
+                               nvidia,pull-down-strength = <0x4>;
+                               nvidia,pull-up-strength = <0x3>;
+                       };
+               };
+               sdmmc4_1v8_drv: sdmmc4-1v8-drv {
+                       sdmmc4 {
+                               nvidia,pins = "drive_sdmmc4";
+                               nvidia,pull-down-strength = <0x10>;
+                               nvidia,pull-up-strength = <0x10>;
+                       };
+               };
        };
 
        /*
                clock-names = "sdhci";
                resets = <&tegra_car 14>;
                reset-names = "sdhci";
-               pinctrl-names = "sdmmc-3v3", "sdmmc-1v8";
+               pinctrl-names = "sdmmc-3v3", "sdmmc-1v8",
+                               "sdmmc-3v3-drv", "sdmmc-1v8-drv";
                pinctrl-0 = <&sdmmc1_3v3>;
                pinctrl-1 = <&sdmmc1_1v8>;
+               pinctrl-2 = <&sdmmc1_3v3_drv>;
+               pinctrl-3 = <&sdmmc1_1v8_drv>;
                nvidia,pad-autocal-pull-up-offset-3v3 = <0x00>;
                nvidia,pad-autocal-pull-down-offset-3v3 = <0x7d>;
                nvidia,pad-autocal-pull-up-offset-1v8 = <0x7b>;
                clock-names = "sdhci";
                resets = <&tegra_car 9>;
                reset-names = "sdhci";
+               pinctrl-names = "sdmmc-1v8-drv";
+               pinctrl-0 = <&sdmmc2_1v8_drv>;
                nvidia,pad-autocal-pull-up-offset-1v8 = <0x05>;
                nvidia,pad-autocal-pull-down-offset-1v8 = <0x05>;
                nvidia,default-tap = <0x8>;
                clock-names = "sdhci";
                resets = <&tegra_car 69>;
                reset-names = "sdhci";
-               pinctrl-names = "sdmmc-3v3", "sdmmc-1v8";
+               pinctrl-names = "sdmmc-3v3", "sdmmc-1v8",
+                               "sdmmc-3v3-drv", "sdmmc-1v8-drv";
                pinctrl-0 = <&sdmmc3_3v3>;
                pinctrl-1 = <&sdmmc3_1v8>;
+               pinctrl-2 = <&sdmmc3_3v3_drv>;
+               pinctrl-3 = <&sdmmc3_1v8_drv>;
                nvidia,pad-autocal-pull-up-offset-3v3 = <0x00>;
                nvidia,pad-autocal-pull-down-offset-3v3 = <0x7d>;
                nvidia,pad-autocal-pull-up-offset-1v8 = <0x7b>;
                clock-names = "sdhci";
                resets = <&tegra_car 15>;
                reset-names = "sdhci";
+               pinctrl-names = "sdmmc-3v3-drv", "sdmmc-1v8-drv";
+               pinctrl-0 = <&sdmmc4_1v8_drv>;
+               pinctrl-1 = <&sdmmc4_1v8_drv>;
                nvidia,pad-autocal-pull-up-offset-1v8 = <0x05>;
                nvidia,pad-autocal-pull-down-offset-1v8 = <0x05>;
                nvidia,default-tap = <0x8>;