Good afternoon,
I am trying to backport the edt-ft5x06 driver to 3.1.10 kernel for my Apalis T30 but I have some issues.
I am using this driver as starting point:
edt-ft5x06.c
and added these lines in board-apalis_t30.c board file
static struct edt_ft5x06_platform_data edt_ft5x06_pdata = {
.irq_pin = APALIS_GPIO5,
.reset_pin = APALIS_GPIO6,
.pinmux_fusion_pins = &pinmux_fusion_pins,
};
The problem is that i get segmentation fault when I try to compile the code and though the touchscreen0 device is found it doesn’t work at all.
here is my dmesg when i load the module
[ 564.592467] gpio_request: gpio-128 (edt-ft5x06 reset) status -16
[ 564.779965] edt_ft5x06 0-0035: crc error: 0xfc expected, got 0x40
[ 564.786426] edt_ft5x06 0-0035: crc error: 0xfc expected, got 0x70
[ 564.792887] edt_ft5x06 0-0035: crc error: 0xfc expected, got 0x71
[ 564.799308] edt_ft5x06 0-0035: crc error: 0xfc expected, got 0x48
[ 564.805981] edt_ft5x06 0-0035: crc error: 0xfc expected, got 0x73
[ 564.812429] edt_ft5x06 0-0035: crc error: 0xfc expected, got 0x74
[ 564.818538] Unable to handle kernel NULL pointer dereference at virtual address 0000000c
[ 564.826663] pgd = e6f24000
[ 564.829378] [0000000c] *pgd=a73f0831, *pte=00000000, *ppte=00000000
[ 564.835718] Internal error: Oops: 817 [#1] PREEMPT SMP
[ 564.840859] Modules linked in: edt_ft5x06(+) [last unloaded: edt_ft5x06]
[ 564.847610] CPU: 0 Tainted: G W (3.1.10-gbe10973-dirty #19)
[ 564.854338] PC is at edt_ft5x06_ts_probe+0x2f8/0x53c [edt_ft5x06]
[ 564.860447] LR is at console_unlock+0x1b8/0x1ec
[ 564.864987] pc : [<bf000718>] lr : [<c005ba58>] psr: 60000113
[ 564.864998] sp : e7895d40 ip : e7895bd8 fp : e7895da4
[ 564.876478] r10: e65f1b14 r9 : e79a9420 r8 : e79a9400
[ 564.881707] r7 : c095ac68 r6 : 00000000 r5 : 00000000 r4 : e65f1ad0
[ 564.888239] r3 : 00000018 r2 : c095d7a0 r1 : 60000193 r0 : fffffffb
[ 564.894771] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ 564.901910] Control: 10c5387d Table: a6f2404a DAC: 00000015
[ 564.907660]
[ 564.907665] LR: 0xc005b9d8:
[ 564.911943] b9d8 eaffffd6 e1a08006 e5952068 e1a0100a e1a00008 ebfffe02 e121f009 eaffffb9
[ 564.920242] b9f8 e5942004 e3a03000 e59f007c e5843028 e1520003 15843004 eb1708bc e59f0060
[ 564.928540] ba18 eb008dcc e59f0060 eb170a60 e5942010 e1a01009 e5943008 e59f004c e1520003
[ 564.936837] ba38 13a07001 eb1708c6 e3570000 1a000004 e51b3030 e3530000 0a000006 ebffff70
[ 564.945128] ba58 ea000004 ebfffe63 e3500000 0afffff7 e3a07001 eaffff9b e24bd028 e89daff0
[ 564.953426] ba78 c09a4d98 c095d780 c095d740 c09a4e4c c095d7a8 e1a0c00d e92ddff0 e24cb004
[ 564.961722] ba98 e24dd05c e52de004 e8bd4000 e59f540c e1a07000 e1a0a001 e5953034 e50b3064
[ 564.970020] bab8 e59f33fc e5934004 e3540000 1a000013 e1a0300d e3c33d7f e3c3303f e5932004
[ 564.978319]
[ 564.978324] SP: 0xe7895cc0:
[ 564.982604] 5cc0 e7895cf0 00000000 c095ac68 e65f1ad0 00000000 00000000 bf000718 60000113
[ 564.990893] 5ce0 ffffffff e7895d2c e7895da4 e7895cf8 c000db18 c00082d8 fffffffb 60000193
[ 564.999189] 5d00 c095d7a0 00000018 e65f1ad0 00000000 00000000 c095ac68 e79a9400 e79a9420
[ 565.007481] 5d20 e65f1b14 e7895da4 e7895bd8 e7895d40 c005ba58 bf000718 60000113 ffffffff
[ 565.015779] 5d40 e7895d61 00000000 e7005d94 e7895d58 c0145f6c c01454bc c007f620 c007e77c
[ 565.024074] 5d60 bbbbbb00 bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb 00bbbbbb 00000000 bf0012b4
[ 565.032369] 5d80 e79a9400 bf000420 e79a9404 bf001748 00000001 00000000 e7895dc4 e7895da8
[ 565.040667] 5da0 c03e57b0 bf00042c e79a9420 e79a9454 c0a09bf0 c0980a18 e7895dec e7895dc8
[ 565.048962]
[ 565.048967] IP: 0xe7895b58:
[ 565.053243] 5b58 c007f884 c095fdc8 00292b28 e7895cf8 e7894000 e7895cf8 e6dc6580 e7894000
[ 565.061534] 5b78 e7895bfc e7895b88 c0011b0c c000f1b4 00000006 0000000b 00000000 e73f0000
[ 565.069827] 5b98 e65d1240 e65d1240 00000817 e65d127c e7895bcc e7895bb8 c06182d8 c005ba98
[ 565.078123] 5bb8 e65d1240 e7895bd4 e7895bfc e7895be0 c00155fc c06182bc c07daa25 0000000c
[ 565.086415] 5bd8 e7895cf8 00000817 e65d1240 e65d1240 00000817 e65d127c e7895c14 e7895c00
[ 565.094707] 5bf8 c0617dd4 c0011a38 00000817 e6dc6580 e7895c4c e7895c18 c0015870 c0617d7c
[ 565.103002] 5c18 0000000f 60000113 00000000 00000817 c0939264 0000000c e7895cf8 e79a9400
[ 565.111295] 5c38 e79a9420 e65f1b14 e7895cf4 e7895c50 c0008310 c0015668 e79a60d0 e79a60c0
[ 565.119593]
[ 565.119598] FP: 0xe7895d24:
[ 565.123880] 5d24 e7895da4 e7895bd8 e7895d40 c005ba58 bf000718 60000113 ffffffff e7895d61
[ 565.132179] 5d44 00000000 e7005d94 e7895d58 c0145f6c c01454bc c007f620 c007e77c bbbbbb00
[ 565.140482] 5d64 bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb 00bbbbbb 00000000 bf0012b4 e79a9400
[ 565.148777] 5d84 bf000420 e79a9404 bf001748 00000001 00000000 e7895dc4 e7895da8 c03e57b0
[ 565.157074] 5da4 bf00042c e79a9420 e79a9454 c0a09bf0 c0980a18 e7895dec e7895dc8 c0314e70
[ 565.165369] 5dc4 c03e571c e79a9420 e79a9454 bf001748 c0980a18 e7894000 00000001 e7895e0c
[ 565.173663] 5de4 e7895df0 c031500c c0314db0 00000000 bf001748 c0314f94 c0980a18 e7895e34
[ 565.181959] 5e04 e7895e10 c0313a8c c0314fa0 e7937920 e799c478 c026f584 bf001748 e7946260
[ 565.190251]
[ 565.190256] R2: 0xc095d720:
[ 565.194535] d720 00000018 00000019 0000001a 0000001b 0000001c 0000001d 0000001e 0000001f
[ 565.202831] d740 c09a525c 00020000 00000000 c095d74c c095d74c 00000000 00000000 000001f4
[ 565.211128] d760 0000000a 00000000 00000000 00000000 0000000f 00000004 00000001 00000007
[ 565.219420] d780 00000000 00000000 00000001 c095d78c c095d78c 00000001 00000000 00000000
[ 565.227714] d7a0 c095d7a0 c095d7a0 00000004 ffffffff 00000000 00000001 ffffffff 00000001
[ 565.236011] d7c0 00000000 00000001 00000000 00000000 c095d7d0 c095d7d0 00000000 00000000
[ 565.244300] d7e0 c005cf30 c0958e10 00000000 00000001 00000000 00000000 c095d7f8 c095d7f8
[ 565.252593] d800 00000000 00000000 c07b74cd c07812bc c0781291 c0781298 c07b60bd c078129f
[ 565.260890]
[ 565.260895] R4: 0xe65f1a50:
[ 565.265172] 1a50 6d726f66 6864732d 785c6963 65746432 2e617267 6d6d2d33 6f685f63 6d2d7473
[ 565.273466] 1a70 2d30636d 30636d6d 3030303a 6c622d31 2d6b636f 62636d6d 2d306b6c 62636d6d
[ 565.281760] 1a90 62306b6c 30746f6f 7665642e 2e656369 746e6177 f7ba0073 2000e87e 4630bdf8
[ 565.290053] 1ab0 eadcf7ba 000bf06f bf00bdf8 4ff0e92d e79a9560 e79a9560 c03176ec 00000000
[ 565.298351] 1ad0 e79a9400 00000000 fffbfffb 00000000 00000000 00000000 00000001 00000000
[ 565.306648] 1af0 00000000 e65f1af4 e65f1af4 00000000 00000000 fffffffb fffffffb fffffffb
[ 565.314944] 1b10 fffffffb bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb 000000bb 2d6fdd21
[ 565.323234] 1b30 80a0f000 2d70dd58 8145f000 d1202d73 2d737973 69766564 2d736563 74616c70
[ 565.331535]
[ 565.331540] R7: 0xc095abe8:
[ 565.335816] abe8 00000000 00000000 00000000 00000000 00000000 00000000 0000008f 000000a9
[ 565.344103] ac08 00000001 c077f129 00000001 00000001 0000000a 00000000 00000000 00000000
[ 565.352398] ac28 00000001 c0047c8c 00000001 0000000c 000002e0 00000002 00000000 00000000
[ 565.360693] ac48 00000000 00000000 c095ac5c c095ac58 01000104 01000104 07030503 00000001
[ 565.368989] ac68 00000096 00000080 c0047d98 00000000 00000000 00f42400 00000000 00000000
[ 565.377288] ac88 00000000 00000000 00000001 00000001 00000001 ffffffff 00000000 00000002
[ 565.385585] aca8 c095acf8 00000000 c095acd8 00000000 00000000 00000000 00000000 00000000
[ 565.393873] acc8 00000000 00000000 00000000 00000000 c0047a2c c0047a14 00000000 00000003
[ 565.402167]
[ 565.402172] R8: 0xe79a9380:
[ 565.406449] 9380 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 565.414743] 93a0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 565.423033] 93c0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 565.431322] 93e0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 565.439617] 9400 00350000 2d746465 78357466 00003630 00000000 00000000 e79a60c0 bf001720
[ 565.447912] 9420 e79a60f0 e799c440 e79ac220 e79aecfc e79a962c e79a60f8 e7819120 c09776d8
[ 565.456211] 9440 e79ada28 00000003 00000007 00000000 c09809e8 00000000 00000000 00000000
[ 565.464503] 9460 e79a9460 e79a9460 e6dc6580 c0980a18 bf001748 c095ac68 00000000 00000000
[ 565.472797]
[ 565.472802] R9: 0xe79a93a0:
[ 565.477078] 93a0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 565.485364] 93c0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 565.493662] 93e0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 565.501957] 9400 00350000 2d746465 78357466 00003630 00000000 00000000 e79a60c0 bf001720
[ 565.510254] 9420 e79a60f0 e799c440 e79ac220 e79aecfc e79a962c e79a60f8 e7819120 c09776d8
[ 565.518548] 9440 e79ada28 00000003 00000007 00000000 c09809e8 00000000 00000000 00000000
[ 565.526841] 9460 e79a9460 e79a9460 e6dc6580 c0980a18 bf001748 c095ac68 00000000 00000000
[ 565.535133] 9480 00000000 00000000 e79aed58 e79a9688 7fffffff 00000000 00000000 e79a949c
[ 565.543428]
[ 565.543433] R10: 0xe65f1a94:
[ 565.547797] 1a94 30746f6f 7665642e 2e656369 746e6177 f7ba0073 2000e87e 4630bdf8 eadcf7ba
[ 565.556091] 1ab4 000bf06f bf00bdf8 4ff0e92d e79a9560 e79a9560 c03176ec 00000000 e79a9400
[ 565.564383] 1ad4 00000000 fffbfffb 00000000 00000000 00000000 00000001 00000000 00000000
[ 565.572677] 1af4 e65f1af4 e65f1af4 00000000 00000000 fffffffb fffffffb fffffffb fffffffb
[ 565.580969] 1b14 bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb 000000bb 2d6fdd21 80a0f000
[ 565.589265] 1b34 2d70dd58 8145f000 d1202d73 2d737973 69766564 2d736563 74616c70 6d726f66
[ 565.597565] 1b54 6864732d 785c6963 65746432 2e617267 6d6d2d33 6f685f63 6d2d7473 2d30636d
[ 565.605856] 1b74 30636d6d 3030303a 6c622d31 2d6b636f 62636d6d 2d306b6c 62636d6d 62306b6c
[ 565.614155] Process modprobe (pid: 635, stack limit = 0xe78942f0)
[ 565.620254] Stack: (0xe7895d40 to 0xe7896000)
[ 565.624623] 5d40: e7895d61 00000000 e7005d94 e7895d58 c0145f6c c01454bc c007f620 c007e77c
[ 565.632813] 5d60: bbbbbb00 bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb 00bbbbbb 00000000 bf0012b4
[ 565.641002] 5d80: e79a9400 bf000420 e79a9404 bf001748 00000001 00000000 e7895dc4 e7895da8
[ 565.649191] 5da0: c03e57b0 bf00042c e79a9420 e79a9454 c0a09bf0 c0980a18 e7895dec e7895dc8
[ 565.657380] 5dc0: c0314e70 c03e571c e79a9420 e79a9454 bf001748 c0980a18 e7894000 00000001
[ 565.665568] 5de0: e7895e0c e7895df0 c031500c c0314db0 00000000 bf001748 c0314f94 c0980a18
[ 565.673756] 5e00: e7895e34 e7895e10 c0313a8c c0314fa0 e7937920 e799c478 c026f584 bf001748
[ 565.681944] 5e20: e7946260 00000000 e7895e44 e7895e38 c0314ab8 c0313a04 e7895e74 e7895e48
[ 565.690132] 5e40: c03146e0 c0314a9c bf0015df e7895e58 c026f94c bf001748 c099eb80 bf004000
[ 565.698321] 5e60: e7894000 e7894000 e7895e94 e7895e78 c03156e8 c03145f8 bf001720 c099eb80
[ 565.706508] 5e80: bf004000 e7894000 e7895eac e7895e98 c03e7848 c0315644 bf0017a8 c099eb80
[ 565.714694] 5ea0: e7895ebc e7895eb0 bf004018 c03e7804 e7895efc e7895ec0 c0008754 bf00400c
[ 565.722880] 5ec0: e7895eec bf0017a8 00000001 e6586520 bf0017f0 bf0017a8 00000001 e6586520
[ 565.731068] 5ee0: bf0017f0 e7894000 00000001 e6586544 e7895fa4 e7895f00 c00930bc c00086b8
[ 565.739259] 5f00: bf0017b4 c0015668 00016d32 bf001904 c0090c3c 00000028 c061e488 c0274018
[ 565.747444] 5f20: 00000000 00000000 00000000 00000000 00000000 00000000 e8fb1000 00024508
[ 565.755633] 5f40: e8fd4d60 e8fcadc0 e8fcb9e0 e6cbf6c0 00001918 00001d38 00000000 00000000
[ 565.763820] 5f60: 0000002f 00000030 00000019 00000016 00000012 00000000 00000002 00040000
[ 565.772009] 5f80: 40132000 00016d32 00000080 c000e284 e7894000 00000000 00000000 e7895fa8
[ 565.780198] 5fa0: c000e040 c0092390 00040000 40132000 40132000 00024508 00016d32 00000026
[ 565.788387] 5fc0: 00040000 40132000 00016d32 00000080 00000000 00000000 00000000 0001edf0
[ 565.796576] 5fe0: 402a6640 bebb9948 00012bf1 402a6650 60070010 40132000 f6dff339 c9eae840
[ 565.804805] [<bf000718>] (edt_ft5x06_ts_probe+0x2f8/0x53c [edt_ft5x06]) from [<c03e57b0>] (i2c_device_probe+0xa0/0xd4)
[ 565.815535] [<c03e57b0>] (i2c_device_probe+0xa0/0xd4) from [<c0314e70>] (driver_probe_device+0xcc/0x19c)
[ 565.825038] [<c0314e70>] (driver_probe_device+0xcc/0x19c) from [<c031500c>] (__driver_attach+0x78/0x9c)
[ 565.834453] [<c031500c>] (__driver_attach+0x78/0x9c) from [<c0313a8c>] (bus_for_each_dev+0x94/0xa4)
[ 565.843519] [<c0313a8c>] (bus_for_each_dev+0x94/0xa4) from [<c0314ab8>] (driver_attach+0x28/0x30)
[ 565.852409] [<c0314ab8>] (driver_attach+0x28/0x30) from [<c03146e0>] (bus_add_driver+0xf4/0x230)
[ 565.861212] [<c03146e0>] (bus_add_driver+0xf4/0x230) from [<c03156e8>] (driver_register+0xb0/0x128)
[ 565.870277] [<c03156e8>] (driver_register+0xb0/0x128) from [<c03e7848>] (i2c_register_driver+0x50/0xc0)
[ 565.879705] [<c03e7848>] (i2c_register_driver+0x50/0xc0) from [<bf004018>] (edt_ft5x06_ts_driver_init+0x18/0x24 [edt_ft5x06])
[ 565.891034] [<bf004018>] (edt_ft5x06_ts_driver_init+0x18/0x24 [edt_ft5x06]) from [<c0008754>] (do_one_initcall+0xa8/0x164)
[ 565.902100] [<c0008754>] (do_one_initcall+0xa8/0x164) from [<c00930bc>] (sys_init_module+0xd38/0x1964)
[ 565.911430] [<c00930bc>] (sys_init_module+0xd38/0x1964) from [<c000e040>] (ret_fast_syscall+0x0/0x30)
[ 565.920662] Code: e1a00004 ebfffe8f e3a03018 e1c400ba (e1c630bc)
[ 565.932147] ---[ end trace aa6871aee5f6b830 ]---
and the result of i2cdetect
root@apalis-t30:~# -y -r 0
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- 35 -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- 58 -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Do you have any suggestions?
Best regards