From: Felipe Balbi <felipe.balbi@linux.intel.com>
To: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>,
mathias.nyman@intel.com, gregkh@linuxfoundation.org
Cc: linux-usb@vger.kernel.org, linux-renesas-soc@vger.kernel.org,
Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Subject: Re: [PATCH v2 0/2] usb: host: xhci: rcar: fix the quirks setting of XHCI_NO_64BIT_SUPPORT
Date: Wed, 01 Jun 2016 10:01:25 +0300 [thread overview]
Message-ID: <87bn3ll7ei.fsf@linux.intel.com> (raw)
In-Reply-To: <1464763483-6224-1-git-send-email-yoshihiro.shimoda.uh@renesas.com>
[-- Attachment #1: Type: text/plain, Size: 2499 bytes --]
Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> writes:
> I'm afraid but I found a regression of xhci-rcar in v4.7-rc1.
> This regression is caused by the following commit:
>
> commit b1c127ae990bccf0187d741c1695a61e54de1943
> Author: Felipe Balbi <felipe.balbi@linux.intel.com>
> Date: Fri Apr 22 13:17:16 2016 +0300
>
> usb: host: xhci: plat: make use of new methods in xhci_plat_priv
>
> Now that the code has been refactored enough,
> switching over to using ->plat_start() and
> ->init_quirk() becomes a very simple patch.
>
> After this patch, there are no further uses for
> xhci_plat_type_is() which will be removed in a
> follow-up patch.
>
> Acked-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
> Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
>
> < Overview >
> The regression is the quirks flag "XHCI_NO_64BIT_SUPPORT" will be overwritten
> by xhci_gen_setup(). Then, the driver will not work correctly.
>
> < Detail >
> Since the previous code will do the following, the quirks flag can be set:
>
> xhci_plat_setup()
> -> xhci_gen_setup(hcd, xhci_plat_quirks);
> -> xhci->quirks = quirks;
> -> get_quirks() [This is xhci_plat_quirks]
> -> xhci->quirks |= XHCI_NO_64BIT_SUPPORT
>
> However, after we applied the patch above, the quirks will disappear:
>
> xhci_plat_setup()
> -> xhci_priv_init_quirk();
> -> xhci_rcar_init_quirk();
> -> xhci->quirks |= XHCI_NO_64BIT_SUPPORT
> -> xhci_gen_setup(hcd, xhci_plat_quirks);
> -> xhci->quirks = quirks; <----------------- here
> -> get_quirks() [This is xhci_plat_quirks]
>
> So, I submitted incremental patches to resolve this issue like the followings:
>
> xhci_plat_setup()
> -> xhci_priv_init_quirk();
> -> xhci_rcar_init_quirk();
> -> xhci_gen_setup(hcd, xhci_plat_quirks);
> -> xhci->quirks = quirks;
> -> get_quirks() [This is xhci_plat_quirks]
> -> xhci->quirks |= priv->quirks (XHCI_NO_64BIT_SUPPORT)
isn't the following enough?
@@ -4886,7 +4886,7 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
xhci->hcc_params2 = readl(&xhci->cap_regs->hcc_params2);
xhci_print_registers(xhci);
- xhci->quirks = quirks;
+ xhci->quirks |= quirks;
get_quirks(dev, xhci);
--
balbi
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]
next prev parent reply other threads:[~2016-06-01 7:03 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-01 6:44 [PATCH v2 0/2] usb: host: xhci: rcar: fix the quirks setting of XHCI_NO_64BIT_SUPPORT Yoshihiro Shimoda
2016-06-01 6:44 ` [PATCH v2 1/2] usb: host: xhci: plat: add ->quirks value for platform-specific Yoshihiro Shimoda
2016-06-01 6:44 ` [PATCH v2 2/2] usb: host: xhci: rcar: fix the quirks setting of XHCI_NO_64BIT_SUPPORT Yoshihiro Shimoda
2016-06-01 7:01 ` Felipe Balbi [this message]
2016-06-01 7:47 ` [PATCH v2 0/2] " Yoshihiro Shimoda
2016-06-01 7:49 ` Felipe Balbi
2016-06-01 11:41 ` Mathias Nyman
2016-06-02 4:53 ` Yoshihiro Shimoda
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=87bn3ll7ei.fsf@linux.intel.com \
--to=felipe.balbi@linux.intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mathias.nyman@intel.com \
--cc=yoshihiro.shimoda.uh@renesas.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 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.