diff mbox series

[v2] platform/chrome: chromeos_acpi: support official HID GOOG0016

Message ID 20230728065438.4026629-1-tzungbi@kernel.org
State New
Headers show
Series [v2] platform/chrome: chromeos_acpi: support official HID GOOG0016 | expand

Commit Message

Tzung-Bi Shih July 28, 2023, 6:54 a.m. UTC
Support official HID GOOG0016 for ChromeOS ACPI (see [1]).

[1]: https://crrev.com/c/2266713

Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
---
Changes from v1[2]:
- Preserve the PNP ID GGL0001 for backward compatible to older firmwares.
- Modify commit title and message accordingly.

[2]: https://patchwork.kernel.org/project/chrome-platform/patch/20230728014256.3836298-1-tzungbi@kernel.org/

 .../ABI/testing/sysfs-driver-chromeos-acpi    | 30 +++++++++----------
 .../acpi/chromeos-acpi-device.rst             |  5 ++--
 drivers/platform/chrome/chromeos_acpi.c       |  2 +-
 3 files changed, 18 insertions(+), 19 deletions(-)

Comments

Tzung-Bi Shih July 31, 2023, 2:49 a.m. UTC | #1
On Fri, Jul 28, 2023 at 12:49:07PM +0500, Muhammad Usama Anjum wrote:
> On 7/28/23 11:54 AM, Tzung-Bi Shih wrote:
> > Support official HID GOOG0016 for ChromeOS ACPI (see [1]).
> > 
> > [1]: https://crrev.com/c/2266713
> > 
> > Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
> Looks good other than the documentation.
> 
> Reviewed-by: Muhammad Usama Anjum <usama.anjum@collabora.com>

I didn't attach the R-b tag in v3
(https://patchwork.kernel.org/project/chrome-platform/patch/20230731024214.908235-1-tzungbi@kernel.org/).
Please review the documentation again.

> > --- a/Documentation/ABI/testing/sysfs-driver-chromeos-acpi
> > +++ b/Documentation/ABI/testing/sysfs-driver-chromeos-acpi
> > @@ -1,4 +1,4 @@
> > -What:		/sys/bus/platform/devices/GGL0001:*/BINF.2
> > +What:		/sys/bus/platform/devices/GOOG0016:*/BINF.2
> Probably just replace the GGL0001:* with G* here and define the G* can be
> GGL0001:* or GOOG0016:*.

Fix it in v3 by appending a new line for "GOOG0016".

> > --- a/Documentation/firmware-guide/acpi/chromeos-acpi-device.rst
> > +++ b/Documentation/firmware-guide/acpi/chromeos-acpi-device.rst
> > @@ -5,9 +5,8 @@ Chrome OS ACPI Device
> >  =====================
> >  
> >  Hardware functionality specific to Chrome OS is exposed through a Chrome OS ACPI device.
> > -The plug and play ID of a Chrome OS ACPI device is GGL0001. GGL is a valid PNP ID of Google.
> > -PNP ID can be used with the ACPI devices according to the guidelines. The following ACPI
> > -objects are supported:
> > +The plug and play ID of a Chrome OS ACPI device is GGL0001 and the hardware ID is
> > +GOOG0016.  The following ACPI objects are supported:
> Looks good. Probably GOOG0016 is HID which has higher preference over
> GGL0001 which is CID if both are defined in firmware?

Yes, I also guess so.
Tzung-Bi Shih July 31, 2023, 2:50 a.m. UTC | #2
On Fri, Jul 28, 2023 at 08:03:50AM -0700, Guenter Roeck wrote:
> On Thu, Jul 27, 2023 at 11:55 PM Tzung-Bi Shih <tzungbi@kernel.org> wrote:
> > --- a/Documentation/ABI/testing/sysfs-driver-chromeos-acpi
> > +++ b/Documentation/ABI/testing/sysfs-driver-chromeos-acpi
> > @@ -1,4 +1,4 @@
> > -What:          /sys/bus/platform/devices/GGL0001:*/BINF.2
> > +What:          /sys/bus/platform/devices/GOOG0016:*/BINF.2
> 
> Doesn't the description mean that both sysfs directories might be seen
> in the field ?
> If so, replacing one with the other would be wrong.

Fix it in v3
(https://patchwork.kernel.org/project/chrome-platform/patch/20230731024214.908235-1-tzungbi@kernel.org/)
by appending a new line for "GOOG0016".
diff mbox series

Patch

diff --git a/Documentation/ABI/testing/sysfs-driver-chromeos-acpi b/Documentation/ABI/testing/sysfs-driver-chromeos-acpi
index c308926e1568..8e8a5d6610b8 100644
--- a/Documentation/ABI/testing/sysfs-driver-chromeos-acpi
+++ b/Documentation/ABI/testing/sysfs-driver-chromeos-acpi
@@ -1,4 +1,4 @@ 
-What:		/sys/bus/platform/devices/GGL0001:*/BINF.2
+What:		/sys/bus/platform/devices/GOOG0016:*/BINF.2
 Date:		May 2022
 KernelVersion:	5.19
 Description:
@@ -9,7 +9,7 @@  Description:
 		1  Rewritable firmware.
 		== ===============================
 
-What:		/sys/bus/platform/devices/GGL0001:*/BINF.3
+What:		/sys/bus/platform/devices/GOOG0016:*/BINF.3
 Date:		May 2022
 KernelVersion:	5.19
 Description:
@@ -22,7 +22,7 @@  Description:
 		3  Netboot (factory installation only).
 		== =====================================
 
-What:		/sys/bus/platform/devices/GGL0001:*/CHSW
+What:		/sys/bus/platform/devices/GOOG0016:*/CHSW
 Date:		May 2022
 KernelVersion:	5.19
 Description:
@@ -37,28 +37,28 @@  Description:
 		512  Firmware write protection was disabled.
 		==== ===========================================
 
-What:		/sys/bus/platform/devices/GGL0001:*/FMAP
+What:		/sys/bus/platform/devices/GOOG0016:*/FMAP
 Date:		May 2022
 KernelVersion:	5.19
 Description:
 		Returns physical memory address of the start of the main
 		processor firmware flashmap.
 
-What:		/sys/bus/platform/devices/GGL0001:*/FRID
+What:		/sys/bus/platform/devices/GOOG0016:*/FRID
 Date:		May 2022
 KernelVersion:	5.19
 Description:
 		Returns firmware version for the read-only portion of the
 		main processor firmware.
 
-What:		/sys/bus/platform/devices/GGL0001:*/FWID
+What:		/sys/bus/platform/devices/GOOG0016:*/FWID
 Date:		May 2022
 KernelVersion:	5.19
 Description:
 		Returns firmware version for the rewritable portion of the
 		main processor firmware.
 
-What:		/sys/bus/platform/devices/GGL0001:*/GPIO.X/GPIO.0
+What:		/sys/bus/platform/devices/GOOG0016:*/GPIO.X/GPIO.0
 Date:		May 2022
 KernelVersion:	5.19
 Description:
@@ -72,7 +72,7 @@  Description:
 		256 to 511  Debug header GPIO 0 to GPIO 255.
 		=========== ==================================
 
-What:		/sys/bus/platform/devices/GGL0001:*/GPIO.X/GPIO.1
+What:		/sys/bus/platform/devices/GOOG0016:*/GPIO.X/GPIO.1
 Date:		May 2022
 KernelVersion:	5.19
 Description:
@@ -83,26 +83,26 @@  Description:
 		1  Signal is active high.
 		== =======================
 
-What:		/sys/bus/platform/devices/GGL0001:*/GPIO.X/GPIO.2
+What:		/sys/bus/platform/devices/GOOG0016:*/GPIO.X/GPIO.2
 Date:		May 2022
 KernelVersion:	5.19
 Description:
 		Returns the GPIO number on the specified GPIO
 		controller.
 
-What:		/sys/bus/platform/devices/GGL0001:*/GPIO.X/GPIO.3
+What:		/sys/bus/platform/devices/GOOG0016:*/GPIO.X/GPIO.3
 Date:		May 2022
 KernelVersion:	5.19
 Description:
 		Returns name of the GPIO controller.
 
-What:		/sys/bus/platform/devices/GGL0001:*/HWID
+What:		/sys/bus/platform/devices/GOOG0016:*/HWID
 Date:		May 2022
 KernelVersion:	5.19
 Description:
 		Returns hardware ID for the Chromebook.
 
-What:		/sys/bus/platform/devices/GGL0001:*/MECK
+What:		/sys/bus/platform/devices/GOOG0016:*/MECK
 Date:		May 2022
 KernelVersion:	5.19
 Description:
@@ -112,7 +112,7 @@  Description:
 		Engine firmware has not changed. If Management Engine is not
 		present, or if the firmware was unable to read the extended registers, this buffer size can be zero.
 
-What:		/sys/bus/platform/devices/GGL0001:*/VBNV.0
+What:		/sys/bus/platform/devices/GOOG0016:*/VBNV.0
 Date:		May 2022
 KernelVersion:	5.19
 Description:
@@ -121,14 +121,14 @@  Description:
 		(that is, 'offset = 0' is the byte following the 14 bytes of
 		clock data).
 
-What:		/sys/bus/platform/devices/GGL0001:*/VBNV.1
+What:		/sys/bus/platform/devices/GOOG0016:*/VBNV.1
 Date:		May 2022
 KernelVersion:	5.19
 Description:
 		Return the size in bytes of the verified boot non-volatile
 		storage block.
 
-What:		/sys/bus/platform/devices/GGL0001:*/VDAT
+What:		/sys/bus/platform/devices/GOOG0016:*/VDAT
 Date:		May 2022
 KernelVersion:	5.19
 Description:
diff --git a/Documentation/firmware-guide/acpi/chromeos-acpi-device.rst b/Documentation/firmware-guide/acpi/chromeos-acpi-device.rst
index f37fc90ce340..89419e116413 100644
--- a/Documentation/firmware-guide/acpi/chromeos-acpi-device.rst
+++ b/Documentation/firmware-guide/acpi/chromeos-acpi-device.rst
@@ -5,9 +5,8 @@  Chrome OS ACPI Device
 =====================
 
 Hardware functionality specific to Chrome OS is exposed through a Chrome OS ACPI device.
-The plug and play ID of a Chrome OS ACPI device is GGL0001. GGL is a valid PNP ID of Google.
-PNP ID can be used with the ACPI devices according to the guidelines. The following ACPI
-objects are supported:
+The plug and play ID of a Chrome OS ACPI device is GGL0001 and the hardware ID is
+GOOG0016.  The following ACPI objects are supported:
 
 .. flat-table:: Supported ACPI Objects
    :widths: 1 2
diff --git a/drivers/platform/chrome/chromeos_acpi.c b/drivers/platform/chrome/chromeos_acpi.c
index 50d8a4d4352d..1cc01d893ada 100644
--- a/drivers/platform/chrome/chromeos_acpi.c
+++ b/drivers/platform/chrome/chromeos_acpi.c
@@ -235,9 +235,9 @@  static int chromeos_acpi_device_probe(struct platform_device *pdev)
 	return 0;
 }
 
-/* GGL is valid PNP ID of Google. PNP ID can be used with the ACPI devices. */
 static const struct acpi_device_id chromeos_device_ids[] = {
 	{ "GGL0001", 0 },
+	{ "GOOG0016", 0 },
 	{}
 };
 MODULE_DEVICE_TABLE(acpi, chromeos_device_ids);