aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/boot
diff options
context:
space:
mode:
authorJean-Jacques Hiblot <jjhiblot@ti.com>2017-01-09 07:22:15 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-01-26 02:24:40 -0500
commit5b66186152158076de6a1405329b255a327dd538 (patch)
tree24fa823d0e29f156a2c112b9f7e529b2cfa414dd /arch/arm/boot
parent1f75575aca7be589881cda14344b978b42cbceb5 (diff)
ARM: dts: OMAP5 / DRA7: indicate that SATA port 0 is available.
commit 87cb12910a2ab6ed41ae951ea4d9c1cc1120199a upstream. AHCI provides the register PORTS_IMPL to let the software know which port is supported. The register must be initialized by the bootloader. However in some cases u-boot doesn't properly initialize this value (if it is not compiled with SATA support for example or if the SATA initialization fails). The DTS entry "ports-implemented" can be used to override the value in PORTS_IMPL. Without this patch the SATA will not work in the following two cases: * if there has been a failure to initialize SATA in u-boot. * if ahci_platform module has been removed and re-inserted. The reason is that the content of PORTS_IMPL is lost after the module is removed. I suspect that it's because the controller is reset by the hwmod. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Acked-by: Roger Quadros <rogerq@ti.com> [tony@atomide.com: updated comments with what goes wrong] Signed-off-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/arm/boot')
-rw-r--r--arch/arm/boot/dts/dra7.dtsi1
-rw-r--r--arch/arm/boot/dts/omap5.dtsi1
2 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
index d4fcd68f6349..ef888295aa7b 100644
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -1376,6 +1376,7 @@
1376 phy-names = "sata-phy"; 1376 phy-names = "sata-phy";
1377 clocks = <&sata_ref_clk>; 1377 clocks = <&sata_ref_clk>;
1378 ti,hwmods = "sata"; 1378 ti,hwmods = "sata";
1379 ports-implemented = <0x1>;
1379 }; 1380 };
1380 1381
1381 rtc: rtc@48838000 { 1382 rtc: rtc@48838000 {
diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
index 25262118ec3d..f8aa0cbc5f01 100644
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -985,6 +985,7 @@
985 phy-names = "sata-phy"; 985 phy-names = "sata-phy";
986 clocks = <&sata_ref_clk>; 986 clocks = <&sata_ref_clk>;
987 ti,hwmods = "sata"; 987 ti,hwmods = "sata";
988 ports-implemented = <0x1>;
988 }; 989 };
989 990
990 dss: dss@58000000 { 991 dss: dss@58000000 {