On 07/04/2025 18:59, Stephan Gerhold wrote:
Simplify the board code by using the new BUTTON_CMD functionality, instead
of implementing this separately using C code. This allows disabling or
customizing this functionality if wanted.

Signed-off-by: Stephan Gerhold <stephan.gerh...@linaro.org>
---
  board/qualcomm/dragonboard410c/dragonboard410c.c   | 22 ----------------------
  board/qualcomm/dragonboard410c/dragonboard410c.env |  2 ++
  configs/dragonboard410c_defconfig                  |  2 +-
  3 files changed, 3 insertions(+), 23 deletions(-)

diff --git a/board/qualcomm/dragonboard410c/dragonboard410c.c 
b/board/qualcomm/dragonboard410c/dragonboard410c.c
index 
697e3c9b08b5c874912eb66ff4f0b3d32deaae01..4698b9d5e3e47a9b0389d9f6bafab9dd6db56a41
 100644
--- a/board/qualcomm/dragonboard410c/dragonboard410c.c
+++ b/board/qualcomm/dragonboard410c/dragonboard410c.c
@@ -51,28 +51,6 @@ static void msm_generate_mac_addr(u8 *mac)
        put_unaligned_be32(msm_board_serial(), &mac[2]);
  }
-/* Check for vol- button - if pressed - stop autoboot */
-int misc_init_r(void)
-{
-       struct udevice *btn;
-       int ret;
-       enum button_state_t state;
-
-       ret = button_get_by_label("vol_down", &btn);
-       if (ret < 0) {
-               printf("Couldn't find power button!\n");
-               return ret;
-       }
-
-       state = button_get_state(btn);
-       if (state == BUTTON_ON) {
-               env_set("preboot", "setenv preboot; run fastboot");
-               printf("vol_down pressed - Starting fastboot.\n");
-       }
-
-       return 0;
-}
-
  int qcom_late_init(void)
  {
        char serial[16];
diff --git a/board/qualcomm/dragonboard410c/dragonboard410c.env 
b/board/qualcomm/dragonboard410c/dragonboard410c.env
index 
71f929b646cc305cf5223cd3462fe2350bc8093e..38399d65c640ee18261529ee3101b268700fa004
 100644
--- a/board/qualcomm/dragonboard410c/dragonboard410c.env
+++ b/board/qualcomm/dragonboard410c/dragonboard410c.env
@@ -2,3 +2,5 @@
  initrd_high=0xffffffffffffffff
  fastboot=fastboot -l $fastboot_addr_r usb 0
  boot_targets=usb mmc1 mmc0 pxe
+button_cmd_0_name=vol_down
+button_cmd_0=run fastboot
diff --git a/configs/dragonboard410c_defconfig 
b/configs/dragonboard410c_defconfig
index 
414dda6778c95eb3fdcd6ef522d8c7d0ef9219fa..449d48a3c004117b832ad620d49beb681a9bda68
 100644
--- a/configs/dragonboard410c_defconfig
+++ b/configs/dragonboard410c_defconfig
@@ -14,6 +14,7 @@ CONFIG_OF_LIBFDT_OVERLAY=y
  CONFIG_SYS_LOAD_ADDR=0x80080000
  CONFIG_IDENT_STRING="\nQualcomm-DragonBoard 410C"
  CONFIG_REMAKE_ELF=y
+CONFIG_BUTTON_CMD=y
  CONFIG_FIT=y
  CONFIG_BOOTSTD_FULL=y
  CONFIG_OF_BOARD_SETUP=y
@@ -22,7 +23,6 @@ CONFIG_SYS_CBSIZE=512
  CONFIG_SYS_PBSIZE=548
  # CONFIG_DISPLAY_CPUINFO is not set
  # CONFIG_DISPLAY_BOARDINFO is not set
-CONFIG_MISC_INIT_R=y
  CONFIG_SYS_PROMPT="dragonboard410c => "
  CONFIG_CMD_MD5SUM=y
  CONFIG_CMD_MEMINFO=y


Reviewed-by: Neil Armstrong <neil.armstr...@linaro.org>

Reply via email to