* [PATCH 1/5] dt-bindings: phy: meson-gxl-usb2-phy: add the reset line and clock
[not found] ` <20180128202245.25021-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
@ 2018-01-28 20:22 ` Martin Blumenstingl
[not found] ` <20180128202245.25021-2-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
2018-01-28 20:22 ` [PATCH 2/5] phy: amlogic: phy-meson-gxl-usb2: support the clock and reset line Martin Blumenstingl
` (5 subsequent siblings)
6 siblings, 1 reply; 10+ messages in thread
From: Martin Blumenstingl @ 2018-01-28 20:22 UTC (permalink / raw)
To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
kishon-l0cyMroinI0, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
Cc: carlo-KA+7E9HrN00dnm+yROfE0A, khilman-rdvid1DuHRBWk0Htik3J/w,
narmstrong-rdvid1DuHRBWk0Htik3J/w,
jbrunet-rdvid1DuHRBWk0Htik3J/w, yixun.lan-LpR1jeaWuhtBDgjK7y7TUQ,
Martin Blumenstingl
The OTG capable USB2 PHY has a reset line (which is shared with other
components, such as the USB3 PHY for example) and a clock (which are
both part of different registers). Add the properties
for the reset line and clocks as optional ones since not all PHYs have
them (currently only the OTG capable PHY is known to use these).
Signed-off-by: Martin Blumenstingl <martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
---
Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txt | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txt b/Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txt
index a105494a0fc9..b84a02ebffdf 100644
--- a/Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txt
+++ b/Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txt
@@ -6,6 +6,10 @@ Required properties:
- #phys-cells: must be 0 (see phy-bindings.txt in this directory)
Optional properties:
+- clocks: a phandle to the clock of this PHY
+- clock-names: must be "phy"
+- resets: a phandle to the reset line of this PHY
+- reset-names: must be "phy"
- phy-supply: see phy-bindings.txt in this directory
--
2.16.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/5] phy: amlogic: phy-meson-gxl-usb2: support the clock and reset line
[not found] ` <20180128202245.25021-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
2018-01-28 20:22 ` [PATCH 1/5] dt-bindings: phy: meson-gxl-usb2-phy: add the reset line and clock Martin Blumenstingl
@ 2018-01-28 20:22 ` Martin Blumenstingl
2018-01-28 20:22 ` [PATCH 3/5] phy: amlogic: phy-meson-gxl-usb2: default to host mode Martin Blumenstingl
` (4 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Martin Blumenstingl @ 2018-01-28 20:22 UTC (permalink / raw)
To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
kishon-l0cyMroinI0, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
Cc: carlo-KA+7E9HrN00dnm+yROfE0A, khilman-rdvid1DuHRBWk0Htik3J/w,
narmstrong-rdvid1DuHRBWk0Htik3J/w,
jbrunet-rdvid1DuHRBWk0Htik3J/w, yixun.lan-LpR1jeaWuhtBDgjK7y7TUQ,
Martin Blumenstingl
The Meson GXL USB2 PHYs require an additional clock (USB) which has to
be enabled. If that clock is disabled then all PHY registers read 0x0.
Luckily for us that clock is always enabled (either by harddware
defaults, the bootrom, or any of the bootloaders before u-boot/BL3-3).
The OTG capable USB2 PHY additionally has a reset line (USB_OTG, which
is shared with other components, such as the USB3 PHY for example).
Extend the driver so it handles this clock and the shared reset line.
We only trigger the reset during the .init phase since it's a shared
reset line, so triggering it during the driver's .reset implementation
would effectively also only trigger it once anyways.
Signed-off-by: Martin Blumenstingl <martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
---
drivers/phy/amlogic/phy-meson-gxl-usb2.c | 44 ++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
diff --git a/drivers/phy/amlogic/phy-meson-gxl-usb2.c b/drivers/phy/amlogic/phy-meson-gxl-usb2.c
index e90c4ee25dfe..303b2b46af3c 100644
--- a/drivers/phy/amlogic/phy-meson-gxl-usb2.c
+++ b/drivers/phy/amlogic/phy-meson-gxl-usb2.c
@@ -11,11 +11,13 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+#include <linux/clk.h>
#include <linux/delay.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/of_device.h>
#include <linux/regmap.h>
+#include <linux/reset.h>
#include <linux/phy/phy.h>
#include <linux/platform_device.h>
#include <linux/usb/of.h>
@@ -99,6 +101,8 @@ struct phy_meson_gxl_usb2_priv {
struct regmap *regmap;
enum phy_mode mode;
int is_enabled;
+ struct clk *clk;
+ struct reset_control *reset;
};
static const struct regmap_config phy_meson_gxl_usb2_regmap_conf = {
@@ -108,6 +112,31 @@ static const struct regmap_config phy_meson_gxl_usb2_regmap_conf = {
.max_register = U2P_R3,
};
+static int phy_meson_gxl_usb2_init(struct phy *phy)
+{
+ struct phy_meson_gxl_usb2_priv *priv = phy_get_drvdata(phy);
+ int ret;
+
+ ret = reset_control_reset(priv->reset);
+ if (ret)
+ return ret;
+
+ ret = clk_prepare_enable(priv->clk);
+ if (ret)
+ return ret;
+
+ return 0;
+}
+
+static int phy_meson_gxl_usb2_exit(struct phy *phy)
+{
+ struct phy_meson_gxl_usb2_priv *priv = phy_get_drvdata(phy);
+
+ clk_disable_unprepare(priv->clk);
+
+ return 0;
+}
+
static int phy_meson_gxl_usb2_reset(struct phy *phy)
{
struct phy_meson_gxl_usb2_priv *priv = phy_get_drvdata(phy);
@@ -195,6 +224,8 @@ static int phy_meson_gxl_usb2_power_on(struct phy *phy)
}
static const struct phy_ops phy_meson_gxl_usb2_ops = {
+ .init = phy_meson_gxl_usb2_init,
+ .exit = phy_meson_gxl_usb2_exit,
.power_on = phy_meson_gxl_usb2_power_on,
.power_off = phy_meson_gxl_usb2_power_off,
.set_mode = phy_meson_gxl_usb2_set_mode,
@@ -240,6 +271,19 @@ static int phy_meson_gxl_usb2_probe(struct platform_device *pdev)
if (IS_ERR(priv->regmap))
return PTR_ERR(priv->regmap);
+ priv->clk = devm_clk_get(dev, "phy");
+ if (IS_ERR(priv->clk)) {
+ ret = PTR_ERR(priv->clk);
+ if (ret == -ENOENT)
+ priv->clk = NULL;
+ else
+ return ret;
+ }
+
+ priv->reset = devm_reset_control_get_optional_shared(dev, "phy");
+ if (IS_ERR(priv->reset))
+ return PTR_ERR(priv->reset);
+
phy = devm_phy_create(dev, NULL, &phy_meson_gxl_usb2_ops);
if (IS_ERR(phy)) {
dev_err(dev, "failed to create PHY\n");
--
2.16.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 3/5] phy: amlogic: phy-meson-gxl-usb2: default to host mode
[not found] ` <20180128202245.25021-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
2018-01-28 20:22 ` [PATCH 1/5] dt-bindings: phy: meson-gxl-usb2-phy: add the reset line and clock Martin Blumenstingl
2018-01-28 20:22 ` [PATCH 2/5] phy: amlogic: phy-meson-gxl-usb2: support the clock and reset line Martin Blumenstingl
@ 2018-01-28 20:22 ` Martin Blumenstingl
2018-01-28 20:22 ` [PATCH 4/5] phy: amlogic: phy-meson-gxl-usb2: don't log an error on -EPROBE_DEFER Martin Blumenstingl
` (3 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Martin Blumenstingl @ 2018-01-28 20:22 UTC (permalink / raw)
To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
kishon-l0cyMroinI0, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
Cc: carlo-KA+7E9HrN00dnm+yROfE0A, khilman-rdvid1DuHRBWk0Htik3J/w,
narmstrong-rdvid1DuHRBWk0Htik3J/w,
jbrunet-rdvid1DuHRBWk0Htik3J/w, yixun.lan-LpR1jeaWuhtBDgjK7y7TUQ,
Martin Blumenstingl
The USB2 PHY can switch between PHY_MODE_USB_HOST and
PHY_MODE_USB_DEVICE. However, it cannot do it on it's own since it
requires re-routing of the corresponding USB pins from dwc3 (which is
used for host-mode) to dwc2 (which is used for device-mode).
Thus we don't need to auto-detect the mode based on the USB controller,
which simplifies the driver code.
Signed-off-by: Martin Blumenstingl <martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
---
drivers/phy/amlogic/Kconfig | 1 -
drivers/phy/amlogic/phy-meson-gxl-usb2.c | 15 ++-------------
2 files changed, 2 insertions(+), 14 deletions(-)
diff --git a/drivers/phy/amlogic/Kconfig b/drivers/phy/amlogic/Kconfig
index 2f690d24203a..23fe1cda2f70 100644
--- a/drivers/phy/amlogic/Kconfig
+++ b/drivers/phy/amlogic/Kconfig
@@ -18,7 +18,6 @@ config PHY_MESON_GXL_USB2
default ARCH_MESON
depends on OF && (ARCH_MESON || COMPILE_TEST)
depends on USB_SUPPORT
- select USB_COMMON
select GENERIC_PHY
select REGMAP_MMIO
help
diff --git a/drivers/phy/amlogic/phy-meson-gxl-usb2.c b/drivers/phy/amlogic/phy-meson-gxl-usb2.c
index 303b2b46af3c..ee3c2c0c8572 100644
--- a/drivers/phy/amlogic/phy-meson-gxl-usb2.c
+++ b/drivers/phy/amlogic/phy-meson-gxl-usb2.c
@@ -20,7 +20,6 @@
#include <linux/reset.h>
#include <linux/phy/phy.h>
#include <linux/platform_device.h>
-#include <linux/usb/of.h>
/* bits [31:27] are read-only */
#define U2P_R0 0x0
@@ -253,18 +252,8 @@ static int phy_meson_gxl_usb2_probe(struct platform_device *pdev)
if (IS_ERR(base))
return PTR_ERR(base);
- switch (of_usb_get_dr_mode_by_phy(dev->of_node, -1)) {
- case USB_DR_MODE_PERIPHERAL:
- priv->mode = PHY_MODE_USB_DEVICE;
- break;
- case USB_DR_MODE_OTG:
- priv->mode = PHY_MODE_USB_OTG;
- break;
- case USB_DR_MODE_HOST:
- default:
- priv->mode = PHY_MODE_USB_HOST;
- break;
- }
+ /* start in host mode */
+ priv->mode = PHY_MODE_USB_HOST;
priv->regmap = devm_regmap_init_mmio(dev, base,
&phy_meson_gxl_usb2_regmap_conf);
--
2.16.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 4/5] phy: amlogic: phy-meson-gxl-usb2: don't log an error on -EPROBE_DEFER
[not found] ` <20180128202245.25021-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
` (2 preceding siblings ...)
2018-01-28 20:22 ` [PATCH 3/5] phy: amlogic: phy-meson-gxl-usb2: default to host mode Martin Blumenstingl
@ 2018-01-28 20:22 ` Martin Blumenstingl
2018-01-28 20:22 ` [PATCH 5/5] phy: amlogic: phy-meson-gxl-usb2: rename some of the U2P_R2 registers Martin Blumenstingl
` (2 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Martin Blumenstingl @ 2018-01-28 20:22 UTC (permalink / raw)
To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
kishon-l0cyMroinI0, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
Cc: carlo-KA+7E9HrN00dnm+yROfE0A, khilman-rdvid1DuHRBWk0Htik3J/w,
narmstrong-rdvid1DuHRBWk0Htik3J/w,
jbrunet-rdvid1DuHRBWk0Htik3J/w, yixun.lan-LpR1jeaWuhtBDgjK7y7TUQ,
Martin Blumenstingl
devm_phy_create can return -EPROBE_DEFER if the phy-supply is not ready
yet. Silence this warning as the driver framework will re-attempt
registering the PHY - this second try works without any errors. So only
log actual errors to keep the kernel log free of misleading error
messages.
Signed-off-by: Martin Blumenstingl <martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
---
drivers/phy/amlogic/phy-meson-gxl-usb2.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/phy/amlogic/phy-meson-gxl-usb2.c b/drivers/phy/amlogic/phy-meson-gxl-usb2.c
index ee3c2c0c8572..f062fc7f0a3a 100644
--- a/drivers/phy/amlogic/phy-meson-gxl-usb2.c
+++ b/drivers/phy/amlogic/phy-meson-gxl-usb2.c
@@ -240,6 +240,7 @@ static int phy_meson_gxl_usb2_probe(struct platform_device *pdev)
struct phy_meson_gxl_usb2_priv *priv;
struct phy *phy;
void __iomem *base;
+ int ret;
priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
if (!priv)
@@ -275,8 +276,11 @@ static int phy_meson_gxl_usb2_probe(struct platform_device *pdev)
phy = devm_phy_create(dev, NULL, &phy_meson_gxl_usb2_ops);
if (IS_ERR(phy)) {
- dev_err(dev, "failed to create PHY\n");
- return PTR_ERR(phy);
+ ret = PTR_ERR(phy);
+ if (ret != -EPROBE_DEFER)
+ dev_err(dev, "failed to create PHY\n");
+
+ return ret;
}
phy_set_drvdata(phy, priv);
--
2.16.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 5/5] phy: amlogic: phy-meson-gxl-usb2: rename some of the U2P_R2 registers
[not found] ` <20180128202245.25021-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
` (3 preceding siblings ...)
2018-01-28 20:22 ` [PATCH 4/5] phy: amlogic: phy-meson-gxl-usb2: don't log an error on -EPROBE_DEFER Martin Blumenstingl
@ 2018-01-28 20:22 ` Martin Blumenstingl
2018-02-09 8:27 ` [PATCH 0/5] improvements and fixes for the phy-meson-gxl-usb2 driver Yixun Lan
2018-02-16 12:21 ` Kishon Vijay Abraham I
6 siblings, 0 replies; 10+ messages in thread
From: Martin Blumenstingl @ 2018-01-28 20:22 UTC (permalink / raw)
To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
kishon-l0cyMroinI0, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
Cc: carlo-KA+7E9HrN00dnm+yROfE0A, khilman-rdvid1DuHRBWk0Htik3J/w,
narmstrong-rdvid1DuHRBWk0Htik3J/w,
jbrunet-rdvid1DuHRBWk0Htik3J/w, yixun.lan-LpR1jeaWuhtBDgjK7y7TUQ,
Martin Blumenstingl
The U2P_R2 register provides "test mode" functionality for bits 17:0.
These are only used during SoC development and should be left untouched
on production SoC versions.
Rename these register definitions to indicate that these are for "test
mode" only.
While here, also merge the definitions for U2P_R2_DATA_IN_MASK and
U2P_R2_DATA_IN_EN_MASK (bits 0:7) because Amlogic's internal
documentation suggests that these bits belong together. The old
definition was not taken from the documentation but rather from a struct
definition in the Amlogic GPL kernel sources.
No functional changes.
Suggested-by: Yixun Lan <yixun.lan-LpR1jeaWuhtBDgjK7y7TUQ@public.gmane.org>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
---
drivers/phy/amlogic/phy-meson-gxl-usb2.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/drivers/phy/amlogic/phy-meson-gxl-usb2.c b/drivers/phy/amlogic/phy-meson-gxl-usb2.c
index f062fc7f0a3a..9f9b5414b97a 100644
--- a/drivers/phy/amlogic/phy-meson-gxl-usb2.c
+++ b/drivers/phy/amlogic/phy-meson-gxl-usb2.c
@@ -71,12 +71,11 @@
/* bits [31:14] are read-only */
#define U2P_R2 0x8
- #define U2P_R2_DATA_IN_MASK GENMASK(3, 0)
- #define U2P_R2_DATA_IN_EN_MASK GENMASK(7, 4)
- #define U2P_R2_ADDR_MASK GENMASK(11, 8)
- #define U2P_R2_DATA_OUT_SEL BIT(12)
- #define U2P_R2_CLK BIT(13)
- #define U2P_R2_DATA_OUT_MASK GENMASK(17, 14)
+ #define U2P_R2_TESTDATA_IN_MASK GENMASK(7, 0)
+ #define U2P_R2_TESTADDR_MASK GENMASK(11, 8)
+ #define U2P_R2_TESTDATA_OUT_SEL BIT(12)
+ #define U2P_R2_TESTCLK BIT(13)
+ #define U2P_R2_TESTDATA_OUT_MASK GENMASK(17, 14)
#define U2P_R2_ACA_PIN_RANGE_C BIT(18)
#define U2P_R2_ACA_PIN_RANGE_B BIT(19)
#define U2P_R2_ACA_PIN_RANGE_A BIT(20)
--
2.16.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 0/5] improvements and fixes for the phy-meson-gxl-usb2 driver
[not found] ` <20180128202245.25021-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
` (4 preceding siblings ...)
2018-01-28 20:22 ` [PATCH 5/5] phy: amlogic: phy-meson-gxl-usb2: rename some of the U2P_R2 registers Martin Blumenstingl
@ 2018-02-09 8:27 ` Yixun Lan
[not found] ` <9b5295ea-74a2-7bb1-744e-6e8eb76f2673-LpR1jeaWuhtBDgjK7y7TUQ@public.gmane.org>
2018-02-16 12:21 ` Kishon Vijay Abraham I
6 siblings, 1 reply; 10+ messages in thread
From: Yixun Lan @ 2018-02-09 8:27 UTC (permalink / raw)
To: Martin Blumenstingl, robh+dt-DgEjT+Ai2ygdnm+yROfE0A,
mark.rutland-5wv7dgnIgG8, kishon-l0cyMroinI0,
devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
Cc: yixun.lan-LpR1jeaWuhtBDgjK7y7TUQ, carlo-KA+7E9HrN00dnm+yROfE0A,
khilman-rdvid1DuHRBWk0Htik3J/w,
narmstrong-rdvid1DuHRBWk0Htik3J/w,
jbrunet-rdvid1DuHRBWk0Htik3J/w
On 01/29/18 04:22, Martin Blumenstingl wrote:
> This contains two fixes and two (minor) fixes for the phy-meson-gxl-usb2
> driver:
> - a clock and reset line is used for the PHYs. this was not clear from
> the Amlogic GPL kernel sources since the clock is enabled very early
> in the boot process (either because the hardware defaults to "on",
> the bootrom enables it or a bootloader before BL3-3/u-boot enables it)
> - we don't read the controller's dr_mode anymore because the USB2 PHY
> can only be switched into host mode if the USB3 PHY knows about it.
> Thus auto-detecting the mode doesn't work for this PHY so it's removed
> in patch #3
> - do not log an error message when the phy-supply is not ready yet and
> we have to return -EPROBE_DEFER
> - improve the naming of some U2P_R2 test mode registers
>
>
> Martin Blumenstingl (5):
> dt-bindings: phy: meson-gxl-usb2-phy: add the reset line and clock
> phy: amlogic: phy-meson-gxl-usb2: support the clock and reset line
> phy: amlogic: phy-meson-gxl-usb2: default to host mode
> phy: amlogic: phy-meson-gxl-usb2: don't log an error on -EPROBE_DEFER
> phy: amlogic: phy-meson-gxl-usb2: rename some of the U2P_R2 registers
>
> .../devicetree/bindings/phy/meson-gxl-usb2-phy.txt | 4 ++
> drivers/phy/amlogic/Kconfig | 1 -
> drivers/phy/amlogic/phy-meson-gxl-usb2.c | 78 ++++++++++++++++------
> 3 files changed, 61 insertions(+), 22 deletions(-)
>
Hi Martin
thanks for your great work for pushing the USB driver upstream.
I've test your whole series[1] on AXG S400 board and it works fine here.
Yixun
[1] the whole patch series include
[RFC usb-next v8 0/3] initialize (multiple) PHYs for a HCD
https://lkml.kernel.org/r/20180125000053.9387-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org
[PATCH 0/3] DWC3 support for Amlogic Meson AXG and GXL SoCs
https://lkml.kernel.org/r/20180128200333.20093-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org
[PATCH v2 0/2] Meson GXL USB3 PHY driver
https://lkml.kernel.org/r/20180128201554.23889-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org
[PATCH 1/5] dt-bindings: phy: meson-gxl-usb2-phy: add the reset line and
clock
https://lkml.kernel.org/r/20180128202245.25021-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/5] improvements and fixes for the phy-meson-gxl-usb2 driver
[not found] ` <20180128202245.25021-1-martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
` (5 preceding siblings ...)
2018-02-09 8:27 ` [PATCH 0/5] improvements and fixes for the phy-meson-gxl-usb2 driver Yixun Lan
@ 2018-02-16 12:21 ` Kishon Vijay Abraham I
6 siblings, 0 replies; 10+ messages in thread
From: Kishon Vijay Abraham I @ 2018-02-16 12:21 UTC (permalink / raw)
To: Martin Blumenstingl, robh+dt-DgEjT+Ai2ygdnm+yROfE0A,
mark.rutland-5wv7dgnIgG8, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
Cc: carlo-KA+7E9HrN00dnm+yROfE0A, khilman-rdvid1DuHRBWk0Htik3J/w,
narmstrong-rdvid1DuHRBWk0Htik3J/w,
jbrunet-rdvid1DuHRBWk0Htik3J/w, yixun.lan-LpR1jeaWuhtBDgjK7y7TUQ
On Monday 29 January 2018 01:52 AM, Martin Blumenstingl wrote:
> This contains two fixes and two (minor) fixes for the phy-meson-gxl-usb2
> driver:
> - a clock and reset line is used for the PHYs. this was not clear from
> the Amlogic GPL kernel sources since the clock is enabled very early
> in the boot process (either because the hardware defaults to "on",
> the bootrom enables it or a bootloader before BL3-3/u-boot enables it)
> - we don't read the controller's dr_mode anymore because the USB2 PHY
> can only be switched into host mode if the USB3 PHY knows about it.
> Thus auto-detecting the mode doesn't work for this PHY so it's removed
> in patch #3
> - do not log an error message when the phy-supply is not ready yet and
> we have to return -EPROBE_DEFER
> - improve the naming of some U2P_R2 test mode registers
merged, thanks!
-Kishon
>
>
> Martin Blumenstingl (5):
> dt-bindings: phy: meson-gxl-usb2-phy: add the reset line and clock
> phy: amlogic: phy-meson-gxl-usb2: support the clock and reset line
> phy: amlogic: phy-meson-gxl-usb2: default to host mode
> phy: amlogic: phy-meson-gxl-usb2: don't log an error on -EPROBE_DEFER
> phy: amlogic: phy-meson-gxl-usb2: rename some of the U2P_R2 registers
>
> .../devicetree/bindings/phy/meson-gxl-usb2-phy.txt | 4 ++
> drivers/phy/amlogic/Kconfig | 1 -
> drivers/phy/amlogic/phy-meson-gxl-usb2.c | 78 ++++++++++++++++------
> 3 files changed, 61 insertions(+), 22 deletions(-)
>
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 10+ messages in thread