Commit Graph

9132 Commits

Author SHA1 Message Date
Tony Lindgren
58310acd3a omap: mux: Mux 2430 USB0HS_STP in board-2430.c
Use new mux functions for that. There are no other known 2430 boards
that need this mux.

Cc: Felipe Balbi <felipe.balbi@nokia.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:39 +03:00
Tony Lindgren
18dbe6c5dd omap: mux: Mux Apollon LCD power in board-apollon.c
Use the new mux function for that.

Cc: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:39 +03:00
Tony Lindgren
93c43f2561 omap: mux: Do keypad muxing in board-*.c files
This way we get pin muxing out of plat-omap and can convert H4 to use the
new mux functions.

Note that it should be safe to assume we can mux all the keypad pins
except on H4 which may have Menelaus connected.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:39 +03:00
Tony Lindgren
0d600ff6fe omap: mux: Make omap2 FS USB code use new mux functions
Make omap2 FS USB code use new mux functions. Do not mux usb2_tllse0
as it has multiple options.

Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:38 +03:00
Tony Lindgren
369ed78fc9 omap: mux: Select POP package for 2430SDP
Select POP package for 2430SDP

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:38 +03:00
Tony Lindgren
bd8f0fc979 omap: mux: Select POP package for N8X0
Select POP package for N8X0

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:38 +03:00
Tony Lindgren
b52b14ef0d omap: mux: Select POP package for Apollon
Select POP package for Apollon

Cc: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:37 +03:00
Tony Lindgren
23275d459e omap: mux: Select SIP package for H4
Select SIP package for H4

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:37 +03:00
Tony Lindgren
89ba109229 omap: mux: Add data for 2430
Add data for 2430. Big thanks to Paul Walmsley <paul@pwsan.com>
for generating usable mux data out of TRMs.

Cc: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:36 +03:00
Tony Lindgren
fc44046167 omap: mux: Add data for 2420
Add data for 2420. Big thanks to Paul Walmsley <paul@pwsan.com>
for generating usable mux data out of TRMs.

Cc: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:36 +03:00
Tony Lindgren
ac1c94fb85 omap: mux: Remove unncessary parens from mux34xx.c
Remove unncessary parens from mux34xx.c

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:36 +03:00
Tony Lindgren
ac3dbeefb8 omap: mux: Allow compiling in new mux code on all mach-omap2 systems
Allow compiling in new mux code on all mach-omap2 systems

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:36 +03:00
Tony Lindgren
6dd8a6824a omap: mux: Renumber package defines to make room for older 24xx packages
Only POP and SIP are known to exist for 2420, 2430 seems to only have
SIP package available.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:35 +03:00
Tony Lindgren
d5425be6eb omap: mux: Fix omap_mux_init_gpio for omap24xx
Looks like 24xx uses mode3 instead of mode4 for muxable GPIO pins.
This will be needed when 24xx mux code is converted to use the new
mux functions.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:35 +03:00
Tony Lindgren
dd0cdd8882 omap: Move omap1 USB platform init code into mach-omap1/usb.c
Move omap1 FS USB platform init code into mach-omap1/usb.c

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:30 +03:00
Tony Lindgren
9809383930 omap: Enable interface clock for omap2 FS USB
Looks like this code was only working on boards that had
the usb_l4_ick enabled in the bootloader.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:29 +03:00
Tony Lindgren
b5e8905bcd omap: Move omap2 FS USB platform init code into mach-omap2/usb-fs.c
Move omap2 FS USB platform init code into mach-omap2/usb-fs.c. This will
allow further work later on to use omap hwmod for initializing the
device.

Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:29 +03:00
Tony Lindgren
dba638d22d omap: Separate out omap2 FS USB platform init functions
We want to split old FS USB platform init code and stop doing pin multiplexing
under plat-omap. First move 24xx specific init code into omap2_usb[012]_init
functions.

Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-07-05 16:31:28 +03:00
Tony Lindgren
f40fd0e215 Merge branch 'v2.6.35-rc3-iommu-for-next' of git://gitorious.org/~doyu/lk/mainline into omap-for-linus 2010-07-02 11:23:30 +03:00
Linus Torvalds
c01ec7b1ea Merge branch 'omap-fixes-for-linus' of 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-30 15:44:21 -07:00
Kanigeri, Hari
1fd7f46712 omap iommu: update ducati mmu irq define name
2.6.34-rc6 kernel has the Ducati mmu irq define name changed, which is
resulting in compilation error.

Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
2010-06-29 07:55:08 +03:00
Hiroshi DOYU
0bbc6fcff6 omap iommu: Make omap-iommu.o built-in
This is a platform device registration.

Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
2010-06-29 07:55:07 +03:00
Hiroshi DOYU
37b298100f omap iommu: move iommu_disable at fault to the above layer
The function prefix "omap2_iommu_" indicates that the prefixed
function belongs to "omap2_iommu_ops" to provide iommu basic
functionalities for the above layers. It's better to avoid the
prefixed function called in the same prefixed ones internally, like
nested here. Now "iommu_disable" is called just after fault_isr() in
the above layer. This is a little bit more sensible to keep the
consistency of module layers.

Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
2010-06-29 07:55:07 +03:00
Kanigeri, Hari
ddfa975a8c omap iommu: add functionality to get TLB miss interrupt
In order to enable TLB miss interrupt, the TWL should be
disabled. This patch provides the functionality to get the
MMU fault interrupt for a TLB miss in the cases where the
users are working with the locked TLB entries and with TWL
disabled.
New interface is added to select twl and to enable TLB miss
interrupt.

Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
Signed-off-by: Ramesh Gupta <grgupta@ti.com>
Signed-off-by: Hiroshi Doyu <Hiroshi.DOYU@nokia.com>
2010-06-29 07:55:07 +03:00
Kanigeri, Hari
993dd17e32 omap iommu: update irq mask to be specific about twl and tlb
Revise the IRQ mask definitions to handle the  MMU faults related
to TWL fault as well as TLB miss fault.

Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
Signed-off-by: Hiroshi Doyu <Hiroshi.DOYU@nokia.com>
2010-06-29 07:55:06 +03:00
Hiroshi DOYU
124933599a omap iommu: Rename iopte_[p,v]addr -> iopte_page_[p,v]addr
Follow Linux pagetable accessor name convention.

Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
2010-06-29 07:55:05 +03:00
Hiroshi DOYU
a1a54456d0 omap iommu: Introduce iopgd_is_table MACRO
A bit more strict comparison.

Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
2010-06-29 07:55:04 +03:00
Tony Lindgren
41bd03ba07 Merge branch 'for_2.6.35rc' of git://git.pwsan.com/linux-2.6 into omap-fixes-for-linus 2010-06-28 15:47:04 +03:00
Tejun Heo
68aaae9e95 arm: update gfp/slab.h includes
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-28 10:19:18 +10:00
Benoit Cousson
dc75925d67 OMAP: hwmod: Fix the missing braces
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-23 18:15:12 -06:00
Santosh Shilimkar
090830b4c7 OMAP4: clock: Fix multi-omap boot with reset un-used clocks
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-16 19:01:33 +03:00
Linus Torvalds
7c8d20d40f Merge master.kernel.org:/home/rmk/linux-2.6-arm
* 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-10 07:35:41 -07:00
Kevin Hilman
0b96a3a3c5 OMAP3: PM: fix IO daisy chain enable to use PM_WKEN reg
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-10 15:37:41 +03:00
Kevin Hilman
f7ec0b0b16 omap: GPIO: fix auto-disable of debounce clock
The addition of the new debounce code (commit
168ef3d9a5) 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-10 15:37:41 +03:00
Tero Kristo
856f191451 omap: DMTIMER: Ack pending interrupt always when stopping a timer
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-10 15:37:41 +03:00
Santosh Shilimkar
99716b662b omap: Stalker board: switch over to gpio_set_debounce
Commit 48feb33747 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-09 13:53:05 +03:00
Amit Kucheria
bfb0119758 omap: fix build failure due to missing include dma-mapping.h
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-09 13:53:05 +03:00
Satish
7f1225bd6e omap iommu: Fix Memory leak
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-09 13:21:27 +03:00
Khem Raj
9a40ac8615 ARM: 6164/1: Add kto and kfrom to input operands list.
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-08 19:42:18 +01:00
Russell King
76962be849 Merge branch 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 2010-06-08 19:40:08 +01:00
Anfei
5e27fb78df ARM: 6166/1: Proper prefetch abort handling on pre-ARMv6
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-08 19:39:57 +01:00
Nicolas Pitre
17ebba1fe4 ARM: 6165/1: trap overflows on highmem pages from kmap_atomic when debugging
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-08 19:25:50 +01:00
Linus Walleij
b394eebdd3 ARM: 6152/1: ux500 make it possible to disable localtimers
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-08 19:25:49 +01:00
Daniel Walker
6d7b7d578f msm: dma: add completion.h header
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-06-07 16:16:33 -07:00
Marek Vasut
d30e5d897c [ARM] pxa/spitz: Correctly register WM8750
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 12:03:45 +08:00
Tobias Klauser
600ae40df7 [ARM] pxa/palmtc: storage class should be before const qualifier
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-31 12:03:44 +08:00
Linus Torvalds
17d30ac077 Merge branch 'for-next' of 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-30 09:13:08 -07:00
Linus Torvalds
e38c1e54ce Merge branch 'next' of 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-30 09:12:43 -07:00
Ben Dooks
ece8ae4932 ARM: Merge for-2635/defconfig3
Merge branch 'for-2635/defconfig3' into for-linus/2635-updates
2010-05-28 19:34:02 +09:00
Ben Dooks
2992bc0668 ARM: s3c2410_defconfig: Add new machines
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-28 19:33:05 +09:00