diff mbox

[U-Boot,v2] fs:When 'go' run the program by 'fatload', added the cache flush to prevent cache mismatch.

Message ID 20161008032021.8559-1-jr4qpv@gmail.com
State Deferred
Delegated to: Tom Rini
Headers show

Commit Message

yoko Oct. 8, 2016, 3:20 a.m. UTC
Signed-off-by: yoko <jr4qpv@gmail.com>
---

Changes for v2:
   - The commit message is changed.

 fs/fs.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Jim Chargin Oct. 10, 2016, 1:26 p.m. UTC | #1
Dear yoko,

On 10/07/2016 08:20 PM, yoko wrote:
> Signed-off-by: yoko <jr4qpv@gmail.com>
> ---
>
> Changes for v2:
>    - The commit message is changed.
>
>  fs/fs.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/fs.c b/fs/fs.c
> index 595ff1f..7607230 100644
> --- a/fs/fs.c
> +++ b/fs/fs.c
> @@ -417,6 +417,8 @@ int do_load(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[],
>  	}
>  	puts("\n");
>
> +	flush_cache(addr, len_read);
> +
>  	setenv_hex("fileaddr", addr);
>  	setenv_hex("filesize", len_read);
>
> @@ -535,4 +537,3 @@ int do_fs_type(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
>
>  	return CMD_RET_SUCCESS;
>  }
> -
>

The wiki includes information about cache considerations for the "go" 
command [1]. If possible, please check that information to be sure it 
remains consistent with this patch.

Thanks,
Jim

[1] http://www.denx.de/wiki/view/DULG/UBootStandalone#Section_5.12.3.
yoko Oct. 11, 2016, 3 a.m. UTC | #2
Dear Jim,

Thank you very much.

I read the Wiki page.
I was running to load the standalone application program.
CPU is so ARM, there is instruction and data caches.

As in the Wiki of example, a program that was loaded with 'loads' command
was able to run.
However, when I loaded in the same program the 'fatload' command, it could
not be executed.

When I look at the source program, in the 'loads' command has been executed
cache flush.
But, in the 'fatload' command, cache flash was not executed.

So, I created this patch.

Thanks.

---
yoko


2016-10-10 22:26 GMT+09:00 James Chargin <jimccrown@gmail.com>:

> Dear yoko,
>
> On 10/07/2016 08:20 PM, yoko wrote:
>
>> Signed-off-by: yoko <jr4qpv@gmail.com>
>> ---
>>
>> Changes for v2:
>>    - The commit message is changed.
>>
>>  fs/fs.c | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/fs/fs.c b/fs/fs.c
>> index 595ff1f..7607230 100644
>> --- a/fs/fs.c
>> +++ b/fs/fs.c
>> @@ -417,6 +417,8 @@ int do_load(cmd_tbl_t *cmdtp, int flag, int argc,
>> char * const argv[],
>>         }
>>         puts("\n");
>>
>> +       flush_cache(addr, len_read);
>> +
>>         setenv_hex("fileaddr", addr);
>>         setenv_hex("filesize", len_read);
>>
>> @@ -535,4 +537,3 @@ int do_fs_type(cmd_tbl_t *cmdtp, int flag, int argc,
>> char * const argv[])
>>
>>         return CMD_RET_SUCCESS;
>>  }
>> -
>>
>>
> The wiki includes information about cache considerations for the "go"
> command [1]. If possible, please check that information to be sure it
> remains consistent with this patch.
>
> Thanks,
> Jim
>
> [1] http://www.denx.de/wiki/view/DULG/UBootStandalone#Section_5.12.3.
> --
> Jim Chargin
> AJA Video Systems                       jimc@aja.com
> (530) 271-3334                          http://www.aja.com
>
diff mbox

Patch

diff --git a/fs/fs.c b/fs/fs.c
index 595ff1f..7607230 100644
--- a/fs/fs.c
+++ b/fs/fs.c
@@ -417,6 +417,8 @@  int do_load(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[],
 	}
 	puts("\n");
 
+	flush_cache(addr, len_read);
+
 	setenv_hex("fileaddr", addr);
 	setenv_hex("filesize", len_read);
 
@@ -535,4 +537,3 @@  int do_fs_type(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 
 	return CMD_RET_SUCCESS;
 }
-