Commit Graph

234205 Commits

Author SHA1 Message Date
Russell King
4c4070a309 Merge branch 'for-rmk-devel-stable' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into devel-stable 2011-03-14 22:27:03 +00:00
Russell King
5821c95ffb Merge branch 'davinci-next' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci into devel-stable 2011-03-14 22:26:30 +00:00
Rabin Vincent
b9df468d86 plat-nomadik: make GPIO interrupts work with cpuidle ApSleep
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 <rabin.vincent@stericsson.com>
Reviewed-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
[Fixup for genirq changes to struct irq_data on 2.6.38]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:17 +01:00
Linus Walleij
96cb164bde mach-u300: define a dummy filter function for coh901318
All platform data has to be made conditional on
as to avoid cluttering the code with other #ifdef:s.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:17 +01:00
Linus Walleij
4b4f757c80 mach-ux500: basic HREFv60 support v2
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 <bibek.basu@stericsson.com> for
an internal kernel version.

Cc: Bibek Basu <bibek.basu@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:16 +01:00
Bibek Basu
4bc3a698c3 mach-ux500: add hrefv60 GPIO pins
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 <bibek.basu@stericsson.com>
[Rebasing and kill old ASIC support]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:16 +01:00
Rabin Vincent
fe05203b0c mach-ux500: move MOP500 pins to separate file
Split off pin definitions for the MOP500 board family to its
own file.

Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:16 +01:00
Linus Walleij
3c4bee04d1 plat-nomadik: fix compilation warning
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 <rabin.vincent@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:16 +01:00
Rabin Vincent
5317e4d11d plat-nomadik: get rid of unused GPIO PM code
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 <rabin.vincent@stericsson.com>
Reviewed-by: Jonas Aberg <jonas.aberg@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:16 +01:00
Rikard Olsson
8b40eeeadc plat-nomadik: change sleep/wakeup setting in GPIO SLPM register
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 <rikard.p.olsson@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:16 +01:00
Rabin Vincent
01727e61f0 plat-nomadik: implement safe switch sequence for Alt-C
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 <rabin.vincent@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:15 +01:00
Rabin Vincent
3546d15c5c plat-nomadik: set altfunc to GPIO when enabling the sleep config
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:15 +01:00
Virupax Sadashivpetimath
2c8bb0eba9 plat-nomadik: type secondary IRQ correctly
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 <virupax.sadashivpetimath@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:15 +01:00
Jonas Aaberg
9c66ee6f55 plat-nomadik: pull-up/down settings for GPIO resume
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 <jonas.aberg@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:15 +01:00
Rabin Vincent
33b744b351 plat-nomadik: support secondary GPIO interrupts
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 <rabin.vincent@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:15 +01:00
Rabin Vincent
c84c7c08e3 plat-nomadik: implement suspend/resume for GPIO
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:15 +01:00
Rabin Vincent
d0b543c772 plat-nomadik: add custom dbg_show for GPIO
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:15 +01:00
Rabin Vincent
e493e06fed plat-nomadik: support varying number of GPIOs per block
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
[Added constant 32-pin assignment in platform data]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:14 +01:00
Linus Walleij
5d7b8467e1 mach-ux500: config Ux500 PL011 PL022 PL180 for DMA
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 <per.forlin@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:14 +01:00
Linus Walleij
ec8f12533b mach-u300: config U300 PL180 PL011 PL022 for DMA
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 <linus.walleij@linaro.org>
2011-03-14 14:05:13 +01:00
Linus Walleij
1a721859f8 mach-u300: use mmci driver for GPIO card detect
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 <linus.walleij@linaro.org>
2011-03-14 14:05:12 +01:00
Mian Yousaf Kaukab
741caea4e5 mach-ux500: add MUSB to db5500 devices
- 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 <mian-yousaf.kaukab@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:12 +01:00
Mian Yousaf Kaukab
6f3f3c3f0b mach-ux500: add MUSB to db8500 devices
- 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 <mian-yousaf.kaukab@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:12 +01:00
Mian Yousaf Kaukab
7f0709efe6 mach-ux500: update MUSB clock configurations
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 <mian-yousaf.kaukab@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:12 +01:00
Mian Yousaf Kaukab
07f201d8a3 mach-ux500: add platform data for musb
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 <mian-yousaf.kaukab@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:11 +01:00
Philippe Langlais
7863513efc mach-ux500: fix inverted SD-card GPIO pin
The levelshifter pins were set to inverted values, fix this up.

Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:11 +01:00
Philippe Langlais
fbdc6d11ae mach-ux500: set sd/mmc clock rate to 100MHz
The clock speed for the SD/MMC clock was incorrect, rectify it.

Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:11 +01:00
Lee Jones
bb3b218756 mach-ux500: Add Rohm BH1780GLI Light Sensor to i2c_board_info
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:11 +01:00
Philippe Langlais
dd7b2a0556 mach-ux500: platform data for LP5521 leds driver
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:11 +01:00
Philippe Langlais
a71b819b6e mach-ux500: platform data for SFH7741 proximity sensor driver
Proximity sensor is managed as an input event (SW_PROXIMITY).

Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
[Named GPIO pin]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:11 +01:00
Linus Walleij
b3f1f73d35 mach-ux500: delete old keypad board file
We register keypads per-UIB now, remove this.

Cc: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:11 +01:00
Sundar Iyer
71f933f4ef mach-ux500: add U8500 UIB platform data
The U8500 UIB contains a Synaptics RMI touchpanel and
a matrix keyboard via the TC35893 port expander device.

Signed-off-by: Sundar Iyer <sundar.iyer@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:10 +01:00
Sundar Iyer
0c24352ead mach-ux500: add ST-UIB platform data
The ST-UIB contains a matrix keypad interfaced with the
STMPE1601 port expander and a ROHM BU2101 touch panel.

Signed-off-by: Sundar Iyer <sundar.iyer@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:10 +01:00
Rabin Vincent
705e098444 mach-ux500: dynamic UIB (user interface boards) detection
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 <rabin.vincent@stericsson.com>
Signed-off-by: Sundar Iyer <sundar.iyer@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:10 +01:00
Sundar Iyer
871056e7df mach-ux500: fix ux500 build error
Include ab8500 regulators for DB8500 SoC by default
and fix build issues

Signed-off-by: Sundar Iyer <sundar.iyer@stericsson.com>
[Small fixup for changed boardfiles]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:09 +01:00
Linus Walleij
d1de85a231 mach-ux500: add a few AB8500 regulator consumers v3
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 <broonie@opensource.wolfsonmicro.com>
Cc: Rabin Vincent <rabin@rab.in>
Cc: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com>
Cc: Bengt Jonsson <bengt.g.jonsson@stericsson.com>
Cc: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:08 +01:00
Linus Walleij
df93f1f4ee mach-ux500: add DB5500 PMU resources
This adds the PMU resources necessary to get perf working with
the DB5500 ASIC.

Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-03-14 14:05:06 +01:00
Russell King
8688a1a863 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-tcc into devel-stable 2011-03-12 20:33:51 +00:00
Subhasish Ghosh
9a9fb12a48 davinci: macro rename DA8XX_LPSC0_DMAX to DA8XX_LPSC0_PRUSS.
DMAX is an internal name for the module which is
known as PRUSS in TI public documentation. This patch just
gets the code in sync with TI documentation.

Signed-off-by: Subhasish Ghosh <subhasish@mistralsolutions.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:29 -08:00
Sergei Shtylyov
b688c2fba5 davinci: DA850 EVM: kill useless variable
Commit 75e2ea643f (davinci: DA850/OMAP-L138 EVM
expander setup and UI card detection) introduced a useless variable: it's
always set to 1 before it's checked in da850_evm_setup_nor_nand()...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:29 -08:00
Sekhar Nori
16a3c8320a davinci: add spi devices support for da830/omap-l137/am17x evm
This patch adds the on-board SPI flash device to the
DA830/OMAP-L137/AM17x EVM. It also registers the SPI flash
device to the MTD subsystem.

Based on SPI flash device support for MityDSP-L138F platform.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
[michael.williamson@criticallink.com: moved da830evm_spi0_pdata to devices-da8xx.c]
[michael.williamson@criticallink.com: moved da830evm_init_spi0 to devices-da8xx.c]
Signed-off-by: Michael Williamson <michael.williamson@criticallink.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:29 -08:00
Sekhar Nori
fdce556806 davinci: add spi devices support for da850/omap-l138/am18x evm
This patch adds the on-board SPI flash device to the
DA850/OMAP-L138/AM18x EVM. It also registers the SPI flash
device to the MTD subsystem.

Based on SPI flash device support for MityDSP-L138F platform.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
[michael.williamson@criticallink.com: moved da850_evm_spi1_pdata to devices-da8xx.c]
[michael.williamson@criticallink.com: moved da850evm_init_spi1 to devices-da8xx.c]
Signed-off-by: Michael Williamson <michael.williamson@criticallink.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:29 -08:00
Michael Williamson
dd561c6a77 davinci: add spi devices support for MityDSP-L138/MityARM-1808 platform
This patch adds support for accessing the on board SPI NOR FLASH
device for MityDSP-L138 and MityARM-1808 SoMs.

Signed-off-by: Michael Williamson <michael.williamson@criticallink.com>
Tested-by: Michael Williamson <michael.williamson@criticallink.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:29 -08:00
Michael Williamson
54ce6883d2 davinci: da8xx: add spi resources and registration routine
Add IO resource structures, platform data, and a registration
routine in order to support spi device on DA850/OMAP-L138/AM18x
and DA830/OMAP-L137/AM17x platforms.

Signed-off-by: Michael Williamson <michael.williamson@criticallink.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:29 -08:00
Michael Williamson
12d35cf374 davinci: da850: add spi device clock definitions
Add spi clock information for da850.

Signed-off-by: Michael Williamson <michael.williamson@criticallink.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:28 -08:00
Michael Williamson
4918b40dc8 davinci: da830: fix driver name for spi clocks
The spi driver name called out for the da830 spi clock list is not correct,
fix it.

Signed-off-by: Michael Williamson <michael.williamson@criticallink.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:28 -08:00
Michael Williamson
e38c2b2226 davinci: da8xx: clean up magic numbers in devices-da8xx.c
Extract magic numbers from DMA resource initializers to #defines.

Signed-off-by: Michael Williamson <michael.williamson@criticallink.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:28 -08:00
Michael Williamson
e647198069 davinci: remove unused DA830_edma_ch enum
The DA830_edma_ch enum set is not used.  Remove it.

Signed-off-by: Michael Williamson <michael.williamson@criticallink.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-03-11 10:48:28 -08:00
Oskar Schirmer
f91f9cd505 arm: tcc8k: Fix bus clock calculation
There are two dividers used to derive bus clock from system clock:
system clock is divided by SCKDIV+1, then by BCKDIV+1. SCKDIV divider
has been ignored up to now, which is no problem as long as it is 0.

Take SCKDIV into account for bus clock calculation.

Signed-off-by: Oskar Schirmer <oskar@linutronix.de>
Cc: bigeasy@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2011-03-11 10:06:06 +01:00
Oskar Schirmer
cfeeb2f998 arm: tcc8k: Fix indent, coding syle
Remove double definition of ACLKUSBH, change parameter name in
root_clk_disable, as there is no reason to have a different name than
in root_clk_enable.

No functional change.

Signed-off-by: Oskar Schirmer <oskar@linutronix.de>
Cc: bigeasy@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2011-03-11 10:06:06 +01:00