1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd 4 */ 5 6 #include <common.h> 7 #include <bidram.h> 8 #include <console.h> 9 #include <sysmem.h> 10 #include <asm/arch/hotkey.h> 11 12 DECLARE_GLOBAL_DATA_PTR; 13 14 #define CTRL_B 0x02 15 #define CTRL_D 0x04 16 #define CTRL_F 0x06 17 #define CTRL_M 0x0d 18 19 bool is_hotkey(enum hotkey_t id) 20 { 21 switch (id) { 22 case HK_BROM_DNL: 23 return gd->console_evt == CTRL_B; 24 case HK_FASTBOOT: 25 return gd->console_evt == CTRL_F; 26 case HK_ROCKUSB_DNL: 27 return gd->console_evt == CTRL_D; 28 case HK_SYSMEM: 29 return gd->console_evt == CTRL_M; 30 default: 31 break; 32 } 33 34 return false; 35 } 36 37 void hotkey_run(enum hotkey_t id) 38 { 39 switch ((id)) { 40 case HK_SYSMEM: 41 if (gd->console_evt == CTRL_M) { 42 bidram_dump(); 43 sysmem_dump(); 44 } 45 break; 46 default: 47 break; 48 } 49 } 50