u-boot-brain/arch/arm
Vadzim Dambrouski 432a6241bd arm: add support for semihosting for ARMv7M targets
If you enable CONFIG_SEMIHOSTING for STM32F429 target, you will get compile
error looking like this:

arch/arm/lib/semihosting.c: In function 'smh_read':
{standard input}: Assembler messages:
{standard input}:34: Error: invalid swi expression
{standard input}:34: Error: value of 1193046 too large for field of 2 bytes at 0
scripts/Makefile.build:277: recipe for target 'arch/arm/lib/semihosting.o' failed

The source of the problem is "svc #0x123456" instruction. This instruction
can not be encoded using Thumb2 instruction set used by ARMv7M CPUs.
ARM documentation suggests using "bkpt #0xAB" instruction instead [1].
This patch fixes compile errors and adds support for semihosting for
STM32F429 or any other ARMv7M target.
This change was sested on STM32F429-DISCOVERY board using OpenOCD and
"smhload" u-boot command.

[1] http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0471c/Bgbjhiea.html

Signed-off-by: Vadzim Dambrouski <pftbest@gmail.com>
2015-11-10 09:45:33 +01:00
..
cpu s5p: cpu_info: print "cpu-model" if exists in dts 2015-11-02 10:37:59 +09:00
dts Merge git://git.denx.de/u-boot-samsung 2015-11-05 07:46:45 -05:00
imx-common vf610: refactor DDRMC code 2015-10-02 10:42:31 +02:00
include ARM64: zynqmp: Sync zynq_sdhci_init() declaration 2015-11-07 08:17:54 -05:00
lib arm: add support for semihosting for ARMv7M targets 2015-11-10 09:45:33 +01:00
mach-at91 mmc: atmel: Add atmel sdhci support 2015-11-03 14:21:31 +01:00
mach-bcm283x ARM: rpi: add another revision of Raspberry Pi A+ 2015-10-19 08:12:25 +02:00
mach-davinci arm: Remove da830evm board 2015-09-28 10:48:23 -04:00
mach-exynos arm: exynos: clean up checkpatch issues 2015-11-02 10:38:22 +09:00
mach-highbank ARM: highbank: move SoC sources to mach-highbank 2015-02-21 08:23:51 -05:00
mach-integrator integrator: switch to DM serial port 2015-08-12 20:47:49 -04:00
mach-keystone ARM: k2g: add SD card and eMMC support 2015-10-22 14:22:25 -04:00
mach-kirkwood arm: Remove wireless_space board 2015-09-28 10:48:24 -04:00
mach-mvebu compat: Remove is_power_of_2() definition 2015-11-05 16:46:59 -05:00
mach-orion5x arch: Make board selection choices optional 2015-05-12 18:10:02 -04:00
mach-rockchip rockchip: Reconfigure the malloc based to point to system memory 2015-10-03 10:24:33 -06:00
mach-socfpga arm: socfpga: reset: correct dma, qspi, and sdmmc reset bit defines 2015-11-03 17:32:16 +01:00
mach-tegra ARM: tegra114: Clear IDDQ when enabling PLLC 2015-09-16 16:11:31 -07:00
mach-uniphier ARM: uniphier: fix init page table for ProXstream2/PH1-LD6b USB boot 2015-09-25 00:59:33 +09:00
mach-versatile arm: Remove versatileab board 2015-09-11 15:01:25 -04:00
mach-zynq ARM: zynq: Remove zc70x target 2015-11-04 14:49:53 +01:00
mvebu-common arm: mvebu: Move mvebu-common into mach-mvebu 2015-05-05 14:28:29 +02:00
config.mk arm: Include the .got section in the binary 2015-05-14 18:49:34 -06:00
Kconfig arm: zynq: Move serial driver to driver model 2015-11-04 14:49:53 +01:00
Kconfig.debug arm: debug: add Kconfig entries for lowlevel debug 2014-10-26 22:23:12 +01:00
Makefile arm: Remove unused reference to nomadik 2015-09-15 15:05:22 -04:00