All of lore.kernel.org
 help / color / mirror / Atom feed
From: Albert ARIBAUD <albert.u.boot@aribaud.net>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 2/6] common/cmd_boot: keep ARM v7M in thumb mode during do_go_exec()
Date: Thu, 16 Apr 2015 15:53:56 +0200	[thread overview]
Message-ID: <20150416155356.5de85377@lilith> (raw)
In-Reply-To: <1429034842-5260-3-git-send-email-mporter@konsulko.com>

Hello Matt,

On Tue, 14 Apr 2015 14:07:18 -0400, Matt Porter <mporter@konsulko.com>
wrote:
> On ARM v7M, the processor will return to ARM mode when executing
> a blx instruction with bit 0 of the address == 0. Always set it
> to 1 to stay in thumb mode.

This should be done for all targets which build with Thumb instruction
set, not only ARMv7M, should it not?

> Signed-off-by: Matt Porter <mporter@konsulko.com>
> ---
>  common/cmd_boot.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/common/cmd_boot.c b/common/cmd_boot.c
> index 8f2e070..20ce652 100644
> --- a/common/cmd_boot.c
> +++ b/common/cmd_boot.c
> @@ -38,6 +38,10 @@ static int do_go(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
>  	 * pass address parameter as argv[0] (aka command name),
>  	 * and all remaining args
>  	 */
> +#ifdef CONFIG_CPU_V7M
> +	/* For ARM V7M, set bit zero to stay in Thumb mode */
> +	addr++;
> +#endif
>  	rc = do_go_exec ((void *)addr, argc - 1, argv + 1);
>  	if (rc != 0) rcode = 1;
>  
> -- 
> 2.1.0
> 
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot



Amicalement,
-- 
Albert.

  parent reply	other threads:[~2015-04-16 13:53 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-14 18:07 [U-Boot] [PATCH 0/6] Add ARMv7M STM32F1 and STM3210E-EVAL board support Matt Porter
2015-04-14 18:07 ` [U-Boot] [PATCH 1/6] image: fix build when CONFIG_NR_DRAM_BANKS is disabled on ARM Matt Porter
2015-04-16 13:52   ` Albert ARIBAUD
2015-04-16 14:53     ` Tom Rini
2015-04-14 18:07 ` [U-Boot] [PATCH 2/6] common/cmd_boot: keep ARM v7M in thumb mode during do_go_exec() Matt Porter
2015-04-15 10:33   ` Kamil Lulko
2015-04-15 12:34     ` Tom Rini
2015-04-15 14:26       ` Matt Porter
2015-04-16 13:53   ` Albert ARIBAUD [this message]
2015-04-16 15:02     ` Tom Rini
2015-04-14 18:07 ` [U-Boot] [PATCH 3/6] ARMv7M: add STM32F1 support Matt Porter
2015-04-14 18:07 ` [U-Boot] [PATCH 4/6] gpio: stm32: add stm32f1 support Matt Porter
2015-04-14 18:07 ` [U-Boot] [PATCH 5/6] serial: " Matt Porter
2015-04-14 18:07 ` [U-Boot] [PATCH 6/6] board: add stm3210e-eval board support Matt Porter

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=20150416155356.5de85377@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.