100 lines
2.8 KiB
Diff
100 lines
2.8 KiB
Diff
|
From 506cdd778b001d7586dbf87beaf92b2c134305e3 Mon Sep 17 00:00:00 2001
|
||
|
From: Dzmitry Sankouski <dsankouski@gmail.com>
|
||
|
Date: Thu, 1 Dec 2022 20:15:24 +0300
|
||
|
Subject: [PATCH 5/6] starqltechn: use button-kbd driver for navigating boot
|
||
|
menu
|
||
|
|
||
|
---
|
||
|
arch/arm/dts/sdm845.dtsi | 4 +++
|
||
|
arch/arm/mach-snapdragon/init_sdm845.c | 45 --------------------------
|
||
|
configs/starqltechn_defconfig | 2 ++
|
||
|
3 files changed, 6 insertions(+), 45 deletions(-)
|
||
|
|
||
|
diff --git a/arch/arm/dts/sdm845.dtsi b/arch/arm/dts/sdm845.dtsi
|
||
|
index 607af277f8..4adf494218 100644
|
||
|
--- a/arch/arm/dts/sdm845.dtsi
|
||
|
+++ b/arch/arm/dts/sdm845.dtsi
|
||
|
@@ -63,6 +63,10 @@
|
||
|
status = "disabled";
|
||
|
};
|
||
|
|
||
|
+ button_kbd {
|
||
|
+ compatible = "button-kbd";
|
||
|
+ };
|
||
|
+
|
||
|
spmi@c440000 {
|
||
|
compatible = "qcom,spmi-pmic-arb";
|
||
|
reg = <0xc440000 0x1100>,
|
||
|
diff --git a/arch/arm/mach-snapdragon/init_sdm845.c b/arch/arm/mach-snapdragon/init_sdm845.c
|
||
|
index 1f22aee7f6..cbbe1d5c76 100644
|
||
|
--- a/arch/arm/mach-snapdragon/init_sdm845.c
|
||
|
+++ b/arch/arm/mach-snapdragon/init_sdm845.c
|
||
|
@@ -32,51 +32,6 @@ __weak int board_init(void)
|
||
|
/* Check for vol- and power buttons */
|
||
|
__weak int misc_init_r(void)
|
||
|
{
|
||
|
- struct udevice *pon;
|
||
|
- struct gpio_desc resin;
|
||
|
- int node, ret;
|
||
|
-
|
||
|
- ret = uclass_get_device_by_name(UCLASS_GPIO, "pm8998_pon@800", &pon);
|
||
|
- if (ret < 0) {
|
||
|
- printf("Failed to find PMIC pon node. Check device tree\n");
|
||
|
- return 0;
|
||
|
- }
|
||
|
-
|
||
|
- node = fdt_subnode_offset(gd->fdt_blob, dev_of_offset(pon),
|
||
|
- "key_vol_down");
|
||
|
- if (node < 0) {
|
||
|
- printf("Failed to find key_vol_down node. Check device tree\n");
|
||
|
- return 0;
|
||
|
- }
|
||
|
- if (gpio_request_by_name_nodev(offset_to_ofnode(node), "gpios", 0,
|
||
|
- &resin, 0)) {
|
||
|
- printf("Failed to request key_vol_down button.\n");
|
||
|
- return 0;
|
||
|
- }
|
||
|
- if (dm_gpio_get_value(&resin)) {
|
||
|
- env_set("key_vol_down", "1");
|
||
|
- printf("Volume down button pressed\n");
|
||
|
- } else {
|
||
|
- env_set("key_vol_down", "0");
|
||
|
- }
|
||
|
-
|
||
|
- node = fdt_subnode_offset(gd->fdt_blob, dev_of_offset(pon),
|
||
|
- "key_power");
|
||
|
- if (node < 0) {
|
||
|
- printf("Failed to find key_power node. Check device tree\n");
|
||
|
- return 0;
|
||
|
- }
|
||
|
- if (gpio_request_by_name_nodev(offset_to_ofnode(node), "gpios", 0,
|
||
|
- &resin, 0)) {
|
||
|
- printf("Failed to request key_power button.\n");
|
||
|
- return 0;
|
||
|
- }
|
||
|
- if (dm_gpio_get_value(&resin)) {
|
||
|
- env_set("key_power", "1");
|
||
|
- printf("Power button pressed\n");
|
||
|
- } else {
|
||
|
- env_set("key_power", "0");
|
||
|
- }
|
||
|
env_set_addr("relocaddr", gd->relocaddr);
|
||
|
|
||
|
return 0;
|
||
|
diff --git a/configs/starqltechn_defconfig b/configs/starqltechn_defconfig
|
||
|
index 995a623305..baaba6824f 100644
|
||
|
--- a/configs/starqltechn_defconfig
|
||
|
+++ b/configs/starqltechn_defconfig
|
||
|
@@ -10,6 +10,8 @@ CONFIG_SYS_LOAD_ADDR=0x80000000
|
||
|
CONFIG_FIT=y
|
||
|
CONFIG_FIT_VERBOSE=y
|
||
|
CONFIG_BOOTDELAY=5
|
||
|
+CONFIG_CMD_BOOTMENU=y
|
||
|
+CONFIG_DM_KEYBOARD=y
|
||
|
CONFIG_USE_PREBOOT=y
|
||
|
CONFIG_SAVE_PREV_BL_FDT_ADDR=y
|
||
|
CONFIG_SAVE_PREV_BL_INITRAMFS_START_ADDR=y
|
||
|
--
|
||
|
2.30.2
|
||
|
|