summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2019-04-16 22:13:29 +0200
committerMarek Vasut <marex@denx.de>2019-04-29 10:08:55 +0200
commitba2cfcee889db2de099c46a60090624edf202a81 (patch)
treeb63f56082fda4931c1966a54adc9d0310b98f42f
parentc1d4b464c8b8826b1d8a6d84ee5202f71ce933d1 (diff)
downloadu-boot-ba2cfcee889db2de099c46a60090624edf202a81.tar.gz
u-boot-ba2cfcee889db2de099c46a60090624edf202a81.tar.xz
u-boot-ba2cfcee889db2de099c46a60090624edf202a81.zip
ARM: socfpga: Fully unmap the FPGA bridges from L3 space
Instead of just putting the bridges into reset, fully remove the bridges from the L3 main bridge space when disabling them by clearing bits in NIC-301 remap register. Moreover, only touch the 3 LSbits in brgmodrst register as the rest of the bits are undefined. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Chin Liang See <chin.liang.see@intel.com> Cc: Dinh Nguyen <dinguyen@kernel.org> Cc: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> Cc: Tien Fong Chee <tien.fong.chee@intel.com>
-rw-r--r--arch/arm/mach-socfpga/reset_manager_gen5.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/arm/mach-socfpga/reset_manager_gen5.c b/arch/arm/mach-socfpga/reset_manager_gen5.c
index 66af924485..89a384b59c 100644
--- a/arch/arm/mach-socfpga/reset_manager_gen5.c
+++ b/arch/arm/mach-socfpga/reset_manager_gen5.c
@@ -103,7 +103,8 @@ void socfpga_bridges_reset(int enable)
if (enable) {
/* brdmodrst */
- writel(0xffffffff, &reset_manager_base->brg_mod_reset);
+ writel(0x7, &reset_manager_base->brg_mod_reset);
+ writel(L3REGS_REMAP_OCRAM_MASK, SOCFPGA_L3REGS_ADDRESS);
} else {
socfpga_bridges_set_handoff_regs(false, false, false);