summaryrefslogtreecommitdiff
path: root/arch/arm/mach-shmobile
AgeCommit message (Collapse)Author
2013-08-06ARM: shmobile: armadillo800eva: Use DT for GICKuninori Morimoto
Current Armadillo800eva is using DT booting, and r8a7740.dtsi already has GIC settings. So, we can remove the C version of the GIC setup code, instead rely on GIC information provided by DT. This patch removes r8a7740_init_irq() which has no user any more Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06ARM: shmobile: lager: add missing __initdataKuninori Morimoto
This patch adds missing __initdata to driver data/resource which are used from platform_device_register_xxx() Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-04Merge tag 'renesas-fixes2-for-v3.11' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into fixes From Simon Horman: Second round of Renesas ARM based SoC fixes for v3.11 * Lager board: do not annotate gpio_buttons as __initdata - This avoids accessing uninitialised memory if keys are pressed after kernel initialisation completes. - Bug introduced in gpio-keys were enabled in v3.11-rc1 * Bock-W board: fix SDHI0 PFC settings - Allow detection of SD card - Bug introduced in SDHI support was added in v3.11-rc1 * shdma: fixup sh_dmae_get_partial() calculation error - Bug introduced in 2.6.34-rc1. * armadillo800eva board: Don't request GPIO 166 in board code - Allow use of touchscreen - Bug introduced in v3.11-rc1 * tag 'renesas-fixes2-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: ARM: shmobile: lager: do not annotate gpio_buttons as __initdata ARM: shmobile: BOCK-W: fix SDHI0 PFC settings shdma: fixup sh_dmae_get_partial() calculation error ARM: shmobile: armadillo800eva: Don't request GPIO 166 in board code Signed-off-by: Olof Johansson <olof@lixom.net>
2013-08-04Merge tag 'fixes-non-3.12' of git://git.infradead.org/linux-mvebu into ↵Olof Johansson
next/fixes-non-critical From Jason Cooper: mvebu fixes-non-critical for v3.12 - dove - fix section mismatch (all callers are already _init, so it's just a space issue) * tag 'fixes-non-3.12' of git://git.infradead.org/linux-mvebu: ARM: dove: fix missing __init section of dove_mpp_gpio_mode + Linux 3.11-rc2 Signed-off-by: Olof Johansson <olof@lixom.net>
2013-08-04Merge tag 'renesas-cleanup-for-v3.12' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/cleanup From Simon Horman: renesas-cleanup-for-v3.12 Renesas ARM based SoC cleanups for v3.12 * remove mach/dma.h, it is not used * r8a7778 SoC: Removed unused r8a7778_init_irq * emev2 SoC: Use less verbose resource declarations * emev2 SoC: Correct typo in comment * r8a7790 SoC: Remove redundant init_machine callback * emev2, r8a7740, r8a7778, r8a7779, sh7372 and sh73a0 SoCs: Remove auxdata * emev2, r8a73a4, ape6evm, r8a7790 and sh73a0 SoCs, and lager and kzm9g boards: remove init_irq declaration in machine description * sh73a0 SoC: pinmux platform device cleanup * r8a7778 SoC: add __initdata on resource and device data * armadillo800eva board: Remove unused commend and define * tag 'renesas-cleanup-for-v3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (22 commits) ARM: shmobile: Remove unused mach/dma.h ARM: shmobile: r8a7778: remove r8a7778_init_irq() ARM: shmobile: Fix EMEV2 clock comment typo ARM: shmobile: Make EMEV2 platform devices more compact ARM: shmobile: Remove unused EMEV2/KZM9D early console ARM: shmobile: Remove redundant r8a7790 callback ARM: shmobile: Remove unused sh73a0 auxdata table ARM: shmobile: Remove unused sh7372 auxdata table ARM: shmobile: Remove unused r8a7779 auxdata table ARM: shmobile: Remove unused r8a7778 auxdata and callback ARM: shmobile: Remove unused r8a7740 auxdata table ARM: shmobile: Remove unused EMEV2 auxdata and callback ARM: shmobile: kzm9g: Remove init_irq declaration in machine description ARM: shmobile: sh73a0: Remove init_irq declaration in machine description ARM: shmobile: lager: Remove init_irq declaration in machine description ARM: shmobile: r8a7790: Remove init_irq declaration in machine description ARM: shmobile: ape6evm: Remove init_irq declaration in machine description ARM: shmobile: r8a73a4: Remove init_irq declaration in machine description ARM: shmobile: emev2: Remove init_irq declaration in machine description ARM: shmobile: sh73a0 pinmux platform device cleanup ... Signed-off-by: Olof Johansson <olof@lixom.net>
2013-08-01ARM: shmobile: ape6evm: add "__initconst" annotations where neededGuennadi Liakhovetski
This patch adds __initconst markers to the platform data and resources, used on ape6evm as parameters to platform_device_register_resndata(). The data is duplicated inside that function, therefore original data can be discarded after initialisation is completed. Reported-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-31ARM: shmobile: lager: do not annotate gpio_buttons as __initdataSimon Horman
When the gpio-keys device is registered using platform_device_register_data() the platform data argument, lager_keys_pdata is duplicated and thus should be marked as __initdata to avoid wasting memory. However, this is not true of gpio_buttons, a reference to it rather than its value is duplicated when lager_keys_pdata is duplicated. This avoids accessing freed memory if gpio-key events occur after unused kernel memory is freed late in the kernel's boot. This but was added when support for gpio-keys was added to lager in c3842e4fcbb7664276443b79187b7808c2e80a35 ("ARM: shmobile: lager: support GPIO switches") which was included in v3.11-rc1. Tested-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-31ARM: shmobile: BOCK-W: fix SDHI0 PFC settingsSergei Shtylyov
The following message is printed on the BOCK-W kernel bootup: sh-pfc pfc-r8a7778: invalid group "sdhi0" for function "sdhi0" In addition, SD card cannot be detected. The reason is apparently that commit ca7bb309485e4ec89a9addd47bea (ARM: shmobile: bockw: add SDHI0 support) matched the previous version of commit 564617d2f92473031d035deb273da5 (sh-pfc: r8a7778: add SDHI support). Add the missing pin groups according to the BOCK-W board schematics. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30ARM: shmobile: r8a7779: Rely on DT for SMP CPU infoSimon Horman
Remove r8a7779 specific ->smp_init_cpus() callback and instead of relying on shmobile_smp_init_cpus() simply use DT for CPU core information. Based on work for the sh73a0 by Magnus Damm. Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30ARM: shmobile: marzen: Switch to DT_MACHINE_STARTMagnus Damm
Convert the marzen board to use DT_MACHINE_START. With this in place all mach-shmobile boards use DT_MACHINE_START. Also, this makes it possible for the r8a7779 SMP code to use DT for CPUs. Signed-off-by: Magnus Damm <damm@opensource.se> [horms+renesas@verge.net.au: Select USE_OF in Kconfig] [horms+renesas@verge.net.au: Provide dt_compat in DT_MACHINE_START] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30ARM: shmobile: r8a7779: cleanup registration of usb phyKuninori Morimoto
usb phy driver which needs platform data at the time of registration is used from Marzen only. Now, ARM/shmobile aims to support DT, and the C code base board support will be removed if DT support is completed. Current driver registration method which needs platform data and which is not shared complicates codes. This means legacy C code cleanup after DT supporting will be more complicated This patch registers it on board code as cleanup C code Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30ARM: shmobile: ape6evm-reference: switch PFC to DTGuennadi Liakhovetski
PFC pinctrl configuration can now be performed via DT. Update ape6evm-reference to use this. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-26ARM: shmobile: sh73a0: Rely on DT for SMP CPU infoMagnus Damm
Remove sh73a0 specific ->smp_init_cpus() callback and instead of relying on shmobile_smp_init_cpus() simply use DT for CPU core information. This assumes that DT_MACHINE_START is used which is the case when AG5EVM and Kota2 are removed. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-26ARM: shmobile: bockw: add DT referenceKuninori Morimoto
This patch adds a sample DT-based Bock-W "reference" implementation. The use of platform-specific C-code should be avoided with this configuration as much as possible. This patch adds new r8a7778_add_dt_devices() which was same stance of r8a7790_add_dt_devices() Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-25ARM: shmobile: No need to use INTC header on r8a7779Magnus Damm
Now when the intc-irqpin driver is used for external IRQ pins on r8a7779 it possible to get rid of unused INTC headers mach/intc.h and linux/sh_intc.h. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-25ARM: shmobile: ape6evm: add SDHI interfacesGuennadi Liakhovetski
Add support for SDHI0 and SDHI1 on APE6EVM in PIO mode only. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-25ARM: shmobile: ape6evm: add MMCIF supportGuennadi Liakhovetski
Add MMCIF support to the APE6EVM board in PIO mode only. Power supply is fixed for now, eventually support for the tps80032 regulator, also supplying both VDD and VccQ to the MMCIF slot should be added to APE6EVM. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-25ARM: shmobile: No need to use INTC demux on r8a7740Magnus Damm
Now when the r8a7740 code has been converted to make use of GIC instead of INTC for root interrupt controller it is possible to exclude the low level INTC demux function shmobile_handle_irq_intc from linking. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-25ARM: shmobile: Use pm-rmobile on sh7372 and r8a7740 onlyMagnus Damm
The functions in pm-rmobile.c are only used on sh7372 and r8a7740, so adjust the Makefile to only link in that file in case those SoCs are selected. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-25ARM: shmobile: armadillo800eva: Don't request GPIO 166 in board codeKuninori Morimoto
89ae7b5bbd3e65bc6ab7a577ca5ec18569589c8c (ARM: shmobile: armadillo800eva: Register pinctrl mapping for INTC) mistakenly requests GPIO 166 in board code, most probably due to a wrong merge conflict resolution. As the GPIO is passed to the st1232 driver through platform data and requested by the driver, there's no need to request it in board code. Fix it. Tested by: Cao Minh Hiep <cm-hiep@jinso.co.jp> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24ARM: shmobile: r8a73a4: Remove ->init_machine() special caseMagnus Damm
No need to special case r8a73a4 ->init_machine(), so get rid of undesired cpufreq platform device from the generic long term r8a73a4 DT support code. For short term support on APE6EVM the DT reference implementation already adds a "cpufreq-cpu0" platform device so that can be used for development. Regarding more long term cpufreq support, perhaps it makes sense to adjust the cpufreq driver to check for DT information directly instead of using a platform device for software configuration and DT for hardware parameters. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24ARM: shmobile: Remove include <mach/hardware.h>Magnus Damm
Now when no one is using this file, remove <mach/hardware.h>. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24ARM: shmobile: Remove Marzen use of <mach/hardware.h>Magnus Damm
Remove unused <mach/hardware.h> on Marzen. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24ARM: shmobile: Remove r8a7779 use of <mach/hardware.h>Magnus Damm
Remove unused <mach/hardware.h> on r8a7779. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24ARM: shmobile: Remove EMEV2 use of <mach/hardware.h>Magnus Damm
Remove unused <mach/hardware.h> on EMEV2. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24ARM: shmobile: Remove sh7372 use of <mach/hardware.h>Magnus Damm
Remove unused <mach/hardware.h> on sh7372. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24ARM: shmobile: Remove sh73a0 use of <mach/hardware.h>Magnus Damm
Remove unused <mach/hardware.h> on sh73a0. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24ARCH: ARM: shmobile: Remove ag5evm board supportSimon Horman
Remove support for the sh73a0 based ag5evm board. The sh73a0 SoC is continued to be supported using the kzm9g board. Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24ARCH: ARM: shmobile: Remove kota2 board supportSimon Horman
Remove support for the sh73a0 based kota2 board. The sh73a0 SoC is continued to be supported using the kzm9g board. Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24Merge branches 'tpu-pwm', 'backlight' and 'soc' into cleanup2-baseSimon Horman
2013-07-23ARM: shmobile: armadillo800eva-reference: fix compiler warningGuennadi Liakhovetski
Fix the compiler warning: arch/arm/mach-shmobile/board-armadillo800eva-reference.c:196:2: warning: initialization from incompatible pointer type [enabled by default] arch/arm/mach-shmobile/board-armadillo800eva-reference.c:196:2: warning: (near initialization for '__mach_desc_ARMADILLO800EVA_DT.restart') [enabled by default] While at it also remove superfluous parenthesis. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-23ARM: shmobile: Allow ARCH_SHMOBILE_MULTI timer configurationMagnus Damm
Move the timer configuration bits to allow use in case of ARCH_SHMOBILE or ARCH_SHMOBILE_MULTI. The timers all make use of the regular driver model so they are safe to enable for ARCH_MULTIPLATFORM. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-23ARM: shmobile: Add EMEV2 and KZM9D to ARCH_SHMOBILE_MULTIMagnus Damm
Enable build of EMEV2 and KZM9D DT Reference in case of ARCH_MULTIPLATFORM and ARCH_SHMOBILE_MULTI. IS_ENABLED() is leaves the clock-emev2.c file out in case of COMMON_CLK=y. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-23ARM: shmobile: Introduce ARCH_SHMOBILE_MULTIMagnus Damm
Add ARCH_SHMOBILE_MULTI to mach-shmobile that can be used to enable ARCH_MULTIPLATFORM on selected SoCs and boards. The headers stay under arch/arm/mach-shmobile/include/mach/ for now, they can and will be migrated independently over time. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-23ARM: shmobile: Only build clocks when COMMON_CLK=nMagnus Damm
Move shared clock.c file and per-SoC clock-xxx.c files to only build when CONFIG_COMMON_CLK != y. The regular ARCH_SHMOBILE case with legacy SH clock framework will build just as before with this patch applied, however the case when COMMON_CLK=y will exclude all the clock files. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-22ARM: shmobile: kzm9g-reference: Move SDHI regulators to DTLaurent Pinchart
Create two GPIO-controlled fixed-voltage regulators in the kzm9g-reference DT and remove manual configuration of the corresponding GPIOs from board code. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-22ARM: shmobile: kzm9g-reference: Move pinctrl mappings to device treeLaurent Pinchart
Replace the pinctrl mappings in board code by device tree mappings. For devices that are still instantiated from board code reference the mappings as the default pin controller state to apply them at boot time. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-22ARM: shmobile: marzen-reference: Move pinctrl mappings to device treeLaurent Pinchart
Replace the pinctrl mappings in board code by device tree mappings. For devices that are still instantiated from board code reference the mappings as the default pin controller state to apply them at boot time. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-22ARM: shmobile: armadillo-reference: Move st1232 reset GPIO to DTLaurent Pinchart
Reference the st1232 reset GPIO from the device tree and remove it from board code. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-22ARM: shmobile: armadillo-reference: Move pinctrl mappings to device treeLaurent Pinchart
Replace the pinctrl mappings in board code by device tree mappings. For devices that are still instantiated from board code reference the mappings as the default pin controller state to apply them at boot time. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-22ARM: shmobile: sh73a0: Add pin control device to device treeLaurent Pinchart
Add a pfc node to the sh73a0 device tree and remove manual pinmux initialization from the corresponding board files. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-22ARM: shmobile: r8a7779: Add pin control device to device treeLaurent Pinchart
Add a pfc node to the r8a7779 device tree and remove manual pinmux initialization from the corresponding board files. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-22ARM: shmobile: r8a7740: Add pin control device to device treeLaurent Pinchart
Add a pfc node to the r8a7740 device tree and remove manual pinmux initialization from the corresponding board files. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-19ARM: shmobile: sh73a0: Remove all GPIOsLaurent Pinchart
Function GPIOs are not used anymore, and all code use the GPIO numbers directly. Remove the GPIOs enumeration. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-19ARM: shmobile: kota2: Use leds-pwm + pwm-rmobLaurent Pinchart
Instead of using the LED-specific TPU PWM driver, switch to the generic TPU PWM driver with leds-pwm. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-19ARM: shmobile: armadillo800eva: Add backlight supportLaurent Pinchart
The flat panel backlight on the Armadillo 800 EVA board is driven by the TPU PWM output. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Tested-by: Simon Horman <horms@verge.net.au> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-19ARM: shmobile: r8a7740: Fix TPU clock nameLaurent Pinchart
The TPU device is called renesas-tpu-pwm, not renesas_tpu_pwm. Fix the clock name accordingly. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-18ARM: shmobile: Insert align directives before 4 bytes dataTetsuyuki Kobayashi
In thumb2 mode instructions are not align to 4 byte. This patch insert align directives before putting 4 byte data. Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-18ARM: shmobile: Force ARM mode to compile reset vector for secondary CPUsTetsuyuki Kobayashi
Instructions start from boot vector must be ARM mode. This patch specify ARM mode explicitly and use 'bx' instruction to be able to change to Thumb mode. Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-18ARM: shmobile: fix compile error when CONFIG_THUMB2_KERNEL=yTetsuyuki Kobayashi
On KZM-A9-GT board (SMP), when CONFIG_THUMB2_KERNEL=y it fails to compile AS arch/arm/mach-shmobile/headsmp-scu.o /proj/koba/kernel/arm-soc/arch/arm/mach-shmobile/headsmp-scu.S: Assembler messages: /proj/koba/kernel/arm-soc/arch/arm/mach-shmobile/headsmp-scu.S:41: Error: shift must be constant -- `bic r2,r2,r3,lsl r1' make[2]: *** [arch/arm/mach-shmobile/headsmp-scu.o] Error 1 make[1]: *** [arch/arm/mach-shmobile] Error 2 make: *** [sub-make] Error 2 Instruction `bic r2,r2,r3,lsl r1' is not supported in thumb mode. This patch split it into 2 instructions. Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>