* Information about Atmel MXT224
@ 2014-01-08 7:57 Gaëtan Carlier
2014-01-08 9:04 ` Alexander Shiyan
2014-01-08 11:42 ` Peter Meerwald
0 siblings, 2 replies; 7+ messages in thread
From: Gaëtan Carlier @ 2014-01-08 7:57 UTC (permalink / raw)
To: linux-input, linux-arm-kernel@lists.infradead.org; +Cc: Joonyoung Shim
Hello,
I have tried atmel_mxt_ts driver (original driver from kernel 3.6.0 and
driver from linux-next/master branch copied to kernel 3.6.0) on i.MX27
board. The capacitive glass used is a "GE Touch"
SMT-F-057G007-B011-4:3-NP. It has 16 pads in X and 14 pads in Y. It is
correctly detected (with one warning/error).
The power supply of VDD and AVDD is 2.8V. AVDD will be raised later to 3.3V.
When I push on glass, nothing occurs in evetst nor on /CHG pin of MXT224.
Does someone has some informations or the protocol guide, please ?
Thanks a lot for your help.
Gaëtan Carlier.
Below some code and logs.
Here is my initialization :
8---------------------------------------------------------
/* TSP */
static struct mxt_platform_data mxt_platform_data = {
.x_line = 18,
.y_line = 11,
.x_size = 480,
.y_size = 640,
.blen = 0x1,
.threshold = 0x28,
.voltage = 2800000, /* 2.8V */
.orient = MXT_DIAGONAL_COUNTER,
.irqflags = IRQF_TRIGGER_FALLING,
};
static struct i2c_board_info imx27gc_i2c0_devices[] = {
{
I2C_BOARD_INFO("atmel_mxt_ts", 0x4b),
.platform_data = &mxt_platform_data,
/* irq number is run-time assigned */
},
/* more devices can be added using expansion connectors */
};
static void __init dvip01_init(void)
{
dvip01_i2c0_devices[0].irq = gpio_to_irq(MXT_KEY);
}
8---------------------------------------------------------
Here is log of start-up:
8---------------------------------------------------------
atmel_mxt_ts 0-004b: Type 37 Start 106 Size 130 Instances 1 ReportIDs
0 : 0
atmel_mxt_ts 0-004b: Type 44 Start 236 Size 1 Instances 1 ReportIDs
0 : 0
atmel_mxt_ts 0-004b: Type 5 Start 237 Size 9 Instances 1 ReportIDs
0 : 0
atmel_mxt_ts 0-004b: Type 6 Start 246 Size 6 Instances 1 ReportIDs
1 : 1
atmel_mxt_ts 0-004b: Type 38 Start 252 Size 8 Instances 1 ReportIDs
0 : 0
atmel_mxt_ts 0-004b: Type 7 Start 260 Size 3 Instances 1 ReportIDs
0 : 0
atmel_mxt_ts 0-004b: Type 8 Start 263 Size 10 Instances 1 ReportIDs
0 : 0
atmel_mxt_ts 0-004b: Type 9 Start 273 Size 35 Instances 1 ReportIDs
2 : 11
atmel_mxt_ts 0-004b: Type 18 Start 308 Size 2 Instances 1 ReportIDs
0 : 0
atmel_mxt_ts 0-004b: Type 19 Start 310 Size 6 Instances 1 ReportIDs
12 : 12
atmel_mxt_ts 0-004b: Type 25 Start 316 Size 6 Instances 1 ReportIDs
13 : 13
atmel_mxt_ts 0-004b: Type 42 Start 322 Size 8 Instances 1 ReportIDs
14 : 14
atmel_mxt_ts 0-004b: Type 46 Start 330 Size 9 Instances 1 ReportIDs
15 : 15
atmel_mxt_ts 0-004b: Type 47 Start 339 Size 10 Instances 1 ReportIDs
0 : 0
atmel_mxt_ts 0-004b: Type 48 Start 349 Size 54 Instances 1 ReportIDs
16 : 16
atmel_mxt_ts 0-004b: Type 55 Start 403 Size 4 Instances 1 ReportIDs
0 : 0
atmel_mxt_ts 0-004b: No cfg data defined, skipping reg init
atmel_mxt_ts 0-004b: Invalid object type
atmel_mxt_ts 0-004b: Family ID: 129 Variant ID: 1 Major.Minor.Build: 2.0.AB
atmel_mxt_ts 0-004b: Matrix X Size: 16 Matrix Y Size: 14 Object Num: 16
input: Atmel maXTouch Touchscreen as
/devices/platform/imx-i2c.0/i2c-0/0-004b/input/input0
8---------------------------------------------------------
Here is evtest information :
8---------------------------------------------------------
Input driver version is 1.0.1evdev: (EVIOCGBIT): Suspicious buffer size
511, limiting output to 64 bytes. See http://userweb.kernel.org/~dtorl
Input device ID: bus 0x18 vendor 0x0 product 0x0 version 0x0
Input device name: "Atmel maXTouch Touchscreen"
Supported events:
Event type 0 (Sync)
Event type 1 (Key)
Event code 330 (Touch)
Event type 3 (Absolute)
Event code 0 (X)
Value 0
Min 0
Max 479
Event code 1 (Y)
Value 0
Min 0
Max 639
Event code 24 (Pressure)
Value 0
Min 0
Max 255
Event code 47 (?)
Value 0
Min 0
Max 9
Event code 48 (?)
Value 0
Min 0
Max 255
Event code 53 (?)
Value 0
Min 0
Max 479
Event code 54 (?)
Value 0
Min 0
Max 639
Event code 57 (?)
Value 0
Min 0
Max 65535
Event code 58 (?)
Value 0
Min 0
Max 255
Testing ... (interrupt to exit)
8---------------------------------------------------------
Here is /proc/interrupts:
8---------------------------------------------------------
128: 0 gpio-mxc atmel_mxt_ts
8---------------------------------------------------------
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Information about Atmel MXT224
2014-01-08 7:57 Information about Atmel MXT224 Gaëtan Carlier
@ 2014-01-08 9:04 ` Alexander Shiyan
2014-01-08 11:24 ` Gaëtan Carlier
2014-01-08 11:42 ` Peter Meerwald
1 sibling, 1 reply; 7+ messages in thread
From: Alexander Shiyan @ 2014-01-08 9:04 UTC (permalink / raw)
To: Gaëtan Carlier
Cc: Joonyoung Shim, linux-arm-kernel@lists.infradead.org, linux-input
Среда, 8 января 2014, 8:57 +01:00 от Gaëtan Carlier <gcembed@gmail.com>:
> Hello,
> I have tried atmel_mxt_ts driver (original driver from kernel 3.6.0 and
> driver from linux-next/master branch copied to kernel 3.6.0) on i.MX27
> board. The capacitive glass used is a "GE Touch"
> SMT-F-057G007-B011-4:3-NP. It has 16 pads in X and 14 pads in Y. It is
> correctly detected (with one warning/error).
> The power supply of VDD and AVDD is 2.8V. AVDD will be raised later to 3.3V.
> When I push on glass, nothing occurs in evetst nor on /CHG pin of MXT224.
Do not forget about setup IOMUX for IRQ pin?
---
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Information about Atmel MXT224
2014-01-08 9:04 ` Alexander Shiyan
@ 2014-01-08 11:24 ` Gaëtan Carlier
0 siblings, 0 replies; 7+ messages in thread
From: Gaëtan Carlier @ 2014-01-08 11:24 UTC (permalink / raw)
To: Alexander Shiyan
Cc: linux-input, linux-arm-kernel@lists.infradead.org, Joonyoung Shim
Hi,
On 01/08/2014 10:04 AM, Alexander Shiyan wrote:
> Do not forget about setup IOMUX for IRQ pin?
I don't think so. I follow the same canvas than PMIC_INT. I send my
email too fast. The init function was incomplete. Below all I do with
MXT_KEY (PB16) connected to /CHG pin of MXT224.
(Of course, PB16 (CSI_PIXCLK) is not used by another driver)
The problem is not interrupt in Kernel. It is MXT224 that does not send
it. /CHG pin stay High.
I can send you all source code of board declaration if you want.
Thanks a lot.
Gaëtan Carlier.
8---------------------------------------------------------
#define MXT_KEY IMX_GPIO_NR(2, 16)
static const int imx27gc_pins[] __initconst = {
/* UART1 */
PE12_PF_UART1_TXD,
PE13_PF_UART1_RXD,
PE14_PF_UART1_CTS,
PE15_PF_UART1_RTS,
/* UART3 */
PE8_PF_UART3_TXD,
PE9_PF_UART3_RXD,
PE10_PF_UART3_CTS,
PE11_PF_UART3_RTS,
/* FEC */
PD0_AIN_FEC_TXD0,
PD1_AIN_FEC_TXD1,
PD2_AIN_FEC_TXD2,
PD3_AIN_FEC_TXD3,
PD4_AOUT_FEC_RX_ER,
PD5_AOUT_FEC_RXD1,
PD6_AOUT_FEC_RXD2,
PD7_AOUT_FEC_RXD3,
PD8_AF_FEC_MDIO,
PD9_AIN_FEC_MDC,
PD10_AOUT_FEC_CRS,
PD11_AOUT_FEC_TX_CLK,
PD12_AOUT_FEC_RXD0,
PD13_AOUT_FEC_RX_DV,
PD14_AOUT_FEC_RX_CLK,
PD15_AOUT_FEC_COL,
PD16_AIN_FEC_TX_ER,
PF23_AIN_FEC_TX_EN,
/* CSPI2 */
PD22_PF_CSPI2_SCLK,
PD23_PF_CSPI2_MISO,
PD24_PF_CSPI2_MOSI,
SPI2_SS0 | GPIO_GPIO | GPIO_OUT,
/* I2C1 */
PD17_PF_I2C_DATA,
PD18_PF_I2C_CLK,
/* I2C2 */
PC5_PF_I2C2_SDA,
PC6_PF_I2C2_SCL,
/* PMIC INT */
PMIC_INT | GPIO_GPIO | GPIO_IN,
/* SLCD */
PA6_AIN_SLCDC_DAT0,
PA7_AIN_SLCDC_DAT1,
PA8_AIN_SLCDC_DAT2,
PA9_AIN_SLCDC_DAT3,
PA10_AIN_SLCDC_DAT4,
PA11_AIN_SLCDC_DAT5,
PA12_AIN_SLCDC_DAT6,
PA13_AIN_SLCDC_DAT7,
PA25_AIN_SLCDC_CLS, /* D/C */
PA26_AIN_SLCDC_CS,
PA27_AIN_SLCDC_CLK, /* E/RD */
SLCDC_RESET | GPIO_GPIO | GPIO_OUT,
SLCDC_BL_POWER | GPIO_GPIO | GPIO_OUT,
SLCDC_RW | GPIO_GPIO | GPIO_OUT, /* only for manual reading operation */
/* MXT */
MXT_KEY | GPIO_GPIO | GPIO_IN, /* Key */
/* SSI4 */
PC16_PF_SSI4_FS,
PC17_PF_SSI4_RXD,
PC18_PF_SSI4_TXD,
PC19_PF_SSI4_CLK,
/* Flash Led */
FLASH_ENABLE | GPIO_GPIO | GPIO_OUT,
THT_ENABLE | GPIO_GPIO | GPIO_OUT,
HP_ENABLE | GPIO_GPIO | GPIO_OUT,
HEATING_ENABLE | GPIO_GPIO | GPIO_OUT,
BTNLIGHT_ENABLE | GPIO_GPIO | GPIO_OUT,
/* GPIO KEY */
GPIO_KEY1 | GPIO_GPIO | GPIO_IN,
GPIO_KEY2 | GPIO_GPIO | GPIO_IN,
GPIO_KEY3 | GPIO_GPIO | GPIO_IN,
};
static void __init imx27gc_init(void)
{
mxc_gpio_setup_multiple_pins(imx27gc_pins, ARRAY_SIZE(imx27gc_pins),
"imx27gc");
...
imx27gc_i2c0_devices[0].irq = gpio_to_irq(MXT_KEY);
i2c_register_board_info(0, imx27gc_i2c0_devices,
ARRAY_SIZE(imx27gc_i2c0_devices));
imx27_add_imx_i2c(0, &imx27gc_i2c0_data);
....
}
8---------------------------------------------------------
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Information about Atmel MXT224
2014-01-08 7:57 Information about Atmel MXT224 Gaëtan Carlier
2014-01-08 9:04 ` Alexander Shiyan
@ 2014-01-08 11:42 ` Peter Meerwald
2014-01-08 12:24 ` Gaëtan Carlier
1 sibling, 1 reply; 7+ messages in thread
From: Peter Meerwald @ 2014-01-08 11:42 UTC (permalink / raw)
To: Gaëtan Carlier
Cc: linux-input, linux-arm-kernel@lists.infradead.org, Joonyoung Shim
> I have tried atmel_mxt_ts driver (original driver from kernel 3.6.0 and
> driver from linux-next/master branch copied to kernel 3.6.0) on i.MX27
> board. The capacitive glass used is a "GE Touch"
> SMT-F-057G007-B011-4:3-NP. It has 16 pads in X and 14 pads in Y. It is
> correctly detected (with one warning/error).
> Does someone has some informations or the protocol guide, please ?
you need to request them from the distributor I guess, they docs are
pretty good
> /* TSP */
> static struct mxt_platform_data mxt_platform_data = {
> .x_line = 18,
> .y_line = 11,
> .x_size = 480,
shouldn't this be 16/14?
> .y_size = 640,
> .blen = 0x1,
> .threshold = 0x28,
> .voltage = 2800000, /* 2.8V */
> .orient = MXT_DIAGONAL_COUNTER,
> .irqflags = IRQF_TRIGGER_FALLING,
> };
> atmel_mxt_ts 0-004b: No cfg data defined, skipping reg init
> atmel_mxt_ts 0-004b: Invalid object type
something goes wrong in the initialization; the object table of the
chip doesn't match the register data fed in -- the mxt224 can be a bitch
and play dead
regards, p.
--
Peter Meerwald
+43-664-2444418 (mobile)
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Information about Atmel MXT224
2014-01-08 11:42 ` Peter Meerwald
@ 2014-01-08 12:24 ` Gaëtan Carlier
2014-01-08 12:50 ` Peter Meerwald
0 siblings, 1 reply; 7+ messages in thread
From: Gaëtan Carlier @ 2014-01-08 12:24 UTC (permalink / raw)
To: Peter Meerwald
Cc: linux-input, linux-arm-kernel@lists.infradead.org, Joonyoung Shim
On 01/08/2014 12:42 PM, Peter Meerwald wrote:
> you need to request them from the distributor I guess, they docs are
> pretty good
I am in Belgium and we deal with Gleichmann & Co. Electronics in Germany
to have their devkit (SMT-C-T10). I have signed a NDA with them to have
MXT224 protocol guide but they never send me Protocol Guide.
I will try another distributor.
> shouldn't this be 16/14?
You are right, I already try this and test it again but this does not
change anything.
> something goes wrong in the initialization; the object table of the
> chip doesn't match the register data fed in -- the mxt224 can be a bitch
> and play dead
So what can I do ? Maybe a problem with the embedded firmware that need
an update (atmel_mxt_ts 0-004b: Family ID: 129 Variant ID: 1
Major.Minor.Build: 2.0.AB)
When I do cat /proc/interrupts and I short-circuit /CHG to ground,
number increases so low-level handling of interrupt is working.
Thanks,
Gaëtan Carlier.
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Information about Atmel MXT224
2014-01-08 12:24 ` Gaëtan Carlier
@ 2014-01-08 12:50 ` Peter Meerwald
2014-01-08 12:58 ` Gaëtan Carlier
0 siblings, 1 reply; 7+ messages in thread
From: Peter Meerwald @ 2014-01-08 12:50 UTC (permalink / raw)
To: Gaëtan Carlier
Cc: linux-input, linux-arm-kernel@lists.infradead.org, Joonyoung Shim
Hello,
> I am in Belgium and we deal with Gleichmann & Co. Electronics in Germany to
> have their devkit (SMT-C-T10). I have signed a NDA with them to have MXT224
> protocol guide but they never send me Protocol Guide.
> I will try another distributor.
just ask harder; I got it from them
> > something goes wrong in the initialization; the object table of the
> > chip doesn't match the register data fed in -- the mxt224 can be a bitch
> > and play dead
> So what can I do ? Maybe a problem with the embedded firmware that need an
> update (atmel_mxt_ts 0-004b: Family ID: 129 Variant ID: 1 Major.Minor.Build:
> 2.0.AB)
you need to understand the object table and see what object leads to the
invalid object message; there is some mismatch between the driver and the
chip
> When I do cat /proc/interrupts and I short-circuit /CHG to ground, number
> increases so low-level handling of interrupt is working.
if I remember correctly, the mxt224 does periodic interrupts (200ms?)
when something is wrong with the config
regards, p.
--
Peter Meerwald
+43-664-2444418 (mobile)
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Information about Atmel MXT224
2014-01-08 12:50 ` Peter Meerwald
@ 2014-01-08 12:58 ` Gaëtan Carlier
0 siblings, 0 replies; 7+ messages in thread
From: Gaëtan Carlier @ 2014-01-08 12:58 UTC (permalink / raw)
To: Peter Meerwald
Cc: linux-input, linux-arm-kernel@lists.infradead.org, Joonyoung Shim
Hello,
> just ask harder; I got it from them
I am going to ask to another dealer.
> you need to understand the object table and see what object leads to the
> invalid object message; there is some mismatch between the driver and the
> chip
But you have to admit that without Protocol Guide, it is a little bit
harder ;-)
> if I remember correctly, the mxt224 does periodic interrupts (200ms?)
> when something is wrong with the config
That's explain why I previously saw Interrupts running free (100ms or
200ms).
Thank you,
Gaëtan Carlier
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-01-08 12:59 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-08 7:57 Information about Atmel MXT224 Gaëtan Carlier
2014-01-08 9:04 ` Alexander Shiyan
2014-01-08 11:24 ` Gaëtan Carlier
2014-01-08 11:42 ` Peter Meerwald
2014-01-08 12:24 ` Gaëtan Carlier
2014-01-08 12:50 ` Peter Meerwald
2014-01-08 12:58 ` Gaëtan Carlier
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).