* [PATCH 1/9] pci-rcar-gen2: add devicetree support
[not found] ` <1394128887-4197-1-git-send-email-ben.dooks-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
@ 2014-03-06 18:01 ` Ben Dooks
2014-03-06 18:21 ` Ben Dooks
` (2 more replies)
2014-03-06 18:01 ` [PATCH 6/9] ARM: shmobile: lager.dts: add pci 0/1/2 Ben Dooks
1 sibling, 3 replies; 23+ messages in thread
From: Ben Dooks @ 2014-03-06 18:01 UTC (permalink / raw)
To: linux-sh-u79uwXL29TY76Z2rM5mHXA, linux-usb-u79uwXL29TY76Z2rM5mHXA
Cc: linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO,
sergei.shtylyov-M4DtvfQ/ZS1MRgGoP+s0PdBPR1lH4CV8,
magnus.damn-yzvPICuk2ACczHhG9Qg4qA, horms-/R6kz+dDXgpPR4JQBCEnsQ,
Ben Dooks, Bjorn Helgaas, linux-pci-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA
Add OF match table for pci-rcar-gen2 driver for device tree support.
Signed-off-by: Ben Dooks <ben.dooks-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
---
Updates since v1:
- moved documentation into patch
- moved to using bus-range parsing
- ensured usb phy can be linked to usb devices
Cc: Bjorn Helgaas <bhelgaas-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
Cc: Simon Horman <horms-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
Cc: linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: linux-sh-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
---
.../bindings/pci/renessas,pci-rcar-gen2.txt | 52 ++++++++++++++++++++++
drivers/pci/host/pci-rcar-gen2.c | 33 +++++++++++++-
2 files changed, 83 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt
diff --git a/Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt b/Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt
new file mode 100644
index 0000000..bd6d291
--- /dev/null
+++ b/Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt
@@ -0,0 +1,52 @@
+Renesas AHB to PCI bridge
+-------------------------
+
+This is the bridge used internally to connect the USB controllers to the
+AHB. There is one bridge instance per USB port consiting of an internal
+OHCI and EHCI controller.
+
+Required properties:
+ - compatible: "renesas,pci-r8a7790" for the R8A7790 SoC
+ - reg : A list of physical regions to access the device. The first is
+ the operational registers for the OHCI/EHCI controller and the
+ second region is for the bridge configuration and control registers.
+ - interrupts : interrupt for the device
+ - clocks : The reference to the device clock
+ - bus-range: The PCI bus number ranges. As this is a single bus, the range
+ should be specified as the same value twice.
+
+
+Example SoC configuration:
+
+ pci0: pci@ee090000 {
+ compatible = "renesas,pci-r8a7790";
+ clocks = <&mstp7_clks R8A7790_CLK_EHCI>;
+ reg = <0x0 0xee090000 0x0 0xc00>,
+ <0x0 0xee080000 0x0 0x1100>;
+ interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+
+ bus-range = <0 0>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+ };
+
+Example board setup:
+
+&pci1 {
+ status = "okay";
+ pinctrl-0 = <&usb1_pins>;
+ pinctrl-names = "default";
+
+ pci@0,1 {
+ reg = <0x800 0 0 0 0>;
+ device_type = "pci";
+ usb-phy = <&usbphy>;
+ };
+
+ pci@0,2 {
+ reg = <0x1000 0 0 0 0>;
+ device_type = "pci";
+ usb-phy = <&usbphy>;
+ };
+};
diff --git a/drivers/pci/host/pci-rcar-gen2.c b/drivers/pci/host/pci-rcar-gen2.c
index fd3e3ab..1216784 100644
--- a/drivers/pci/host/pci-rcar-gen2.c
+++ b/drivers/pci/host/pci-rcar-gen2.c
@@ -16,6 +16,7 @@
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/pci.h>
+#include <linux/of_pci.h>
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/sizes.h>
@@ -98,6 +99,7 @@ struct rcar_pci_priv {
struct resource io_res;
struct resource mem_res;
struct resource *cfg_res;
+ unsigned busnr;
int irq;
unsigned long window_size;
};
@@ -312,8 +314,8 @@ static int rcar_pci_setup(int nr, struct pci_sys_data *sys)
pci_add_resource(&sys->resources, &priv->io_res);
pci_add_resource(&sys->resources, &priv->mem_res);
- /* Setup bus number based on platform device id */
- sys->busnr = to_platform_device(priv->dev)->id;
+ /* Setup bus number based on platform device id / of bus-range */
+ sys->busnr = priv->busnr;
return 1;
}
@@ -366,6 +368,23 @@ static int rcar_pci_probe(struct platform_device *pdev)
priv->window_size = SZ_1G;
+ if (pdev->dev.of_node) {
+ struct resource busnr;
+ int ret;
+
+ ret = of_pci_parse_bus_range(pdev->dev.of_node, &busnr);
+ if (ret < 0) {
+ dev_err(&pdev->dev, "failed to parse bus-range\n");
+ return ret;
+ }
+
+ priv->busnr = busnr.start;
+ if (busnr.end != busnr.start)
+ dev_warn(&pdev->dev, "only one bus number supported\n");
+ } else {
+ priv->busnr = pdev->id;
+ }
+
hw_private[0] = priv;
memset(&hw, 0, sizeof(hw));
hw.nr_controllers = ARRAY_SIZE(hw_private);
@@ -377,11 +396,21 @@ static int rcar_pci_probe(struct platform_device *pdev)
return 0;
}
+#ifdef CONFIG_OF
+static struct of_device_id rcar_pci_of_match[] = {
+ { .compatible = "renesas,pci-r8a7790", },
+ { },
+};
+
+MODULE_DEVICE_TABLE(of, rcar_pci_of_match);
+#endif
+
static struct platform_driver rcar_pci_driver = {
.driver = {
.name = "pci-rcar-gen2",
.owner = THIS_MODULE,
.suppress_bind_attrs = true,
+ .of_match_table = of_match_ptr(rcar_pci_of_match),
},
.probe = rcar_pci_probe,
};
--
1.9.0
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" 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] 23+ messages in thread
* Re: [PATCH 1/9] pci-rcar-gen2: add devicetree support
2014-03-06 18:01 ` [PATCH 1/9] pci-rcar-gen2: add devicetree support Ben Dooks
@ 2014-03-06 18:21 ` Ben Dooks
[not found] ` <5318BCAE.7000108-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
2014-03-30 20:28 ` Sergei Shtylyov
2014-04-04 17:09 ` Bjorn Helgaas
2 siblings, 1 reply; 23+ messages in thread
From: Ben Dooks @ 2014-03-06 18:21 UTC (permalink / raw)
To: Ben Dooks
Cc: linux-sh, linux-usb, linux-kernel, sergei.shtylyov, magnus.damn,
horms, Bjorn Helgaas, linux-pci, devicetree
On 06/03/14 18:01, Ben Dooks wrote:
> Add OF match table for pci-rcar-gen2 driver for device tree support.
>
> diff --git a/drivers/pci/host/pci-rcar-gen2.c b/drivers/pci/host/pci-rcar-gen2.c
> index fd3e3ab..1216784 100644
> --- a/drivers/pci/host/pci-rcar-gen2.c
> +++ b/drivers/pci/host/pci-rcar-gen2.c
> @@ -16,6 +16,7 @@
> #include <linux/kernel.h>
> #include <linux/module.h>
> #include <linux/pci.h>
> +#include <linux/of_pci.h>
> #include <linux/platform_device.h>
> #include <linux/pm_runtime.h>
> #include <linux/sizes.h>
Apologies all, there's a missing include of <linux/of.h> which should
have been added here
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 1/9] pci-rcar-gen2: add devicetree support
2014-03-06 18:01 ` [PATCH 1/9] pci-rcar-gen2: add devicetree support Ben Dooks
2014-03-06 18:21 ` Ben Dooks
@ 2014-03-30 20:28 ` Sergei Shtylyov
2014-04-04 17:09 ` Bjorn Helgaas
2 siblings, 0 replies; 23+ messages in thread
From: Sergei Shtylyov @ 2014-03-30 20:28 UTC (permalink / raw)
To: Ben Dooks, linux-sh, linux-usb
Cc: linux-kernel, magnus.damn, horms, Bjorn Helgaas, linux-pci,
devicetree
On 03/06/2014 09:01 PM, Ben Dooks wrote:
> Add OF match table for pci-rcar-gen2 driver for device tree support.
> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> ---
> Updates since v1:
> - moved documentation into patch
> - moved to using bus-range parsing
> - ensured usb phy can be linked to usb devices
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Simon Horman <horms@verge.net.au>
> Cc: linux-pci@vger.kernel.org
> Cc: linux-sh@vger.kernel.org
> Cc: devicetree@vger.kernel.org
> ---
> .../bindings/pci/renessas,pci-rcar-gen2.txt | 52 ++++++++++++++++++++++
> drivers/pci/host/pci-rcar-gen2.c | 33 +++++++++++++-
> 2 files changed, 83 insertions(+), 2 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt
> diff --git a/Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt b/Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt
> new file mode 100644
> index 0000000..bd6d291
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt
> @@ -0,0 +1,52 @@
> +Renesas AHB to PCI bridge
> +-------------------------
Perhaps it makes sense to describe PCIe bindings in the same file...
[...]
> +Example SoC configuration:
> +
> + pci0: pci@ee090000 {
> + compatible = "renesas,pci-r8a7790";
> + clocks = <&mstp7_clks R8A7790_CLK_EHCI>;
> + reg = <0x0 0xee090000 0x0 0xc00>,
> + <0x0 0xee080000 0x0 0x1100>;
> + interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>;
> + status = "disabled";
> +
> + bus-range = <0 0>;
> + #address-cells = <3>;
> + #size-cells = <2>;
> + };
> +
> +Example board setup:
> +
> +&pci1 {
> + status = "okay";
> + pinctrl-0 = <&usb1_pins>;
> + pinctrl-names = "default";
> +
> + pci@0,1 {
> + reg = <0x800 0 0 0 0>;
> + device_type = "pci";
> + usb-phy = <&usbphy>;
> + };
> +
> + pci@0,2 {
> + reg = <0x1000 0 0 0 0>;
> + device_type = "pci";
> + usb-phy = <&usbphy>;
> + };
> +};
As I said, these PCI sub-nodes belong to the SoC file.
> diff --git a/drivers/pci/host/pci-rcar-gen2.c b/drivers/pci/host/pci-rcar-gen2.c
> index fd3e3ab..1216784 100644
> --- a/drivers/pci/host/pci-rcar-gen2.c
> +++ b/drivers/pci/host/pci-rcar-gen2.c
[...]
> @@ -377,11 +396,21 @@ static int rcar_pci_probe(struct platform_device *pdev)
> return 0;
> }
>
> +#ifdef CONFIG_OF
I don't think it's really worth it.
> +static struct of_device_id rcar_pci_of_match[] = {
> + { .compatible = "renesas,pci-r8a7790", },
> + { },
> +};
> +
> +MODULE_DEVICE_TABLE(of, rcar_pci_of_match);
> +#endif
> +
> static struct platform_driver rcar_pci_driver = {
> .driver = {
> .name = "pci-rcar-gen2",
> .owner = THIS_MODULE,
> .suppress_bind_attrs = true,
> + .of_match_table = of_match_ptr(rcar_pci_of_match),
And so, of_match_ptr() is not needed.
WBR, Sergei
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 1/9] pci-rcar-gen2: add devicetree support
2014-03-06 18:01 ` [PATCH 1/9] pci-rcar-gen2: add devicetree support Ben Dooks
2014-03-06 18:21 ` Ben Dooks
2014-03-30 20:28 ` Sergei Shtylyov
@ 2014-04-04 17:09 ` Bjorn Helgaas
2014-04-04 17:44 ` Ben Dooks
2014-04-04 17:46 ` Sergei Shtylyov
2 siblings, 2 replies; 23+ messages in thread
From: Bjorn Helgaas @ 2014-04-04 17:09 UTC (permalink / raw)
To: Ben Dooks
Cc: linux-sh, linux-usb, linux-kernel, sergei.shtylyov, magnus.damn,
horms, linux-pci, devicetree
On Thu, Mar 06, 2014 at 06:01:19PM +0000, Ben Dooks wrote:
> Add OF match table for pci-rcar-gen2 driver for device tree support.
>
> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
I'm not sure what the status of this is. I saw comments about a missing
#include, but I didn't see a fixed repost. Ben, could you please repost
anything you have outstanding for me?
> ---
> Updates since v1:
> - moved documentation into patch
> - moved to using bus-range parsing
> - ensured usb phy can be linked to usb devices
>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Simon Horman <horms@verge.net.au>
> Cc: linux-pci@vger.kernel.org
> Cc: linux-sh@vger.kernel.org
> Cc: devicetree@vger.kernel.org
> ---
> .../bindings/pci/renessas,pci-rcar-gen2.txt | 52 ++++++++++++++++++++++
> drivers/pci/host/pci-rcar-gen2.c | 33 +++++++++++++-
> 2 files changed, 83 insertions(+), 2 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt
>
> diff --git a/Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt b/Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt
> new file mode 100644
> index 0000000..bd6d291
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pci/renessas,pci-rcar-gen2.txt
> @@ -0,0 +1,52 @@
> +Renesas AHB to PCI bridge
> +-------------------------
> +
> +This is the bridge used internally to connect the USB controllers to the
> +AHB. There is one bridge instance per USB port consiting of an internal
> +OHCI and EHCI controller.
> +
> +Required properties:
> + - compatible: "renesas,pci-r8a7790" for the R8A7790 SoC
> + - reg : A list of physical regions to access the device. The first is
> + the operational registers for the OHCI/EHCI controller and the
> + second region is for the bridge configuration and control registers.
> + - interrupts : interrupt for the device
> + - clocks : The reference to the device clock
> + - bus-range: The PCI bus number ranges. As this is a single bus, the range
> + should be specified as the same value twice.
> +
> +
> +Example SoC configuration:
> +
> + pci0: pci@ee090000 {
> + compatible = "renesas,pci-r8a7790";
> + clocks = <&mstp7_clks R8A7790_CLK_EHCI>;
> + reg = <0x0 0xee090000 0x0 0xc00>,
> + <0x0 0xee080000 0x0 0x1100>;
> + interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>;
> + status = "disabled";
> +
> + bus-range = <0 0>;
> + #address-cells = <3>;
> + #size-cells = <2>;
> + };
> +
> +Example board setup:
> +
> +&pci1 {
> + status = "okay";
> + pinctrl-0 = <&usb1_pins>;
> + pinctrl-names = "default";
> +
> + pci@0,1 {
> + reg = <0x800 0 0 0 0>;
> + device_type = "pci";
> + usb-phy = <&usbphy>;
> + };
> +
> + pci@0,2 {
> + reg = <0x1000 0 0 0 0>;
> + device_type = "pci";
> + usb-phy = <&usbphy>;
> + };
> +};
> diff --git a/drivers/pci/host/pci-rcar-gen2.c b/drivers/pci/host/pci-rcar-gen2.c
> index fd3e3ab..1216784 100644
> --- a/drivers/pci/host/pci-rcar-gen2.c
> +++ b/drivers/pci/host/pci-rcar-gen2.c
> @@ -16,6 +16,7 @@
> #include <linux/kernel.h>
> #include <linux/module.h>
> #include <linux/pci.h>
> +#include <linux/of_pci.h>
> #include <linux/platform_device.h>
> #include <linux/pm_runtime.h>
> #include <linux/sizes.h>
> @@ -98,6 +99,7 @@ struct rcar_pci_priv {
> struct resource io_res;
> struct resource mem_res;
> struct resource *cfg_res;
> + unsigned busnr;
> int irq;
> unsigned long window_size;
> };
> @@ -312,8 +314,8 @@ static int rcar_pci_setup(int nr, struct pci_sys_data *sys)
> pci_add_resource(&sys->resources, &priv->io_res);
> pci_add_resource(&sys->resources, &priv->mem_res);
>
> - /* Setup bus number based on platform device id */
> - sys->busnr = to_platform_device(priv->dev)->id;
> + /* Setup bus number based on platform device id / of bus-range */
> + sys->busnr = priv->busnr;
> return 1;
> }
>
> @@ -366,6 +368,23 @@ static int rcar_pci_probe(struct platform_device *pdev)
>
> priv->window_size = SZ_1G;
>
> + if (pdev->dev.of_node) {
> + struct resource busnr;
> + int ret;
> +
> + ret = of_pci_parse_bus_range(pdev->dev.of_node, &busnr);
> + if (ret < 0) {
> + dev_err(&pdev->dev, "failed to parse bus-range\n");
> + return ret;
> + }
> +
> + priv->busnr = busnr.start;
> + if (busnr.end != busnr.start)
> + dev_warn(&pdev->dev, "only one bus number supported\n");
> + } else {
> + priv->busnr = pdev->id;
> + }
> +
> hw_private[0] = priv;
> memset(&hw, 0, sizeof(hw));
> hw.nr_controllers = ARRAY_SIZE(hw_private);
> @@ -377,11 +396,21 @@ static int rcar_pci_probe(struct platform_device *pdev)
> return 0;
> }
>
> +#ifdef CONFIG_OF
> +static struct of_device_id rcar_pci_of_match[] = {
> + { .compatible = "renesas,pci-r8a7790", },
> + { },
> +};
> +
> +MODULE_DEVICE_TABLE(of, rcar_pci_of_match);
> +#endif
> +
> static struct platform_driver rcar_pci_driver = {
> .driver = {
> .name = "pci-rcar-gen2",
> .owner = THIS_MODULE,
> .suppress_bind_attrs = true,
> + .of_match_table = of_match_ptr(rcar_pci_of_match),
> },
> .probe = rcar_pci_probe,
> };
> --
> 1.9.0
>
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 1/9] pci-rcar-gen2: add devicetree support
2014-04-04 17:09 ` Bjorn Helgaas
@ 2014-04-04 17:44 ` Ben Dooks
2014-04-04 17:46 ` Sergei Shtylyov
1 sibling, 0 replies; 23+ messages in thread
From: Ben Dooks @ 2014-04-04 17:44 UTC (permalink / raw)
To: Bjorn Helgaas
Cc: linux-sh, linux-usb, linux-kernel, sergei.shtylyov, magnus.damn,
horms, linux-pci, devicetree
On 04/04/14 18:09, Bjorn Helgaas wrote:
> On Thu, Mar 06, 2014 at 06:01:19PM +0000, Ben Dooks wrote:
>> Add OF match table for pci-rcar-gen2 driver for device tree support.
>>
>> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
>
> I'm not sure what the status of this is. I saw comments about a missing
> #include, but I didn't see a fixed repost. Ben, could you please repost
> anything you have outstanding for me?
Sergei was going to re-post this series. I can have a look at
re-sending this later today if he hasn't already sorted it out.
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 1/9] pci-rcar-gen2: add devicetree support
2014-04-04 17:09 ` Bjorn Helgaas
2014-04-04 17:44 ` Ben Dooks
@ 2014-04-04 17:46 ` Sergei Shtylyov
1 sibling, 0 replies; 23+ messages in thread
From: Sergei Shtylyov @ 2014-04-04 17:46 UTC (permalink / raw)
To: Bjorn Helgaas, Ben Dooks
Cc: linux-sh, linux-usb, linux-kernel, magnus.damn, horms, linux-pci,
devicetree
Hello.
On 04/04/2014 09:09 PM, Bjorn Helgaas wrote:
>> Add OF match table for pci-rcar-gen2 driver for device tree support.
>> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> I'm not sure what the status of this is. I saw comments about a missing
> #include, but I didn't see a fixed repost.
Since there was none. :-)
> Ben, could you please repost anything you have outstanding for me?
I took updating this patch into my hands with Ben's consent, so I'll
repost it soonish.
WBR, Sergei
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 6/9] ARM: shmobile: lager.dts: add pci 0/1/2
[not found] ` <1394128887-4197-1-git-send-email-ben.dooks-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
2014-03-06 18:01 ` [PATCH 1/9] pci-rcar-gen2: add devicetree support Ben Dooks
@ 2014-03-06 18:01 ` Ben Dooks
1 sibling, 0 replies; 23+ messages in thread
From: Ben Dooks @ 2014-03-06 18:01 UTC (permalink / raw)
To: linux-sh-u79uwXL29TY76Z2rM5mHXA, linux-usb-u79uwXL29TY76Z2rM5mHXA
Cc: linux-kernel-81qHHgoATdFT9dQujB1mzip2UmYkHbXO,
sergei.shtylyov-M4DtvfQ/ZS1MRgGoP+s0PdBPR1lH4CV8,
magnus.damn-yzvPICuk2ACczHhG9Qg4qA, horms-/R6kz+dDXgpPR4JQBCEnsQ,
Ben Dooks, devicetree-u79uwXL29TY76Z2rM5mHXA, Magnus Damm
Enable pci1 and pci2 nodes for USB controllers attached to the AHB<>PCI
bridge devices. Node pci0 is added for the moment, but not enabled as it
could be switched to usb-gadget mode later.
Signed-off-by: Ben Dooks <ben.dooks-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
Reviewed-by: Ian Molton <ian.molton-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
---
Cc: linux-sh-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: Magnus Damm <magnus.damm-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Simon Horman <horms-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
---
arch/arm/boot/dts/r8a7790-lager.dts | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/arch/arm/boot/dts/r8a7790-lager.dts b/arch/arm/boot/dts/r8a7790-lager.dts
index 26a9010..fd6851f 100644
--- a/arch/arm/boot/dts/r8a7790-lager.dts
+++ b/arch/arm/boot/dts/r8a7790-lager.dts
@@ -148,6 +148,21 @@
renesas,groups = "qspi_ctrl", "qspi_data4";
renesas,function = "qspi";
};
+
+ usb0_pins: usb0 {
+ renesas,groups = "usb0";
+ renesas,function = "usb0";
+ };
+
+ usb1_pins: usb1 {
+ renesas,groups = "usb1";
+ renesas,function = "usb1";
+ };
+
+ usb2_pins: usb2 {
+ renesas,groups = "usb2";
+ renesas,function = "usb2";
+ };
};
&mmcif1 {
@@ -214,3 +229,20 @@
cd-gpios = <&gpio3 22 GPIO_ACTIVE_LOW>;
status = "okay";
};
+
+&pci0 {
+ pinctrl-0 = <&usb0_pins>;
+ pinctrl-names = "default";
+};
+
+&pci1 {
+ status = "okay";
+ pinctrl-0 = <&usb1_pins>;
+ pinctrl-names = "default";
+};
+
+&pci2 {
+ status = "okay";
+ pinctrl-0 = <&usb2_pins>;
+ pinctrl-names = "default";
+};
--
1.9.0
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" 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] 23+ messages in thread
* [PATCH 3/9] phy-rcar-usb-gen2: add device tree support
[not found] <1394128887-4197-1-git-send-email-ben.dooks@codethink.co.uk>
[not found] ` <1394128887-4197-1-git-send-email-ben.dooks-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
@ 2014-03-06 18:01 ` Ben Dooks
2014-03-06 19:16 ` Sergei Shtylyov
2014-03-06 18:01 ` [PATCH 5/9] ARM: shmbobile: r8a7790.dtsi: add pci0/1/2 nodes Ben Dooks
` (2 subsequent siblings)
4 siblings, 1 reply; 23+ messages in thread
From: Ben Dooks @ 2014-03-06 18:01 UTC (permalink / raw)
To: linux-sh, linux-usb
Cc: linux-kernel, sergei.shtylyov, magnus.damn, horms, Ben Dooks,
Felipe Balbi, Magnus Damm, devicetree
Add support for the phy-rcar-gen2-usb driver to be probed from device tree.
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Ian Molton <ian.molton@codethink.co.uk>
---
Fixes from v2:
- fix missed of_match_ptr()
- fix names of channel selection booleans
- updated and merged documentation for dt entries
Fixes from v2:
- fix missing of_if patch
Fixes from v1:
- use of_property_reasd-bool()
- remove unused of_id variable
Cc: Felipe Balbi <balbi@ti.com>
Cc: linux-usb@vger.kernel.org
Cc: linux-sh@vger.kernel.org
Cc: Magnus Damm <magnus.damm@gmail.com>
Cc: Simon Horman <horms@verge.net.au>
Cc: devicetree@vger.kernel.org
Conflicts:
drivers/usb/phy/phy-rcar-gen2-usb.c
---
.../bindings/usb/renesas,rcar-gen2-usb-phy.txt | 36 ++++++++++++++++++++++
drivers/pci/host/pci-rcar-gen2.c | 1 +
drivers/usb/phy/phy-rcar-gen2-usb.c | 34 +++++++++++++++++---
3 files changed, 66 insertions(+), 5 deletions(-)
create mode 100644 Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
diff --git a/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt b/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
new file mode 100644
index 0000000..5351a30
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
@@ -0,0 +1,36 @@
+Renesas RCar gen2 USB PHY bindings
+----------------------------------
+
+Bindings for the USB PHY block used in some Renesas SoCs.
+
+Required properties:
+ - compatible: "renesas,usb-phy-r8a7790" for the R8A7790 SoC
+ "renesas,usb-phy-r8a7791" for the R8A7791 SoC
+ - reg : A single region to access device registers
+ - clocks : The reference to the clock to use for this block
+ - clock-names : The name for the clock at index 0 (must be "usbhs")
+
+Optional properties:
+
+ - renesas,usb0-device: boolean, if present USB0 is connected to HS device
+ otherwise the USB0 is connected to OHCI/EHCI host.
+ - renesas,usb2-xhci: boolean, if present USB2 is connected to XHCI controller
+ otherwise the USB2 is connected to OHCI/EHCI host.
+
+
+Example device node for SoC dtsi file:
+
+ usbphy: usbphy@e6590100 {
+ compatible = "renesas,usb-phy-r8a7790";
+ clocks = <&mstp7_clks R8A7790_CLK_HSUSB>;
+ clock-names = "usbhs";
+ reg = < 0x0 0xe6590100 0x0 0x100>;
+ status = "disabled";
+ };
+
+Example board file:
+
+&usbphy {
+ status = "okay";
+};
+
diff --git a/drivers/pci/host/pci-rcar-gen2.c b/drivers/pci/host/pci-rcar-gen2.c
index 1216784..2595078 100644
--- a/drivers/pci/host/pci-rcar-gen2.c
+++ b/drivers/pci/host/pci-rcar-gen2.c
@@ -15,6 +15,7 @@
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/module.h>
+#include <linux/of.h>
#include <linux/pci.h>
#include <linux/of_pci.h>
#include <linux/platform_device.h>
diff --git a/drivers/usb/phy/phy-rcar-gen2-usb.c b/drivers/usb/phy/phy-rcar-gen2-usb.c
index 388d89f..8006c3c 100644
--- a/drivers/usb/phy/phy-rcar-gen2-usb.c
+++ b/drivers/usb/phy/phy-rcar-gen2-usb.c
@@ -15,6 +15,7 @@
#include <linux/module.h>
#include <linux/platform_data/usb-rcar-gen2-phy.h>
#include <linux/platform_device.h>
+#include <linux/of_device.h>
#include <linux/spinlock.h>
#include <linux/usb/otg.h>
@@ -167,6 +168,15 @@ out:
spin_unlock_irqrestore(&priv->lock, flags);
}
+#ifdef CONFIG_OF
+static struct of_device_id rcar_gen2_usb_phy_ofmatch[] = {
+ { .compatible = "renesas,usb-phy-r8a7790", },
+ { .compatible = "renesas,usb-phy-r8a7791", },
+ { },
+};
+MODULE_DEVICE_TABLE(of, rcar_gen2_usb_phy_ofmatch);
+#endif
+
static int rcar_gen2_usb_phy_probe(struct platform_device *pdev)
{
struct device *dev = &pdev->dev;
@@ -178,7 +188,7 @@ static int rcar_gen2_usb_phy_probe(struct platform_device *pdev)
int retval;
pdata = dev_get_platdata(dev);
- if (!pdata) {
+ if (!pdata && !dev->of_node) {
dev_err(dev, "No platform data\n");
return -EINVAL;
}
@@ -203,16 +213,29 @@ static int rcar_gen2_usb_phy_probe(struct platform_device *pdev)
spin_lock_init(&priv->lock);
priv->clk = clk;
priv->base = base;
- priv->ugctrl2 = pdata->chan0_pci ?
- USBHS_UGCTRL2_USB0_PCI : USBHS_UGCTRL2_USB0_HS;
- priv->ugctrl2 |= pdata->chan2_pci ?
- USBHS_UGCTRL2_USB2_PCI : USBHS_UGCTRL2_USB2_SS;
priv->phy.dev = dev;
priv->phy.label = dev_name(dev);
priv->phy.init = rcar_gen2_usb_phy_init;
priv->phy.shutdown = rcar_gen2_usb_phy_shutdown;
priv->phy.set_suspend = rcar_gen2_usb_phy_set_suspend;
+ if (dev->of_node) {
+ if (of_property_read_bool(dev->of_node, "renesas,usb0-device"))
+ priv->ugctrl2 = USBHS_UGCTRL2_USB0_HS;
+ else
+ priv->ugctrl2 = USBHS_UGCTRL2_USB0_PCI;
+
+ if (of_property_read_bool(dev->of_node, "renesas,usb2-xhci"))
+ priv->ugctrl2 |= USBHS_UGCTRL2_USB2_SS;
+ else
+ priv->ugctrl2 |= USBHS_UGCTRL2_USB2_PCI;
+ } else {
+ priv->ugctrl2 = pdata->chan0_pci ?
+ USBHS_UGCTRL2_USB0_PCI : USBHS_UGCTRL2_USB0_HS;
+ priv->ugctrl2 |= pdata->chan2_pci ?
+ USBHS_UGCTRL2_USB2_PCI : USBHS_UGCTRL2_USB2_SS;
+ }
+
retval = usb_add_phy_dev(&priv->phy);
if (retval < 0) {
dev_err(dev, "Failed to add USB phy\n");
@@ -236,6 +259,7 @@ static int rcar_gen2_usb_phy_remove(struct platform_device *pdev)
static struct platform_driver rcar_gen2_usb_phy_driver = {
.driver = {
.name = "usb_phy_rcar_gen2",
+ .of_match_table = of_match_ptr(rcar_gen2_usb_phy_ofmatch),
},
.probe = rcar_gen2_usb_phy_probe,
.remove = rcar_gen2_usb_phy_remove,
--
1.9.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH 3/9] phy-rcar-usb-gen2: add device tree support
2014-03-06 18:01 ` [PATCH 3/9] phy-rcar-usb-gen2: add device tree support Ben Dooks
@ 2014-03-06 19:16 ` Sergei Shtylyov
2014-03-06 18:19 ` Ben Dooks
0 siblings, 1 reply; 23+ messages in thread
From: Sergei Shtylyov @ 2014-03-06 19:16 UTC (permalink / raw)
To: Ben Dooks, linux-sh, linux-usb
Cc: linux-kernel, magnus.damn, horms, Felipe Balbi, Magnus Damm,
devicetree, Vladimir Barinov
Hello.
On 03/06/2014 09:01 PM, Ben Dooks wrote:
> Add support for the phy-rcar-gen2-usb driver to be probed from device tree.
> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> Reviewed-by: Ian Molton <ian.molton@codethink.co.uk>
> ---
> Fixes from v2:
> - fix missed of_match_ptr()
> - fix names of channel selection booleans
> - updated and merged documentation for dt entries
>
> Fixes from v2:
> - fix missing of_if patch
>
> Fixes from v1:
> - use of_property_reasd-bool()
> - remove unused of_id variable
>
> Cc: Felipe Balbi <balbi@ti.com>
> Cc: linux-usb@vger.kernel.org
> Cc: linux-sh@vger.kernel.org
> Cc: Magnus Damm <magnus.damm@gmail.com>
> Cc: Simon Horman <horms@verge.net.au>
> Cc: devicetree@vger.kernel.org
> Conflicts:
> drivers/usb/phy/phy-rcar-gen2-usb.c
> ---
> .../bindings/usb/renesas,rcar-gen2-usb-phy.txt | 36 ++++++++++++++++++++++
> drivers/pci/host/pci-rcar-gen2.c | 1 +
Eh? What does this file have to do with USB PHY?
> drivers/usb/phy/phy-rcar-gen2-usb.c | 34 +++++++++++++++++---
> 3 files changed, 66 insertions(+), 5 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
> diff --git a/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt b/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
> new file mode 100644
> index 0000000..5351a30
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
> @@ -0,0 +1,36 @@
> +Renesas RCar gen2 USB PHY bindings
> +----------------------------------
> +
> +Bindings for the USB PHY block used in some Renesas SoCs.
> +
> +Required properties:
> + - compatible: "renesas,usb-phy-r8a7790" for the R8A7790 SoC
> + "renesas,usb-phy-r8a7791" for the R8A7791 SoC
> + - reg : A single region to access device registers
> + - clocks : The reference to the clock to use for this block
> + - clock-names : The name for the clock at index 0 (must be "usbhs")
> +
> +Optional properties:
> +
> + - renesas,usb0-device: boolean, if present USB0 is connected to HS device
> + otherwise the USB0 is connected to OHCI/EHCI host.
IIUC, the testing has shown that USBHS is dual-role controller in that
case, i.e. supports both host and device roles (the manual has the host
controller details too). Vladimir, is it so?
> + - renesas,usb2-xhci: boolean, if present USB2 is connected to XHCI controller
> + otherwise the USB2 is connected to OHCI/EHCI host.
> +
> +
> +Example device node for SoC dtsi file:
> +
> + usbphy: usbphy@e6590100 {
> + compatible = "renesas,usb-phy-r8a7790";
> + clocks = <&mstp7_clks R8A7790_CLK_HSUSB>;
> + clock-names = "usbhs";
> + reg = < 0x0 0xe6590100 0x0 0x100>;
> + status = "disabled";
> + };
> +
> +Example board file:
> +
> +&usbphy {
> + status = "okay";
> +};
These are usually merged into one node for the example.
WBR, Sergei
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 3/9] phy-rcar-usb-gen2: add device tree support
2014-03-06 19:16 ` Sergei Shtylyov
@ 2014-03-06 18:19 ` Ben Dooks
2014-03-06 20:54 ` Sergei Shtylyov
0 siblings, 1 reply; 23+ messages in thread
From: Ben Dooks @ 2014-03-06 18:19 UTC (permalink / raw)
To: Sergei Shtylyov
Cc: linux-sh, linux-usb, linux-kernel, magnus.damn, horms,
Felipe Balbi, Magnus Damm, devicetree, Vladimir Barinov
On 06/03/14 19:16, Sergei Shtylyov wrote:
> Hello.
>
> On 03/06/2014 09:01 PM, Ben Dooks wrote:
>
>> Add support for the phy-rcar-gen2-usb driver to be probed from device
>> tree.
>
>> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
>> Reviewed-by: Ian Molton <ian.molton@codethink.co.uk>
>> ---
>> Fixes from v2:
>> - fix missed of_match_ptr()
>> - fix names of channel selection booleans
>> - updated and merged documentation for dt entries
>>
>> Fixes from v2:
>> - fix missing of_if patch
>>
>> Fixes from v1:
>> - use of_property_reasd-bool()
>> - remove unused of_id variable
>>
>> Cc: Felipe Balbi <balbi@ti.com>
>> Cc: linux-usb@vger.kernel.org
>> Cc: linux-sh@vger.kernel.org
>> Cc: Magnus Damm <magnus.damm@gmail.com>
>> Cc: Simon Horman <horms@verge.net.au>
>> Cc: devicetree@vger.kernel.org
>
>> Conflicts:
>> drivers/usb/phy/phy-rcar-gen2-usb.c
>> ---
>> .../bindings/usb/renesas,rcar-gen2-usb-phy.txt | 36
>> ++++++++++++++++++++++
>> drivers/pci/host/pci-rcar-gen2.c | 1 +
>
> Eh? What does this file have to do with USB PHY?
Ah, it was a fixup for a missing header that got merged
into the wrong file. Will fix that.
>> drivers/usb/phy/phy-rcar-gen2-usb.c | 34
>> +++++++++++++++++---
>> 3 files changed, 66 insertions(+), 5 deletions(-)
>> create mode 100644
>> Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
>
>> diff --git
>> a/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
>> b/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
>> new file mode 100644
>> index 0000000..5351a30
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
>> @@ -0,0 +1,36 @@
>> +Renesas RCar gen2 USB PHY bindings
>> +----------------------------------
>> +
>> +Bindings for the USB PHY block used in some Renesas SoCs.
>> +
>> +Required properties:
>> + - compatible: "renesas,usb-phy-r8a7790" for the R8A7790 SoC
>> + "renesas,usb-phy-r8a7791" for the R8A7791 SoC
>> + - reg : A single region to access device registers
>> + - clocks : The reference to the clock to use for this block
>> + - clock-names : The name for the clock at index 0 (must be "usbhs")
>> +
>> +Optional properties:
>> +
>> + - renesas,usb0-device: boolean, if present USB0 is connected to HS
>> device
>> + otherwise the USB0 is connected to OHCI/EHCI host.
>
> IIUC, the testing has shown that USBHS is dual-role controller in
> that case, i.e. supports both host and device roles (the manual has the
> host controller details too). Vladimir, is it so?
Currently there is no auto-detection for this, so it gets set at
start time.
>> + - renesas,usb2-xhci: boolean, if present USB2 is connected to XHCI
>> controller
>> + otherwise the USB2 is connected to OHCI/EHCI host.
>> +
>> +
>> +Example device node for SoC dtsi file:
>> +
>> + usbphy: usbphy@e6590100 {
>> + compatible = "renesas,usb-phy-r8a7790";
>> + clocks = <&mstp7_clks R8A7790_CLK_HSUSB>;
>> + clock-names = "usbhs";
>> + reg = < 0x0 0xe6590100 0x0 0x100>;
>> + status = "disabled";
>> + };
>> +
>> +Example board file:
>> +
>> +&usbphy {
>> + status = "okay";
>> +};
>
> These are usually merged into one node for the example.
Much nicer if separate.
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 3/9] phy-rcar-usb-gen2: add device tree support
2014-03-06 18:19 ` Ben Dooks
@ 2014-03-06 20:54 ` Sergei Shtylyov
0 siblings, 0 replies; 23+ messages in thread
From: Sergei Shtylyov @ 2014-03-06 20:54 UTC (permalink / raw)
To: Ben Dooks
Cc: linux-sh, linux-usb, linux-kernel, magnus.damn, horms,
Felipe Balbi, Magnus Damm, devicetree, Vladimir Barinov
Hello.
On 03/06/2014 09:19 PM, Ben Dooks wrote:
>>> Add support for the phy-rcar-gen2-usb driver to be probed from device
>>> tree.
>>> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
>>> Reviewed-by: Ian Molton <ian.molton@codethink.co.uk>
[...]
>>> drivers/usb/phy/phy-rcar-gen2-usb.c | 34
>>> +++++++++++++++++---
>>> 3 files changed, 66 insertions(+), 5 deletions(-)
>>> create mode 100644
>>> Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
>>> diff --git
>>> a/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
>>> b/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
>>> new file mode 100644
>>> index 0000000..5351a30
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/usb/renesas,rcar-gen2-usb-phy.txt
>>> @@ -0,0 +1,36 @@
>>> +Renesas RCar gen2 USB PHY bindings
>>> +----------------------------------
>>> +
>>> +Bindings for the USB PHY block used in some Renesas SoCs.
>>> +
>>> +Required properties:
>>> + - compatible: "renesas,usb-phy-r8a7790" for the R8A7790 SoC
>>> + "renesas,usb-phy-r8a7791" for the R8A7791 SoC
>>> + - reg : A single region to access device registers
>>> + - clocks : The reference to the clock to use for this block
>>> + - clock-names : The name for the clock at index 0 (must be "usbhs")
>>> +
>>> +Optional properties:
>>> +
>>> + - renesas,usb0-device: boolean, if present USB0 is connected to HS
>>> device
>>> + otherwise the USB0 is connected to OHCI/EHCI host.
>> IIUC, the testing has shown that USBHS is dual-role controller in
>> that case, i.e. supports both host and device roles (the manual has the
>> host controller details too). Vladimir, is it so?
> Currently there is no auto-detection for this, so it gets set at
> start time.
The mode can be auto-detected by reading SW5. My point was however, that
it doesn't seem correct to call the prop "renesas,usb0-device". I'd rather
suggest "renesas,usb0-usbhs" if you keep sticking to the scheme opposite to
the platform data.
WBR, Sergei
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 5/9] ARM: shmbobile: r8a7790.dtsi: add pci0/1/2 nodes
[not found] <1394128887-4197-1-git-send-email-ben.dooks@codethink.co.uk>
[not found] ` <1394128887-4197-1-git-send-email-ben.dooks-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
2014-03-06 18:01 ` [PATCH 3/9] phy-rcar-usb-gen2: add device tree support Ben Dooks
@ 2014-03-06 18:01 ` Ben Dooks
2014-03-31 22:18 ` Sergei Shtylyov
2014-03-06 18:01 ` [PATCH 7/9] ARM: shmobile: r8a7790.dtsi: add usbphy node Ben Dooks
2014-03-06 18:01 ` [PATCH 8/9] ARM: shmobile: lager.dts: add usbphy reference Ben Dooks
4 siblings, 1 reply; 23+ messages in thread
From: Ben Dooks @ 2014-03-06 18:01 UTC (permalink / raw)
To: linux-sh, linux-usb
Cc: linux-kernel, sergei.shtylyov, magnus.damn, horms, Ben Dooks,
devicetree, horms+renesas
Add nodes for USB PCI bridge devices.
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Ian Molton <ian.molton@codethink.co.uk>
---
Cc: devicetree@vger.kernel.org
Cc: linux-sh@vger.kernel.org
Cc: horms+renesas@verge.net.au
Conflicts:
arch/arm/boot/dts/r8a7790.dtsi
---
arch/arm/boot/dts/r8a7790.dtsi | 39 +++++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/arch/arm/boot/dts/r8a7790.dtsi b/arch/arm/boot/dts/r8a7790.dtsi
index a1e7c39..7325fee 100644
--- a/arch/arm/boot/dts/r8a7790.dtsi
+++ b/arch/arm/boot/dts/r8a7790.dtsi
@@ -763,4 +763,43 @@
#size-cells = <0>;
status = "disabled";
};
+
+ pci0: pci@ee090000 {
+ compatible = "renesas,pci-r8a7790";
+ clocks = <&mstp7_clks R8A7790_CLK_EHCI>;
+ reg = <0x0 0xee090000 0x0 0xc00>,
+ <0x0 0xee080000 0x0 0x1100>;
+ interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+
+ bus-range = <0 0>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+ };
+
+ pci1: pci@ee0b0000 {
+ compatible = "renesas,pci-r8a7790";
+ clocks = <&mstp7_clks R8A7790_CLK_EHCI>;
+ reg = <0x0 0xee0b0000 0x0 0xc00>,
+ <0x0 0xee0a0000 0x0 0x1100>;
+ interrupts = <0 112 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+
+ bus-range = <1 1>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+ };
+
+ pci2: pci@ee0d0000 {
+ compatible = "renesas,pci-r8a7790";
+ clocks = <&mstp7_clks R8A7790_CLK_EHCI>;
+ reg = <0x0 0xee0d0000 0x0 0xc00>,
+ <0x0 0xee0c0000 0x0 0x1100>;
+ interrupts = <0 113 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+
+ bus-range = <2 2>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+ };
};
--
1.9.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH 7/9] ARM: shmobile: r8a7790.dtsi: add usbphy node
[not found] <1394128887-4197-1-git-send-email-ben.dooks@codethink.co.uk>
` (2 preceding siblings ...)
2014-03-06 18:01 ` [PATCH 5/9] ARM: shmbobile: r8a7790.dtsi: add pci0/1/2 nodes Ben Dooks
@ 2014-03-06 18:01 ` Ben Dooks
2014-03-06 18:01 ` [PATCH 8/9] ARM: shmobile: lager.dts: add usbphy reference Ben Dooks
4 siblings, 0 replies; 23+ messages in thread
From: Ben Dooks @ 2014-03-06 18:01 UTC (permalink / raw)
To: linux-sh, linux-usb
Cc: linux-kernel, sergei.shtylyov, magnus.damn, horms, Ben Dooks,
devicetree, Magnus Damm
Add node for USB PHY driver to the base R8A7790 device tree include file.
It is up to the board file to enable and configure it as necessary.
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Ian Molton <ian.molton@codethink.co.uk>
---
Cc: devicetree@vger.kernel.org
Cc: Magnus Damm <magnus.damm@gmail.com>
Cc: Simon Horman <horms@verge.net.au>
Cc: linux-sh@vger.kernel.org
---
arch/arm/boot/dts/r8a7790.dtsi | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/arm/boot/dts/r8a7790.dtsi b/arch/arm/boot/dts/r8a7790.dtsi
index 7325fee..4c03c46 100644
--- a/arch/arm/boot/dts/r8a7790.dtsi
+++ b/arch/arm/boot/dts/r8a7790.dtsi
@@ -802,4 +802,12 @@
#address-cells = <3>;
#size-cells = <2>;
};
+
+ usbphy: usbphy@e6590100 {
+ compatible = "renesas,usb-phy-r8a7790";
+ clocks = <&mstp7_clks R8A7790_CLK_HSUSB>;
+ clock-names = "usbhs";
+ reg = < 0x0 0xe6590100 0x0 0x100>;
+ status = "disabled";
+ };
};
--
1.9.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH 8/9] ARM: shmobile: lager.dts: add usbphy reference
[not found] <1394128887-4197-1-git-send-email-ben.dooks@codethink.co.uk>
` (3 preceding siblings ...)
2014-03-06 18:01 ` [PATCH 7/9] ARM: shmobile: r8a7790.dtsi: add usbphy node Ben Dooks
@ 2014-03-06 18:01 ` Ben Dooks
2014-03-30 19:28 ` Sergei Shtylyov
4 siblings, 1 reply; 23+ messages in thread
From: Ben Dooks @ 2014-03-06 18:01 UTC (permalink / raw)
To: linux-sh, linux-usb
Cc: linux-kernel, sergei.shtylyov, magnus.damn, horms, Ben Dooks,
devicetree, Magnus Damm
Enable the usbphy node so that the phy driver is available.
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Ian Molton <ian.molton@codethink.co.uk>
---
Cc: linux-sh@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: Magnus Damm <magnus.damm@gmail.com>
Cc: Simon Horman <horms@verge.net.au>
---
arch/arm/boot/dts/r8a7790-lager.dts | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/arch/arm/boot/dts/r8a7790-lager.dts b/arch/arm/boot/dts/r8a7790-lager.dts
index fd6851f..63d58d6 100644
--- a/arch/arm/boot/dts/r8a7790-lager.dts
+++ b/arch/arm/boot/dts/r8a7790-lager.dts
@@ -246,3 +246,7 @@
pinctrl-0 = <&usb2_pins>;
pinctrl-names = "default";
};
+
+&usbphy {
+ status = "okay";
+};
--
1.9.0
^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH 8/9] ARM: shmobile: lager.dts: add usbphy reference
2014-03-06 18:01 ` [PATCH 8/9] ARM: shmobile: lager.dts: add usbphy reference Ben Dooks
@ 2014-03-30 19:28 ` Sergei Shtylyov
[not found] ` <5338704C.2030501-M4DtvfQ/ZS1MRgGoP+s0PdBPR1lH4CV8@public.gmane.org>
0 siblings, 1 reply; 23+ messages in thread
From: Sergei Shtylyov @ 2014-03-30 19:28 UTC (permalink / raw)
To: Ben Dooks, linux-sh, linux-usb
Cc: linux-kernel, magnus.damn, horms, devicetree, Magnus Damm
Hello.
On 03/06/2014 09:01 PM, Ben Dooks wrote:
> Enable the usbphy node so that the phy driver is available.
> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> Reviewed-by: Ian Molton <ian.molton@codethink.co.uk>
> ---
> Cc: linux-sh@vger.kernel.org
> Cc: devicetree@vger.kernel.org
> Cc: Magnus Damm <magnus.damm@gmail.com>
> Cc: Simon Horman <horms@verge.net.au>
> ---
> arch/arm/boot/dts/r8a7790-lager.dts | 4 ++++
> 1 file changed, 4 insertions(+)
> diff --git a/arch/arm/boot/dts/r8a7790-lager.dts b/arch/arm/boot/dts/r8a7790-lager.dts
> index fd6851f..63d58d6 100644
> --- a/arch/arm/boot/dts/r8a7790-lager.dts
> +++ b/arch/arm/boot/dts/r8a7790-lager.dts
> @@ -246,3 +246,7 @@
> pinctrl-0 = <&usb2_pins>;
> pinctrl-names = "default";
> };
> +
> +&usbphy {
> + status = "okay";
> +};
I don't see why we need this patch. Why not make USB PHY always enabled?
WBR, Sergei
^ permalink raw reply [flat|nested] 23+ messages in thread
end of thread, other threads:[~2014-04-04 17:46 UTC | newest]
Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1394128887-4197-1-git-send-email-ben.dooks@codethink.co.uk>
[not found] ` <1394128887-4197-1-git-send-email-ben.dooks-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
2014-03-06 18:01 ` [PATCH 1/9] pci-rcar-gen2: add devicetree support Ben Dooks
2014-03-06 18:21 ` Ben Dooks
[not found] ` <5318BCAE.7000108-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
2014-03-30 19:10 ` Sergei Shtylyov
2014-03-30 19:21 ` Ben Dooks
2014-03-30 19:26 ` Sergei Shtylyov
2014-03-30 19:40 ` Ben Dooks
2014-03-30 20:10 ` Sergei Shtylyov
2014-03-31 21:23 ` Sergei Shtylyov
2014-03-30 20:28 ` Sergei Shtylyov
2014-04-04 17:09 ` Bjorn Helgaas
2014-04-04 17:44 ` Ben Dooks
2014-04-04 17:46 ` Sergei Shtylyov
2014-03-06 18:01 ` [PATCH 6/9] ARM: shmobile: lager.dts: add pci 0/1/2 Ben Dooks
2014-03-06 18:01 ` [PATCH 3/9] phy-rcar-usb-gen2: add device tree support Ben Dooks
2014-03-06 19:16 ` Sergei Shtylyov
2014-03-06 18:19 ` Ben Dooks
2014-03-06 20:54 ` Sergei Shtylyov
2014-03-06 18:01 ` [PATCH 5/9] ARM: shmbobile: r8a7790.dtsi: add pci0/1/2 nodes Ben Dooks
2014-03-31 22:18 ` Sergei Shtylyov
2014-03-06 18:01 ` [PATCH 7/9] ARM: shmobile: r8a7790.dtsi: add usbphy node Ben Dooks
2014-03-06 18:01 ` [PATCH 8/9] ARM: shmobile: lager.dts: add usbphy reference Ben Dooks
2014-03-30 19:28 ` Sergei Shtylyov
[not found] ` <5338704C.2030501-M4DtvfQ/ZS1MRgGoP+s0PdBPR1lH4CV8@public.gmane.org>
2014-03-30 19:51 ` Ben Dooks
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).