[U-Boot] [PATCH 2/2] fsl: add register read-back to set_law()
Timur Tabi
timur at freescale.com
Sat Sep 5 00:05:24 CEST 2009
After programming a new LAW, we should read-back the LAWAR register so that
we sync the writes. Otherwise, code that attempts to use the new LAW-mapped
memory might fail.
Signed-off-by: Timur Tabi <timur at freescale.com>
---
drivers/misc/fsl_law.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/misc/fsl_law.c b/drivers/misc/fsl_law.c
index 147fe0a..7bdd355 100644
--- a/drivers/misc/fsl_law.c
+++ b/drivers/misc/fsl_law.c
@@ -58,7 +58,8 @@ void set_law(u8 idx, phys_addr_t addr, enum law_size sz, enum law_trgt_if id)
out_be32(lawbar, addr >> 12);
out_be32(lawar, LAWAR_EN | ((u32)id << 20) | (u32)sz);
- return ;
+ /* Read back so that we sync the writes */
+ in_be32(lawar);
}
int set_next_law(phys_addr_t addr, enum law_size sz, enum law_trgt_if id)
--
1.6.0.6
More information about the U-Boot
mailing list