generic.h 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  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 <linux/config.h>
  23. #include <asm/addrspace.h>
  24. #include <asm/byteorder.h>
  25. #include <asm/mips-boards/bonito64.h>
  26. /*
  27. * Display register base.
  28. */
  29. #ifdef CONFIG_MIPS_SEAD
  30. #define ASCII_DISPLAY_POS_BASE 0x1f0005c0
  31. #else
  32. #define ASCII_DISPLAY_WORD_BASE 0x1f000410
  33. #define ASCII_DISPLAY_POS_BASE 0x1f000418
  34. #endif
  35. /*
  36. * Yamon Prom print address.
  37. */
  38. #define YAMON_PROM_PRINT_ADDR 0x1fc00504
  39. /*
  40. * Reset register.
  41. */
  42. #ifdef CONFIG_MIPS_SEAD
  43. #define SOFTRES_REG 0x1e800050
  44. #define GORESET 0x4d
  45. #else
  46. #define SOFTRES_REG 0x1f000500
  47. #define GORESET 0x42
  48. #endif
  49. /*
  50. * Revision register.
  51. */
  52. #define MIPS_REVISION_REG 0x1fc00010
  53. #define MIPS_REVISION_CORID_QED_RM5261 0
  54. #define MIPS_REVISION_CORID_CORE_LV 1
  55. #define MIPS_REVISION_CORID_BONITO64 2
  56. #define MIPS_REVISION_CORID_CORE_20K 3
  57. #define MIPS_REVISION_CORID_CORE_FPGA 4
  58. #define MIPS_REVISION_CORID_CORE_MSC 5
  59. #define MIPS_REVISION_CORID_CORE_EMUL 6
  60. #define MIPS_REVISION_CORID_CORE_FPGA2 7
  61. #define MIPS_REVISION_CORID_CORE_FPGAR2 8
  62. /**** Artificial corid defines ****/
  63. /*
  64. * CoreEMUL with Bonito System Controller is treated like a Core20K
  65. * CoreEMUL with SOC-it 101 System Controller is treated like a CoreMSC
  66. */
  67. #define MIPS_REVISION_CORID_CORE_EMUL_BON 0x63
  68. #define MIPS_REVISION_CORID_CORE_EMUL_MSC 0x65
  69. #define MIPS_REVISION_CORID (((*(volatile u32 *)ioremap(MIPS_REVISION_REG, 4)) >> 10) & 0x3f)
  70. extern unsigned int mips_revision_corid;
  71. #endif /* __ASM_MIPS_BOARDS_GENERIC_H */