From 961ffa61dd9126d9f6a01a88a26cac3e7bc87657 Mon Sep 17 00:00:00 2001 From: Solomon Peachy Date: Sat, 27 Mar 2021 15:02:18 -0400 Subject: [PATCH] Use STORAGE_NEEDS_BOUNCE_BUFFER instead of STORAGE_NEEDS_ALIGN Enable its use in the jz47xx MIPS targets. (accidently committed g#3249 before making these changes) Change-Id: I1791946f632901f0c7a94b04b009671aa0d71717 --- firmware/drivers/fat.c | 6 +++--- firmware/target/mips/ingenic_jz47xx/system-target.h | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/firmware/drivers/fat.c b/firmware/drivers/fat.c index 61bf9051f2..50619983e9 100644 --- a/firmware/drivers/fat.c +++ b/firmware/drivers/fat.c @@ -266,7 +266,7 @@ static struct bpb } fat_bpbs[NUM_VOLUMES]; /* mounted partition info */ -#ifdef STORAGE_WANTS_ALIGN +#ifdef STORAGE_NEEDS_BOUNCE_BUFFER #define FAT_BOUNCE_SECTORS 10 static uint8_t fat_bounce_buffers[NUM_VOLUMES][SECTOR_SIZE*FAT_BOUNCE_SECTORS] STORAGE_ALIGN_ATTR; #define FAT_BOUNCE_BUFFER(bpb) \ @@ -2393,7 +2393,7 @@ static long transfer(struct bpb *fat_bpb, unsigned long start, long count, else { void* xferbuf = buf; -#ifdef STORAGE_WANTS_ALIGN +#ifdef STORAGE_NEEDS_BOUNCE_BUFFER int remain = count; int xferred = 0; int aligned = 1; @@ -2407,7 +2407,7 @@ static long transfer(struct bpb *fat_bpb, unsigned long start, long count, #endif rc = storage_read_sectors(IF_MD(fat_bpb->drive,) start + fat_bpb->startsector, count, xferbuf); -#ifdef STORAGE_WANTS_ALIGN +#ifdef STORAGE_NEEDS_BOUNCE_BUFFER if(rc < 0) break; if(LIKELY(aligned)) diff --git a/firmware/target/mips/ingenic_jz47xx/system-target.h b/firmware/target/mips/ingenic_jz47xx/system-target.h index 862ec403d2..2725944452 100644 --- a/firmware/target/mips/ingenic_jz47xx/system-target.h +++ b/firmware/target/mips/ingenic_jz47xx/system-target.h @@ -38,6 +38,7 @@ #define NEED_GENERIC_BYTESWAPS #define STORAGE_WANTS_ALIGN +#define STORAGE_NEEDS_BOUNCE_BUFFER /* This one returns the old status */ static inline int set_interrupt_status(int status, int mask)