Hi Kadir and Igor, I'm trying to make mxt224 work without success, have you succeeded?, how?.
This is what i do in board-am335xevm.c:
# include <linux/i2c/atmel_mxt_ts.h> static u8 mxt_init_vals[] = { 0x00,0x00 ... }; static struct mxt_platform_data mxt_platform_data = { .config = mxt_init_vals, .config_length = ARRAY_SIZE(mxt_init_vals), ... .irqflags = IRQF_TRIGGER_FALLING | IRQF_ONESHOT, }; static struct pinmux_config mxt224_pin_mux[] = { {"mcasp0_aclkr.gpio3_18", OMAP_MUX_MODE7 | AM33XX_PIN_INPUT_PULLUP}, {NULL, 0}, }; static void mxt224_tsp_init(int evm_id, int profile) { setup_pin_mux(mxt224_pin_mux); return; } static struct evm_dev_cfg gen_purp_evm_dev_cfg[] = { ... {mxt224_tsp_init ,DEV_ON_BASEBOARD,PROFILE_NONE}, {sgx_init ,DEV_ON_BASEBOARD,PROFILE_NONE}, {NULL ,0 ,0 }, }; static struct i2c_board_info __initdata am335x_i2c0_boardinfo[] = { { I2C_BOARD_INFO("atmel_mxt_ts", 0x4a), .platform_data = &mxt_platform_data, .irq = OMAP_GPIO_IRQ(GPIO_TO_PIN(3, 18)), }, ... };
--
The device is successfully detected but it has wrong parameters, X and Y sizes are not what I config in mxt_init_vals.
[ 2.819000] atmel_mxt_ts 1-004a: Invalid object type
[ 2.946166] atmel_mxt_ts 1-004a: Family ID: xxx Variant ID: x Version: xxx Build: xxx (IDs hidden)
[ 2.954406] atmel_mxt_ts 1-004a: Matrix X Size: 16 Matrix Y Size: 14 Object Num: 16
[ 2.967041] input: Atmel maXTouch Touchscreen as /devices/platform/omap/omap_i2c.1/i2c-1/1-004a/input/input0
A new device is found in /dev/input/touchscreen0, but I can't see anything on it using 'cat'.
Do you use mxt_init_vals?, how do you configure it?, do you have a firmware file?
What am I doing wrong?
Thank you in advance