Re: [PATCH v2] platform/chrome: cros_ec_typec: Check for EC device

From: Prashant Malani
Date: Tue Feb 01 2022 - 13:30:01 EST


Hi Alyssa,

On Tue, Feb 1, 2022 at 4:17 AM Alyssa Ross <hi@xxxxxxxxx> wrote:
>
> Hi Prashant,
>
> On Wed, Jan 26, 2022 at 11:08:14PM +0000, Prashant Malani wrote:
> > Hi Alyssa,
> >
> > On Jan 26 23:04, Alyssa Ross wrote:
> > > On Wed, Jan 26, 2022 at 07:02:20PM +0000, Prashant Malani wrote:
> > > > The Type C ACPI device on older Chromebooks is not generated correctly
> > > > (since their EC firmware doesn't support the new commands required). In
> > > > such cases, the crafted ACPI device doesn't have an EC parent, and it is
> > > > therefore not useful (it shouldn't be generated in the first place since
> > > > the EC firmware doesn't support any of the Type C commands).
> > > >
> > > > To handle devices which use these older firmware revisions, check for
> > > > the parent EC device handle, and fail the probe if it's not found.
> > > >
> > > > Fixes: fdc6b21e2444 ("platform/chrome: Add Type C connector class driver")
> > > > Reported-by: Alyssa Ross <hi@xxxxxxxxx>
> > > > Reviewed-by: Tzung-Bi Shih <tzungbi@xxxxxxxxxx>
> > > > Signed-off-by: Prashant Malani <pmalani@xxxxxxxxxxxx>
> > > > ---
> > > > Hi Alyssa, could you kindly test this with your existing setup? Thanks!
> > >
> > > Hi Prashant, I'm happy to test, but I'm on vacation until the end of the
> > > week so probably won't get a chance before Monday.
> >
> > No worries, whenever you get the chance is fine.
> >
> > >
> > > I'm guessing I should be testing with latest upstream coreboot (now that
> > > your fix there has been applied)?
> >
> > You should use the coreboot with which you discovered the crash, so the
> > one which *doesn't* contain the fix.
>
> I applied this patch to Linux 5.17-rc2 and tested with the
> coreboot_tiano-eve-mrchromebox-20210806.rom firmware.
>
> The Oops has been replaced with
> "cros-ec-typec: GOOG0014:00: couldn't find parent EC device".
> My laptop now reboots correctly — the hang on reboot is gone.
>
> The cros_ec_typec driver ends up being loaded, but no devices are bound
> to it. This differs from the behaviour with upstream coreboot
> (cabf9e33a7), where cros_ec_typec does not end up being loaded.
>
> Assuming all that's the intended behaviour:

Yep, that's WAI. Thanks a lot for testing this, and yes, we'll be sure
to reach out
for future help with validating changes.

Best regards,