aboutsummaryrefslogtreecommitdiff
path: root/arch/arm
AgeCommit message (Collapse)AuthorFilesLines
2011-03-15ARM: 6806/1: irq: introduce entry and exit functions for chained handlersWill Deacon1-0/+31
Some chained IRQ handlers are written to cope with primary chips of potentially different flow types. Whether this a sensible thing to do is a point of contention. This patch introduces entry/exit functions for chained handlers which infer the flow type of the primary chip as fasteoi or level-type by checking whether or not the ->irq_eoi function pointer is present and calling back to the primary chip as necessary. Other methods of flow control are not considered. Acked-by: Thomas Gleixner <[email protected]> Acked-by: Catalin Marinas <[email protected]> Signed-off-by: Will Deacon <[email protected]> Signed-off-by: Russell King <[email protected]>
2011-03-15ARM: EXYNOS4: Add support for SATA on ARMLEX4210Abhilash Kesavan8-0/+280
Adds the device definitions, platform specific initialization and clocks for SATA on ARMLEX4210. Signed-off-by: Abhilash Kesavan <[email protected]> Signed-off-by: Kukjin Kim <[email protected]>
2011-03-14Merge branch 'for-rmk-devel-stable' of ↵Russell King30-627/+2192
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into devel-stable
2011-03-14Merge branch 'davinci-next' of ↵Russell King14-138/+784
git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci into devel-stable
2011-03-14arm: Remove bogus comment in futex_atomic_cmpxchg_inatomic()Thomas Gleixner1-3/+0
commit 522d7dec(futex: Remove redundant pagefault_disable in futex_atomic_cmpxchg_inatomic()) added a bogus comment. /* Note that preemption is disabled by futex_atomic_cmpxchg_inatomic * call sites. */ Bogus in two aspects: 1) pagefault_disable != preempt_disable even if the mechanism we use is the same 2) we have a call site which deliberately does not disable pagefaults as it wants the possible fault to be handled - though that has been changed for consistency reasons now. Sigh. I really should have seen that when committing the above. :( Catched-by-and-rightfully-ranted-at-by: Linus Torvalds <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> LKML-Reference: <[email protected]> Cc: Michel Lespinasse <[email protected]> Cc: Darren Hart <[email protected]>
2011-03-14Merge branches 'devel-mux' and 'devel-misc' into omap-for-linusTony Lindgren6-25/+35
2011-03-14omap: zoom: host should not pull up wl1271's irq lineOhad Ben-Cohen1-1/+1
The wl1271's irq line is completely controlled by the 1271 device, and the host does not not need to pull it up. While there's no functional effect, letting the host pull this line up is just redundant, and wastes power. Signed-off-by: Ohad Ben-Cohen <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
2011-03-14arm: plat-omap: iommu: fix request_mem_region() error pathAaro Koskinen1-6/+8
request_mem_region() error exit will leak ioremapped memory. Fix this by moving the ioremap() after request_mem_region(), which is the proper order to do this anyway. Signed-off-by: Aaro Koskinen <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
2011-03-14OMAP2+: Common CPU DIE ID reading code reads wrong registers for OMAP4430Andy Green1-0/+13
This adapts the register offsets used to read the CPU DIE ID registers when run on 44XX so they match what is in the OMAP4430 Reference Manual page 269 Signed-off-by: Andy Green <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
2011-03-14omap4: mux: Remove duplicate mux modesTony Lindgren1-276/+6
Remove duplicate mux modes to make the binary smaller: text data bss dec hex filename 9378 24472 0 33850 843a mux44xx.o 9378 19104 0 28482 6f42 mux44xx.o Cc: Benoit Cousson <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
2011-03-14omap: iovmm: don't check 'da' to set IOVMF_DA_FIXED flagDavid Cohen2-11/+5
Currently IOVMM driver sets IOVMF_DA_FIXED/IOVMF_DA_ANON flags according to input 'da' address when mapping memory: da == 0: IOVMF_DA_ANON da != 0: IOVMF_DA_FIXED It prevents IOMMU to map first page with fixed 'da'. To avoid such issue, IOVMM will not automatically set IOVMF_DA_FIXED. It should now come from the user throught 'flags' parameter when mapping memory. As IOVMF_DA_ANON and IOVMF_DA_FIXED are mutually exclusive, IOVMF_DA_ANON can be removed. The driver will now check internally if IOVMF_DA_FIXED is set or not. Signed-off-by: David Cohen <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
2011-03-14omap: iovmm: disallow mapping NULL address when IOVMF_DA_ANON is setMichael Jones1-6/+7
commit c7f4ab26e3bcdaeb3e19ec658e3ad9092f1a6ceb allowed mapping the NULL address if da_start==0, which would then not get unmapped. Disallow this again if IOVMF_DA_ANON is set. And spell variable 'alignment' correctly. Signed-off-by: Michael Jones <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
2011-03-14plat-nomadik: make GPIO interrupts work with cpuidle ApSleepRabin Vincent2-17/+100
Enable wakeups by default for any GPIO interrupts and in the suspend/resume path narrow this down to only the the real wakeup interrupts. This approach is based on the assumption that cpuidle ApSleep will be entered more often than system suspend. Signed-off-by: Rabin Vincent <[email protected]> Reviewed-by: Srinidhi Kasagar <[email protected]> [Fixup for genirq changes to struct irq_data on 2.6.38] Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-u300: define a dummy filter function for coh901318Linus Walleij1-0/+7
All platform data has to be made conditional on as to avoid cluttering the code with other #ifdef:s. Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: basic HREFv60 support v2Linus Walleij5-16/+81
The HREFv60 variant of the MOP500 family of boards remove the external GPIO expander and route these pins back to some of the readily available internal GPIO pins instead. Based on a patch by Bibek Basu <[email protected]> for an internal kernel version. Cc: Bibek Basu <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: add hrefv60 GPIO pinsBibek Basu2-90/+200
This will centralize all GPIO pin muxing for the different boards in the MOP500 family to a single file. It also kills off the deprecated support for the ED (Early Drop) ASIC, this should never be spotted in the open and ST-Ericsson have internally deprecated this hardware. Signed-off-by: Bibek Basu <[email protected]> [Rebasing and kill old ASIC support] Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: move MOP500 pins to separate fileRabin Vincent4-63/+84
Split off pin definitions for the MOP500 board family to its own file. Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Mathieu Poirier <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: fix compilation warningLinus Walleij1-5/+2
The compiler warns that [rf]wimsc may be used uninitialized in this function - the warning is actually false since the uses are in identical if()-clauses, but it can't hurt very much to read out the values to be modified early anyway and rid the warning. Cc: Rabin Vincent <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: get rid of unused GPIO PM codeRabin Vincent2-79/+3
The NOMADIK_GPIO_PM config option is disabled by default, not user visible, and never selected by any other option: the code is therefore unused. The GPIO registers need not be saved and restored since their values are preserved when vAPE (on DB8500) is powered down. Signed-off-by: Rabin Vincent <[email protected]> Reviewed-by: Jonas Aberg <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: change sleep/wakeup setting in GPIO SLPM registerRikard Olsson1-1/+1
This patch fixes a bug when setting SLPM register for DB8500. When calling__nmk_gpio_set_slpm(...) offset to GPIO is now used instead of the GPIO number itself. Signed-off-by: Rikard Olsson <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: implement safe switch sequence for Alt-CRabin Vincent2-40/+172
Setting pinmux alternative C for a GPIO pin is actually not so easy since it ivolves setting value "1" in two registers, and since the combined result will take effect for intermediate values (01 or 10) this will cause glitches while you wrote one register but have not yet written the other. This patch implements a series of kludges including an optional machine-specific callback to avoid glitches when changing pin mux mode to alternative C. Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: set altfunc to GPIO when enabling the sleep configRabin Vincent1-0/+2
Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: type secondary IRQ correctlyVirupax Sadashivpetimath1-1/+1
Coverity found that we were checking an unsigned variable for >= zero. Type it correctly so that the check works as intended. Signed-off-by: Virupax Sadashivpetimath <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: pull-up/down settings for GPIO resumeJonas Aaberg2-24/+60
Suspend/resume didn't take care of pull-up and pull-down settings and writing back the DAT register at resume can change pull up/down settings, depending on pin input value. Output values are now also restored. Signed-off-by: Jonas Aaberg <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: support secondary GPIO interruptsRabin Vincent2-6/+46
When GPIOs wake up the system from sleep mode, the normal GPIO interrupt handler does not hit and the normal interrupt status register does not contain the status. Instead the secondary GPIO handler does, and the interrupt status needs to be retrieved from the wakeup status saved by the suspend/resume code. Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: implement suspend/resume for GPIORabin Vincent1-2/+49
Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: add custom dbg_show for GPIORabin Vincent1-0/+92
Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14plat-nomadik: support varying number of GPIOs per blockRabin Vincent3-3/+4
Signed-off-by: Rabin Vincent <[email protected]> [Added constant 32-pin assignment in platform data] Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: config Ux500 PL011 PL022 PL180 for DMALinus Walleij8-33/+288
This will configure the platform data for the PL011, PL022 and PL180 (derivate) PrimeCells found in the Ux500 to use DMA with the generic DMA engine for DMA40. Signed-off-by: Per Forlin <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-u300: config U300 PL180 PL011 PL022 for DMALinus Walleij3-29/+183
This will configure the platform data for the PL180, PL011 and PL022 PrimeCells found in the U300 to use DMA with the generic PrimeCell DMA engine for COH 901 318. Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-u300: use mmci driver for GPIO card detectLinus Walleij1-135/+13
The mmci driver can handle a GPIO pin for card detect, using IRQs and all just fine, so switch to using that. Delete the old bogus input device hack, if userspace need to detect MMC cards it should use udev like everyone else. Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: add MUSB to db5500 devicesMian Yousaf Kaukab3-0/+44
- DMA tx and rx maps for usb channels are set to be configured at runtime - MUSB is enabled with soc specific base address, irq and dma configurations Signed-off-by: Mian Yousaf Kaukab <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: add MUSB to db8500 devicesMian Yousaf Kaukab4-2/+64
- DMA tx and rx maps for usb channels are set to be configured at runtime - GPIO configurations for usb are added - MUSB is enabled with soc specific base address, irq and dma configurations Signed-off-by: Mian Yousaf Kaukab <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: update MUSB clock configurationsMian Yousaf Kaukab1-2/+2
MUSB driver has been updated to separate out BSP layer from its generic parts, as separate driver. This patch configures the clock with the new platform driver name. Signed-off-by: Mian Yousaf Kaukab <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: add platform data for musbMian Yousaf Kaukab3-1/+186
USB resources and DMA40 configurations are dynamically with the data provided in ux500_add_usb() call. Though only DMA40 configurations differ between U8500 and U5500 (USB resource are common between them). Signed-off-by: Mian Yousaf Kaukab <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: fix inverted SD-card GPIO pinPhilippe Langlais1-2/+2
The levelshifter pins were set to inverted values, fix this up. Signed-off-by: Philippe Langlais <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: set sd/mmc clock rate to 100MHzPhilippe Langlais1-1/+1
The clock speed for the SD/MMC clock was incorrect, rectify it. Signed-off-by: Philippe Langlais <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: Add Rohm BH1780GLI Light Sensor to i2c_board_infoLee Jones1-0/+4
Signed-off-by: Lee Jones <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: platform data for LP5521 leds driverPhilippe Langlais1-1/+67
Signed-off-by: Philippe Langlais <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: platform data for SFH7741 proximity sensor driverPhilippe Langlais2-0/+53
Proximity sensor is managed as an input event (SW_PROXIMITY). Signed-off-by: Philippe Langlais <[email protected]> [Named GPIO pin] Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: delete old keypad board fileLinus Walleij2-230/+0
We register keypads per-UIB now, remove this. Cc: Lee Jones <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: add U8500 UIB platform dataSundar Iyer2-0/+100
The U8500 UIB contains a Synaptics RMI touchpanel and a matrix keyboard via the TC35893 port expander device. Signed-off-by: Sundar Iyer <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: add ST-UIB platform dataSundar Iyer2-0/+184
The ST-UIB contains a matrix keypad interfaced with the STMPE1601 port expander and a ROHM BU2101 touch panel. Signed-off-by: Sundar Iyer <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: dynamic UIB (user interface boards) detectionRabin Vincent6-4/+173
Add support for dynamic detection of the UIB used (at the cost of one i2c error on the lesser-used UIB) and also provide an override via a command line parameter if needed. Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Sundar Iyer <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: fix ux500 build errorSundar Iyer1-2/+2
Include ab8500 regulators for DB8500 SoC by default and fix build issues Signed-off-by: Sundar Iyer <[email protected]> [Small fixup for changed boardfiles] Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: add a few AB8500 regulator consumers v3Linus Walleij1-0/+62
Try to make the regulators a little bit more useful by adding some of the most basic consumers we're going to have in the end. Cc: Mark Brown <[email protected]> Cc: Rabin Vincent <[email protected]> Cc: Naveen Kumar Gaddipati <[email protected]> Cc: Bengt Jonsson <[email protected]> Cc: Lee Jones <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-14mach-ux500: add DB5500 PMU resourcesLinus Walleij1-3/+25
This adds the PMU resources necessary to get perf working with the DB5500 ASIC. Acked-by: Will Deacon <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2011-03-12Merge branch 'master' of ↵Russell King39-116/+222
git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-tcc into devel-stable
2011-03-12Merge branch 'next-exynos4-pm' into for-nextKukjin Kim8-18/+724
Conflicts: arch/arm/mach-exynos4/include/mach/regs-pmu.h
2011-03-12ARM: EXYNOS4: Update HRT for supporting PMJaecheol Lee1-0/+16
This patch updates HRT driver for supporting PM. The resume function of PWM4 timer which is used clocksource is needed when kernel is resuming for restarting. Signed-off-by: Jaecheol Lee <[email protected]> Signed-off-by: Kukjin Kim <[email protected]>