4040
4141#include "wolfboot/wolfboot.h"
4242#include "target.h"
43+ #include "printf.h"
4344
4445/* Global pointer to the internal and external flash base */
4546uint8_t * sim_ram_base ;
@@ -72,7 +73,7 @@ static int mmap_file(const char *path, uint8_t *address, uint8_t** ret_address)
7273
7374 fd = open (path , O_RDWR );
7475 if (fd == -1 ) {
75- fprintf ( stderr , "can't open %s\n" , path );
76+ wolfBoot_printf ( "can't open %s\n" , path );
7677 return -1 ;
7778 }
7879
@@ -81,7 +82,7 @@ static int mmap_file(const char *path, uint8_t *address, uint8_t** ret_address)
8182 if (mmaped_addr == MAP_FAILED )
8283 return -1 ;
8384
84- fprintf ( stderr , "Simulator assigned %s to base %p\n" , path , mmaped_addr );
85+ wolfBoot_printf ( "Simulator assigned %s to base %p\n" , path , mmaped_addr );
8586
8687 * ret_address = mmaped_addr ;
8788
@@ -119,8 +120,8 @@ int hal_flash_write(uintptr_t address, const uint8_t *data, int len)
119120 uint8_t * addr = (uint8_t * )address ;
120121 if (addr [i ] != FLASH_BYTE_ERASED ) {
121122 /* no writing to non-erased page in NVM_FLASH_WRITEONCE */
122- printf ("NVM_FLASH_WRITEONCE non-erased write detected at address %p!\n" , addr );
123- printf ("Address[%d] = %02x\n" , i , addr [i ]);
123+ wolfBoot_printf ("NVM_FLASH_WRITEONCE non-erased write detected at address %p!\n" , addr );
124+ wolfBoot_printf ("Address[%d] = %02x\n" , i , addr [i ]);
124125 return -1 ;
125126 }
126127#endif
@@ -137,9 +138,9 @@ int hal_flash_write(uintptr_t address, const uint8_t *data, int len)
137138int hal_flash_erase (uintptr_t address , int len )
138139{
139140 /* implicit cast abide compiler warning */
140- fprintf ( stderr , "hal_flash_erase addr %p len %d\n" , (void * )address , len );
141+ wolfBoot_printf ( "hal_flash_erase addr %p len %d\n" , (void * )address , len );
141142 if (address == erasefail_address + WOLFBOOT_PARTITION_BOOT_ADDRESS ) {
142- fprintf ( stderr , "POWER FAILURE\n" );
143+ wolfBoot_printf ( "POWER FAILURE\n" );
143144 /* Corrupt page */
144145 memset ((void * )address , 0xEE , len );
145146 exit (0 );
@@ -156,23 +157,23 @@ void hal_init(void)
156157 ret = mmap_file (INTERNAL_FLASH_FILE ,
157158 (uint8_t * )ARCH_FLASH_OFFSET , & sim_ram_base );
158159 if (ret != 0 ) {
159- fprintf ( stderr , "failed to load internal flash file\n" );
160+ wolfBoot_printf ( "failed to load internal flash file\n" );
160161 exit (-1 );
161162 }
162163
163164#ifdef EXT_FLASH
164165 ret = mmap_file (EXTERNAL_FLASH_FILE ,
165166 (uint8_t * )ARCH_FLASH_OFFSET + 0x10000000 , & flash_base );
166167 if (ret != 0 ) {
167- fprintf ( stderr , "failed to load external flash file\n" );
168+ wolfBoot_printf ( "failed to load external flash file\n" );
168169 exit (-1 );
169170 }
170171#endif /* EXT_FLASH */
171172
172173 for (i = 1 ; i < main_argc ; i ++ ) {
173174 if (strcmp (main_argv [i ], "powerfail" ) == 0 ) {
174175 erasefail_address = strtol (main_argv [++ i ], NULL , 16 );
175- fprintf ( stderr , "Set power fail to erase at address %x\n" ,
176+ wolfBoot_printf ( "Set power fail to erase at address %x\n" ,
176177 erasefail_address );
177178 }
178179 /* force a bad write of the boot partition to trigger and test the
@@ -262,15 +263,15 @@ void do_boot(const uint32_t *app_offset)
262263
263264 ret = NSCreateObjectFileImageFromMemory (app_buf , app_size , & fileImage );
264265 if (ret != 1 || fileImage == NULL ) {
265- fprintf ( stderr , "Error loading object memory!\n" );
266+ wolfBoot_printf ( "Error loading object memory!\n" );
266267 exit (-1 );
267268 }
268269 module = NSLinkModule (fileImage , "module" ,
269270 (NSLINKMODULE_OPTION_PRIVATE | NSLINKMODULE_OPTION_BINDNOW ));
270271 symbol = NSLookupSymbolInModule (module , "__mh_execute_header" );
271272 pSymbolAddress = NSAddressOfSymbol (symbol );
272273 if (!find_epc (pSymbolAddress , & epc )) {
273- fprintf ( stderr , "Error finding entry point!\n" );
274+ wolfBoot_printf ( "Error finding entry point!\n" );
274275 exit (-1 );
275276 }
276277
@@ -283,17 +284,17 @@ void do_boot(const uint32_t *app_offset)
283284 char * envp [1 ] = {NULL };
284285 int fd = memfd_create ("test_app" , 0 );
285286 if (fd == -1 ) {
286- fprintf ( stderr , "memfd error\n" );
287+ wolfBoot_printf ( "memfd error\n" );
287288 exit (-1 );
288289 }
289290
290291 if ((size_t )write (fd , app_offset , app_size ) != app_size ) {
291- fprintf ( stderr , "can't write test-app to memfd\n" );
292+ wolfBoot_printf ( "can't write test-app to memfd\n" );
292293 exit (-1 );
293294 }
294295
295296 ret = fexecve (fd , main_argv , envp );
296- fprintf ( stderr , "fexecve error\n" );
297+ wolfBoot_printf ( "fexecve error\n" );
297298#endif
298299 exit (1 );
299300}
0 commit comments