summaryrefslogtreecommitdiffstats
path: root/arch/arm
AgeCommit message (Collapse)Author
2010-06-30Merge branch 'omap-fixes-for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 * 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: OMAP: hwmod: Fix the missing braces OMAP4: clock: Fix multi-omap boot with reset un-used clocks OMAP3: PM: fix IO daisy chain enable to use PM_WKEN reg omap: GPIO: fix auto-disable of debounce clock omap: DMTIMER: Ack pending interrupt always when stopping a timer omap: Stalker board: switch over to gpio_set_debounce omap: fix build failure due to missing include dma-mapping.h omap iommu: Fix Memory leak
2010-06-28Merge branch 'for_2.6.35rc' of git://git.pwsan.com/linux-2.6 into ↵Tony Lindgren
omap-fixes-for-linus
2010-06-28arm: update gfp/slab.h includesTejun Heo
Implicit slab.h inclusion via percpu.h is about to go away. Make sure gfp.h or slab.h is included as necessary. Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Stephen Rothwell <sfr@canb.auug.org.au> Cc: Russell King <linux@arm.linux.org.uk> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2010-06-23OMAP: hwmod: Fix the missing bracesBenoit Cousson
As reported by Sergei, a couple of braces were missing after the WARN removal patch. [07/22] OMAP: hwmod: Replace WARN by pr_warning if clock lookup failed https://patchwork.kernel.org/patch/100756/ Signed-off-by: Benoit Cousson <b-cousson@ti.com> [paul@pwsan.com: fixed patch description per Anand's E-mail] Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: Sergei Shtylyov <sshtylyov@mvista.com> Cc: Anand Gadiyar <gadiyar@ti.com>
2010-06-16OMAP4: clock: Fix multi-omap boot with reset un-used clocksSantosh Shilimkar
This patch uses "ENABLE_ON_INIT" flag on the emif clock nodes to avoid the emif clk getting cut as part of reset un-used clock routine which prevents boot. Since "omap4xxx_clk_init()" calls "clk_enable_init_clocks()" which increases the usecount on all ENABLE_ON_INIT clocks, it prevents "omap2_clk_disable_unused()" from disabling the clock. The real fix is to have driver for EMIF and do clock get/enable as part of it. The EMIF driver is planned to be done HWMOD way so till that available to keep omap3_defconfig booting on OMAP4430, this patch is necessary. (Will updated the auto-gen script for 44xx accordingly) The fix was suggested by Paul Walmsley Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Tested-by: Nishanth Menon <nm@ti.com> Acked-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-06-10Merge master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds
* master.kernel.org:/home/rmk/linux-2.6-arm: ARM: 6164/1: Add kto and kfrom to input operands list. ARM: 6166/1: Proper prefetch abort handling on pre-ARMv6 ARM: 6165/1: trap overflows on highmem pages from kmap_atomic when debugging ARM: 6152/1: ux500 make it possible to disable localtimers [ARM] pxa/spitz: Correctly register WM8750 [ARM] pxa/palmtc: storage class should be before const qualifier ARM: 6146/1: sa1111: Prevent deadlock in resume path ARM: 6145/1: ux500 MTU clockrate correction ARM: 6144/1: TCM memory bug freeing bug ARM: VFP: Fix vfp_put_double() for d16-d31
2010-06-10OMAP3: PM: fix IO daisy chain enable to use PM_WKEN regKevin Hilman
Checking to se if the IO daisy chain is enabled should be checking the PM_WKEN register, not the PM_WKST register. Reading PM_WKST tells us if an event occurred, not whether or not it is enabled. Apparently, we've been lucky until now in that a pending event has not been there during enable. However, on 3630/Zoom3, I noticed because of the WARN that this timeout was always happening. Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-06-10omap: GPIO: fix auto-disable of debounce clockKevin Hilman
The addition of the new debounce code (commit 168ef3d9a56bd8bffe0ef4189c450888b4aefefe) broke the auto-disable of debounce clocks on idle by forgetting to update the debounce clock enable mask. Add back the updating of bank->dbck_enable_mask so debounce clocks are auto-disabled. Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-06-10omap: DMTIMER: Ack pending interrupt always when stopping a timerTero Kristo
The kernel timer queue is being run currently from a GP timer running in a one shot mode, which works in a way that when it expires, it will also stop. Usually during this situation, the interrupt handler will ack the interrupt, load a new value to the timer and start it again. During suspend, the situation is slightly different, as we disable interrupts just before timekeeping is suspended, which leaves a small window where the timer can expire before it is stopped, and will leave the interrupt flag pending. This pending interrupt will prevent ARM sleep entry, thus now we ack it always when we are attempting to stop a timer. Signed-off-by: Tero Kristo <tero.kristo@nokia.com> Acked-by: Kevin Hilman <khilman@deeprootsystems.com> [tony@atomide.com: removed the ifdef to make the patch cover omap1 also] Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-06-09omap: Stalker board: switch over to gpio_set_debounceSantosh Shilimkar
Commit 48feb337475a arm: omap: switch over to gpio_set_debounce caused "undefined reference to omap_set_gpio_debounce" build error. The fix is to use the generic gpiolib function. Cc: Felipe Balbi <felipe.balbi@nokia.com> Cc: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-06-09omap: fix build failure due to missing include dma-mapping.hAmit Kucheria
Fixes following error, CC arch/arm/mach-omap2/usb-ehci.o arch/arm/mach-omap2/usb-ehci.c:263: error: implicit declaration of function 'DMA_BIT_MASK' arch/arm/mach-omap2/usb-ehci.c:263: error: initializer element is not constant make[1]: *** [arch/arm/mach-omap2/usb-ehci.o] Error 1 Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-06-09omap iommu: Fix Memory leakSatish
The memory allocated for sgt structure is not freed on error when sg_alloc_table is called in sgtable_alloc(). Signed-off-by: Satish Kumar <x0124230@ti.com> Signed-off-by: Manjunatha GK <manjugk@ti.com> Cc: Vimal Singh <vimal.newwork@gmail.com> Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com> Signed-off-by: Tony Lindgen <tony@atomide.com>
2010-06-08ARM: 6164/1: Add kto and kfrom to input operands list.Khem Raj
When functions incoming parameters are not in input operands list gcc 4.5 does not load the parameters into registers before calling this function but the inline assembly assumes valid addresses inside this function. This breaks the code because r0 and r1 are invalid when execution enters v4wb_copy_user_page () Also the constant needs to be used as third input operand so account for that as well. Tested on qemu arm. CC: <stable@kernel.org> Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-06-08Merge branch 'fix' of ↵Russell King
git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6
2010-06-08ARM: 6166/1: Proper prefetch abort handling on pre-ARMv6Anfei
Instruction faults on pre-ARMv6 CPUs are interpreted as a 'translation fault', but do_translation_fault doesn't handle well if user mode trying to run instruction above TASK_SIZE, and result in the infinite retry of that instruction. CC: <stable@kernel.org> Signed-off-by: Anfei Zhou <anfei.zhou@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-06-08ARM: 6165/1: trap overflows on highmem pages from kmap_atomic when debuggingNicolas Pitre
When CONFIG_DEBUG_HIGHMEM is used, the fixmap entry used for a highmem page by kmap_atomic() is always cleared by kunmap_atomic(). This helps find bad usages such as dereferences after the unmap, or overflow into the adjacent fixmap areas. But this debugging aid is completely bypassed when a kmap for the same page already exists as the kmap is reused instead. ON VIVT systems we have no choice but to reuse that kmap due to cache coherency issues, but on non VIVT systems we should always force the fixmap usage when debugging is active. Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-06-08ARM: 6152/1: ux500 make it possible to disable localtimersLinus Walleij
Currently compilation of ux500 fails if you deselect the kernel feature for localtimers. Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-06-07msm: dma: add completion.h headerDaniel Walker
At some point this was exposed (not sure how), linux-2.6/arch/arm/mach-msm/dma.c:92: error: field 'complete' has incomplete type linux-2.6/arch/arm/mach-msm/dma.c: In function 'dmov_exec_cmdptr_complete_func': linux-2.6/arch/arm/mach-msm/dma.c:108: error: implicit declaration of function 'complete' linux-2.6/arch/arm/mach-msm/dma.c: In function 'msm_dmov_exec_cmd': linux-2.6/arch/arm/mach-msm/dma.c:120: error: implicit declaration of function 'init_completion' linux-2.6/arch/arm/mach-msm/dma.c:123: error: implicit declaration of function 'wait_for_completion' and the fix is just to add the header. Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-31[ARM] pxa/spitz: Correctly register WM8750Marek Vasut
This patch registers the WM8750 codec on a proper place on the SPITZ machine after the WM8750 driver was converted to new API. Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-05-31[ARM] pxa/palmtc: storage class should be before const qualifierTobias Klauser
The C99 specification states in section 6.11.5: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-05-30Merge branch 'for-next' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (47 commits) mfd: Rename twl5031 sih modules mfd: Storage class for timberdale should be before const qualifier mfd: Remove unneeded and dangerous clearing of clientdata mfd: New AB8500 driver gpio: Fix inverted rdc321x gpio data out registers mfd: Change rdc321x resources flags to IORESOURCE_IO mfd: Move pcf50633 irq related functions to its own file. mfd: Use threaded irq for pcf50633 mfd: pcf50633-adc: Fix potential race in pcf50633_adc_sync_read mfd: Fix pcf50633 bitfield logic in interrupt handler gpio: rdc321x needs to select MFD_CORE mfd: Use menuconfig for quicker config editing ARM: AB3550 board configuration and irq for U300 mfd: AB3550 core driver mfd: AB3100 register access change to abx500 API mfd: Renamed ab3100.h to abx500.h gpio: Add TC35892 GPIO driver mfd: Add Toshiba's TC35892 MFD core mfd: Delay to mask tsc irq in max8925 mfd: Remove incorrect wm8350 kfree ...
2010-05-30Merge branch 'next' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: DMAENGINE: DMA40 U8500 platform configuration DMA: PL330: Add dma api driver
2010-05-28ARM: Merge for-2635/defconfig3Ben Dooks
Merge branch 'for-2635/defconfig3' into for-linus/2635-updates
2010-05-28ARM: s3c2410_defconfig: Add new machinesBen Dooks
Add the SMDK2416, and the GTA02 to the list of machines that are included in the s3c2410_defconfig. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28ARM: s3c6400_defconfig: Add framebuffer and basic LCDBen Dooks
Add the framebuffer driver and some basic LCD configurations that should be suitable for the SMDK boards. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28ARM: s3c6400_defconfig: Add RTC driver supportBen Dooks
Now that the RTC driver supports the S3C64XX, enable it in the build. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28ARM: s3c6400_defconfig: Enable USB host sideBen Dooks
Enable the USB Host side by adding the USB OHCI and some basic USB driver modules. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28ARM: s3c6400_defconfig: Add SPI driverBen Dooks
The SPI driver was added last kernel round, so enable the core SPI and add the 64XX and bitbang driver as modules. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28ARM: s3c6400_defconfig: Update compiled machinesBen Dooks
Add the machines that have been added in the last round to the list of builds. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28ARM: S5P: Regoster clk_xusbxti clock for hsotg driverThomas Abraham
The clk_xusbxti clock is added to the list of clocks to be registred during boot time clock registration. Signed-off-by: Thomas Abraham <thomas.ab@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> [ben-linux@fluff.org: edited title] Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28ARM: S3C64XX: Add USB OTG HCLK to the list of clocksThomas Abraham
Add the USB OTG HCLK clock to the list of clocks to be registered during initialization. Signed-off-by: Thomas Abraham <thomas.ab@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28ARM: SAMSUNG: gpio-cfg.h: update documentationBen Dooks
Update the documentation on the gpio configuration calls to add more references to useful information and also to document the values that are passed. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28ARM: SAMSUNG: Fix documentation for s3c_gpio_cfgpin()Ben Dooks
Fix typo in s3c_gpio_cfgpin() documentation, the second argument is @to not @pin again. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-28mfd: New AB8500 driverRabin Vincent
Add a new driver to support the AB8500 Power Management chip, replacing the current AB4500. The new driver replaces the old one, instead of an incremental modification, because this is a substantial overhaul including: - Split of the driver into -core and -spi portions, to allow another interface layer to be added - Addition of interrupt support - Switch to MFD core API for handling subdevices - Simplification of the APIs to remove a redundant block parameter - Rename of the APIs and macros from ab4500_* to ab8500_* - Rename of the files from ab4500* to ab8500* - Change of the driver name from ab4500 to ab8500 Acked-by: Linus Walleij <linus.walleij@stericsson.com> Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-05-28ARM: AB3550 board configuration and irq for U300Mattias Wallin
This patch adds the i2c board configuration needed for the Mixed Signal chip AB3550. It also adds the irq numbers needed for the irq_chip implementation. Signed-off-by: Mattias Wallin <mattias.wallin@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-05-28mfd: Renamed ab3100.h to abx500.hLinus Walleij
The goal here is to make way for a more general interface for the analog baseband chips ab3100 ab3550 ab550 and future chips. This patch have been divided into two parts since both changing name and content of a file is not recommended in git. Signed-off-by: Mattias Wallin <mattias.wallin@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-05-28davinci: da850 TPS6507x touch screen driver board dataTodd Fischer
The touch screen controller in the TPS6507x chip needs values that are dependent on the characteristics of the touch screen hardware being used in the board design. In addition, the board provides version information that is exposed via the kernel input sub-system. Signed-off-by: Todd Fischer <todd.fischer@ridgerun.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-05-28mfd: Add tps6507x board data structureTodd Fischer
Add mfd structure which refrences sub-driver initialization data. For example, for a giving hardware implementation, the voltage regulator sub-driver initialization data provides the mapping betten a voltage regulator and what the output voltage is being used for. Signed-off-by: Todd Fischer <todd.fischer@ridgerun.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-05-27DMAENGINE: DMA40 U8500 platform configurationLinus Walleij
This completes the DMA40 support with the platform-specific configuration for U8500/DB8500. Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Reviewed-by: Alessandro Rubini <rubini@unipv.it> Cc: STEricsson_nomadik_linux@list.st.com Acked-by: Russell King <rmk+kernel@arm.linux.org.uk> [fixed up dma40_{tx|rx}_map declaration/initialization] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2010-05-27Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlightLinus Torvalds
* 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight: gta02: Use pcf50633 backlight driver instead of platform backlight driver. backlight: pcf50633: Register a pcf50633-backlight device in pcf50633 core driver. backlight: Add pcf50633 backlight driver backlight: 88pm860x_bl: fix error handling in pm860x_backlight_probe backlight: max8925_bl: Fix error handling path backlight: l4f00242t03: fix error handling in l4f00242t03_probe backlight: add S6E63M0 AMOLED LCD Panel driver backlight: adp8860: add support for ADP8861 & ADP8863 backlight: mbp_nvidia_bl - Fix DMI_SYS_VENDOR for MacBook1,1 backlight: Add Cirrus EP93xx backlight driver backlight: l4f00242t03: Fix regulators handling code in remove function backlight: fix adp8860_bl build errors backlight: new driver for the ADP8860 backlight parts backlight: 88pm860x_bl - potential memory leak backlight: mbp_nvidia_bl - add support for older MacBookPro and MacBook 6,1. backlight: Kconfig cleanup backlight: backlight_device_register() return ERR_PTR()
2010-05-27Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-ledsLinus Torvalds
* 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds: leds: Add mx31moboard MC13783 led support leds: Add mc13783 LED support leds: leds-ss4200: fix led_classdev_unregister twice in error handling leds: leds-lp3944: properly handle lp3944_configure fail in lp3944_probe leds: led-class: set permissions on max_brightness file to 0444 leds: leds-gpio: Change blink_set callback to be able to turn off blinking leds: Add LED driver for the Soekris net5501 board leds: 88pm860x - fix checking in probe function
2010-05-27Merge branch 'for-linus/2634-git-updates' of git://git.fluff.org/bjdooks/linuxLinus Torvalds
* 'for-linus/2634-git-updates' of git://git.fluff.org/bjdooks/linux: ARM: S5PC100: Fixup cross tree merge problems ARM: S5P: Fix the platform external interrupt issues. ARM: s5pv210_defconfig: Update s5pv210_defconfig to v2.6.34-git ARM: s5pc110_defconfig: Update s5pc110_defconfig to v2.6.34-git ARM: s5pc100_defconfig: Update s5pc100_defconfig to v2.6.34-git ARM: s5p6442_defconfig: Update s5p6442_defconfig to v2.6.34-git ARM: s5p6440_defconfig: Update s5p6440_defconfig to v2.6.34-git ARM: s3c6400_defconfig: Update s3c6400_defconfig to v2.6.34-git ARM: s3c2410_defconfig: Update s3c2410_defconfig to v2.6.34-git
2010-05-27asm-generic: remove ARCH_HAS_SG_CHAIN in scatterlist.hFUJITA Tomonori
There are more architectures that don't support ARCH_HAS_SG_CHAIN than those that support it. This removes removes ARCH_HAS_SG_CHAIN in asm-generic/scatterlist.h and lets arhictectures to define it. It's clearer than defining ARCH_HAS_SG_CHAIN asm-generic/scatterlist.h and undefing it in arhictectures that don't support it. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-05-27arm: omap: remove the unused omap_gpio_set_debounce methodsFelipe Balbi
Nobody uses that anymore, so remove and expect drivers to use the gpiolib implementation. Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Cc: Tony Lindgren <tony@atomide.com> Cc: David Brownell <david-b@pacbell.net> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-05-27arm: omap: switch over to gpio_set_debounceFelipe Balbi
Stop using the omap-specific implementations for gpio debouncing now that gpiolib provides its own support. Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Cc: Tony Lindgren <tony@atomide.com> Cc: David Brownell <david-b@pacbell.net> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-05-27arm: omap: gpio: implement set_debounce methodFelipe Balbi
OMAP supports debouncing of gpio lines, implement the method using gpiolib. Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Cc: Tony Lindgren <tony@atomide.com> Cc: David Brownell <david-b@pacbell.net> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-05-27davinci: mmc: pass number of SG segments as platform dataSudhakar Rajashekhara
On some platforms like DM355, the number of EDMA parameter slots available for EDMA_SLOT_ANY usage are few. In such cases, if MMC/SD uses 16 slots for each instance of MMC controller, then the number of slots available for other modules will be very few. By passing the number of EDMA slots to be used in MMC driver from platform data, EDMA slots available for other purposes can be controlled. Most of the platforms will not use this platform data variable. But on DM355, as the number of EDMA resources available is limited, the number of scatter- gather segments used inside the MMC driver can be 8 (passed as platform data) instead of 16. On DM355, when the number of scatter-gather segments was reduced to 8, I saw a performance difference of about 0.25-0.4 Mbytes/sec during write. Read performance variations were negligible. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Acked-by: Kevin Hilman <khilman@deeprootsystems.com> Cc: <linux-mmc@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-05-27ARM: 6146/1: sa1111: Prevent deadlock in resume pathMarek Vašut
This patch reorganises the sa1111_resume() function in a manner the spinlock happens after calling the sa1111_wake(). This fixes two bugs: 1) This function called sa1111_wake() which tried to claim the same spinlock the sa1111_resume() already claimed. This would result in certain deadlock. Original idea for this part: Russell King <rmk+kernel@arm.linux.org.uk> 2) The function didn't unlock the spinlock in case the chip didn't report correct ID. Original idea for this part: Julia Lawall <julia@diku.dk> Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: <stable@kernel.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-05-27ARM: 6145/1: ux500 MTU clockrate correctionLinus Walleij
This adjusts the clockrate for the MTU timer. On the different UX500 variants this rate is different. The platform can also have been set up at hardware initialization, bootloader or early init for different clock speeds. To have the clock framework available early so the timers can use them, the clock initialization for Nomadik and ux500 is moved to IRQ init time. A custom per-clock callback is added to handle special cases like this. This solves a user-visible bug: without this patch the current UX500 platforms will not be synchronized to wall-clock time and the platform will drift in time. Acked-by: Rabin Vincent <rabin.vincent@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-05-27ARM: 6144/1: TCM memory bug freeing bugLinus Walleij
This fixes a bug in mm/init.c when freeing the TCM compile memory, this was being referred to as a char * which is incorrect: this will dereference the pointer and feed in the value at the location instead of the address to it. Change it to a plain char and use &(char) to reference it. Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Cc: <stable@kernel.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>