From 506cdd778b001d7586dbf87beaf92b2c134305e3 Mon Sep 17 00:00:00 2001 From: Dzmitry Sankouski 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