ams-delta-fiq.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. /*
  2. * arch/arm/mach-omap1/include/ams-delta-fiq.h
  3. *
  4. * Taken from the original Amstrad modifications to fiq.h
  5. *
  6. * Copyright (c) 2004 Amstrad Plc
  7. * Copyright (c) 2006 Matt Callow
  8. * Copyright (c) 2010 Janusz Krzysztofik
  9. *
  10. * This program is free software; you can redistribute it and/or modify
  11. * it under the terms of the GNU General Public License version 2 as
  12. * published by the Free Software Foundation.
  13. */
  14. #ifndef __AMS_DELTA_FIQ_H
  15. #define __AMS_DELTA_FIQ_H
  16. #include <plat/irqs.h>
  17. /*
  18. * Interrupt number used for passing control from FIQ to IRQ.
  19. * IRQ12, described as reserved, has been selected.
  20. */
  21. #define INT_DEFERRED_FIQ INT_1510_RES12
  22. /*
  23. * Base address of an interrupt handler that the INT_DEFERRED_FIQ belongs to.
  24. */
  25. #if (INT_DEFERRED_FIQ < IH2_BASE)
  26. #define DEFERRED_FIQ_IH_BASE OMAP_IH1_BASE
  27. #else
  28. #define DEFERRED_FIQ_IH_BASE OMAP_IH2_BASE
  29. #endif
  30. /*
  31. * These are the offsets from the beginning of the fiq_buffer. They are put here
  32. * since the buffer and header need to be accessed by drivers servicing devices
  33. * which generate GPIO interrupts - e.g. keyboard, modem, hook switch.
  34. */
  35. #define FIQ_MASK 0
  36. #define FIQ_STATE 1
  37. #define FIQ_KEYS_CNT 2
  38. #define FIQ_TAIL_OFFSET 3
  39. #define FIQ_HEAD_OFFSET 4
  40. #define FIQ_BUF_LEN 5
  41. #define FIQ_KEY 6
  42. #define FIQ_MISSED_KEYS 7
  43. #define FIQ_BUFFER_START 8
  44. #define FIQ_GPIO_INT_MASK 9
  45. #define FIQ_KEYS_HICNT 10
  46. #define FIQ_IRQ_PEND 11
  47. #define FIQ_SIR_CODE_L1 12
  48. #define IRQ_SIR_CODE_L2 13
  49. #define FIQ_CNT_INT_00 14
  50. #define FIQ_CNT_INT_KEY 15
  51. #define FIQ_CNT_INT_MDM 16
  52. #define FIQ_CNT_INT_03 17
  53. #define FIQ_CNT_INT_HSW 18
  54. #define FIQ_CNT_INT_05 19
  55. #define FIQ_CNT_INT_06 20
  56. #define FIQ_CNT_INT_07 21
  57. #define FIQ_CNT_INT_08 22
  58. #define FIQ_CNT_INT_09 23
  59. #define FIQ_CNT_INT_10 24
  60. #define FIQ_CNT_INT_11 25
  61. #define FIQ_CNT_INT_12 26
  62. #define FIQ_CNT_INT_13 27
  63. #define FIQ_CNT_INT_14 28
  64. #define FIQ_CNT_INT_15 29
  65. #define FIQ_CIRC_BUFF 30 /*Start of circular buffer */
  66. #ifndef __ASSEMBLER__
  67. extern unsigned int fiq_buffer[];
  68. extern unsigned char qwerty_fiqin_start, qwerty_fiqin_end;
  69. extern void __init ams_delta_init_fiq(void);
  70. #endif
  71. #endif