sh2007.h 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef __MACH_SH2007_H
  3. #define __MACH_SH2007_H
  4. #define CS5BCR 0xff802050
  5. #define CS5WCR 0xff802058
  6. #define CS5PCR 0xff802070
  7. #define BUS_SZ8 1
  8. #define BUS_SZ16 2
  9. #define BUS_SZ32 3
  10. #define PCMCIA_IODYN 1
  11. #define PCMCIA_ATA 0
  12. #define PCMCIA_IO8 2
  13. #define PCMCIA_IO16 3
  14. #define PCMCIA_COMM8 4
  15. #define PCMCIA_COMM16 5
  16. #define PCMCIA_ATTR8 6
  17. #define PCMCIA_ATTR16 7
  18. #define TYPE_SRAM 0
  19. #define TYPE_PCMCIA 4
  20. /* write-read/write-write delay (0-7:0,1,2,3,4,5,6,7) */
  21. #define IWW5 0
  22. #define IWW6 3
  23. /* different area, read-write delay (0-7:0,1,2,3,4,5,6,7) */
  24. #define IWRWD5 2
  25. #define IWRWD6 2
  26. /* same area, read-write delay (0-7:0,1,2,3,4,5,6,7) */
  27. #define IWRWS5 2
  28. #define IWRWS6 2
  29. /* different area, read-read delay (0-7:0,1,2,3,4,5,6,7) */
  30. #define IWRRD5 2
  31. #define IWRRD6 2
  32. /* same area, read-read delay (0-7:0,1,2,3,4,5,6,7) */
  33. #define IWRRS5 0
  34. #define IWRRS6 2
  35. /* burst count (0-3:4,8,16,32) */
  36. #define BST5 0
  37. #define BST6 0
  38. /* bus size */
  39. #define SZ5 BUS_SZ16
  40. #define SZ6 BUS_SZ16
  41. /* RD hold for SRAM (0-1:0,1) */
  42. #define RDSPL5 0
  43. #define RDSPL6 0
  44. /* Burst pitch (0-7:0,1,2,3,4,5,6,7) */
  45. #define BW5 0
  46. #define BW6 0
  47. /* Multiplex (0-1:0,1) */
  48. #define MPX5 0
  49. #define MPX6 0
  50. /* device type */
  51. #define TYPE5 TYPE_PCMCIA
  52. #define TYPE6 TYPE_PCMCIA
  53. /* address setup before assert CSn for SRAM (0-7:0,1,2,3,4,5,6,7) */
  54. #define ADS5 0
  55. #define ADS6 0
  56. /* address hold after negate CSn for SRAM (0-7:0,1,2,3,4,5,6,7) */
  57. #define ADH5 0
  58. #define ADH6 0
  59. /* CSn assert to RD assert delay for SRAM (0-7:0,1,2,3,4,5,6,7) */
  60. #define RDS5 0
  61. #define RDS6 0
  62. /* RD negate to CSn negate delay for SRAM (0-7:0,1,2,3,4,5,6,7) */
  63. #define RDH5 0
  64. #define RDH6 0
  65. /* CSn assert to WE assert delay for SRAM (0-7:0,1,2,3,4,5,6,7) */
  66. #define WTS5 0
  67. #define WTS6 0
  68. /* WE negate to CSn negate delay for SRAM (0-7:0,1,2,3,4,5,6,7) */
  69. #define WTH5 0
  70. #define WTH6 0
  71. /* BS hold (0-1:1,2) */
  72. #define BSH5 0
  73. #define BSH6 0
  74. /* wait cycle (0-15:0,1,2,3,4,5,6,7,8,9,11,13,15,17,21,25) */
  75. #define IW5 6 /* 60ns PIO mode 4 */
  76. #define IW6 15 /* 250ns */
  77. #define SAA5 PCMCIA_IODYN /* IDE area b4000000-b5ffffff */
  78. #define SAB5 PCMCIA_IODYN /* CF area b6000000-b7ffffff */
  79. #define PCWA5 0 /* additional wait A (0-3:0,15,30,50) */
  80. #define PCWB5 0 /* additional wait B (0-3:0,15,30,50) */
  81. /* wait B (0-15:0,1,2,3,4,5,6,7,8,9,11,13,15,17,21,25) */
  82. #define PCIW5 12
  83. /* Address->OE/WE assert delay A (0-7:0,1,2,3,6,9,12,15) */
  84. #define TEDA5 2
  85. /* Address->OE/WE assert delay B (0-7:0,1,2,3,6,9,12,15) */
  86. #define TEDB5 4
  87. /* OE/WE negate->Address delay A (0-7:0,1,2,3,6,9,12,15) */
  88. #define TEHA5 2
  89. /* OE/WE negate->Address delay B (0-7:0,1,2,3,6,9,12,15) */
  90. #define TEHB5 3
  91. #define CS5BCR_D ((IWW5<<28)|(IWRWD5<<24)|(IWRWS5<<20)| \
  92. (IWRRD5<<16)|(IWRRS5<<12)|(BST5<<10)| \
  93. (SZ5<<8)|(RDSPL5<<7)|(BW5<<4)|(MPX5<<3)|TYPE5)
  94. #define CS5WCR_D ((ADS5<<28)|(ADH5<<24)|(RDS5<<20)| \
  95. (RDH5<<16)|(WTS5<<12)|(WTH5<<8)|(BSH5<<4)|IW5)
  96. #define CS5PCR_D ((SAA5<<28)|(SAB5<<24)|(PCWA5<<22)| \
  97. (PCWB5<<20)|(PCIW5<<16)|(TEDA5<<12)| \
  98. (TEDB5<<8)|(TEHA5<<4)|TEHB5)
  99. #define SMC0_BASE 0xb0800000 /* eth0 */
  100. #define SMC1_BASE 0xb0900000 /* eth1 */
  101. #define CF_BASE 0xb6100000 /* Compact Flash (I/O area) */
  102. #define IDE_BASE 0xb4000000 /* IDE */
  103. #define PC104_IO_BASE 0xb8000000
  104. #define PC104_MEM_BASE 0xba000000
  105. #define SMC_IO_SIZE 0x100
  106. #define CF_OFFSET 0x1f0
  107. #define IDE_OFFSET 0x170
  108. #endif /* __MACH_SH2007_H */