Hello i am triying to use tsc2004 with imx7d custom board added tsc2004 hardware over i2c . i am using kernel 4.1.15 and 4.9.11 but doesnt working
KERNEL
CONFIG_TOUCHSCREEN_TSC200X_CORE=y
CONFIG_TOUCHSCREEN_TSC2004=y
devicetree
.. .. .
&i2c1 {
clock-frequency = <100000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c1>;
status = "okay";
touch@48 {
compatible = "ti,tsc2004";
reg = <0x48>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_epdc_elan_touch>;
interrupts-extended = <&gpio6 12 IRQ_TYPE_EDGE_FALLING>;
wakeup-gpios = <&gpio6 12 GPIO_ACTIVE_LOW>;
};
pmic: pfuze3000@08 {
compatible = "fsl,pfuze3000";
reg = <0x08>;
regulators {
sw1a_reg: sw1a {
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
regulator-ramp-delay = <6250>;
};
/* use sw1c_reg to align with pfuze100/pfuze200 */
sw1c_reg: sw1b {
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1475000>;
regulator-boot-on;
regulator-always-on;
regulator-ramp-delay = <6250>;
};
sw2_reg: sw2 {
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1850000>;
regulator-boot-on;
regulator-always-on;
};
sw3a_reg: sw3 {
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <1650000>;
regulator-boot-on;
regulator-always-on;
};
swbst_reg: swbst {
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5150000>;
};
snvs_reg: vsnvs {
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <3000000>;
regulator-boot-on;
regulator-always-on;
};
vref_reg: vrefddr {
regulator-boot-on;
regulator-always-on;
};
vgen1_reg: vldo1 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vgen2_reg: vldo2 {
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1550000>;
};
vgen3_reg: vccsd {
regulator-min-microvolt = <2850000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vgen4_reg: v33 {
regulator-min-microvolt = <2850000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vgen5_reg: vldo3 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vgen6_reg: vldo4 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
};
};
};
pinctrl_epdc_elan_touch: epdc_elan_touch_grp {
fsl,pins = <
MX7D_PAD_SAI1_RX_DATA__GPIO6_IO12 0x7d
>;
};
=====================================================
dmesg output #
$dmesg | grep -i tsc
error 1
tsc2004 0-0056: Error applying setting, reverse things back
tsc2004: probe of 0-0056 failed with error -22
@@ changed values
tsc2004 2-0048: no irq
@@ changed value
same errors
i tried a lot of times but doest work i tried 0x7d 0x59 . ..
How can i fix my error
Hi Atakan,
tsc2046
touch is supported for i.MX7D in linux/arch/arm/boot/dts/imx7d-sdb.dts
imx7d-sdb.dts\dts\boot\arm\arch - linux-imx - i.MX Linux kernel
so one can use them as example for porting new driver, starting with probe function:
linux/drivers/input/touchscreen
Regards
i already added tsc2004 driver its have kernel 4.9.4 and enabled in kernel , and preparing
my pin settings here MX7D_PAD_SAI1_RX_DATA__GPIO6_IO12
my devicetree is wrong ?