Commit Graph

11221 Commits

Author SHA1 Message Date
Fabio Estevam 96cf4239c7 ARM: imx/mx27_3ds: Add USB OTG support
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-03 10:17:12 +01:00
Fabio Estevam 130a0ddad9 ARM: mx3/mx35_3ds: Add USB OTG Host mode
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-03 10:17:11 +01:00
Sascha Hauer 1fef891761 Merge branch 'sgu/mxs-core-v8' of git://git.pengutronix.de/git/ukl/linux-2.6 into imx-for-2.6.38-new 2011-01-03 10:15:11 +01:00
Richard Zhao d3d4b60b12 arm: mx50: add mx50 reference design board support
Add basic function and uart device support.

Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-03 09:39:30 +01:00
Richard Zhao 3d5a44be30 arm: mx50: add core functions support except clock
Add core definitions and memory map, gpio, irq, iomux, uart device
support.

Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-03 09:39:29 +01:00
Richard Zhao 02226a20bc arm: mx5: mx51/53 have different mxc_cpu_type definition
Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-03 09:38:28 +01:00
Richard Zhao dca3abf8d0 arm: mx51: define mx51's own MXC_GPIO_IRQS
mx5 SoCs have different GPIO port count.

Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-03 09:38:27 +01:00
Richard Zhao b086e97b20 arm: plat-mxc: add full parameter macro to define gpio port
Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-03 09:38:27 +01:00
Richard Zhao 626d90c884 ARM: mx5: use config to define boot related addresses
Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-03 09:38:27 +01:00
Shawn Guo 1d3f33d541 ARM: mxs: Add build configuration for mxs
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:30:44 +01:00
Shawn Guo 4afbbb7c1b ARM: mxs: Add initial mx28evk support
Add initial mx28evk support with duart and fec0.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:30:43 +01:00
Shawn Guo 55cf4183d3 ARM: mxs: Add initial mx23evk support
Add initial mx23evk support with duart.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:30:29 +01:00
Shawn Guo b9a2ada8ff ARM: mxs: Dynamically allocate fec devices
Dynamically allocate fec devices for MX28, which gets dual
fec interface.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:30:24 +01:00
Shawn Guo dc38ad4052 ARM: mxs: Dynamically allocate duart devices
Dynamically allocate duart devices for MX23 and MX28.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:30:24 +01:00
Shawn Guo faff3dc947 ARM: mxs: Add static memory mapping
Create static memory mapping for MX23 and MX28.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:30:23 +01:00
Shawn Guo 30a7585ff7 ARM: mxs: Add clock support
Add clock for MXS-based SoCs, MX23 and MX28.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:30:22 +01:00
Shawn Guo bf985969e2 ARM: mxs: Add iomux support
MXS-based SoCs implements iomux functions in block PINCTRL.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:29:58 +01:00
Shawn Guo fba311fcf0 ARM: mxs: Add gpio support
MXS-based SoCs implement gpio support in block PINCTRL.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:29:51 +01:00
Shawn Guo 4e472096fa ARM: mxs: Add timer support
There are 2 versions of the timrot on Freescale MXS-based SoCs.
The v1 on MX23 only gets 16 bits counter, while v2 on MX28
extends the counter to 32 bits.

The implementation uses two timers, one for clock_event and
another for clocksource. MX28 uses timrot 0 and 1, while MX23
uses 0 and 2.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:29:50 +01:00
Shawn Guo 41fa75bc09 ARM: mxs: Add low-level debug UART support
- DEBUG_LL support, which is incompatible with multi-soc MXS image
   because of different DUART base address on MX23 and MX28
 - uncompress message support

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 17:29:23 +01:00
Shawn Guo 289569f902 ARM: mxs: Add interrupt support
Add Interrupt Collector (ICOLL) support for MXS-based.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 10:37:56 +01:00
Shawn Guo 65d7d94405 ARM: mxs: Add reset routines
- The mxs wdog is implemented in RTC block.
 - There is a generic software reset routine for most modules on mxs.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-20 10:37:52 +01:00
Sascha Hauer ee1ae4d7b1 ARM i.MX51: Full iomux support
This iomux file has been constructed from the Freescale pinmux tool.
It contains all pins from the tool, but the datasheet lists some
configurations not present in the tool, these are not yet added.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-15 14:42:23 +01:00
Lothar Waßmann 96f3e25684 MXC IOMUX-V3 replace struct pad_desc with bitmapped cookie (step 2)
This patch actually replaces the 'struct pad_desc' with a u64 cookie
to facilitate adding platform specific pad_ctrl settings to an
existing pad definition.

So, instead of:
	iomux_v3_cfg_t power_key = MX51_PAD_EIM_A27__GPIO_2_21;
	power_key.pad_ctrl = MX51_GPIO_PAD_CTRL_2;
	mxc_iomux_v3_setup_pad(&power_key);
one can write:
	mxc_iomux_v3_setup_pad((MX51_PAD_EIM_A27__GPIO_2_21 & ~MUX_PAD_CTRL_MASK) | MX51_GPIO_PAD_CTRL_2);

Patch applies to branch 'imx-for-2.6.38' of git://git.pengutronix.de/git/imx/linux-2.6

Signed-Off-By: Lothar Waßmann <LW@KARO-electronics.de>

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-15 12:42:49 +01:00
Fabio Estevam 28a4f908ac ARM: mx5: check for error in ioremap
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 09:55:53 +01:00
Arnaud Patard (Rtp) bb477de2ef Fix imx cpufreq driver as module
When building as module:
ERROR: "cpufreq_gov_performance" [arch/arm/plat-mxc/cpufreq.ko] undefined!
WARNING: modpost: Found 1 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

It's due to the driver using CPUFREQ_DEFAULT_GOVERNOR, even it should not
(see commit 8122c6cea0 in Linus tree), so
remove it.

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 09:54:38 +01:00
Peter Horton cdc3f10630 mx51: support FIQ on TZIC, revised
Add support for FIQ on mx51 TZIC

TZIC changes tested with FIQ audio on an mx51 board

AVIC changes build with mx3_defconfig, not tested

Signed-off-by: Peter Horton <phorton@bitbox.co.uk>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 09:54:37 +01:00
Fabio Estevam 8be9252f7c ARM: imx/mx27_3ds: Add watchdog support
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 09:54:37 +01:00
Fabio Estevam bfdde3a90b ARM: mx3/mx31_3ds: Add watchdog support
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 09:54:35 +01:00
Peter Horton f25972233f mx51: add SSI3
Add SSI3 to MX51

Signed-off-by: Peter Horton <phorton@bitbox.co.uk>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 09:54:35 +01:00
Fabio Estevam 2c1f4672f0 watchdog: imx: use clk_get to acquire the watchdog clock
Use clk_get to acquire the watchdog clock and also avoid hardcoding the clock name.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 09:54:19 +01:00
Shawn Guo fb410aef03 ARM: mxs: Add helper definition and function
Add helper definition and function for MXS-based.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-13 14:49:50 +01:00
Shawn Guo b0b6e42aa6 ARM: mxs: Add core definitions
Add core definitions for MXS-based SoC MX23 and MX28.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-12-13 14:49:10 +01:00
Fabio Estevam a96efbc1fc ARM: mx5/mx51_babbage: Add watchdog support
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-07 20:03:12 +01:00
Fabio Estevam 7f77f91dc0 ARM: mx5: add watchdog clocks
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-07 20:03:12 +01:00
Fabio Estevam 8c2efec3cd ARM: mx5: add support for the two watchdog modules
MX51 has two watchdog modules.

Add support for both of them.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-07 20:03:11 +01:00
Olof Johansson da8f2e2461 ARM: tegra: fix regression from addruart rewrite
Commit 0ea1293009 ("arm: return both physical and virtual addresses
from addruart") took out the test for MMU on/off but didn't switch the
ldr instructions to no longer be conditionals based on said test.

Fix that.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Colin Cross <ccross@android.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-12-06 20:07:57 -08:00
Linus Torvalds 60658f8a29 Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm:
  ARM: 6524/1: GIC irq desciptor bug fix
  ARM: 6523/1: iop: ensure sched_clock() is notrace
  ARM: 6456/1: Fix for building DEBUG with sa11xx_base.c as a module.
  ARM: 6519/1: kuser: Fix incorrect cmpxchg syscall in kuser helpers
  ARM: 6505/1: kprobes: Don't HAVE_KPROBES when CONFIG_THUMB2_KERNEL is selected
  ARM: 6508/1: vexpress: Correct data alignment in headsmp.S for CONFIG_THUMB2_KERNEL
  ARM: 6507/1: RealView: Correct data alignment in headsmp.S for CONFIG_THUMB2_KERNEL
  ARM: 6504/1: Thumb-2: Fix long-distance conditional branches in head.S for Thumb-2.
  ARM: 6503/1: Thumb-2: Restore sensible zImage header layout for CONFIG_THUMB2_KERNEL
  ARM: 6502/1: Thumb-2: Fix CONFIG_THUMB2_KERNEL breakage in compressed/head.S
  ARM: 6501/1: Thumb-2: Correct data alignment for CONFIG_THUMB2_KERNEL in mm/proc-v7.S
  ARM: 6500/1: Thumb-2: Correct data alignment for CONFIG_THUMB2_KERNEL in kernel/head.S
  ARM: 6499/1: Thumb-2: Correct data alignment for CONFIG_THUMB2_KERNEL in bootp/init.S
  ARM: 6498/1: vfp: Correct data alignment for CONFIG_THUMB2_KERNEL
  ARM: 6497/1: kexec: Correct data alignment for CONFIG_THUMB2_KERNEL
  ARM: 6496/1: GIC: Do not try to register more then NR_IRQS interrupts
  ARM: cns3xxx: Fix build with CONFIG_PCI=y
2010-12-06 14:49:51 -08:00
Russell King f444a57ca1 Merge branch 'for-rmk-fixes' of git://git.infradead.org/users/cbou/linux-cns3xxx 2010-12-06 15:39:23 +00:00
Chao Xie 87507500b7 ARM: 6524/1: GIC irq desciptor bug fix
gic_set_cpu will directly use irq_desc[]. If CONFIG_SPARSE_IRQ is
enabled, there is no irq_desc[]. So we need use irq_to_desc(irq) to
get the descriptor for irq.

Signed-off-by: Chao Xie <chao.xie@marvell.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-06 11:03:31 +00:00
Sascha Hauer 0e44e05958 Merge commit 'v2.6.37-rc4' into imx-for-2.6.38
Done to resolve merge conflict:

Conflicts:
	arch/arm/mach-mx25/devices-imx25.h

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-06 09:36:17 +01:00
Rabin Vincent a5542a0f9a ARM: 6523/1: iop: ensure sched_clock() is notrace
Include sched.h to ensure sched_clock() has the notrace
annotation, and mark any functions it calls as notrace
too.
Include sched.h to ensure sched_clock() has the notrace
annotation, and mark any functions it calls as notrace
too.

Acked-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-04 13:36:29 +00:00
Dave Martin 55afd264cd ARM: 6519/1: kuser: Fix incorrect cmpxchg syscall in kuser helpers
The existing code invokes the syscall with rubbish in r7,
due to what looks like an incorrect literal load idiom.

Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Dave Martin <dave.martin@linaro.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-04 11:01:12 +00:00
Arnaud Patard (Rtp) 96886c4361 iMX51: introduce IMX_GPIO_NR
Currently, to define a GPIO number, we're using something like :

#define EFIKAMX_PCBID0         (2*32 + 16)

to define GPIO 3 16.

This is not really readable and it's error prone imho (note the 3 vs 2).
So, I'm introducing a new macro to define this in a better way. Now, the
code sample become :

#define EFIKAMX_PCBID0         IMX_GPIO_NR(3, 16)

v2:
- move to gpio.h
- add parens & spaces
- switch to IMX_GPIO_NR instead of MX51_GPIO_NR

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Cc: Amit Kucheria <amit.kucheria@linaro.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Eric Bénard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-03 11:05:16 +01:00
Fabio Estevam b99545cb59 ARM: mx5: dynamically allocate imx2-wdt devices
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-03 11:05:15 +01:00
Fabio Estevam d94ed1287e ARM: mx5: introduce SOC_IMX51
Introduce SOC_IMX51 to keep consistency with the other i.MX devices

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-03 11:05:13 +01:00
Vasiliy Kulikov abebbb4680 arm: dma: check clk_get() result
clk_get() may return ERR_PTR(), if so propagate return code as
imx_dma_init() return code.

Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-03 11:05:12 +01:00
Arnaud Patard (Rtp) 0ef51953be mx5: Fix efikamx build
Commit 124bf94a "ARM: imx: fix name for functions adding sdhci-esdhc-imx devices"
changed some devices and Kconfig entry and didn't change every places
it should have. It's breaking efikamx build. I've fixed 3ds Kconfig
entry as I believe it's broken there too.

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-03 11:05:11 +01:00
Uwe Kleine-König 4c6c32b3f8 ARM: mx25: fix offset for usb host controller
In commit 2c20b9f (ARM: mx25: dynamically allocate mxc-ehci devices) I
changed the offset to the value specified in the reference manual
intending to test this change on hardware.  This slipped through and now
prooved to be wrong.  So fix it and add a comment about the
documentation being wrong.

Reported-by: Jaume Ribot <jaume@fqingenieria.es>
Cc: Michael Trimarchi <trimarchi@gandalf.sssup.it>
Cc: Shawn Guo <shawn.gsc@gmail.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-03 11:05:10 +01:00
Eric Bénard 29bb6afcb0 plat-mxc/ehci.c: fix compile breakage
commits 2eb42d5c28 and
9e1dde3387 renamed some defines
but didn't fix all the places where these defines are used
leading to a compile failure for USB on i.MX31, 35 and 27.

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-03 11:05:09 +01:00