aboutsummaryrefslogtreecommitdiffstats
path: root/arch
Commit message (Collapse)AuthorAgeFilesLines
* Merge tag 'fixes-nc-for-linus' of ↵Linus Torvalds2013-09-0626-187/+83
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc Pull ARM SoC low-priority fixes from Olof Johansson: "This branch contains a handful of fixes for various platforms that weren't serious enough to be included in late 3.11-rc releases. Most of them are for minor cleanups and cosmetic fixes. There's also a bit of code removal here, one board file removal for clps711x, and removal of some legacy device creation on OMAP2+" * tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (25 commits) ARM: OMAP2: use 'int' instead of 'unsigned' for variable 'gpmc_irq_start' ARM: OMAP2: remove useless variable 'ret' ARM: OMAP: dma: fix error return code in omap_system_dma_probe() ARM: OMAP2+: fix wrong address when loading PRM_FRAC_INCREMENTOR_DENUMERATOR_RELOAD ARM: OMAP2+: am33xx-restart: trigger warm reset on omap2+ boards ARM: OMAP2: Use a consistent AM33XX SoC option description ARM: OMAP2+: Remove legacy device creation for McPDM and DMIC ARM: clps711x: edb7211: Remove extra iotable_init() call ARM: clps711x: autcpu12: Remove incorrect config checking ARM: clps711x: Drop fortunet board support ARM: clps711x: Remove the special name for the syscon driver ARM: dts: Fix memory node in skeleton64.dtsi ARM: Keystone: Convert device tree file to use IRQ defines ARM: keystone: use #include to include skeleton.dtsi ARM: keystone: Drop the un-necessary dsb from keystone_cpu_smc() ARM: Keystone: No need to preserve r12 across smc call ARM: keystone: remove redundant smp_init_cpus definition ARM: keystone: drop useless HAVE_SCHED_CLOCK ARM: dove: fix missing __init section of dove_mpp_gpio_mode ARM: shmobile: armadillo800eva-reference: fix compiler warning ...
| * Merge tag 'omap-for-v3.12/fixes-non-critical-signed' of ↵Olof Johansson2013-08-29249-2063/+2555
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/fixes-non-critical From Tony Lindgren: Omap fixes for the merge window that are not urgent enough for the -rc series. * tag 'omap-for-v3.12/fixes-non-critical-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP2: use 'int' instead of 'unsigned' for variable 'gpmc_irq_start' ARM: OMAP2: remove useless variable 'ret' ARM: OMAP: dma: fix error return code in omap_system_dma_probe() ARM: OMAP2+: fix wrong address when loading PRM_FRAC_INCREMENTOR_DENUMERATOR_RELOAD ARM: OMAP2+: am33xx-restart: trigger warm reset on omap2+ boards ARM: OMAP2: Use a consistent AM33XX SoC option description ARM: OMAP2+: Remove legacy device creation for McPDM and DMIC + Linux 3.11-rc6
| | * ARM: OMAP2: use 'int' instead of 'unsigned' for variable 'gpmc_irq_start'Chen Gang2013-08-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'gpmc_irq_start' is mostly used as 'int', and for a variable, do not suggest to only use 'unsigned' as its type, so use 'int' instead of 'unsigned' for variable 'gpmc_irq_start'. Also it will fix the related issue (dummy the real world failure): arch/arm/mach-omap2/gpmc.c:728:2: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits] Signed-off-by: Chen Gang <gang.chen@asianux.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
| | * ARM: OMAP2: remove useless variable 'ret'Chen Gang2013-08-221-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Remove useless variable 'ret', the related warning: arch/arm/mach-omap2/board-am3517crane.c:113:6: warning: unused variable ‘ret’ -Wunused-variable] Signed-off-by: Chen Gang <gang.chen@asianux.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
| | * ARM: OMAP: dma: fix error return code in omap_system_dma_probe()Wei Yongjun2013-08-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fix to return a negative error code from the error handling case instead of 0, as done elsewhere in this function. Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Signed-off-by: Tony Lindgren <tony@atomide.com>
| | * ARM: OMAP2+: fix wrong address when loading ↵Chen Baozi2013-08-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PRM_FRAC_INCREMENTOR_DENUMERATOR_RELOAD The denominator should be load from INCREMENTOR_DENUMERATOR_RELOAD_OFFSET rather than INCREMENTER_NUMERATOR_OFFSET. This is more likely a typo, since INCREMENTER_DENUMERATOR_RELOAD[23:17] is reserved. It seems that it won't make much trouble without this fix, because the useful [11:0] bits are mask and set the right value. Anyway, reading from a right address is better choice. Signed-off-by: Chen Baozi <baozich@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
| | * ARM: OMAP2+: am33xx-restart: trigger warm reset on omap2+ boardsMatus Ujhelyi2013-08-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Currently the cold reset was triggered. It happened due to oposite offsets of cold/warm flags in PRM_RSTST and PRM_RSTCTRL registers. Signed-off-by: Matus Ujhelyi <ujhelyi.m@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
| | * ARM: OMAP2: Use a consistent AM33XX SoC option descriptionEzequiel Garcia2013-08-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the option description to match the other TI SoCs. This is just a cosmetic change. Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com> Reviewed-by: Javier Martinez Canillas <javier@dowhile0.org> Signed-off-by: Tony Lindgren <tony@atomide.com>
| | * ARM: OMAP2+: Remove legacy device creation for McPDM and DMICPeter Ujfalusi2013-08-211-40/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | McPDM and DMIC only available on OMAP4/5 which no longer boots in legacy mode. The code to create the devices in legacy mode can be removed. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
| * | Merge tag 'fixes-non-3.12-2' of git://git.infradead.org/linux-mvebu into ↵Olof Johansson2013-08-191-1/+1
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | next/fixes-non-critical From Jason Cooper, mvebu fixes-non-critical for v3.12 (round 2): - fix the memory node (2 by 2) in skeleton64.dtsi * tag 'fixes-non-3.12-2' of git://git.infradead.org/linux-mvebu: ARM: dts: Fix memory node in skeleton64.dtsi
| | * | ARM: dts: Fix memory node in skeleton64.dtsiStepan Moskovchenko2013-08-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the reg property of the memory node in skeleton64.dtsi to reflect the fact that the root node uses address-cells=2 and size-cells=2. Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org> Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
| * | | Merge tag 'renesas-fixes2-for-v3.12' of ↵Olof Johansson2013-08-141-2/+2
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/fixes-non-critical From Simon Horman: Second Round of Renesas ARM based SoC fixes for v3.12 * Fix compiler warning in armadillo800eva board code * tag 'renesas-fixes2-for-v3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: ARM: shmobile: armadillo800eva-reference: fix compiler warning Signed-off-by: Olof Johansson <olof@lixom.net>
| | * | | ARM: shmobile: armadillo800eva-reference: fix compiler warningGuennadi Liakhovetski2013-07-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | | ARM: clps711x: edb7211: Remove extra iotable_init() callAlexander Shiyan2013-08-131-16/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The keyboard driver for the CLPS711X platform is missing, so there is no need to call iotable_init() for this memory region. Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Olof Johansson <olof@lixom.net>
| * | | | ARM: clps711x: autcpu12: Remove incorrect config checkingAlexander Shiyan2013-08-131-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes incorrect config symbols checking since these symbols not contain "CONFIG_" prefix. Anyway, checking is unneeded here and this patch remove it completely. Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Olof Johansson <olof@lixom.net>
| * | | | ARM: clps711x: Drop fortunet board supportAlexander Shiyan2013-08-133-89/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes support for the fortunet board. This board is not maintained by long time and it seems no one is not using it. Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Olof Johansson <olof@lixom.net>
| * | | | ARM: clps711x: Remove the special name for the syscon driverAlexander Shiyan2013-08-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a partial revert of the patch: "6597619f9c ARM: clps711x: Add support for SYSCON driver". No reason to make SYSCON driver name unique to that processor. Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Olof Johansson <olof@lixom.net>
| * | | | Merge tag 'keystone-fixes-non-critical' of ↵Kevin Hilman2013-08-074-16/+20
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/fixes-non-critical From: Santosh Shilimkar <santosh.shilimkar@ti.com>: ARM: keystone: non-critical fixes, cleanup for 3.12 Summary of changes: - Drop unused HAVE_SCHED_CLOCK config option - Remove now redundant smp_init_cpus call - Update the smc code to remove dsb and r12 usage - Convert device tree to use #include and GIC bindings * tag 'keystone-fixes-non-critical' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone: ARM: Keystone: Convert device tree file to use IRQ defines ARM: keystone: use #include to include skeleton.dtsi ARM: keystone: Drop the un-necessary dsb from keystone_cpu_smc() ARM: Keystone: No need to preserve r12 across smc call ARM: keystone: remove redundant smp_init_cpus definition ARM: keystone: drop useless HAVE_SCHED_CLOCK Signed-off-by: Kevin Hilman <khilman@linaro.org>
| | * | | | ARM: Keystone: Convert device tree file to use IRQ definesSantosh Shilimkar2013-08-051-10/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the GIC and standard IRQ binding defines in all IRQ specifiers. Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
| | * | | | ARM: keystone: use #include to include skeleton.dtsiSantosh Shilimkar2013-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace /include/ (dtc) with #include (C pre-processor) to include skeleton.dtsi Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
| | * | | | ARM: keystone: Drop the un-necessary dsb from keystone_cpu_smc()Santosh Shilimkar2013-08-051-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was added because of some legacy reasons from OMAP SOCs but after testing and verifying with the keystone hardware folks, the dsb in keystone_cpu_smc() is not necessary. So drop it. Reported-by: Dave Martin <dave.martin@linaro.org> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
| | * | | | ARM: Keystone: No need to preserve r12 across smc callSantosh Shilimkar2013-08-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Register r12 is caller-save, so no need preserve it keystone_cpu_smc(). Reported-by: Dave Martin <dave.martin@linaro.org> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
| | * | | | ARM: keystone: remove redundant smp_init_cpus definitionSudeep KarkadaNagesha2013-08-051-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | arm_dt_init_cpu_maps is called before smp_init_cpus. It makes the platform/SoC definition of smp_init_cpus unnecessary. Signed-off-by: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
| | * | | | ARM: keystone: drop useless HAVE_SCHED_CLOCKPaul Bolle2013-08-051-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Kconfig symbol HAVE_SCHED_CLOCK got removed in v3.4, with commit 6905a65879b5 ("ARM: Make the sched_clock framework mandatory"). But a select statement for it popped up again through commit 828989ad87af ("ARM: keystone: Add minimal TI Keystone platform support"). Drop that statement, as it is useless. Signed-off-by: Paul Bolle <pebolle@tiscali.nl> [santosh.shilimkar@ti.com: Minor edit in the subject] Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
| * | | | | Merge tag 'fixes-non-3.12' of git://git.infradead.org/linux-mvebu into ↵Olof Johansson2013-08-04303-1245/+1435
| |\ \ \ \ \ | | |_|/ / / | |/| | / / | | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * | | ARM: dove: fix missing __init section of dove_mpp_gpio_modeSebastian Hesselbarth2013-07-251-1/+1
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Legacy dove_mpp_gpio_mode calls orion_gpio_set_valid which is in __init section. Offending function is not, so this causes a section mismatch. To fix the mismatch, also move dove_mpp_gpio_mode to __init section. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
| * | | ARM: shmobile: r8a7740: Fix TPU clock nameLaurent Pinchart2013-07-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | ARM: shmobile: Insert align directives before 4 bytes dataTetsuyuki Kobayashi2013-07-183-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | ARM: shmobile: Force ARM mode to compile reset vector for secondary CPUsTetsuyuki Kobayashi2013-07-181-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | ARM: shmobile: fix compile error when CONFIG_THUMB2_KERNEL=yTetsuyuki Kobayashi2013-07-181-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | ARM: shmobile: Update romImage to relocate appended DTBMagnus Damm2013-07-172-6/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of relying of MACH_TYPE for board identification, update the romImage code to relocate an appended DTB to the beginning of RAM. This implementation is independent of ARM_APPENDED_DTB, this because it is necessary to copy the DTB to memory so the kernel can access it. Without this patch Mackerel does not boot via the Mask ROM over USB (r_usb_boot) - this since non-DT boot was broken ages ago in commit: 0ce53cd ARM: mach-shmobile: Use DT_MACHINE for mackerel Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | | | Merge tag 'please-pull-misc-3.12' of ↵Linus Torvalds2013-09-062-8/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux Pull ia64 fixes from Tony Luck: "Couple of small cleanups for ia64" * tag 'please-pull-misc-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux: [IA64] Use asm-generic/bitops/builtin-ffs.h [IA64] dmi.h: Make dmi_alloc use kzalloc
| * | | | [IA64] Use asm-generic/bitops/builtin-ffs.hAkinobu Mita2013-08-261-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The definition of ffs() for ia64 is almost the same as asm-generic/bitops/builtin-ffs.h. The only difference is whether it is defined as inline function or macro function. So this switches to use the header (both to reduce amount of arch specific code, and because inline functions provide type-checking that macros do not). Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| * | | | [IA64] dmi.h: Make dmi_alloc use kzallocJoe Perches2013-08-191-1/+1
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | x86/ia64 have a slight mismatch in dmi_alloc as x86 does a memset(0), and ia64 just does kmalloc. Make the ia64 dmi_alloc match the x86 style. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
* | | | Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tileLinus Torvalds2013-09-06148-2884/+7824
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull Tile arch updates from Chris Metcalf: "These changes bring in a bunch of new functionality that has been maintained internally at Tilera over the last year, plus other stray bits of work that I've taken into the tile tree from other folks. The changes include some PCI root complex work, interrupt-driven console support, support for performing fast-path unaligned data fixups by kernel-based JIT code generation, CONFIG_PREEMPT support, vDSO support for gettimeofday(), a serial driver for the tilegx on-chip UART, KGDB support, more optimized string routines, support for ftrace and kprobes, improved ASLR, and many bug fixes. We also remove support for the old TILE64 chip, which is no longer buildable" * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: (85 commits) tile: refresh tile defconfig files tile: rework <asm/cmpxchg.h> tile PCI RC: make default consistent DMA mask 32-bit tile: add null check for kzalloc in tile/kernel/setup.c tile: make __write_once a synonym for __read_mostly tile: remove support for TILE64 tile: use asm-generic/bitops/builtin-*.h tile: eliminate no-op "noatomichash" boot argument tile: use standard tile_bundle_bits type in traps.c tile: simplify code referencing hypervisor API addresses tile: change <asm/system.h> to <asm/switch_to.h> in comments tile: mark pcibios_init() as __init tile: check for correct compiler earlier in asm-offsets.c tile: use standard 'generic-y' model for <asm/hw_irq.h> tile: use asm-generic version of <asm/local64.h> tile PCI RC: add comment about "PCI hole" problem tile: remove DEBUG_EXTRA_FLAGS kernel config option tile: add virt_to_kpte() API and clean up and document behavior tile: support FRAME_POINTER tile: support reporting Tilera hypervisor statistics ...
| * | | | tile: refresh tile defconfig filesChris Metcalf2013-09-062-268/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are based on the current shipping versions of the config files from Tilera, as synced up to the tip, so are a better starting point for folks who want a default configuration. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: rework <asm/cmpxchg.h>Chris Metcalf2013-09-067-164/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The macrology in cmpxchg.h was designed to allow arbitrary pointer and integer values to be passed through the routines. To support cmpxchg() on 64-bit values on the 32-bit tilepro architecture, we used the idiom "(typeof(val))(typeof(val-val))". This way, in the "size 8" branch of the switch, when the underlying cmpxchg routine returns a 64-bit quantity, we cast it first to a typeof(val-val) quantity (i.e. size_t if "val" is a pointer) with no warnings about casting between pointers and integers of different sizes, then cast onwards to typeof(val), again with no warnings. If val is not a pointer type, the additional cast is a no-op. We can't replace the typeof(val-val) cast with (for example) unsigned long, since then if "val" is really a 64-bit type, we cast away the high bits. HOWEVER, this fails with current gcc (through 4.7 at least) if "val" is a pointer to an incomplete type. Unfortunately gcc isn't smart enough to realize that "val - val" will always be a size_t type even if it's an incomplete type pointer. Accordingly, I've reworked the way we handle the casting. We have given up the ability to use cmpxchg() on 64-bit values on tilepro, which is OK in the kernel since we should use cmpxchg64() explicitly on such values anyway. As a result, I can just use simple "unsigned long" casts internally. As I reworked it, I realized it would be cleaner to move the architecture-specific conditionals for cmpxchg and xchg out of the atomic.h headers and into cmpxchg, and then use the cmpxchg() and xchg() primitives directly in atomic.h and elsewhere. This allowed the cmpxchg.h header to stand on its own without relying on the implicit include of it that is performed by <asm/atomic.h>. It also allowed collapsing the atomic_xchg/atomic_cmpxchg routines from atomic_{32,64}.h into atomic.h. I improved the tests that guard the allowed size of the arguments to the routines to use a __compiletime_error() test. (By avoiding the use of BUILD_BUG, I could include cmpxchg.h into bitops.h as well and use the macros there, which is otherwise impossible due to include order dependency issues.) The tilepro _atomic_xxx internal methods were previously set up to take atomic_t and atomic64_t arguments, which isn't as convenient with the new model, so I modified them to take int or u64 arguments, which is consistent with how they used the arguments internally anyway, so provided some nice simplification there too. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile PCI RC: make default consistent DMA mask 32-bitChris Metcalf2013-09-034-20/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change sets the PCI devices' initial DMA capabilities conservatively and promotes them at the request of the driver, as opposed to assuming advanced DMA capabilities. The old design runs the risk of breaking drivers that assume default capabilities. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: add null check for kzalloc in tile/kernel/setup.cWang Sheng-Hui2013-09-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Should check the return value of kzalloc first to avoid the null pointer. Then can dereference the non-null pointer to access the fields of struct resource. Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: make __write_once a synonym for __read_mostlyChris Metcalf2013-09-034-27/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was really only useful for TILE64 when we mapped the kernel data with small pages. Now we use a huge page and we really don't want to map different parts of the kernel data in different ways. We retain the __write_once name in case we want to bring it back to life at some point in the future. Note that this change uncovered a latent bug where the "smp_topology" variable happened to always be aligned mod 8 so we could store two "int" values at once, but when we eliminated __write_once it ended up only aligned mod 4. Fix with an explicit annotation. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: remove support for TILE64Chris Metcalf2013-09-0328-1121/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This chip is no longer being actively developed for (it was superceded by the TILEPro64 in 2008), and in any case the existing compiler and toolchain in the community do not support it. It's unlikely that the kernel works with TILE64 at this point as the configuration has not been tested in years. The support is also awkward as it requires maintaining a significant number of ifdefs. So, just remove it altogether. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: use asm-generic/bitops/builtin-*.hAkinobu Mita2013-09-031-38/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The definisions of __ffs(), __fls(), and ffs() for tile are almost same as asm-generic/bitops-*.h. The only difference is that it is defined as __always_inline or inline. So this switches to use those headers. Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> [moved #includes to end]
| * | | | tile: eliminate no-op "noatomichash" boot argumentChris Metcalf2013-09-031-9/+0
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: use standard tile_bundle_bits type in traps.cChris Metcalf2013-09-031-9/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were rolling our own bundle_bits, which is unnecessary. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: simplify code referencing hypervisor API addressesChris Metcalf2013-09-031-17/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's no need to make up new ways of computing the addresses of the Tilera hypervisor APIs; just use the standard method of relying on the symbols to provide the addresses. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: change <asm/system.h> to <asm/switch_to.h> in commentsChris Metcalf2013-09-032-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also fix mentions of it in #error statements. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: mark pcibios_init() as __initChris Metcalf2013-09-032-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was bombed away because it was previously marked as __devinit, but it should be an __init function. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: check for correct compiler earlier in asm-offsets.cChris Metcalf2013-09-031-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we wait until after including a bunch of other files, we will have generated so much warning spew that it's hard to notice the error about using the wrong compiler. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: use standard 'generic-y' model for <asm/hw_irq.h>Chris Metcalf2013-09-032-18/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | tile: use asm-generic version of <asm/local64.h>Chris Metcalf2013-09-031-0/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>