git subrepo pull --force emummc

subrepo:
  subdir:   "emummc"
  merged:   "7522f1f60"
upstream:
  origin:   "https://github.com/lulle2007200/emuMMC.git"
  branch:   "develop"
  commit:   "7522f1f60"
git-subrepo:
  version:  "0.4.9"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "30db3b8"
This commit is contained in:
lulle2007200
2025-05-12 14:42:19 +02:00
parent 92c599f0f0
commit c1b5cc411e
342 changed files with 969 additions and 106672 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -29,7 +29,6 @@ extern "C" {
#include <string.h>
#include "../emmc/nx_sd.h"
#include "../emmc/nx_emmc.h"
#include "../emmc/sdmmc.h"
#include "../soc/i2c.h"
#include "../soc/gpio.h"
@@ -47,15 +46,11 @@ typedef sdmmc_accessor_t *(*_sdmmc_accessor_nand)();
typedef void (*_lock_mutex)(void *mtx);
typedef void (*_unlock_mutex)(void *mtx);
bool sdmmc_initialize_sd(void);
void sdmmc_finalize_sd(void);
bool sdmmc_initialize(void);
void sdmmc_finalize(void);
int sdmmc_nand_get_active_partition_index();
sdmmc_accessor_t *sdmmc_accessor_get(int mmc_id);
bool sdmmc_initialize_emmc(void);
void sdmmc_finalize_emmc(void);
void mutex_lock_handler(int mmc_id);
void mutex_unlock_handler(int mmc_id);
@@ -65,10 +60,6 @@ uint64_t sdmmc_wrapper_controller_close(int mmc_id);
uint64_t sdmmc_wrapper_read(void *buf, uint64_t bufSize, int mmc_id, unsigned int sector, unsigned int num_sectors);
uint64_t sdmmc_wrapper_write(int mmc_id, unsigned int sector, unsigned int num_sectors, void *buf, uint64_t bufSize);
extern _sdmmc_accessor_sd sdmmc_accessor_sd;
extern _sdmmc_accessor_nand sdmmc_accessor_nand;
extern _sdmmc_accessor_gc sdmmc_accessor_gc;
typedef struct _file_based_ctxt
{
FATFS sd_fs;

View File

@@ -22,16 +22,19 @@
#include "../FS/FS_versions.h"
#define EMUMMC_STORAGE_MAGIC 0x30534645 /* EFS0, EmuFS0 */
#define EMUMMC_MAX_DIR_LENGTH 0x7F
// 0x80 for path from config + 0xf for drive prefix
#define EMUMMC_MAX_DIR_LENGTH 0x8F
enum emuMMC_Type
{
// EMMC Device raw
emuMMC_EMMC = 0,
enum EmummcType {
EmummcType_None = 0,
EmummcType_Partition_Sd = 1,
EmummcType_File_Sd = 2,
EmummcType_Partition_Emmc = 3,
EmummcType_File_Emmc = 4,
// SD Device raw
emuMMC_SD_Raw,
// SD Device File
emuMMC_SD_File,
emuMMC_MAX
};
typedef struct _emuMMC_ctx_t
@@ -39,15 +42,15 @@ typedef struct _emuMMC_ctx_t
u32 magic;
u32 id;
enum FS_VER fs_ver;
enum EmummcType EMMC_Type;
enum EmummcType SD_Type;
enum emuMMC_Type EMMC_Type;
enum emuMMC_Type SD_Type;
/* Partition based */
u64 EMMC_StoragePartitionOffset;
u64 SD_StoragePartitionOffset;
/* File-Based */
char storagePath[EMUMMC_MAX_DIR_LENGTH + 1];
char storagePath[EMUMMC_MAX_DIR_LENGTH+1];
} emuMMC_ctx_t, *PemuMMC_ctx_t;
#endif /* __EMUMMC_CTX_H__ */