OpenCloudOS-Kernel/arch/arm
Uwe Kleine-König 3f18b1bf59 ARM: make isa_mode macro more robust and fix for v7-M
The definition of isa_mode hardcodes the values to shift PSR_J_BIT and
PSR_T_BIT to move them to bits 1 and 0 respectively. Instead use __ffs to
calculate the shift from the #define already used for masking.

This is relevant on v7-M as there PSR_T_BIT is 0x01000000 instead of
0x00000020 for V7-[AR] and earlier. Because of that isa_mode produced
values >= 0x80000 which are unsuitable to index into isa_modes[4] there
and so made __show_regs read from undefined memory which resulted in
hangs and crashes.

Moreover isa_mode is wrong for v7-M even after this robustness fix as
there is no J-bit in the PSR register. So hardcode isa_mode to "Thumb"
for v7-M.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2014-02-03 11:46:39 +01:00
..
boot ARM: dts: bcm28155-ap: Fix Card Detection GPIO 2014-01-31 15:11:22 -08:00
common ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
configs ARM: multi_v7_defconfig: remove redundant entries and re-enable TI_EDMA 2014-01-31 21:04:33 -08:00
crypto CRYPTO: Fix more AES build errors 2014-01-05 13:59:56 +00:00
firmware ARM: add basic support for Trusted Foundations 2013-12-13 12:50:30 -07:00
include ARM: make isa_mode macro more robust and fix for v7-M 2014-02-03 11:46:39 +01:00
kernel Merge branches 'fixes' and 'misc' into for-linus 2014-01-28 21:38:48 +00:00
kvm First round of KVM updates for 3.14; PPC parts will come next week. 2014-01-22 21:40:43 -08:00
lib ARM: 7877/1: use built-in byte swap function 2013-12-29 12:32:45 +00:00
mach-at91 ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
mach-bcm ARM: pinctrl: Add Broadcom Capri pinctrl driver 2014-01-16 14:25:38 +01:00
mach-bcm2835 ARM: bcm2835: Fix grammar in help message 2014-01-02 12:07:52 -08:00
mach-berlin ARM: add initial support for Marvell Berlin SoCs 2013-12-13 16:31:07 +01:00
mach-clps711x ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
mach-cns3xxx
mach-davinci ARM: driver updates for 3.14 2014-01-23 18:49:36 -08:00
mach-dove ARM: Dove: Fix compiler warnings with C=1 builds 2013-11-24 02:36:55 +00:00
mach-ebsa110
mach-efm32 ARM: new platform for Energy Micro's EFM32 Cortex-M3 SoCs 2013-12-16 17:51:33 +01:00
mach-ep93xx ARM: ep93xx: use soc bus 2013-11-25 14:24:28 -08:00
mach-exynos ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
mach-footbridge Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2014-01-24 17:17:30 -08:00
mach-gemini GPIO bulk changes for the v3.13 development cycle 2013-11-12 15:50:46 +09:00
mach-highbank Merge branches 'amba', 'fixes', 'kees', 'misc' and 'unstable/sa11x0' into for-next 2014-01-21 21:26:33 +00:00
mach-hisi ARM: hisi: don't select SMP 2014-01-31 14:58:55 -08:00
mach-imx Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm 2014-01-29 18:20:41 -08:00
mach-integrator ARM: integrator: restore static map on the CP 2014-01-31 14:58:52 -08:00
mach-iop13xx dmaengine: remove DMA unmap from drivers 2013-11-14 11:04:38 -08:00
mach-iop32x ARM: iop32x: fix power off handling for the EM7210 board 2014-01-31 14:58:53 -08:00
mach-iop33x
mach-ixp4xx ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
mach-keystone ARM: keystone: config: fix build warning when CONFIG_DMADEVICES is not set 2014-01-31 15:03:53 -08:00
mach-kirkwood mvebu fixes for v3.13 (incremental #2) 2014-01-31 14:59:28 -08:00
mach-ks8695 ARM: ks8695: delete local <mach/gpio.h> header 2013-12-03 11:26:05 +01:00
mach-lpc32xx ARM: lpc32xx: move custom GPIO header 2013-12-03 11:26:06 +01:00
mach-mmp ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
mach-moxart ARM: moxart: add MOXA ART SoC platform files 2013-12-22 11:57:38 -08:00
mach-msm ARM: driver updates for 3.14 2014-01-23 18:49:36 -08:00
mach-mv78xx0 ARM: mv78xx0: delete local <mach/gpio.h> header 2013-12-03 11:26:06 +01:00
mach-mvebu mvebu fixes for v3.13 (incremental #2) 2014-01-31 14:59:28 -08:00
mach-mxs ARM: SoC DT updates for 3.13 2013-11-11 17:34:56 +09:00
mach-netx
mach-nomadik ARM: nomadik: get rid of explicit ethernet GPIO management 2013-11-28 21:08:42 +01:00
mach-nspire
mach-omap1 ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
mach-omap2 ARM: SoC fixes for 3.14-rc1 2014-02-02 11:11:06 -08:00
mach-orion5x ARM: orion5x: drop unused include from common.c 2013-11-24 03:02:20 +00:00
mach-picoxcell
mach-prima2 ARM: clean up cache handling in platform code 2013-12-11 16:24:34 -08:00
mach-pxa ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
mach-realview
mach-rockchip ARM: SoC board updates for 3.13 2013-11-11 16:57:16 +09:00
mach-rpc
mach-s3c24xx ARM: SoC cleanups for 3.14 2014-01-23 18:36:55 -08:00
mach-s3c64xx ARM: SoC cleanups for 3.14 2014-01-23 18:36:55 -08:00
mach-s5p64x0
mach-s5pc100
mach-s5pv210 pwm: Changes for v3.13-rc1 2013-11-16 12:21:40 -08:00
mach-sa1100 ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
mach-shmobile ARM: SoC board updates for 3.14 2014-01-23 18:48:28 -08:00
mach-socfpga arm: socfpga: Enable ARM_TWD for socfpga 2013-12-03 14:19:48 -08:00
mach-spear
mach-sti ARM: clean up cache handling in platform code 2013-12-11 16:24:34 -08:00
mach-sunxi ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
mach-tegra ARM: driver updates for 3.14 2014-01-23 18:49:36 -08:00
mach-u300 ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
mach-ux500 ARM: SoC DT updates for 3.14 2014-01-23 18:45:38 -08:00
mach-versatile ARM: versatile: move GPIO2 and GPIO3 to core 2013-12-20 18:22:47 +01:00
mach-vexpress ARM: vexpress/TC2: Implement MCPM power_down_finish() 2013-11-25 14:12:14 -08:00
mach-virt
mach-vt8500
mach-w90x900
mach-zynq ARM: zynq: remove unnecessary setting of cpu_present_mask 2013-12-10 14:20:25 +01:00
mm Merge branches 'fixes' and 'misc' into for-linus 2014-01-28 21:38:48 +00:00
net bpf: do not use reciprocal divide 2014-01-15 17:02:08 -08:00
nwfpe
oprofile
plat-iop Merge branch 'soc/sched_clock' into next/soc 2013-12-06 08:05:55 -08:00
plat-omap Merge branch 'efm32/soc' into next/soc 2013-12-20 08:59:30 -08:00
plat-orion mvebu fixes for v3.13 (incremental #2) 2014-01-31 14:59:28 -08:00
plat-pxa ARM: pxa: remove IRQF_DISABLED 2013-12-11 17:32:41 -08:00
plat-samsung MTD updates for 3.14: 2014-01-28 18:56:37 -08:00
plat-versatile ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
tools
vfp
xen xen/gnttab: Use phys_addr_t to describe the grant frame base address 2014-01-30 12:56:34 +00:00
Kconfig Bug-fixes: 2014-01-31 08:38:18 -08:00
Kconfig-nommu
Kconfig.debug ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
Makefile Merge branches 'fixes' and 'misc' into for-linus 2014-01-28 21:38:48 +00:00