fsl: add register read-back to set_law()

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 right away.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
This commit is contained in:
Timur Tabi 2009-09-04 17:05:24 -05:00 committed by Kumar Gala
parent c725908681
commit 74c5dfd81f

View file

@ -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(lawbar, addr >> 12);
out_be32(lawar, LAWAR_EN | ((u32)id << 20) | (u32)sz); 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) int set_next_law(phys_addr_t addr, enum law_size sz, enum law_trgt_if id)