From: Albert ARIBAUD <albert.u.boot@aribaud.net>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC] command/cache: Add flush_cache command
Date: Tue, 19 Mar 2013 23:01:41 +0100 [thread overview]
Message-ID: <20130319230141.72357073@lilith> (raw)
In-Reply-To: <1363724992-9803-1-git-send-email-yorksun@freescale.com>
Hi York,
On Tue, 19 Mar 2013 13:29:52 -0700, York Sun <yorksun@freescale.com>
wrote:
> When we need the copied code/data in the main memory, we can flush the
> cache now. It uses the existing function flush_cache. Syntax is
>
> flush_cache <addr> <size>
>
> The addr and size are given in hexadecimal. Like memory command, there is
> no sanity check for the parameters.
>
> Signed-off-by: York Sun <yorksun@freescale.com>
> ---
> common/cmd_cache.c | 30 ++++++++++++++++++++++++++++++
> 1 file changed, 30 insertions(+)
>
> diff --git a/common/cmd_cache.c b/common/cmd_cache.c
> index 5512f92..93b7337 100644
> --- a/common/cmd_cache.c
> +++ b/common/cmd_cache.c
> @@ -94,6 +94,29 @@ int do_dcache(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
> return 0;
> }
>
> +void __weak flush_cache(ulong addr, ulong size)
> +{
> + puts("No arch specific flush_cache available!\n");
> + /* please define arch specific flush_cache */
> +}
> +
> +int do_flush_cache(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
> +{
> + ulong addr, size;
> +
> + switch (argc) {
> + case 3:
> + addr = simple_strtoul(argv[1], NULL, 16);
> + size = simple_strtoul(argv[2], NULL, 16);
> + flush_cache(addr, size);
> + break;
> + default:
> + return cmd_usage(cmdtp);
> + }
> + return 0;
> +
> +}
> +
> static int parse_argv(const char *s)
> {
> if (strcmp(s, "flush") == 0)
> @@ -120,3 +143,10 @@ U_BOOT_CMD(
> "[on, off, flush]\n"
> " - enable, disable, or flush data (writethrough) cache"
> );
> +
> +U_BOOT_CMD(
> + flush_cache, 3, 0, do_flush_cache,
> + "flush cache for a range",
> + "<addr> <size>\n"
> + " - flush cache for specificed range"
> +);
What's the point of this command exactly? I can see the point of range
flushes (and invalidates) in the code for drivers that use DMA, but as a
shell command, I fail to see the interest of it.
Amicalement,
--
Albert.
next prev parent reply other threads:[~2013-03-19 22:01 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-19 20:29 [U-Boot] [RFC] command/cache: Add flush_cache command York Sun
2013-03-19 22:01 ` Albert ARIBAUD [this message]
2013-03-19 22:07 ` York Sun
2013-03-19 23:32 ` Scott Wood
2013-03-20 13:59 ` Albert ARIBAUD
2013-03-20 14:58 ` Wolfgang Denk
2013-03-20 16:43 ` Scott Wood
2013-03-20 17:38 ` Albert ARIBAUD
2013-03-20 18:16 ` Scott Wood
2013-03-20 19:15 ` Tom Rini
2013-03-20 19:36 ` Scott Wood
2013-03-20 19:59 ` Tom Rini
2013-03-20 21:31 ` Scott Wood
2013-03-21 5:42 ` Wolfgang Denk
2013-03-21 5:39 ` Wolfgang Denk
2013-03-21 12:29 ` Tom Rini
2013-03-21 13:37 ` Wolfgang Denk
2013-03-21 18:22 ` Scott Wood
2013-03-21 19:25 ` Wolfgang Denk
2013-03-21 20:34 ` Scott Wood
2013-03-22 6:30 ` Albert ARIBAUD
2013-03-22 12:17 ` Tom Rini
2013-03-22 14:03 ` Wolfgang Denk
2013-03-22 14:29 ` Tom Rini
2013-03-22 15:57 ` Albert ARIBAUD
2013-03-22 16:48 ` Scott Wood
2013-03-22 17:19 ` Tom Rini
2013-03-22 20:39 ` Wolfgang Denk
2013-03-20 22:11 ` Albert ARIBAUD
2013-03-20 22:35 ` Scott Wood
2013-03-20 23:33 ` Michael Cashwell
2013-03-20 23:48 ` Scott Wood
2013-03-21 0:27 ` Michael Cashwell
2013-03-21 0:31 ` Scott Wood
2013-03-21 5:02 ` Sricharan R
2013-03-21 18:51 ` Scott Wood
2013-03-21 17:58 ` Albert ARIBAUD
2013-03-21 18:07 ` Scott Wood
2013-03-21 19:21 ` Wolfgang Denk
2013-03-20 19:40 ` York Sun
2013-03-20 14:51 ` Wolfgang Denk
2013-03-20 16:44 ` Scott Wood
2013-04-03 14:02 ` Jim Chargin
2013-04-18 17:09 ` Scott Wood
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130319230141.72357073@lilith \
--to=albert.u.boot@aribaud.net \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox