Re: [PATCH 0/6] platform/x86: x86-android-tablets: fix Arizona and Crystal Cove GPIO lookups

From: Dmitry Torokhov

Date: Mon Aug 31 2026 - 08:52:30 EST


On Mon, Aug 31, 2026 at 11:42:06AM +0200, Hans de Goede wrote:
> Hi,
>
> On 30-Aug-26 1:15 PM, Dmitry Torokhov wrote:
> > When gpiolib dropped name-against-label matching in favor of firmware node
> > identity mapping, lookups referencing unattached software nodes (such as
> > arizona and gpio_crystalcove in x86-android-tablets) stopped working.
> >
> > This series fixes the lookups and cleans up redundant software node
> > registrations on Lenovo tablets:
> > - Point Arizona GPIO property entries directly to the codec device software
> > node, which is attached to the parent device.
> > - Hold a device reference in gpio_secondary_fwnode_init() to ensure safety
> > during devres action teardown.
> > - Generalize gpio_secondary_fwnode_init() to accept a node group argument
> > and use it to attach crystalcove_gpiochip_node as a secondary firmware
> > node to INT33FD:00 on Lenovo Yoga Tab 2 models.
> > - Drop redundant swnode group registrations on Lenovo Yoga Tab 3 and
> > Yoga Tab 2 models where codec software nodes are already registered when
> > attached to their respective devices.
> >
> > Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
>
> So I've given this a test on a Yoga Tablet 3 (yt3) tablet yesterday and
> there everything works.
>
> Then I also tested this on a Lenovo Yoga Tablet 2 1380 since the YT3 does
> not cover the crystal_cove GPIO case and there things do not work.
>
> It seems that trying to get the crystal_cove GPIOs indefinetely returns
> -EPROBE_DEFER. I'll try to debug thus further this evening.

I wonder if the patch below will help.

Thanks.

--
Dmitry