blob: 2b965edb0a8ec386e72f6783af3365a1dfd2afb2 [file] [log] [blame]
Angel Pons118a9c72020-04-02 23:48:34 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Ionela Voinescu00903e52015-01-09 13:14:20 +00002
3#include <program_loading.h>
4
5/* For each segment of a program loaded this function is called*/
Aaron Durbin096f4572016-03-31 13:49:00 -05006void prog_segment_loaded(uintptr_t start, size_t size, int flags)
7{
8 platform_segment_loaded(start, size, flags);
9 arch_segment_loaded(start, size, flags);
10}
11
Aaron Durbin64031672018-04-21 14:45:32 -060012void __weak platform_segment_loaded(uintptr_t start,
Aaron Durbin096f4572016-03-31 13:49:00 -050013 size_t size, int flags)
14{
15 /* do nothing */
16}
17
Aaron Durbin64031672018-04-21 14:45:32 -060018void __weak arch_segment_loaded(uintptr_t start, size_t size,
Aaron Durbin6e76fff2015-03-20 09:42:05 -050019 int flags)
Ionela Voinescu00903e52015-01-09 13:14:20 +000020{
21 /* do nothing */
22}
Aaron Durbinb3847e62015-03-20 15:55:08 -050023
24void prog_run(struct prog *prog)
25{
26 platform_prog_run(prog);
27 arch_prog_run(prog);
28}
29
Aaron Durbin64031672018-04-21 14:45:32 -060030void __weak platform_prog_run(struct prog *prog)
Aaron Durbinb3847e62015-03-20 15:55:08 -050031{
32 /* do nothing */
33}