From 7fa48faeb55fb43b6a4e727d0abd104b267c89a4 Mon Sep 17 00:00:00 2001 From: Aidan MacDonald Date: Mon, 7 Mar 2022 11:53:40 +0000 Subject: multiboot: Refactor duplicated functions to a separate file The implementation of write_bootdata() and get_redirect_dir() was copied verbatim in two different places, obviously a bad thing for maintainability. This moves them to a new file multiboot.c as they are only used for multiboot. Change-Id: Id0279216e4dd019f8bf612a81d3835eff010e506 --- firmware/include/dircache_redirect.h | 1 + firmware/include/rb-loader.h | 20 ++++---------------- 2 files changed, 5 insertions(+), 16 deletions(-) (limited to 'firmware/include') diff --git a/firmware/include/dircache_redirect.h b/firmware/include/dircache_redirect.h index c8905455f9..65b2184d2b 100644 --- a/firmware/include/dircache_redirect.h +++ b/firmware/include/dircache_redirect.h @@ -27,6 +27,7 @@ #if defined(HAVE_MULTIBOOT) && !defined(SIMULATOR) && !defined(BOOTLOADER) #include "rb-loader.h" +#include "multiboot.h" #include "bootdata.h" #include "crc32.h" #endif diff --git a/firmware/include/rb-loader.h b/firmware/include/rb-loader.h index 71b6e038aa..d554ace95e 100644 --- a/firmware/include/rb-loader.h +++ b/firmware/include/rb-loader.h @@ -18,21 +18,9 @@ * ****************************************************************************/ +#ifndef __RB_LOADER_H__ +#define __RB_LOADER_H__ + int load_firmware(unsigned char* buf, const char* firmware, int buffer_size); -#ifdef HAVE_MULTIBOOT /* defined by config.h */ -/* Check in root of this for rockbox_main. - * if this file empty or there is a single slash '/' - * buf = '//\0' - * If instead '/<*DIRECTORY*>' is supplied - * addpath will be set to this DIRECTORY buf = - * '//addpath//\0' - * On error returns Negative number or 0 - * On success returns bytes from snprintf - * and generated path will be placed in buf - * note: if supplied buffer is too small return will be - * the number of bytes that would have been written - */ -int get_redirect_dir(char* buf, int buffer_size, int volume, - const char* rootdir, const char* firmware); -#endif +#endif /* __RB_LOADER_H__ */ -- cgit v1.2.3