From: "Christian A. Ehrhardt" <lk@c--e.de>
To: HaoTien Hsu <haotienh@nvidia.com>
Cc: "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"Heikki Krogerus" <heikki.krogerus@linux.intel.com>,
"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
"Sing-Han Chen" <singhanc@nvidia.com>,
"Utkarsh Patel" <utkarsh.h.patel@intel.com>,
"Jon Hunter" <jonathanh@nvidia.com>,
"Wayne Chang" <waynec@nvidia.com>, "WK Tsai" <wtsai@nvidia.com>
Subject: Re: [PATCH CFT] usb: ucsi_ccg: Fix command completion handling
Date: Thu, 29 Feb 2024 21:13:25 +0100 [thread overview]
Message-ID: <ZeDlZZ694gCPF43l@cae.in-ulm.de> (raw)
In-Reply-To: <4c61b43c-1dd0-4f8a-b65f-48752b1cc439@nvidia.com>
Hi Haotien,
On Thu, Feb 29, 2024 at 07:18:44AM +0000, HaoTien Hsu wrote:
> On 2/15/24 20:03, Christian A. Ehrhardt wrote:
> > External email: Use caution opening links or attachments
> >
> >
> > Hi Greg,
> >
> > On Thu, Feb 15, 2024 at 12:07:20PM +0100, Greg Kroah-Hartman wrote:
> >> On Thu, Feb 15, 2024 at 11:10:24AM +0100, Christian A. Ehrhardt wrote:
> >>> In case of a spurious or otherwise delayed interrupt
> >>> it is possible that CCI still reports the previous completion.
> >>> For this reason the UCSI spec provides different completion
> >>> bits for normal commands and for UCSI_ACK_CC_CI.
> >>>
> >>> Only complete a sync command if the correct completion bit
> >>> is set.
> >>>
> >>> This should avoid the need to clear out CCI before starting
> >>> a command. Thus remove this code.
> >>>
> >>> Signed-off-by: Christian A. Ehrhardt <lk@c--e.de>
> >>> Fixes: e32fd989ac1c ("usb: typec: ucsi: ccg: Move to the new API")
> >>
> >> What does "CFT" in your subject line mean?
> >
> > It's supposed to mean "Call For Testers". More info in the
> > "Additional Information" section of the original mail.
> >
> > I think the change is necessary and good but I do not have the HW
> > to test it.
> >
> > I did test a similar change for ucsi_acpi.c that got merged and this
> > is the ping for ucsi_ccg.c people that they probably need this, too.
> >
> > regards Christian
> >
> >
>
> Hi Christian,
>
> If we don't clean the CCI cache in ucsi_ccg_async_write(), there might
> be a potential problem when the driver is polling the results.
>
> In ucsi_init(), we may get EPROBE_DEFER from ucsi_register_port().
> Then it does ucsi_reset_ppm() before returning the error code, and we
> will get UCSI_CCI_RESET_COMPLETE and store it in the CCI cache.
> If we don't clean the cache, when the UCSI driver calls ucsi_init()
> again, then in ucsi_reset_ppm(), it will get UCSI_CCI_RESET_COMPLETE
> from the CCI cache instantly.
> Then the driver will run the next UCSI commands when the HW is not
> completely reset.
Thanks, I indeed did not think the reset case completely through.
However, the real bugfix is in the other hunk of the diff and this
is a genuine bugfix on its own. I found that the corresponding
diff was neccessary for ucsi_acpi.c. Should I resend without the
CCI cleaning?
Thanks Christian
prev parent reply other threads:[~2024-02-29 20:23 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-15 10:10 [PATCH CFT] usb: ucsi_ccg: Fix command completion handling Christian A. Ehrhardt
2024-02-15 11:07 ` Greg Kroah-Hartman
2024-02-15 12:03 ` Christian A. Ehrhardt
2024-02-29 7:18 ` HaoTien Hsu
2024-02-29 20:13 ` Christian A. Ehrhardt [this message]
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=ZeDlZZ694gCPF43l@cae.in-ulm.de \
--to=lk@c--e.de \
--cc=andriy.shevchenko@linux.intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=haotienh@nvidia.com \
--cc=heikki.krogerus@linux.intel.com \
--cc=jonathanh@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=singhanc@nvidia.com \
--cc=u.kleine-koenig@pengutronix.de \
--cc=utkarsh.h.patel@intel.com \
--cc=waynec@nvidia.com \
--cc=wtsai@nvidia.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.