aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/oxnas/files/arch/arm
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2014-12-10 15:51:07 +0000
committerJohn Crispin <john@openwrt.org>2014-12-10 15:51:07 +0000
commit9432cbd577561f047ff13da7519a0ba3a93a252e (patch)
treeb8e2e7ed5430f9616b04e71f75d001b321afcf76 /target/linux/oxnas/files/arch/arm
parent1fa7c8587dda724dcd19294dc8932d790ec5acb3 (diff)
downloadupstream-9432cbd577561f047ff13da7519a0ba3a93a252e.tar.gz
upstream-9432cbd577561f047ff13da7519a0ba3a93a252e.tar.bz2
upstream-9432cbd577561f047ff13da7519a0ba3a93a252e.zip
oxnas: add support for 2nd S-ATA port to sata_oxnas driver
similar to mv_sata, use nr-ports attribute from device tree. import and adapt locking code from vendor GPL sources. add dma controller handling, it may be used in future to avoid full core resets similar to the vendor SDK's "progressive cleanup" function. this is still very dirty and aimed to first of all do things quite exactly like the reference code. and it somehow works. obviously there is lots of room for improvement :) Signed-off-by: Daniel Golle <daniel@makrotopia.org> SVN-Revision: 43598
Diffstat (limited to 'target/linux/oxnas/files/arch/arm')
-rw-r--r--target/linux/oxnas/files/arch/arm/boot/dts/ox820-kd20.dts1
-rw-r--r--target/linux/oxnas/files/arch/arm/boot/dts/ox820.dtsi9
2 files changed, 6 insertions, 4 deletions
diff --git a/target/linux/oxnas/files/arch/arm/boot/dts/ox820-kd20.dts b/target/linux/oxnas/files/arch/arm/boot/dts/ox820-kd20.dts
index 9f52f43f80..2db15ea5dc 100644
--- a/target/linux/oxnas/files/arch/arm/boot/dts/ox820-kd20.dts
+++ b/target/linux/oxnas/files/arch/arm/boot/dts/ox820-kd20.dts
@@ -26,6 +26,7 @@
sata@45900000 {
status = "okay";
+ nr-ports = <2>;
};
nand@41000000 {
diff --git a/target/linux/oxnas/files/arch/arm/boot/dts/ox820.dtsi b/target/linux/oxnas/files/arch/arm/boot/dts/ox820.dtsi
index 77efd43157..3e1d9f38b4 100644
--- a/target/linux/oxnas/files/arch/arm/boot/dts/ox820.dtsi
+++ b/target/linux/oxnas/files/arch/arm/boot/dts/ox820.dtsi
@@ -286,14 +286,15 @@
sata@45900000 {
compatible = "plxtech,nas782x-sata";
- /* port sgdma core */
- reg = <0x45900000 0x100>, <0x459B0000 0x10>, <0x459E0000 0x2000>,
- /* phy descriptors (optional) */
- <0x44900000 0x0C>, <0x50000000 0x1000>;
+ /* ports dmactl sgdma */
+ reg = <0x45900000 0x20000>, <0x459A0000 0x40>, <0x459B0000 0x20>,
+ /* core phy descriptors (optional) */
+ <0x459E0000 0x2000>, <0x44900000 0x0C>, <0x50000000 0x1000>;
interrupts = <0 18 0x304>;
clocks = <&stdclk 4>;
resets = <&rst 11>, <&rst 12>, <&rst 13>;
reset-names = "sata", "link", "phy";
+ nr-ports = <1>;
status = "disabled";
};