From c7e6ee43413b8cc7fa2b47c36e1afb85877a8ead Mon Sep 17 00:00:00 2001 From: Jacob Hageman Date: Wed, 4 Jan 2023 22:33:52 +0000 Subject: [PATCH] Fix #375, Separate network logic in pc-rtems to support generic targets --- fsw/pc-rtems/make/build_options.cmake | 2 +- fsw/pc-rtems/src/cfe_psp_start.c | 13 ++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/fsw/pc-rtems/make/build_options.cmake b/fsw/pc-rtems/make/build_options.cmake index 919675a6..8bd396df 100644 --- a/fsw/pc-rtems/make/build_options.cmake +++ b/fsw/pc-rtems/make/build_options.cmake @@ -7,7 +7,7 @@ # This indicates where to install target binaries created during the build # Note - this should be phased out in favor of the staging dir from OSAL BSP -set(INSTALL_SUBDIR "eeprom") +set(INSTALL_SUBDIR "nonvol") # Some upper-level code may be gated on _RTEMS_OS_ being defined # This is for compatibility with older build scripts which defined this symbol, diff --git a/fsw/pc-rtems/src/cfe_psp_start.c b/fsw/pc-rtems/src/cfe_psp_start.c index 5d03d17f..aee22890 100644 --- a/fsw/pc-rtems/src/cfe_psp_start.c +++ b/fsw/pc-rtems/src/cfe_psp_start.c @@ -33,8 +33,9 @@ #include #include #include -#include -#include +/* TODO Only needed for network setup, move? */ +//#include +//#include extern int rtems_fxp_attach(struct rtems_bsdnet_ifconfig *config, int attaching); @@ -63,6 +64,8 @@ extern int rtems_fxp_attach(struct rtems_bsdnet_ifconfig *config, int attaching) rtems_id RtemsTimerId; +/* TODO in pc but not in generic... might be the only unique stuff? */ +#if 0 static unsigned char ethernet_address[6] = {0x00, 0x04, 0x9F, 0x00, 0x27, 0x61}; static char net_name_str[] = "fxp1"; static char ip_addr_str[] = "10.0.2.17"; @@ -78,9 +81,11 @@ static struct rtems_bsdnet_ifconfig netdriver_config = { /* more options can follow */ }; + struct rtems_bsdnet_config rtems_bsdnet_config = { .ifconfig = &netdriver_config, .bootp = rtems_bsdnet_do_dhcp_failsafe, /* fill if DHCP is used*/ }; +#endif /* ** 1 HZ Timer "ISR" @@ -200,7 +205,9 @@ void CFE_PSP_Main(void) /* ** Set up the virtual FS mapping for the "/cf" directory */ - Status = OS_FileSysAddFixedMap(&fs_id, "/mnt/eeprom", "/cf"); + /* TODO maybe make this into a config... or just switch to nonvol */ + // Status = OS_FileSysAddFixedMap(&fs_id, "/mnt/eeprom", "/cf"); + Status = OS_FileSysAddFixedMap(&fs_id, "/nonvol", "/cf"); if (Status != OS_SUCCESS) { /* Print for informational purposes --