Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b36247af authored by Alex Sarraf's avatar Alex Sarraf Committed by Gerrit - the friendly Code Review server
Browse files

input: misc: hbtp_input: snapshot of driver from msm-4.9



Driver snapshot from msm-4.9 to msm-next

0f798a0 input: misc: hbtp_input: allow read access to display_pwr sysfs
5532c00 input: misc: hbtp_input: Support for Region of Interest/sensors
61fbcdc6 input: misc: hbtp_input: Release mutex in error cases in sysfs cb
dc0b965 input: misc: hbtp_input: Add sysfs for suspend/resume
bafe727 input: misc: hbtp_input: snapshot of driver from msm-4.4

Use character device instead of miscellaneous device since
hbtp_input driver is an input device which can be classified
under character device. Misc devices are now deprecated.

Change-Id: If11826c58d4b529e5db601b0da5516bb24fc7b8b
Signed-off-by: default avatarAlex Sarraf <asarraf@codeaurora.org>
parent d0c80e68
Loading
Loading
Loading
Loading
+89 −0
Original line number Original line Diff line number Diff line
Platform device for Host Based Touch Processing (HBTP)

hbtp_input is a kernel driver that provides functionality needed by
Host Based Touch Processing (HBTP) from the kernel. One of the
functionality is to manage the power source for touch Analog Front
End (AFE).

Required properties:

 - compatible		: should be "qcom,hbtp-input"

Optional properties:

 - vcc_ana-supply	: Analog power supply needed to power device
 - qcom,afe-load	: AFE/Analog supply load in uA
 - qcom,afe-vtg-min	: AFE/Analog minimum voltage in uV
 - qcom,afe-vtg-max	: AFE/Analog maximum voltage in uV
 - qcom,dig-load	: Digital supply load in uA
 - qcom,dig-vtg-min	: Digital supply minimum voltage in uV
 - qcom,dig-vtg-max	: Digital supply maximum voltage in uV
 - qcom,display-resolution	: Display resolution - maxX, maxY
 - qcom,use-scale	: boolean, enables the scaling for touch coordinates
 - pinctrl-names	: defines pinctrl names
			"pmx_ts_active" : Required pinctrl name.
				This should specify active config of TS RST gpio
			"pmx_ts_suspend" : Required pinctrl name
				This should specify suspend config of TS RST gpio
			"ddic_rst_active" : Required pinctrl name
				This should specify active config of DDIC RST gpio
			"ddic_rst_suspend" : Required pinctrl name
				This should specify suspend config of DDIC RST gpio
 - pinctrl-0		: pin control to be used for TS active config
 - pinctrl-1		: pin control to be used for TS suspend config
 - pinctrl-2		: pin control to be used for DDIC active config
 - pinctrl-3		: pin control to be used for DDIC suspend config

Optional properties if qcom,use-scale DT property is defined:
 - qcom,def-maxx	: default X-resolution of the touch panel.
 - qcom,def-maxy	: default Y-resolution of the touch panel.
			(Above two properties should be defined in pairs only)
 - qcom,des-maxx	: desired X-resolution of the touch panel.
 - qcom,des-maxy	: desired Y-resolution of the touch panel.
			(Above two properties should be defined in pairs only)

Optional Properties if pinctrl names are defined:
 - qcom,pmx-ts-on-seq-delay-us : unsigned integer type for
		delay after active TS RST gpio is changed
 - qcom,fb-resume-delay-us : unsigned integer type for
		delay in early resume framebuffer callback
 - qcom,ddic-rst-on-seq-delay-us : array of unsigned integer type for
		delay of each step in series of DDIC RST gpio control

Optional Properties if qcom,afe-vtg and qcom,dig-vtg are defined
 - qcom,afe-power-on-delay-us : unsigned integer type for
		delay between turning on analog and digital power supply
 - qcom,afe-power-off-delay-us : unsigned integer type for
		delay between turning off digital and analog power supply

Example:
	&soc {
		hbtp {
			compatible = "qcom,hbtp-input";
			vcc_ana-supply = <&pm8941_l17>;
			vcc_dig-supply = <&pm8950_l16>;
			qcom,afe-load = <50000>;
			qcom,afe-vtg-min = <2850000>;
			qcom,afe-vtg-max = <2850000>;
			qcom,dig-load = <15000>;
			qcom,dig-vtg-min = <1800000>;
			qcom,dig-vtg-max = <1800000>;
			qcom,display-resolution = <719 1279>;
			qcom,use-scale;
			qcom,default-max-x = <1080>;
			qcom,default-max-y = <1920>;
			qcom,desired-max-x = <720>;
			qcom,desired-max-y = <1280>;
			pinctrl-names = "pmx_ts_active","pmx_ts_suspend",
					"ddic_rst_active", "ddic_rst_suspend";
			pinctrl-0 = <&ts_rst_active>;
			pinctrl-1 = <&ts_rst_suspend>;
			pinctrl-2 = <&ddic_rst_active>;
			pinctrl-3 = <&ddic_rst_suspend>;
			qcom,pmx-ts-on-seq-delay-us = <1000>;
			qcom,ddic-rst-on-seq-delay-us = <10000 10000 10000 10000>;
			qcom,fb-resume-delay-us = <90000>;
			qcom,afe-power-on-delay-us = <1000>;
			qcom,afe-power-off-delay-us = <6>;
		};
	};
+11 −0
Original line number Original line Diff line number Diff line
@@ -117,6 +117,17 @@ config INPUT_E3X0_BUTTON
	  To compile this driver as a module, choose M here: the
	  To compile this driver as a module, choose M here: the
	  module will be called e3x0_button.
	  module will be called e3x0_button.


config INPUT_HBTP_INPUT
	tristate "HBTP input driver support"
	help
	  This option enables an input driver for the host based touch
	  processing.

	  Say Y to enable HBTP input driver.

	  To compile this driver as a module, choose M here: the
	  module will be called hbtp_input.

config INPUT_PCSPKR
config INPUT_PCSPKR
	tristate "PC Speaker support"
	tristate "PC Speaker support"
	depends on PCSPKR_PLATFORM
	depends on PCSPKR_PLATFORM
+1 −0
Original line number Original line Diff line number Diff line
@@ -39,6 +39,7 @@ obj-$(CONFIG_INPUT_GPIO_TILT_POLLED) += gpio_tilt_polled.o
obj-$(CONFIG_INPUT_GPIO_DECODER)	+= gpio_decoder.o
obj-$(CONFIG_INPUT_GPIO_DECODER)	+= gpio_decoder.o
obj-$(CONFIG_INPUT_GPIO)		+= gpio_event.o gpio_matrix.o gpio_input.o gpio_output.o gpio_axis.o
obj-$(CONFIG_INPUT_GPIO)		+= gpio_event.o gpio_matrix.o gpio_input.o gpio_output.o gpio_axis.o
obj-$(CONFIG_INPUT_HISI_POWERKEY)	+= hisi_powerkey.o
obj-$(CONFIG_INPUT_HISI_POWERKEY)	+= hisi_powerkey.o
obj-$(CONFIG_INPUT_HBTP_INPUT)		+= hbtp_input.o
obj-$(CONFIG_HP_SDC_RTC)		+= hp_sdc_rtc.o
obj-$(CONFIG_HP_SDC_RTC)		+= hp_sdc_rtc.o
obj-$(CONFIG_INPUT_IMS_PCU)		+= ims-pcu.o
obj-$(CONFIG_INPUT_IMS_PCU)		+= ims-pcu.o
obj-$(CONFIG_INPUT_IXP4XX_BEEPER)	+= ixp4xx-beeper.o
obj-$(CONFIG_INPUT_IXP4XX_BEEPER)	+= ixp4xx-beeper.o
+1624 −0

File added.

Preview size limit exceeded, changes collapsed.

+2 −0
Original line number Original line Diff line number Diff line
@@ -4,6 +4,8 @@ ifeq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/a.out.h),)
no-export-headers += a.out.h
no-export-headers += a.out.h
endif
endif


header-y += hbtp_input.h

ifeq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/kvm.h),)
ifeq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/kvm.h),)
no-export-headers += kvm.h
no-export-headers += kvm.h
endif
endif
Loading