diff options
author | Gabe Black <gabeblack@google.com> | 2013-05-18 22:45:54 -0700 |
---|---|---|
committer | Stefan Reinauer <stefan.reinauer@coreboot.org> | 2013-07-10 21:06:34 +0200 |
commit | 800790d4e1e4817a140c706a32b5448cbd9d0c45 (patch) | |
tree | 44b639d8f3f91eb3f62f0ebb06728bcf5628974e /src/include/reset.h | |
parent | 1e797bdb79b9b3d05640abfee93acf1359cda4db (diff) |
ARM: Fix up page table/cachability management.
When modifying the page tables, use writel to ensure the writes happen, flush
the page tables themselves to ensure they're visible to the MMU if it doesn't
look at the caches, and invalidate the right TLB entries.
The first two changes are probably safer but may not be strictly necessary.
The third change is necessary because we were invalidating the TLB using i
which was in megabytes but using an instruction that expects an address in
bytes.
One symptom of this problem was that the framebuffer, which was supposed to be
marked uncacheable, was only being partially updated since some of the updates
were still in the cache. With this change the graphics show up correctly.
Change-Id: I5475df29690371459b0d37a304eebc62f81dd76b
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Reviewed-on: http://review.coreboot.org/3653
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/include/reset.h')
0 files changed, 0 insertions, 0 deletions