prcm_mpu54xx.h 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. /*
  2. * OMAP54xx PRCM MPU instance offset macros
  3. *
  4. * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com
  5. *
  6. * Paul Walmsley (paul@pwsan.com)
  7. * Rajendra Nayak (rnayak@ti.com)
  8. * Benoit Cousson (b-cousson@ti.com)
  9. *
  10. * This file is automatically generated from the OMAP hardware databases.
  11. * We respectfully ask that any modifications to this file be coordinated
  12. * with the public linux-omap@vger.kernel.org mailing list and the
  13. * authors above to ensure that the autogeneration scripts are kept
  14. * up-to-date with the file contents.
  15. *
  16. * This program is free software; you can redistribute it and/or modify
  17. * it under the terms of the GNU General Public License version 2 as
  18. * published by the Free Software Foundation.
  19. */
  20. #ifndef __ARCH_ARM_MACH_OMAP2_PRCM_MPU54XX_H
  21. #define __ARCH_ARM_MACH_OMAP2_PRCM_MPU54XX_H
  22. #include "prcm_mpu_44xx_54xx.h"
  23. #include "common.h"
  24. #define OMAP54XX_PRCM_MPU_BASE 0x48243000
  25. #define OMAP54XX_PRCM_MPU_REGADDR(inst, reg) \
  26. OMAP2_L4_IO_ADDRESS(OMAP54XX_PRCM_MPU_BASE + (inst) + (reg))
  27. /* PRCM_MPU instances */
  28. #define OMAP54XX_PRCM_MPU_OCP_SOCKET_INST 0x0000
  29. #define OMAP54XX_PRCM_MPU_DEVICE_INST 0x0200
  30. #define OMAP54XX_PRCM_MPU_PRM_C0_INST 0x0400
  31. #define OMAP54XX_PRCM_MPU_CM_C0_INST 0x0600
  32. #define OMAP54XX_PRCM_MPU_PRM_C1_INST 0x0800
  33. #define OMAP54XX_PRCM_MPU_CM_C1_INST 0x0a00
  34. /* PRCM_MPU clockdomain register offsets (from instance start) */
  35. #define OMAP54XX_PRCM_MPU_CM_C0_CPU0_CDOFFS 0x0000
  36. #define OMAP54XX_PRCM_MPU_CM_C1_CPU1_CDOFFS 0x0000
  37. /*
  38. * PRCM_MPU
  39. *
  40. * The PRCM_MPU is a local PRCM inside the MPU subsystem. For the PRCM (global)
  41. * point of view the PRCM_MPU is a single entity. It shares the same
  42. * programming model as the global PRCM and thus can be assimilate as two new
  43. * MOD inside the PRCM
  44. */
  45. /* PRCM_MPU.PRCM_MPU_OCP_SOCKET register offsets */
  46. #define OMAP54XX_REVISION_PRCM_MPU_OFFSET 0x0000
  47. /* PRCM_MPU.PRCM_MPU_DEVICE register offsets */
  48. #define OMAP54XX_PRCM_MPU_PRM_RSTST_OFFSET 0x0000
  49. #define OMAP54XX_PRCM_MPU_PRM_PSCON_COUNT_OFFSET 0x0004
  50. #define OMAP54XX_PRM_FRAC_INCREMENTER_NUMERATOR_OFFSET 0x0010
  51. #define OMAP54XX_PRM_FRAC_INCREMENTER_DENUMERATOR_RELOAD_OFFSET 0x0014
  52. /* PRCM_MPU.PRCM_MPU_PRM_C0 register offsets */
  53. #define OMAP54XX_PM_CPU0_PWRSTCTRL_OFFSET 0x0000
  54. #define OMAP54XX_PM_CPU0_PWRSTST_OFFSET 0x0004
  55. #define OMAP54XX_RM_CPU0_CPU0_RSTCTRL_OFFSET 0x0010
  56. #define OMAP54XX_RM_CPU0_CPU0_RSTST_OFFSET 0x0014
  57. #define OMAP54XX_RM_CPU0_CPU0_CONTEXT_OFFSET 0x0024
  58. /* PRCM_MPU.PRCM_MPU_CM_C0 register offsets */
  59. #define OMAP54XX_CM_CPU0_CLKSTCTRL_OFFSET 0x0000
  60. #define OMAP54XX_CM_CPU0_CPU0_CLKCTRL_OFFSET 0x0020
  61. #define OMAP54XX_CM_CPU0_CPU0_CLKCTRL OMAP54XX_PRCM_MPU_REGADDR(OMAP54XX_PRCM_MPU_CM_C0_INST, 0x0020)
  62. /* PRCM_MPU.PRCM_MPU_PRM_C1 register offsets */
  63. #define OMAP54XX_PM_CPU1_PWRSTCTRL_OFFSET 0x0000
  64. #define OMAP54XX_PM_CPU1_PWRSTST_OFFSET 0x0004
  65. #define OMAP54XX_RM_CPU1_CPU1_RSTCTRL_OFFSET 0x0010
  66. #define OMAP54XX_RM_CPU1_CPU1_RSTST_OFFSET 0x0014
  67. #define OMAP54XX_RM_CPU1_CPU1_CONTEXT_OFFSET 0x0024
  68. /* PRCM_MPU.PRCM_MPU_CM_C1 register offsets */
  69. #define OMAP54XX_CM_CPU1_CLKSTCTRL_OFFSET 0x0000
  70. #define OMAP54XX_CM_CPU1_CPU1_CLKCTRL_OFFSET 0x0020
  71. #define OMAP54XX_CM_CPU1_CPU1_CLKCTRL OMAP54XX_PRCM_MPU_REGADDR(OMAP54XX_PRCM_MPU_CM_C1_INST, 0x0020)
  72. #endif