All of lore.kernel.org
 help / color / mirror / Atom feed
From: plaes@plaes.org (Priit Laes)
To: linux-arm-kernel@lists.infradead.org
Subject: [linux-sunxi] [PATCH 2/5] phy-sun4i-usb: Add support for the host usb-phys found on the H3 SoC
Date: Fri, 20 Nov 2015 21:49:11 +0200	[thread overview]
Message-ID: <1448048951.1560.5.camel@plaes.org> (raw)
In-Reply-To: <1447616777-24660-2-git-send-email-hdegoede@redhat.com>

On Sun, 2015-11-15 at 20:46 +0100, Hans de Goede wrote:
> From: Reinder de Haan <patchesrdh@mveas.com>
> 
> Note this commit only adds support for phys 1-3, phy 0, the otg phy,
> is
> not yet (fully) supported after this commit.


This patch seems to be causing following compile warning:

In file included from include/linux/io.h:25:0,
?????????????????from drivers/phy/phy-sun4i-usb.c:28:
drivers/phy/phy-sun4i-usb.c: In function 'sun4i_usb_phy_write': ./arch/arm/include/asm/io.h:94:2: warning: 'phyctl' may be used uninitialized in this function [-Wmaybe-uni
nitialized]
? asm volatile("strb %1, %0"
? ^
drivers/phy/phy-sun4i-usb.c:172:8: note: 'phyctl' was declared here
? void *phyctl;

> 
> Signed-off-by: Reinder de Haan <patchesrdh@mveas.com>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
> ?.../devicetree/bindings/phy/sun4i-usb-phy.txt??????|??1 +
> ?drivers/phy/phy-sun4i-usb.c????????????????????????| 67
> +++++++++++++++++-----
> ?2 files changed, 53 insertions(+), 15 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/phy/sun4i-usb-phy.txt
> b/Documentation/devicetree/bindings/phy/sun4i-usb-phy.txt
> index 0cebf74..95736d7 100644
> --- a/Documentation/devicetree/bindings/phy/sun4i-usb-phy.txt
> +++ b/Documentation/devicetree/bindings/phy/sun4i-usb-phy.txt
> @@ -9,6 +9,7 @@ Required properties:
> ???* allwinner,sun7i-a20-usb-phy
> ???* allwinner,sun8i-a23-usb-phy
> ???* allwinner,sun8i-a33-usb-phy
> +??* allwinner,sun8i-h3-usb-phy
> ?- reg : a list of offset + length pairs
> ?- reg-names :
> ???* "phy_ctrl"
> diff --git a/drivers/phy/phy-sun4i-usb.c b/drivers/phy/phy-sun4i-
> usb.c
> index b12964b..17f97ab 100644
> --- a/drivers/phy/phy-sun4i-usb.c
> +++ b/drivers/phy/phy-sun4i-usb.c
> @@ -46,6 +46,9 @@
> ?#define REG_PHYBIST			0x08
> ?#define REG_PHYTUNE			0x0c
> ?#define REG_PHYCTL_A33			0x10
> +#define REG_PHY_UNK_H3			0x20
> +
> +#define REG_PMU_UNK_H3			0x10
> ?
> ?#define PHYCTL_DATA			BIT(7)
> ?
> @@ -79,7 +82,7 @@
> ?#define PHY_DISCON_TH_SEL		0x2a
> ?#define PHY_SQUELCH_DETECT		0x3c
> ?
> -#define MAX_PHYS			3
> +#define MAX_PHYS			4
> ?
> ?/*
> ? * Note do not raise the debounce time, we must report Vusb high
> within 100ms
> @@ -88,12 +91,19 @@
> ?#define DEBOUNCE_TIME			msecs_to_jiffies(50)
> ?#define POLL_TIME			msecs_to_jiffies(250)
> ?
> +enum sun4i_usb_phy_type {
> +	sun4i_a10_phy,
> +	sun8i_a33_phy,
> +	sun8i_h3_phy
> +};
> +
> ?struct sun4i_usb_phy_data {
> +	struct device *dev;
> ?	void __iomem *base;
> ?	struct mutex mutex;
> ?	int num_phys;
> ?	u32 disc_thresh;
> -	bool has_a33_phyctl;
> +	enum sun4i_usb_phy_type type;
> ?	struct sun4i_usb_phy {
> ?		struct phy *phy;
> ?		void __iomem *pmu;
> @@ -164,12 +174,18 @@ static void sun4i_usb_phy_write(struct
> sun4i_usb_phy *phy, u32 addr, u32 data,
> ?
> ?	mutex_lock(&phy_data->mutex);
> ?
> -	if (phy_data->has_a33_phyctl) {
> +	switch (phy_data->type) {
> +	case sun4i_a10_phy:
> +		phyctl = phy_data->base + REG_PHYCTL_A10;
> +		break;
> +	case sun8i_a33_phy:
> ?		phyctl = phy_data->base + REG_PHYCTL_A33;
> ?		/* A33 needs us to set phyctl to 0 explicitly */
> ?		writel(0, phyctl);
> -	} else {
> -		phyctl = phy_data->base + REG_PHYCTL_A10;
> +		break;
> +	case sun8i_h3_phy:
> +		dev_err(phy_data->dev, "H3 usb_phy_write is not
> supported\n");
> +		break;
> ?	}
> ?
> ?	for (i = 0; i < len; i++) {
> @@ -230,6 +246,7 @@ static int sun4i_usb_phy_init(struct phy *_phy)
> ?	struct sun4i_usb_phy *phy = phy_get_drvdata(_phy);
> ?	struct sun4i_usb_phy_data *data =
> to_sun4i_usb_phy_data(phy);
> ?	int ret;
> +	u32 val;
> ?
> ?	ret = clk_prepare_enable(phy->clk);
> ?	if (ret)
> @@ -241,15 +258,26 @@ static int sun4i_usb_phy_init(struct phy *_phy)
> ?		return ret;
> ?	}
> ?
> -	/* Enable USB 45 Ohm resistor calibration */
> -	if (phy->index == 0)
> -		sun4i_usb_phy_write(phy, PHY_RES45_CAL_EN, 0x01, 1);
> +	if (data->type == sun8i_h3_phy) {
> +		if (phy->index == 0) {
> +			val = readl(data->base + REG_PHY_UNK_H3);
> +			writel(val & ~1, data->base +
> REG_PHY_UNK_H3);
> +		}
> +
> +		val = readl(phy->pmu + REG_PMU_UNK_H3);
> +		writel(val & ~2, phy->pmu + REG_PMU_UNK_H3);
> +	} else {
> +		/* Enable USB 45 Ohm resistor calibration */
> +		if (phy->index == 0)
> +			sun4i_usb_phy_write(phy, PHY_RES45_CAL_EN,
> 0x01, 1);
> ?
> -	/* Adjust PHY's magnitude and rate */
> -	sun4i_usb_phy_write(phy, PHY_TX_AMPLITUDE_TUNE, 0x14, 5);
> +		/* Adjust PHY's magnitude and rate */
> +		sun4i_usb_phy_write(phy, PHY_TX_AMPLITUDE_TUNE,
> 0x14, 5);
> ?
> -	/* Disconnect threshold adjustment */
> -	sun4i_usb_phy_write(phy, PHY_DISCON_TH_SEL, data-
> >disc_thresh, 2);
> +		/* Disconnect threshold adjustment */
> +		sun4i_usb_phy_write(phy, PHY_DISCON_TH_SEL,
> +				????data->disc_thresh, 2);
> +	}
> ?
> ?	sun4i_usb_phy_passby(phy, 1);
> ?
> @@ -522,11 +550,14 @@ static int sun4i_usb_phy_probe(struct
> platform_device *pdev)
> ?	mutex_init(&data->mutex);
> ?	INIT_DELAYED_WORK(&data->detect,
> sun4i_usb_phy0_id_vbus_det_scan);
> ?	dev_set_drvdata(dev, data);
> +	data->dev = dev;
> ?
> ?	if (of_device_is_compatible(np, "allwinner,sun5i-a13-usb-
> phy") ||
> ?	????of_device_is_compatible(np, "allwinner,sun8i-a23-usb-
> phy") ||
> ?	????of_device_is_compatible(np, "allwinner,sun8i-a33-usb-
> phy"))
> ?		data->num_phys = 2;
> +	else if (of_device_is_compatible(np, "allwinner,sun8i-h3-
> usb-phy"))
> +		data->num_phys = 4;
> ?	else
> ?		data->num_phys = 3;
> ?
> @@ -538,13 +569,18 @@ static int sun4i_usb_phy_probe(struct
> platform_device *pdev)
> ?
> ?	if (of_device_is_compatible(np, "allwinner,sun6i-a31-usb-
> phy") ||
> ?	????of_device_is_compatible(np, "allwinner,sun8i-a23-usb-
> phy") ||
> -	????of_device_is_compatible(np, "allwinner,sun8i-a33-usb-
> phy"))
> +	????of_device_is_compatible(np, "allwinner,sun8i-a33-usb-
> phy") ||
> +	????of_device_is_compatible(np, "allwinner,sun8i-h3-usb-
> phy"))
> ?		dedicated_clocks = true;
> ?	else
> ?		dedicated_clocks = false;
> ?
> ?	if (of_device_is_compatible(np, "allwinner,sun8i-a33-usb-
> phy"))
> -		data->has_a33_phyctl = true;
> +		data->type = sun8i_a33_phy;
> +	else if (of_device_is_compatible(np, "allwinner,sun8i-h3-
> usb-phy"))
> +		data->type = sun8i_h3_phy;
> +	else
> +		data->type = sun4i_a10_phy;
> ?
> ?	res = platform_get_resource_byname(pdev, IORESOURCE_MEM,
> "phy_ctrl");
> ?	data->base = devm_ioremap_resource(dev, res);
> @@ -620,7 +656,7 @@ static int sun4i_usb_phy_probe(struct
> platform_device *pdev)
> ?			return PTR_ERR(phy->reset);
> ?		}
> ?
> -		if (i) { /* No pmu for usbc0 */
> +		if (data->type == sun8i_h3_phy || i != 0) {
> ?			snprintf(name, sizeof(name), "pmu%d", i);
> ?			res = platform_get_resource_byname(pdev,
> ?							IORESOURCE_M
> EM, name);
> @@ -696,6 +732,7 @@ static const struct of_device_id
> sun4i_usb_phy_of_match[] = {
> ?	{ .compatible = "allwinner,sun7i-a20-usb-phy" },
> ?	{ .compatible = "allwinner,sun8i-a23-usb-phy" },
> ?	{ .compatible = "allwinner,sun8i-a33-usb-phy" },
> +	{ .compatible = "allwinner,sun8i-h3-usb-phy" },
> ?	{ },
> ?};
> ?MODULE_DEVICE_TABLE(of, sun4i_usb_phy_of_match);
> -- 
> 2.5.0
> 

WARNING: multiple messages have this Message-ID (diff)
From: Priit Laes <plaes-q/aMd4JkU83YtjvyW6yDsg@public.gmane.org>
To: hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	Kishon Vijay Abraham I <kishon-l0cyMroinI0@public.gmane.org>,
	Greg Kroah-Hartman
	<gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>,
	Mike Turquette
	<mturquette-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Cc: Alan Stern
	<stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org>,
	Tony Prisk <linux-ci5G2KO2hbZ+pU9mqzGVBQ@public.gmane.org>,
	Reinder de Haan
	<patchesrdh-I1/eAgTnXDYAvxtiuMwx3w@public.gmane.org>,
	linux-usb <linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Maxime Ripard
	<maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	devicetree <devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [PATCH 2/5] phy-sun4i-usb: Add support for the host usb-phys found on the H3 SoC
Date: Fri, 20 Nov 2015 21:49:11 +0200	[thread overview]
Message-ID: <1448048951.1560.5.camel@plaes.org> (raw)
In-Reply-To: <1447616777-24660-2-git-send-email-hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>

On Sun, 2015-11-15 at 20:46 +0100, Hans de Goede wrote:
> From: Reinder de Haan <patchesrdh-I1/eAgTnXDYAvxtiuMwx3w@public.gmane.org>
> 
> Note this commit only adds support for phys 1-3, phy 0, the otg phy,
> is
> not yet (fully) supported after this commit.


This patch seems to be causing following compile warning:

In file included from include/linux/io.h:25:0,
                 from drivers/phy/phy-sun4i-usb.c:28:
drivers/phy/phy-sun4i-usb.c: In function 'sun4i_usb_phy_write': ./arch/arm/include/asm/io.h:94:2: warning: 'phyctl' may be used uninitialized in this function [-Wmaybe-uni
nitialized]
  asm volatile("strb %1, %0"
  ^
drivers/phy/phy-sun4i-usb.c:172:8: note: 'phyctl' was declared here
  void *phyctl;

> 
> Signed-off-by: Reinder de Haan <patchesrdh-I1/eAgTnXDYAvxtiuMwx3w@public.gmane.org>
> Signed-off-by: Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> ---
>  .../devicetree/bindings/phy/sun4i-usb-phy.txt      |  1 +
>  drivers/phy/phy-sun4i-usb.c                        | 67
> +++++++++++++++++-----
>  2 files changed, 53 insertions(+), 15 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/phy/sun4i-usb-phy.txt
> b/Documentation/devicetree/bindings/phy/sun4i-usb-phy.txt
> index 0cebf74..95736d7 100644
> --- a/Documentation/devicetree/bindings/phy/sun4i-usb-phy.txt
> +++ b/Documentation/devicetree/bindings/phy/sun4i-usb-phy.txt
> @@ -9,6 +9,7 @@ Required properties:
>    * allwinner,sun7i-a20-usb-phy
>    * allwinner,sun8i-a23-usb-phy
>    * allwinner,sun8i-a33-usb-phy
> +  * allwinner,sun8i-h3-usb-phy
>  - reg : a list of offset + length pairs
>  - reg-names :
>    * "phy_ctrl"
> diff --git a/drivers/phy/phy-sun4i-usb.c b/drivers/phy/phy-sun4i-
> usb.c
> index b12964b..17f97ab 100644
> --- a/drivers/phy/phy-sun4i-usb.c
> +++ b/drivers/phy/phy-sun4i-usb.c
> @@ -46,6 +46,9 @@
>  #define REG_PHYBIST			0x08
>  #define REG_PHYTUNE			0x0c
>  #define REG_PHYCTL_A33			0x10
> +#define REG_PHY_UNK_H3			0x20
> +
> +#define REG_PMU_UNK_H3			0x10
>  
>  #define PHYCTL_DATA			BIT(7)
>  
> @@ -79,7 +82,7 @@
>  #define PHY_DISCON_TH_SEL		0x2a
>  #define PHY_SQUELCH_DETECT		0x3c
>  
> -#define MAX_PHYS			3
> +#define MAX_PHYS			4
>  
>  /*
>   * Note do not raise the debounce time, we must report Vusb high
> within 100ms
> @@ -88,12 +91,19 @@
>  #define DEBOUNCE_TIME			msecs_to_jiffies(50)
>  #define POLL_TIME			msecs_to_jiffies(250)
>  
> +enum sun4i_usb_phy_type {
> +	sun4i_a10_phy,
> +	sun8i_a33_phy,
> +	sun8i_h3_phy
> +};
> +
>  struct sun4i_usb_phy_data {
> +	struct device *dev;
>  	void __iomem *base;
>  	struct mutex mutex;
>  	int num_phys;
>  	u32 disc_thresh;
> -	bool has_a33_phyctl;
> +	enum sun4i_usb_phy_type type;
>  	struct sun4i_usb_phy {
>  		struct phy *phy;
>  		void __iomem *pmu;
> @@ -164,12 +174,18 @@ static void sun4i_usb_phy_write(struct
> sun4i_usb_phy *phy, u32 addr, u32 data,
>  
>  	mutex_lock(&phy_data->mutex);
>  
> -	if (phy_data->has_a33_phyctl) {
> +	switch (phy_data->type) {
> +	case sun4i_a10_phy:
> +		phyctl = phy_data->base + REG_PHYCTL_A10;
> +		break;
> +	case sun8i_a33_phy:
>  		phyctl = phy_data->base + REG_PHYCTL_A33;
>  		/* A33 needs us to set phyctl to 0 explicitly */
>  		writel(0, phyctl);
> -	} else {
> -		phyctl = phy_data->base + REG_PHYCTL_A10;
> +		break;
> +	case sun8i_h3_phy:
> +		dev_err(phy_data->dev, "H3 usb_phy_write is not
> supported\n");
> +		break;
>  	}
>  
>  	for (i = 0; i < len; i++) {
> @@ -230,6 +246,7 @@ static int sun4i_usb_phy_init(struct phy *_phy)
>  	struct sun4i_usb_phy *phy = phy_get_drvdata(_phy);
>  	struct sun4i_usb_phy_data *data =
> to_sun4i_usb_phy_data(phy);
>  	int ret;
> +	u32 val;
>  
>  	ret = clk_prepare_enable(phy->clk);
>  	if (ret)
> @@ -241,15 +258,26 @@ static int sun4i_usb_phy_init(struct phy *_phy)
>  		return ret;
>  	}
>  
> -	/* Enable USB 45 Ohm resistor calibration */
> -	if (phy->index == 0)
> -		sun4i_usb_phy_write(phy, PHY_RES45_CAL_EN, 0x01, 1);
> +	if (data->type == sun8i_h3_phy) {
> +		if (phy->index == 0) {
> +			val = readl(data->base + REG_PHY_UNK_H3);
> +			writel(val & ~1, data->base +
> REG_PHY_UNK_H3);
> +		}
> +
> +		val = readl(phy->pmu + REG_PMU_UNK_H3);
> +		writel(val & ~2, phy->pmu + REG_PMU_UNK_H3);
> +	} else {
> +		/* Enable USB 45 Ohm resistor calibration */
> +		if (phy->index == 0)
> +			sun4i_usb_phy_write(phy, PHY_RES45_CAL_EN,
> 0x01, 1);
>  
> -	/* Adjust PHY's magnitude and rate */
> -	sun4i_usb_phy_write(phy, PHY_TX_AMPLITUDE_TUNE, 0x14, 5);
> +		/* Adjust PHY's magnitude and rate */
> +		sun4i_usb_phy_write(phy, PHY_TX_AMPLITUDE_TUNE,
> 0x14, 5);
>  
> -	/* Disconnect threshold adjustment */
> -	sun4i_usb_phy_write(phy, PHY_DISCON_TH_SEL, data-
> >disc_thresh, 2);
> +		/* Disconnect threshold adjustment */
> +		sun4i_usb_phy_write(phy, PHY_DISCON_TH_SEL,
> +				    data->disc_thresh, 2);
> +	}
>  
>  	sun4i_usb_phy_passby(phy, 1);
>  
> @@ -522,11 +550,14 @@ static int sun4i_usb_phy_probe(struct
> platform_device *pdev)
>  	mutex_init(&data->mutex);
>  	INIT_DELAYED_WORK(&data->detect,
> sun4i_usb_phy0_id_vbus_det_scan);
>  	dev_set_drvdata(dev, data);
> +	data->dev = dev;
>  
>  	if (of_device_is_compatible(np, "allwinner,sun5i-a13-usb-
> phy") ||
>  	    of_device_is_compatible(np, "allwinner,sun8i-a23-usb-
> phy") ||
>  	    of_device_is_compatible(np, "allwinner,sun8i-a33-usb-
> phy"))
>  		data->num_phys = 2;
> +	else if (of_device_is_compatible(np, "allwinner,sun8i-h3-
> usb-phy"))
> +		data->num_phys = 4;
>  	else
>  		data->num_phys = 3;
>  
> @@ -538,13 +569,18 @@ static int sun4i_usb_phy_probe(struct
> platform_device *pdev)
>  
>  	if (of_device_is_compatible(np, "allwinner,sun6i-a31-usb-
> phy") ||
>  	    of_device_is_compatible(np, "allwinner,sun8i-a23-usb-
> phy") ||
> -	    of_device_is_compatible(np, "allwinner,sun8i-a33-usb-
> phy"))
> +	    of_device_is_compatible(np, "allwinner,sun8i-a33-usb-
> phy") ||
> +	    of_device_is_compatible(np, "allwinner,sun8i-h3-usb-
> phy"))
>  		dedicated_clocks = true;
>  	else
>  		dedicated_clocks = false;
>  
>  	if (of_device_is_compatible(np, "allwinner,sun8i-a33-usb-
> phy"))
> -		data->has_a33_phyctl = true;
> +		data->type = sun8i_a33_phy;
> +	else if (of_device_is_compatible(np, "allwinner,sun8i-h3-
> usb-phy"))
> +		data->type = sun8i_h3_phy;
> +	else
> +		data->type = sun4i_a10_phy;
>  
>  	res = platform_get_resource_byname(pdev, IORESOURCE_MEM,
> "phy_ctrl");
>  	data->base = devm_ioremap_resource(dev, res);
> @@ -620,7 +656,7 @@ static int sun4i_usb_phy_probe(struct
> platform_device *pdev)
>  			return PTR_ERR(phy->reset);
>  		}
>  
> -		if (i) { /* No pmu for usbc0 */
> +		if (data->type == sun8i_h3_phy || i != 0) {
>  			snprintf(name, sizeof(name), "pmu%d", i);
>  			res = platform_get_resource_byname(pdev,
>  							IORESOURCE_M
> EM, name);
> @@ -696,6 +732,7 @@ static const struct of_device_id
> sun4i_usb_phy_of_match[] = {
>  	{ .compatible = "allwinner,sun7i-a20-usb-phy" },
>  	{ .compatible = "allwinner,sun8i-a23-usb-phy" },
>  	{ .compatible = "allwinner,sun8i-a33-usb-phy" },
> +	{ .compatible = "allwinner,sun8i-h3-usb-phy" },
>  	{ },
>  };
>  MODULE_DEVICE_TABLE(of, sun4i_usb_phy_of_match);
> -- 
> 2.5.0
> 

-- 
You received this message because you are subscribed to the Google Groups "linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
For more options, visit https://groups.google.com/d/optout.

  parent reply	other threads:[~2015-11-20 19:49 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-15 19:46 [PATCH 1/5] clk: sunxi: Add support for the H3 usb phy clocks Hans de Goede
2015-11-15 19:46 ` Hans de Goede
2015-11-15 19:46 ` [PATCH 2/5] phy-sun4i-usb: Add support for the host usb-phys found on the H3 SoC Hans de Goede
2015-11-15 19:46   ` Hans de Goede
2015-11-16 15:29   ` Rob Herring
2015-11-16 15:29     ` Rob Herring
2015-11-20 19:49   ` Priit Laes [this message]
2015-11-20 19:49     ` Priit Laes
2015-11-22 11:29     ` [linux-sunxi] " Hans de Goede
2015-11-22 11:29       ` Hans de Goede
2015-11-15 19:46 ` [PATCH 3/5] ARM: dts: sun8i: Add support for H3 usb clocks Hans de Goede
2015-11-15 19:46   ` Hans de Goede
2015-11-16  2:41   ` [linux-sunxi] " Chen-Yu Tsai
2015-11-16  2:41     ` Chen-Yu Tsai
2015-11-15 19:46 ` [PATCH 4/5] ARM: dts: sun8i: Add usbphy and usb host controller nodes Hans de Goede
2015-11-15 19:46   ` Hans de Goede
2015-11-15 19:46 ` [PATCH 5/5] ARM: dts: sun8i-h3-orangepi-plus: Enable USB host controllers Hans de Goede
2015-11-15 19:46   ` Hans de Goede
2015-11-16  3:00   ` [linux-sunxi] " Chen-Yu Tsai
2015-11-16  3:00     ` Chen-Yu Tsai
2015-11-16  8:11     ` [linux-sunxi] " Hans de Goede
2015-11-16  8:11       ` Hans de Goede
2015-11-17 16:12       ` [PATCH] " Jens Kuske
2015-11-17 16:12         ` Jens Kuske
2015-11-20 14:38         ` Hans de Goede
2015-11-20 14:38           ` Hans de Goede
2015-11-24  7:44           ` Maxime Ripard
2015-11-24  7:44             ` Maxime Ripard
     [not found]         ` <564B51D7.7090500-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-11-23 22:20           ` Troy Dack
2015-11-24  8:50             ` [linux-sunxi] " Hans de Goede
2015-11-24  8:50               ` Hans de Goede
     [not found]               ` <565424B9.5010601-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-11-27  3:56                 ` Troy Dack
2015-11-16  2:36 ` [linux-sunxi] [PATCH 1/5] clk: sunxi: Add support for the H3 usb phy clocks Chen-Yu Tsai
2015-11-16  2:36   ` Chen-Yu Tsai
2015-11-20 12:49   ` Maxime Ripard
2015-11-20 12:49     ` Maxime Ripard
2015-11-16 15:30 ` Rob Herring
2015-11-16 15:30   ` Rob Herring

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1448048951.1560.5.camel@plaes.org \
    --to=plaes@plaes.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.