magician.h 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. /*
  2. * GPIO and IRQ definitions for HTC Magician PDA phones
  3. *
  4. * Copyright (c) 2007 Philipp Zabel
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License version 2 as
  8. * published by the Free Software Foundation.
  9. *
  10. */
  11. #ifndef _MAGICIAN_H_
  12. #define _MAGICIAN_H_
  13. #include <mach/irqs.h>
  14. /*
  15. * PXA GPIOs
  16. */
  17. #define GPIO0_MAGICIAN_KEY_POWER 0
  18. #define GPIO9_MAGICIAN_UNKNOWN 9
  19. #define GPIO10_MAGICIAN_GSM_IRQ 10
  20. #define GPIO11_MAGICIAN_GSM_OUT1 11
  21. #define GPIO13_MAGICIAN_CPLD_IRQ 13
  22. #define GPIO18_MAGICIAN_UNKNOWN 18
  23. #define GPIO22_MAGICIAN_VIBRA_EN 22
  24. #define GPIO26_MAGICIAN_GSM_POWER 26
  25. #define GPIO27_MAGICIAN_USBC_PUEN 27
  26. #define GPIO30_MAGICIAN_BQ24022_nCHARGE_EN 30
  27. #define GPIO37_MAGICIAN_KEY_HANGUP 37
  28. #define GPIO38_MAGICIAN_KEY_CONTACTS 38
  29. #define GPIO40_MAGICIAN_GSM_OUT2 40
  30. #define GPIO48_MAGICIAN_UNKNOWN 48
  31. #define GPIO56_MAGICIAN_UNKNOWN 56
  32. #define GPIO57_MAGICIAN_CAM_RESET 57
  33. #define GPIO75_MAGICIAN_SAMSUNG_POWER 75
  34. #define GPIO83_MAGICIAN_nIR_EN 83
  35. #define GPIO86_MAGICIAN_GSM_RESET 86
  36. #define GPIO87_MAGICIAN_GSM_SELECT 87
  37. #define GPIO90_MAGICIAN_KEY_CALENDAR 90
  38. #define GPIO91_MAGICIAN_KEY_CAMERA 91
  39. #define GPIO93_MAGICIAN_KEY_UP 93
  40. #define GPIO94_MAGICIAN_KEY_DOWN 94
  41. #define GPIO95_MAGICIAN_KEY_LEFT 95
  42. #define GPIO96_MAGICIAN_KEY_RIGHT 96
  43. #define GPIO97_MAGICIAN_KEY_ENTER 97
  44. #define GPIO98_MAGICIAN_KEY_RECORD 98
  45. #define GPIO99_MAGICIAN_HEADPHONE_IN 99
  46. #define GPIO100_MAGICIAN_KEY_VOL_UP 100
  47. #define GPIO101_MAGICIAN_KEY_VOL_DOWN 101
  48. #define GPIO102_MAGICIAN_KEY_PHONE 102
  49. #define GPIO103_MAGICIAN_LED_KP 103
  50. #define GPIO104_MAGICIAN_LCD_POWER_1 104
  51. #define GPIO105_MAGICIAN_LCD_POWER_2 105
  52. #define GPIO106_MAGICIAN_LCD_POWER_3 106
  53. #define GPIO107_MAGICIAN_DS1WM_IRQ 107
  54. #define GPIO108_MAGICIAN_GSM_READY 108
  55. #define GPIO114_MAGICIAN_UNKNOWN 114
  56. #define GPIO115_MAGICIAN_nPEN_IRQ 115
  57. #define GPIO116_MAGICIAN_nCAM_EN 116
  58. #define GPIO119_MAGICIAN_UNKNOWN 119
  59. #define GPIO120_MAGICIAN_UNKNOWN 120
  60. /*
  61. * CPLD IRQs
  62. */
  63. #define IRQ_MAGICIAN_SD (IRQ_BOARD_START + 0)
  64. #define IRQ_MAGICIAN_EP (IRQ_BOARD_START + 1)
  65. #define IRQ_MAGICIAN_BT (IRQ_BOARD_START + 2)
  66. #define IRQ_MAGICIAN_VBUS (IRQ_BOARD_START + 3)
  67. /*
  68. * CPLD EGPIOs
  69. */
  70. #define MAGICIAN_EGPIO_BASE 0x80 /* GPIO_BOARD_START */
  71. #define MAGICIAN_EGPIO(reg,bit) \
  72. (MAGICIAN_EGPIO_BASE + 8*reg + bit)
  73. /* output */
  74. #define EGPIO_MAGICIAN_TOPPOLY_POWER MAGICIAN_EGPIO(0, 2)
  75. #define EGPIO_MAGICIAN_LED_POWER MAGICIAN_EGPIO(0, 5)
  76. #define EGPIO_MAGICIAN_GSM_RESET MAGICIAN_EGPIO(0, 6)
  77. #define EGPIO_MAGICIAN_LCD_POWER MAGICIAN_EGPIO(0, 7)
  78. #define EGPIO_MAGICIAN_SPK_POWER MAGICIAN_EGPIO(1, 0)
  79. #define EGPIO_MAGICIAN_EP_POWER MAGICIAN_EGPIO(1, 1)
  80. #define EGPIO_MAGICIAN_IN_SEL0 MAGICIAN_EGPIO(1, 2)
  81. #define EGPIO_MAGICIAN_IN_SEL1 MAGICIAN_EGPIO(1, 3)
  82. #define EGPIO_MAGICIAN_MIC_POWER MAGICIAN_EGPIO(1, 4)
  83. #define EGPIO_MAGICIAN_CODEC_RESET MAGICIAN_EGPIO(1, 5)
  84. #define EGPIO_MAGICIAN_CODEC_POWER MAGICIAN_EGPIO(1, 6)
  85. #define EGPIO_MAGICIAN_BL_POWER MAGICIAN_EGPIO(1, 7)
  86. #define EGPIO_MAGICIAN_SD_POWER MAGICIAN_EGPIO(2, 0)
  87. #define EGPIO_MAGICIAN_CARKIT_MIC MAGICIAN_EGPIO(2, 1)
  88. #define EGPIO_MAGICIAN_UNKNOWN_WAVEDEV_DLL MAGICIAN_EGPIO(2, 2)
  89. #define EGPIO_MAGICIAN_FLASH_VPP MAGICIAN_EGPIO(2, 3)
  90. #define EGPIO_MAGICIAN_BL_POWER2 MAGICIAN_EGPIO(2, 4)
  91. #define EGPIO_MAGICIAN_BQ24022_ISET2 MAGICIAN_EGPIO(2, 5)
  92. #define EGPIO_MAGICIAN_GSM_POWER MAGICIAN_EGPIO(2, 7)
  93. /* input */
  94. #define EGPIO_MAGICIAN_CABLE_STATE_AC MAGICIAN_EGPIO(4, 0)
  95. #define EGPIO_MAGICIAN_CABLE_STATE_USB MAGICIAN_EGPIO(4, 1)
  96. #define EGPIO_MAGICIAN_BOARD_ID0 MAGICIAN_EGPIO(5, 0)
  97. #define EGPIO_MAGICIAN_BOARD_ID1 MAGICIAN_EGPIO(5, 1)
  98. #define EGPIO_MAGICIAN_BOARD_ID2 MAGICIAN_EGPIO(5, 2)
  99. #define EGPIO_MAGICIAN_LCD_SELECT MAGICIAN_EGPIO(5, 3)
  100. #define EGPIO_MAGICIAN_nSD_READONLY MAGICIAN_EGPIO(5, 4)
  101. #define EGPIO_MAGICIAN_EP_INSERT MAGICIAN_EGPIO(6, 1)
  102. #endif /* _MAGICIAN_H_ */