DIFF_20180314 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515
  1. diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
  2. index 226eda5..3a0d1bf 100644
  3. --- a/board/ti/am335x/board.c
  4. +++ b/board/ti/am335x/board.c
  5. @@ -123,10 +123,16 @@ static const struct emif_regs ddr2_evm_emif_reg_data = {
  6. };
  7. static const struct ddr_data ddr3_data = {
  8. - .datardsratio0 = MT41J128MJT125_RD_DQS,
  9. + /*+++ vern,20161126, for 512 DDR+++*/
  10. + /*.datardsratio0 = MT41J128MJT125_RD_DQS,
  11. .datawdsratio0 = MT41J128MJT125_WR_DQS,
  12. .datafwsratio0 = MT41J128MJT125_PHY_FIFO_WE,
  13. - .datawrsratio0 = MT41J128MJT125_PHY_WR_DATA,
  14. + .datawrsratio0 = MT41J128MJT125_PHY_WR_DATA,*/
  15. + .datardsratio0 = MT41K256M16HA125E_RD_DQS,
  16. + .datawdsratio0 = MT41K256M16HA125E_WR_DQS,
  17. + .datafwsratio0 = MT41K256M16HA125E_PHY_FIFO_WE,
  18. + .datawrsratio0 = MT41K256M16HA125E_PHY_WR_DATA,
  19. + /*--- vern,20161126, for 512 DDR---*/
  20. };
  21. static const struct ddr_data ddr3_beagleblack_data = {
  22. @@ -137,10 +143,16 @@ static const struct ddr_data ddr3_beagleblack_data = {
  23. };
  24. static const struct ddr_data ddr3_evm_data = {
  25. - .datardsratio0 = MT41J512M8RH125_RD_DQS,
  26. + /*+++ vern,20161126, for 512 DDR+++*/
  27. +/* .datardsratio0 = MT41J512M8RH125_RD_DQS,
  28. .datawdsratio0 = MT41J512M8RH125_WR_DQS,
  29. .datafwsratio0 = MT41J512M8RH125_PHY_FIFO_WE,
  30. - .datawrsratio0 = MT41J512M8RH125_PHY_WR_DATA,
  31. + .datawrsratio0 = MT41J512M8RH125_PHY_WR_DATA,*/
  32. + .datardsratio0 = MT41K256M16HA125E_RD_DQS,
  33. + .datawdsratio0 = MT41K256M16HA125E_WR_DQS,
  34. + .datafwsratio0 = MT41K256M16HA125E_PHY_FIFO_WE,
  35. + .datawrsratio0 = MT41K256M16HA125E_PHY_WR_DATA,
  36. + /*--- vern,20161126, for 512 DDR---*/
  37. };
  38. static const struct ddr_data ddr3_icev2_data = {
  39. @@ -151,14 +163,24 @@ static const struct ddr_data ddr3_icev2_data = {
  40. };
  41. static const struct cmd_control ddr3_cmd_ctrl_data = {
  42. - .cmd0csratio = MT41J128MJT125_RATIO,
  43. + /*+++ vern,20161126, for 512 DDR+++*/
  44. + /*.cmd0csratio = MT41J128MJT125_RATIO,
  45. .cmd0iclkout = MT41J128MJT125_INVERT_CLKOUT,
  46. .cmd1csratio = MT41J128MJT125_RATIO,
  47. .cmd1iclkout = MT41J128MJT125_INVERT_CLKOUT,
  48. .cmd2csratio = MT41J128MJT125_RATIO,
  49. - .cmd2iclkout = MT41J128MJT125_INVERT_CLKOUT,
  50. + .cmd2iclkout = MT41J128MJT125_INVERT_CLKOUT,*/
  51. + .cmd0csratio = MT41K256M16HA125E_RATIO,
  52. + .cmd0iclkout = MT41K256M16HA125E_INVERT_CLKOUT,
  53. +
  54. + .cmd1csratio = MT41K256M16HA125E_RATIO,
  55. + .cmd1iclkout = MT41K256M16HA125E_INVERT_CLKOUT,
  56. +
  57. + .cmd2csratio = MT41K256M16HA125E_RATIO,
  58. + .cmd2iclkout = MT41K256M16HA125E_INVERT_CLKOUT,
  59. + /*--- vern,20161126, for 512 DDR---*/
  60. };
  61. static const struct cmd_control ddr3_beagleblack_cmd_ctrl_data = {
  62. @@ -173,14 +195,24 @@ static const struct cmd_control ddr3_beagleblack_cmd_ctrl_data = {
  63. };
  64. static const struct cmd_control ddr3_evm_cmd_ctrl_data = {
  65. - .cmd0csratio = MT41J512M8RH125_RATIO,
  66. + /*+++ vern,20161126, for 512 DDR+++*/
  67. + /*.cmd0csratio = MT41J512M8RH125_RATIO,
  68. .cmd0iclkout = MT41J512M8RH125_INVERT_CLKOUT,
  69. .cmd1csratio = MT41J512M8RH125_RATIO,
  70. .cmd1iclkout = MT41J512M8RH125_INVERT_CLKOUT,
  71. .cmd2csratio = MT41J512M8RH125_RATIO,
  72. - .cmd2iclkout = MT41J512M8RH125_INVERT_CLKOUT,
  73. + .cmd2iclkout = MT41J512M8RH125_INVERT_CLKOUT,*/
  74. + .cmd0csratio = MT41K256M16HA125E_RATIO,
  75. + .cmd0iclkout = MT41K256M16HA125E_INVERT_CLKOUT,
  76. +
  77. + .cmd1csratio = MT41K256M16HA125E_RATIO,
  78. + .cmd1iclkout = MT41K256M16HA125E_INVERT_CLKOUT,
  79. +
  80. + .cmd2csratio = MT41K256M16HA125E_RATIO,
  81. + .cmd2iclkout = MT41K256M16HA125E_INVERT_CLKOUT,
  82. + /*--- vern,20161126, for 512 DDR---*/
  83. };
  84. static const struct cmd_control ddr3_icev2_cmd_ctrl_data = {
  85. @@ -195,14 +227,23 @@ static const struct cmd_control ddr3_icev2_cmd_ctrl_data = {
  86. };
  87. static struct emif_regs ddr3_emif_reg_data = {
  88. - .sdram_config = MT41J128MJT125_EMIF_SDCFG,
  89. + /*+++ vern,20161126, for 512 DDR+++*/
  90. + /*.sdram_config = MT41J128MJT125_EMIF_SDCFG,
  91. .ref_ctrl = MT41J128MJT125_EMIF_SDREF,
  92. .sdram_tim1 = MT41J128MJT125_EMIF_TIM1,
  93. .sdram_tim2 = MT41J128MJT125_EMIF_TIM2,
  94. .sdram_tim3 = MT41J128MJT125_EMIF_TIM3,
  95. .zq_config = MT41J128MJT125_ZQ_CFG,
  96. .emif_ddr_phy_ctlr_1 = MT41J128MJT125_EMIF_READ_LATENCY |
  97. - PHY_EN_DYN_PWRDN,
  98. + PHY_EN_DYN_PWRDN,*/
  99. + .sdram_config = MT41K256M16HA125E_EMIF_SDCFG,
  100. + .ref_ctrl = MT41K256M16HA125E_EMIF_SDREF,
  101. + .sdram_tim1 = MT41K256M16HA125E_EMIF_TIM1,
  102. + .sdram_tim2 = MT41K256M16HA125E_EMIF_TIM2,
  103. + .sdram_tim3 = MT41K256M16HA125E_EMIF_TIM3,
  104. + .zq_config = MT41K256M16HA125E_ZQ_CFG,
  105. + .emif_ddr_phy_ctlr_1 = MT41K256M16HA125E_EMIF_READ_LATENCY,
  106. + /*--- vern,20161126, for 512 DDR---*/
  107. };
  108. static struct emif_regs ddr3_beagleblack_emif_reg_data = {
  109. @@ -217,15 +258,23 @@ static struct emif_regs ddr3_beagleblack_emif_reg_data = {
  110. };
  111. static struct emif_regs ddr3_evm_emif_reg_data = {
  112. - .sdram_config = MT41J512M8RH125_EMIF_SDCFG,
  113. + /*+++ vern,20161126, for 512 DDR+++*/
  114. + /*.sdram_config = MT41J512M8RH125_EMIF_SDCFG,
  115. .ref_ctrl = MT41J512M8RH125_EMIF_SDREF,
  116. .sdram_tim1 = MT41J512M8RH125_EMIF_TIM1,
  117. .sdram_tim2 = MT41J512M8RH125_EMIF_TIM2,
  118. .sdram_tim3 = MT41J512M8RH125_EMIF_TIM3,
  119. - .ocp_config = EMIF_OCP_CONFIG_AM335X_EVM,
  120. .zq_config = MT41J512M8RH125_ZQ_CFG,
  121. .emif_ddr_phy_ctlr_1 = MT41J512M8RH125_EMIF_READ_LATENCY |
  122. - PHY_EN_DYN_PWRDN,
  123. + PHY_EN_DYN_PWRDN,*/
  124. + .sdram_config = MT41K256M16HA125E_EMIF_SDCFG,
  125. + .ref_ctrl = MT41K256M16HA125E_EMIF_SDREF,
  126. + .sdram_tim1 = MT41K256M16HA125E_EMIF_TIM1,
  127. + .sdram_tim2 = MT41K256M16HA125E_EMIF_TIM2,
  128. + .sdram_tim3 = MT41K256M16HA125E_EMIF_TIM3,
  129. + .zq_config = MT41K256M16HA125E_ZQ_CFG,
  130. + .emif_ddr_phy_ctlr_1 = MT41K256M16HA125E_EMIF_READ_LATENCY,
  131. + /*--- vern,20161126, for 512 DDR---*/
  132. };
  133. static struct emif_regs ddr3_icev2_emif_reg_data = {
  134. @@ -268,7 +317,12 @@ const struct dpll_params *get_dpll_ddr_params(void)
  135. else if (board_is_evm_15_or_later())
  136. return &dpll_ddr3_303MHz[ind];
  137. else
  138. - return &dpll_ddr2_266MHz[ind];
  139. + {
  140. + /*+++ vern,20161126, for 512 DDR+++*/
  141. + return &dpll_ddr3_303MHz[ind];
  142. + //return &dpll_ddr2_266MHz[ind];
  143. + /*--- vern,20161126, for 512 DDR ---*/
  144. + }
  145. }
  146. static u8 bone_not_connected_to_ac_power(void)
  147. @@ -491,11 +545,18 @@ void set_mux_conf_regs(void)
  148. }
  149. const struct ctrl_ioregs ioregs_evmsk = {
  150. - .cm0ioctl = MT41J128MJT125_IOCTRL_VALUE,
  151. + /*+++ vern,20161126, for 512 DDR+++*/
  152. + /*.cm0ioctl = MT41J128MJT125_IOCTRL_VALUE,
  153. .cm1ioctl = MT41J128MJT125_IOCTRL_VALUE,
  154. .cm2ioctl = MT41J128MJT125_IOCTRL_VALUE,
  155. .dt0ioctl = MT41J128MJT125_IOCTRL_VALUE,
  156. - .dt1ioctl = MT41J128MJT125_IOCTRL_VALUE,
  157. + .dt1ioctl = MT41J128MJT125_IOCTRL_VALUE,*/
  158. + .cm0ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  159. + .cm1ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  160. + .cm2ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  161. + .dt0ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  162. + .dt1ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  163. + /*--- vern,20161126, for 512 DDR---*/
  164. };
  165. const struct ctrl_ioregs ioregs_bonelt = {
  166. @@ -507,19 +568,33 @@ const struct ctrl_ioregs ioregs_bonelt = {
  167. };
  168. const struct ctrl_ioregs ioregs_evm15 = {
  169. - .cm0ioctl = MT41J512M8RH125_IOCTRL_VALUE,
  170. + /*+++ vern,20161126, for 512 DDR+++*/
  171. + /*.cm0ioctl = MT41J512M8RH125_IOCTRL_VALUE,
  172. .cm1ioctl = MT41J512M8RH125_IOCTRL_VALUE,
  173. .cm2ioctl = MT41J512M8RH125_IOCTRL_VALUE,
  174. .dt0ioctl = MT41J512M8RH125_IOCTRL_VALUE,
  175. - .dt1ioctl = MT41J512M8RH125_IOCTRL_VALUE,
  176. + .dt1ioctl = MT41J512M8RH125_IOCTRL_VALUE,*/
  177. + .cm0ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  178. + .cm1ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  179. + .cm2ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  180. + .dt0ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  181. + .dt1ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  182. + /*--- vern,20161126, for 512 DDR---*/
  183. };
  184. const struct ctrl_ioregs ioregs = {
  185. - .cm0ioctl = MT47H128M16RT25E_IOCTRL_VALUE,
  186. + /*+++ vern,20161126, for 512 DDR+++*/
  187. + /*.cm0ioctl = MT47H128M16RT25E_IOCTRL_VALUE,
  188. .cm1ioctl = MT47H128M16RT25E_IOCTRL_VALUE,
  189. .cm2ioctl = MT47H128M16RT25E_IOCTRL_VALUE,
  190. .dt0ioctl = MT47H128M16RT25E_IOCTRL_VALUE,
  191. - .dt1ioctl = MT47H128M16RT25E_IOCTRL_VALUE,
  192. + .dt1ioctl = MT47H128M16RT25E_IOCTRL_VALUE,*/
  193. + .cm0ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  194. + .cm1ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  195. + .cm2ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  196. + .dt0ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  197. + .dt1ioctl = MT41K256M16HA125E_IOCTRL_VALUE,
  198. + /*--- vern,20161126, for 512 DDR---*/
  199. };
  200. void sdram_init(void)
  201. @@ -553,12 +628,19 @@ void sdram_init(void)
  202. config_ddr(400, &ioregs_evmsk, &ddr3_icev2_data,
  203. &ddr3_icev2_cmd_ctrl_data, &ddr3_icev2_emif_reg_data,
  204. 0);
  205. + /*+++ vern,20161126, for 512 DDR+++*/
  206. + /*
  207. else if (board_is_gp_evm())
  208. config_ddr(266, &ioregs, &ddr2_data,
  209. &ddr2_cmd_ctrl_data, &ddr2_evm_emif_reg_data, 0);
  210. else
  211. config_ddr(266, &ioregs, &ddr2_data,
  212. &ddr2_cmd_ctrl_data, &ddr2_emif_reg_data, 0);
  213. + */
  214. + else
  215. + config_ddr(303, &ioregs_evm15, &ddr3_evm_data,
  216. + &ddr3_evm_cmd_ctrl_data, &ddr3_evm_emif_reg_data, 0);
  217. + /*--- vern,20161126, for 512 DDR ---*/
  218. }
  219. #endif
  220. diff --git a/board/ti/am335x/mux.c b/board/ti/am335x/mux.c
  221. index ad85b3a..972a5ed 100644
  222. --- a/board/ti/am335x/mux.c
  223. +++ b/board/ti/am335x/mux.c
  224. @@ -66,7 +66,10 @@ static struct module_pin_mux mmc0_pin_mux[] = {
  225. {OFFSET(mmc0_clk), (MODE(0) | RXACTIVE | PULLUP_EN)}, /* MMC0_CLK */
  226. {OFFSET(mmc0_cmd), (MODE(0) | RXACTIVE | PULLUP_EN)}, /* MMC0_CMD */
  227. {OFFSET(mcasp0_aclkr), (MODE(4) | RXACTIVE)}, /* MMC0_WP */
  228. - {OFFSET(spi0_cs1), (MODE(7) | RXACTIVE | PULLUP_EN)}, /* GPIO0_6 */
  229. + /*+++ vern,20161126, for mmc0 +++*/
  230. + //{OFFSET(spi0_cs1), (MODE(7) | RXACTIVE | PULLUP_EN)}, /* GPIO0_6 */
  231. + {OFFSET(spi0_cs1), (MODE(5) | RXACTIVE | PULLUP_EN)}, /* MMC0_CD */
  232. + /*--- vern,20161126, for mmc0 ---*/
  233. {-1},
  234. };
  235. @@ -201,7 +204,10 @@ static struct module_pin_mux nand_pin_mux[] = {
  236. {OFFSET(gpmc_ad5), (MODE(0) | PULLUDDIS | RXACTIVE)}, /* AD5 */
  237. {OFFSET(gpmc_ad6), (MODE(0) | PULLUDDIS | RXACTIVE)}, /* AD6 */
  238. {OFFSET(gpmc_ad7), (MODE(0) | PULLUDDIS | RXACTIVE)}, /* AD7 */
  239. -#ifdef CONFIG_SYS_NAND_BUSWIDTH_16BIT
  240. +/*+++ vern,20161126, for rgmii2 +++*/
  241. +//#ifdef CONFIG_SYS_NAND_BUSWIDTH_16BIT
  242. +#if 0
  243. +/*--- vern,20161126, for rgmii2 ---*/
  244. {OFFSET(gpmc_ad8), (MODE(0) | PULLUDDIS | RXACTIVE)}, /* AD8 */
  245. {OFFSET(gpmc_ad9), (MODE(0) | PULLUDDIS | RXACTIVE)}, /* AD9 */
  246. {OFFSET(gpmc_ad10), (MODE(0) | PULLUDDIS | RXACTIVE)}, /* AD10 */
  247. @@ -357,6 +363,9 @@ void enable_board_pin_mux(void)
  248. unsigned short profile = detect_daughter_board_profile();
  249. configure_module_pin_mux(rgmii1_pin_mux);
  250. configure_module_pin_mux(mmc0_pin_mux);
  251. + configure_module_pin_mux(nand_pin_mux);/*+++ vern,20161126, for 2G NAND ---*/
  252. + /*+++ vern,20161126, for rgmii2 +++*/
  253. + #if 0
  254. /* In profile #2 i2c1 and spi0 conflict. */
  255. if (profile & ~PROFILE_2)
  256. configure_module_pin_mux(i2c1_pin_mux);
  257. @@ -369,6 +378,8 @@ void enable_board_pin_mux(void)
  258. configure_module_pin_mux(mmc1_pin_mux);
  259. configure_module_pin_mux(spi0_pin_mux);
  260. }
  261. + #endif
  262. + /*--- vern,20161126, for rgmii2 ---*/
  263. } else if (board_is_idk()) {
  264. /* Industrial Motor Control (IDK) */
  265. configure_module_pin_mux(mii1_pin_mux);
  266. diff --git a/board/ti/common/board_detect.c b/board/ti/common/board_detect.c
  267. index 6414958..ed4a9b2 100644
  268. --- a/board/ti/common/board_detect.c
  269. +++ b/board/ti/common/board_detect.c
  270. @@ -180,6 +180,8 @@ int __maybe_unused ti_i2c_eeprom_am_get(int bus_addr, int dev_addr)
  271. #endif
  272. /* Initialize with a known bad marker for i2c fails.. */
  273. + /*+++ vern,20161126, No EEPROM +++*/
  274. + /*
  275. ep->header = TI_DEAD_EEPROM_MAGIC;
  276. ep->name[0] = 0x0;
  277. ep->version[0] = 0x0;
  278. @@ -194,8 +196,9 @@ int __maybe_unused ti_i2c_eeprom_am_get(int bus_addr, int dev_addr)
  279. ep->header = am_ep.header;
  280. strlcpy(ep->name, am_ep.name, TI_EEPROM_HDR_NAME_LEN + 1);
  281. ti_eeprom_string_cleanup(ep->name);
  282. -
  283. + */
  284. /* BeagleBone Green '1' eeprom, board_rev: 0x1a 0x00 0x00 0x00 */
  285. + /*
  286. if (am_ep.version[0] == 0x1a && am_ep.version[1] == 0x00 &&
  287. am_ep.version[2] == 0x00 && am_ep.version[3] == 0x00)
  288. strlcpy(ep->version, "BBG1", TI_EEPROM_HDR_REV_LEN + 1);
  289. @@ -209,6 +212,12 @@ int __maybe_unused ti_i2c_eeprom_am_get(int bus_addr, int dev_addr)
  290. memcpy(ep->mac_addr, am_ep.mac_addr,
  291. TI_EEPROM_HDR_NO_OF_MAC_ADDR * TI_EEPROM_HDR_ETH_ALEN);
  292. + */
  293. + memset(ep, 0, sizeof(struct ti_common_eeprom));
  294. + ep->header = TI_EEPROM_HEADER_MAGIC;
  295. + strlcpy(ep->name, "A33515BB", TI_EEPROM_HDR_NAME_LEN + 1);
  296. + strlcpy(ep->version, "1.0", TI_EEPROM_HDR_REV_LEN + 1);
  297. + /*--- vern,20161126, No EEPROM ---*/
  298. return 0;
  299. }
  300. diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
  301. index bc1f2b2..4a65966 100644
  302. --- a/include/configs/am335x_evm.h
  303. +++ b/include/configs/am335x_evm.h
  304. @@ -37,14 +37,28 @@
  305. #define CONFIG_SYS_LDSCRIPT "board/ti/am335x/u-boot.lds"
  306. /* Always 128 KiB env size */
  307. -#define CONFIG_ENV_SIZE (128 << 10)
  308. +#define CONFIG_ENV_SIZE (512 << 10)//(128 << 10)/*++++ vern,set up environment,20161127 ---*/
  309. /* Enhance our eMMC support / experience. */
  310. #define CONFIG_CMD_GPT
  311. #define CONFIG_EFI_PARTITION
  312. #ifdef CONFIG_NAND
  313. +/*++++ vern,set up environment,20161127 +++*/
  314. +#define CONFIG_ENV_IS_IN_NAND 1/*++++ vern,set up environment,20161127 ---*/
  315. #define NANDARGS \
  316. + "bootargs=console=ttyS0,115200n8 mem=512M root=/dev/ram0 rw initrd=0x81000000,64M ramdisk_size=67108864\0" \
  317. + "ipaddr=192.168.1.10\0" \
  318. + "serverip=192.168.1.1\0" \
  319. + "gatewayip=192.168.1.1\0" \
  320. + "netmask=255.255.255.0\0" \
  321. + "nandboot=" \
  322. + "nand read 0x80F80000 0x00200000 0x00080000;" \
  323. + "nand read 0x80200000 0x00280000 0x00A00000;" \
  324. + "nand read 0x81000000 0x00C80000 0x00A00000;" \
  325. + "bootz 0x80200000 - 0x80F80000\0"
  326. +
  327. +/*#define NANDARGS \
  328. "mtdids=" MTDIDS_DEFAULT "\0" \
  329. "mtdparts=" MTDPARTS_DEFAULT "\0" \
  330. "nandargs=setenv bootargs console=${console} " \
  331. @@ -58,6 +72,8 @@
  332. "nand read ${fdtaddr} NAND.u-boot-spl-os; " \
  333. "nand read ${loadaddr} NAND.kernel; " \
  334. "bootz ${loadaddr} - ${fdtaddr}\0"
  335. +*/
  336. +/*--- vern,set up environment,20161127 ---*/
  337. #else
  338. #define NANDARGS ""
  339. #endif
  340. @@ -89,6 +105,9 @@
  341. func(PXE, pxe, na) \
  342. func(DHCP, dhcp, na)
  343. +/*++++ vern,set up environment,20161127 +++*/
  344. +#define CONFIG_BOOTCOMMAND "run nandboot;"
  345. +/*
  346. #define CONFIG_BOOTCOMMAND \
  347. "if test ${boot_fit} -eq 1; then " \
  348. "run update_to_fit;" \
  349. @@ -97,10 +116,15 @@
  350. "run init_console; " \
  351. "run envboot; " \
  352. "run distro_bootcmd"
  353. +*/
  354. +/*--- vern,set up environment,20161127 ---*/
  355. #include <config_distro_bootcmd.h>
  356. #ifndef CONFIG_SPL_BUILD
  357. +/*++++ vern,set up environment,20161127 +++*/
  358. +#define CONFIG_EXTRA_ENV_SETTINGS NANDARGS
  359. +/*
  360. #include <environment/ti/dfu.h>
  361. #include <environment/ti/mmc.h>
  362. @@ -166,6 +190,8 @@
  363. NETARGS \
  364. DFUARGS \
  365. BOOTENV
  366. +*/
  367. +/*--- vern,set up environment,20161127 ---*/
  368. #endif
  369. /* NS16550 Configuration */
  370. @@ -203,28 +229,57 @@
  371. #define CONFIG_SYS_NAND_5_ADDR_CYCLE
  372. #define CONFIG_SYS_NAND_PAGE_COUNT (CONFIG_SYS_NAND_BLOCK_SIZE / \
  373. CONFIG_SYS_NAND_PAGE_SIZE)
  374. -#define CONFIG_SYS_NAND_PAGE_SIZE 2048
  375. -#define CONFIG_SYS_NAND_OOBSIZE 64
  376. -#define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024)
  377. +#define CONFIG_SYS_NAND_PAGE_SIZE 4096//2048 /*++++ vern,NAND,20161127 ---*/
  378. +#define CONFIG_SYS_NAND_OOBSIZE 224//64 /*++++ vern,NAND,20161127 ---*/
  379. +#define CONFIG_SYS_NAND_BLOCK_SIZE (64*4096)//(128*1024)/*++++ vern,NAND,20161127 ---*/
  380. /* NAND: driver related configs */
  381. #define CONFIG_NAND_OMAP_GPMC
  382. #define CONFIG_NAND_OMAP_GPMC_PREFETCH
  383. #define CONFIG_NAND_OMAP_ELM
  384. #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS
  385. -#define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \
  386. + /*++++ vern,NAND,20161127 +++*/
  387. +/*每512 Bytes 的page size需加上14 Bytes
  388. + 所以4096 page size 需加上 (4096/512)*14=112 Bytes
  389. +*/
  390. +
  391. +#define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, \
  392. + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, \
  393. + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, \
  394. + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, \
  395. + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, \
  396. + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, \
  397. + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, \
  398. + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, \
  399. + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, \
  400. + 110, 111, 112, 113 }
  401. +
  402. +
  403. +/*#define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \
  404. 10, 11, 12, 13, 14, 15, 16, 17, \
  405. 18, 19, 20, 21, 22, 23, 24, 25, \
  406. 26, 27, 28, 29, 30, 31, 32, 33, \
  407. 34, 35, 36, 37, 38, 39, 40, 41, \
  408. 42, 43, 44, 45, 46, 47, 48, 49, \
  409. 50, 51, 52, 53, 54, 55, 56, 57, }
  410. +*/
  411. -#define CONFIG_SYS_NAND_ECCSIZE 512
  412. -#define CONFIG_SYS_NAND_ECCBYTES 14
  413. +#define CONFIG_SYS_NAND_ECCSIZE 512 /*每512 Bytes 的page size需加上14 Bytes*/
  414. +#define CONFIG_SYS_NAND_ECCBYTES 14 /*每512 Bytes 的page size需加上14 Bytes*/
  415. + /*--- vern,NAND,20161127 ---*/
  416. #define CONFIG_SYS_NAND_ONFI_DETECTION
  417. #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW
  418. #define MTDIDS_DEFAULT "nand0=nand.0"
  419. -#define MTDPARTS_DEFAULT "mtdparts=nand.0:" \
  420. +/*++++ vern,set up environment,20161127 +++*/
  421. +/*#define MTDPARTS_DEFAULT "mtdparts=nand.0:" \
  422. + "512k(NAND.SPL)," \
  423. + "1m(NAND.u-boot)," \
  424. + "512k(NAND.u-boot-env)," \
  425. + "512k(NAND.u-boot-spl-os)," \
  426. + "7.5m(NAND.kernel)," \
  427. + "-(NAND.file-system)"
  428. +
  429. +*/
  430. +/*#define MTDPARTS_DEFAULT "mtdparts=nand.0:" \
  431. "128k(NAND.SPL)," \
  432. "128k(NAND.SPL.backup1)," \
  433. "128k(NAND.SPL.backup2)," \
  434. @@ -235,14 +290,23 @@
  435. "128k(NAND.u-boot-env.backup1)," \
  436. "8m(NAND.kernel)," \
  437. "-(NAND.file-system)"
  438. -#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x000c0000
  439. +*/
  440. +
  441. +/*#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x000c0000*/
  442. +#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x00080000
  443. +/*--- vern,set up environment,20161127 ---*/
  444. +
  445. /* NAND: SPL related configs */
  446. #ifdef CONFIG_SPL_NAND_SUPPORT
  447. #define CONFIG_SPL_NAND_AM33XX_BCH
  448. #endif
  449. #ifdef CONFIG_SPL_OS_BOOT
  450. -#define CONFIG_CMD_SPL_NAND_OFS 0x00080000 /* os parameters */
  451. -#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x00200000 /* kernel offset */
  452. +/*++++ vern,set up environment,20161127 +++*/
  453. +/*#define CONFIG_CMD_SPL_NAND_OFS 0x00080000 *//* os parameters */
  454. +#define CONFIG_CMD_SPL_NAND_OFS 0x00200000 /* os parameters */
  455. +/*#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x00200000 *//* kernel offset */
  456. +#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x00280000 /* kernel offset */
  457. +/*--- vern,set up environment,20161127 ---*/
  458. #define CONFIG_CMD_SPL_WRITE_SIZE 0x2000
  459. #endif
  460. #endif /* !CONFIG_NAND */
  461. @@ -359,12 +423,15 @@
  462. "128k(u-boot-env2)," \
  463. "4m(kernel),-(rootfs)"
  464. #elif defined(CONFIG_ENV_IS_IN_NAND)
  465. -#define CONFIG_ENV_OFFSET 0x001c0000
  466. -#define CONFIG_ENV_OFFSET_REDUND 0x001e0000
  467. +/*++++ vern,set up environment,20161127 +++*/
  468. +/*#define CONFIG_ENV_OFFSET 0x001c0000*/
  469. +#define CONFIG_ENV_OFFSET 0x00180000
  470. +/*#define CONFIG_ENV_OFFSET_REDUND 0x001e0000*/
  471. +/*--- vern,set up environment,20161127 ---*/
  472. #define CONFIG_SYS_ENV_SECT_SIZE CONFIG_SYS_NAND_BLOCK_SIZE
  473. #elif !defined(CONFIG_ENV_IS_NOWHERE)
  474. /* Not NAND, SPI, NOR or eMMC env, so put ENV in a file on FAT */
  475. -#define CONFIG_ENV_IS_IN_FAT
  476. +//#define CONFIG_ENV_IS_IN_FAT /*++++ vern,set up environment,20161127 ---*/
  477. #define FAT_ENV_INTERFACE "mmc"
  478. #define FAT_ENV_DEVICE_AND_PART "0:1"
  479. #define FAT_ENV_FILE "uboot.env"