ipq40xx: chromium: Support Chromium "crossystem" GPIO tooling

ChromiumOS's vboot_reference tooling [1] provides convenient access to
various firmware and hardware details via its `crossystem` tool.
crossystem currently:
(1) relies on the v1 GPIO cdev API to read GPIOs; and
(2) expects gpio-line-names properties.

Enable the kernel config, and document a few pins for Google WiFi
devices.

I only go so far as to pull two relevant names out of the vendor device
tree. Others could perhaps be backfilled if the info is available and
useful.

[1] https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/HEAD/README

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16014
Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
Brian Norris 2023-08-18 18:53:58 -07:00 committed by Robert Marko
parent 16373d80df
commit 992afd2cab
2 changed files with 62 additions and 0 deletions

View File

@ -1,4 +1,5 @@
CONFIG_BLK_DEV_SD=y
CONFIG_GPIO_CDEV_V1=y
CONFIG_SCSI=y
CONFIG_SCSI_COMMON=y
CONFIG_SG_POOL=y

View File

@ -74,6 +74,67 @@
};
&tlmm {
gpio-line-names = "",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
/* AP_FLASH_WP_L is crossystem ABI. */
"AP_FLASH_WP_L" /* 53 */,
"",
"",
"",
/* RECOVERY_SW_L is crossystem ABI. */
"RECOVERY_SW_L" /* 57 */;
fw_pinmux: fw_pinmux {
wp {
pins = "gpio53";