se7722.h 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. #ifndef __ASM_SH_SE7722_H
  2. #define __ASM_SH_SE7722_H
  3. /*
  4. * linux/include/asm-sh/se7722.h
  5. *
  6. * Copyright (C) 2007 Nobuhiro Iwamatsu
  7. *
  8. * Hitachi UL SolutionEngine 7722 Support.
  9. *
  10. * This file is subject to the terms and conditions of the GNU General Public
  11. * License. See the file "COPYING" in the main directory of this archive
  12. * for more details.
  13. *
  14. */
  15. #include <asm/addrspace.h>
  16. /* Box specific addresses. */
  17. #define SE_AREA0_WIDTH 4 /* Area0: 32bit */
  18. #define PA_ROM 0xa0000000 /* EPROM */
  19. #define PA_ROM_SIZE 0x00200000 /* EPROM size 2M byte */
  20. #define PA_FROM 0xa1000000 /* Flash-ROM */
  21. #define PA_FROM_SIZE 0x01000000 /* Flash-ROM size 16M byte */
  22. #define PA_EXT1 0xa4000000
  23. #define PA_EXT1_SIZE 0x04000000
  24. #define PA_SDRAM 0xaC000000 /* DDR-SDRAM(Area3) 64MB */
  25. #define PA_SDRAM_SIZE 0x04000000
  26. #define PA_EXT4 0xb0000000
  27. #define PA_EXT4_SIZE 0x04000000
  28. #define PA_PERIPHERAL 0xB0000000
  29. #define PA_PCIC PA_PERIPHERAL /* MR-SHPC-01 PCMCIA */
  30. #define PA_MRSHPC (PA_PERIPHERAL + 0x003fffe0) /* MR-SHPC-01 PCMCIA controller */
  31. #define PA_MRSHPC_MW1 (PA_PERIPHERAL + 0x00400000) /* MR-SHPC-01 memory window base */
  32. #define PA_MRSHPC_MW2 (PA_PERIPHERAL + 0x00500000) /* MR-SHPC-01 attribute window base */
  33. #define PA_MRSHPC_IO (PA_PERIPHERAL + 0x00600000) /* MR-SHPC-01 I/O window base */
  34. #define MRSHPC_OPTION (PA_MRSHPC + 6)
  35. #define MRSHPC_CSR (PA_MRSHPC + 8)
  36. #define MRSHPC_ISR (PA_MRSHPC + 10)
  37. #define MRSHPC_ICR (PA_MRSHPC + 12)
  38. #define MRSHPC_CPWCR (PA_MRSHPC + 14)
  39. #define MRSHPC_MW0CR1 (PA_MRSHPC + 16)
  40. #define MRSHPC_MW1CR1 (PA_MRSHPC + 18)
  41. #define MRSHPC_IOWCR1 (PA_MRSHPC + 20)
  42. #define MRSHPC_MW0CR2 (PA_MRSHPC + 22)
  43. #define MRSHPC_MW1CR2 (PA_MRSHPC + 24)
  44. #define MRSHPC_IOWCR2 (PA_MRSHPC + 26)
  45. #define MRSHPC_CDCR (PA_MRSHPC + 28)
  46. #define MRSHPC_PCIC_INFO (PA_MRSHPC + 30)
  47. #define PA_LED (PA_PERIPHERAL + 0x00800000) /* 8bit LED */
  48. #define PA_FPGA (PA_PERIPHERAL + 0x01800000) /* FPGA base address */
  49. #define PA_LAN (PA_AREA6_IO + 0) /* SMC LAN91C111 */
  50. /* GPIO */
  51. #define MSTPCR0 0xA4150030UL
  52. #define MSTPCR1 0xA4150034UL
  53. #define MSTPCR2 0xA4150038UL
  54. #define FPGA_IN 0xb1840000UL
  55. #define FPGA_OUT 0xb1840004UL
  56. #define PORT_PECR 0xA4050108UL
  57. #define PORT_PJCR 0xA4050110UL
  58. #define PORT_PSELD 0xA4050154UL
  59. #define PORT_PSELB 0xA4050150UL
  60. #define PORT_PSELC 0xA4050152UL
  61. #define PORT_PKCR 0xA4050112UL
  62. #define PORT_PHCR 0xA405010EUL
  63. #define PORT_PLCR 0xA4050114UL
  64. #define PORT_PMCR 0xA4050116UL
  65. #define PORT_PRCR 0xA405011CUL
  66. #define PORT_PXCR 0xA4050148UL
  67. #define PORT_PSELA 0xA405014EUL
  68. #define PORT_PYCR 0xA405014AUL
  69. #define PORT_PZCR 0xA405014CUL
  70. /* IRQ */
  71. #define IRQ0_IRQ 32
  72. #define IRQ1_IRQ 33
  73. #define IRQ01_MODE 0xb1800000
  74. #define IRQ01_STS 0xb1800004
  75. #define IRQ01_MASK 0xb1800008
  76. /* Bits in IRQ01_* registers */
  77. #define SE7722_FPGA_IRQ_USB 0 /* IRQ0 */
  78. #define SE7722_FPGA_IRQ_SMC 1 /* IRQ0 */
  79. #define SE7722_FPGA_IRQ_MRSHPC0 2 /* IRQ1 */
  80. #define SE7722_FPGA_IRQ_MRSHPC1 3 /* IRQ1 */
  81. #define SE7722_FPGA_IRQ_MRSHPC2 4 /* IRQ1 */
  82. #define SE7722_FPGA_IRQ_MRSHPC3 5 /* IRQ1 */
  83. #define SE7722_FPGA_IRQ_NR 6
  84. #define SE7722_FPGA_IRQ_BASE 110
  85. #define MRSHPC_IRQ3 (SE7722_FPGA_IRQ_BASE + SE7722_FPGA_IRQ_MRSHPC3)
  86. #define MRSHPC_IRQ2 (SE7722_FPGA_IRQ_BASE + SE7722_FPGA_IRQ_MRSHPC2)
  87. #define MRSHPC_IRQ1 (SE7722_FPGA_IRQ_BASE + SE7722_FPGA_IRQ_MRSHPC1)
  88. #define MRSHPC_IRQ0 (SE7722_FPGA_IRQ_BASE + SE7722_FPGA_IRQ_MRSHPC0)
  89. #define SMC_IRQ (SE7722_FPGA_IRQ_BASE + SE7722_FPGA_IRQ_SMC)
  90. #define USB_IRQ (SE7722_FPGA_IRQ_BASE + SE7722_FPGA_IRQ_USB)
  91. /* arch/sh/boards/se/7722/irq.c */
  92. void init_se7722_IRQ(void);
  93. #define __IO_PREFIX se7722
  94. #include <asm/io_generic.h>
  95. #endif /* __ASM_SH_SE7722_H */