summaryrefslogtreecommitdiff
authorfahui.feng <fahui.feng@amlogic.com>2018-10-31 07:53:04 (GMT)
committer fahui.feng <fahui.feng@amlogic.com>2018-10-31 07:56:57 (GMT)
commit77ea55364104338876e185bf848991a2bcd1a9df (patch)
treed355169eb4747aad6a1698603a407534005b31f3
parent686d817a2e10fee8c2bc600bc4f5879d84cbee8c (diff)
downloadcommon-77ea55364104338876e185bf848991a2bcd1a9df.zip
common-77ea55364104338876e185bf848991a2bcd1a9df.tar.gz
common-77ea55364104338876e185bf848991a2bcd1a9df.tar.bz2
reset: add RESET key function.[2/4]
bug:117348086 PD#169861:add RESET key function. 1.add CONFIG_SEI_RESET_KEY=y 2.change GPIO key to DPAD_DOWN Change-Id: If0bcccf7eb32726095c071e3420ab0e8a3ad172e
Diffstat
-rwxr-xr-x[-rw-r--r--]arch/arm64/boot/dts/amlogic/gxl_sei210_1g.dts6
-rwxr-xr-x[-rw-r--r--]arch/arm64/boot/dts/amlogic/gxl_sei210_2g.dts6
-rwxr-xr-xarch/arm64/configs/gxl_sei210_defconfig606
-rwxr-xr-x[-rw-r--r--]drivers/amlogic/input/keyboard/Kconfig6
-rwxr-xr-x[-rw-r--r--]drivers/amlogic/input/keyboard/gpio_keypad.c61
5 files changed, 679 insertions, 6 deletions
diff --git a/arch/arm64/boot/dts/amlogic/gxl_sei210_1g.dts b/arch/arm64/boot/dts/amlogic/gxl_sei210_1g.dts
index b341924..391d3c48 100644..100755
--- a/arch/arm64/boot/dts/amlogic/gxl_sei210_1g.dts
+++ b/arch/arm64/boot/dts/amlogic/gxl_sei210_1g.dts
@@ -18,7 +18,7 @@
/dts-v1/;
#include "mesongxl.dtsi"
-#include "partition_mbox_normal_sei32bit.dtsi"
+#include "partition_mbox_normal_P_32_sei.dtsi"
/ {
model = "Amlogic";
amlogic-dt-id = "gxl_sei210_1g";
@@ -740,8 +740,8 @@
status = "okay";
scan_period = <20>;
key_num = <1>;
- key_name = "bt-paring";
- key_code = <218>;
+ key_name = "DPAD_DOWN";
+ key_code = <108>;
key-gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
detect_mode = <0>;/*0:polling mode, 1:irq mode*/
};
diff --git a/arch/arm64/boot/dts/amlogic/gxl_sei210_2g.dts b/arch/arm64/boot/dts/amlogic/gxl_sei210_2g.dts
index 9bbfcbe..57bbc7e 100644..100755
--- a/arch/arm64/boot/dts/amlogic/gxl_sei210_2g.dts
+++ b/arch/arm64/boot/dts/amlogic/gxl_sei210_2g.dts
@@ -18,7 +18,7 @@
/dts-v1/;
#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include "partition_mbox_normal_sei32bit.dtsi"
+#include "partition_mbox_normal_P_32_sei.dtsi"
#include "mesongxl_sei210.dtsi"
/ {
model = "Amlogic";
@@ -505,8 +505,8 @@
status = "okay";
scan_period = <20>;
key_num = <1>;
- key_name = "bt-paring";
- key_code = <218>;
+ key_name = "DPAD_DOWN";
+ key_code = <108>;
key-gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
detect_mode = <0>;/*0:polling mode, 1:irq mode*/
};
diff --git a/arch/arm64/configs/gxl_sei210_defconfig b/arch/arm64/configs/gxl_sei210_defconfig
new file mode 100755
index 0000000..35d32e0
--- a/dev/null
+++ b/arch/arm64/configs/gxl_sei210_defconfig
@@ -0,0 +1,606 @@
+CONFIG_POSIX_MQUEUE=y
+# CONFIG_FHANDLE is not set
+CONFIG_AUDIT=y
+CONFIG_NO_HZ=y
+CONFIG_HIGH_RES_TIMERS=y
+CONFIG_BSD_PROCESS_ACCT=y
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+CONFIG_TASK_XACCT=y
+CONFIG_TASK_IO_ACCOUNTING=y
+CONFIG_IKCONFIG=y
+CONFIG_IKCONFIG_PROC=y
+CONFIG_LOG_BUF_SHIFT=19
+CONFIG_CGROUPS=y
+CONFIG_CGROUP_DEBUG=y
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_CGROUP_SCHED=y
+CONFIG_RT_GROUP_SCHED=y
+CONFIG_CGROUP_BPF=y
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_KALLSYMS_ALL=y
+CONFIG_BPF_SYSCALL=y
+CONFIG_EMBEDDED=y
+# CONFIG_COMPAT_BRK is not set
+CONFIG_PROFILING=y
+CONFIG_JUMP_LABEL=y
+CONFIG_CC_STACKPROTECTOR_STRONG=y
+CONFIG_MODULES=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_MODVERSIONS=y
+CONFIG_DEFAULT_NOOP=y
+CONFIG_PCI=y
+CONFIG_PCIE_DW_PLAT=y
+CONFIG_SCHED_MC=y
+CONFIG_NR_CPUS=8
+CONFIG_PREEMPT=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
+CONFIG_CMA=y
+CONFIG_CMA_DEBUGFS=y
+CONFIG_CMA_AREAS=15
+CONFIG_ZSMALLOC=y
+CONFIG_SECCOMP=y
+CONFIG_ARMV8_DEPRECATED=y
+CONFIG_SWP_EMULATION=y
+CONFIG_CP15_BARRIER_EMULATION=y
+CONFIG_SETEND_EMULATION=y
+CONFIG_RANDOMIZE_BASE=y
+CONFIG_BINFMT_MISC=y
+CONFIG_COMPAT=y
+CONFIG_PM_AUTOSLEEP=y
+CONFIG_PM_WAKELOCKS=y
+CONFIG_CPU_IDLE=y
+CONFIG_ARM_CPUIDLE=y
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_STAT=y
+CONFIG_CPU_FREQ_GOV_INTERACTIVE=y
+CONFIG_ARM_BIG_LITTLE_CPUFREQ=y
+CONFIG_ARM_SCPI_CPUFREQ=y
+CONFIG_AMLOGIC_MESON_CPUFREQ=y
+CONFIG_NET=y
+CONFIG_PACKET=y
+CONFIG_PACKET_DIAG=y
+CONFIG_UNIX=y
+CONFIG_UNIX_DIAG=y
+CONFIG_XFRM_USER=y
+CONFIG_NET_KEY=y
+CONFIG_NET_KEY_MIGRATE=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_PNP=y
+CONFIG_IP_PNP_DHCP=y
+CONFIG_IP_PNP_BOOTP=y
+CONFIG_IP_PNP_RARP=y
+CONFIG_NET_IPIP=y
+CONFIG_SYN_COOKIES=y
+CONFIG_NET_IPVTI=y
+CONFIG_INET_ESP=y
+CONFIG_INET_UDP_DIAG=y
+CONFIG_INET_DIAG_DESTROY=y
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
+CONFIG_INET6_AH=y
+CONFIG_INET6_ESP=y
+CONFIG_INET6_IPCOMP=y
+CONFIG_IPV6_MIP6=y
+CONFIG_IPV6_VTI=y
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_NETFILTER=y
+CONFIG_NF_CONNTRACK=y
+CONFIG_NF_CONNTRACK_SECMARK=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CT_PROTO_DCCP=y
+CONFIG_NF_CT_PROTO_SCTP=y
+CONFIG_NF_CT_PROTO_UDPLITE=y
+CONFIG_NF_CONNTRACK_AMANDA=y
+CONFIG_NF_CONNTRACK_FTP=y
+CONFIG_NF_CONNTRACK_H323=y
+CONFIG_NF_CONNTRACK_IRC=y
+CONFIG_NF_CONNTRACK_NETBIOS_NS=y
+CONFIG_NF_CONNTRACK_PPTP=y
+CONFIG_NF_CONNTRACK_SANE=y
+CONFIG_NF_CONNTRACK_TFTP=y
+CONFIG_NF_CT_NETLINK=y
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=y
+CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=y
+CONFIG_NETFILTER_XT_TARGET_IDLETIMER=y
+CONFIG_NETFILTER_XT_TARGET_MARK=y
+CONFIG_NETFILTER_XT_TARGET_NFLOG=y
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
+CONFIG_NETFILTER_XT_TARGET_TPROXY=y
+CONFIG_NETFILTER_XT_TARGET_TRACE=y
+CONFIG_NETFILTER_XT_TARGET_SECMARK=y
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=y
+CONFIG_NETFILTER_XT_MATCH_COMMENT=y
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=y
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y
+CONFIG_NETFILTER_XT_MATCH_HELPER=y
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=y
+CONFIG_NETFILTER_XT_MATCH_LENGTH=y
+CONFIG_NETFILTER_XT_MATCH_LIMIT=y
+CONFIG_NETFILTER_XT_MATCH_MAC=y
+CONFIG_NETFILTER_XT_MATCH_MARK=y
+CONFIG_NETFILTER_XT_MATCH_POLICY=y
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y
+CONFIG_NETFILTER_XT_MATCH_QTAGUID=y
+CONFIG_NETFILTER_XT_MATCH_QUOTA=y
+CONFIG_NETFILTER_XT_MATCH_QUOTA2=y
+CONFIG_NETFILTER_XT_MATCH_QUOTA2_LOG=y
+CONFIG_NETFILTER_XT_MATCH_SOCKET=y
+CONFIG_NETFILTER_XT_MATCH_STATE=y
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=y
+CONFIG_NETFILTER_XT_MATCH_STRING=y
+CONFIG_NETFILTER_XT_MATCH_TIME=y
+CONFIG_NETFILTER_XT_MATCH_U32=y
+CONFIG_NF_CONNTRACK_IPV4=y
+CONFIG_IP_NF_IPTABLES=y
+CONFIG_IP_NF_MATCH_AH=y
+CONFIG_IP_NF_MATCH_ECN=y
+CONFIG_IP_NF_MATCH_TTL=y
+CONFIG_IP_NF_FILTER=y
+CONFIG_IP_NF_TARGET_REJECT=y
+CONFIG_IP_NF_NAT=y
+CONFIG_IP_NF_TARGET_MASQUERADE=y
+CONFIG_IP_NF_TARGET_NETMAP=y
+CONFIG_IP_NF_TARGET_REDIRECT=y
+CONFIG_IP_NF_MANGLE=y
+CONFIG_IP_NF_RAW=y
+CONFIG_IP_NF_SECURITY=y
+CONFIG_IP_NF_ARPTABLES=y
+CONFIG_IP_NF_ARPFILTER=y
+CONFIG_IP_NF_ARP_MANGLE=y
+CONFIG_NF_CONNTRACK_IPV6=y
+CONFIG_IP6_NF_IPTABLES=y
+CONFIG_IP6_NF_MATCH_RPFILTER=y
+CONFIG_IP6_NF_FILTER=y
+CONFIG_IP6_NF_TARGET_REJECT=y
+CONFIG_IP6_NF_MANGLE=y
+CONFIG_IP6_NF_RAW=y
+CONFIG_IP6_NF_NAT=y
+CONFIG_IP6_NF_TARGET_MASQUERADE=y
+CONFIG_IP6_NF_TARGET_NPT=y
+CONFIG_L2TP=y
+CONFIG_L2TP_DEBUGFS=y
+CONFIG_L2TP_V3=y
+CONFIG_L2TP_IP=y
+CONFIG_L2TP_ETH=y
+CONFIG_BRIDGE=y
+# CONFIG_BRIDGE_IGMP_SNOOPING is not set
+CONFIG_PHONET=y
+CONFIG_NET_SCHED=y
+CONFIG_NET_SCH_HTB=y
+CONFIG_NET_SCH_INGRESS=y
+CONFIG_NET_CLS_U32=y
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_U32=y
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=y
+CONFIG_NET_ACT_GACT=y
+CONFIG_NET_ACT_MIRRED=y
+CONFIG_DNS_RESOLVER=y
+CONFIG_BT=y
+CONFIG_BT_RFCOMM=y
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=y
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_HIDP=y
+CONFIG_BT_HCIUART=y
+CONFIG_BT_HCIUART_H4=y
+CONFIG_CFG80211=y
+CONFIG_NL80211_TESTMODE=y
+CONFIG_CFG80211_WEXT=y
+CONFIG_MAC80211=y
+CONFIG_RFKILL=y
+CONFIG_AMLOGIC_DRIVER=y
+CONFIG_AMLOGIC_MODIFY=y
+CONFIG_AMLOGIC_INPUT_BOOST=y
+CONFIG_AMLOGIC_UART=y
+CONFIG_AMLOGIC_SERIAL_MESON_CONSOLE=y
+CONFIG_AMLOGIC_IOMAP=y
+CONFIG_AMLOGIC_PINCTRL=y
+CONFIG_AMLOGIC_PINCTRL_MESON_GXL=y
+CONFIG_AMLOGIC_PINCTRL_MESON_AXG=y
+CONFIG_AMLOGIC_PINCTRL_MESON_TXLX=y
+CONFIG_AMLOGIC_PINCTRL_MESON_G12A=y
+CONFIG_AMLOGIC_USB=y
+CONFIG_AMLOGIC_USB_DWC_OTG_HCD=y
+CONFIG_AMLOGIC_USB_HOST_ELECT_TEST=y
+CONFIG_AMLOGIC_USBPHY=y
+CONFIG_AMLOGIC_USB2PHY=y
+CONFIG_AMLOGIC_USB3PHY=y
+CONFIG_AMLOGIC_I2C=y
+CONFIG_AMLOGIC_I2C_SLAVE=y
+CONFIG_AMLOGIC_I2C_MASTER=y
+CONFIG_AMLOGIC_SPICC_MASTER=y
+CONFIG_AMLOGIC_SEC=y
+CONFIG_AMLOGIC_CPU_VERSION=y
+CONFIG_AMLOGIC_MESON64_VERSION=y
+CONFIG_AMLOGIC_CPU_INFO=y
+CONFIG_AMLOGIC_MHU_MBOX=y
+CONFIG_AMLOGIC_REG_ACCESS=y
+CONFIG_AMLOGIC_TIMER=y
+CONFIG_AMLOGIC_BC_TIMER=y
+CONFIG_AMLOGIC_CLK=y
+CONFIG_AMLOGIC_COMMON_CLK_SCPI=y
+CONFIG_AMLOGIC_GX_CLK=y
+CONFIG_AMLOGIC_CRYPTO=y
+CONFIG_AMLOGIC_CRYPTO_DMA=y
+CONFIG_AMLOGIC_INPUT=y
+CONFIG_AMLOGIC_INPUT_KEYBOARD=y
+CONFIG_AMLOGIC_ADC_KEYPADS=y
+CONFIG_AMLOGIC_GPIO_KEY=y
+CONFIG_AMLOGIC_REMOTE=y
+CONFIG_AMLOGIC_MESON_REMOTE=y
+CONFIG_AMLOGIC_TOUCHSCREEN=y
+CONFIG_AMLOGIC_TOUCHSCREEN_FTS=y
+CONFIG_AMLOGIC_TOUCHSCREEN_GT1X=y
+CONFIG_AMLOGIC_TOUCHSCREEN_GT9XX=y
+CONFIG_AMLOGIC_EFUSE=y
+CONFIG_AMLOGIC_REBOOT=y
+CONFIG_AMLOGIC_GX_REBOOT=y
+CONFIG_AMLOGIC_INTERNAL_PHY=y
+CONFIG_AMLOGIC_CPU_HOTPLUG=y
+CONFIG_AMLOGIC_PWM=y
+CONFIG_AMLOGIC_MEDIA_ENABLE=y
+CONFIG_AMLOGIC_MEDIA_COMMON=y
+CONFIG_AMLOGIC_MEDIA_DRIVERS=y
+CONFIG_AMLOGIC_MEDIA_MULTI_DEC=y
+CONFIG_AMLOGIC_MEDIA_CODEC_MM=y
+CONFIG_AMLOGIC_MEDIA_CANVAS=y
+CONFIG_AMLOGIC_MEDIA_GE2D=y
+CONFIG_AMLOGIC_ION=y
+CONFIG_AMLOGIC_MEDIA_RDMA=y
+CONFIG_AMLOGIC_MEDIA_VSYNC_RDMA=y
+CONFIG_AMLOGIC_MEDIA_VFM=y
+CONFIG_AMLOGIC_VPU=y
+CONFIG_AMLOGIC_VIDEOBUF_RESOURCE=y
+CONFIG_AMLOGIC_MEDIA_VIDEO=y
+CONFIG_AMLOGIC_MEDIA_VIDEOCAPTURE=y
+CONFIG_AMLOGIC_VOUT=y
+CONFIG_AMLOGIC_CVBS_OUTPUT=y
+CONFIG_AMLOGIC_WSS=y
+CONFIG_AMLOGIC_VDAC=y
+CONFIG_AMLOGIC_HDMITX=y
+CONFIG_AMLOGIC_LCD=y
+CONFIG_AMLOGIC_LCD_TV=y
+CONFIG_AMLOGIC_LCD_TABLET=y
+CONFIG_AMLOGIC_LCD_EXTERN=y
+CONFIG_AMLOGIC_BACKLIGHT=y
+CONFIG_AMLOGIC_BL_EXTERN=y
+CONFIG_AMLOGIC_BL_EXTERN_I2C_LP8556=y
+CONFIG_AMLOGIC_BL_EXTERN_MIPI_LT070ME05=y
+CONFIG_AMLOGIC_LOCAL_DIMMING=y
+CONFIG_AMLOGIC_VOUT_SERVE=y
+CONFIG_AMLOGIC_VOUT2_SERVE=y
+CONFIG_AMLOGIC_MEDIA_FB=y
+CONFIG_AMLOGIC_MEDIA_FB_OSD_SYNC_FENCE=y
+CONFIG_AMLOGIC_MEDIA_FB_OSD_VSYNC_RDMA=y
+CONFIG_AMLOGIC_MEDIA_FB_OSD2_ENABLE=y
+CONFIG_AMLOGIC_MEDIA_FB_OSD2_CURSOR=y
+CONFIG_AMLOGIC_MEDIA_DEINTERLACE=y
+CONFIG_AMLOGIC_MEDIA_VIN=y
+CONFIG_AMLOGIC_MEDIA_TVIN=y
+CONFIG_AMLOGIC_MEDIA_VDIN=y
+CONFIG_AMLOGIC_MEDIA_VIUIN=y
+CONFIG_AMLOGIC_MEDIA_TVIN_BT656=y
+CONFIG_AMLOGIC_MEDIA_TVIN_HDMI_EXT=y
+CONFIG_AMLOGIC_MEDIA_TVIN_HDMI_EXT_SII9135=y
+CONFIG_AMLOGIC_MEDIA_TVIN_HDMI=y
+CONFIG_AMLOGIC_MEDIA_TVIN_AFE=y
+CONFIG_AMLOGIC_MEDIA_TVIN_VBI=y
+CONFIG_AMLOGIC_MEDIA_TVIN_AVDETECT=y
+CONFIG_AMLOGIC_MEDIA_VIDEO_PROCESSOR=y
+CONFIG_AMLOGIC_V4L_VIDEO=y
+CONFIG_AMLOGIC_V4L_VIDEO2=y
+CONFIG_AMLOGIC_POST_PROCESS_MANAGER=y
+CONFIG_AMLOGIC_POST_PROCESS_MANAGER_PPSCALER=y
+CONFIG_AMLOGIC_VIDEOBUF2_ION=y
+CONFIG_AMLOGIC_IONVIDEO=y
+CONFIG_AMLOGIC_PIC_DEC=y
+CONFIG_AMLOGIC_MEDIA_ENHANCEMENT=y
+CONFIG_AMLOGIC_MEDIA_ENHANCEMENT_VECM=y
+CONFIG_AMLOGIC_MEDIA_ENHANCEMENT_DOLBYVISION=y
+CONFIG_AMLOGIC_DTV_DEMOD=y
+CONFIG_AMLOGIC_MMC=y
+CONFIG_AMLOGIC_NAND=y
+CONFIG_AMLOGIC_VRTC=y
+CONFIG_AMLOGIC_SMARTCARD=y
+CONFIG_AMLOGIC_CEC=y
+CONFIG_AMLOGIC_UNIFYKEY=y
+CONFIG_AMLOGIC_V8_UNIFYKEY=y
+CONFIG_AMLOGIC_TEMP_SENSOR=y
+CONFIG_AMLOGIC_CPUCORE_THERMAL=y
+CONFIG_AMLOGIC_GPU_THERMAL=y
+CONFIG_AMLOGIC_GPUCORE_THERMAL=y
+CONFIG_AMLOGIC_AMAUDIO=y
+CONFIG_AMLOGIC_AMAUDIO2=y
+CONFIG_AMLOGIC_AUDIO_DSP=y
+CONFIG_AMLOGIC_AUDIO_INFO=y
+CONFIG_AMLOGIC_SUSPEND=y
+CONFIG_AMLOGIC_GX_SUSPEND=y
+CONFIG_AMLOGIC_LEGACY_EARLY_SUSPEND=y
+CONFIG_AMLOGIC_LED=y
+CONFIG_AMLOGIC_LED_SYS=y
+CONFIG_AMLOGIC_JTAG=y
+CONFIG_AMLOGIC_JTAG_MESON=y
+CONFIG_AMLOGIC_WDT=y
+CONFIG_AMLOGIC_WDT_MESON=y
+CONFIG_AMLOGIC_WDT_MESON_V3=y
+CONFIG_AMLOGIC_ESM=y
+CONFIG_AMLOGIC_WIFI=y
+CONFIG_AMLOGIC_BT_DEVICE=y
+CONFIG_AMLOGIC_DVB_COMPAT=y
+CONFIG_AMLOGIC_PCIE=y
+CONFIG_AMLOGIC_IRBLASTER=y
+CONFIG_AMLOGIC_IIO=y
+CONFIG_AMLOGIC_SARADC=y
+CONFIG_AMLOGIC_DDR_TOOL=y
+CONFIG_AMLOGIC_DDR_BANDWIDTH=y
+CONFIG_AMLOGIC_TEE=y
+CONFIG_AMLOGIC_RAMDUMP=y
+CONFIG_AMLOGIC_GPIO_IRQ=y
+CONFIG_AMLOGIC_ATV_DEMOD=y
+CONFIG_AMLOGIC_DEBUG=y
+CONFIG_AMLOGIC_DEBUG_LOCKUP=y
+CONFIG_AMLOGIC_DEFENDKEY=y
+CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_DMA_CMA=y
+CONFIG_CMA_SIZE_MBYTES=8
+CONFIG_CONNECTOR=y
+CONFIG_MTD=y
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_BLOCK=y
+CONFIG_MTD_OOPS=y
+CONFIG_MTD_NAND=y
+CONFIG_MTD_UBI=y
+CONFIG_ZRAM=y
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_VIRTIO_BLK=y
+CONFIG_UID_SYS_STATS=y
+CONFIG_EEPROM_AT24=y
+CONFIG_SCSI=y
+CONFIG_BLK_DEV_SD=y
+CONFIG_BLK_DEV_SR=y
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=y
+CONFIG_MD_LINEAR=y
+CONFIG_BLK_DEV_DM=y
+CONFIG_DM_CRYPT=y
+CONFIG_DM_VERITY=y
+CONFIG_DM_VERITY_HASH_PREFETCH_MIN_SIZE=1
+CONFIG_DM_VERITY_FEC=y
+CONFIG_DM_ANDROID_VERITY=y
+CONFIG_DM_VERITY_AVB=y
+CONFIG_NETDEVICES=y
+CONFIG_TUN=y
+CONFIG_8139CP=y
+CONFIG_8139TOO=y
+CONFIG_8139TOO_TUNE_TWISTER=y
+CONFIG_8139TOO_8129=y
+CONFIG_8139_OLD_RX_RESET=y
+CONFIG_R8169=y
+CONFIG_STMMAC_ETH=y
+CONFIG_DWMAC_MESON=y
+CONFIG_AMLOGIC_ETH_PRIVE=y
+CONFIG_ICPLUS_PHY=y
+CONFIG_REALTEK_PHY=y
+CONFIG_PPP=y
+CONFIG_PPP_BSDCOMP=y
+CONFIG_PPP_DEFLATE=y
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=y
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOE=y
+CONFIG_PPPOL2TP=y
+CONFIG_PPPOLAC=y
+CONFIG_PPPOPNS=y
+CONFIG_PPP_ASYNC=y
+CONFIG_USB_USBNET=y
+CONFIG_ATH10K=m
+CONFIG_ATH10K_PCI=m
+CONFIG_INPUT_POLLDEV=y
+CONFIG_INPUT_EVDEV=y
+CONFIG_INPUT_JOYSTICK=y
+CONFIG_JOYSTICK_XPAD=y
+CONFIG_JOYSTICK_XPAD_FF=y
+CONFIG_JOYSTICK_XPAD_LEDS=y
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_UINPUT=y
+CONFIG_LEGACY_PTY_COUNT=32
+# CONFIG_DEVMEM is not set
+# CONFIG_DEVKMEM is not set
+CONFIG_HW_RANDOM=y
+# CONFIG_DEVPORT is not set
+CONFIG_SPI=y
+CONFIG_SPI_MASTER=y
+CONFIG_SPI_SPIDEV=y
+CONFIG_SPI_DEBUG=y
+CONFIG_SPI_GPIO=y
+CONFIG_SPI_MESON_SPICC=y
+CONFIG_SPI_SPIDEV=y
+CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_PCA953X=y
+CONFIG_THERMAL=y
+CONFIG_THERMAL_WRITABLE_TRIPS=y
+CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR=y
+CONFIG_THERMAL_GOV_USER_SPACE=y
+CONFIG_CPU_THERMAL=y
+CONFIG_DEVFREQ_THERMAL=y
+CONFIG_REGULATOR=y
+CONFIG_REGULATOR_PWM=y
+CONFIG_MEDIA_SUPPORT=y
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
+CONFIG_MEDIA_USB_SUPPORT=y
+CONFIG_USB_VIDEO_CLASS=y
+CONFIG_FB=y
+CONFIG_BACKLIGHT_LCD_SUPPORT=y
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+CONFIG_SOUND=y
+CONFIG_SND=y
+CONFIG_SND_USB_AUDIO=y
+CONFIG_SND_SOC=y
+CONFIG_AMLOGIC_SND_SOC_CODECS=y
+CONFIG_AMLOGIC_SND_CODEC_DUMMY_CODEC=y
+CONFIG_AMLOGIC_SND_CODEC_PCM2BT=y
+CONFIG_AMLOGIC_SND_CODEC_PDM_DUMMY_CODEC=y
+CONFIG_AMLOGIC_SND_CODEC_AMLT9015=y
+CONFIG_AMLOGIC_SND_CODEC_TXLX_ACODEC=y
+CONFIG_AMLOGIC_SND_SOC_TAS5707=y
+CONFIG_AMLOGIC_SND_SOC_TLV320ADC3101=y
+CONFIG_AMLOGIC_SND_SOC_PCM186X=y
+CONFIG_AMLOGIC_SND_SOC_SSM3525=y
+CONFIG_AMLOGIC_SND_SOC_SSM3515=y
+CONFIG_AMLOGIC_SND_SOC_TAS575X=y
+CONFIG_AMLOGIC_SND_SOC_AD82584F=y
+CONFIG_AMLOGIC_SND_SOC_CS42528=y
+CONFIG_AMLOGIC_SND_SOC=y
+CONFIG_AMLOGIC_SND_SOC_MESON=y
+CONFIG_AMLOGIC_SND_SOC_AUGE=y
+CONFIG_AMLOGIC_SND_SPLIT_MODE=y
+CONFIG_AMLOGIC_SND_SOC_COMMON=y
+CONFIG_HIDRAW=y
+CONFIG_UHID=y
+CONFIG_USB_HIDDEV=y
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_ACM=y
+CONFIG_USB_STORAGE=y
+CONFIG_USB_DWC3=y
+CONFIG_USB_DWC3_HOST=y
+CONFIG_USB_SERIAL=y
+CONFIG_USB_ISP1301=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_CONFIGFS=y
+CONFIG_USB_CONFIGFS_RNDIS=y
+CONFIG_USB_CONFIGFS_F_FS=y
+CONFIG_USB_CONFIGFS_F_MTP=y
+CONFIG_USB_CONFIGFS_F_PTP=y
+CONFIG_USB_CONFIGFS_F_ACC=y
+CONFIG_USB_CONFIGFS_F_AUDIO_SRC=y
+CONFIG_USB_CONFIGFS_UEVENT=y
+CONFIG_USB_CONFIGFS_F_MIDI=y
+CONFIG_MMC=y
+CONFIG_MMC_BLOCK_MINORS=32
+CONFIG_MMC_ARMMMCI=y
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_GPIO=y
+CONFIG_LEDS_PWM=y
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=y
+CONFIG_LEDS_TRIGGER_ONESHOT=y
+CONFIG_LEDS_TRIGGER_HEARTBEAT=y
+CONFIG_LEDS_TRIGGER_BACKLIGHT=y
+CONFIG_LEDS_TRIGGER_CPU=y
+CONFIG_LEDS_TRIGGER_GPIO=y
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
+CONFIG_LEDS_TRIGGER_TRANSIENT=y
+CONFIG_LEDS_TRIGGER_PANIC=y
+CONFIG_SYNC_FILE=y
+CONFIG_SW_SYNC=y
+CONFIG_UIO=y
+CONFIG_UIO_PDRV_GENIRQ=y
+CONFIG_VIRTIO_MMIO=y
+CONFIG_STAGING=y
+CONFIG_ASHMEM=y
+CONFIG_ANDROID_LOW_MEMORY_KILLER=y
+CONFIG_PM_DEVFREQ=y
+CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y
+CONFIG_DEVFREQ_GOV_PERFORMANCE=y
+CONFIG_DEVFREQ_GOV_POWERSAVE=y
+CONFIG_DEVFREQ_GOV_USERSPACE=y
+CONFIG_EXTCON=y
+CONFIG_IIO=y
+CONFIG_IIO_BUFFER=y
+CONFIG_IIO_KFIFO_BUF=y
+CONFIG_PWM=y
+CONFIG_ANDROID=y
+CONFIG_ANDROID_BINDER_IPC=y
+CONFIG_EXT2_FS=y
+CONFIG_EXT3_FS=y
+CONFIG_EXT3_FS_POSIX_ACL=y
+CONFIG_EXT3_FS_SECURITY=y
+CONFIG_EXT4_ENCRYPTION=y
+CONFIG_FANOTIFY=y
+CONFIG_QUOTA=y
+CONFIG_QUOTA_NETLINK_INTERFACE=y
+CONFIG_QFMT_V2=y
+CONFIG_AUTOFS4_FS=y
+CONFIG_FUSE_FS=y
+CONFIG_ISO9660_FS=y
+CONFIG_JOLIET=y
+CONFIG_ZISOFS=y
+CONFIG_UDF_FS=y
+CONFIG_MSDOS_FS=y
+CONFIG_VFAT_FS=y
+CONFIG_EXFAT_FS=y
+CONFIG_NTFS_FS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_ECRYPT_FS=y
+CONFIG_SDCARD_FS=y
+CONFIG_JFFS2_FS=y
+CONFIG_JFFS2_SUMMARY=y
+CONFIG_JFFS2_FS_XATTR=y
+CONFIG_JFFS2_COMPRESSION_OPTIONS=y
+CONFIG_JFFS2_LZO=y
+CONFIG_JFFS2_RUBIN=y
+CONFIG_UBIFS_FS=y
+CONFIG_CRAMFS=y
+CONFIG_SQUASHFS=y
+CONFIG_PSTORE=y
+CONFIG_PSTORE_CONSOLE=y
+CONFIG_PSTORE_PMSG=y
+CONFIG_PSTORE_RAM=y
+CONFIG_NLS_CODEPAGE_437=y
+CONFIG_NLS_ISO8859_1=y
+CONFIG_PRINTK_TIME=y
+CONFIG_DEBUG_INFO=y
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_LOCKUP_DETECTOR=y
+CONFIG_WQ_WATCHDOG=y
+CONFIG_PANIC_TIMEOUT=5
+CONFIG_PANIC_ON_RT_THROTTLING=y
+CONFIG_SCHEDSTATS=y
+CONFIG_SCHED_STACK_END_CHECK=y
+CONFIG_TIMER_STATS=y
+CONFIG_DEBUG_ATOMIC_SLEEP=y
+CONFIG_FTRACE_SYSCALLS=y
+CONFIG_STACK_TRACER=y
+CONFIG_FUNCTION_PROFILER=y
+CONFIG_AMLOGIC_USER_FAULT=y
+CONFIG_SECURITY_DMESG_RESTRICT=y
+CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y
+CONFIG_SECURITY=y
+CONFIG_SECURITYFS=y
+CONFIG_SECURITY_PATH=y
+CONFIG_LSM_MMAP_MIN_ADDR=0
+CONFIG_HARDENED_USERCOPY=y
+CONFIG_SECURITY_SELINUX=y
+CONFIG_SECURITY_SMACK=y
+CONFIG_CRYPTO_CRYPTD=y
+CONFIG_CRYPTO_MICHAEL_MIC=y
+CONFIG_CRYPTO_SHA512=y
+CONFIG_CRYPTO_TWOFISH=y
+CONFIG_CRYPTO_ANSI_CPRNG=y
+CONFIG_CRYPTO_USER_API_HASH=y
+CONFIG_CRYPTO_USER_API_SKCIPHER=y
+CONFIG_ASYMMETRIC_KEY_TYPE=y
+CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
+CONFIG_X509_CERTIFICATE_PARSER=y
+CONFIG_CRC_T10DIF=y
+CONFIG_CRC7=y
+CONFIG_SEI_RESET_KEY=y
diff --git a/drivers/amlogic/input/keyboard/Kconfig b/drivers/amlogic/input/keyboard/Kconfig
index 5281866..5843fc1 100644..100755
--- a/drivers/amlogic/input/keyboard/Kconfig
+++ b/drivers/amlogic/input/keyboard/Kconfig
@@ -26,4 +26,10 @@ config AMLOGIC_GPIO_KEY
help
Say Y here if you want to use the amlogic hold key.
+config SEI_RESET_KEY
+ tristate "SEI gpio key device surport"
+ default n
+ help
+ Say Y here if you want to long press RESET key as ENTER function.
+
endif # AMLOGIC_INPUT_KEYBOARD
diff --git a/drivers/amlogic/input/keyboard/gpio_keypad.c b/drivers/amlogic/input/keyboard/gpio_keypad.c
index 6311bd6..5b81b72 100644..100755
--- a/drivers/amlogic/input/keyboard/gpio_keypad.c
+++ b/drivers/amlogic/input/keyboard/gpio_keypad.c
@@ -52,6 +52,11 @@ struct gpio_keypad {
struct input_dev *input_dev;
};
+#ifdef CONFIG_SEI_RESET_KEY
+static int long_press_times = 0;
+#define KEY_CODE_ENTER 28
+#endif
+
static irqreturn_t gpio_irq_handler(int irq, void *data)
{
struct gpio_keypad *keypad;
@@ -74,6 +79,51 @@ static struct pin_desc *get_current_key(struct gpio_keypad *keypad)
}
return NULL;
}
+#ifdef CONFIG_SEI_RESET_KEY
+static void report_key_code(struct gpio_keypad *keypad, int gpio_val)
+{
+ struct pin_desc *key;
+
+ if (keypad->count < KEY_JITTER_COUNT)
+ keypad->count++;
+ else {
+ key = keypad->current_key;
+ key->current_status = gpio_val;
+ if (key->current_status) {
+ if (long_press_times > 20)
+ {
+ // dev_info(&kp->input->dev,"long press reset key is %d 1\n",long_press_times);
+ //long press.
+ input_report_key(keypad->input_dev, KEY_CODE_ENTER, 1);
+ input_sync(keypad->input_dev);
+ input_report_key(keypad->input_dev, KEY_CODE_ENTER, 0);
+ input_sync(keypad->input_dev);
+ } else {
+ // dev_info(&kp->input->dev,"long press reset key is %d 2\n",long_press_times);
+ //short press
+ input_report_key(keypad->input_dev, key->code, 1);
+ input_sync(keypad->input_dev);
+ input_report_key(keypad->input_dev, key->code, 0);
+ input_sync(keypad->input_dev);
+ }
+ if (keypad->use_irq)
+ enable_irq(key->irq_num);
+ dev_info(&(keypad->input_dev->dev),
+ "key %d up.\n",
+ key->code);
+ } else {
+ long_press_times = 0;
+ if (keypad->use_irq)
+ disable_irq_nosync(key->irq_num);
+
+ dev_info(&(keypad->input_dev->dev),
+ "key %d down.\n",
+ key->code);
+ }
+ keypad->count = 0;
+ }
+}
+#else
static void report_key_code(struct gpio_keypad *keypad, int gpio_val)
{
struct pin_desc *key;
@@ -106,6 +156,7 @@ static void report_key_code(struct gpio_keypad *keypad, int gpio_val)
keypad->count = 0;
}
}
+#endif
static void polling_timer_handler(unsigned long data)
{
struct gpio_keypad *keypad;
@@ -114,6 +165,11 @@ static void polling_timer_handler(unsigned long data)
int gpio_val;
keypad = (struct gpio_keypad *)data;
+#ifdef CONFIG_SEI_RESET_KEY
+ if (long_press_times < 1000) {
+ long_press_times++;
+ }
+#endif
if (keypad->use_irq) {//irq mode
keypad->current_key = get_current_key(keypad);
if (!(keypad->current_key))
@@ -214,6 +270,11 @@ static int meson_gpio_kp_probe(struct platform_device *pdev)
dev_info(&pdev->dev, "%s key(%d) registed.\n",
keypad->key[i].name, keypad->key[i].code);
}
+
+#ifdef CONFIG_SEI_RESET_KEY
+ set_bit(KEY_CODE_ENTER, input_dev->keybit);
+#endif
+
input_dev->name = "gpio_keypad";
input_dev->phys = "gpio_keypad/input0";
input_dev->dev.parent = &pdev->dev;