[#4661] gpio-keys no longer works in trunk

Document created by Aaronwu Employee on Aug 29, 2013
Version 1Show Document
  • View in full screen mode

[#4661] gpio-keys no longer works in trunk

Submitted By: Mike Frysinger

Open Date

2008-11-20 21:01:37     Close Date

2008-11-21 11:06:37

Priority:

Medium     Assignee:

Graf Yang

Status:

Closed     Fixed In Release:

N/A

Found In Release:

N/A     Release:

Category:

N/A     Board:

EZKIT Lite

Processor:

BF548     Silicon Revision:

Is this bug repeatable?:

Yes     Resolution:

Fixed

Uboot version or rev.:

    Toolchain version or rev.:

App binary format:

N/A     

Summary: gpio-keys no longer works in trunk

Details:

 

the gpio irq changes broke gpio-keys as predicted

 

Hardware Trace:

   0 Target : <0x00004958> { _dump_stack + 0x0 }

     Source : <0x00005c32> { _bfin_gpio_request + 0x112 } CALL pcrel

   1 Target : <0x00005c32> { _bfin_gpio_request + 0x112 }

     Source : <0x00005ba6> { _bfin_gpio_request + 0x86 } IF !CC JUMP

   2 Target : <0x00005b8a> { _bfin_gpio_request + 0x6a }

     Source : <0x00005b72> { _bfin_gpio_request + 0x52 } IF !CC JUMP

   3 Target : <0x00005b70> { _bfin_gpio_request + 0x50 }

     Source : <0x000058a4> { _cmp_label + 0x30 } RTS

   4 Target : <0x0000589c> { _cmp_label + 0x28 }

     Source : <0x00005894> { _cmp_label + 0x20 } IF !CC JUMP

   5 Target : <0x0000588e> { _cmp_label + 0x1a }

     Source : <0x00005898> { _cmp_label + 0x24 } IF CC JUMP

   6 Target : <0x0000588e> { _cmp_label + 0x1a }

     Source : <0x00005898> { _cmp_label + 0x24 } IF CC JUMP

   7 Target : <0x0000588e> { _cmp_label + 0x1a }

     Source : <0x00005898> { _cmp_label + 0x24 } IF CC JUMP

   8 Target : <0x0000588e> { _cmp_label + 0x1a }

     Source : <0x00005898> { _cmp_label + 0x24 } IF CC JUMP

   9 Target : <0x0000588e> { _cmp_label + 0x1a }

     Source : <0x00005898> { _cmp_label + 0x24 } IF CC JUMP

  10 Target : <0x00005874> { _cmp_label + 0x0 }

     Source : <0x00005b6c> { _bfin_gpio_request + 0x4c } CALL pcrel

  11 Target : <0x00005b64> { _bfin_gpio_request + 0x44 }

     Source : <0x00005b58> { _bfin_gpio_request + 0x38 } IF !CC JUMP

  12 Target : <0x00005b20> { _bfin_gpio_request + 0x0 }

     Source : <0x000089a2> { _bfin_gpio_irq_type + 0x46 } CALL pcrel

  13 Target : <0x0000899e> { _bfin_gpio_irq_type + 0x42 }

     Source : <0x00086b2c> { _snprintf + 0x14 } RTS

  14 Target : <0x00086b28> { _snprintf + 0x10 }

     Source : <0x000865d4> { _vsnprintf + 0x7c } RTS

  15 Target : <0x000865c6> { _vsnprintf + 0x6e }

     Source : <0x000867e8> { _vsnprintf + 0x290 } JUMP.S

Stack info:

SP: [0x003d7cac] <0x003d7cac> /* kernel dynamic memory */

FP: (0x003d7d34)

Memory from 0x003d7ca0 to 003d8000

003d7ca0: 00000001  003d7cac  003d7d04 [00086b28]<00005c36> 0014bcd2  00000018  003d7cf4

003d7cc0: 00000018  00000038 <000089a6> 00000003  00161ffc  003d7cf4  00000018  00000038

003d7ce0: 0000007f  00000002  000240d0  00000010  0000007f  6f697067  7172692d  00373231

003d7d00: 00000000  039e0800 <00029c5a> 0015dde4  00161ffc  03983360  00000003  0000007f

003d7d20: 0000007f  000a21e0  00160234  0000007f  0000007f (00000000)<00029e40> 00161ffc

003d7d40: 00162014  03983360  0000007f  0000ffff <000824b2><039e0ee0> 00166a34  0015e670

003d7d60:<00029f28> 00161ffc  03bd4ec4  0000007f  00000043  00000000 <00005b70><000a0646>

003d7d80: 0015e374 <000fa3d6> 0015e694  03bd4ec4  0015e670  0000007f  00000000  00137090

003d7da0: 00000000  00000000  00000001 <0006cc50> 0012e30c  03bd4ec4  03bd4ec0  00000000

003d7dc0: 00000001  0015e37c  00000000  00166a34 <00099c56> 0015e37c  00166a34  0015a274

003d7de0: 0015e428  000000ac  00166a34  00000000  00000000 <000f9496><000f94be> 0015e290

003d7e00:<00099db0> 0015e37c  00166a34  0018e55c  0015e428  00166588  0018e55c  00000000

003d7e20:<0009944c> 00099d40  00166588  00000000  003d7e40  03996ba0 <00082a3c> 0014b7d4

003d7e40: 03bfb5d8  0015e3c4 <00099b02> 0014b7d4  00000000  03996ba0  00000000  003d7e80

003d7e60: 003d7e80 <0009980c> 00099d40 <0009982a> 00000000  00000000  00000000  0012340c

003d7e80: 0012e2e4  00000000 <00099f0c> 0014b7d4  00166a34  0018e55c  00000000  00000000

003d7ea0: 0014b7d4  00000007  00000000 <0000102c> 0014b7d4  00187424  00000000  00000000

003d7ec0: 00000000  00000000  00000000  00000000  ffffffff  003d7f04 <00081d7a> 00163fa0

003d7ee0: 001574ec  00157fd8 <00081dee> 03bfb6a4  00000000  0000021c  00157fd8  000000d0

003d7f00: 003d7f04  03bebf28  00000000  00000000  03bd0299 <00081f52> 00157fd8  001574ec

003d7f20: 00000000 <00067350> 00163fa0  001574ec  0018e55c  003d7f58  03bc4c20  03bd0120

003d7f40: 00000000  00000000  00157fd8  003d7f58 <0013078c><00067578> 0000021c <00067586>

003d7f60: 00163fa0  03bc4c20  00004000  00000000  00000000  003d7f98  7fffff00  00000001

003d7f80:<0002b3de> 003d7f98  00000106 <0006764a> 0018e378  03bd0120  00323632  00000000

003d7fa0: 00180000 <0002b43a> 00160234  0018e378  00000106  00163fa0 <0016e3b6> 0018e500

003d7fc0: 0018e378  00000000  00000000  00000000  00000000  00000000  00000000  00000000

003d7fe0: 00000001 <0000145e> 00000000  00000000  00000000  00000000  ffffffff  00000006

003d8000: 003d4340

Return addresses in stack:

    address : <0x00086b28> { _snprintf + 0x10 }

    address : <0x00005c36> { _bfin_gpio_request + 0x116 }

    address : <0x000089a6> { _bfin_gpio_irq_type + 0x4a }

    address : <0x00029c5a> { ___irq_set_trigger + 0x26 }

   frame  1 : <0x00029e40> { ___setup_irq + 0x124 }

    address : <0x000824b2> { _kobject_init + 0x26 }

    address : <0x039e0ee0> /* kernel dynamic memory */

    address : <0x00029f28> { _request_irq + 0x80 }

    address : <0x00005b70> { _bfin_gpio_request + 0x50 }

    address : <0x000a0646> { _input_allocate_device + 0x1a }

    address : <0x000fa3d6> { _gpio_keys_probe + 0xaa }

    address : <0x0006cc50> { _sysfs_create_link + 0xc }

    address : <0x00099c56> { _driver_probe_device + 0x82 }

    address : <0x000f9496> { _klist_next + 0x26 }

    address : <0x000f94be> { _klist_next + 0x4e }

    address : <0x00099db0> { ___driver_attach + 0x70 }

    address : <0x0009944c> { _bus_for_each_dev + 0x3c }

    address : <0x00082a3c> { _kobject_init_and_add + 0x24 }

    address : <0x00099b02> { _driver_attach + 0x1a }

    address : <0x0009980c> { _bus_add_driver + 0x64 }

    address : <0x0009982a> { _bus_add_driver + 0x82 }

    address : <0x00099f0c> { _driver_register + 0x40 }

    address : <0x0000102c> { _do_one_initcall + 0x2c }

    address : <0x00081d7a> { _ida_get_new_above + 0x96 }

    address : <0x00081dee> { _ida_get_new_above + 0x10a }

    address : <0x00081f52> { _ida_pre_get + 0xe }

    address : <0x00067350> { _proc_register + 0x30 }

    address : <0x0013078c> /* kernel dynamic memory */

    address : <0x00067578> { _create_proc_entry + 0x3c }

    address : <0x00067586> { _create_proc_entry + 0x4a }

    address : <0x0002b3de> { _register_irq_proc + 0x7e }

    address : <0x0006764a> { _proc_mkdir_mode + 0x2e }

    address : <0x0002b43a> { _init_irq_proc + 0x42 }

    address : <0x0016e3b6> { _kernel_init + 0x8a }

    address : <0x0000145e> { _kernel_thread_helper + 0x6 }

bfin-gpio: GPIO 24 is already reserved by gpio-keys: BTN0 !

setting trigger mode 3 for irq 127 failed (_bfin_gpio_irq_type+0x0/0x1b8)

gpio-keys: Unable to claim irq 127; error -16

gpio-keys: probe of gpio-keys.0 failed with error -16

 

Follow-ups

 

--- Graf Yang                                                2008-11-20 21:52:16

Kernel commit [#5727],[#5727] should have fixed this bug.

 

--- Mike Frysinger                                           2008-11-20 21:59:03

it isnt working for me with current trunk

 

ints-priority.c r5726

bfin_gpio.c r5727

 

--- Graf Yang                                                2008-11-20 22:43:45

Which board did you use? I use BF527-ezkit.

 

--- Mike Frysinger                                           2008-11-20 22:46:54

sorry, should have mentioned ... bf548-ezkit

 

--- Graf Yang                                                2008-11-20 23:09:21

I forgot to modify BF548 part.

 

--- Graf Yang                                                2008-11-21 04:09:24

Now it is fixed.

 

--- Mike Frysinger                                           2008-11-21 11:06:37

seems to be OK now ... thanks!

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

No Files Were Found

Attachments

    Outcomes