From: Olliver Schinagl <oliver@xxxxxxxxxxx> This patch series adds Allwinner sunxi support to platform_ahci. There are a few quirks here however that will need discussing. Allwinner added something to setup the DMA engine prior to enabling DMA in libahci.c. I'm not familiar at all with the AHCI spec and not sure what the proper way to implement this would have been. Don't other platforms optionally require the same thing? Also the way ahci_platform works seems a little hack-ish, it seems like something along the lines of ahci_platform_register(ahci-data) would be more appropriate, but not sure yet on those details (I am just a beginner). Furthermore this driver should, in theory, work on the A10 but on my cubieboard 1 it does not work yet (just hangs somewhere in libahci or after, but not the DMA call that was altered). I've also tested it the cubietruck, cubieboard 2 and olinuxino and it worked fine there. Thanks, Oliver Oliver Schinagl (3): RFC: AHCI: libahci is missing DMA ARM: sunxi: Add an ahci-platform compatible AHCI driver for the Allwinner SUNXi series of SoCs ARM: sunxi: dts: Add ahci support to a few A10 and A20 boards .../devicetree/bindings/ata/ahci-sunxi.txt | 24 ++ arch/arm/boot/dts/sun4i-a10-cubieboard.dts | 26 ++ arch/arm/boot/dts/sun4i-a10.dtsi | 9 + arch/arm/boot/dts/sun7i-a20-cubieboard2.dts | 26 ++ arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 26 ++ arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts | 26 ++ arch/arm/boot/dts/sun7i-a20.dtsi | 9 + drivers/ata/Kconfig | 9 + drivers/ata/Makefile | 1 + drivers/ata/ahci.h | 6 + drivers/ata/ahci_platform.c | 12 + drivers/ata/ahci_sunxi.c | 305 +++++++++++++++++++++ drivers/ata/libahci.c | 8 + 13 files changed, 487 insertions(+) create mode 100644 Documentation/devicetree/bindings/ata/ahci-sunxi.txt create mode 100644 drivers/ata/ahci_sunxi.c -- 1.8.3.2 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html