f76c691657
The cache invalidation in scm_call() correctly rounds down the start address to invalidate the beginning of the cacheline but doesn't properly round up the 'end' address to make it aligned. The last chunk of the buffer won't be invalidated when 'end' is not cacheline size aligned so make sure to invalidate the last few bytes in such situations. It also doesn't do anything about outer caches so make sure to invalidate and flush those as well. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Kumar Gala <galak@codeaurora.org> |
||
---|---|---|
.. | ||
board.c | ||
Kconfig | ||
Makefile | ||
platsmp.c | ||
scm-boot.c | ||
scm-boot.h | ||
scm.c | ||
scm.h |