km_kirkwood.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * (C) Copyright 2009
  4. * Marvell Semiconductor <www.marvell.com>
  5. * Prafulla Wadaskar <prafulla@marvell.com>
  6. *
  7. * (C) Copyright 2009
  8. * Stefan Roese, DENX Software Engineering, sr@denx.de.
  9. *
  10. * (C) Copyright 2011-2012
  11. * Holger Brunck, Keymile GmbH Hannover, holger.brunck@keymile.com
  12. * Valentin Longchamp, Keymile AG, valentin.longchamp@keymile.com
  13. */
  14. /*
  15. * for linking errors see
  16. * http://lists.denx.de/pipermail/u-boot/2009-July/057350.html
  17. */
  18. #ifndef _CONFIG_KM_KIRKWOOD_H
  19. #define _CONFIG_KM_KIRKWOOD_H
  20. /* KM_KIRKWOOD */
  21. #if defined(CONFIG_KM_KIRKWOOD)
  22. #define CONFIG_HOSTNAME "km_kirkwood"
  23. #define CONFIG_KM_DISABLE_PCIE
  24. /* KM_KIRKWOOD_PCI */
  25. #elif defined(CONFIG_KM_KIRKWOOD_PCI)
  26. #define CONFIG_HOSTNAME "km_kirkwood_pci"
  27. #define CONFIG_KM_UBI_PART_BOOT_OPTS ",2048"
  28. #define CONFIG_SYS_NAND_NO_SUBPAGE_WRITE
  29. /* KM_KIRKWOOD_128M16 */
  30. #elif defined(CONFIG_KM_KIRKWOOD_128M16)
  31. #define CONFIG_HOSTNAME "km_kirkwood_128m16"
  32. #undef CONFIG_SYS_KWD_CONFIG
  33. #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg
  34. #define CONFIG_KM_DISABLE_PCIE
  35. /* KM_NUSA */
  36. #elif defined(CONFIG_KM_NUSA)
  37. #define CONFIG_HOSTNAME "kmnusa"
  38. #undef CONFIG_SYS_KWD_CONFIG
  39. #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg
  40. /* KMCOGE5UN */
  41. #elif defined(CONFIG_KM_COGE5UN)
  42. #undef CONFIG_SYS_KWD_CONFIG
  43. #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_256M8_1.cfg
  44. #define CONFIG_HOSTNAME "kmcoge5un"
  45. #define CONFIG_KM_DISABLE_PCIE
  46. /* KM_SUSE2 */
  47. #elif defined(CONFIG_KM_SUSE2)
  48. #define CONFIG_HOSTNAME "kmsuse2"
  49. #undef CONFIG_SYS_KWD_CONFIG
  50. #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg
  51. #define CONFIG_KM_UBI_PART_BOOT_OPTS ",2048"
  52. #define CONFIG_SYS_NAND_NO_SUBPAGE_WRITE
  53. #else
  54. #error ("Board unsupported")
  55. #endif
  56. /* include common defines/options for all arm based Keymile boards */
  57. #include "km/km_arm.h"
  58. #if defined(CONFIG_KM_PIGGY4_88E6352)
  59. /*
  60. * Some keymile boards like mgcoge5un & nusa1 have their PIGGY4 connected via
  61. * an Marvell 88E6352 simple switch.
  62. * In this case we have to change the default settings for the etherent mac.
  63. * There is NO ethernet phy. The ARM and Switch are conencted directly over
  64. * RGMII in MAC-MAC mode
  65. * In this case 1GBit full duplex and autoneg off
  66. */
  67. #define PORT_SERIAL_CONTROL_VALUE ( \
  68. MVGBE_FORCE_LINK_PASS | \
  69. MVGBE_DIS_AUTO_NEG_FOR_DUPLX | \
  70. MVGBE_DIS_AUTO_NEG_FOR_FLOW_CTRL | \
  71. MVGBE_ADV_NO_FLOW_CTRL | \
  72. MVGBE_FORCE_FC_MODE_NO_PAUSE_DIS_TX | \
  73. MVGBE_FORCE_BP_MODE_NO_JAM | \
  74. (1 << 9) /* Reserved bit has to be 1 */ | \
  75. MVGBE_DO_NOT_FORCE_LINK_FAIL | \
  76. MVGBE_DIS_AUTO_NEG_SPEED_GMII | \
  77. MVGBE_DTE_ADV_0 | \
  78. MVGBE_MIIPHY_MAC_MODE | \
  79. MVGBE_AUTO_NEG_NO_CHANGE | \
  80. MVGBE_MAX_RX_PACKET_1552BYTE | \
  81. MVGBE_CLR_EXT_LOOPBACK | \
  82. MVGBE_SET_FULL_DUPLEX_MODE | \
  83. MVGBE_EN_FLOW_CTRL_TX_RX_IN_FULL_DUPLEX |\
  84. MVGBE_SET_GMII_SPEED_TO_1000 |\
  85. MVGBE_SET_MII_SPEED_TO_100)
  86. #endif
  87. #ifdef CONFIG_KM_PIGGY4_88E6061
  88. /*
  89. * Some keymile boards like mgcoge5un have their PIGGY4 connected via
  90. * an Marvell 88E6061 simple switch.
  91. * In this case we have to change the default settings for the
  92. * ethernet phy connected to the kirkwood.
  93. * In this case 100MB full duplex and autoneg off
  94. */
  95. #define PORT_SERIAL_CONTROL_VALUE ( \
  96. MVGBE_FORCE_LINK_PASS | \
  97. MVGBE_DIS_AUTO_NEG_FOR_DUPLX | \
  98. MVGBE_DIS_AUTO_NEG_FOR_FLOW_CTRL | \
  99. MVGBE_ADV_NO_FLOW_CTRL | \
  100. MVGBE_FORCE_FC_MODE_NO_PAUSE_DIS_TX | \
  101. MVGBE_FORCE_BP_MODE_NO_JAM | \
  102. (1 << 9) /* Reserved bit has to be 1 */ | \
  103. MVGBE_DO_NOT_FORCE_LINK_FAIL | \
  104. MVGBE_DIS_AUTO_NEG_SPEED_GMII | \
  105. MVGBE_DTE_ADV_0 | \
  106. MVGBE_MIIPHY_MAC_MODE | \
  107. MVGBE_AUTO_NEG_NO_CHANGE | \
  108. MVGBE_MAX_RX_PACKET_1552BYTE | \
  109. MVGBE_CLR_EXT_LOOPBACK | \
  110. MVGBE_SET_FULL_DUPLEX_MODE | \
  111. MVGBE_DIS_FLOW_CTRL_TX_RX_IN_FULL_DUPLEX |\
  112. MVGBE_SET_GMII_SPEED_TO_10_100 |\
  113. MVGBE_SET_MII_SPEED_TO_100)
  114. #endif
  115. #ifdef CONFIG_KM_DISABLE_PCIE
  116. #undef CONFIG_KIRKWOOD_PCIE_INIT
  117. #endif
  118. #endif /* _CONFIG_KM_KIRKWOOD */