collie.h 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * arch/arm/mach-sa1100/include/mach/collie.h
  4. *
  5. * This file contains the hardware specific definitions for Collie
  6. * Only include this file from SA1100-specific files.
  7. *
  8. * ChangeLog:
  9. * 04-06-2001 Lineo Japan, Inc.
  10. * 04-16-2001 SHARP Corporation
  11. * 07-07-2002 Chris Larson <[email protected]>
  12. *
  13. */
  14. #ifndef __ASM_ARCH_COLLIE_H
  15. #define __ASM_ARCH_COLLIE_H
  16. #include "hardware.h" /* Gives GPIO_MAX */
  17. extern void locomolcd_power(int on);
  18. #define COLLIE_SCOOP_GPIO_BASE (GPIO_MAX + 1)
  19. #define COLLIE_GPIO_CHARGE_ON (COLLIE_SCOOP_GPIO_BASE + 0)
  20. #define COLLIE_SCP_DIAG_BOOT1 SCOOP_GPCR_PA12
  21. #define COLLIE_SCP_DIAG_BOOT2 SCOOP_GPCR_PA13
  22. #define COLLIE_SCP_MUTE_L SCOOP_GPCR_PA14
  23. #define COLLIE_SCP_MUTE_R SCOOP_GPCR_PA15
  24. #define COLLIE_SCP_5VON SCOOP_GPCR_PA16
  25. #define COLLIE_SCP_AMP_ON SCOOP_GPCR_PA17
  26. #define COLLIE_GPIO_VPEN (COLLIE_SCOOP_GPIO_BASE + 7)
  27. #define COLLIE_SCP_LB_VOL_CHG SCOOP_GPCR_PA19
  28. #define COLLIE_SCOOP_IO_DIR (COLLIE_SCP_MUTE_L | COLLIE_SCP_MUTE_R | \
  29. COLLIE_SCP_5VON | COLLIE_SCP_AMP_ON | \
  30. COLLIE_SCP_LB_VOL_CHG)
  31. #define COLLIE_SCOOP_IO_OUT (COLLIE_SCP_MUTE_L | COLLIE_SCP_MUTE_R)
  32. /* GPIOs for gpiolib */
  33. #define COLLIE_GPIO_ON_KEY (0)
  34. #define COLLIE_GPIO_AC_IN (1)
  35. #define COLLIE_GPIO_SDIO_INT (11)
  36. #define COLLIE_GPIO_CF_IRQ (14)
  37. #define COLLIE_GPIO_nREMOCON_INT (15)
  38. #define COLLIE_GPIO_UCB1x00_RESET (16)
  39. #define COLLIE_GPIO_nMIC_ON (17)
  40. #define COLLIE_GPIO_nREMOCON_ON (18)
  41. #define COLLIE_GPIO_CO (20)
  42. #define COLLIE_GPIO_MCP_CLK (21)
  43. #define COLLIE_GPIO_CF_CD (22)
  44. #define COLLIE_GPIO_UCB1x00_IRQ (23)
  45. #define COLLIE_GPIO_WAKEUP (24)
  46. #define COLLIE_GPIO_GA_INT (25)
  47. #define COLLIE_GPIO_MAIN_BAT_LOW (26)
  48. /* GPIO definitions for direct register access */
  49. #define _COLLIE_GPIO_ON_KEY GPIO_GPIO(0)
  50. #define _COLLIE_GPIO_AC_IN GPIO_GPIO(1)
  51. #define _COLLIE_GPIO_nREMOCON_INT GPIO_GPIO(15)
  52. #define _COLLIE_GPIO_UCB1x00_RESET GPIO_GPIO(16)
  53. #define _COLLIE_GPIO_nMIC_ON GPIO_GPIO(17)
  54. #define _COLLIE_GPIO_nREMOCON_ON GPIO_GPIO(18)
  55. #define _COLLIE_GPIO_CO GPIO_GPIO(20)
  56. #define _COLLIE_GPIO_WAKEUP GPIO_GPIO(24)
  57. /* Interrupts */
  58. #define COLLIE_IRQ_GPIO_ON_KEY IRQ_GPIO0
  59. #define COLLIE_IRQ_GPIO_AC_IN IRQ_GPIO1
  60. #define COLLIE_IRQ_GPIO_SDIO_IRQ IRQ_GPIO11
  61. #define COLLIE_IRQ_GPIO_CF_IRQ IRQ_GPIO14
  62. #define COLLIE_IRQ_GPIO_nREMOCON_INT IRQ_GPIO15
  63. #define COLLIE_IRQ_GPIO_CO IRQ_GPIO20
  64. #define COLLIE_IRQ_GPIO_CF_CD IRQ_GPIO22
  65. #define COLLIE_IRQ_GPIO_UCB1x00_IRQ IRQ_GPIO23
  66. #define COLLIE_IRQ_GPIO_WAKEUP IRQ_GPIO24
  67. #define COLLIE_IRQ_GPIO_GA_INT IRQ_GPIO25
  68. #define COLLIE_IRQ_GPIO_MAIN_BAT_LOW IRQ_GPIO26
  69. /* GPIO's on the TC35143AF (Toshiba Analog Frontend) */
  70. #define COLLIE_TC35143_GPIO_BASE (GPIO_MAX + 13)
  71. #define COLLIE_TC35143_GPIO_VERSION0 UCB_IO_0
  72. #define COLLIE_TC35143_GPIO_TBL_CHK UCB_IO_1
  73. #define COLLIE_TC35143_GPIO_VPEN_ON UCB_IO_2
  74. #define COLLIE_GPIO_IR_ON (COLLIE_TC35143_GPIO_BASE + 3)
  75. #define COLLIE_TC35143_GPIO_AMP_ON UCB_IO_4
  76. #define COLLIE_TC35143_GPIO_VERSION1 UCB_IO_5
  77. #define COLLIE_TC35143_GPIO_FS8KLPF UCB_IO_5
  78. #define COLLIE_TC35143_GPIO_BUZZER_BIAS UCB_IO_6
  79. #define COLLIE_GPIO_MBAT_ON (COLLIE_TC35143_GPIO_BASE + 7)
  80. #define COLLIE_GPIO_BBAT_ON (COLLIE_TC35143_GPIO_BASE + 8)
  81. #define COLLIE_GPIO_TMP_ON (COLLIE_TC35143_GPIO_BASE + 9)
  82. #define COLLIE_TC35143_GPIO_IN (UCB_IO_0 | UCB_IO_2 | UCB_IO_5)
  83. #define COLLIE_TC35143_GPIO_OUT (UCB_IO_1 | UCB_IO_3 | UCB_IO_4 \
  84. | UCB_IO_6)
  85. #endif