[{"id":3672721,"web_url":"http://patchwork.ozlabs.org/comment/3672721/","msgid":"<ac5t5XozmzN9oq96@ashevche-desk.local>","list_archive_url":null,"date":"2026-04-02T13:23:49","subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","submitter":{"id":8583,"url":"http://patchwork.ozlabs.org/api/people/8583/","name":"Andy Shevchenko","email":"andriy.shevchenko@linux.intel.com"},"content":"On Thu, Apr 02, 2026 at 02:54:25PM +0200, Bartosz Golaszewski wrote:\n> First let me repeat the problem statement:\n> \n> ==\n> \n> GPIO software node lookup should rely exclusively on matching the\n> addresses of the referenced firmware nodes. I tried to enforce it with\n> commit e5d527be7e69 (\"gpio: swnode: don't use the swnode's name as the\n> key for GPIO lookup\") but it broke existing users who abuse the software\n> node mechanism by creating \"dummy\" software nodes named after the device\n> they want to get GPIOs from but never attaching them to the actual GPIO\n> devices. They rely on the current behavior of GPIOLIB where it will match\n> the label of the GPIO controller against the name of the software node\n> and does not require a true link.\n> \n> x86-android-tablets driver is one of the abusers in that it creates\n> dummy software nodes for baytrail and cherryview GPIO controllers but\n> they don't really reference these devices. Before we can reapply\n> e5d527be7e69 and support matching by fwnode address exclusively, we need\n> to convert all the users to using actual fwnode references.\n> \n> ==\n> \n> Now for the new approach:\n> \n> Now with the recent patches I sent or plan to send out, it turns out\n> that almost all existing users of software node lookup can easily have\n> the software node's representing the GPIO controllers attached to their\n> target devices as their primary firmware node. The remaining complex\n> cases are: pcengines-apuv2 and geode-common but in the first case we\n> have control over the creation of the GPIO device - we can assign it a\n> firmware node - and in the second case, we deal with an MFD driver so\n> can export the cell's software node in a header.\n> \n> The only remaining use-case where we need to reference a GPIO controller\n> described in ACPI from a software node is the x86-android-tablets\n> driver. In this case, I think it no longer makes sense to propose a new\n> generic interface. Instead, I'd like to propose to keep it as a\n> driver-specific quirk.\n> \n> This series proposes the following changes:\n> 1. Switch to returning -ENXIO if we try to resolve a reference to\n> a software node that's not registered as a firmware node yet to\n> differentiate it from other situations in which we return -ENOENT.\n> 2. In GPIO core: return -EPROBE_DEFER from swnode lookup if\n> fwnode_get_reference_args() returns -ENXIO as an unregistered software\n> node is not much different from the situation where there's a firmware\n> node not backed by a device yet.\n> 3. Export the acpi_bus_type symbol. It's already available in the\n> acpi_bus.h header but it's not available to loadable modules.\n\nNowadays we don't do that but export the dev_is_acpi() or something similar if\nit's not yet available and to_acpi_dev(). (Names are derived from the existing\npattern, they might be need to be adjusted, dunno.) See how PNP does that.\nNote, I haven't read the patches yet, just a quick comment.\n\n> 4. Finally: implement support for dynamic assignment of secondary\n> firmware nodes in the x86-android-tablets driver. More details on how\n> it's approached are in the relevant commit message.\n> \n> Merging strategy: I'd like to propose queing patches 1-3 independently\n> through their respective trees: driver core, GPIO and ACPI. The final\n> patch would make its way upstream after v7.1-rc1. I would probably\n> extend it to convert the driver to using more devres interfaces too at\n> this point.","headers":{"Return-Path":"\n <linux-gpio+bounces-34590-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256\n header.s=Intel header.b=TEJx1aux;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=104.64.211.4; helo=sin.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34590-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=\"TEJx1aux\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=192.198.163.8","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=linux.intel.com"],"Received":["from sin.lore.kernel.org (sin.lore.kernel.org [104.64.211.4])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmjQ13Qxbz1yCs\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 00:29:45 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sin.lore.kernel.org (Postfix) with ESMTP id 008263081FF7\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  2 Apr 2026 13:24:26 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 2DCCA308F07;\n\tThu,  2 Apr 2026 13:23:59 +0000 (UTC)","from mgamail.intel.com (mgamail.intel.com [192.198.163.8])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 72D872ED17B;\n\tThu,  2 Apr 2026 13:23:56 +0000 (UTC)","from fmviesa010.fm.intel.com ([10.60.135.150])\n  by fmvoesa102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 02 Apr 2026 06:23:56 -0700","from amilburn-desk.amilburn-desk (HELO localhost) ([10.245.245.31])\n  by fmviesa010-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 02 Apr 2026 06:23:51 -0700"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775136238; cv=none;\n b=Uuky24kqxDJUEK45xaPCQGerzovVuGxDSK5Vrcx7obNdMHFso9gzildUIjkaA22MKTIZVQFc1IMykoNm2NM/8UyD/xbpYYehMf67nT6CLY9GGLyB9srLrxAkIKYLu9C9LRojyA2dDfTLShJgmwLl4/Q5UncCfSa0R8/VqxN7n3w=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775136238; c=relaxed/simple;\n\tbh=edjl+8j9o62SXBHpmkircuLpVvzEO7MK2bsQthUrnIA=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=rcbAT3pZp1RqP++VZu0/Saye4JtzRIK2rLg0iw7Vy90y7tAiBg/rWTABAlVtt+CV6txfpcb7C0RBdc0sk/2j4oOBy76qCkOsSQTML7H/BhOCk2HJlBnW037BhUTRgy+iwAh9g6ZPFE0qbdeic70GQKwGcAL6HB3cvM71fDAWo3I=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com;\n spf=pass smtp.mailfrom=linux.intel.com;\n dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=TEJx1aux; arc=none smtp.client-ip=192.198.163.8","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n  t=1775136237; x=1806672237;\n  h=date:from:to:cc:subject:message-id:references:\n   mime-version:in-reply-to;\n  bh=edjl+8j9o62SXBHpmkircuLpVvzEO7MK2bsQthUrnIA=;\n  b=TEJx1aux2F5U9IYPitrApdhwM59WNC5AEV/9Ex3V0HgAS4K2462+gz1O\n   8wPlULW2flPNEjNzJNDqAB+PXp/louT06QmhIGv2sbaYeoMuN4FBH2rIt\n   SJMc4JMFo3JOygfoHNn/f1qAlbcxCtWSy1NbpNRDrUtSOx/SJ3dZHXsCN\n   Zbm42q3uaZVT3lC0cxxQbpKOHq1+7GciRj5/DqOsrJX0r9EA2XdCcYj3a\n   Lrbzfm1qar/4ItbCnvkUufCLl+2qfc/LqOQmhdaeTvNJX16nH8+RWNcND\n   opCW8QuM2UdxDeQL6Zz8SZA5WB9RslI3Zm+joAv03epseNLkGootergnZ\n   g==;","X-CSE-ConnectionGUID":["ptbgPT/WQCmGbpW8yM3SpQ==","8wTr4JB5QyarixZf+Zqgtw=="],"X-CSE-MsgGUID":["vP292jZNR4iBmv4jnemyVg==","Q9CfvC6/S/av/mHQCN7Qvg=="],"X-IronPort-AV":["E=McAfee;i=\"6800,10657,11746\"; a=\"93776951\"","E=Sophos;i=\"6.23,155,1770624000\";\n   d=\"scan'208\";a=\"93776951\"","E=Sophos;i=\"6.23,155,1770624000\";\n   d=\"scan'208\";a=\"222616208\""],"X-ExtLoop1":"1","Date":"Thu, 2 Apr 2026 16:23:49 +0300","From":"Andy Shevchenko <andriy.shevchenko@linux.intel.com>","To":"Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>","Cc":"Daniel Scally <djrscally@gmail.com>,\n Heikki Krogerus <heikki.krogerus@linux.intel.com>,\n Sakari Ailus <sakari.ailus@linux.intel.com>,\n Greg Kroah-Hartman <gregkh@linuxfoundation.org>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>, Danilo Krummrich <dakr@kernel.org>,\n Mika Westerberg <mika.westerberg@linux.intel.com>,\n Andy Shevchenko <andy@kernel.org>, Linus Walleij <linusw@kernel.org>,\n Hans de Goede <hansg@kernel.org>,\n Ilpo =?iso-8859-1?q?J=E4rvinen?= <ilpo.jarvinen@linux.intel.com>,\n Dmitry Torokhov <dmitry.torokhov@gmail.com>, Len Brown <lenb@kernel.org>,\n linux-acpi@vger.kernel.org, driver-core@lists.linux.dev,\n linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,\n platform-driver-x86@vger.kernel.org, brgl@kernel.org","Subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","Message-ID":"<ac5t5XozmzN9oq96@ashevche-desk.local>","References":"<20260402-baytrail-real-swnode-v2-0-6f5054a4cc07@oss.qualcomm.com>","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","In-Reply-To":"\n <20260402-baytrail-real-swnode-v2-0-6f5054a4cc07@oss.qualcomm.com>","Organization":"Intel Finland Oy - BIC 0357606-4 - c/o Alberga Business Park, 6\n krs, Bertel Jungin Aukio 5, 02600 Espoo"}},{"id":3672730,"web_url":"http://patchwork.ozlabs.org/comment/3672730/","msgid":"<CAMRc=McR+S9LCHmDjAS6Wn=SrNvq5Ojr-w1qeLsGNJ+L39pbrw@mail.gmail.com>","list_archive_url":null,"date":"2026-04-02T13:35:24","subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","submitter":{"id":92191,"url":"http://patchwork.ozlabs.org/api/people/92191/","name":"Bartosz Golaszewski","email":"brgl@kernel.org"},"content":"On Thu, Apr 2, 2026 at 3:23 PM Andy Shevchenko\n<andriy.shevchenko@linux.intel.com> wrote:\n>\n> > 3. Export the acpi_bus_type symbol. It's already available in the\n> > acpi_bus.h header but it's not available to loadable modules.\n>\n> Nowadays we don't do that but export the dev_is_acpi() or something similar if\n> it's not yet available and to_acpi_dev(). (Names are derived from the existing\n> pattern, they might be need to be adjusted, dunno.) See how PNP does that.\n> Note, I haven't read the patches yet, just a quick comment.\n>\n\nMaybe I should have said why I do it. It's to register a notifier call\non ACPI bus events. Is there a better way to do this?\n\nBart","headers":{"Return-Path":"\n <linux-gpio+bounces-34591-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=skcYctrt;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c15:e001:75::12fc:5321; helo=sin.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34591-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=\"skcYctrt\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=10.30.226.201"],"Received":["from sin.lore.kernel.org (sin.lore.kernel.org\n [IPv6:2600:3c15:e001:75::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmjj22tv7z1yCs\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 00:42:46 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sin.lore.kernel.org (Postfix) with ESMTP id 6728030028ED\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  2 Apr 2026 13:35:40 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 4ED20313298;\n\tThu,  2 Apr 2026 13:35:38 +0000 (UTC)","from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org\n [10.30.226.201])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 122E830B50F\n\tfor <linux-gpio@vger.kernel.org>; Thu,  2 Apr 2026 13:35:37 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPSA id D6BEAC4AF09\n\tfor <linux-gpio@vger.kernel.org>; Thu,  2 Apr 2026 13:35:37 +0000 (UTC)","by mail-lj1-f181.google.com with SMTP id\n 38308e7fff4ca-3878de20527so8011641fa.3\n        for <linux-gpio@vger.kernel.org>;\n Thu, 02 Apr 2026 06:35:37 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775136938; cv=none;\n b=alpDCeHKC8iMValOrolJhEQiW2mo8Vrd8olkAhQ7e7XmzmRYAUDLSRBC96FC0NH9VKQr52yfpr2wKuyM7ZNTeiPA5T+qZi0wJr9KOAptVEToF426nyMcaaefWR2z7KUwyXY/0tZjzPHIzA9DUsTGQyOrnUemd+eB1/dvZwpOV9A=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775136938; c=relaxed/simple;\n\tbh=7uEYQL7HD9/Dkdn1yxfoKID/JvNmDVrxwOtZ1tVhHI4=;\n\th=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject:\n\t To:Cc:Content-Type;\n b=jtdDWUgW0UvLb1DtSFcDs2+3UBTNk3X9Rr2NztwoVXT4Vl7M8MD40C3z759xQRQSMMs5oiMPa6GKdqXChzoJHRzmqnwdi1SJM4sDH3fVHiGXTB8Mi7ELpRuOGW2nMH8CXFH43WeJVQanqd+/GA2ni4E2WJAMr8H6sakUephH4XI=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=skcYctrt; arc=none smtp.client-ip=10.30.226.201","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1775136937;\n\tbh=7uEYQL7HD9/Dkdn1yxfoKID/JvNmDVrxwOtZ1tVhHI4=;\n\th=References:In-Reply-To:From:Date:Subject:To:Cc:From;\n\tb=skcYctrt2MM7OmL1A3amxb8BYZSXVzPGIfr/zsQG8fia7FInDmSWGKVcub3pzmuDv\n\t e6dt6GcuybRP1I73fCFh5+f0Im9WIOP6h4Dp/b6FPxNu0S1Yu1l46+DvLqV4JpGb/u\n\t 72XqO374H7fva6orAyRcK84YY6suMdGaPTY7KIzbPMFsoUKtoUls4lq3h0OS7gasc/\n\t TpI1ibpGuq4lY8be3GtElSTR84ODNqDcMnc2LJPVFMyMQooK9OVgewRNxjH8LnjwVb\n\t 97FLY+e525bmUUrbSXYPzR1m8ClDRuiybmfsH81lhGBuikdSyU/KaxfMhjp2w0zDjC\n\t uEDuq9FnBbWAQ==","X-Forwarded-Encrypted":"i=1;\n AJvYcCUqclyvma86KkqB5Jh/BwjEWU1A538QZXkJT33SB6cFEZNsRRvJgetjOxql9fMbJHn7YFSIkHrVWKAG@vger.kernel.org","X-Gm-Message-State":"AOJu0YwL6/SmhF/ONBqXBQHicsm1OrLIrlQmraM/LewaukE0+mOs9WU9\n\tE4PIqRmj9hIhaw3+M9/t8mAlyWatK+r9oZ7Mfa8CoUHoB3MHEYL2g0t20I2HB/OOdhwTyJifYzl\n\t/0QYfGHC1Y7E7oFiVDZoDbvlbs8ZlxsNYXFDvovc+Ug==","X-Received":"by 2002:a05:651c:438e:20b0:38a:4de2:8807 with SMTP id\n 38308e7fff4ca-38cc305253bmr23362071fa.18.1775136936479; Thu, 02 Apr 2026\n 06:35:36 -0700 (PDT)","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","References":"<20260402-baytrail-real-swnode-v2-0-6f5054a4cc07@oss.qualcomm.com>\n <ac5t5XozmzN9oq96@ashevche-desk.local>","In-Reply-To":"<ac5t5XozmzN9oq96@ashevche-desk.local>","From":"Bartosz Golaszewski <brgl@kernel.org>","Date":"Thu, 2 Apr 2026 15:35:24 +0200","X-Gmail-Original-Message-ID":"\n <CAMRc=McR+S9LCHmDjAS6Wn=SrNvq5Ojr-w1qeLsGNJ+L39pbrw@mail.gmail.com>","X-Gm-Features":"AQROBzCueRALrTZuDx_r_Y8DgGoZK4uCubDxSqHkQnTQ6s5JA8TFv9V9OgZrdQY","Message-ID":"\n <CAMRc=McR+S9LCHmDjAS6Wn=SrNvq5Ojr-w1qeLsGNJ+L39pbrw@mail.gmail.com>","Subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","To":"Andy Shevchenko <andriy.shevchenko@linux.intel.com>","Cc":"Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>,\n  Daniel Scally <djrscally@gmail.com>,\n Heikki Krogerus <heikki.krogerus@linux.intel.com>,\n  Sakari Ailus <sakari.ailus@linux.intel.com>,\n  Greg Kroah-Hartman <gregkh@linuxfoundation.org>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>,  Danilo Krummrich <dakr@kernel.org>,\n Mika Westerberg <mika.westerberg@linux.intel.com>,\n  Andy Shevchenko <andy@kernel.org>, Linus Walleij <linusw@kernel.org>,\n Hans de Goede <hansg@kernel.org>,\n =?utf-8?q?Ilpo_J=C3=A4rvinen?= <ilpo.jarvinen@linux.intel.com>,\n  Dmitry Torokhov <dmitry.torokhov@gmail.com>, Len Brown <lenb@kernel.org>,\n linux-acpi@vger.kernel.org,  driver-core@lists.linux.dev,\n linux-kernel@vger.kernel.org,  linux-gpio@vger.kernel.org,\n platform-driver-x86@vger.kernel.org","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable"}},{"id":3672741,"web_url":"http://patchwork.ozlabs.org/comment/3672741/","msgid":"<ac5zhZAyiwbUwzWo@ashevche-desk.local>","list_archive_url":null,"date":"2026-04-02T13:47:49","subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","submitter":{"id":8583,"url":"http://patchwork.ozlabs.org/api/people/8583/","name":"Andy Shevchenko","email":"andriy.shevchenko@linux.intel.com"},"content":"On Thu, Apr 02, 2026 at 03:35:24PM +0200, Bartosz Golaszewski wrote:\n> On Thu, Apr 2, 2026 at 3:23 PM Andy Shevchenko\n> <andriy.shevchenko@linux.intel.com> wrote:\n> >\n> > > 3. Export the acpi_bus_type symbol. It's already available in the\n> > > acpi_bus.h header but it's not available to loadable modules.\n> >\n> > Nowadays we don't do that but export the dev_is_acpi() or something similar if\n> > it's not yet available and to_acpi_dev(). (Names are derived from the existing\n> > pattern, they might be need to be adjusted, dunno.) See how PNP does that.\n> > Note, I haven't read the patches yet, just a quick comment.\n> \n> Maybe I should have said why I do it. It's to register a notifier call\n> on ACPI bus events. Is there a better way to do this?\n\nAFAIU there shouldn't be pure ACPI devices, they are companions to the real\nones. Can we simply attach to the normal device notifier and check if the\ncompanion is what we are looking for? Also since it's specific to that driver\nand you know what the platforms you are looking for, why can't we hook\nsomething into drivers/acpi/x86/lpss.c?","headers":{"Return-Path":"\n <linux-gpio+bounces-34593-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256\n header.s=Intel header.b=ZKglh+tN;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34593-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=\"ZKglh+tN\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=192.198.163.8","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=linux.intel.com"],"Received":["from tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmjzp49gyz1yCs\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 00:55:34 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id C782E314109C\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  2 Apr 2026 13:48:06 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id CA2393DFC73;\n\tThu,  2 Apr 2026 13:47:59 +0000 (UTC)","from mgamail.intel.com (mgamail.intel.com [192.198.163.8])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 7ECD33CBE7D;\n\tThu,  2 Apr 2026 13:47:56 +0000 (UTC)","from fmviesa007.fm.intel.com ([10.60.135.147])\n  by fmvoesa102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 02 Apr 2026 06:47:55 -0700","from amilburn-desk.amilburn-desk (HELO localhost) ([10.245.245.31])\n  by fmviesa007-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 02 Apr 2026 06:47:51 -0700"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775137679; cv=none;\n b=nXkeHx49rJFmdYSJRKkn9G903p+SOVDxZfJgp00os3zWh88AEudJHVk9+VJjRfsdsFLDq/g41Hs8KIOlm7wSxUvWc24FwjBKcWg2OFHBiTDoCkd3P31zYj6a/BogTkCAAkSKy10oXoAd9Hq2NdWQPyYKgBbO6dJ1gCsJ8yL+24E=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775137679; c=relaxed/simple;\n\tbh=GRKjzT+ZDuM23HB0D2ydJq5Mdn2LGg+Wk5/aTsc+gcM=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=oPVcOxLjK6+HFNw7p4XqAGPpaoUbkwTZ78V2Vw8w3cI0WCHiJCFo7td/Ra4Q6UHJxyE8FJfxdsN4q6R72BYij3PVTNPfsgPj+vqT02ikgv7ZdBDivENa6sYZjEWIdHb42KLZVOpnrbZoiXgoqB69F0d7OR7RK9EDWDEe8/A5gkQ=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com;\n spf=pass smtp.mailfrom=linux.intel.com;\n dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=ZKglh+tN; arc=none smtp.client-ip=192.198.163.8","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n  t=1775137677; x=1806673677;\n  h=date:from:to:cc:subject:message-id:references:\n   mime-version:content-transfer-encoding:in-reply-to;\n  bh=GRKjzT+ZDuM23HB0D2ydJq5Mdn2LGg+Wk5/aTsc+gcM=;\n  b=ZKglh+tNafyoIRQxRwA8h7Rg113DcpNcQTCLAR3rMlM/IcpuYNWtk8+v\n   CzZtGl1ErTdoOa4hE1JPO83cWHVQ7szBOO0TBK59fRiicxti9J8o7QD3x\n   JeBJKkQsHDI74FQaEY6jrlrZpxDvEkOvkOg4LUwbtvpIYogDQRlH0EQlP\n   Ri69wyEQP8gjr0r6A2upug5nGr76vPxzJTcGlSAbfL5r9NFO68boFRcDk\n   44oKiJQPnsDyC9iaOnp4CAIKN4e4Zj7Mjqijw1893r863mpd7QqBxaOVP\n   TQ+OEqJlGqk46fCVeK6K6RZ0XPI1w3eihubazgf9Ii0os/GgCnf8pZrRl\n   A==;","X-CSE-ConnectionGUID":["1spP+flwQ3mJz3Y0RZZgaw==","bkj4Upz4QEyqCYqU7DL7Og=="],"X-CSE-MsgGUID":["Egh7DFLERNWNBaXfT2S9kA==","kBEvkSL+TgmqbbxElzaL1g=="],"X-IronPort-AV":["E=McAfee;i=\"6800,10657,11746\"; a=\"93779317\"","E=Sophos;i=\"6.23,155,1770624000\";\n   d=\"scan'208\";a=\"93779317\"","E=Sophos;i=\"6.23,155,1770624000\";\n   d=\"scan'208\";a=\"223707397\""],"X-ExtLoop1":"1","Date":"Thu, 2 Apr 2026 16:47:49 +0300","From":"Andy Shevchenko <andriy.shevchenko@linux.intel.com>","To":"Bartosz Golaszewski <brgl@kernel.org>","Cc":"Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>,\n Daniel Scally <djrscally@gmail.com>,\n Heikki Krogerus <heikki.krogerus@linux.intel.com>,\n Sakari Ailus <sakari.ailus@linux.intel.com>,\n Greg Kroah-Hartman <gregkh@linuxfoundation.org>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>, Danilo Krummrich <dakr@kernel.org>,\n Mika Westerberg <mika.westerberg@linux.intel.com>,\n Andy Shevchenko <andy@kernel.org>, Linus Walleij <linusw@kernel.org>,\n Hans de Goede <hansg@kernel.org>,\n Ilpo =?iso-8859-1?q?J=E4rvinen?= <ilpo.jarvinen@linux.intel.com>,\n Dmitry Torokhov <dmitry.torokhov@gmail.com>, Len Brown <lenb@kernel.org>,\n linux-acpi@vger.kernel.org, driver-core@lists.linux.dev,\n linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,\n platform-driver-x86@vger.kernel.org","Subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","Message-ID":"<ac5zhZAyiwbUwzWo@ashevche-desk.local>","References":"<20260402-baytrail-real-swnode-v2-0-6f5054a4cc07@oss.qualcomm.com>\n <ac5t5XozmzN9oq96@ashevche-desk.local>\n <CAMRc=McR+S9LCHmDjAS6Wn=SrNvq5Ojr-w1qeLsGNJ+L39pbrw@mail.gmail.com>","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"\n <CAMRc=McR+S9LCHmDjAS6Wn=SrNvq5Ojr-w1qeLsGNJ+L39pbrw@mail.gmail.com>","Organization":"Intel Finland Oy - BIC 0357606-4 - c/o Alberga Business Park, 6\n krs, Bertel Jungin Aukio 5, 02600 Espoo"}},{"id":3672771,"web_url":"http://patchwork.ozlabs.org/comment/3672771/","msgid":"<CAMRc=McJFNp15jnrehGLHsmFRfBpRQoppmdB_51whzJUQ-5ZLw@mail.gmail.com>","list_archive_url":null,"date":"2026-04-02T15:03:10","subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","submitter":{"id":92191,"url":"http://patchwork.ozlabs.org/api/people/92191/","name":"Bartosz Golaszewski","email":"brgl@kernel.org"},"content":"On Thu, Apr 2, 2026 at 3:47 PM Andy Shevchenko\n<andriy.shevchenko@linux.intel.com> wrote:\n>\n> On Thu, Apr 02, 2026 at 03:35:24PM +0200, Bartosz Golaszewski wrote:\n> > On Thu, Apr 2, 2026 at 3:23 PM Andy Shevchenko\n> > <andriy.shevchenko@linux.intel.com> wrote:\n> > >\n> > > > 3. Export the acpi_bus_type symbol. It's already available in the\n> > > > acpi_bus.h header but it's not available to loadable modules.\n> > >\n> > > Nowadays we don't do that but export the dev_is_acpi() or something similar if\n> > > it's not yet available and to_acpi_dev(). (Names are derived from the existing\n> > > pattern, they might be need to be adjusted, dunno.) See how PNP does that.\n> > > Note, I haven't read the patches yet, just a quick comment.\n> >\n> > Maybe I should have said why I do it. It's to register a notifier call\n> > on ACPI bus events. Is there a better way to do this?\n>\n> AFAIU there shouldn't be pure ACPI devices, they are companions to the real\n> ones. Can we simply attach to the normal device notifier and check if the\n> companion is what we are looking for? Also since it's specific to that driver\n> and you know what the platforms you are looking for, why can't we hook\n> something into drivers/acpi/x86/lpss.c?\n>\n\nThe ACPI companions seem to only ever be added once and never removed\n- unlike platform devices. This is why I prefer to check the ACPI bus.\n\nAs for lpss.c - what do you sugest exactly because at first glance I'm\nnot quite sure what's there to hook up?\n\nBart","headers":{"Return-Path":"\n <linux-gpio+bounces-34595-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=TAzaKBk5;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c15:e001:75::12fc:5321; helo=sin.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34595-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=\"TAzaKBk5\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=10.30.226.201"],"Received":["from sin.lore.kernel.org (sin.lore.kernel.org\n [IPv6:2600:3c15:e001:75::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmlWG2s5qz1yGH\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 02:04:26 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sin.lore.kernel.org (Postfix) with ESMTP id 44A033024208\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  2 Apr 2026 15:03:35 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id E409F3F0748;\n\tThu,  2 Apr 2026 15:03:24 +0000 (UTC)","from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org\n [10.30.226.201])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id A74ED207DF7\n\tfor <linux-gpio@vger.kernel.org>; Thu,  2 Apr 2026 15:03:24 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPSA id 884B8C2BCC6\n\tfor <linux-gpio@vger.kernel.org>; Thu,  2 Apr 2026 15:03:24 +0000 (UTC)","by mail-lf1-f48.google.com with SMTP id\n 2adb3069b0e04-5a2c9932781so764013e87.1\n        for <linux-gpio@vger.kernel.org>;\n Thu, 02 Apr 2026 08:03:24 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775142204; cv=none;\n b=mU4RDtXjHjGe83QZ5np9RvG1zxnoEGwPRlwOVY1Rpsdf1XIJpcPZbqwvq8KZ8/KNJwhLhYX42DhPc80U88kHepVTHG4A/sCwjhz/6K+Os6V68Xa0I9sSB1aogoS6TsNuUxroo+XJ63Y4yVJDf9JqTNQwPGUY/IoMoOAMg6X25N8=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775142204; c=relaxed/simple;\n\tbh=F4zhH6M3sP6/pIp7gAJGXFdabfzYRh9hex7KTF1/hgk=;\n\th=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject:\n\t To:Cc:Content-Type;\n b=PKrsnmWRdOv+S+0QHDLK2Ef0+sb6P67ejxAntRPckekceFC3T/pzJAu+dEa53FOc0Q87IrW67rJkCMv+26ulTo8wIP0tkypjznWnmgO5c/A0ojXDvvaG6q60i7XDPwH0cXpGl9U7te2+cs23RLososIBjZSSLyyoDtDNSbQyTvM=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=TAzaKBk5; arc=none smtp.client-ip=10.30.226.201","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1775142204;\n\tbh=F4zhH6M3sP6/pIp7gAJGXFdabfzYRh9hex7KTF1/hgk=;\n\th=References:In-Reply-To:From:Date:Subject:To:Cc:From;\n\tb=TAzaKBk5bQHEBAnoDbUHErPGXZrqeqWseRisq+qBPxAXpmtjCa/Es6/BTjCHNfocR\n\t XE0tH+MhdOYS5aqtuArK6aR4Ho7A/XpMrvpI8i0bz7uUIn6PbsJ3DAigAc1iMCTu0k\n\t v0M3NLt3KBRYEgupn6ici5UJ18Zqf9r3QCP5lR9vOUGq1MBGyC3hMf+o/beD+76xKa\n\t yFZDW5tbw4inyMJwlcwAYvzaO2RxtTIXXUBWsPVQEyVOlp2Kg5g0yDdemO7O00G5oJ\n\t /Xeg6GQoCrTPJvnqZ8dqelftFEBREBcy5ftGuZrnev05C+vlBNcXUMWyM+d4EmmSqE\n\t lEy6KOHRLFiWw==","X-Forwarded-Encrypted":"i=1;\n AJvYcCUZwJ5v/JZ0/bCDrd8LzO0CdtwtCIKDl1MWWjQyOqZxgcaPNBZWqSHzeNtrPOd3jxBs4KceUdmFgZhu@vger.kernel.org","X-Gm-Message-State":"AOJu0Yybz+inkqlm2HqnbBzO0ZglX5sNFWln+RstzFppbt8jyZ7Ux1+k\n\tlgSxulZ50xiBWM3jq0bUQZ8VRrwI+GUQfKrpPXupcYqssPlR7/YNKmTmVsPyDtbfSOlsamuIW1P\n\tW6HuF8UMwUan0aW4IBlbHgMvDsMmHs9ayS4PbsMfiSQ==","X-Received":"by 2002:a05:6512:3d9e:b0:5a2:c66a:d6d1 with SMTP id\n 2adb3069b0e04-5a2c8d78c78mr1121944e87.6.1775142202973; Thu, 02 Apr 2026\n 08:03:22 -0700 (PDT)","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","References":"<20260402-baytrail-real-swnode-v2-0-6f5054a4cc07@oss.qualcomm.com>\n <ac5t5XozmzN9oq96@ashevche-desk.local>\n <CAMRc=McR+S9LCHmDjAS6Wn=SrNvq5Ojr-w1qeLsGNJ+L39pbrw@mail.gmail.com>\n <ac5zhZAyiwbUwzWo@ashevche-desk.local>","In-Reply-To":"<ac5zhZAyiwbUwzWo@ashevche-desk.local>","From":"Bartosz Golaszewski <brgl@kernel.org>","Date":"Thu, 2 Apr 2026 17:03:10 +0200","X-Gmail-Original-Message-ID":"\n <CAMRc=McJFNp15jnrehGLHsmFRfBpRQoppmdB_51whzJUQ-5ZLw@mail.gmail.com>","X-Gm-Features":"AQROBzC8kXfF8m1woyIDTDDAIkrV3H5UZACDhpRJ_7Yt9ZM71rXQFfvjqh5OmSk","Message-ID":"\n <CAMRc=McJFNp15jnrehGLHsmFRfBpRQoppmdB_51whzJUQ-5ZLw@mail.gmail.com>","Subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","To":"Andy Shevchenko <andriy.shevchenko@linux.intel.com>","Cc":"Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>,\n  Daniel Scally <djrscally@gmail.com>,\n Heikki Krogerus <heikki.krogerus@linux.intel.com>,\n  Sakari Ailus <sakari.ailus@linux.intel.com>,\n  Greg Kroah-Hartman <gregkh@linuxfoundation.org>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>,  Danilo Krummrich <dakr@kernel.org>,\n Mika Westerberg <mika.westerberg@linux.intel.com>,\n  Andy Shevchenko <andy@kernel.org>, Linus Walleij <linusw@kernel.org>,\n Hans de Goede <hansg@kernel.org>,\n =?utf-8?q?Ilpo_J=C3=A4rvinen?= <ilpo.jarvinen@linux.intel.com>,\n  Dmitry Torokhov <dmitry.torokhov@gmail.com>, Len Brown <lenb@kernel.org>,\n linux-acpi@vger.kernel.org,  driver-core@lists.linux.dev,\n linux-kernel@vger.kernel.org,  linux-gpio@vger.kernel.org,\n platform-driver-x86@vger.kernel.org","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable"}},{"id":3672797,"web_url":"http://patchwork.ozlabs.org/comment/3672797/","msgid":"<ac6TwAL3fQrlpef2@ashevche-desk.local>","list_archive_url":null,"date":"2026-04-02T16:05:20","subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","submitter":{"id":8583,"url":"http://patchwork.ozlabs.org/api/people/8583/","name":"Andy Shevchenko","email":"andriy.shevchenko@linux.intel.com"},"content":"On Thu, Apr 02, 2026 at 05:03:10PM +0200, Bartosz Golaszewski wrote:\n> On Thu, Apr 2, 2026 at 3:47 PM Andy Shevchenko\n> <andriy.shevchenko@linux.intel.com> wrote:\n> > On Thu, Apr 02, 2026 at 03:35:24PM +0200, Bartosz Golaszewski wrote:\n> > > On Thu, Apr 2, 2026 at 3:23 PM Andy Shevchenko\n> > > <andriy.shevchenko@linux.intel.com> wrote:\n\n...\n\n> > > > > 3. Export the acpi_bus_type symbol. It's already available in the\n> > > > > acpi_bus.h header but it's not available to loadable modules.\n> > > >\n> > > > Nowadays we don't do that but export the dev_is_acpi() or something similar if\n> > > > it's not yet available and to_acpi_dev(). (Names are derived from the existing\n> > > > pattern, they might be need to be adjusted, dunno.) See how PNP does that.\n> > > > Note, I haven't read the patches yet, just a quick comment.\n> > >\n> > > Maybe I should have said why I do it. It's to register a notifier call\n> > > on ACPI bus events. Is there a better way to do this?\n> >\n> > AFAIU there shouldn't be pure ACPI devices, they are companions to the real\n> > ones. Can we simply attach to the normal device notifier and check if the\n> > companion is what we are looking for? Also since it's specific to that driver\n> > and you know what the platforms you are looking for, why can't we hook\n> > something into drivers/acpi/x86/lpss.c?\n> \n> The ACPI companions seem to only ever be added once and never removed\n> - unlike platform devices. This is why I prefer to check the ACPI bus.\n> \n> As for lpss.c - what do you sugest exactly because at first glance I'm\n> not quite sure what's there to hook up?\n\nCan't we create / submit the software node of the given device (GPIO)\nwhen it's get created (as platform device)? That driver uses a notification\nwhen ACPI bus is scanned, that's what may trigger the software node creation\nand the other end will eventually see it.","headers":{"Return-Path":"\n <linux-gpio+bounces-34597-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256\n header.s=Intel header.b=TBfV5Ra0;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34597-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=\"TBfV5Ra0\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=192.198.163.16","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=linux.intel.com"],"Received":["from tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmn0p6kmjz1yGH\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 03:11:38 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id D62F53068338\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  2 Apr 2026 16:05:32 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id C06BF28642B;\n\tThu,  2 Apr 2026 16:05:30 +0000 (UTC)","from mgamail.intel.com (mgamail.intel.com [192.198.163.16])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 23DD82FFF8F;\n\tThu,  2 Apr 2026 16:05:28 +0000 (UTC)","from orviesa009.jf.intel.com ([10.64.159.149])\n  by fmvoesa110.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 02 Apr 2026 09:05:28 -0700","from amilburn-desk.amilburn-desk (HELO localhost) ([10.245.245.31])\n  by orviesa009-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 02 Apr 2026 09:05:23 -0700"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775145930; cv=none;\n b=bTcvTCrC+QcVSLhF66FrJpVLnU1YkhlHsvBKwQ5sl2B27Rr8VeJR/hZSyKwn2WWxuFat9KalebEJG81DrYo/+LSAU16pwGmBWnwunKvsy17NRuChAIAnpsjzO4JzVB+uF5rjqRTVgDNAaUzy2z14fUiOJWjJ6yKnpfAkcTvaNpQ=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775145930; c=relaxed/simple;\n\tbh=IODCawz8kcexRtKlj/yGaPPXqXPpD1zBkHmNkzRnqCc=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=pmaEd38Ci0kI2MZq/2hPENoz2Dmw2/waMT9aDQNNQoQw+6OvKUq+9Xixb8AFqtSTgGn0yrZk1ECUIiRWx1Llu1YqMiSdmmpQ98wLLwdeIG269ak3ttVS+bXFAZaqc90Hr2pM0JUkqkod2yRA/3V7VP7AoAV5Px/KPXDxfW62jWk=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com;\n spf=pass smtp.mailfrom=linux.intel.com;\n dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=TBfV5Ra0; arc=none smtp.client-ip=192.198.163.16","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n  t=1775145929; x=1806681929;\n  h=date:from:to:cc:subject:message-id:references:\n   mime-version:content-transfer-encoding:in-reply-to;\n  bh=IODCawz8kcexRtKlj/yGaPPXqXPpD1zBkHmNkzRnqCc=;\n  b=TBfV5Ra0I+92u9sINodPHjWu1ZqGk5c+EOluiuRjiygXHGYW4BJkJbPA\n   XhNT7cQHZqhpol4fqo6dj4Vq5zBhmdp7UVVxB9dp5IvQ6tRy6LJmmzmZo\n   gMgKs53wMxavM35HMHTPAgcF5Il3AdZMCfCFvjfagLuIb0CMX69Eert1m\n   tUffP/T7qNnrdwUwQ90WL/3/iF5sXBOn0sqXioOaqXwthy+LZTCZTcURQ\n   18yJGaJDREVG2ZHSrnwB6A1Pvyr5zXDBk3K4ZL7yBhD/DnjFH+1CRewfo\n   4Y73qSF3vzGIBIBD7xxLowDRqu++rFG83QNhoxtVeXRO6CVcNNRINl1uR\n   w==;","X-CSE-ConnectionGUID":["RWkKSCMvSfyv8ulmt00mww==","nX2n9YhRQIiu0VLycGKtyQ=="],"X-CSE-MsgGUID":["mOCdQftDTDaRjG9gW+/WIA==","AvO1IF+FSPGsevXXqjehog=="],"X-IronPort-AV":["E=McAfee;i=\"6800,10657,11747\"; a=\"63759096\"","E=Sophos;i=\"6.23,156,1770624000\";\n   d=\"scan'208\";a=\"63759096\"","E=Sophos;i=\"6.23,156,1770624000\";\n   d=\"scan'208\";a=\"226886785\""],"X-ExtLoop1":"1","Date":"Thu, 2 Apr 2026 19:05:20 +0300","From":"Andy Shevchenko <andriy.shevchenko@linux.intel.com>","To":"Bartosz Golaszewski <brgl@kernel.org>","Cc":"Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>,\n Daniel Scally <djrscally@gmail.com>,\n Heikki Krogerus <heikki.krogerus@linux.intel.com>,\n Sakari Ailus <sakari.ailus@linux.intel.com>,\n Greg Kroah-Hartman <gregkh@linuxfoundation.org>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>, Danilo Krummrich <dakr@kernel.org>,\n Mika Westerberg <mika.westerberg@linux.intel.com>,\n Andy Shevchenko <andy@kernel.org>, Linus Walleij <linusw@kernel.org>,\n Hans de Goede <hansg@kernel.org>,\n Ilpo =?iso-8859-1?q?J=E4rvinen?= <ilpo.jarvinen@linux.intel.com>,\n Dmitry Torokhov <dmitry.torokhov@gmail.com>, Len Brown <lenb@kernel.org>,\n linux-acpi@vger.kernel.org, driver-core@lists.linux.dev,\n linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,\n platform-driver-x86@vger.kernel.org","Subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","Message-ID":"<ac6TwAL3fQrlpef2@ashevche-desk.local>","References":"<20260402-baytrail-real-swnode-v2-0-6f5054a4cc07@oss.qualcomm.com>\n <ac5t5XozmzN9oq96@ashevche-desk.local>\n <CAMRc=McR+S9LCHmDjAS6Wn=SrNvq5Ojr-w1qeLsGNJ+L39pbrw@mail.gmail.com>\n <ac5zhZAyiwbUwzWo@ashevche-desk.local>\n <CAMRc=McJFNp15jnrehGLHsmFRfBpRQoppmdB_51whzJUQ-5ZLw@mail.gmail.com>","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"\n <CAMRc=McJFNp15jnrehGLHsmFRfBpRQoppmdB_51whzJUQ-5ZLw@mail.gmail.com>","Organization":"Intel Finland Oy - BIC 0357606-4 - c/o Alberga Business Park, 6\n krs, Bertel Jungin Aukio 5, 02600 Espoo"}},{"id":3672799,"web_url":"http://patchwork.ozlabs.org/comment/3672799/","msgid":"<ac6Wv_l7UQ7e_Xu5@ashevche-desk.local>","list_archive_url":null,"date":"2026-04-02T16:18:07","subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","submitter":{"id":8583,"url":"http://patchwork.ozlabs.org/api/people/8583/","name":"Andy Shevchenko","email":"andriy.shevchenko@linux.intel.com"},"content":"On Thu, Apr 02, 2026 at 06:13:38PM +0200, Bartosz Golaszewski wrote:\n> On Thu, Apr 2, 2026 at 6:05 PM Andy Shevchenko\n> <andriy.shevchenko@linux.intel.com> wrote:\n> > On Thu, Apr 02, 2026 at 05:03:10PM +0200, Bartosz Golaszewski wrote:\n> > > On Thu, Apr 2, 2026 at 3:47 PM Andy Shevchenko\n> > > <andriy.shevchenko@linux.intel.com> wrote:\n> > > > On Thu, Apr 02, 2026 at 03:35:24PM +0200, Bartosz Golaszewski wrote:\n> > > > > On Thu, Apr 2, 2026 at 3:23 PM Andy Shevchenko\n> > > > > <andriy.shevchenko@linux.intel.com> wrote:\n\n...\n\n> > > > > > > 3. Export the acpi_bus_type symbol. It's already available in the\n> > > > > > > acpi_bus.h header but it's not available to loadable modules.\n> > > > > >\n> > > > > > Nowadays we don't do that but export the dev_is_acpi() or something similar if\n> > > > > > it's not yet available and to_acpi_dev(). (Names are derived from the existing\n> > > > > > pattern, they might be need to be adjusted, dunno.) See how PNP does that.\n> > > > > > Note, I haven't read the patches yet, just a quick comment.\n> > > > >\n> > > > > Maybe I should have said why I do it. It's to register a notifier call\n> > > > > on ACPI bus events. Is there a better way to do this?\n> > > >\n> > > > AFAIU there shouldn't be pure ACPI devices, they are companions to the real\n> > > > ones. Can we simply attach to the normal device notifier and check if the\n> > > > companion is what we are looking for? Also since it's specific to that driver\n> > > > and you know what the platforms you are looking for, why can't we hook\n> > > > something into drivers/acpi/x86/lpss.c?\n> > >\n> > > The ACPI companions seem to only ever be added once and never removed\n> > > - unlike platform devices. This is why I prefer to check the ACPI bus.\n> > >\n> > > As for lpss.c - what do you sugest exactly because at first glance I'm\n> > > not quite sure what's there to hook up?\n> >\n> > Can't we create / submit the software node of the given device (GPIO)\n> > when it's get created (as platform device)? That driver uses a notification\n> > when ACPI bus is scanned, that's what may trigger the software node creation\n> > and the other end will eventually see it.\n> \n> Yeah that would be awesome but you still need to export these software\n> nodes to the x86-android-tablets driver. I think it's better to keep\n> them in the driver as it's the only user and it's unlikely there'll be\n> more similar cases.\n\nAs I mentioned, the mentioned driver is a specific enumeration for the given\nplatform(s), it's the best place to keep things there related to LPSS island on\nthose platforms (SoCs). Exporting is fine as that driver makes the whole SoC\nsomewhat useful, otherwise it's just piece of x86 core which makes a little\nsense to have without the crucial peripheral drivers be enabled.","headers":{"Return-Path":"\n <linux-gpio+bounces-34599-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256\n header.s=Intel header.b=LlAb2Vtl;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c09:e001:a7::12fc:5321; helo=sto.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34599-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=\"LlAb2Vtl\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=192.198.163.17","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=linux.intel.com"],"Received":["from sto.lore.kernel.org (sto.lore.kernel.org\n [IPv6:2600:3c09:e001:a7::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmn8c1CHVz1yCs\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 03:18:24 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sto.lore.kernel.org (Postfix) with ESMTP id 8C5FA3027F4F\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  2 Apr 2026 16:18:20 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 7E93E3EF65A;\n\tThu,  2 Apr 2026 16:18:17 +0000 (UTC)","from mgamail.intel.com (mgamail.intel.com [192.198.163.17])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id EE6CF3C277E;\n\tThu,  2 Apr 2026 16:18:15 +0000 (UTC)","from orviesa002.jf.intel.com ([10.64.159.142])\n  by fmvoesa111.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 02 Apr 2026 09:18:16 -0700","from amilburn-desk.amilburn-desk (HELO localhost) ([10.245.245.31])\n  by orviesa002-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 02 Apr 2026 09:18:10 -0700"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775146697; cv=none;\n b=jS2iU8HEfv3fgMYodsqjNl9DSU7SKRNZMnfxq/vxtlrYoyoQimLAQVIbAV3ZsXLRJN6M0Q5bPMqwHX4b0D0S/xt+8kFP0OFnYk8QpFV760NtUVdEoNVRvavnZLRtODolfGySxkW/L0fwtNjz5oDqb1816N/XLxXKA1qeZO0J9Kg=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775146697; c=relaxed/simple;\n\tbh=cHA6HJwqPPWrU3IiFd6EZm2GFueXb6661Msyf/6n34o=;\n\th=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:\n\t Content-Type:Content-Disposition:In-Reply-To;\n b=qvzqUcFuOsANDpJCWOdx0CDuhjA6TbSyEwqcMA/CsvoOgkT0L1+kXh1QuPyINzmt/vnmrdS6B8bjadyulpUKsmLBFBfFAB2cBkMa5NVEVJdHoQ1D30er2y1iYynQr5nP6GJchR8msYlbjO3bpze36NMakfAfF7g/2svgSRHHayQ=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.intel.com;\n spf=pass smtp.mailfrom=linux.intel.com;\n dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com\n header.b=LlAb2Vtl; arc=none smtp.client-ip=192.198.163.17","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n  t=1775146696; x=1806682696;\n  h=date:from:to:cc:subject:message-id:references:\n   mime-version:content-transfer-encoding:in-reply-to;\n  bh=cHA6HJwqPPWrU3IiFd6EZm2GFueXb6661Msyf/6n34o=;\n  b=LlAb2VtlBq0egANIUEEh73QbIOLKdGI4o04NhVW0gSFjSQ6npjeNsmnj\n   Z/Oa9Eoncwf5VkL1RMkGU45izGZAz/29gJs8eBCGatoBkPgdmQn4hTbxq\n   y8rywrc97z4jaIc6Vdt06rafYAIMtpkuBJhfN3RfRXOd7L42mWr93qnN4\n   mo2eIjNk6WghIDSvllVTOJqmnMmGjwEhJeP+yHUEJPjIU96iajoj6kQOx\n   07a6q+T5N50b00uhYCqIRguyoH1r86eZubuusH9OvyGm8OVa8Z/vbR0N3\n   6U7CxMgytitIE1DXblKMBrnPMXr8PximwtOj4FGeMBxI/BOWeJOwHIuep\n   Q==;","X-CSE-ConnectionGUID":["Ua+6qOEpQ4GAEI2EVd1WoQ==","zIYpWhvPTOuar/VRNfLBrA=="],"X-CSE-MsgGUID":["k7w9/1usTP+QaPVMaQYD6A==","uj/mKnd3TkO9W9LABkoADQ=="],"X-IronPort-AV":["E=McAfee;i=\"6800,10657,11747\"; a=\"76103034\"","E=Sophos;i=\"6.23,156,1770624000\";\n   d=\"scan'208\";a=\"76103034\"","E=Sophos;i=\"6.23,156,1770624000\";\n   d=\"scan'208\";a=\"257500449\""],"X-ExtLoop1":"1","Date":"Thu, 2 Apr 2026 19:18:07 +0300","From":"Andy Shevchenko <andriy.shevchenko@linux.intel.com>","To":"Bartosz Golaszewski <brgl@kernel.org>","Cc":"Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>,\n Daniel Scally <djrscally@gmail.com>,\n Heikki Krogerus <heikki.krogerus@linux.intel.com>,\n Sakari Ailus <sakari.ailus@linux.intel.com>,\n Greg Kroah-Hartman <gregkh@linuxfoundation.org>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>, Danilo Krummrich <dakr@kernel.org>,\n Mika Westerberg <mika.westerberg@linux.intel.com>,\n Andy Shevchenko <andy@kernel.org>, Linus Walleij <linusw@kernel.org>,\n Hans de Goede <hansg@kernel.org>,\n Ilpo =?iso-8859-1?q?J=E4rvinen?= <ilpo.jarvinen@linux.intel.com>,\n Dmitry Torokhov <dmitry.torokhov@gmail.com>, Len Brown <lenb@kernel.org>,\n linux-acpi@vger.kernel.org, driver-core@lists.linux.dev,\n linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,\n platform-driver-x86@vger.kernel.org","Subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","Message-ID":"<ac6Wv_l7UQ7e_Xu5@ashevche-desk.local>","References":"<20260402-baytrail-real-swnode-v2-0-6f5054a4cc07@oss.qualcomm.com>\n <ac5t5XozmzN9oq96@ashevche-desk.local>\n <CAMRc=McR+S9LCHmDjAS6Wn=SrNvq5Ojr-w1qeLsGNJ+L39pbrw@mail.gmail.com>\n <ac5zhZAyiwbUwzWo@ashevche-desk.local>\n <CAMRc=McJFNp15jnrehGLHsmFRfBpRQoppmdB_51whzJUQ-5ZLw@mail.gmail.com>\n <ac6TwAL3fQrlpef2@ashevche-desk.local>\n <CAMRc=MdPfOB+xbHxP5rRfLmQ7Ue++Kb8iWaMU5hMZ6OvFqa01w@mail.gmail.com>","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"\n <CAMRc=MdPfOB+xbHxP5rRfLmQ7Ue++Kb8iWaMU5hMZ6OvFqa01w@mail.gmail.com>","Organization":"Intel Finland Oy - BIC 0357606-4 - c/o Alberga Business Park, 6\n krs, Bertel Jungin Aukio 5, 02600 Espoo"}},{"id":3672801,"web_url":"http://patchwork.ozlabs.org/comment/3672801/","msgid":"<CAMRc=MdPfOB+xbHxP5rRfLmQ7Ue++Kb8iWaMU5hMZ6OvFqa01w@mail.gmail.com>","list_archive_url":null,"date":"2026-04-02T16:13:38","subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","submitter":{"id":92191,"url":"http://patchwork.ozlabs.org/api/people/92191/","name":"Bartosz Golaszewski","email":"brgl@kernel.org"},"content":"On Thu, Apr 2, 2026 at 6:05 PM Andy Shevchenko\n<andriy.shevchenko@linux.intel.com> wrote:\n>\n> On Thu, Apr 02, 2026 at 05:03:10PM +0200, Bartosz Golaszewski wrote:\n> > On Thu, Apr 2, 2026 at 3:47 PM Andy Shevchenko\n> > <andriy.shevchenko@linux.intel.com> wrote:\n> > > On Thu, Apr 02, 2026 at 03:35:24PM +0200, Bartosz Golaszewski wrote:\n> > > > On Thu, Apr 2, 2026 at 3:23 PM Andy Shevchenko\n> > > > <andriy.shevchenko@linux.intel.com> wrote:\n>\n> ...\n>\n> > > > > > 3. Export the acpi_bus_type symbol. It's already available in the\n> > > > > > acpi_bus.h header but it's not available to loadable modules.\n> > > > >\n> > > > > Nowadays we don't do that but export the dev_is_acpi() or something similar if\n> > > > > it's not yet available and to_acpi_dev(). (Names are derived from the existing\n> > > > > pattern, they might be need to be adjusted, dunno.) See how PNP does that.\n> > > > > Note, I haven't read the patches yet, just a quick comment.\n> > > >\n> > > > Maybe I should have said why I do it. It's to register a notifier call\n> > > > on ACPI bus events. Is there a better way to do this?\n> > >\n> > > AFAIU there shouldn't be pure ACPI devices, they are companions to the real\n> > > ones. Can we simply attach to the normal device notifier and check if the\n> > > companion is what we are looking for? Also since it's specific to that driver\n> > > and you know what the platforms you are looking for, why can't we hook\n> > > something into drivers/acpi/x86/lpss.c?\n> >\n> > The ACPI companions seem to only ever be added once and never removed\n> > - unlike platform devices. This is why I prefer to check the ACPI bus.\n> >\n> > As for lpss.c - what do you sugest exactly because at first glance I'm\n> > not quite sure what's there to hook up?\n>\n> Can't we create / submit the software node of the given device (GPIO)\n> when it's get created (as platform device)? That driver uses a notification\n> when ACPI bus is scanned, that's what may trigger the software node creation\n> and the other end will eventually see it.\n>\n\nYeah that would be awesome but you still need to export these software\nnodes to the x86-android-tablets driver. I think it's better to keep\nthem in the driver as it's the only user and it's unlikely there'll be\nmore similar cases.\n\nBart","headers":{"Return-Path":"\n <linux-gpio+bounces-34598-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=dGIco+41;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.105.105.114; helo=tor.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34598-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=\"dGIco+41\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=10.30.226.201"],"Received":["from tor.lore.kernel.org (tor.lore.kernel.org [172.105.105.114])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmnBy0hQrz1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 03:20:26 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id A4BC73106832\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  2 Apr 2026 16:14:05 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 6824B3EF0D1;\n\tThu,  2 Apr 2026 16:13:52 +0000 (UTC)","from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org\n [10.30.226.201])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 29AEF3EE1E2\n\tfor <linux-gpio@vger.kernel.org>; Thu,  2 Apr 2026 16:13:51 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPSA id C0D99C19423\n\tfor <linux-gpio@vger.kernel.org>; Thu,  2 Apr 2026 16:13:51 +0000 (UTC)","by mail-lf1-f41.google.com with SMTP id\n 2adb3069b0e04-59e5aa4ca41so1271339e87.2\n        for <linux-gpio@vger.kernel.org>;\n Thu, 02 Apr 2026 09:13:51 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775146432; cv=none;\n b=mKVc7hlFuiZDS0u7IkDYcqLpU1Ifzr/DMvoll8uWnNh2NmzwDeD7de/RZTPWkjf9NStwi3j3aZANWg6w1OYKBYIMb8wIiv2zPZmZAhMsFQY+NH5XnIbEZ0PdLkFwTt8+0VohsS9zzWIkllb7wvZcWbejTSPG315BMBoqWGHzk5Y=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775146432; c=relaxed/simple;\n\tbh=bpaXyBJBrSPrLBRgiqnTKWHLNSU7a6K1w3cRWPI1mpY=;\n\th=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject:\n\t To:Cc:Content-Type;\n b=ESriRXtivKhIDODqxEn/bz/r75OcOKuWBxqpSqZME2NITT/86phw4OYWwmklKKNFVv/HX2V3yk89Iu9UfXIHemrOSk04XRm3e4yelXD0DUMqTmVUHR2oiLpkZiKYvHnRy05HHlB6zWXDjn/45e5Q5j41CDyUoGuH+S8rDr5MAHc=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=dGIco+41; arc=none smtp.client-ip=10.30.226.201","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1775146431;\n\tbh=bpaXyBJBrSPrLBRgiqnTKWHLNSU7a6K1w3cRWPI1mpY=;\n\th=References:In-Reply-To:From:Date:Subject:To:Cc:From;\n\tb=dGIco+41JQlUDDBpxGVO8r3l8xsVxmeFyWBiLQAcSbxWR6u9A/dwvNR1icSZT8O0k\n\t 9BCnn5OqYR6vI3tLqkKf0N9LegwvWz1A7dN+0cWFRjIcmctxsfP0bawL/xRcZBMR9Z\n\t 2vhZr4OpEc8HLiZZkjoeCNTSfBMMO+R2NCn3l2hy0qyFmaT8+xqJmShIEdUesUzL3w\n\t d5IKYjUzYZOrWsQ3s6PqF4rlV/l3yOSQR7v8/1il/kphvyrrZxq9GmYchB/1a+2q8K\n\t S7C06gtmCWokRfWDBDDJJKk/I70gKSyz7GxkNBF010dCI1L2hGPPzhGDEDd7rKGmN7\n\t r74/LsvRz9kiw==","X-Forwarded-Encrypted":"i=1;\n AJvYcCUCIySx2qfEYuhajqLLsWjsFa85DZPhgO5zI0TQvyaOpWAwByWKr1EDBxa3/UdgeJ4B8PCHkptCtyAG@vger.kernel.org","X-Gm-Message-State":"AOJu0YyZLwwjFDaSDbcJcBJjWGeK5AN4sr9NZxKjJmOjFjhGRQytMoZg\n\tWvKVCDxaaMuAoUCbv3FZFdOsbxUfgWpZo6Ef0wQCEunvGpXZvbwZK7hgD7BTQ7mPDbqGvAiChoD\n\tddcgDqVep/kCWzDwD0YG7uoPyARNAkh9JKpinuLc3wg==","X-Received":"by 2002:a05:6512:2245:b0:5a2:aa9e:514a with SMTP id\n 2adb3069b0e04-5a2c765207dmr1397100e87.17.1775146430480; Thu, 02 Apr 2026\n 09:13:50 -0700 (PDT)","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","References":"<20260402-baytrail-real-swnode-v2-0-6f5054a4cc07@oss.qualcomm.com>\n <ac5t5XozmzN9oq96@ashevche-desk.local>\n <CAMRc=McR+S9LCHmDjAS6Wn=SrNvq5Ojr-w1qeLsGNJ+L39pbrw@mail.gmail.com>\n <ac5zhZAyiwbUwzWo@ashevche-desk.local>\n <CAMRc=McJFNp15jnrehGLHsmFRfBpRQoppmdB_51whzJUQ-5ZLw@mail.gmail.com>\n <ac6TwAL3fQrlpef2@ashevche-desk.local>","In-Reply-To":"<ac6TwAL3fQrlpef2@ashevche-desk.local>","From":"Bartosz Golaszewski <brgl@kernel.org>","Date":"Thu, 2 Apr 2026 18:13:38 +0200","X-Gmail-Original-Message-ID":"\n <CAMRc=MdPfOB+xbHxP5rRfLmQ7Ue++Kb8iWaMU5hMZ6OvFqa01w@mail.gmail.com>","X-Gm-Features":"AQROBzDN--nJ03boWyopMUzSWNi-MrmE5jIFWCIeUFh6oEYVAABzLEK7KpFiZoA","Message-ID":"\n <CAMRc=MdPfOB+xbHxP5rRfLmQ7Ue++Kb8iWaMU5hMZ6OvFqa01w@mail.gmail.com>","Subject":"Re: [PATCH v2 0/4] platform/x86: x86-android-tablets: use real\n firmware node references with intel drivers","To":"Andy Shevchenko <andriy.shevchenko@linux.intel.com>","Cc":"Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>,\n  Daniel Scally <djrscally@gmail.com>,\n Heikki Krogerus <heikki.krogerus@linux.intel.com>,\n  Sakari Ailus <sakari.ailus@linux.intel.com>,\n  Greg Kroah-Hartman <gregkh@linuxfoundation.org>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>,  Danilo Krummrich <dakr@kernel.org>,\n Mika Westerberg <mika.westerberg@linux.intel.com>,\n  Andy Shevchenko <andy@kernel.org>, Linus Walleij <linusw@kernel.org>,\n Hans de Goede <hansg@kernel.org>,\n =?utf-8?q?Ilpo_J=C3=A4rvinen?= <ilpo.jarvinen@linux.intel.com>,\n  Dmitry Torokhov <dmitry.torokhov@gmail.com>, Len Brown <lenb@kernel.org>,\n linux-acpi@vger.kernel.org,  driver-core@lists.linux.dev,\n linux-kernel@vger.kernel.org,  linux-gpio@vger.kernel.org,\n platform-driver-x86@vger.kernel.org","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable"}}]