hardware.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * hardware.h
  4. *
  5. * hardware specific header
  6. *
  7. * Copyright (C) 2013, Texas Instruments, Incorporated - http://www.ti.com/
  8. */
  9. #ifndef __AM33XX_HARDWARE_H
  10. #define __AM33XX_HARDWARE_H
  11. #include <config.h>
  12. #include <asm/arch/omap.h>
  13. #ifdef CONFIG_AM33XX
  14. #include <asm/arch/hardware_am33xx.h>
  15. #elif defined(CONFIG_TI816X)
  16. #include <asm/arch/hardware_ti816x.h>
  17. #elif defined(CONFIG_TI814X)
  18. #include <asm/arch/hardware_ti814x.h>
  19. #elif defined(CONFIG_AM43XX)
  20. #include <asm/arch/hardware_am43xx.h>
  21. #endif
  22. /*
  23. * Common hardware definitions
  24. */
  25. /* DM Timer base addresses */
  26. #define DM_TIMER0_BASE 0x4802C000
  27. #define DM_TIMER1_BASE 0x4802E000
  28. #define DM_TIMER2_BASE 0x48040000
  29. #define DM_TIMER3_BASE 0x48042000
  30. #define DM_TIMER4_BASE 0x48044000
  31. #define DM_TIMER5_BASE 0x48046000
  32. #define DM_TIMER6_BASE 0x48048000
  33. #define DM_TIMER7_BASE 0x4804A000
  34. /* GPIO Base address */
  35. #define GPIO0_BASE 0x48032000
  36. #define GPIO1_BASE 0x4804C000
  37. /* BCH Error Location Module */
  38. #define ELM_BASE 0x48080000
  39. /* EMIF Base address */
  40. #define EMIF4_0_CFG_BASE 0x4C000000
  41. #define EMIF4_1_CFG_BASE 0x4D000000
  42. /* DDR Base address */
  43. #define DDR_CTRL_ADDR 0x44E10E04
  44. #define DDR_CONTROL_BASE_ADDR 0x44E11404
  45. /* UART */
  46. #if CONFIG_CONS_INDEX == 1
  47. # define DEFAULT_UART_BASE UART0_BASE
  48. #elif CONFIG_CONS_INDEX == 2
  49. # define DEFAULT_UART_BASE UART1_BASE
  50. #elif CONFIG_CONS_INDEX == 3
  51. # define DEFAULT_UART_BASE UART2_BASE
  52. #elif CONFIG_CONS_INDEX == 4
  53. # define DEFAULT_UART_BASE UART3_BASE
  54. #elif CONFIG_CONS_INDEX == 5
  55. # define DEFAULT_UART_BASE UART4_BASE
  56. #elif CONFIG_CONS_INDEX == 6
  57. # define DEFAULT_UART_BASE UART5_BASE
  58. #endif
  59. /* GPMC Base address */
  60. #define GPMC_BASE 0x50000000
  61. /* CPSW Config space */
  62. #define CPSW_BASE 0x4A100000
  63. /* Control status register */
  64. #define CTRL_CRYSTAL_FREQ_SRC_MASK (1 << 31)
  65. #define CTRL_CRYSTAL_FREQ_SRC_SHIFT 31
  66. #define CTRL_CRYSTAL_FREQ_SELECTION_MASK (0x3 << 29)
  67. #define CTRL_CRYSTAL_FREQ_SELECTION_SHIFT 29
  68. #define CTRL_SYSBOOT_15_14_MASK (0x3 << 22)
  69. #define CTRL_SYSBOOT_15_14_SHIFT 22
  70. #define CTRL_CRYSTAL_FREQ_SRC_SYSBOOT 0x0
  71. #define CTRL_CRYSTAL_FREQ_SRC_EFUSE 0x1
  72. #define NUM_CRYSTAL_FREQ 0x4
  73. int clk_get(int clk);
  74. #endif /* __AM33XX_HARDWARE_H */