generic.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. /*
  2. * Carsten Langgaard, carstenl@mips.com
  3. * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved.
  4. *
  5. * This program is free software; you can distribute it and/or modify it
  6. * under the terms of the GNU General Public License (Version 2) as
  7. * published by the Free Software Foundation.
  8. *
  9. * This program is distributed in the hope it will be useful, but WITHOUT
  10. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11. * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
  12. * for more details.
  13. *
  14. * You should have received a copy of the GNU General Public License along
  15. * with this program; if not, write to the Free Software Foundation, Inc.,
  16. * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
  17. *
  18. * Defines of the MIPS boards specific address-MAP, registers, etc.
  19. */
  20. #ifndef __ASM_MIPS_BOARDS_GENERIC_H
  21. #define __ASM_MIPS_BOARDS_GENERIC_H
  22. #include <asm/addrspace.h>
  23. #include <asm/byteorder.h>
  24. #include <asm/mips-boards/bonito64.h>
  25. /*
  26. * Display register base.
  27. */
  28. #define ASCII_DISPLAY_WORD_BASE 0x1f000410
  29. #define ASCII_DISPLAY_POS_BASE 0x1f000418
  30. /*
  31. * Yamon Prom print address.
  32. */
  33. #define YAMON_PROM_PRINT_ADDR 0x1fc00504
  34. /*
  35. * Reset register.
  36. */
  37. #define SOFTRES_REG 0x1f000500
  38. #define GORESET 0x42
  39. /*
  40. * Revision register.
  41. */
  42. #define MIPS_REVISION_REG 0x1fc00010
  43. #define MIPS_REVISION_CORID_QED_RM5261 0
  44. #define MIPS_REVISION_CORID_CORE_LV 1
  45. #define MIPS_REVISION_CORID_BONITO64 2
  46. #define MIPS_REVISION_CORID_CORE_20K 3
  47. #define MIPS_REVISION_CORID_CORE_FPGA 4
  48. #define MIPS_REVISION_CORID_CORE_MSC 5
  49. #define MIPS_REVISION_CORID_CORE_EMUL 6
  50. #define MIPS_REVISION_CORID_CORE_FPGA2 7
  51. #define MIPS_REVISION_CORID_CORE_FPGAR2 8
  52. #define MIPS_REVISION_CORID_CORE_FPGA3 9
  53. #define MIPS_REVISION_CORID_CORE_24K 10
  54. #define MIPS_REVISION_CORID_CORE_FPGA4 11
  55. #define MIPS_REVISION_CORID_CORE_FPGA5 12
  56. /**** Artificial corid defines ****/
  57. /*
  58. * CoreEMUL with Bonito System Controller is treated like a Core20K
  59. * CoreEMUL with SOC-it 101 System Controller is treated like a CoreMSC
  60. */
  61. #define MIPS_REVISION_CORID_CORE_EMUL_BON -1
  62. #define MIPS_REVISION_CORID_CORE_EMUL_MSC -2
  63. #define MIPS_REVISION_CORID (((*(volatile u32 *)ioremap(MIPS_REVISION_REG, 4)) >> 10) & 0x3f)
  64. #define MIPS_REVISION_SCON_OTHER 0
  65. #define MIPS_REVISION_SCON_SOCITSC 1
  66. #define MIPS_REVISION_SCON_SOCITSCP 2
  67. /* Artificial SCON defines for MIPS_REVISION_SCON_OTHER */
  68. #define MIPS_REVISION_SCON_UNKNOWN -1
  69. #define MIPS_REVISION_SCON_GT64120 -2
  70. #define MIPS_REVISION_SCON_BONITO -3
  71. #define MIPS_REVISION_SCON_BRTL -4
  72. #define MIPS_REVISION_SCON_SOCIT -5
  73. #define MIPS_REVISION_SCON_ROCIT -6
  74. #define MIPS_REVISION_SCONID (((*(volatile u32 *)ioremap(MIPS_REVISION_REG, 4)) >> 24) & 0xff)
  75. extern int mips_revision_sconid;
  76. extern void mips_reboot_setup(void);
  77. #ifdef CONFIG_PCI
  78. extern void mips_pcibios_init(void);
  79. #else
  80. #define mips_pcibios_init() do { } while (0)
  81. #endif
  82. #ifdef CONFIG_KGDB
  83. extern void kgdb_config(void);
  84. #endif
  85. #endif /* __ASM_MIPS_BOARDS_GENERIC_H */