program loading: provide one cache maintenance callback

Instead of having 2 different functions to call when a program
is loaded provide a single callback with flags parameter. The
previous callbacks for cache management routines did this:

for_each_program_segment:
	arch_program_segment_loaded(start, size);
arch_program_loaded();

Now, use one callback instead:
for_each_program_segment:
	arch_segment_loaded(start, size, SEG_FINAL?);

Change-Id: I3811cba92e3355d172f605e4444f053321b07a2a
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: http://review.coreboot.org/8838
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
Aaron Durbin
2015-03-20 09:42:05 -05:00
committed by Aaron Durbin
parent ebf2ed4621
commit 6e76fff969
5 changed files with 23 additions and 24 deletions

View File

@ -23,11 +23,15 @@
#include <stdint.h>
#include <stddef.h>
/* For each segment of a program loaded this function is called*/
void arch_program_segment_loaded(uintptr_t start, size_t size);
enum {
/* Last segment of program. Can be used to take different actions for
* cache maintenance of a program load. */
SEG_FINAL = 1 << 0,
};
/* Upon completion of loading a program this function is called */
void arch_program_loaded(void);
/* Called for each segment of a program loaded. The PROG_FLAG_FINAL will be
* set on the last segment loaded. */
void arch_segment_loaded(uintptr_t start, size_t size, int flags);
/************************
* ROMSTAGE LOADING *