RE: [PATCH 0/2] Allow breaking up Thunderbolt/USB4 updates

From: Mario.Limonciello
Date: Mon Jun 22 2020 - 12:41:45 EST


> -----Original Message-----
> From: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
> Sent: Monday, June 22, 2020 11:38 AM
> To: Limonciello, Mario
> Cc: Andreas Noever; Michael Jamet; Yehezkel Bernat; linux-usb@xxxxxxxxxxxxxxx;
> linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH 0/2] Allow breaking up Thunderbolt/USB4 updates
>
>
> [EXTERNAL EMAIL]
>
> Hi Mario,
>
> On Mon, Jun 22, 2020 at 09:30:33AM -0500, Mario Limonciello wrote:
> > Currently updates to Thunderbolt and USB4 controllers are fully atomic
> > actions. When writing into the non-active NVM nothing gets flushed to
> > the hardware until authenticate is sent.
> >
> > There has been some desire to improve the perceived performance of these
> > updates, particularly for userland that may perform the update upon
> > a performance sensitive time like logging out.
> >
> > So allow userland to flush the image to hardware at runtime, and then
> > allow authenticating the image at another time.
> >
> > For the Dell WD19TB some specific hardware capability exists that allows
> > extending this to automatically complete the update when unplugged.
> > Export that functionality to userspace as well.
> >
> > This patch series is done relative thunderbolt.git/next.
>
> Thanks for the patch series. I wonder if you could base this on top of
> my "retimer NVM upgrade" series here (you are also Cc'd):
>
> https://lore.kernel.org/linux-usb/20200616135617.85752-1-
> mika.westerberg@xxxxxxxxxxxxxxx/
>
> That series moves some of the common NVM functionality into a separate
> file (nvm.c).

Sure thing. Do you by chance already have that on a public branch somewhere
that I can easily rebase it?

>
> > Mario Limonciello (2):
> > thunderbolt: Add support for separating the flush to SPI and
> > authenticate
> > thunderbolt: Add support for authenticate on disconnect
> >
> > .../ABI/testing/sysfs-bus-thunderbolt | 24 +++++-
> > drivers/thunderbolt/Makefile | 1 +
> > drivers/thunderbolt/eeprom.c | 2 +
> > drivers/thunderbolt/lc.c | 14 ++++
> > drivers/thunderbolt/quirks.c | 38 +++++++++
> > drivers/thunderbolt/switch.c | 81 +++++++++++++++----
> > drivers/thunderbolt/tb-quirks.h | 16 ++++
> > drivers/thunderbolt/tb.h | 4 +
> > drivers/thunderbolt/tb_regs.h | 1 +
> > 9 files changed, 162 insertions(+), 19 deletions(-)
> > create mode 100644 drivers/thunderbolt/quirks.c
> > create mode 100644 drivers/thunderbolt/tb-quirks.h
> >
> > --
> > 2.25.1