boards: bsim: fix bug with single settings file for few bsim devices

Multiple bsim devices cannot store individual settings
with the existing settings backend for bsim.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
This commit is contained in:
Aleksandr Khromykh 2021-08-23 15:03:46 +02:00 committed by Christopher Friedt
commit 4b5cd92312
7 changed files with 39 additions and 25 deletions

View file

@ -226,5 +226,15 @@ void nrfbsim_cleanup_args(void)
bs_cleanup_dynargs(&args_struct);
}
char *get_simid(void)
{
return arg.s_id;
}
unsigned int get_device_nbr(void)
{
return arg.global_device_nbr;
}
NATIVE_TASK(nrfbsim_register_args, PRE_BOOT_1, 0);
NATIVE_TASK(nrfbsim_cleanup_args, ON_EXIT, 10);

View file

@ -26,6 +26,8 @@ struct NRF_bsim_args_t {
struct NRF_bsim_args_t *nrfbsim_argsparse(int argc, char *argv[]);
void bs_add_extra_dynargs(bs_args_struct_t *args_struct_toadd);
char *get_simid(void);
unsigned int get_device_nbr(void);
#ifdef __cplusplus
}

View file

@ -57,8 +57,6 @@ void posix_exit(int exit_code)
exit(inner_main_clean_up(exit_code));
}
uint global_device_nbr;
int main(int argc, char *argv[])
{
/*
@ -79,7 +77,6 @@ int main(int argc, char *argv[])
struct NRF_bsim_args_t *args;
args = nrfbsim_argsparse(argc, argv);
global_device_nbr = args->global_device_nbr;
bs_read_function_names_from_Tsymbols(argv[0]);