fs/fat: align disk buffers on cache line to enable DMA and cache
PATCH v2 1/1 fs/fat: align disk buffers on cache line to enable DMA and cache
--- fs/fat/fat.c | 14 ++++++++------ 1 files changed, 8 insertions(+), 6 deletions(-)
fs/fat/fat.c +8 -6
@@ -31,6 +31,8 @@#include <fat.h> #include <asm/byteorder.h> #include <part.h> +#include <malloc.h> +#include <linux/compiler.h> /* * Convert a string to lowercase.
@@ -62,7 +64,7 @@ static int disk_read(__u32 block, __u32 nr_blocks, void *buf)int fat_register_device (block_dev_desc_t * dev_desc,int part_no) { -unsigned char buffer[dev_desc->blksz]; + ALLOC_CACHE_ALIGN_BUFFER(unsigned char, buffer, dev_desc->blksz);/* First close any currently found FAT filesystem */ cur_dev =NULL ;
@@ -293,7 +295,7 @@ get_cluster (fsdata *mydata, __u32 clustnum, __u8 *buffer,return -1 ; }if (size % mydata->sect_size) { -__u8 tmpbuf[mydata->sect_size]; +ALLOC_CACHE_ALIGN_BUFFER (__u8, tmpbuf, mydata->sect_size); idx = size / mydata->sect_size; ret =disk_read (startsect + idx,1 , tmpbuf);
@@ -428,8 +430,8 @@ static int slot2str (dir_slot *slotptr, char *l_name, int *idx)* into 'retdent' * Return 0 on success, -1 otherwise. */ -__attribute__ ((__aligned__ (__alignof__ (dir_entry )))) -__u8 get_vfatname_block[MAX_CLUSTSIZE ]; +__u8 get_vfatname_block[MAX_CLUSTSIZE ] +__aligned(ARCH_DMA_MINALIGN) ; static int get_vfatname (fsdata *mydata, int curclust, __u8 *cluster,
@@ -709,7 +711,7 @@ read_bootsectandvi (boot_sector *bs, volume_info *volinfo, int *fatsize)return -1 ; } - block =malloc (cur_dev->blksz); + block =memalign (ARCH_DMA_MINALIGN , cur_dev->blksz);if (block ==NULL ) {debug ("Error: allocating block\n" );return -1 ;
@@ -828,7 +830,7 @@ do_fat_read (const char *filename, void *buffer, unsigned long maxsize, } mydata->fatbufnum =-1 ; - mydata->fatbuf =malloc (FATBUFSIZE ); + mydata->fatbuf =memalign (ARCH_DMA_MINALIGN ,FATBUFSIZE );if (mydata->fatbuf ==NULL ) {debug ("Error: allocating memory\n" );return -1 ;
Signature · 1 line
1.7.9
PATCH v2 1/1 fs/fat: align disk buffers on cache line to enable DMA and cache
Quoted 20 lines · Eric Nelson
Signed-off-by Eric Nelson<[email protected]>Acked-by Mike Frysinger<[email protected]>--- fs/fat/fat.c | 14 ++++++++------ 1 files changed, 8 insertions(+), 6 deletions(-)fs/fat/fat.c +2
-0@@ -31,6 +31,8 @@#include <fat.h> #include <asm/byteorder.h> #include <part.h> +#include <malloc.h> +#include <linux/compiler.h> /* * Convert a string to lowercase.
fs/fat/fat.c static int disk_read(__u32 block, __u32 nr_blocks, void *buf) · line 67
Quoted 6 lines
fs/fat/fat.c +1
-1@@ -62,7 +64,7 @@ static int disk_read(__u32 block, __u32 nr_blocks, void *buf)int fat_register_device (block_dev_desc_t * dev_desc,int part_no) { -unsigned char buffer[dev_desc->blksz]; + ALLOC_CACHE_ALIGN_BUFFER(unsigned char, buffer, dev_desc->blksz);
Hi Wolfgang,
Have you had a chance to review this patch? Is there another maintainer for fs/fat?
Please let me know if you need this updated.
There's another patch that was acked by Mike but is otherwise lingering here:
http://lists.denx.de/pipermail/u-boot/2012-March/119309.html
Both of these are needed before enabling the data cache on i.MX6 when using the FAT filesystem.
Regards,
Eric
PATCH v2 1/1 fs/fat: align disk buffers on cache line to enable DMA and cache
Quoted 36 lines · Eric Nelson
Quoted 20 lines · Eric Nelson
Signed-off-by Eric Nelson<[email protected]>Acked-by Mike Frysinger<[email protected]>---
fs/fat/fat.c| 14 ++++++++------1 files changed, 8 insertions(+), 6 deletions(-)fs/fat/fat.c +2
-0@@ -31,6 +31,8 @@#include <fat.h> #include <asm/byteorder.h> #include <part.h> +#include <malloc.h> +#include <linux/compiler.h> /* * Convert a string to lowercase. fs/fat/fat.c static int disk_read(__u32 block, __u32 nr_blocks, · line 68
Quoted 7 lines
fs/fat/fat.c +1
-1@@ -62,7 +64,7 @@ static int disk_read(__u32 block, __u32 nr_blocks, void *buf)int fat_register_device (block_dev_desc_t * dev_desc,int part_no) { -unsigned char buffer[dev_desc->blksz]; + ALLOC_CACHE_ALIGN_BUFFER(unsigned char, buffer, dev_desc->blksz);Hi Wolfgang,
Have you had a chance to review this patch? Is there another maintainer for fs/fat?
Please let me know if you need this updated.
Quoted 8 lines
There's another patch that was acked by Mike but is otherwise lingering here:
http://lists.denx.de/pipermail/u-boot/2012-March/119309.html
Both of these are needed before enabling the data cache on i.MX6 when using
the FAT filesystem.
Anybody likes to comment/apply this patch?
Many thanks!
Dirk
PATCH v2 1/1 fs/fat: align disk buffers on cache line to enable DMA and cache
Hello Dirk,
Quoted 40 lines · On Sat, 24 Mar 2012 08:18:38 +0100 Dirk Behme <[email protected]> wrote:
Quoted 39 lines · Eric Nelson
Quoted 20 lines · Eric Nelson
Signed-off-by Eric Nelson<[email protected]>Acked-by Mike Frysinger<[email protected]>---
fs/fat/fat.c| 14 ++++++++------1 files changed, 8 insertions(+), 6 deletions(-)fs/fat/fat.c +2
-0@@ -31,6 +31,8 @@#include <fat.h> #include <asm/byteorder.h> #include <part.h> +#include <malloc.h> +#include <linux/compiler.h> /* * Convert a string to lowercase. fs/fat/fat.c static int disk_read(__u32 block, __u32 nr_blocks, · line 68
Quoted 7 lines
fs/fat/fat.c +1
-1@@ -62,7 +64,7 @@ static int disk_read(__u32 block, __u32 nr_blocks, void *buf)int fat_register_device (block_dev_desc_t * dev_desc,int part_no) { -unsigned char buffer[dev_desc->blksz]; + ALLOC_CACHE_ALIGN_BUFFER(unsigned char, buffer, dev_desc->blksz);Hi Wolfgang,
Have you had a chance to review this patch? Is there another maintainer for fs/fat?
Please let me know if you need this updated.
There's another patch that was acked by Mike but is otherwise lingering here:
Quoted 7 lines
Quoted 5 lines
http://lists.denx.de/pipermail/u-boot/2012-March/119309.html
Both of these are needed before enabling the data cache on i.MX6 when using
the FAT filesystem.Anybody likes to comment/apply this patch?
Both, this patch and the patch referenced by the above link were submitted when the merge window was closed. So, the patches will probably be applied to next when rc1 is out, unless Wolfgang decides to accept them for coming release.
Thanks,
Anatolij
PATCH v2 1/1 fs/fat: align disk buffers on cache line to enable DMA and cache
Quoted 51 lines · Anatolij Gustschin
Hello Dirk,
Quoted 46 lines · On Sat, 24 Mar 2012 08:18:38 +0100 Dirk Behme<[email protected]> wrote:
Quoted 44 lines · Eric Nelson
Quoted 20 lines · Eric Nelson
Signed-off-by Eric Nelson<[email protected]>Acked-by Mike Frysinger<[email protected]>---
fs/fat/fat.c| 14 ++++++++------1 files changed, 8 insertions(+), 6 deletions(-)fs/fat/fat.c +2
-0@@ -31,6 +31,8 @@#include <fat.h> #include <asm/byteorder.h> #include <part.h> +#include <malloc.h> +#include <linux/compiler.h> /* * Convert a string to lowercase. fs/fat/fat.c static int disk_read(__u32 block, __u32 nr_blocks, · line 68
Quoted 7 lines
fs/fat/fat.c +1
-1@@ -62,7 +64,7 @@ static int disk_read(__u32 block, __u32 nr_blocks, void *buf)int fat_register_device (block_dev_desc_t * dev_desc,int part_no) { -unsigned char buffer[dev_desc->blksz]; + ALLOC_CACHE_ALIGN_BUFFER(unsigned char, buffer, dev_desc->blksz);Hi Wolfgang,
Have you had a chance to review this patch? Is there another maintainer for fs/fat?
Please let me know if you need this updated.
There's another patch that was acked by Mike but is otherwise lingering here:
http://lists.denx.de/pipermail/u-boot/2012-March/119309.html
Both of these are needed before enabling the data cache on i.MX6 when using
the FAT filesystem.
Quoted 6 lines
Quoted 1 line
Anybody likes to comment/apply this patch?
Both, this patch and the patch referenced by the above link were submitted when the merge window was closed. So, the patches will probably be applied to next when rc1 is out, unless Wolfgang decides to accept them for coming release.
Ok, thanks!
Do we have a -next branch for stuff like this, then?
Best regards
dirk
PATCH v2 1/1 fs/fat: align disk buffers on cache line to enable DMA and cache
On Tue, 27 Mar 2012 18:28:21 +0200
Dirk Behme <[email protected]> wrote:
...
Quoted 10 lines
Quoted 6 lines
Quoted 1 line
Anybody likes to comment/apply this patch?
Both, this patch and the patch referenced by the above link were submitted when the merge window was closed. So, the patches will probably be applied to next when rc1 is out, unless Wolfgang decides to accept them for coming release.
Ok, thanks!
Do we have a -next branch for stuff like this, then?
AFAIK, Wolfgang updates u-boot.git next branch when -rc1 is out. After a release this next branch is merged into u-boot.git master.
Best regards,
Anatolij
PATCH v2 1/1 fs/fat: align disk buffers on cache line to enable DMA and cache
Quoted 10 lines · Anatolij Gustschin
On Tue, 27 Mar 2012 18:28:21 +0200
Dirk Behme <[email protected]> wrote:
...Quoted 7 lines
Quoted 6 lines
Quoted 1 line
Anybody likes to comment/apply this patch?
Both, this patch and the patch referenced by the above link were submitted when the merge window was closed. So, the patches will probably be applied to next when rc1 is out, unless Wolfgang decides to accept them for coming release.
Quoted 6 lines
Quoted 3 lines
Ok, thanks!
Do we have a -next branch for stuff like this, then?
AFAIK, Wolfgang updates u-boot.git next branch when -rc1 is out. After a release this next branch is merged into u-boot.git master.
All of that said, I can't imagine Wolfgang objecting to a u-boot-staging/you/next branch so things aren't lost and there's clear intention to submitters as well.
Signature · 1 line
Tom
PATCH v2 1/1 fs/fat: align disk buffers on cache line to enable DMA and cache
In reply to Dirk BehmeQuoted 52 lines · Dirk Behme
Quoted 51 lines · Anatolij Gustschin
Hello Dirk,
Quoted 46 lines · On Sat, 24 Mar 2012 08:18:38 +0100 Dirk Behme<[email protected]> wrote:
Quoted 36 lines · Eric Nelson
Quoted 20 lines · Eric Nelson
Signed-off-by Eric Nelson<[email protected]>Acked-by Mike Frysinger<[email protected]>---
fs/fat/fat.c| 14 ++++++++------1 files changed, 8 insertions(+), 6 deletions(-)fs/fat/fat.c +2
-0@@ -31,6 +31,8 @@#include <fat.h> #include <asm/byteorder.h> #include <part.h> +#include <malloc.h> +#include <linux/compiler.h> /* * Convert a string to lowercase. fs/fat/fat.c static int disk_read(__u32 block, __u32 nr_blocks, · line 68
Quoted 7 lines
fs/fat/fat.c +1
-1@@ -62,7 +64,7 @@ static int disk_read(__u32 block, __u32 nr_blocks, void *buf)int fat_register_device (block_dev_desc_t * dev_desc,int part_no) { -unsigned char buffer[dev_desc->blksz]; + ALLOC_CACHE_ALIGN_BUFFER(unsigned char, buffer, dev_desc->blksz);Hi Wolfgang,
Have you had a chance to review this patch? Is there another maintainer for fs/fat?
Please let me know if you need this updated.
Quoted 8 lines
There's another patch that was acked by Mike but is otherwise lingering here:
http://lists.denx.de/pipermail/u-boot/2012-March/119309.html
Both of these are needed before enabling the data cache on i.MX6 when using
the FAT filesystem.Anybody likes to comment/apply this patch?
Quoted 8 lines
Quoted 4 lines
Both, this patch and the patch referenced by the above link were submitted when the merge window was closed. So, the patches will probably be applied to next when rc1 is out, unless Wolfgang decides to accept them for coming release.
Ok, thanks!
Do we have a -next branch for stuff like this, then?
There should be a -next from Wolfgang for
http://patchwork.ozlabs.org/patch/144462/
http://patchwork.ozlabs.org/patch/151799/
now :)
Best regards
Dirk
PATCH v2 1/1 fs/fat: align disk buffers on cache line to enable DMA and cache
On Thu, 19 Apr 2012 08:35:37 +0200
Dirk Behme <[email protected]> wrote:
...
Quoted 5 lines
There should be a -next from Wolfgang for
Both applied, thanks!
Anatolij