1c9ffd839SHaiying Wang 2c9ffd839SHaiying WangTable of interleaving modes supported in cpu/8xxx/ddr/ 3c9ffd839SHaiying Wang====================================================== 4c9ffd839SHaiying Wang +-------------+---------------------------------------------------------+ 5c9ffd839SHaiying Wang | | Rank Interleaving | 6c9ffd839SHaiying Wang | +--------+-----------+-----------+------------+-----------+ 7c9ffd839SHaiying Wang |Memory | | | | 2x2 | 4x1 | 8c9ffd839SHaiying Wang |Controller | None | 2x1 lower | 2x1 upper | {CS0+CS1}, | {CS0+CS1+ | 9c9ffd839SHaiying Wang |Interleaving | | {CS0+CS1} | {CS2+CS3} | {CS2+CS3} | CS2+CS3} | 10c9ffd839SHaiying Wang +-------------+--------+-----------+-----------+------------+-----------+ 11c9ffd839SHaiying Wang |None | Yes | Yes | Yes | Yes | Yes | 12c9ffd839SHaiying Wang +-------------+--------+-----------+-----------+------------+-----------+ 13c9ffd839SHaiying Wang |Cacheline | Yes | Yes | No | No, Only(*)| Yes | 14c9ffd839SHaiying Wang | |CS0 Only| | | {CS0+CS1} | | 15c9ffd839SHaiying Wang +-------------+--------+-----------+-----------+------------+-----------+ 16c9ffd839SHaiying Wang |Page | Yes | Yes | No | No, Only(*)| Yes | 17c9ffd839SHaiying Wang | |CS0 Only| | | {CS0+CS1} | | 18c9ffd839SHaiying Wang +-------------+--------+-----------+-----------+------------+-----------+ 19c9ffd839SHaiying Wang |Bank | Yes | Yes | No | No, Only(*)| Yes | 20c9ffd839SHaiying Wang | |CS0 Only| | | {CS0+CS1} | | 21c9ffd839SHaiying Wang +-------------+--------+-----------+-----------+------------+-----------+ 22c9ffd839SHaiying Wang |Superbank | No | Yes | No | No, Only(*)| Yes | 23c9ffd839SHaiying Wang | | | | | {CS0+CS1} | | 24c9ffd839SHaiying Wang +-------------+--------+-----------+-----------+------------+-----------+ 25c9ffd839SHaiying Wang (*) Although the hardware can be configured with memory controller 26c9ffd839SHaiying Wang interleaving using "2x2" rank interleaving, it only interleaves {CS0+CS1} 27c9ffd839SHaiying Wang from each controller. {CS2+CS3} on each controller are only rank 28c9ffd839SHaiying Wang interleaved on that controller. 29c9ffd839SHaiying Wang 30076bff8fSyork For memory controller interleaving, identical DIMMs are suggested. Software 31076bff8fSyork doesn't check the size or organization of interleaved DIMMs. 32076bff8fSyork 33c9ffd839SHaiying WangThe ways to configure the ddr interleaving mode 34c9ffd839SHaiying Wang============================================== 35c9ffd839SHaiying Wang1. In board header file(e.g.MPC8572DS.h), add default interleaving setting 36c9ffd839SHaiying Wang under "CONFIG_EXTRA_ENV_SETTINGS", like: 37c9ffd839SHaiying Wang #define CONFIG_EXTRA_ENV_SETTINGS \ 3879e4e648SKumar Gala "hwconfig=fsl_ddr:ctlr_intlv=bank" \ 39c9ffd839SHaiying Wang ...... 40c9ffd839SHaiying Wang 41c9ffd839SHaiying Wang2. Run u-boot "setenv" command to configure the memory interleaving mode. 42c9ffd839SHaiying Wang Either numerical or string value is accepted. 43c9ffd839SHaiying Wang 44c9ffd839SHaiying Wang # disable memory controller interleaving 4579e4e648SKumar Gala setenv hwconfig "fsl_ddr:ctlr_intlv=null" 46c9ffd839SHaiying Wang 47c9ffd839SHaiying Wang # cacheline interleaving 4879e4e648SKumar Gala setenv hwconfig "fsl_ddr:ctlr_intlv=cacheline" 49c9ffd839SHaiying Wang 50c9ffd839SHaiying Wang # page interleaving 5179e4e648SKumar Gala setenv hwconfig "fsl_ddr:ctlr_intlv=page" 52c9ffd839SHaiying Wang 53c9ffd839SHaiying Wang # bank interleaving 5479e4e648SKumar Gala setenv hwconfig "fsl_ddr:ctlr_intlv=bank" 55c9ffd839SHaiying Wang 56c9ffd839SHaiying Wang # superbank 5779e4e648SKumar Gala setenv hwconfig "fsl_ddr:ctlr_intlv=superbank" 58c9ffd839SHaiying Wang 59c9ffd839SHaiying Wang # disable bank (chip-select) interleaving 6079e4e648SKumar Gala setenv hwconfig "fsl_ddr:bank_intlv=null" 61c9ffd839SHaiying Wang 62c9ffd839SHaiying Wang # bank(chip-select) interleaving cs0+cs1 6379e4e648SKumar Gala setenv hwconfig "fsl_ddr:bank_intlv=cs0_cs1" 64c9ffd839SHaiying Wang 65c9ffd839SHaiying Wang # bank(chip-select) interleaving cs2+cs3 6679e4e648SKumar Gala setenv hwconfig "fsl_ddr:bank_intlv=cs2_cs3" 67c9ffd839SHaiying Wang 68c9ffd839SHaiying Wang # bank(chip-select) interleaving (cs0+cs1) and (cs2+cs3) (2x2) 6979e4e648SKumar Gala setenv hwconfig "fsl_ddr:bank_intlv=cs0_cs1_and_cs2_cs3" 70c9ffd839SHaiying Wang 71c9ffd839SHaiying Wang # bank(chip-select) interleaving (cs0+cs1+cs2+cs3) (4x1) 7279e4e648SKumar Gala setenv hwconfig "fsl_ddr:bank_intlv=cs0_cs1_cs2_cs3" 7379e4e648SKumar Gala 747fd101c9SyorkMemory controller address hashing 757fd101c9Syork================================== 767fd101c9SyorkIf the DDR controller supports address hashing, it can be enabled by hwconfig. 777fd101c9Syork 787fd101c9SyorkSyntax is: 797fd101c9Syorkhwconfig=fsl_ddr:addr_hash=true 807fd101c9Syork 8147df8f03SYork SunMemory controller ECC on/off 8247df8f03SYork Sun============================ 8347df8f03SYork SunIf ECC is enabled in board configuratoin file, i.e. #define CONFIG_DDR_ECC, 8447df8f03SYork SunECC can be turned on/off by hwconfig. 8547df8f03SYork Sun 8647df8f03SYork SunSyntax is 8747df8f03SYork Sunhwconfig=fsl_ddr:ecc=off 88ebbe11ddSYork Sun 89ebbe11ddSYork SunMemory testing options for mpc85xx 90ebbe11ddSYork Sun================================== 91ebbe11ddSYork Sun1. Memory test can be done once U-boot prompt comes up using mtest, or 92ebbe11ddSYork Sun2. Memory test can be done with Power-On-Self-Test function, activated at 93ebbe11ddSYork Sun compile time. 94ebbe11ddSYork Sun 95ebbe11ddSYork Sun In order to enable the POST memory test, CONFIG_POST needs to be 96ebbe11ddSYork Sun defined in board configuraiton header file. By default, POST memory test 97ebbe11ddSYork Sun performs a fast test. A slow test can be enabled by changing the flag at 98ebbe11ddSYork Sun compiling time. To test memory bigger than 2GB, 36BIT support is needed. 99ebbe11ddSYork Sun Memory is tested within a 2GB window. TLBs are used to map the virtual 2GB 100ebbe11ddSYork Sun window to physical address so that all physical memory can be tested. 101ebbe11ddSYork Sun 1027fd101c9SyorkCombination of hwconfig 1037fd101c9Syork======================= 1047fd101c9SyorkHwconfig can be combined with multiple parameters, for example, on a supported 1057fd101c9Syorkplatform 1067fd101c9Syork 107e1fd16b6SYork Sunhwconfig=fsl_ddr:addr_hash=true,ctlr_intlv=cacheline,bank_intlv=cs0_cs1_cs2_cs3,ecc=on 108e1fd16b6SYork Sun 109e1fd16b6SYork SunTable for dynamic ODT for DDR3 110e1fd16b6SYork Sun============================== 111e1fd16b6SYork SunFor single-slot system with quad-rank DIMM and dual-slot system, dynamic ODT may 112e1fd16b6SYork Sunbe needed, depending on the configuration. The numbers in the following tables are 113e1fd16b6SYork Sunin Ohms. 114e1fd16b6SYork Sun 115e1fd16b6SYork Sun* denotes dynamic ODT 116e1fd16b6SYork Sun 117e1fd16b6SYork SunTwo slots system 118e1fd16b6SYork Sun+-----------------------+----------+---------------+-----------------------------+-----------------------------+ 119e1fd16b6SYork Sun| Configuration | |DRAM controller| Slot 1 | Slot 2 | 120e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+--------------+--------------+--------------+--------------+ 121e1fd16b6SYork Sun| | | | | | Rank 1 | Rank 2 | Rank 1 | Rank 2 | 122e1fd16b6SYork Sun+ Slot 1 | Slot 2 |Write/Read| Write | Read |-------+------+-------+------+-------+------+-------+------+ 123e1fd16b6SYork Sun| | | | | | Write | Read | Write | Read | Write | Read | Write | Read | 124e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 125e1fd16b6SYork Sun| | | Slot 1 | off | 75 | 120 | off | off | off | off | off | 30 | 30 | 126e1fd16b6SYork Sun| Dual Rank | Dual Rank |----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 127e1fd16b6SYork Sun| | | Slot 2 | off | 75 | off | off | 30 | 30 | 120 | off | off | off | 128e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 129e1fd16b6SYork Sun| | | Slot 1 | off | 75 | 120 | off | off | off | 20 | 20 | | | 130e1fd16b6SYork Sun| Dual Rank |Single Rank|----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 131e1fd16b6SYork Sun| | | Slot 2 | off | 75 | off | off | 20 | 20 | 120 *| off | | | 132e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 133e1fd16b6SYork Sun| | | Slot 1 | off | 75 | 120 *| off | | | off | off | 20 | 20 | 134e1fd16b6SYork Sun|Single Rank| Dual Rank |----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 135e1fd16b6SYork Sun| | | Slot 2 | off | 75 | 20 | 20 | | | 120 | off | off | off | 136e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 137e1fd16b6SYork Sun| | | Slot 1 | off | 75 | 120 *| off | | | 30 | 30 | | | 138e1fd16b6SYork Sun|Single Rank|Single Rank|----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 139e1fd16b6SYork Sun| | | Slot 2 | off | 75 | 30 | 30 | | | 120 *| off | | | 140e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 141e1fd16b6SYork Sun| Dual Rank | Empty | Slot 1 | off | 75 | 40 | off | off | off | | | | | 142e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 143e1fd16b6SYork Sun| Empty | Dual Rank | Slot 2 | off | 75 | | | | | 40 | off | off | off | 144e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 145e1fd16b6SYork Sun|Single Rank| Empty | Slot 1 | off | 75 | 40 | off | | | | | | | 146e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 147e1fd16b6SYork Sun| Empty |Single Rank| Slot 2 | off | 75 | | | | | 40 | off | | | 148e1fd16b6SYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 149e1fd16b6SYork Sun 150e1fd16b6SYork SunSingle slot system 151e1fd16b6SYork Sun+-------------+------------+---------------+-----------------------------+-----------------------------+ 152e1fd16b6SYork Sun| | |DRAM controller| Rank 1 | Rank 2 | Rank 3 | Rank 4 | 153e1fd16b6SYork Sun|Configuration| Write/Read |-------+-------+-------+------+-------+------+-------+------+-------+------+ 154e1fd16b6SYork Sun| | | Write | Read | Write | Read | Write | Read | Write | Read | Write | Read | 155e1fd16b6SYork Sun+-------------+------------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 156e1fd16b6SYork Sun| | R1 | off | 75 | 120 *| off | off | off | 20 | 20 | off | off | 157e1fd16b6SYork Sun| |------------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 158e1fd16b6SYork Sun| | R2 | off | 75 | off | 20 | 120 | off | 20 | 20 | off | off | 159e1fd16b6SYork Sun| Quad Rank |------------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 160e1fd16b6SYork Sun| | R3 | off | 75 | 20 | 20 | off | off | 120 *| off | off | off | 161e1fd16b6SYork Sun| |------------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 162e1fd16b6SYork Sun| | R4 | off | 75 | 20 | 20 | off | off | off | 20 | 120 | off | 163e1fd16b6SYork Sun+-------------+------------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 164e1fd16b6SYork Sun| | R1 | off | 75 | 40 | off | off | off | 165e1fd16b6SYork Sun| Dual Rank |------------+-------+-------+-------+------+-------+------+ 166e1fd16b6SYork Sun| | R2 | off | 75 | 40 | off | off | off | 167e1fd16b6SYork Sun+-------------+------------+-------+-------+-------+------+-------+------+ 168e1fd16b6SYork Sun| Single Rank | R1 | off | 75 | 40 | off | 169e1fd16b6SYork Sun+-------------+------------+-------+-------+-------+------+ 170e1fd16b6SYork Sun 171e1fd16b6SYork SunReference http://www.xrosstalkmag.com/mag_issues/xrosstalk_oct08_final.pdf 172e1fd16b6SYork Sun http://download.micron.com/pdf/technotes/ddr3/tn4108_ddr3_design_guide.pdf 1734e57382fSYork Sun 1744e57382fSYork Sun 1754e57382fSYork SunTable for ODT for DDR2 1764e57382fSYork Sun====================== 1774e57382fSYork SunTwo slots system 1784e57382fSYork Sun+-----------------------+----------+---------------+-----------------------------+-----------------------------+ 1794e57382fSYork Sun| Configuration | |DRAM controller| Slot 1 | Slot 2 | 1804e57382fSYork Sun+-----------+-----------+----------+-------+-------+--------------+--------------+--------------+--------------+ 1814e57382fSYork Sun| | | | | | Rank 1 | Rank 2 | Rank 1 | Rank 2 | 1824e57382fSYork Sun+ Slot 1 | Slot 2 |Write/Read| Write | Read |-------+------+-------+------+-------+------+-------+------+ 1834e57382fSYork Sun| | | | | | Write | Read | Write | Read | Write | Read | Write | Read | 1844e57382fSYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 1854e57382fSYork Sun| | | Slot 1 | off | 150 | off | off | off | off | 75 | 75 | off | off | 1864e57382fSYork Sun| Dual Rank | Dual Rank |----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 1874e57382fSYork Sun| | | Slot 2 | off | 150 | 75 | 75 | off | off | off | off | off | off | 1884e57382fSYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 1894e57382fSYork Sun| | | Slot 1 | off | 150 | off | off | off | off | 75 | 75 | | | 1904e57382fSYork Sun| Dual Rank |Single Rank|----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 1914e57382fSYork Sun| | | Slot 2 | off | 150 | 75 | 75 | off | off | off | off | | | 1924e57382fSYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 1934e57382fSYork Sun| | | Slot 1 | off | 150 | off | off | | | 75 | 75 | off | off | 1944e57382fSYork Sun|Single Rank| Dual Rank |----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 1954e57382fSYork Sun| | | Slot 2 | off | 150 | 75 | 75 | | | off | off | off | off | 1964e57382fSYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 1974e57382fSYork Sun| | | Slot 1 | off | 150 | off | off | | | 75 | 75 | | | 1984e57382fSYork Sun|Single Rank|Single Rank|----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 1994e57382fSYork Sun| | | Slot 2 | off | 150 | 75 | 75 | | | off | off | | | 2004e57382fSYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 2014e57382fSYork Sun| Dual Rank | Empty | Slot 1 | off | 75 | 150 | off | off | off | | | | | 2024e57382fSYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 2034e57382fSYork Sun| Empty | Dual Rank | Slot 2 | off | 75 | | | | | 150 | off | off | off | 2044e57382fSYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 2054e57382fSYork Sun|Single Rank| Empty | Slot 1 | off | 75 | 150 | off | | | | | | | 2064e57382fSYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 2074e57382fSYork Sun| Empty |Single Rank| Slot 2 | off | 75 | | | | | 150 | off | | | 2084e57382fSYork Sun+-----------+-----------+----------+-------+-------+-------+------+-------+------+-------+------+-------+------+ 2094e57382fSYork Sun 2104e57382fSYork SunSingle slot system 2114e57382fSYork Sun+-------------+------------+---------------+-----------------------------+ 2124e57382fSYork Sun| | |DRAM controller| Rank 1 | Rank 2 | 2134e57382fSYork Sun|Configuration| Write/Read |-------+-------+-------+------+-------+------+ 2144e57382fSYork Sun| | | Write | Read | Write | Read | Write | Read | 2154e57382fSYork Sun+-------------+------------+-------+-------+-------+------+-------+------+ 2164e57382fSYork Sun| | R1 | off | 75 | 150 | off | off | off | 2174e57382fSYork Sun| Dual Rank |------------+-------+-------+-------+------+-------+------+ 2184e57382fSYork Sun| | R2 | off | 75 | 150 | off | off | off | 2194e57382fSYork Sun+-------------+------------+-------+-------+-------+------+-------+------+ 2204e57382fSYork Sun| Single Rank | R1 | off | 75 | 150 | off | 2214e57382fSYork Sun+-------------+------------+-------+-------+-------+------+ 2224e57382fSYork Sun 2234e57382fSYork SunReference http://www.samsung.com/global/business/semiconductor/products/dram/downloads/applicationnote/ddr2_odt_control_200603.pdf 2244e57382fSYork Sun 2256f5e1dc5SYork Sun 2266f5e1dc5SYork SunInteractive DDR debugging 2276f5e1dc5SYork Sun=========================== 2286f5e1dc5SYork Sun 2296f5e1dc5SYork SunFor DDR parameter tuning up and debugging, the interactive DDR debugging can 2306f5e1dc5SYork Sunbe activated by saving an environment variable "ddr_interactive". The value 2316f5e1dc5SYork Sundoesn't matter. Once activated, U-boot prompts "FSL DDR>" before enabling DDR 2326f5e1dc5SYork Suncontroller. The available commands can be seen by typing "help". 2336f5e1dc5SYork Sun 2346f5e1dc5SYork SunThe example flow of using interactive debugging is 2356f5e1dc5SYork Suntype command "compute" to calculate the parameters from the default 2366f5e1dc5SYork Suntype command "print" with arguments to show SPD, options, registers 2376f5e1dc5SYork Suntype command "edit" with arguments to change any if desired 2386f5e1dc5SYork Suntype command "go" to continue calculation and enable DDR controller 2396f5e1dc5SYork Suntype command "reset" to reset the board 2406f5e1dc5SYork Suntype command "recompute" to reload SPD and start over 2416f5e1dc5SYork Sun 2426f5e1dc5SYork SunNote, check "next_step" to show the flow. For example, after edit opts, the 2436f5e1dc5SYork Sunnext_step is STEP_ASSIGN_ADDRESSES. After editing registers, the next_step is 2446f5e1dc5SYork SunSTEP_PROGRAM_REGS. Upon issuing command "go", DDR controller will be enabled 2456f5e1dc5SYork Sunwith current setting without further calculation. 2466f5e1dc5SYork Sun 2476f5e1dc5SYork SunThe detail syntax for each commands are 2486f5e1dc5SYork Sun 2496f5e1dc5SYork Sunprint [c<n>] [d<n>] [spd] [dimmparms] [commonparms] [opts] [addresses] [regs] 2506f5e1dc5SYork Sun c<n> - the controller number, eg. c0, c1 2516f5e1dc5SYork Sun d<n> - the DIMM number, eg. d0, d1 2526f5e1dc5SYork Sun spd - print SPD data 253*c46bf09eSThomas Weber dimmparms - DIMM parameters, calculated from SPD 2546f5e1dc5SYork Sun commonparms - lowest common parameters for all DIMMs 2556f5e1dc5SYork Sun opts - options 2566f5e1dc5SYork Sun addresses - address assignment (not implemented yet) 2576f5e1dc5SYork Sun regs - controller registers 2586f5e1dc5SYork Sun 2596f5e1dc5SYork Sunedit <c#> <d#> <spd|dimmparms|commonparms|opts|addresses|regs> <element> <value> 2606f5e1dc5SYork Sun c<n> - the controller number, eg. c0, c1 2616f5e1dc5SYork Sun d<n> - the DIMM number, eg. d0, d1 2626f5e1dc5SYork Sun spd - print SPD data 263*c46bf09eSThomas Weber dimmparms - DIMM parameters, calculated from SPD 2646f5e1dc5SYork Sun commonparms - lowest common parameters for all DIMMs 2656f5e1dc5SYork Sun opts - options 2666f5e1dc5SYork Sun addresses - address assignment (not implemented yet) 2676f5e1dc5SYork Sun regs - controller registers 2686f5e1dc5SYork Sun <element> - name of the modified element 2696f5e1dc5SYork Sun byte number if the object is SPD 2706f5e1dc5SYork Sun <value> - decimal or heximal (prefixed with 0x) numbers 2716f5e1dc5SYork Sun 2726f5e1dc5SYork Sunreset 2736f5e1dc5SYork Sun no arguement - reset the board 2746f5e1dc5SYork Sun 2756f5e1dc5SYork Sunrecompute 2766f5e1dc5SYork Sun no argument - reload SPD and start over 2776f5e1dc5SYork Sun 2786f5e1dc5SYork Suncompute 2796f5e1dc5SYork Sun no argument - recompute from current next_step 2806f5e1dc5SYork Sun 2816f5e1dc5SYork Sunnext_step 2826f5e1dc5SYork Sun no argument - show current next_step 2836f5e1dc5SYork Sun 2846f5e1dc5SYork Sunhelp 2856f5e1dc5SYork Sun no argument - print a list of all commands 2866f5e1dc5SYork Sun 2876f5e1dc5SYork Sungo 2886f5e1dc5SYork Sun no argument - program memory controller(s) and continue with U-boot 2896f5e1dc5SYork Sun 2906f5e1dc5SYork SunExamples of debugging flow 2916f5e1dc5SYork Sun 2926f5e1dc5SYork Sun FSL DDR>compute 2936f5e1dc5SYork Sun Detected UDIMM UG51U6400N8SU-ACF 2946f5e1dc5SYork Sun SL DDR>print 2956f5e1dc5SYork Sun print [c<n>] [d<n>] [spd] [dimmparms] [commonparms] [opts] [addresses] [regs] 2966f5e1dc5SYork Sun FSL DDR>print dimmparms 2976f5e1dc5SYork Sun DIMM parameters: Controller=0 DIMM=0 2986f5e1dc5SYork Sun DIMM organization parameters: 2996f5e1dc5SYork Sun module part name = UG51U6400N8SU-ACF 3006f5e1dc5SYork Sun rank_density = 2147483648 bytes (2048 megabytes) 3016f5e1dc5SYork Sun capacity = 4294967296 bytes (4096 megabytes) 3026f5e1dc5SYork Sun burst_lengths_bitmask = 0C 3036f5e1dc5SYork Sun base_addresss = 0 (00000000 00000000) 3046f5e1dc5SYork Sun n_ranks = 2 3056f5e1dc5SYork Sun data_width = 64 3066f5e1dc5SYork Sun primary_sdram_width = 64 3076f5e1dc5SYork Sun ec_sdram_width = 0 3086f5e1dc5SYork Sun registered_dimm = 0 3096f5e1dc5SYork Sun n_row_addr = 15 3106f5e1dc5SYork Sun n_col_addr = 10 3116f5e1dc5SYork Sun edc_config = 0 3126f5e1dc5SYork Sun n_banks_per_sdram_device = 8 3136f5e1dc5SYork Sun tCKmin_X_ps = 1500 3146f5e1dc5SYork Sun tCKmin_X_minus_1_ps = 0 3156f5e1dc5SYork Sun tCKmin_X_minus_2_ps = 0 3166f5e1dc5SYork Sun tCKmax_ps = 0 3176f5e1dc5SYork Sun caslat_X = 960 3186f5e1dc5SYork Sun tAA_ps = 13125 3196f5e1dc5SYork Sun caslat_X_minus_1 = 0 3206f5e1dc5SYork Sun caslat_X_minus_2 = 0 3216f5e1dc5SYork Sun caslat_lowest_derated = 0 3226f5e1dc5SYork Sun tRCD_ps = 13125 3236f5e1dc5SYork Sun tRP_ps = 13125 3246f5e1dc5SYork Sun tRAS_ps = 36000 3256f5e1dc5SYork Sun tWR_ps = 15000 3266f5e1dc5SYork Sun tWTR_ps = 7500 3276f5e1dc5SYork Sun tRFC_ps = 160000 3286f5e1dc5SYork Sun tRRD_ps = 6000 3296f5e1dc5SYork Sun tRC_ps = 49125 3306f5e1dc5SYork Sun refresh_rate_ps = 7800000 3316f5e1dc5SYork Sun tIS_ps = 0 3326f5e1dc5SYork Sun tIH_ps = 0 3336f5e1dc5SYork Sun tDS_ps = 0 3346f5e1dc5SYork Sun tDH_ps = 0 3356f5e1dc5SYork Sun tRTP_ps = 7500 3366f5e1dc5SYork Sun tDQSQ_max_ps = 0 3376f5e1dc5SYork Sun tQHS_ps = 0 3386f5e1dc5SYork Sun FSL DDR>edit c0 opts ECC_mode 0 3396f5e1dc5SYork Sun FSL DDR>edit c0 regs cs0_bnds 0x000000FF 3406f5e1dc5SYork Sun FSL DDR>go 3416f5e1dc5SYork Sun 2 GiB left unmapped 3426f5e1dc5SYork Sun 4 GiB (DDR3, 64-bit, CL=9, ECC off) 3436f5e1dc5SYork Sun DDR Chip-Select Interleaving Mode: CS0+CS1 3446f5e1dc5SYork Sun Testing 0x00000000 - 0x7fffffff 3456f5e1dc5SYork Sun Testing 0x80000000 - 0xffffffff 3466f5e1dc5SYork Sun Remap DDR 2 GiB left unmapped 3476f5e1dc5SYork Sun 3486f5e1dc5SYork Sun POST memory PASSED 3496f5e1dc5SYork Sun Flash: 128 MiB 3506f5e1dc5SYork Sun L2: 128 KB enabled 3516f5e1dc5SYork Sun Corenet Platform Cache: 1024 KB enabled 3526f5e1dc5SYork Sun SERDES: timeout resetting bank 3 3536f5e1dc5SYork Sun SRIO1: disabled 3546f5e1dc5SYork Sun SRIO2: disabled 3556f5e1dc5SYork Sun MMC: FSL_ESDHC: 0 3566f5e1dc5SYork Sun EEPROM: Invalid ID (ff ff ff ff) 3576f5e1dc5SYork Sun PCIe1: disabled 3586f5e1dc5SYork Sun PCIe2: Root Complex, x1, regs @ 0xfe201000 3596f5e1dc5SYork Sun 01:00.0 - 8086:10d3 - Network controller 3606f5e1dc5SYork Sun PCIe2: Bus 00 - 01 3616f5e1dc5SYork Sun PCIe3: disabled 3626f5e1dc5SYork Sun In: serial 3636f5e1dc5SYork Sun Out: serial 3646f5e1dc5SYork Sun Err: serial 3656f5e1dc5SYork Sun Net: Initializing Fman 3666f5e1dc5SYork Sun Fman1: Uploading microcode version 101.8.0 3676f5e1dc5SYork Sun e1000: 00:1b:21:81:d2:e0 3686f5e1dc5SYork Sun FM1@DTSEC1, FM1@DTSEC2, FM1@DTSEC3, FM1@DTSEC4, FM1@DTSEC5, e1000#0 [PRIME] 3696f5e1dc5SYork Sun Warning: e1000#0 MAC addresses don't match: 3706f5e1dc5SYork Sun Address in SROM is 00:1b:21:81:d2:e0 3716f5e1dc5SYork Sun Address in environment is 00:e0:0c:00:ea:05 3726f5e1dc5SYork Sun 3736f5e1dc5SYork Sun Hit any key to stop autoboot: 0 3746f5e1dc5SYork Sun => 375