generic.h 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /*
  2. * This file is subject to the terms and conditions of the GNU General Public
  3. * License. See the file "COPYING" in the main directory of this archive
  4. * for more details.
  5. *
  6. * Defines of the MIPS boards specific address-MAP, registers, etc.
  7. *
  8. * Copyright (C) 2000,2012 MIPS Technologies, Inc.
  9. * All rights reserved.
  10. * Authors: Carsten Langgaard <carstenl@mips.com>
  11. * Steven J. Hill <sjhill@mips.com>
  12. */
  13. #ifndef __ASM_MIPS_BOARDS_GENERIC_H
  14. #define __ASM_MIPS_BOARDS_GENERIC_H
  15. #include <asm/addrspace.h>
  16. #include <asm/byteorder.h>
  17. #include <asm/mips-boards/bonito64.h>
  18. /*
  19. * Display register base.
  20. */
  21. #define ASCII_DISPLAY_WORD_BASE 0x1f000410
  22. #define ASCII_DISPLAY_POS_BASE 0x1f000418
  23. /*
  24. * Reset register.
  25. */
  26. #define SOFTRES_REG 0x1f000500
  27. #define GORESET 0x42
  28. /*
  29. * Revision register.
  30. */
  31. #define MIPS_REVISION_REG 0x1fc00010
  32. #define MIPS_REVISION_CORID_QED_RM5261 0
  33. #define MIPS_REVISION_CORID_CORE_LV 1
  34. #define MIPS_REVISION_CORID_BONITO64 2
  35. #define MIPS_REVISION_CORID_CORE_20K 3
  36. #define MIPS_REVISION_CORID_CORE_FPGA 4
  37. #define MIPS_REVISION_CORID_CORE_MSC 5
  38. #define MIPS_REVISION_CORID_CORE_EMUL 6
  39. #define MIPS_REVISION_CORID_CORE_FPGA2 7
  40. #define MIPS_REVISION_CORID_CORE_FPGAR2 8
  41. #define MIPS_REVISION_CORID_CORE_FPGA3 9
  42. #define MIPS_REVISION_CORID_CORE_24K 10
  43. #define MIPS_REVISION_CORID_CORE_FPGA4 11
  44. #define MIPS_REVISION_CORID_CORE_FPGA5 12
  45. /**** Artificial corid defines ****/
  46. /*
  47. * CoreEMUL with Bonito System Controller is treated like a Core20K
  48. * CoreEMUL with SOC-it 101 System Controller is treated like a CoreMSC
  49. */
  50. #define MIPS_REVISION_CORID_CORE_EMUL_BON -1
  51. #define MIPS_REVISION_CORID_CORE_EMUL_MSC -2
  52. #define MIPS_REVISION_CORID (((*(volatile u32 *)ioremap(MIPS_REVISION_REG, 4)) >> 10) & 0x3f)
  53. #define MIPS_REVISION_SCON_OTHER 0
  54. #define MIPS_REVISION_SCON_SOCITSC 1
  55. #define MIPS_REVISION_SCON_SOCITSCP 2
  56. /* Artificial SCON defines for MIPS_REVISION_SCON_OTHER */
  57. #define MIPS_REVISION_SCON_UNKNOWN -1
  58. #define MIPS_REVISION_SCON_GT64120 -2
  59. #define MIPS_REVISION_SCON_BONITO -3
  60. #define MIPS_REVISION_SCON_BRTL -4
  61. #define MIPS_REVISION_SCON_SOCIT -5
  62. #define MIPS_REVISION_SCON_ROCIT -6
  63. #define MIPS_REVISION_SCONID (((*(volatile u32 *)ioremap(MIPS_REVISION_REG, 4)) >> 24) & 0xff)
  64. extern int mips_revision_sconid;
  65. #ifdef CONFIG_OF
  66. extern struct boot_param_header __dtb_start;
  67. #endif
  68. #ifdef CONFIG_PCI
  69. extern void mips_pcibios_init(void);
  70. #else
  71. #define mips_pcibios_init() do { } while (0)
  72. #endif
  73. #endif /* __ASM_MIPS_BOARDS_GENERIC_H */