[RFC PATCH 00/15] Add SATA support for TI OMAP5 and DRA7 SoCs

From: Roger Quadros
Date: Thu Sep 19 2013 - 09:08:54 EST


Hi,

This series adds SATA controller support for the Texas Instruments
OMAP5 and DRA7 platforms.

As the SATA controller is compatible with AHCI, we use the ahci_platform
driver and just provide the glue logic.

The AHCI controller is enclosed within a TI specific Wrapper that controls
the controller power mode. Patch 9 adds a driver for this wrapper.

The controller is linked to a SATA (PIPE3) PHY, which needs to be clocked
and powered up before it can be used. We do that with the help of the
generic PHY framework [2] in Patch 8.

Patches 1 to 7 adapt the the PHY driver to the Generic PHY framework.

Patches 9 to 15 provide platform adaptation code for OMAP5 and DRA7.

Patches are based on v3.12-rc1 with the following patches on top
[1] - omap control usb multiple instance support
http://article.gmane.org/gmane.linux.ports.arm.kernel/267587
git://github.com/rogerq/linux.git usb-control-module

[2] - Generic PHY framework
git://git.kernel.org/pub/scm/linux/kernel/git/kishon/linux-phy.git testing

[3] - Clock DT support
git://gitorious.org/~kristo/omap-pm/omap-pm-work.git mainline-3.11-rc3-omap-dt-clks-v5

[4] - PHY framework mis cleanup
https://lkml.org/lkml/2013/9/2/313

NOTE: [2], [3] and [4] will cause merge conflicts and need to be resolved manually.
A merged tree is available for reference/testing at

git://github.com/rogerq/linux.git ti-3.12-sata

Tested on omap5-uevm and dra7-evm with Gen2 SATA hard drive.

Known issues:
- Gen3 SATA SSD does not work due to some issue with PHY speed negotiation.

cheers,
-roger

---
Balaji T K (3):
ata: ahci_platform: Manage SATA PHY
arm: dts: omap5: add sata node
arm: dts: dra7: add sata node

Benoit Cousson (1):
arm: omap5: hwmod: add missing ocp2scp hwmod data

Keshava Munegowda (1):
ARM: omap5: hwmod: Add ocp2scp3 and sata hwmods

Kishon Vijay Abraham I (2):
phy: rename struct omap_control_usb to struct omap_control_phy
phy: omap-pipe3: use generic clock names

Nikhil Devshatwar (1):
ARM: DRA7: hwmod: Add ocp2scp3 and sata hwmods

Roger Quadros (7):
phy: omap-control: Update DT binding information
ARM: dts: omap5: Add clocks to usb3_phy node
phy: omap-pipe3: Add SATA DPLL support
phy: omap-pipe3: update compatibility string and DT binding
ARM: dts: omap5: Update usb3phy node
ata: ti_sata: Add Texas Instruments SATA Wrapper driver
ARM: dts: omap5: add ocp2scp1 address resource

.../devicetree/bindings/ata/ahci-platform.txt | 2 +-
Documentation/devicetree/bindings/ata/ti-sata.txt | 31 ++
Documentation/devicetree/bindings/phy/omap-phy.txt | 26 ++-
Documentation/devicetree/bindings/usb/omap-usb.txt | 23 --
arch/arm/boot/dts/dra7.dtsi | 49 ++++
arch/arm/boot/dts/omap5.dtsi | 56 ++++-
arch/arm/mach-omap2/omap_hwmod_54xx_data.c | 117 ++++++++
arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 40 +++-
drivers/ata/Kconfig | 8 +
drivers/ata/Makefile | 1 +
drivers/ata/ahci.h | 2 +
drivers/ata/ahci_platform.c | 31 ++-
drivers/ata/sata_ti.c | 160 +++++++++++
drivers/phy/Kconfig | 14 +-
drivers/phy/Makefile | 1 +
drivers/phy/phy-omap-control.c | 300 ++++++++++++++++++++
drivers/phy/phy-omap-pipe3.c | 157 ++++++-----
drivers/phy/phy-omap-usb2.c | 9 +-
drivers/usb/musb/omap2430.c | 2 +-
drivers/usb/phy/Kconfig | 10 -
drivers/usb/phy/Makefile | 1 -
drivers/usb/phy/phy-omap-control.c | 300 --------------------
include/linux/phy/omap_control_phy.h | 83 ++++++
include/linux/phy/omap_pipe3.h | 6 +
include/linux/usb/omap_control_usb.h | 83 ------
25 files changed, 1013 insertions(+), 499 deletions(-)
create mode 100644 Documentation/devicetree/bindings/ata/ti-sata.txt
create mode 100644 drivers/ata/sata_ti.c
create mode 100644 drivers/phy/phy-omap-control.c
delete mode 100644 drivers/usb/phy/phy-omap-control.c
create mode 100644 include/linux/phy/omap_control_phy.h
delete mode 100644 include/linux/usb/omap_control_usb.h

--
1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/