| TI-NSPIRE Keypad |
| |
| Required properties: |
| - compatible: Compatible property value should be "ti,nspire-keypad". |
| |
| - reg: Physical base address of the peripheral and length of memory mapped |
| region. |
| |
| - interrupts: The interrupt number for the peripheral. |
| |
| - scan-interval: How often to scan in us. Based on a APB speed of 33MHz, the |
| maximum and minimum delay time is ~2000us and ~500us respectively |
| |
| - row-delay: How long to wait before scanning each row. |
| |
| - clocks: The clock this peripheral is attached to. |
| |
| - linux,keymap: The keymap to use |
| (see Documentation/devicetree/bindings/input/matrix-keymap.txt) |
| |
| Optional properties: |
| - active-low: Specify that the keypad is active low (i.e. logical low signifies |
| a key press). |
| |
| Example: |
| |
| input { |
| compatible = "ti,nspire-keypad"; |
| reg = <0x900E0000 0x1000>; |
| interrupts = <16>; |
| |
| scan-interval = <1000>; |
| row-delay = <200>; |
| |
| clocks = <&apb_pclk>; |
| |
| linux,keymap = < |
| 0x0000001c 0x0001001c 0x00040039 |
| 0x0005002c 0x00060015 0x0007000b |
| 0x0008000f 0x0100002d 0x01010011 |
| 0x0102002f 0x01030004 0x01040016 |
| 0x01050014 0x0106001f 0x01070002 |
| 0x010a006a 0x02000013 0x02010010 |
| 0x02020019 0x02030007 0x02040018 |
| 0x02050031 0x02060032 0x02070005 |
| 0x02080028 0x0209006c 0x03000026 |
| 0x03010025 0x03020024 0x0303000a |
| 0x03040017 0x03050023 0x03060022 |
| 0x03070008 0x03080035 0x03090069 |
| 0x04000021 0x04010012 0x04020020 |
| 0x0404002e 0x04050030 0x0406001e |
| 0x0407000d 0x04080037 0x04090067 |
| 0x05010038 0x0502000c 0x0503001b |
| 0x05040034 0x0505001a 0x05060006 |
| 0x05080027 0x0509000e 0x050a006f |
| 0x0600002b 0x0602004e 0x06030068 |
| 0x06040003 0x0605006d 0x06060009 |
| 0x06070001 0x0609000f 0x0708002a |
| 0x0709001d 0x070a0033 >; |
| }; |