Commit Graph

725 Commits

Author SHA1 Message Date
Shawn Guo a1f1c7efb0 arm/imx6q: add suspend/resume support
It adds suspend/resume support for imx6q.

Signed-off-by: Anson Huang <b20788@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2011-10-31 14:26:27 +01:00
Shawn Guo 13eed9897a arm/imx6q: add device tree machine support
It adds generic device tree based machine support for imx6q.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2011-10-31 14:26:26 +01:00
Shawn Guo 69c31b7a6e arm/imx6q: add smp and cpu hotplug support
It adds smp and cpu hotplug support for imx6q.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2011-10-31 14:26:24 +01:00
Shawn Guo 1103643c26 arm/imx: add gic_handle_irq function
This is a plain translation of assembly gic irq handler to C function
for CONFIG_MULTI_IRQ_HANDLER support on imx family.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2011-10-31 14:26:22 +01:00
Shawn Guo bac89d754b arm/imx6q: add core definitions and low-level debug uart
It adds the core definitions and low-level debug uart support
for imx6q.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2011-10-31 14:26:21 +01:00
Arnd Bergmann ccfa8b21f2 Merge branch 'cross-platform/debug_ll' into imx/imx6q
Conflicts:
	arch/arm/Kconfig.debug
2011-10-31 14:24:41 +01:00
Arnd Bergmann 7e0cac630c Merge branch 'imx/devel' into imx/imx6q
Conflicts:
	arch/arm/plat-mxc/include/mach/memory.h
2011-10-31 14:24:28 +01:00
Arnd Bergmann b4cbb8a4e6 Merge branch 'imx-features-for-arnd' of git://git.pengutronix.de/git/imx/linux-2.6 into imx/devel
Conflicts:
	arch/arm/mach-mx5/clock-mx51-mx53.c
	arch/arm/mach-mx5/devices-imx53.h
2011-10-20 15:14:25 +02:00
Shawn Guo f350b86121 arm/imx: use Kconfig choice for low-level debug UART selection
Now that the DEBUG_LL UART can be selected by a Kconfig choice,
simplify the #ifdefery in debug-macro.S and add entries to the
top-level Kconfig.debug instead.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2011-10-17 10:02:52 +01:00
Nicolas Pitre c039bad00f ARM: plat-mxc: remove mach/memory.h
Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
2011-10-13 12:49:50 -04:00
Arnd Bergmann 526b264163 Merge branch 'imx/cleanup' into imx/devel
This helps resolve the conflicts between the imx cleanups and the
new code that has gone into the imx tree.
Conflict resolution was originally done by Sascha Hauer.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2011-10-07 21:57:31 +02:00
Richard Zhu 97915bdf3c AHCI Add the AHCI SATA feature on the MX53 platforms
Signed-off-by: Richard Zhu <richard.zhu@linaro.org>
Tested-by: Hector Oron Martinez <hector.oron@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-10-07 14:42:55 +02:00
Sascha Hauer 05d900c9d8 Merge branches 'cleanups/mx3-mm-v2' and 'cleanups/mxs' into imx-cleanup 2011-10-04 10:55:53 +02:00
Shawn Guo f548897ffc arm/imx: remove cpu_is_xxx() check from __imx_ioremap()
This patch adds an ioremap hook imx_ioremap to be called in
__imx_ioremap().  Any soc that needs a customized ioremap other
than __arm_ioremap() can set up this hook in soc specific call.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-10-04 10:55:12 +02:00
Shawn Guo 41e7daf27a arm/imx: remove cpu_is_xxx() from arch_idle()
This patch adds an idle hook imx_idle to be called in arch_idle().
Any soc that needs a customized idle implementation other than
cpu_do_idle() can set up this hook in soc specific call.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-10-04 10:55:06 +02:00
Sascha Hauer ca4e419c20 Merge branches 'features/assorted', 'features/imx-pata' and 'features/imx-multi-irq-v2' into imx-features
Conflicts:
	arch/arm/plat-mxc/avic.c
	arch/arm/plat-mxc/include/mach/common.h

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-29 10:40:29 +02:00
Nicolas Pitre 639da5ee37 ARM: add an extra temp register to the low level debugging addruart macro
Some platforms (like OMAP not to name it) are doing rather complicated
hacks just to determine the base UART address to use.  Let's give their
addruart macro some slack by providing an extra work register which will
allow for much needed cleanups.

This is basically a no-op as this commit is only adding the extra argument
to the macro but no one is using it yet.

Signed-off-by: nicolas Pitre <nicolas.pitre@linaro.org>
Reviewed-by: Kevin Hilman <khilman@ti.com>
2011-09-26 10:11:25 -04:00
Sascha Hauer 05822c83d2 ARM i.MX entry-macro.S: remove now unused code
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-26 11:40:36 +02:00
Sascha Hauer 58a926008c ARM i.MX tzic: add handle_irq function
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-26 11:40:35 +02:00
Sascha Hauer b6de943bdf ARM i.MX avic: add handle_irq function
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-26 11:40:35 +02:00
Jason Liu 6132ae8154 ARM: mx25: Add the missing IIM base definition
This fix the mx25 building issue of no IIM base definition

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-23 08:44:50 +02:00
Hui Wang 3439a397a8 ARM i.MX avic: convert to use generic irq chip
Convert i.MX avic irq handler to use generic irq chip. This not only
provides a cleanup implementation of irq chip handler, but also
implements suspend/resume interface with the help of generic irq chip
interface.

Change mxc_irq_chip to a new structure mxc_extra_irq to handle fiq
and priority functions.

Signed-off-by: Hui Wang <jason77.wang@gmail.com>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-23 08:32:14 +02:00
Philippe Rétornaz 40d97b89bd mx31moboard: Add poweroff support
This patch add poweroff support on mx31moboard platform.
A watchdog timeout is generated while enabling the watchdog
reset IO to trigger a PMIC poweroff.

Signed-off-by: Philippe Rétornaz <philippe.retornaz@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-20 14:53:00 +02:00
Sascha Hauer 6da5ce1728 Merge branches 'cleanups/assorted' and 'cleanups/mm-tzic' into imx-cleanup
Conflicts:
	arch/arm/mach-mx5/Makefile

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-20 10:09:08 +02:00
Jason Liu 4c54239058 ARM: mx5/mm: consolidate TZIC map code
Use a static mapping for TZIC to get rid of the duplicated code for
ioremap and the corresponding error handling. This is already done on
i.MX50.

This patch also removes TZIC mapping for i.mx51 TO1 since
there is no support for TO1 now since the following commit:
9ab4650 (ARM: imx: Get the silicon version from the IIM module)

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2011-09-20 09:55:06 +02:00
Jason Liu 281e10da20 ARM: mx5/mm: Remove MX51_DEBUG related mapping
MX51_DEBUG related mapping is dead code, no-one uses it

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2011-09-20 09:54:58 +02:00
Arnaud Patard (Rtp) 318007e900 Fix pata imx resource
Commit 236c4e8be4
"ARM: imx: Add PATA resources for other i.MX processors"
has broken resource declaration of pata_imx device by using iobase instead of
iosize.

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-27 20:31:06 +02:00
Sascha Hauer e93aabb552 Merge branches 'features/assorted', 'features/imx-cpurev', 'features/imx-pata', 'features/multisoc' and 'features/mxs' into imx-features-for-arnd 2011-08-26 10:10:12 +02:00
Sascha Hauer 04871e9348 Merge branches 'cleanups/assorted', 'cleanups/shawn-cleanup-mxc-gpio', 'cleanups/troy-cleanup-iomux-v3' and 'cleanups/ukl-mx5-dynamically-allocate-devices' into imx-cleanups-for-arnd 2011-08-26 10:09:31 +02:00
Sascha Hauer 56c6b8721f ARM i.MX audmux v2: remove unnecessary ifdefs
These were present to be able to compile this file on different
SoCs. They are not needed anymore.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-26 10:02:28 +02:00
Jason Liu 8d75a2620d ARM: mx35: use generic function for displaying silicon revision
update to use generic function for displaying silicon revision

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-26 08:50:59 +02:00
Jason Liu ab116a86fa ARM: mx31: use generic function for displaying silicon revision
Update to use generic function for displaying silicon revision

Tested on mx31pdk board as print the following information:
CPU identified as i.MX31, silicon rev 2.0

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-26 08:50:59 +02:00
Jason Liu d27536c661 ARM: mx25: Print silicon revision on boot
Silicon revision is useful information to have during kernel boot.
Print the MX25 silicon revision.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-26 08:50:58 +02:00
Fabio Estevam 059e58f6f3 ARM: imx: Introduce generic function for displaying silicon revision
Currently each i.MX processor has its own function for displaying the silicon
revision.

Introduce a generic function for this purpose, so that all i.MX processors can
reuse it.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-26 08:50:58 +02:00
Fabio Estevam 236c4e8be4 ARM: imx: Add PATA resources for other i.MX processors
MX27/31/35/53 also have PATA block.

Add PATA resources for them.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-24 10:11:40 +02:00
Fabio Estevam 97f453136e ARM: imx: pwm: Add support for MX53
Instead of adding the check for MX53 CPU type, use the negative logic and let
PWM to be configured for MX53 as well.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-24 10:10:41 +02:00
Sascha Hauer 7409cd1cd5 ARM i.MX: allow to compile together all i.MX5 based SoCs
For this we need CONFIG_AUTO_ZRELADDR and CONFIG_ARM_PATCH_PHYS_VIRT.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-24 09:24:50 +02:00
Sascha Hauer ae4fa7f66e ARM i.MX: allow to compile together ARMv4 and ARMv5 based SoCs
For this we need CONFIG_AUTO_ZRELADDR and CONFIG_ARM_PATCH_PHYS_VIRT.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-24 09:24:43 +02:00
Arnaud Patard (Rtp) a45adf1ce8 imx51: add pata device
Declare the pata device found on mx51

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-23 08:55:01 +02:00
Jon Medhurst 389d12cc7f ARM: mxc: Remove setting of consistent dma size
All in-tree MX boards using video use memblock_* functions to get their
coherent dma space for the camera. So there is no need to increase
CONSISTENT_DMA_SIZE beyond the default 2MB and we can simply remove the
defines which do this.

Signed-off-by: Jon Medhurst <tixy@yxit.co.uk>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-22 12:00:11 +00:00
Troy Kisky 4ab371539b ARM: i.MX53: clean up iomux-mx53.h
Delete about 1,000 symbols used only once

I used the following script to clean up the file.

cp iomux-mx53.h iomux-mx53.h.cpy

sed -n iomux-mx53.h.cpy \
-e 's/#define[ \x09]\+\(_MX5[0-9a-zA-Z_]*\)[ \x09]\+\(.\+\)/s@\1@\2@g/p' >t.tmp

sed iomux-mx53.h.cpy \
-e '/define[ \x09]\+_MX5/d' \
-f t.tmp \
-e 's/,[ \x09]*\([^,]\+\)/, \1/g' \
-e 's/, 0)[ \x09]*|[ \x09]*MUX_PAD_CTRL(/, /' \
-e 's/(IOMUX_PAD(\(.*\)))/IOMUX_PAD(\1)/' \
-e 's/0x\([0-9a-fA-F]\{2\}\)[ \x09]*,/0x0\1,/' \
-e 's/NON_PAD_I/__NA_/' \
-e 's/0x0,/__NA_,/' \
-e 's/#define[ \x09]\+\(MX5[0-9a-zA-Z_]*\)[ \x09]\+\(IOMUX_PAD.\+\)/#define \1\x09\2/' \
-e 's/\(#define MX5[^\x09]\{5,12\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\x09\x09\x09\x09\2/' \
-e 's/\(#define MX5[^\x09]\{13,20\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\x09\x09\x09\2/' \
-e 's/\(#define MX5[^\x09]\{21,28\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\x09\x09\2/' \
-e 's/\(#define MX5[^\x09]\{29,36\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\x09\2/' \
-e 's/\(#define MX5[^\x09]\{45,\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\\\n\x09\x09\x09\x09\x09\x09\x09\2/' \
-e 's/, IOMUX_CONFIG_SION,/, 0 | IOMUX_CONFIG_SION,/' >iomux-mx53.h

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-17 08:43:32 +02:00
Troy Kisky 315046d017 ARM: i.MX51: clean up iomux-mx51.h
Delete about 700 used only once symbols.

I used the following script to clean up the file,
iomux-mx51.h.

cp iomux-mx51.h iomux-mx51.h.cpy

sed -n iomux-mx51.h.cpy \
-e 's/#define[ \x09]\+\(_MX5[0-9a-zA-Z_]*\)[ \x09]\+\(.\+\)/s@\1@\2@g/p' >t.tmp

sed iomux-mx51.h.cpy \
-e '/define[ \x09]\+_MX5/d' \
-f t.tmp \
-e 's/,[ \x09]*\([^,]\+\)/, \1/g' \
-e 's/, 0)[ \x09]*|[ \x09]*MUX_PAD_CTRL(/, /' \
-e 's/(IOMUX_PAD(\(.*\)))/IOMUX_PAD(\1)/' \
-e 's/0x\([0-9a-fA-F]\{2\}\)[ \x09]*,/0x0\1,/' \
-e 's/0x0\([0-9a-fA-F]\{3\}\)[ \x09]*,/0x\1,/' \
-e '/#include <mach\/iomux-v3.h/ a#define __NA_\x090x000\n' \
-e 's/0x[0]\{1,3\},/__NA_,/' \
-e 's/#define[ \x09]\+\(MX5[0-9a-zA-Z_]*\)[ \x09]\+\(IOMUX_PAD.\+\)/#define \1\x09\2/' \
-e 's/\(#define MX5[^\x09]\{5,12\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\x09\x09\x09\2/' \
-e 's/\(#define MX5[^\x09]\{13,20\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\x09\x09\2/' \
-e 's/\(#define MX5[^\x09]\{21,28\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\x09\2/' \
-e 's/\(#define MX5[^\x09]\{29,36\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\2/' \
-e 's/\(#define MX5[^\x09]\{45,\}\)\x09\(IOMUX_PAD.\+\)/\1\x09\\\n\x09\x09\x09\x09\x09\x09\2/' \
-e 's/, IOMUX_CONFIG_SION,/, 0 | IOMUX_CONFIG_SION,/' \
-e 's/\((0x[0-9a-fA-F]*, 0x[0-9a-fA-F]*, \)0x0\([0-9a-fA-F]\{2\},\)/\10x\2/' >iomux-mx51.h

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-17 08:41:23 +02:00
Troy Kisky 7242e24a0f ARM: i.MX51: Remove _MX51_PAD_xxx references
Use new macro NEW_PAD_CTRL to remove _MX51_PAD_xxx references.
A later patch will remove the _MX51_PAD_xxx symbols.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-17 08:41:22 +02:00
Shawn Guo 1dfa86bb9d arm/mxc: move IMX_GPIO_NR into mach/hardware.h
The patch moves IMX_GPIO_NR into mach/hardware.h, so that we only
use standard gpiolib helpers in mach/gpio.h.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-17 08:31:57 +02:00
Shawn Guo a439561229 gpio/mxc: move irq_to_gpio() into gpio-mxc driver
As irq_to_gpio() is only being used by gpio-mxc driver, it should be
moved from mach/gpio.h into gpio-mxc.c.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-17 08:31:04 +02:00
Shawn Guo df1bac2e2f arm/mxc: use gpiolib helper for gpio_to_irq
As all the users of gpio_to_irq() in static initializers have been
migrated to IMX_GPIO_TO_IRQ, we can start using the standard gpiolib
helper for gpio_to_irq().

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-17 08:29:53 +02:00
Shawn Guo e309fb1864 arm/mxc: do not use gpio_to_irq() for static initializers
The patch defines IMX_GPIO_TO_IRQ() in mach/hardware.h and replaces
all the uses of gpio_to_irq() in static initializers with
IMX_GPIO_TO_IRQ().

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-16 09:00:36 +02:00
Arnaud Patard (Rtp) d9c927833a iMX: Fix build for iMX53
Commit fad107086d fixed the wrong test for MX51
as the MX51 addresses are wrong for MX50 and MX53 but now it's MX51 only,
UART_PADDR is not defined anymore when building for MX50/MX53.

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Tested-by: Steev Klimaszewski <steev@genesi-usa.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-08 08:38:45 +02:00
Sascha Hauer 1a43f20124 Merge commit 'v3.1-rc1' into imx-fixes 2011-08-08 08:22:41 +02:00
Sascha Hauer c61daf6b0a Merge branch 'imx-cleanup' of git://git.pengutronix.de/git/ukl/linux-2.6 into imx-cleanup 2011-08-03 09:42:39 +02:00