mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 18:35:42 +01:00 
			
		
		
		
	ARM: mvebu: a38x: use non-zero size for ddr scrubbing
Make ddr3_calc_mem_cs_size() global scope and use it in ddr3_new_tip_ecc_scrub to correctly initialize all of DDR memory. Signed-off-by: Chris Packham <judge.packham@gmail.com> Signed-off-by: Stefan Roese <sr@denx.de>
This commit is contained in:
		
				
					committed by
					
						 Stefan Roese
						Stefan Roese
					
				
			
			
				
	
			
			
			
						parent
						
							e6f61622d3
						
					
				
				
					commit
					db363dbce7
				
			| @@ -995,7 +995,7 @@ static u32 ddr3_get_device_size(u32 cs) | |||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
| static int ddr3_calc_mem_cs_size(u32 cs, uint64_t *cs_size) | int ddr3_calc_mem_cs_size(u32 cs, uint64_t *cs_size) | ||||||
| { | { | ||||||
| 	u32 cs_mem_size; | 	u32 cs_mem_size; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -232,4 +232,5 @@ u32 mv_ddr_dm_pad_get(void); | |||||||
| int mv_ddr_pre_training_fixup(void); | int mv_ddr_pre_training_fixup(void); | ||||||
| int mv_ddr_post_training_fixup(void); | int mv_ddr_post_training_fixup(void); | ||||||
| int mv_ddr_manual_cal_do(void); | int mv_ddr_manual_cal_do(void); | ||||||
|  | int ddr3_calc_mem_cs_size(u32 cs, uint64_t *cs_size); | ||||||
| #endif /* _MV_DDR_PLAT_H */ | #endif /* _MV_DDR_PLAT_H */ | ||||||
|   | |||||||
| @@ -347,6 +347,9 @@ void ddr3_new_tip_ecc_scrub(void) | |||||||
| 	for (cs_c = 0; cs_c < max_cs; cs_c++) | 	for (cs_c = 0; cs_c < max_cs; cs_c++) | ||||||
| 		cs_ena |= 1 << cs_c; | 		cs_ena |= 1 << cs_c; | ||||||
|  |  | ||||||
|  | 	/* assume that all CS have same size */ | ||||||
|  | 	ddr3_calc_mem_cs_size(0, &cs_mem_size); | ||||||
|  |  | ||||||
| 	mv_sys_xor_init(max_cs, cs_ena, cs_mem_size, 0); | 	mv_sys_xor_init(max_cs, cs_ena, cs_mem_size, 0); | ||||||
| 	total_mem_size = max_cs * cs_mem_size; | 	total_mem_size = max_cs * cs_mem_size; | ||||||
| 	mv_xor_mem_init(0, 0, total_mem_size, 0xdeadbeef, 0xdeadbeef); | 	mv_xor_mem_init(0, 0, total_mem_size, 0xdeadbeef, 0xdeadbeef); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user