All of lore.kernel.org
 help / color / mirror / Atom feed
* [v6 0/7] add support SATA for BMIPS_GENERIC
@ 2015-11-26  2:56 Jaedon Shin
  2015-11-26  2:56 ` [v6 1/7] ata: ahci_brcmstb: add support for MIPS-based platforms Jaedon Shin
                   ` (7 more replies)
  0 siblings, 8 replies; 18+ messages in thread
From: Jaedon Shin @ 2015-11-26  2:56 UTC (permalink / raw)
  To: Tejun Heo, Kishon Vijay Abraham I, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic, Jaedon Shin

Hi all,

This patch series add support SATA for BMIPS_GENERIC.

Changes in v6:
- change error message for invalid phy version
- use a flag AHCI_HFLAG_NO_NCQ instead of HOST_CAP_NCQ overriding

Changes in v5:
- uses brcm_sata_readreg and brcm_sata_writereg for HOST_CAP_NCQ overriding
- pull out already applied patches for device tree entries
- add "Tested-by:" and "Acked-by:" tags

Changes in v4:
- remove unused properties from bcm{7425,7342,7362}.dtsi

Changes in v3:
- fix typo quirk instead of quick
- disable NCQ before initialzing SATA controller endianness
- fix misnomer controlling phy interface
- remove brcm,broken-ncq and brcm,broken-phy properties from devicetree
- use compatible string for quirks
- use list for compatible strings
- add "Acked-by:" tags

Changes in v2:
- add a quirk for disable NCQ
- add a quirk for skip phy interface control
- remove unused definitions in ahci_brcmstb
- combine compatible string

Jaedon Shin (7):
  ata: ahci_brcmstb: add support for MIPS-based platforms
  ata: ahci_brcmstb: disable NCQ for MIPS-based platforms
  ata: ahci_brcmstb: add a quirk for MIPS-based platforms
  ata: ahci_brcmstb: remove unused definitions
  phy: phy_brcmstb_sata: remove duplicate definitions
  phy: phy_brcmstb_sata: add data for phy version
  phy: phy_brcmstb_sata: add support for MIPS-based platforms

 .../devicetree/bindings/ata/brcm,sata-brcmstb.txt  |  4 +-
 .../bindings/phy/brcm,brcmstb-sata-phy.txt         |  1 +
 drivers/ata/Kconfig                                |  2 +-
 drivers/ata/ahci_brcmstb.c                         | 23 ++++++++++-
 drivers/phy/Kconfig                                |  4 +-
 drivers/phy/phy-brcmstb-sata.c                     | 47 +++++++++++++++++-----
 6 files changed, 65 insertions(+), 16 deletions(-)

-- 
2.6.3


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [v6 1/7] ata: ahci_brcmstb: add support for MIPS-based platforms
  2015-11-26  2:56 [v6 0/7] add support SATA for BMIPS_GENERIC Jaedon Shin
@ 2015-11-26  2:56 ` Jaedon Shin
  2015-11-26  2:56 ` [v6 2/7] ata: ahci_brcmstb: disable NCQ " Jaedon Shin
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 18+ messages in thread
From: Jaedon Shin @ 2015-11-26  2:56 UTC (permalink / raw)
  To: Tejun Heo, Kishon Vijay Abraham I, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic, Jaedon Shin

The BCM7xxx ARM-based and MIPS-based platforms share a similar hardware
block for AHCI SATA3.

This new compatible string, "brcm,bcm7425-ahci", may be used for most
MIPS-based platforms of 40nm process technology.

Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Brian Norris <computersforpeace@gmail.com>
---
 Documentation/devicetree/bindings/ata/brcm,sata-brcmstb.txt | 4 +++-
 drivers/ata/Kconfig                                         | 2 +-
 drivers/ata/ahci_brcmstb.c                                  | 1 +
 3 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/ata/brcm,sata-brcmstb.txt b/Documentation/devicetree/bindings/ata/brcm,sata-brcmstb.txt
index 20ac9bbfa1fd..60872838f1ad 100644
--- a/Documentation/devicetree/bindings/ata/brcm,sata-brcmstb.txt
+++ b/Documentation/devicetree/bindings/ata/brcm,sata-brcmstb.txt
@@ -4,7 +4,9 @@ SATA nodes are defined to describe on-chip Serial ATA controllers.
 Each SATA controller should have its own node.
 
 Required properties:
-- compatible         : compatible list, may contain "brcm,bcm7445-ahci" and/or
+- compatible         : should be one or more of
+                       "brcm,bcm7425-ahci"
+                       "brcm,bcm7445-ahci"
                        "brcm,sata3-ahci"
 - reg                : register mappings for AHCI and SATA_TOP_CTRL
 - reg-names          : "ahci" and "top-ctrl"
diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 6aaa3f81755b..861643ea91b5 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -100,7 +100,7 @@ config SATA_AHCI_PLATFORM
 
 config AHCI_BRCMSTB
 	tristate "Broadcom STB AHCI SATA support"
-	depends on ARCH_BRCMSTB
+	depends on ARCH_BRCMSTB || BMIPS_GENERIC
 	help
 	  This option enables support for the AHCI SATA3 controller found on
 	  STB SoC's.
diff --git a/drivers/ata/ahci_brcmstb.c b/drivers/ata/ahci_brcmstb.c
index 14b7305d2ba0..73e3b0b2a3c2 100644
--- a/drivers/ata/ahci_brcmstb.c
+++ b/drivers/ata/ahci_brcmstb.c
@@ -300,6 +300,7 @@ static int brcm_ahci_remove(struct platform_device *pdev)
 }
 
 static const struct of_device_id ahci_of_match[] = {
+	{.compatible = "brcm,bcm7425-ahci"},
 	{.compatible = "brcm,bcm7445-ahci"},
 	{},
 };
-- 
2.6.3


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [v6 2/7] ata: ahci_brcmstb: disable NCQ for MIPS-based platforms
  2015-11-26  2:56 [v6 0/7] add support SATA for BMIPS_GENERIC Jaedon Shin
  2015-11-26  2:56 ` [v6 1/7] ata: ahci_brcmstb: add support for MIPS-based platforms Jaedon Shin
@ 2015-11-26  2:56 ` Jaedon Shin
  2015-11-26  2:56 ` [v6 3/7] ata: ahci_brcmstb: add a quirk " Jaedon Shin
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 18+ messages in thread
From: Jaedon Shin @ 2015-11-26  2:56 UTC (permalink / raw)
  To: Tejun Heo, Kishon Vijay Abraham I, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic, Jaedon Shin

The most MIPS-based platforms need to disable NCQ while have the NCQ
capability in HOST_CAP, and several ARM-based platforms (eg. BCM7349A0,
BCM7445A0, BCM7445B0) need to disable too.

Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Brian Norris <computersforpeace@gmail.com>
---
 drivers/ata/ahci_brcmstb.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/drivers/ata/ahci_brcmstb.c b/drivers/ata/ahci_brcmstb.c
index 73e3b0b2a3c2..e62e02de71d0 100644
--- a/drivers/ata/ahci_brcmstb.c
+++ b/drivers/ata/ahci_brcmstb.c
@@ -69,10 +69,15 @@
 	(DATA_ENDIAN << DMADESC_ENDIAN_SHIFT) |		\
 	(MMIO_ENDIAN << MMIO_ENDIAN_SHIFT))
 
+enum brcm_ahci_quirks {
+	BRCM_AHCI_QUIRK_NO_NCQ		= BIT(0),
+};
+
 struct brcm_ahci_priv {
 	struct device *dev;
 	void __iomem *top_ctrl;
 	u32 port_mask;
+	u32 quirks;
 };
 
 static const struct ata_port_info ahci_brcm_port_info = {
@@ -256,6 +261,9 @@ static int brcm_ahci_probe(struct platform_device *pdev)
 	if (IS_ERR(priv->top_ctrl))
 		return PTR_ERR(priv->top_ctrl);
 
+	if (of_device_is_compatible(dev->of_node, "brcm,bcm7425-ahci"))
+		priv->quirks |= BRCM_AHCI_QUIRK_NO_NCQ;
+
 	brcm_sata_init(priv);
 
 	priv->port_mask = brcm_ahci_get_portmask(pdev, priv);
@@ -273,6 +281,9 @@ static int brcm_ahci_probe(struct platform_device *pdev)
 	if (ret)
 		return ret;
 
+	if (priv->quirks & BRCM_AHCI_QUIRK_NO_NCQ)
+		hpriv->flags |= AHCI_HFLAG_NO_NCQ;
+
 	ret = ahci_platform_init_host(pdev, hpriv, &ahci_brcm_port_info,
 				      &ahci_platform_sht);
 	if (ret)
-- 
2.6.3


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [v6 3/7] ata: ahci_brcmstb: add a quirk for MIPS-based platforms
  2015-11-26  2:56 [v6 0/7] add support SATA for BMIPS_GENERIC Jaedon Shin
  2015-11-26  2:56 ` [v6 1/7] ata: ahci_brcmstb: add support for MIPS-based platforms Jaedon Shin
  2015-11-26  2:56 ` [v6 2/7] ata: ahci_brcmstb: disable NCQ " Jaedon Shin
@ 2015-11-26  2:56 ` Jaedon Shin
  2015-11-26  2:56 ` [v6 4/7] ata: ahci_brcmstb: remove unused definitions Jaedon Shin
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 18+ messages in thread
From: Jaedon Shin @ 2015-11-26  2:56 UTC (permalink / raw)
  To: Tejun Heo, Kishon Vijay Abraham I, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic, Jaedon Shin

Whereas ARM-based platforms have four phy interface registers and
information, the MIPS-based platforms have only three registers, and
there are no information and documentation. In the original BSP, It
using "strict-ahci" did not control these registers.

Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Brian Norris <computersforpeace@gmail.com>
---
 drivers/ata/ahci_brcmstb.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/drivers/ata/ahci_brcmstb.c b/drivers/ata/ahci_brcmstb.c
index e62e02de71d0..aaf0d6153596 100644
--- a/drivers/ata/ahci_brcmstb.c
+++ b/drivers/ata/ahci_brcmstb.c
@@ -71,6 +71,7 @@
 
 enum brcm_ahci_quirks {
 	BRCM_AHCI_QUIRK_NO_NCQ		= BIT(0),
+	BRCM_AHCI_QUIRK_SKIP_PHY_ENABLE	= BIT(1),
 };
 
 struct brcm_ahci_priv {
@@ -119,6 +120,9 @@ static void brcm_sata_phy_enable(struct brcm_ahci_priv *priv, int port)
 	void __iomem *p;
 	u32 reg;
 
+	if (priv->quirks & BRCM_AHCI_QUIRK_SKIP_PHY_ENABLE)
+		return;
+
 	/* clear PHY_DEFAULT_POWER_STATE */
 	p = phyctrl + SATA_TOP_CTRL_PHY_CTRL_1;
 	reg = brcm_sata_readreg(p);
@@ -148,6 +152,9 @@ static void brcm_sata_phy_disable(struct brcm_ahci_priv *priv, int port)
 	void __iomem *p;
 	u32 reg;
 
+	if (priv->quirks & BRCM_AHCI_QUIRK_SKIP_PHY_ENABLE)
+		return;
+
 	/* power-off the PHY digital logic */
 	p = phyctrl + SATA_TOP_CTRL_PHY_CTRL_2;
 	reg = brcm_sata_readreg(p);
@@ -261,8 +268,10 @@ static int brcm_ahci_probe(struct platform_device *pdev)
 	if (IS_ERR(priv->top_ctrl))
 		return PTR_ERR(priv->top_ctrl);
 
-	if (of_device_is_compatible(dev->of_node, "brcm,bcm7425-ahci"))
+	if (of_device_is_compatible(dev->of_node, "brcm,bcm7425-ahci")) {
 		priv->quirks |= BRCM_AHCI_QUIRK_NO_NCQ;
+		priv->quirks |= BRCM_AHCI_QUIRK_SKIP_PHY_ENABLE;
+	}
 
 	brcm_sata_init(priv);
 
-- 
2.6.3


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [v6 4/7] ata: ahci_brcmstb: remove unused definitions
  2015-11-26  2:56 [v6 0/7] add support SATA for BMIPS_GENERIC Jaedon Shin
                   ` (2 preceding siblings ...)
  2015-11-26  2:56 ` [v6 3/7] ata: ahci_brcmstb: add a quirk " Jaedon Shin
@ 2015-11-26  2:56 ` Jaedon Shin
  2015-11-30 14:58   ` Tejun Heo
  2015-11-26  2:56 ` [v6 5/7] phy: phy_brcmstb_sata: remove duplicate definitions Jaedon Shin
                   ` (3 subsequent siblings)
  7 siblings, 1 reply; 18+ messages in thread
From: Jaedon Shin @ 2015-11-26  2:56 UTC (permalink / raw)
  To: Tejun Heo, Kishon Vijay Abraham I, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic, Jaedon Shin

Remove unused definitions, and this is to avoid confusion with MIPS-based
platforms.

Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Brian Norris <computersforpeace@gmail.com>
---
 drivers/ata/ahci_brcmstb.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/ata/ahci_brcmstb.c b/drivers/ata/ahci_brcmstb.c
index aaf0d6153596..a4a0940307bc 100644
--- a/drivers/ata/ahci_brcmstb.c
+++ b/drivers/ata/ahci_brcmstb.c
@@ -52,8 +52,6 @@
   #define SATA_TOP_CTRL_2_PHY_GLOBAL_RESET		BIT(14)
  #define SATA_TOP_CTRL_PHY_OFFS				0x8
  #define SATA_TOP_MAX_PHYS				2
-#define SATA_TOP_CTRL_SATA_TP_OUT			0x1c
-#define SATA_TOP_CTRL_CLIENT_INIT_CTRL			0x20
 
 /* On big-endian MIPS, buses are reversed to big endian, so switch them back */
 #if defined(CONFIG_MIPS) && defined(__BIG_ENDIAN)
-- 
2.6.3


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [v6 5/7] phy: phy_brcmstb_sata: remove duplicate definitions
  2015-11-26  2:56 [v6 0/7] add support SATA for BMIPS_GENERIC Jaedon Shin
                   ` (3 preceding siblings ...)
  2015-11-26  2:56 ` [v6 4/7] ata: ahci_brcmstb: remove unused definitions Jaedon Shin
@ 2015-11-26  2:56 ` Jaedon Shin
  2015-11-26  2:56 ` [v6 6/7] phy: phy_brcmstb_sata: add data for phy version Jaedon Shin
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 18+ messages in thread
From: Jaedon Shin @ 2015-11-26  2:56 UTC (permalink / raw)
  To: Tejun Heo, Kishon Vijay Abraham I, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic, Jaedon Shin

Remove duplicate definitions.

Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Brian Norris <computersforpeace@gmail.com>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
---
 drivers/phy/phy-brcmstb-sata.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/phy/phy-brcmstb-sata.c b/drivers/phy/phy-brcmstb-sata.c
index 8a2cb16a1937..0be55dafe9ea 100644
--- a/drivers/phy/phy-brcmstb-sata.c
+++ b/drivers/phy/phy-brcmstb-sata.c
@@ -26,8 +26,6 @@
 
 #define SATA_MDIO_BANK_OFFSET				0x23c
 #define SATA_MDIO_REG_OFFSET(ofs)			((ofs) * 4)
-#define SATA_MDIO_REG_SPACE_SIZE			0x1000
-#define SATA_MDIO_REG_LENGTH				0x1f00
 
 #define MAX_PORTS					2
 
-- 
2.6.3


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [v6 6/7] phy: phy_brcmstb_sata: add data for phy version
  2015-11-26  2:56 [v6 0/7] add support SATA for BMIPS_GENERIC Jaedon Shin
                   ` (4 preceding siblings ...)
  2015-11-26  2:56 ` [v6 5/7] phy: phy_brcmstb_sata: remove duplicate definitions Jaedon Shin
@ 2015-11-26  2:56 ` Jaedon Shin
  2015-11-26 11:05   ` Sergei Shtylyov
  2015-11-26  2:56 ` [v6 7/7] phy: phy_brcmstb_sata: add support for MIPS-based platforms Jaedon Shin
  2015-12-20 12:01 ` [v6 0/7] add support SATA for BMIPS_GENERIC Kishon Vijay Abraham I
  7 siblings, 1 reply; 18+ messages in thread
From: Jaedon Shin @ 2015-11-26  2:56 UTC (permalink / raw)
  To: Tejun Heo, Kishon Vijay Abraham I, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic, Jaedon Shin

Add data for phy version, and the default value of version is using the
BRCM_SATA_PHY_28NM.

Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Brian Norris <computersforpeace@gmail.com>
---
 drivers/phy/phy-brcmstb-sata.c | 23 ++++++++++++++++++++---
 1 file changed, 20 insertions(+), 3 deletions(-)

diff --git a/drivers/phy/phy-brcmstb-sata.c b/drivers/phy/phy-brcmstb-sata.c
index 0be55dafe9ea..5de394f589c8 100644
--- a/drivers/phy/phy-brcmstb-sata.c
+++ b/drivers/phy/phy-brcmstb-sata.c
@@ -30,7 +30,11 @@
 #define MAX_PORTS					2
 
 /* Register offset between PHYs in PCB space */
-#define SATA_MDIO_REG_SPACE_SIZE			0x1000
+#define SATA_MDIO_REG_28NM_SPACE_SIZE			0x1000
+
+enum brcm_sata_phy_version {
+	BRCM_SATA_PHY_28NM,
+};
 
 struct brcm_sata_port {
 	int portnum;
@@ -42,6 +46,7 @@ struct brcm_sata_port {
 struct brcm_sata_phy {
 	struct device *dev;
 	void __iomem *phy_base;
+	enum brcm_sata_phy_version version;
 
 	struct brcm_sata_port phys[MAX_PORTS];
 };
@@ -64,8 +69,12 @@ enum sata_mdio_phy_regs_28nm {
 static inline void __iomem *brcm_sata_phy_base(struct brcm_sata_port *port)
 {
 	struct brcm_sata_phy *priv = port->phy_priv;
+	u32 offset;
 
-	return priv->phy_base + (port->portnum * SATA_MDIO_REG_SPACE_SIZE);
+	if (priv->version == BRCM_SATA_PHY_28NM)
+		offset = SATA_MDIO_REG_28NM_SPACE_SIZE;
+
+	return priv->phy_base + (port->portnum * offset);
 }
 
 static void brcm_sata_mdio_wr(void __iomem *addr, u32 bank, u32 ofs,
@@ -126,7 +135,8 @@ static const struct phy_ops phy_ops_28nm = {
 };
 
 static const struct of_device_id brcm_sata_phy_of_match[] = {
-	{ .compatible	= "brcm,bcm7445-sata-phy" },
+	{ .compatible	= "brcm,bcm7445-sata-phy",
+	  .data = (void *)BRCM_SATA_PHY_28NM },
 	{},
 };
 MODULE_DEVICE_TABLE(of, brcm_sata_phy_of_match);
@@ -135,6 +145,7 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
 {
 	struct device *dev = &pdev->dev;
 	struct device_node *dn = dev->of_node, *child;
+	const struct of_device_id *of_id;
 	struct brcm_sata_phy *priv;
 	struct resource *res;
 	struct phy_provider *provider;
@@ -154,6 +165,12 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
 	if (IS_ERR(priv->phy_base))
 		return PTR_ERR(priv->phy_base);
 
+	of_id = of_match_node(brcm_sata_phy_of_match, dn);
+	if (of_id)
+		priv->version = (enum brcm_sata_phy_version)of_id->data;
+	else
+		priv->version = BRCM_SATA_PHY_28NM;
+
 	for_each_available_child_of_node(dn, child) {
 		unsigned int id;
 		struct brcm_sata_port *port;
-- 
2.6.3


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [v6 7/7] phy: phy_brcmstb_sata: add support for MIPS-based platforms
  2015-11-26  2:56 [v6 0/7] add support SATA for BMIPS_GENERIC Jaedon Shin
                   ` (5 preceding siblings ...)
  2015-11-26  2:56 ` [v6 6/7] phy: phy_brcmstb_sata: add data for phy version Jaedon Shin
@ 2015-11-26  2:56 ` Jaedon Shin
  2015-12-20 12:01 ` [v6 0/7] add support SATA for BMIPS_GENERIC Kishon Vijay Abraham I
  7 siblings, 0 replies; 18+ messages in thread
From: Jaedon Shin @ 2015-11-26  2:56 UTC (permalink / raw)
  To: Tejun Heo, Kishon Vijay Abraham I, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic, Jaedon Shin

The BCM7xxx ARM-based and MIPS-based platforms share a similar hardware
block for AHCI SATA3.

This new compatible string, "brcm,bcm7425-sata-phy", may be used for
most MIPS-based platforms of 40nm process technology.

Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Acked-by: Rob Herring <robh@kernel.org>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Brian Norris <computersforpeace@gmail.com>
---
 .../bindings/phy/brcm,brcmstb-sata-phy.txt         |  1 +
 drivers/phy/Kconfig                                |  4 ++--
 drivers/phy/phy-brcmstb-sata.c                     | 24 ++++++++++++++++------
 3 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/Documentation/devicetree/bindings/phy/brcm,brcmstb-sata-phy.txt b/Documentation/devicetree/bindings/phy/brcm,brcmstb-sata-phy.txt
index 7f81ef90146a..d87ab7c127b8 100644
--- a/Documentation/devicetree/bindings/phy/brcm,brcmstb-sata-phy.txt
+++ b/Documentation/devicetree/bindings/phy/brcm,brcmstb-sata-phy.txt
@@ -2,6 +2,7 @@
 
 Required properties:
 - compatible: should be one or more of
+     "brcm,bcm7425-sata-phy"
      "brcm,bcm7445-sata-phy"
      "brcm,phy-sata3"
 - address-cells: should be 1
diff --git a/drivers/phy/Kconfig b/drivers/phy/Kconfig
index 7eb5859dd035..c6f4798ed3af 100644
--- a/drivers/phy/Kconfig
+++ b/drivers/phy/Kconfig
@@ -373,11 +373,11 @@ config PHY_TUSB1210
 
 config PHY_BRCMSTB_SATA
 	tristate "Broadcom STB SATA PHY driver"
-	depends on ARCH_BRCMSTB
+	depends on ARCH_BRCMSTB || BMIPS_GENERIC
 	depends on OF
 	select GENERIC_PHY
 	help
-	  Enable this to support the SATA3 PHY on 28nm Broadcom STB SoCs.
+	  Enable this to support the SATA3 PHY on 28nm or 40nm Broadcom STB SoCs.
 	  Likely useful only with CONFIG_SATA_BRCMSTB enabled.
 
 config PHY_CYGNUS_PCIE
diff --git a/drivers/phy/phy-brcmstb-sata.c b/drivers/phy/phy-brcmstb-sata.c
index 5de394f589c8..35809dc2bb99 100644
--- a/drivers/phy/phy-brcmstb-sata.c
+++ b/drivers/phy/phy-brcmstb-sata.c
@@ -32,8 +32,14 @@
 /* Register offset between PHYs in PCB space */
 #define SATA_MDIO_REG_28NM_SPACE_SIZE			0x1000
 
+/* The older SATA PHY registers duplicated per port registers within the map,
+ * rather than having a separate map per port.
+ */
+#define SATA_MDIO_REG_40NM_SPACE_SIZE			0x10
+
 enum brcm_sata_phy_version {
 	BRCM_SATA_PHY_28NM,
+	BRCM_SATA_PHY_40NM,
 };
 
 struct brcm_sata_port {
@@ -51,7 +57,7 @@ struct brcm_sata_phy {
 	struct brcm_sata_port phys[MAX_PORTS];
 };
 
-enum sata_mdio_phy_regs_28nm {
+enum sata_mdio_phy_regs {
 	PLL_REG_BANK_0				= 0x50,
 	PLL_REG_BANK_0_PLLCONTROL_0		= 0x81,
 
@@ -69,10 +75,14 @@ enum sata_mdio_phy_regs_28nm {
 static inline void __iomem *brcm_sata_phy_base(struct brcm_sata_port *port)
 {
 	struct brcm_sata_phy *priv = port->phy_priv;
-	u32 offset;
+	u32 offset = 0;
 
 	if (priv->version == BRCM_SATA_PHY_28NM)
 		offset = SATA_MDIO_REG_28NM_SPACE_SIZE;
+	else if (priv->version == BRCM_SATA_PHY_40NM)
+		offset = SATA_MDIO_REG_40NM_SPACE_SIZE;
+	else
+		dev_err(priv->dev, "invalid phy version\n");
 
 	return priv->phy_base + (port->portnum * offset);
 }
@@ -93,7 +103,7 @@ static void brcm_sata_mdio_wr(void __iomem *addr, u32 bank, u32 ofs,
 #define FMAX_VAL_DEFAULT	0x3df
 #define FMAX_VAL_SSC		0x83
 
-static void brcm_sata_cfg_ssc_28nm(struct brcm_sata_port *port)
+static void brcm_sata_cfg_ssc(struct brcm_sata_port *port)
 {
 	void __iomem *base = brcm_sata_phy_base(port);
 	struct brcm_sata_phy *priv = port->phy_priv;
@@ -124,12 +134,12 @@ static int brcm_sata_phy_init(struct phy *phy)
 {
 	struct brcm_sata_port *port = phy_get_drvdata(phy);
 
-	brcm_sata_cfg_ssc_28nm(port);
+	brcm_sata_cfg_ssc(port);
 
 	return 0;
 }
 
-static const struct phy_ops phy_ops_28nm = {
+static const struct phy_ops phy_ops = {
 	.init		= brcm_sata_phy_init,
 	.owner		= THIS_MODULE,
 };
@@ -137,6 +147,8 @@ static const struct phy_ops phy_ops_28nm = {
 static const struct of_device_id brcm_sata_phy_of_match[] = {
 	{ .compatible	= "brcm,bcm7445-sata-phy",
 	  .data = (void *)BRCM_SATA_PHY_28NM },
+	{ .compatible	= "brcm,bcm7425-sata-phy",
+	  .data = (void *)BRCM_SATA_PHY_40NM },
 	{},
 };
 MODULE_DEVICE_TABLE(of, brcm_sata_phy_of_match);
@@ -193,7 +205,7 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
 		port = &priv->phys[id];
 		port->portnum = id;
 		port->phy_priv = priv;
-		port->phy = devm_phy_create(dev, child, &phy_ops_28nm);
+		port->phy = devm_phy_create(dev, child, &phy_ops);
 		port->ssc_en = of_property_read_bool(child, "brcm,enable-ssc");
 		if (IS_ERR(port->phy)) {
 			dev_err(dev, "failed to create PHY\n");
-- 
2.6.3


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* Re: [v6 6/7] phy: phy_brcmstb_sata: add data for phy version
  2015-11-26  2:56 ` [v6 6/7] phy: phy_brcmstb_sata: add data for phy version Jaedon Shin
@ 2015-11-26 11:05   ` Sergei Shtylyov
  2015-12-15 10:46     ` Kishon Vijay Abraham I
  0 siblings, 1 reply; 18+ messages in thread
From: Sergei Shtylyov @ 2015-11-26 11:05 UTC (permalink / raw)
  To: Jaedon Shin, Tejun Heo, Kishon Vijay Abraham I, Rob Herring,
	Brian Norris, Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic

Hello.

On 11/26/2015 5:56 AM, Jaedon Shin wrote:

> Add data for phy version, and the default value of version is using the
> BRCM_SATA_PHY_28NM.
>
> Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
> Tested-by: Florian Fainelli <f.fainelli@gmail.com>
> Acked-by: Brian Norris <computersforpeace@gmail.com>
> ---
>   drivers/phy/phy-brcmstb-sata.c | 23 ++++++++++++++++++++---
>   1 file changed, 20 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/phy/phy-brcmstb-sata.c b/drivers/phy/phy-brcmstb-sata.c
> index 0be55dafe9ea..5de394f589c8 100644
> --- a/drivers/phy/phy-brcmstb-sata.c
> +++ b/drivers/phy/phy-brcmstb-sata.c
> @@ -30,7 +30,11 @@
>   #define MAX_PORTS					2
>
>   /* Register offset between PHYs in PCB space */
> -#define SATA_MDIO_REG_SPACE_SIZE			0x1000
> +#define SATA_MDIO_REG_28NM_SPACE_SIZE			0x1000
> +
> +enum brcm_sata_phy_version {
> +	BRCM_SATA_PHY_28NM,
> +};

    So an uninitialized .data field would mean the same?

[...]
> @@ -126,7 +135,8 @@ static const struct phy_ops phy_ops_28nm = {
>   };
>
>   static const struct of_device_id brcm_sata_phy_of_match[] = {
> -	{ .compatible	= "brcm,bcm7445-sata-phy" },
> +	{ .compatible	= "brcm,bcm7445-sata-phy",
> +	  .data = (void *)BRCM_SATA_PHY_28NM },
>   	{},
>   };
>   MODULE_DEVICE_TABLE(of, brcm_sata_phy_of_match);
> @@ -135,6 +145,7 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
>   {
>   	struct device *dev = &pdev->dev;
>   	struct device_node *dn = dev->of_node, *child;
> +	const struct of_device_id *of_id;
>   	struct brcm_sata_phy *priv;
>   	struct resource *res;
>   	struct phy_provider *provider;
> @@ -154,6 +165,12 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
>   	if (IS_ERR(priv->phy_base))
>   		return PTR_ERR(priv->phy_base);
>
> +	of_id = of_match_node(brcm_sata_phy_of_match, dn);
> +	if (of_id)
> +		priv->version = (enum brcm_sata_phy_version)of_id->data;
> +	else
> +		priv->version = BRCM_SATA_PHY_28NM;
> +
>   	for_each_available_child_of_node(dn, child) {
>   		unsigned int id;
>   		struct brcm_sata_port *port;

MBR, Sergei



^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [v6 4/7] ata: ahci_brcmstb: remove unused definitions
  2015-11-26  2:56 ` [v6 4/7] ata: ahci_brcmstb: remove unused definitions Jaedon Shin
@ 2015-11-30 14:58   ` Tejun Heo
  0 siblings, 0 replies; 18+ messages in thread
From: Tejun Heo @ 2015-11-30 14:58 UTC (permalink / raw)
  To: Jaedon Shin
  Cc: Kishon Vijay Abraham I, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide, Ralf Baechle, Dragan Stancevic

On Thu, Nov 26, 2015 at 11:56:32AM +0900, Jaedon Shin wrote:
> Remove unused definitions, and this is to avoid confusion with MIPS-based
> platforms.
> 
> Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
> Tested-by: Florian Fainelli <f.fainelli@gmail.com>
> Acked-by: Brian Norris <computersforpeace@gmail.com>

Applied 2-4 to libata/for-4.5.

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [v6 6/7] phy: phy_brcmstb_sata: add data for phy version
  2015-11-26 11:05   ` Sergei Shtylyov
@ 2015-12-15 10:46     ` Kishon Vijay Abraham I
  2015-12-15 11:23       ` Jaedon Shin
  0 siblings, 1 reply; 18+ messages in thread
From: Kishon Vijay Abraham I @ 2015-12-15 10:46 UTC (permalink / raw)
  To: Sergei Shtylyov, Jaedon Shin, Tejun Heo, Rob Herring,
	Brian Norris, Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic

Hi Shin,

On Thursday 26 November 2015 04:35 PM, Sergei Shtylyov wrote:
> Hello.
> 
> On 11/26/2015 5:56 AM, Jaedon Shin wrote:
> 
>> Add data for phy version, and the default value of version is using the
>> BRCM_SATA_PHY_28NM.
>>
>> Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
>> Tested-by: Florian Fainelli <f.fainelli@gmail.com>
>> Acked-by: Brian Norris <computersforpeace@gmail.com>
>> ---
>>   drivers/phy/phy-brcmstb-sata.c | 23 ++++++++++++++++++++---
>>   1 file changed, 20 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/phy/phy-brcmstb-sata.c b/drivers/phy/phy-brcmstb-sata.c
>> index 0be55dafe9ea..5de394f589c8 100644
>> --- a/drivers/phy/phy-brcmstb-sata.c
>> +++ b/drivers/phy/phy-brcmstb-sata.c
>> @@ -30,7 +30,11 @@
>>   #define MAX_PORTS                    2
>>
>>   /* Register offset between PHYs in PCB space */
>> -#define SATA_MDIO_REG_SPACE_SIZE            0x1000
>> +#define SATA_MDIO_REG_28NM_SPACE_SIZE            0x1000
>> +
>> +enum brcm_sata_phy_version {
>> +    BRCM_SATA_PHY_28NM,
>> +};
> 
>    So an uninitialized .data field would mean the same?

Are you planning to fix this?

Thanks
Kishon
> 
> [...]
>> @@ -126,7 +135,8 @@ static const struct phy_ops phy_ops_28nm = {
>>   };
>>
>>   static const struct of_device_id brcm_sata_phy_of_match[] = {
>> -    { .compatible    = "brcm,bcm7445-sata-phy" },
>> +    { .compatible    = "brcm,bcm7445-sata-phy",
>> +      .data = (void *)BRCM_SATA_PHY_28NM },
>>       {},
>>   };
>>   MODULE_DEVICE_TABLE(of, brcm_sata_phy_of_match);
>> @@ -135,6 +145,7 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
>>   {
>>       struct device *dev = &pdev->dev;
>>       struct device_node *dn = dev->of_node, *child;
>> +    const struct of_device_id *of_id;
>>       struct brcm_sata_phy *priv;
>>       struct resource *res;
>>       struct phy_provider *provider;
>> @@ -154,6 +165,12 @@ static int brcm_sata_phy_probe(struct platform_device
>> *pdev)
>>       if (IS_ERR(priv->phy_base))
>>           return PTR_ERR(priv->phy_base);
>>
>> +    of_id = of_match_node(brcm_sata_phy_of_match, dn);
>> +    if (of_id)
>> +        priv->version = (enum brcm_sata_phy_version)of_id->data;
>> +    else
>> +        priv->version = BRCM_SATA_PHY_28NM;
>> +
>>       for_each_available_child_of_node(dn, child) {
>>           unsigned int id;
>>           struct brcm_sata_port *port;
> 
> MBR, Sergei
> 
> 

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [v6 6/7] phy: phy_brcmstb_sata: add data for phy version
  2015-12-15 10:46     ` Kishon Vijay Abraham I
@ 2015-12-15 11:23       ` Jaedon Shin
  2015-12-17  0:46         ` Florian Fainelli
  0 siblings, 1 reply; 18+ messages in thread
From: Jaedon Shin @ 2015-12-15 11:23 UTC (permalink / raw)
  To: Kishon Vijay Abraham I
  Cc: Sergei Shtylyov, Tejun Heo, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide, Ralf Baechle, Dragan Stancevic

Hi Kishon,

On Dec 15, 2015, at 7:46 PM, Kishon Vijay Abraham I <kishon@ti.com> wrote:
> 
> Hi Shin,
> 
> On Thursday 26 November 2015 04:35 PM, Sergei Shtylyov wrote:
>> Hello.
>> 
>> On 11/26/2015 5:56 AM, Jaedon Shin wrote:
>> 
>>> Add data for phy version, and the default value of version is using the
>>> BRCM_SATA_PHY_28NM.
>>> 
>>> Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
>>> Tested-by: Florian Fainelli <f.fainelli@gmail.com>
>>> Acked-by: Brian Norris <computersforpeace@gmail.com>
>>> ---
>>>  drivers/phy/phy-brcmstb-sata.c | 23 ++++++++++++++++++++---
>>>  1 file changed, 20 insertions(+), 3 deletions(-)
>>> 
>>> diff --git a/drivers/phy/phy-brcmstb-sata.c b/drivers/phy/phy-brcmstb-sata.c
>>> index 0be55dafe9ea..5de394f589c8 100644
>>> --- a/drivers/phy/phy-brcmstb-sata.c
>>> +++ b/drivers/phy/phy-brcmstb-sata.c
>>> @@ -30,7 +30,11 @@
>>>  #define MAX_PORTS                    2
>>> 
>>>  /* Register offset between PHYs in PCB space */
>>> -#define SATA_MDIO_REG_SPACE_SIZE            0x1000
>>> +#define SATA_MDIO_REG_28NM_SPACE_SIZE            0x1000
>>> +
>>> +enum brcm_sata_phy_version {
>>> +    BRCM_SATA_PHY_28NM,
>>> +};
>> 
>>   So an uninitialized .data field would mean the same?
> 
> Are you planning to fix this?
> 
> Thanks
> Kishon

No, I do not have a plan in this version.

Of course, It is good that correspond to the case of NULL, but a .data field is not 
empty at any time. I'm sure it must have BRCM_SATA_PHY_28NM or BRCM_SATA_PHY_40NM.

And Sergei, thanks to your good point.

Thanks,
Jaedon

>> 
>> [...]
>>> @@ -126,7 +135,8 @@ static const struct phy_ops phy_ops_28nm = {
>>>  };
>>> 
>>>  static const struct of_device_id brcm_sata_phy_of_match[] = {
>>> -    { .compatible    = "brcm,bcm7445-sata-phy" },
>>> +    { .compatible    = "brcm,bcm7445-sata-phy",
>>> +      .data = (void *)BRCM_SATA_PHY_28NM },
>>>      {},
>>>  };
>>>  MODULE_DEVICE_TABLE(of, brcm_sata_phy_of_match);
>>> @@ -135,6 +145,7 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
>>>  {
>>>      struct device *dev = &pdev->dev;
>>>      struct device_node *dn = dev->of_node, *child;
>>> +    const struct of_device_id *of_id;
>>>      struct brcm_sata_phy *priv;
>>>      struct resource *res;
>>>      struct phy_provider *provider;
>>> @@ -154,6 +165,12 @@ static int brcm_sata_phy_probe(struct platform_device
>>> *pdev)
>>>      if (IS_ERR(priv->phy_base))
>>>          return PTR_ERR(priv->phy_base);
>>> 
>>> +    of_id = of_match_node(brcm_sata_phy_of_match, dn);
>>> +    if (of_id)
>>> +        priv->version = (enum brcm_sata_phy_version)of_id->data;
>>> +    else
>>> +        priv->version = BRCM_SATA_PHY_28NM;
>>> +
>>>      for_each_available_child_of_node(dn, child) {
>>>          unsigned int id;
>>>          struct brcm_sata_port *port;
>> 
>> MBR, Sergei


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [v6 6/7] phy: phy_brcmstb_sata: add data for phy version
  2015-12-15 11:23       ` Jaedon Shin
@ 2015-12-17  0:46         ` Florian Fainelli
  0 siblings, 0 replies; 18+ messages in thread
From: Florian Fainelli @ 2015-12-17  0:46 UTC (permalink / raw)
  To: Jaedon Shin, Kishon Vijay Abraham I
  Cc: Sergei Shtylyov, Tejun Heo, Rob Herring, Brian Norris, linux-ide,
	Ralf Baechle, Dragan Stancevic

On 15/12/15 03:23, Jaedon Shin wrote:
>>>   So an uninitialized .data field would mean the same?
>>
>> Are you planning to fix this?
>>
>> Thanks
>> Kishon
> 
> No, I do not have a plan in this version.
> 
> Of course, It is good that correspond to the case of NULL, but a .data field is not 
> empty at any time. I'm sure it must have BRCM_SATA_PHY_28NM or BRCM_SATA_PHY_40NM.
> 
> And Sergei, thanks to your good point.

I really do not this as a blocker to get these patches merged, and it
seems like we will miss another merge window on nitpicking if we
continue that route. Can we get these patches merged or are there more
blocking issues to be fixed?
-- 
Florian

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [v6 0/7] add support SATA for BMIPS_GENERIC
  2015-11-26  2:56 [v6 0/7] add support SATA for BMIPS_GENERIC Jaedon Shin
                   ` (6 preceding siblings ...)
  2015-11-26  2:56 ` [v6 7/7] phy: phy_brcmstb_sata: add support for MIPS-based platforms Jaedon Shin
@ 2015-12-20 12:01 ` Kishon Vijay Abraham I
  2015-12-24 17:52   ` Florian Fainelli
  7 siblings, 1 reply; 18+ messages in thread
From: Kishon Vijay Abraham I @ 2015-12-20 12:01 UTC (permalink / raw)
  To: Jaedon Shin, Tejun Heo, Rob Herring, Brian Norris,
	Florian Fainelli, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic



On Thursday 26 November 2015 08:26 AM, Jaedon Shin wrote:
> Hi all,
> 
> This patch series add support SATA for BMIPS_GENERIC.
> 
> Changes in v6:
> - change error message for invalid phy version
> - use a flag AHCI_HFLAG_NO_NCQ instead of HOST_CAP_NCQ overriding
> 
> Changes in v5:
> - uses brcm_sata_readreg and brcm_sata_writereg for HOST_CAP_NCQ overriding
> - pull out already applied patches for device tree entries
> - add "Tested-by:" and "Acked-by:" tags
> 
> Changes in v4:
> - remove unused properties from bcm{7425,7342,7362}.dtsi
> 
> Changes in v3:
> - fix typo quirk instead of quick
> - disable NCQ before initialzing SATA controller endianness
> - fix misnomer controlling phy interface
> - remove brcm,broken-ncq and brcm,broken-phy properties from devicetree
> - use compatible string for quirks
> - use list for compatible strings
> - add "Acked-by:" tags
> 
> Changes in v2:
> - add a quirk for disable NCQ
> - add a quirk for skip phy interface control
> - remove unused definitions in ahci_brcmstb
> - combine compatible string
> 
> Jaedon Shin (7):
>   ata: ahci_brcmstb: add support for MIPS-based platforms
>   ata: ahci_brcmstb: disable NCQ for MIPS-based platforms
>   ata: ahci_brcmstb: add a quirk for MIPS-based platforms
>   ata: ahci_brcmstb: remove unused definitions
>   phy: phy_brcmstb_sata: remove duplicate definitions
>   phy: phy_brcmstb_sata: add data for phy version
>   phy: phy_brcmstb_sata: add support for MIPS-based platforms

merged phy susbsystem patches to linux-phy tree.

Thanks
Kishon
> 
>  .../devicetree/bindings/ata/brcm,sata-brcmstb.txt  |  4 +-
>  .../bindings/phy/brcm,brcmstb-sata-phy.txt         |  1 +
>  drivers/ata/Kconfig                                |  2 +-
>  drivers/ata/ahci_brcmstb.c                         | 23 ++++++++++-
>  drivers/phy/Kconfig                                |  4 +-
>  drivers/phy/phy-brcmstb-sata.c                     | 47 +++++++++++++++++-----
>  6 files changed, 65 insertions(+), 16 deletions(-)
> 

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [v6 0/7] add support SATA for BMIPS_GENERIC
  2015-12-20 12:01 ` [v6 0/7] add support SATA for BMIPS_GENERIC Kishon Vijay Abraham I
@ 2015-12-24 17:52   ` Florian Fainelli
  2015-12-28 15:56     ` Tejun Heo
  0 siblings, 1 reply; 18+ messages in thread
From: Florian Fainelli @ 2015-12-24 17:52 UTC (permalink / raw)
  To: Kishon Vijay Abraham I, Jaedon Shin, Tejun Heo, Rob Herring,
	Brian Norris, linux-ide
  Cc: Ralf Baechle, Dragan Stancevic

On December 20, 2015 4:01:26 AM PST, Kishon Vijay Abraham I <kishon@ti.com> wrote:
>
>
>On Thursday 26 November 2015 08:26 AM, Jaedon Shin wrote:
>> Hi all,
>> 
>> This patch series add support SATA for BMIPS_GENERIC.
>> 
>> Changes in v6:
>> - change error message for invalid phy version
>> - use a flag AHCI_HFLAG_NO_NCQ instead of HOST_CAP_NCQ overriding
>> 
>> Changes in v5:
>> - uses brcm_sata_readreg and brcm_sata_writereg for HOST_CAP_NCQ
>overriding
>> - pull out already applied patches for device tree entries
>> - add "Tested-by:" and "Acked-by:" tags
>> 
>> Changes in v4:
>> - remove unused properties from bcm{7425,7342,7362}.dtsi
>> 
>> Changes in v3:
>> - fix typo quirk instead of quick
>> - disable NCQ before initialzing SATA controller endianness
>> - fix misnomer controlling phy interface
>> - remove brcm,broken-ncq and brcm,broken-phy properties from
>devicetree
>> - use compatible string for quirks
>> - use list for compatible strings
>> - add "Acked-by:" tags
>> 
>> Changes in v2:
>> - add a quirk for disable NCQ
>> - add a quirk for skip phy interface control
>> - remove unused definitions in ahci_brcmstb
>> - combine compatible string
>> 
>> Jaedon Shin (7):
>>   ata: ahci_brcmstb: add support for MIPS-based platforms
>>   ata: ahci_brcmstb: disable NCQ for MIPS-based platforms
>>   ata: ahci_brcmstb: add a quirk for MIPS-based platforms
>>   ata: ahci_brcmstb: remove unused definitions
>>   phy: phy_brcmstb_sata: remove duplicate definitions
>>   phy: phy_brcmstb_sata: add data for phy version
>>   phy: phy_brcmstb_sata: add support for MIPS-based platforms
>
>merged phy susbsystem patches to linux-phy tree.

Thank you! Tejun, can you take the AHCI driver changes if they look good to you? Thanks!

>
>Thanks
>Kishon
>> 
>>  .../devicetree/bindings/ata/brcm,sata-brcmstb.txt  |  4 +-
>>  .../bindings/phy/brcm,brcmstb-sata-phy.txt         |  1 +
>>  drivers/ata/Kconfig                                |  2 +-
>>  drivers/ata/ahci_brcmstb.c                         | 23 ++++++++++-
>>  drivers/phy/Kconfig                                |  4 +-
>>  drivers/phy/phy-brcmstb-sata.c                     | 47
>+++++++++++++++++-----
>>  6 files changed, 65 insertions(+), 16 deletions(-)
>> 


-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [v6 0/7] add support SATA for BMIPS_GENERIC
  2015-12-24 17:52   ` Florian Fainelli
@ 2015-12-28 15:56     ` Tejun Heo
  2016-01-01  2:21       ` Tejun Heo
  0 siblings, 1 reply; 18+ messages in thread
From: Tejun Heo @ 2015-12-28 15:56 UTC (permalink / raw)
  To: Florian Fainelli
  Cc: Kishon Vijay Abraham I, Jaedon Shin, Rob Herring, Brian Norris,
	linux-ide, Ralf Baechle, Dragan Stancevic

On Thu, Dec 24, 2015 at 09:52:52AM -0800, Florian Fainelli wrote:
> Thank you! Tejun, can you take the AHCI driver changes if they look good to you? Thanks!

Yeap, applied 1-4 to libata/for-4.5.

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [v6 0/7] add support SATA for BMIPS_GENERIC
  2015-12-28 15:56     ` Tejun Heo
@ 2016-01-01  2:21       ` Tejun Heo
  2016-01-01  2:34         ` Jaedon Shin
  0 siblings, 1 reply; 18+ messages in thread
From: Tejun Heo @ 2016-01-01  2:21 UTC (permalink / raw)
  To: Florian Fainelli
  Cc: Kishon Vijay Abraham I, Jaedon Shin, Rob Herring, Brian Norris,
	linux-ide, Ralf Baechle, Dragan Stancevic

On Mon, Dec 28, 2015 at 10:56:12AM -0500, Tejun Heo wrote:
> On Thu, Dec 24, 2015 at 09:52:52AM -0800, Florian Fainelli wrote:
> > Thank you! Tejun, can you take the AHCI driver changes if they look good to you? Thanks!
> 
> Yeap, applied 1-4 to libata/for-4.5.

I messed up the order of the patches and applied 2-4 and then 1.  Can
someone please verify that the following branch looks okay?

 git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git for-4.5

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [v6 0/7] add support SATA for BMIPS_GENERIC
  2016-01-01  2:21       ` Tejun Heo
@ 2016-01-01  2:34         ` Jaedon Shin
  0 siblings, 0 replies; 18+ messages in thread
From: Jaedon Shin @ 2016-01-01  2:34 UTC (permalink / raw)
  To: Tejun Heo
  Cc: Florian Fainelli, Kishon Vijay Abraham I, Rob Herring,
	Brian Norris, linux-ide, Ralf Baechle, Dragan Stancevic

Hi Tejun,

> On Jan 1, 2016, at 11:21 AM, Tejun Heo <tj@kernel.org> wrote:
> 
> On Mon, Dec 28, 2015 at 10:56:12AM -0500, Tejun Heo wrote:
>> On Thu, Dec 24, 2015 at 09:52:52AM -0800, Florian Fainelli wrote:
>>> Thank you! Tejun, can you take the AHCI driver changes if they look good to you? Thanks!
>> 
>> Yeap, applied 1-4 to libata/for-4.5.
> 
> I messed up the order of the patches and applied 2-4 and then 1.  Can
> someone please verify that the following branch looks okay?
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git for-4.5
> 

Looks good!

Thanks,
Jaedon

> Thanks.
> 
> -- 
> tejun


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2016-01-01  2:34 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-26  2:56 [v6 0/7] add support SATA for BMIPS_GENERIC Jaedon Shin
2015-11-26  2:56 ` [v6 1/7] ata: ahci_brcmstb: add support for MIPS-based platforms Jaedon Shin
2015-11-26  2:56 ` [v6 2/7] ata: ahci_brcmstb: disable NCQ " Jaedon Shin
2015-11-26  2:56 ` [v6 3/7] ata: ahci_brcmstb: add a quirk " Jaedon Shin
2015-11-26  2:56 ` [v6 4/7] ata: ahci_brcmstb: remove unused definitions Jaedon Shin
2015-11-30 14:58   ` Tejun Heo
2015-11-26  2:56 ` [v6 5/7] phy: phy_brcmstb_sata: remove duplicate definitions Jaedon Shin
2015-11-26  2:56 ` [v6 6/7] phy: phy_brcmstb_sata: add data for phy version Jaedon Shin
2015-11-26 11:05   ` Sergei Shtylyov
2015-12-15 10:46     ` Kishon Vijay Abraham I
2015-12-15 11:23       ` Jaedon Shin
2015-12-17  0:46         ` Florian Fainelli
2015-11-26  2:56 ` [v6 7/7] phy: phy_brcmstb_sata: add support for MIPS-based platforms Jaedon Shin
2015-12-20 12:01 ` [v6 0/7] add support SATA for BMIPS_GENERIC Kishon Vijay Abraham I
2015-12-24 17:52   ` Florian Fainelli
2015-12-28 15:56     ` Tejun Heo
2016-01-01  2:21       ` Tejun Heo
2016-01-01  2:34         ` Jaedon Shin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.