Angel Pons | 118a9c7 | 2020-04-02 23:48:34 +0200 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
Ionela Voinescu | 00903e5 | 2015-01-09 13:14:20 +0000 | [diff] [blame] | 2 | |
| 3 | #include <program_loading.h> |
Elyes Haouas | 1dc827a | 2022-10-02 20:23:14 +0200 | [diff] [blame] | 4 | #include <types.h> |
Ionela Voinescu | 00903e5 | 2015-01-09 13:14:20 +0000 | [diff] [blame] | 5 | |
| 6 | /* For each segment of a program loaded this function is called*/ |
Aaron Durbin | 096f457 | 2016-03-31 13:49:00 -0500 | [diff] [blame] | 7 | void prog_segment_loaded(uintptr_t start, size_t size, int flags) |
| 8 | { |
| 9 | platform_segment_loaded(start, size, flags); |
| 10 | arch_segment_loaded(start, size, flags); |
| 11 | } |
| 12 | |
Aaron Durbin | 6403167 | 2018-04-21 14:45:32 -0600 | [diff] [blame] | 13 | void __weak platform_segment_loaded(uintptr_t start, |
Aaron Durbin | 096f457 | 2016-03-31 13:49:00 -0500 | [diff] [blame] | 14 | size_t size, int flags) |
| 15 | { |
| 16 | /* do nothing */ |
| 17 | } |
| 18 | |
Aaron Durbin | 6403167 | 2018-04-21 14:45:32 -0600 | [diff] [blame] | 19 | void __weak arch_segment_loaded(uintptr_t start, size_t size, |
Aaron Durbin | 6e76fff | 2015-03-20 09:42:05 -0500 | [diff] [blame] | 20 | int flags) |
Ionela Voinescu | 00903e5 | 2015-01-09 13:14:20 +0000 | [diff] [blame] | 21 | { |
| 22 | /* do nothing */ |
| 23 | } |
Aaron Durbin | b3847e6 | 2015-03-20 15:55:08 -0500 | [diff] [blame] | 24 | |
| 25 | void prog_run(struct prog *prog) |
| 26 | { |
| 27 | platform_prog_run(prog); |
| 28 | arch_prog_run(prog); |
| 29 | } |
| 30 | |
Aaron Durbin | 6403167 | 2018-04-21 14:45:32 -0600 | [diff] [blame] | 31 | void __weak platform_prog_run(struct prog *prog) |
Aaron Durbin | b3847e6 | 2015-03-20 15:55:08 -0500 | [diff] [blame] | 32 | { |
| 33 | /* do nothing */ |
| 34 | } |