diff options
author | Jean-Jacques Hiblot <jjhiblot@ti.com> | 2017-01-09 07:22:15 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-01-26 02:24:40 -0500 |
commit | 5b66186152158076de6a1405329b255a327dd538 (patch) | |
tree | 24fa823d0e29f156a2c112b9f7e529b2cfa414dd /arch/arm/boot | |
parent | 1f75575aca7be589881cda14344b978b42cbceb5 (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.dtsi | 1 | ||||
-rw-r--r-- | arch/arm/boot/dts/omap5.dtsi | 1 |
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 { |