]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
ddr: marvell: a38x: fix write leveling suplementary algo
authorMoti Buskila <motib@marvell.com>
Fri, 19 Feb 2021 16:11:09 +0000 (17:11 +0100)
committerStefan Roese <sr@denx.de>
Fri, 26 Feb 2021 09:22:29 +0000 (10:22 +0100)
commit ce62bef8fac559e27245259882e45f19cdc293ad upstream.

- fix JIRA A7K8K-5056
- remove TEST_PATTERN write at the load patern stage earlier to WL SUP stage
- the WL SUP stage already writes this pattern to the memory, if the pattern exist at the memory
  then the algorithm will fail, since it think that there are no phase to correct

Signed-off-by: Moti Buskila <motib@marvell.com>
Reviewed-by: Kostya Porotchkin <kostap@marvell.com>
Signed-off-by: Marek BehĂșn <marek.behun@nic.cz>
Tested-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
drivers/ddr/marvell/a38x/ddr3_training_ip_engine.c

index 979f3530b791d240a608827cc337fadb6ef24b98..5fd9a052fa0da45b81991f77fedb426cdcc02c09 100644 (file)
@@ -864,8 +864,11 @@ int ddr3_tip_load_all_pattern_to_mem(u32 dev_num)
                              DUAL_DUNIT_CFG_REG, (1 << 3), (1 << 3)));
        }
 
-       for (pattern = 0; pattern < PATTERN_LAST; pattern++)
+       for (pattern = 0; pattern < PATTERN_LAST; pattern++) {
+               if (pattern == PATTERN_TEST)
+                       continue;
                ddr3_tip_load_pattern_to_mem(dev_num, pattern);
+       }
 
        return MV_OK;
 }