From: rogerq@ti.com (Roger Quadros)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/2] ehci-platform: Change compatible string from usb-ehci to ehci-platform
Date: Tue, 11 Feb 2014 17:00:59 +0200 [thread overview]
Message-ID: <52FA3B2B.7050906@ti.com> (raw)
In-Reply-To: <1392127826-31290-3-git-send-email-hdegoede@redhat.com>
Hi Hans,
On 02/11/2014 04:10 PM, Hans de Goede wrote:
> The initial versions of the devicetree enablement patches for ehci-platform
> used "ehci-platform" as compatible string. However this was disliked by various
> reviewers because the platform bus is a Linux invention and devicetree is
> supposed to be OS agnostic. After much discussion I gave up, added a:
> "depends on !PPC_OF" to Kconfig to avoid a known conflict with PPC-OF platforms
> and went with the generic usb-ehci as requested.
>
> In retro-spect I should have stuck to my guns, because the dts files for many
> existing boards already claim to be compatible with "usb-ehci", ie they have:
>
> compatible = "ti,ehci-omap", "usb-ehci";
>
> In theory this should not be a problem since the "ti,ehci-omap" entry takes
> presedence, but in practice using a conflicting compatible string is an issue,
> because it makes which driver gets used depent on driver registration order.
>
> This patch changes the compatible string claimed by ehci-platform (back) to
> "ehci-platform", avoiding the driver registration / module loading ordering
> problems, and removes the "depends on !PPC_OF" workaround.
>
> Note that there already is a precedent for using ?hci-platform, in the form
> of xhci-platform.c using "xhci-platfrom" as compatible string.
>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
> Documentation/devicetree/bindings/usb/usb-ehci.txt | 4 ++--
> drivers/usb/host/Kconfig | 1 -
> drivers/usb/host/ehci-platform.c | 2 +-
> 3 files changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/usb/usb-ehci.txt b/Documentation/devicetree/bindings/usb/usb-ehci.txt
> index 2c1aeeb..46f428a 100644
> --- a/Documentation/devicetree/bindings/usb/usb-ehci.txt
> +++ b/Documentation/devicetree/bindings/usb/usb-ehci.txt
> @@ -1,7 +1,7 @@
> USB EHCI controllers
>
> Required properties:
> - - compatible : should be "usb-ehci".
> + - compatible : should be "ehci-platform".
Won't this break DT binding info for power PC?
I'm even OK with removing "usb-ehci" and "usb-ohci" compatibles from all OMAP dts files
since they aren't really compatible with the original PPC driver.
cheers,
-roger
> - reg : should contain at least address and length of the standard EHCI
> register set for the device. Optional platform-dependent registers
> (debug-port or other) can be also specified here, but only after
> @@ -27,7 +27,7 @@ Example (Sequoia 440EPx):
>
> Example (Allwinner sun4i A10 SoC):
> ehci0: usb at 01c14000 {
> - compatible = "allwinner,sun4i-a10-ehci", "usb-ehci";
> + compatible = "allwinner,sun4i-a10-ehci", "ehci-platform";
> reg = <0x01c14000 0x100>;
> interrupts = <39>;
> clocks = <&ahb_gates 1>;
> diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
> index e28cbe0..a9707da 100644
> --- a/drivers/usb/host/Kconfig
> +++ b/drivers/usb/host/Kconfig
> @@ -255,7 +255,6 @@ config USB_EHCI_ATH79
>
> config USB_EHCI_HCD_PLATFORM
> tristate "Generic EHCI driver for a platform device"
> - depends on !PPC_OF
> default n
> ---help---
> Adds an EHCI host driver for a generic platform device, which
> diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
> index 8fde649..4f4d78f 100644
> --- a/drivers/usb/host/ehci-platform.c
> +++ b/drivers/usb/host/ehci-platform.c
> @@ -333,7 +333,7 @@ static int ehci_platform_resume(struct device *dev)
> static const struct of_device_id vt8500_ehci_ids[] = {
> { .compatible = "via,vt8500-ehci", },
> { .compatible = "wm,prizm-ehci", },
> - { .compatible = "usb-ehci", },
> + { .compatible = "ehci-platform", },
> {}
> };
> MODULE_DEVICE_TABLE(of, vt8500_ehci_ids);
>
WARNING: multiple messages have this Message-ID (diff)
From: Roger Quadros <rogerq-l0cyMroinI0@public.gmane.org>
To: Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Greg Kroah-Hartman
<gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>
Cc: Alan Stern
<stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org>,
Tony Prisk <linux-ci5G2KO2hbZ+pU9mqzGVBQ@public.gmane.org>,
Florian Fainelli
<f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Maxime Ripard
<maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>,
linux-usb <linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
devicetree <devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Grant Likely
<grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>,
jwboyer-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org
Subject: Re: [PATCH 2/2] ehci-platform: Change compatible string from usb-ehci to ehci-platform
Date: Tue, 11 Feb 2014 17:00:59 +0200 [thread overview]
Message-ID: <52FA3B2B.7050906@ti.com> (raw)
In-Reply-To: <1392127826-31290-3-git-send-email-hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Hi Hans,
On 02/11/2014 04:10 PM, Hans de Goede wrote:
> The initial versions of the devicetree enablement patches for ehci-platform
> used "ehci-platform" as compatible string. However this was disliked by various
> reviewers because the platform bus is a Linux invention and devicetree is
> supposed to be OS agnostic. After much discussion I gave up, added a:
> "depends on !PPC_OF" to Kconfig to avoid a known conflict with PPC-OF platforms
> and went with the generic usb-ehci as requested.
>
> In retro-spect I should have stuck to my guns, because the dts files for many
> existing boards already claim to be compatible with "usb-ehci", ie they have:
>
> compatible = "ti,ehci-omap", "usb-ehci";
>
> In theory this should not be a problem since the "ti,ehci-omap" entry takes
> presedence, but in practice using a conflicting compatible string is an issue,
> because it makes which driver gets used depent on driver registration order.
>
> This patch changes the compatible string claimed by ehci-platform (back) to
> "ehci-platform", avoiding the driver registration / module loading ordering
> problems, and removes the "depends on !PPC_OF" workaround.
>
> Note that there already is a precedent for using ?hci-platform, in the form
> of xhci-platform.c using "xhci-platfrom" as compatible string.
>
> Signed-off-by: Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> ---
> Documentation/devicetree/bindings/usb/usb-ehci.txt | 4 ++--
> drivers/usb/host/Kconfig | 1 -
> drivers/usb/host/ehci-platform.c | 2 +-
> 3 files changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/usb/usb-ehci.txt b/Documentation/devicetree/bindings/usb/usb-ehci.txt
> index 2c1aeeb..46f428a 100644
> --- a/Documentation/devicetree/bindings/usb/usb-ehci.txt
> +++ b/Documentation/devicetree/bindings/usb/usb-ehci.txt
> @@ -1,7 +1,7 @@
> USB EHCI controllers
>
> Required properties:
> - - compatible : should be "usb-ehci".
> + - compatible : should be "ehci-platform".
Won't this break DT binding info for power PC?
I'm even OK with removing "usb-ehci" and "usb-ohci" compatibles from all OMAP dts files
since they aren't really compatible with the original PPC driver.
cheers,
-roger
> - reg : should contain at least address and length of the standard EHCI
> register set for the device. Optional platform-dependent registers
> (debug-port or other) can be also specified here, but only after
> @@ -27,7 +27,7 @@ Example (Sequoia 440EPx):
>
> Example (Allwinner sun4i A10 SoC):
> ehci0: usb@01c14000 {
> - compatible = "allwinner,sun4i-a10-ehci", "usb-ehci";
> + compatible = "allwinner,sun4i-a10-ehci", "ehci-platform";
> reg = <0x01c14000 0x100>;
> interrupts = <39>;
> clocks = <&ahb_gates 1>;
> diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
> index e28cbe0..a9707da 100644
> --- a/drivers/usb/host/Kconfig
> +++ b/drivers/usb/host/Kconfig
> @@ -255,7 +255,6 @@ config USB_EHCI_ATH79
>
> config USB_EHCI_HCD_PLATFORM
> tristate "Generic EHCI driver for a platform device"
> - depends on !PPC_OF
> default n
> ---help---
> Adds an EHCI host driver for a generic platform device, which
> diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
> index 8fde649..4f4d78f 100644
> --- a/drivers/usb/host/ehci-platform.c
> +++ b/drivers/usb/host/ehci-platform.c
> @@ -333,7 +333,7 @@ static int ehci_platform_resume(struct device *dev)
> static const struct of_device_id vt8500_ehci_ids[] = {
> { .compatible = "via,vt8500-ehci", },
> { .compatible = "wm,prizm-ehci", },
> - { .compatible = "usb-ehci", },
> + { .compatible = "ehci-platform", },
> {}
> };
> MODULE_DEVICE_TABLE(of, vt8500_ehci_ids);
>
next prev parent reply other threads:[~2014-02-11 15:00 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-11 14:10 ohci-/ehci-platform: Change compatible string to ?hci-platform Hans de Goede
2014-02-11 14:10 ` Hans de Goede
2014-02-11 14:10 ` [PATCH 1/2] ohci-platform: Change compatible string from usb-ohci to ohci-platform Hans de Goede
2014-02-11 14:10 ` Hans de Goede
2014-02-11 15:06 ` Kumar Gala
2014-02-11 15:06 ` Kumar Gala
2014-02-11 15:21 ` Hans de Goede
2014-02-11 15:21 ` Hans de Goede
2014-02-11 15:34 ` Kumar Gala
2014-02-11 15:34 ` Kumar Gala
2014-02-11 14:10 ` [PATCH 2/2] ehci-platform: Change compatible string from usb-ehci to ehci-platform Hans de Goede
2014-02-11 14:10 ` Hans de Goede
2014-02-11 15:00 ` Roger Quadros [this message]
2014-02-11 15:00 ` Roger Quadros
2014-02-11 15:26 ` Hans de Goede
2014-02-11 15:26 ` Hans de Goede
2014-02-12 14:56 ` Maxime Ripard
2014-02-12 14:56 ` Maxime Ripard
2014-02-11 15:27 ` ohci-/ehci-platform: Change compatible string to ?hci-platform Alan Stern
2014-02-11 15:27 ` Alan Stern
2014-02-11 15:43 ` Arnd Bergmann
2014-02-11 15:43 ` Arnd Bergmann
2014-02-11 15:54 ` Hans de Goede
2014-02-11 15:54 ` Hans de Goede
2014-02-11 17:01 ` Florian Fainelli
2014-02-11 17:01 ` Florian Fainelli
2014-02-11 17:04 ` Hans de Goede
2014-02-11 17:04 ` Hans de Goede
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=52FA3B2B.7050906@ti.com \
--to=rogerq@ti.com \
--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.