mv-common.h 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * (C) Copyright 2010
  4. * Marvell Semiconductor <www.marvell.com>
  5. * Written-by: Prafulla Wadaskar <prafulla@marvell.com>
  6. */
  7. /*
  8. * This file contains Marvell Board Specific common defincations.
  9. * This file should be included in board config header file.
  10. *
  11. * It supports common definations for Kirkwood platform
  12. * TBD: support for Orion5X platforms
  13. */
  14. #ifndef _MV_COMMON_H
  15. #define _MV_COMMON_H
  16. /*
  17. * High Level Configuration Options (easy to change)
  18. */
  19. #define CONFIG_MARVELL 1
  20. /*
  21. * Custom CONFIG_SYS_TEXT_BASE can be done in <board>.h
  22. */
  23. /* additions for new ARM relocation support */
  24. #define CONFIG_SYS_SDRAM_BASE 0x00000000
  25. /*
  26. * CLKs configurations
  27. */
  28. /*
  29. * NS16550 Configuration
  30. */
  31. #define CONFIG_SYS_NS16550_SERIAL
  32. #define CONFIG_SYS_NS16550_CLK CONFIG_SYS_TCLK
  33. #if !defined(CONFIG_DM_SERIAL)
  34. #define CONFIG_SYS_NS16550_REG_SIZE (-4)
  35. #define CONFIG_SYS_NS16550_COM1 MV_UART_CONSOLE_BASE
  36. #endif
  37. /*
  38. * Serial Port configuration
  39. * The following definitions let you select what serial you want to use
  40. * for your console driver.
  41. */
  42. #define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, \
  43. 115200,230400, 460800, 921600 }
  44. /* auto boot */
  45. #define CONFIG_PREBOOT
  46. /*
  47. * For booting Linux, the board info and command line data
  48. * have to be in the first 8 MB of memory, since this is
  49. * the maximum mapped by the Linux kernel during initialization.
  50. */
  51. #define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */
  52. #define CONFIG_INITRD_TAG 1 /* enable INITRD tag */
  53. #define CONFIG_SETUP_MEMORY_TAGS 1 /* enable memory tag */
  54. #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buff Size */
  55. /*
  56. * Size of malloc() pool
  57. */
  58. #define CONFIG_SYS_MALLOC_LEN (1024 * 1024 * 4) /* 4MiB for malloc() */
  59. /*
  60. * Other required minimal configurations
  61. */
  62. #define CONFIG_ARCH_CPU_INIT /* call arch_cpu_init() */
  63. #define CONFIG_SYS_LOAD_ADDR 0x00800000 /* default load adr- 8M */
  64. #define CONFIG_SYS_MEMTEST_START 0x00800000 /* 8M */
  65. #define CONFIG_SYS_MEMTEST_END 0x00ffffff /*(_16M -1) */
  66. #define CONFIG_SYS_RESET_ADDRESS 0xffff0000 /* Rst Vector Adr */
  67. #define CONFIG_SYS_MAXARGS 32 /* max number of command args */
  68. /* ====> Include platform Common Definitions */
  69. #include <asm/arch/config.h>
  70. /*
  71. * DRAM Banks configuration, Custom config can be done in <board>.h
  72. */
  73. #ifndef CONFIG_NR_DRAM_BANKS
  74. #define CONFIG_NR_DRAM_BANKS CONFIG_NR_DRAM_BANKS_MAX
  75. #else
  76. #if (CONFIG_NR_DRAM_BANKS > CONFIG_NR_DRAM_BANKS_MAX)
  77. #error CONFIG_NR_DRAM_BANKS Configurated more than available
  78. #endif
  79. #endif /* CONFIG_NR_DRAM_BANKS */
  80. /* ====> Include driver Common Definitions */
  81. /*
  82. * Common NAND configuration
  83. */
  84. #ifdef CONFIG_CMD_NAND
  85. #define CONFIG_SYS_MAX_NAND_DEVICE 1
  86. #endif
  87. /*
  88. * Common SPI Flash configuration
  89. */
  90. #ifdef CONFIG_CMD_SF
  91. #endif
  92. /*
  93. * File system
  94. */
  95. #ifdef CONFIG_SYS_MVFS
  96. #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
  97. #define CONFIG_MTD_PARTITIONS
  98. #endif
  99. #endif /* _MV_COMMON_H */