summaryrefslogtreecommitdiffstats
path: root/drivers/ddr
Commit message (Collapse)AuthorAgeFilesLines
...
* ddr: altera: sdram: Switch to generic_hweight32()Marek Vasut2015-08-081-1/+1
| | | | | | Use generic function instead of CPU-specific one. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up of delay_for_n_mem_clocks() part 5Marek Vasut2015-08-081-3/+5
| | | | | | Add kerneldoc. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up of delay_for_n_mem_clocks() part 4Marek Vasut2015-08-081-12/+5
| | | | | | | Simplify the loop code, optimizing compiler can deal with this. No functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up of delay_for_n_mem_clocks() part 3Marek Vasut2015-08-081-18/+6
| | | | | | Clean up the computation of c_loop, outer and inner variables. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up of delay_for_n_mem_clocks() part 2Marek Vasut2015-08-081-8/+10
| | | | | | | Factor out (afi_clocks - 1) into a single place instead of having it all around the function. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up of delay_for_n_mem_clocks() part 1Marek Vasut2015-08-081-14/+13
| | | | | | | Fix data types, clean up comments a bit and fix coding style a bit. No functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Minor clean up of rw_mgr_mem_handoff()Marek Vasut2015-08-081-7/+8
| | | | | | Add kerneldoc and perform a minor comment cleanup. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_lfifo()Marek Vasut2015-08-081-22/+27
| | | | | | Minor coding style cleanup, add kerneldoc. No functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_end()Marek Vasut2015-08-081-38/+21
| | | | | | | | | | | | | | | | This function is implementing the DDR calibration Stage 3 as described in Altera EMI_RM 2015.05.04 . The main body of this function is almost identical to Stage 1.3 (DQ/DQS centering) for all but two flags -- use_read_test and update_fom. Convert this function to call rw_mgr_mem_calibrate_dq_dqs_centering() with the correct flags set to trim down the code duplication. Moreover, reorder the remnants in the function a little and convert the function to return either 0 or -EIO in case of success and failure respectively, to match the common return value convention. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_write_test_issue()Marek Vasut2015-08-081-13/+18
| | | | | | Brief clean, add kerneldoc. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_write_test() part 3Marek Vasut2015-08-081-1/+11
| | | | | | Add kerneldoc. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_write_test() part 2Marek Vasut2015-08-081-39/+36
| | | | | | | Clean up coding style, mostly broken multiline formatting strings in debug output. Also clean up data types and constify where applicable. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_write_test() part 1Marek Vasut2015-08-081-205/+201
| | | | | | | Move code around to get rid of the forward declaration. No change to the actual code. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_writes_center() part 5Marek Vasut2015-08-081-1/+6
| | | | | | Add kerneldoc. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_writes_center() part 4Marek Vasut2015-08-081-6/+7
| | | | | | Fix return values to match the common return value convention. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_writes_center() part 3Marek Vasut2015-08-081-3/+2
| | | | | | Zap the useless addr variable. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_writes_center() part 2Marek Vasut2015-08-081-79/+88
| | | | | | Factor out common code for searching best DM/DQS window. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_writes_center() part 1Marek Vasut2015-08-081-61/+63
| | | | | | | Fix data types and constify where applicable, fix broken multiline debug strings and fix comments. No functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 11Marek Vasut2015-08-081-1/+10
| | | | | | Add kerneldoc, no functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 10Marek Vasut2015-08-081-4/+7
| | | | | | | | Fix the return value of the function to match common convention where 0 means success and negative means error. Fix the return values in case of an error to use errno.h codes. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 9Marek Vasut2015-08-081-18/+17
| | | | | | | | | The read_group and write_group arguments are the same in all cases when this function is invoked, just merge them into one rw_group argument. Also, clean up the function argument data types and constify them. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 8Marek Vasut2015-08-081-18/+15
| | | | | | | | | The search_stop_check() always resets the bit_chk to a new value, so bit_chk will never survive between search_left_edge() and search_right_edge() invocation. There is thus no need to pass it into these functions, so make bit_chk local to them. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 7Marek Vasut2015-08-081-12/+9
| | | | | | | Perform minor reordering of the function to make the code more organised, no functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 6Marek Vasut2015-08-081-89/+88
| | | | | | | | Factor out center_dq_windows(), which is common code between stage 2 and stage 3 of the calibration again and cater for the minor differences. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 5Marek Vasut2015-08-081-46/+44
| | | | | | | | Factor out the get_window_mid_index() for finding the best DQ window centering. This is again code common to two stages, so pull it out. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 4Marek Vasut2015-08-081-17/+23
| | | | | | | | | | First of all, don't break strings in the debug_cond() calls across multiple lines. Next, zap a couple of really odd casts in the code. Finally, make i into a signed variable, so it is possible to avoid constructs of the form: for (i = FOO;; i--) { <code>; if (i == 0) break; }. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 3Marek Vasut2015-08-081-66/+60
| | | | | | | | | Factor out common code from search_left_edge() and search_right_edge() which checks whether searching for the window edge should stop. The code is almost identical, so pull it into separate function and cater for the minor differences. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 2Marek Vasut2015-08-081-170/+146
| | | | | | | | | Factor out common code from rw_mgr_mem_calibrate_writes_center() and rw_mgr_mem_calibrate_vfifo_center() for searching for the left edge of the window. The code is almost identical, so pull it into separate function and cater for the minor differences. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_center() part 1Marek Vasut2015-08-081-221/+197
| | | | | | | | | Factor out common code from rw_mgr_mem_calibrate_writes_center() and rw_mgr_mem_calibrate_vfifo_center() for searching for the right edge of the window. The code is almost identical, so pull it into separate function and cater for the minor differences. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_writes()Marek Vasut2015-08-081-12/+24
| | | | | | | | | Reorder the content of the function a little and fix the comments so they at least become full sentences. Constify function args. Fix the return value to match the common convention of 0 meaning success. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_read_test() part 5Marek Vasut2015-08-081-4/+13
| | | | | | Make the function documentation into kerneldoc. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_read_test() part 4Marek Vasut2015-08-081-9/+11
| | | | | | Clean up the inner loop a bit. No functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_read_test() part 3Marek Vasut2015-08-081-4/+3
| | | | | | | | The C language has signed types, so make use of them. Fix this obscene loop, which tries to do away with unsigned type, but just makes the code more cryptic. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_read_test() part 2Marek Vasut2015-08-081-15/+15
| | | | | | Clean up data types and constify where applicable. No function change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_read_test() part 1Marek Vasut2015-08-081-13/+16
| | | | | | | Clean up the debug output handling at the end of the function and factor out common function call from the condition. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_read_test_all_ranks()Marek Vasut2015-08-081-15/+25
| | | | Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_find_dqs_en_phase() part 7Marek Vasut2015-08-081-0/+6
| | | | | | Add kerneldoc, no functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_find_dqs_en_phase() part 6Marek Vasut2015-08-081-17/+14
| | | | | | | Fix the return value to match common conventions and propagate this change through the code. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_find_dqs_en_phase() part 5Marek Vasut2015-08-081-6/+6
| | | | | | Fix the data types, constify where applicable. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_find_dqs_en_phase() part 4Marek Vasut2015-08-081-54/+49
| | | | | | | | Implement common sdr_find_phase_delay() function and convert all places which use such code to this unified function. No functional change to the code. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_find_dqs_en_phase() part 3Marek Vasut2015-08-081-2/+3
| | | | | | Clean up odd multiline loop, no functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_find_dqs_en_phase() part 2Marek Vasut2015-08-081-10/+0
| | | | | | | | | If d != 0 after sdr_working_phase() finishes, the else branch of the condition has no impact on anything at all, since work_end was already set independently of the value of "d" . Zap this useless code. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_mem_calibrate_vfifo_find_dqs_en_phase() part 1Marek Vasut2015-08-081-80/+70
| | | | | | | Fix broken multiline debug strings, fix comments. No functional change. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up find_vfifo_read()Marek Vasut2015-08-081-19/+18
| | | | | | | | | Fix data types, constify where applicable, fix comments and debug strings. In case enough failing reads are detected, just return right away instead of breaking from the loop. This lets us make the error handling at the end much simpler. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_*_vfifo() part 2Marek Vasut2015-08-081-51/+41
| | | | | | | Pluck out all this VFIFO value counting, which turns out to be completely unused. Thus, remove it to simplify the code. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up rw_mgr_*_vfifo() part 1Marek Vasut2015-08-081-4/+18
| | | | | | | Perform minor cleanup, fix data types and constify where applicable. Add kerneldoc. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up sdr_*_phase() part 10Marek Vasut2015-08-081-17/+42
| | | | | | | Clean up data types, constify where applicable and document the functions with kerneldoc. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up sdr_*_phase() part 9Marek Vasut2015-08-081-11/+11
| | | | | | | The "d" variable is set to 0 in sdr_backup_phase() and is not used at all in sdr_nonworking_phase(). Make it local and zap it respectively. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up sdr_*_phase() part 8Marek Vasut2015-08-081-6/+3
| | | | | | The work_bgn parameter of sdr_nonworking_phase() is unused, zap it. Signed-off-by: Marek Vasut <marex@denx.de>
* ddr: altera: Clean up sdr_*_phase() part 7Marek Vasut2015-08-081-5/+6
| | | | | | | Wrap dtaps_per_ptap into the sdr_working_phase() function to trim down the number of params. It's a constant too. Signed-off-by: Marek Vasut <marex@denx.de>
OpenPOWER on IntegriCloud