From: Tony Lindgren <tony@atomide.com>
To: Roger Quadros <rogerq@ti.com>
Cc: balbi@ti.com, keshava_mgowda@ti.com, linux-usb@vger.kernel.org,
linux-omap@vger.kernel.org
Subject: Re: [PATCH v2 13/22] mfd: omap-usb-host: override number of ports from platform data
Date: Wed, 28 Nov 2012 08:33:08 -0800 [thread overview]
Message-ID: <20121128163307.GA5312@atomide.com> (raw)
In-Reply-To: <1354114150-11941-14-git-send-email-rogerq@ti.com>
* Roger Quadros <rogerq@ti.com> [121128 06:52]:
> Both OMAP4 and 5 exhibit the same revision ID in the REVISION register
> but they have different number of ports i.e. 2 and 3 respectively.
> So we can't rely on REVISION register for number of ports on OMAP5
> and depend on platform data (or device tree) instead.
>
> Signed-off-by: Roger Quadros <rogerq@ti.com>
> ---
> arch/arm/mach-omap2/usb-host.c | 1 +
> arch/arm/plat-omap/include/plat/usb.h | 2 +
> drivers/mfd/omap-usb-host.c | 34 ++++++++++++++++++++------------
> 3 files changed, 24 insertions(+), 13 deletions(-)
Note that plat/usb.h is now include/linux/platform_data/usb-omap.h
in linux next so you need to coordinate with that.
For the arch/arm/*omap*/* parts:
Acked-by: Tony Lindgren <tony@atomide.com>
> diff --git a/arch/arm/mach-omap2/usb-host.c b/arch/arm/mach-omap2/usb-host.c
> index 3c43449..eb85528 100644
> --- a/arch/arm/mach-omap2/usb-host.c
> +++ b/arch/arm/mach-omap2/usb-host.c
> @@ -504,6 +504,7 @@ void __init usbhs_init(const struct usbhs_omap_board_data *pdata)
> ohci_data.es2_compatibility = pdata->es2_compatibility;
> usbhs_data.ehci_data = &ehci_data;
> usbhs_data.ohci_data = &ohci_data;
> + usbhs_data.nports = pdata->nports;
>
> if (cpu_is_omap34xx()) {
> setup_ehci_io_mux(pdata->port_mode);
> diff --git a/arch/arm/plat-omap/include/plat/usb.h b/arch/arm/plat-omap/include/plat/usb.h
> index 87ee140..6b618a1 100644
> --- a/arch/arm/plat-omap/include/plat/usb.h
> +++ b/arch/arm/plat-omap/include/plat/usb.h
> @@ -27,6 +27,7 @@ enum usbhs_omap_port_mode {
> };
>
> struct usbhs_omap_board_data {
> + int nports;
> enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
>
> /* have to be valid if phy_reset is true and portx is in phy mode */
> @@ -59,6 +60,7 @@ struct ohci_hcd_omap_platform_data {
> };
>
> struct usbhs_omap_platform_data {
> + int nports;
> enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
>
> struct ehci_hcd_omap_platform_data *ehci_data;
> diff --git a/drivers/mfd/omap-usb-host.c b/drivers/mfd/omap-usb-host.c
> index 87b574b..fda235a 100644
> --- a/drivers/mfd/omap-usb-host.c
> +++ b/drivers/mfd/omap-usb-host.c
> @@ -495,19 +495,27 @@ static int __devinit usbhs_omap_probe(struct platform_device *pdev)
> */
> pm_runtime_put_sync(dev);
>
> - switch (omap->usbhs_rev) {
> - case OMAP_USBHS_REV1:
> - omap->nports = 3;
> - break;
> - case OMAP_USBHS_REV2:
> - omap->nports = 2;
> - break;
> - default:
> - omap->nports = OMAP3_HS_USB_PORTS;
> - dev_dbg(dev,
> - "USB HOST Rev : 0x%d not recognized, assuming %d ports\n",
> - omap->usbhs_rev, omap->nports);
> - break;
> + /*
> + * If platform data contains nports then use that
> + * else make out number of ports from USBHS revision
> + */
> + if (pdata->nports) {
> + omap->nports = pdata->nports;
> + } else {
> + switch (omap->usbhs_rev) {
> + case OMAP_USBHS_REV1:
> + omap->nports = 3;
> + break;
> + case OMAP_USBHS_REV2:
> + omap->nports = 2;
> + break;
> + default:
> + omap->nports = OMAP3_HS_USB_PORTS;
> + dev_dbg(dev,
> + "USB HOST Rev:0x%d not recognized, assuming %d ports\n",
> + omap->usbhs_rev, omap->nports);
> + break;
> + }
> }
>
> for (i = 0; i < omap->nports; i++)
> --
> 1.7.4.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2012-11-28 16:33 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-28 14:48 [PATCH v2 00/22] OMAP USB Host cleanup Roger Quadros
2012-11-28 14:48 ` [PATCH v2 01/22] mfd: omap-usb-tll: Avoid creating copy of platform data Roger Quadros
2012-11-28 14:48 ` [PATCH v2 02/22] mfd: omap-usb-tll: Fix channel count detection Roger Quadros
2012-11-28 14:48 ` [PATCH v2 03/22] mfd: omap-usb-tll: Use devm_kzalloc/ioremap and clean up error path Roger Quadros
2012-11-28 14:48 ` [PATCH v2 04/22] mfd: omap-usb-tll: Clean up clock handling Roger Quadros
2012-11-28 14:48 ` [PATCH v2 07/22] mfd: omap-usb-tll: Fix error message Roger Quadros
[not found] ` <1354114150-11941-1-git-send-email-rogerq-l0cyMroinI0@public.gmane.org>
2012-11-28 14:48 ` [PATCH v2 05/22] mfd: omap-usb-tll: introduce and use mode_needs_tll() Roger Quadros
2012-11-28 14:48 ` [PATCH v2 06/22] mfd: omap-usb-tll: Check for missing platform data in probe Roger Quadros
2012-11-28 14:48 ` [PATCH v2 08/22] mfd: omap-usb-tll: serialize access to TLL device Roger Quadros
2012-11-28 14:48 ` [PATCH v2 09/22] mfd: omap-usb-tll: Add OMAP5 revision and HSIC support Roger Quadros
2012-11-28 14:48 ` [PATCH v2 10/22] mfd: omap_usb_host: Avoid creating copy of platform_data Roger Quadros
2012-11-28 14:48 ` [PATCH v2 11/22] mfd: omap-usb-host: Use devm_kzalloc() and devm_request_and_ioremap() Roger Quadros
2012-11-28 14:49 ` [PATCH v2 15/22] ARM: OMAP2+: clock data: Merge utmi_px_gfclk into usb_host_hs_utmi_px_clk Roger Quadros
2012-11-28 14:49 ` [PATCH v2 18/22] mfd: omap-usb-host: get rid of cpu_is_omap..() macros Roger Quadros
[not found] ` <1354114150-11941-19-git-send-email-rogerq-l0cyMroinI0@public.gmane.org>
2012-11-28 16:36 ` Tony Lindgren
2012-11-28 16:49 ` Roger Quadros
2012-11-28 14:49 ` [PATCH v2 12/22] mfd: omap-usb-host: know about number of ports from revision register Roger Quadros
2012-11-28 14:49 ` [PATCH v2 13/22] mfd: omap-usb-host: override number of ports from platform data Roger Quadros
2012-11-28 16:33 ` Tony Lindgren [this message]
[not found] ` <1354114150-11941-14-git-send-email-rogerq-l0cyMroinI0@public.gmane.org>
2012-12-02 17:14 ` Sergei Shtylyov
[not found] ` <50BB8C73.7060008-Igf4POYTYCDQT0dZR+AlfA@public.gmane.org>
2012-12-03 15:58 ` Roger Quadros
2012-12-04 12:32 ` Sergei Shtylyov
2012-11-28 14:49 ` [PATCH v2 14/22] mfd: omap-usb-host: cleanup clock management code Roger Quadros
2012-11-28 14:49 ` [PATCH v2 16/22] mfd: omap-usb-host: Manage HSIC clocks for HSIC mode Roger Quadros
2012-11-28 14:49 ` [PATCH v2 17/22] mfd: omap-usb-host: Get rid of unnecessary spinlock Roger Quadros
2012-11-28 14:49 ` [PATCH v2 19/22] mfd: omap-usb-host: clean up omap_usbhs_init() Roger Quadros
2012-11-28 14:49 ` [PATCH v2 20/22] USB: ehci-omap: Don't free gpios that we didn't request Roger Quadros
2012-11-28 14:49 ` [PATCH v2 21/22] ARM: OMAP2+: clock data: get rid of unused USB host clock aliases Roger Quadros
[not found] ` <1354114150-11941-22-git-send-email-rogerq-l0cyMroinI0@public.gmane.org>
2012-11-29 11:24 ` Paul Walmsley
2012-11-28 14:49 ` [PATCH v2 22/22] mfd: omap-usb-host: Don't spam console on clk_set_parent failure Roger Quadros
2012-12-02 17:10 ` Sergei Shtylyov
2012-12-03 7:48 ` Bjørn Mork
[not found] ` <87ehj7y3s2.fsf-lbf33ChDnrE/G1V5fR+Y7Q@public.gmane.org>
2012-12-03 15:50 ` Roger Quadros
2012-12-03 15:48 ` Roger Quadros
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=20121128163307.GA5312@atomide.com \
--to=tony@atomide.com \
--cc=balbi@ti.com \
--cc=keshava_mgowda@ti.com \
--cc=linux-omap@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=rogerq@ti.com \
/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 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).