Commit Graph

327 Commits

Author SHA1 Message Date
Alberto Panizzo c194daad0e ARM: mx3/mach-pcm037_eet: Fix section mismatch for eet_init_devices()
This function should be marked as __init because it is used only
in the init phase.

This fix the compiler warning:
 LD      arch/arm/mach-mx3/built-in.o
 WARNING: arch/arm/mach-mx3/built-in.o(.text+0x1328): Section mismatch in reference from the function eet_init_devices() to the (unknown reference) .init.rodata:(unknown)
 The function eet_init_devices() references
 the (unknown reference) __initconst (unknown).
 This is often because eet_init_devices lacks a __initconst
 annotation or the annotation of (unknown) is wrong.

Signed-off-by: Alberto Panizzo <maramaopercheseimorto@gmail.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-11-17 10:01:29 +01:00
Uwe Kleine-König fc40d01919 ARM: imx: change the way flexcan devices are registered
Group soc specific data in a global struct instead of repeating it for each
call to imxXX_add_flexcanX.  The structs holding the actual data are placed
in .init.constdata and so don't do much harm.  Compared to the previous
approach this reduces code size to call imx_add_flexcan.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-11-17 10:01:26 +01:00
Uwe Kleine-König ae71a56222 ARM: imx: dynamically allocate mxc_w1 devices
Currently there is no platform data used in the driver.  In case this
changes NULL is passed unused to the soc specific functions.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-11-17 08:58:13 +01:00
Uwe Kleine-König 08ff97b521 ARM: imx: use MXxy_IO_P2V macros to setup static mappings
This makes less code rely on the virtual constants.

To further simplify code and reduce the needed boilerplate when
defining the static mappings a new helper macro is defined in
mach/hardware.h.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-11-17 08:58:09 +01:00
Uwe Kleine-König f5d7a13b18 ARM: imx: refactor the io mapping macro
This makes it more assembler friendly and allows it to be used in situation
that need an unsigned long and not a pointer.  Also the naming is
clearer.  IOMEM is introduced without IMX_ prefix as it is used this way
in more than one ARM subarch and it might become globally available
soon.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-11-17 08:58:08 +01:00
Uwe Kleine-König 9651b7db59 ARM: mx3: fix the last users of IMX_NEEDS_DEPRECATED_SYMBOLS
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-11-17 08:57:22 +01:00
Russell King 9ae21ca362 Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into devel-stable 2010-10-28 11:13:00 +01:00
Rogerio Pimentel 4a74bddcc5 mx31_3ds: Fix spi registration
Commit (06606ff13) "ARM: imx: dynamically register spi_imx devices
(imx31)" registered the wrong SPI port for mx31_3ds board.
mx31_3ds uses SPI2 to connect to the MC13783 PMIC.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Rogerio Pimentel <rogerio.pimentel@freescale.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-26 16:23:06 +02:00
Rogerio Pimentel b8be7b9a6d mx31_3ds: Fix the logic for detecting the debug board
The function mxc_expio_init returns 0 on success, so fix the logic for
printing the error case.
Also fixed the wording on the error message.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Rogerio Pimentel <rogerio.pimentel@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-26 16:11:06 +02:00
Rogerio Pimentel 1e9aed156b mx31_3ds: Remove unused debug board definitions
In commit (c5d38f08): "mx31_3ds: revert 3ds debug board relate code"
the debug board definitions are placed in a separate file.

Remove the remaining debug board related define from mach-mx31_3ds.c.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Rogerio Pimentel <rogerio.pimentel@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-26 04:40:38 +02:00
Linus Torvalds 5cc1035062 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (141 commits)
  USB: mct_u232: fix broken close
  USB: gadget: amd5536udc.c: fix error path
  USB: imx21-hcd - fix off by one resource size calculation
  usb: gadget: fix Kconfig warning
  usb: r8a66597-udc: Add processing when USB was removed.
  mxc_udc: add workaround for ENGcm09152 for i.MX35
  USB: ftdi_sio: add device ids for ScienceScope
  USB: musb: AM35x: Workaround for fifo read issue
  USB: musb: add musb support for AM35x
  USB: AM35x: Add musb support
  usb: Fix linker errors with CONFIG_PM=n
  USB: ohci-sh - use resource_size instead of defining its own resource_len macro
  USB: isp1362-hcd - use resource_size instead of defining its own resource_len macro
  USB: isp116x-hcd - use resource_size instead of defining its own resource_len macro
  USB: xhci: Fix compile error when CONFIG_PM=n
  USB: accept some invalid ep0-maxpacket values
  USB: xHCI: PCI power management implementation
  USB: xHCI: bus power management implementation
  USB: xHCI: port remote wakeup implementation
  USB: xHCI: port power management implementation
  ...

Manually fix up (non-data) conflict: the SCSI merge gad renamed the
'hw_sector_size' member to 'physical_block_size', and the USB tree
brought a new use of it.
2010-10-22 20:30:48 -07:00
Eric Bénard 69cb1ec4ce mxc_udc: add workaround for ENGcm09152 for i.MX35
this patch gives the possibility to workaround bug ENGcm09152
on i.MX35 when the hardware workaround is also implemented on
the board.
It covers the workaround described on page 25 of the following Errata :
http://cache.freescale.com/files/dsp/doc/errata/IMX35CE.pdf

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-22 10:22:17 -07:00
Xiao Jiang 2c6605def5 mx35pdk: add debug board support
Enable debug board support for mx35pdk.

Signed-off-by: Xiao Jiang <jgq516@gmail.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-22 08:29:01 +02:00
Shawn Guo 6207c83394 mx35_3ds: add mmc support
Update mx35_3ds board support to register esdhc device

Signed-off-by: Shawn Guo <shawn.gsc@gmail.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-21 22:42:34 +02:00
Uwe Kleine-König 662a74b4b2 ARM: mx3: fix build failure concerning MXC_INT_MMC_SDHC2
Commit c074512 (imx-esdhc: update devices registration) renamed
MX35_INT_MMC_SDHC2 to MX35_INT_ESDHC2 which broke expansion of the
MXC_INT_MMC_SDHC2 macro.
As  (the only user of MXC_INT_MMC_SDHC2) is only used on
mx31 use the MX31 prefixed symbol to define its resources.  Moreover to
reduce further confusion mxcsdhc_device0 is fixed accordingly and the MXC
prefixed symbols are removed.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-21 21:52:01 +02:00
Nicolas Pitre 6451d7783b arm: remove machine_desc.io_pg_offst and .phys_io
Since we're now using addruart to establish the debug mapping, we can
remove the io_pg_offst and phys_io members of struct machine_desc.

The various declarations were removed using the following script:

  grep -rl MACHINE_START arch/arm | xargs \
  sed -i '/MACHINE_START/,/MACHINE_END/ { /\.\(phys_io\|io_pg_offst\)/d }'

[ Initial patch was from Jeremy Kerr, example script from Russell King ]

Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Acked-by: Eric Miao <eric.miao at canonical.com>
2010-10-20 00:27:46 -04:00
Fabio Estevam f1de1613da eukrea_mbimxsd-baseboard: Pass the correct GPIO to gpio_free
Pass the correct GPIO to gpio_free

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-19 18:45:21 +02:00
Eric Bénard c0f832bca9 mach-pcm037_eet: fix compile errors
this patch fix the following errors :
arch/arm/mach-mx3/mach-pcm037_eet.c:62: error: implicit declaration of function 'MXC_SPI_CS'
arch/arm/mach-mx3/mach-pcm037_eet.c:185: error: implicit declaration of function 'imx35_add_spi_imx0'

from the Kconfig pcm037 is i.MX31 based and not i.MX35 so replace
imx35_add_spi_imx0 by imx31_add_spi_imx0

Signed-off-by: Eric Bénard <eric@eukrea.com>
[ukl: remove unneeded #include <mach/spi.h>]
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-10-19 18:45:01 +02:00
Ian Lartey d24d96e055 Fixing ethernet driver compilation error for i.MX31 ADS board
This is only a partial revert of "ARM: mx3/mx31ads: fold board
header in its only user"
[commit ccfa7c2698)]

As some of the the board defines are also used in the cs89x0
ethernet driver by the i.MX31 ADS.

Signed-off-by: Ian Lartey <ian@opensource.wolfsonmicro.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-19 18:45:01 +02:00
Eric Bénard c074512905 imx-esdhc: update devices registration
Tested on i.MX25 and i.MX35 and i.MX51

Signed-off-by: Eric Bénard <eric@eukrea.com>
2010-10-19 18:45:00 +02:00
Eric Bénard c0550c4bf1 eukrea_mbimxsd: add support for DVI displays
Signed-off-by: Eric Bénard <eric@eukrea.com>
2010-10-19 18:44:59 +02:00
Eric Bénard 52d084fc90 cpuimx25 & cpuimx35: fix OTG port registration in host mode
the PHY is UTMI so don't create an ULPI viewpoint.

Signed-off-by: Eric Bénard <eric@eukrea.com>
2010-10-19 18:44:58 +02:00
Juergen Beisert 9524705c86 MX35: Fix bogus L2 cache settings
i.MX35 CPUs marked with "MCIMX357CJQ5C M99V CTHA0943B" are coming with bogus
L2 cache settings. If these settings are kept unmodified prior enabling the L2
cache the CPU runs amok immediately when its enabled.

This fix should not hurt already working CPUs, as they are using the written
register value already.

Its currently unknown if its possible to detect the production lot from the
software to fix only affected CPUs.

While at it, make sure that mxc_init_l2x0 is only executed on i.MX31/35

Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-11 15:31:39 +02:00
Uwe Kleine-König 55fd2ef6d9 ARM: mx3/cpuimx35: mark otg_pdata and usbh1_pdata as maybe unused
This fixes

	arch/arm/mach-mx3/mach-cpuimx35.c:143: warning: 'otg_pdata' defined but not used
	arch/arm/mach-mx3/mach-cpuimx35.c:148: warning: 'usbh1_pdata' defined but not used

when USB_ULPI is not selected.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-11 15:31:38 +02:00
Uwe Kleine-König 6bd96f3c33 ARM: imx: dynamically register fec devices
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-11 15:31:37 +02:00
Uwe Kleine-König 8a8d20600d ARM: imx: fix/define clocks and create devices for imx dma
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-11 15:30:31 +02:00
Eric Bénard 67520f3a89 ARM: mx35: Add mx35_revision function to query the silicon revision
Based on work done earlier by Sascha Hauer

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Eric Bénard <eric@eukrea.com>
[ukl: actually squash the two approaches together]
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-11 15:28:32 +02:00
Sascha Hauer fdb03870a9 ARM: mx3: use MX3x_ prefixed version of CHIP_REV_x
Also, remove the deprecated symbols from arch/arm/mach-mx3/cpu.c

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-11 15:28:32 +02:00
Eric Bénard 438a4d66a5 eukrea_mbimxsd for cpuimx35: add CAN & SDCard support
Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-11 15:22:12 +02:00
Wolfram Sang 9a545943a3 arm: pcm043: add esdhc-device to boardconfig
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-11 15:22:11 +02:00
Wolfram Sang 774305d0ee arm: imx35: add esdhc-device to MX35-platform
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-11 15:22:10 +02:00
Eric Bénard 54dc3f4674 mach-cpuimx35: remove unecessary tsc2007 functions + style cleanup
- remove functions which are no more necessary for tsc2007
- indent platform_data for better readability

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-04 08:26:38 +02:00
Uwe Kleine-König 00b57bf978 ARM: imx: reorganize nand registration to use a struct
Addiontionally make the interrupt #defines match the base address
defines MX.._NFC_BASE_ADDR.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-01 09:33:02 +02:00
Uwe Kleine-König ab5605037c ARM: imx: use platform ids for spi_imx devices
The driver recently learned to handle platform ids.  Make use of this
new feature.  The up side is that the driver needs less knowledge about
the spi interfaces used on different SoCs.

Acked-by: Jason Wang <jason77.wang@gmail.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-01 09:32:14 +02:00
Uwe Kleine-König 64de5ec168 ARM: imx: reorganize imx-i2c device registration to use a struct per SoC
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-09-27 15:46:39 +02:00
Uwe Kleine-König 4697bb926f ARM: imx: dynamically allocate imx-ssi devices
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-09-27 15:46:38 +02:00
Uwe Kleine-König 5162de08d1 ARM: imx: change the way imx-uarts are registered
For mx1_defconfig this yields:

	add/remove: 1/0 grow/shrink: 1/4 up/down: 49/-108 (-59)
	function                                     old     new   delta
	imx1_imx_uart_data                             -      48     +48
	kernel_config_data                          7277    7278      +1
	imx_add_imx_uart_1irq                        132     128      -4
	imx_add_imx_uart_3irq                        164     156      -8
	scb9328_init                                  96      64     -32
	mx1ads_init                                  220     156     -64

for mx21_defconfig this yields:

	add/remove: 1/0 grow/shrink: 0/3 up/down: 64/-52 (12)
	function                                     old     new   delta
	imx21_imx_uart_data                            -      64     +64
	imx_add_imx_uart_3irq                        160     156      -4
	imx_add_imx_uart_1irq                        140     136      -4
	mx21ads_board_init                           220     176     -44

for a random mx25 config this yields:

	add/remove: 1/0 grow/shrink: 0/5 up/down: 80/-56 (24)
	function                                     old     new   delta
	imx25_imx_uart_data                            -      80     +80
	imx_add_imx_uart_3irq                        160     156      -4
	imx_add_imx_uart_1irq                        140     136      -4
	mx25pdk_init                                 288     272     -16
	eukrea_mbimxsd_baseboard_init                272     256     -16
	eukrea_cpuimx25_init                         252     236     -16

for mx27_defconfig this yields:

	add/remove: 1/0 grow/shrink: 0/10 up/down: 96/-280 (-184)
	function                                     old     new   delta
	imx27_imx_uart_data                            -      96     +96
	imx_add_imx_uart_3irq                        160     156      -4
	imx_add_imx_uart_1irq                        140     136      -4
	pca100_init                                  560     544     -16
	mx27pdk_init                                 112      96     -16
	mx27lite_init                                 92      76     -16
	eukrea_cpuimx27_init                         332     316     -16
	pcm038_init                                  388     348     -40
	mxt_td60_board_init                          320     280     -40
	eukrea_mbimx27_baseboard_init                476     436     -40
	mx27ads_board_init                           368     280     -88

and finally for mx3_defconfig:

	add/remove: 2/0 grow/shrink: 0/9 up/down: 128/-344 (-216)
	function                                     old     new   delta
	imx31_imx_uart_data                            -      80     +80
	imx35_imx_uart_data                            -      48     +48
	imx_add_imx_uart_1irq                        132     128      -4
	imx_add_imx_uart_3irq                        164     152     -12
	mx31moboard_devboard_init                    360     344     -16
	mx31lite_db_init                             176     160     -16
	mx31moboard_smartbot_init                    384     360     -24
	kzm_board_init                               232     208     -24
	armadillo5x0_init                            392     364     -28
	mx31lilly_db_init                            248     208     -40
	mxc_board_init                              3760    3580    -180

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-09-27 15:46:37 +02:00
Uwe Kleine-König 35bab0589b ARM: imx: change the way spi-imx devices are registered
Group soc specific data in a global struct instead of repeating it for
each call to imxXX_add_spi_imxX.  The structs holding the actual data
are placed in .init.constdata and so don't do much harm.  Compared to
the previous approach this reduces code size to call imx_add_spi_imx.

Acked-by: Jason Wang <jason77.wang@gmail.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-09-27 15:46:31 +02:00
Sascha Hauer bd45140d98 ARM: mx3/imx35: Add EPIT support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-09-27 12:52:59 +02:00
Marc Kleine-Budde ab3d8b5859 ARM: mx3/mx35_3ds: add usb host2 support
we still have to toggle two pins on the mc9sdz60:

/* MUX3_CTR to be low for USB Host2 DP&DM */
pmic_gpio_set_bit_val(MCU_GPIO_REG_GPIO_CONTROL_2, 6, 0);

/* CAN_PWDN to be high for USB Host2 Power&OC */
pmic_gpio_set_bit_val(MCU_GPIO_REG_GPIO_CONTROL_2, 1, 1);

until we've a proper driver for the mx9sdz60 in linux we'll do this in
barebox (a.k.a. u-boot-v2)

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-09-27 12:52:57 +02:00
Marc Kleine-Budde 79a11b0ba4 ARM: mx3/mx35_3ds: rename usb otg platform data variable name
Rename the variable holding the usb otg platform data to avoid clash
with usb host platform data variable.

usb_pdata -> usb_otg_pdata

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-09-27 12:52:57 +02:00
Marc Kleine-Budde 81aa17207b ARM: mx3/mx35_3ds: add NAND flash
The mx35_3ds comes with 2 GiByte NAND flash.  This adds the
corresponding platform device.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-09-27 12:52:56 +02:00
Marc Kleine-Budde d17e1c1ac3 ARM: mx3/mx35_3ds: add physmap-flash NOR at CS0
The mx35_3ds comes with 64 MiByte for NOR flash at CS0, add physmap-flash
platform device for it.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-09-27 12:52:55 +02:00
Russell King b6d17c1a8e Merge branch 'imx-for-2.6.36' of git://git.pengutronix.de/git/imx/linux-2.6 2010-09-01 10:08:50 +01:00
Uwe Kleine-König 70ddd47f7d ARM: imx: fix build failure concerning otg/ulpi
The build failure was introduced by

	13dd0c9 (USB: otg/ulpi: extend the generic ulpi driver.)

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Cc: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-23 20:50:17 -07:00
Juergen Beisert c735c40587 clock-imx35: Calculate the base clock rate for the IPU unit
The mx3fb driver needs the clock the IPU runs in order to calculate
the divider for the LCD clock. This patch adds the clock rate calculation
routine for the i.MX35 CPU.

Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-08-17 09:31:49 +02:00
Marc Kleine-Budde c56702de10 clock-imx35: correct arm and ahb clock calculation
According to the Datasheet:
"i.MX35 (MCIMX35) Multimedia Applications Processor Reference Manual,
Rev. 2" "Figure 14-24. Clock Control And Gating"
change the result of get_rate_ahb based on the frequency returned
by get_rate_arm to calculate the proper rate.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-08-17 09:23:54 +02:00
Marc Kleine-Budde c96c1e394f clock-imx35: fix divider if ahb is source for ipg_per
According to the Datasheet:
"i.MX35 (MCIMX35) Multimedia Applications Processor Reference Manual,
Rev. 2" "Table 14-6. PDR0 Field Descriptions" the divider is
CCM_PER_AHB[3:0] + 1.

This patch adds the missing + 1.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-08-17 09:23:48 +02:00
Sascha Hauer 9a6f17fd1c i.MX35: remove get_3_3_div helper function
In the v2 reference manual there are no dividers combined of two
dividers. Instead, all dividers are simple 6bit dividers. I assume
the combined dividers only exist in preliminary hardware.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-08-17 09:23:15 +02:00
Hans J. Koch 3d6e614952 mx35: Fix boot ROM hang in internal boot mode
If a watchdog reset occurs after booting in internal boot mode, the i.MX35
won't boot anymore. The boot ROM code seems to assume that some clocks are
turned on (they are after a power-on reset). This patch turns on the
necessary clocks.

Signed-off-by: Hans J. Koch <hjk@linutronix.de>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reported-by: John Ogness <jogness@linutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-08-17 08:56:34 +02:00