ddr: altera: Add ECC DRAM scrubbing support for Arria10
authorMarek Vasut <marex@denx.de>
Mon, 28 May 2018 15:22:47 +0000 (17:22 +0200)
committerMarek Vasut <marex@denx.de>
Thu, 12 Jul 2018 07:22:12 +0000 (09:22 +0200)
commit07252f6f7e37e23cb43245dcddf8ea8f1d45dec1
tree566ac0679fce7e37276dac37df487f30d61cae8f
parent93a8ed868583460ab9f3796fdc92f4713bf759a9
ddr: altera: Add ECC DRAM scrubbing support for Arria10

The SDRAM must first be rewritten by zeroes if ECC is used to initialize
the ECC metadata. Make the CPU overwrite the DRAM with zeroes in such a
case. This scrubbing implementation turns the caches on temporarily, then
overwrites the whole RAM with zeroes, flushes the caches and turns them
off again. This provides satisfactory performance.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Chin Liang See <chin.liang.see@intel.com>
Cc: Dinh Nguyen <dinguyen@kernel.org>
drivers/ddr/altera/sdram_arria10.c