1
0
Fork 0
forked from len0rd/rockbox

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
This commit is contained in:
Aidan MacDonald 2022-03-07 11:53:40 +00:00
parent 439b4e8bca
commit 7fa48faeb5
10 changed files with 165 additions and 220 deletions

View file

@ -21,6 +21,9 @@
*
****************************************************************************/
#ifndef __MI4_LOADER_H__
#define __MI4_LOADER_H__
#include <stdint.h>
#define MI4_HEADER_SIZE 0x200
@ -50,21 +53,4 @@ struct tea_key {
int load_mi4(unsigned char* buf, const char* firmware, unsigned int buffer_size);
const char *mi4_strerror(int8_t errno);
#ifdef HAVE_MULTIBOOT /* defined by config.h */
/* Check in root of this <volume> for rockbox_main.<playername>
* if this file empty or there is a single slash '/'
* buf = '<volume#>/<rootdir>/<firmware(name)>\0'
* If instead '/<*DIRECTORY*>' is supplied
* addpath will be set to this DIRECTORY buf =
* '/<volume#>/addpath/<rootdir>/<firmware(name)>\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
*/
/* TODO needs mapped back to debug_menu if root redirect ever becomes a reality */
int get_redirect_dir(char* buf, int buffer_size, int volume,
const char* rootdir, const char* firmware);
#endif
#endif /* __MI4_LOADER_H__ */