9
0
Fork 0
Commit Graph

231 Commits

Author SHA1 Message Date
Sascha Hauer f791295528 Merge branch 'pu/imx-external-nand-boot' into for-next/imx 2013-01-21 13:53:20 +01:00
Sascha Hauer 6e45abe47e ARM i.MX: Add a common NAND entry for external boot mode
The pattern for i.MX boards starting in external NAND boot mode is always
the same:

- Check if we are running in NFC address space, if not call
  board_init_lowlevel_return()
- copy binary to link address
- execute relocated binary
- call imx_nand_load_image()

Add a common function for this to make the board code easier.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-01-20 16:53:46 +01:00
Daniel Mierswa 1d37166cb2 i.MX21: Add periph. clock register name macros
Also put those names solely in the .c file as it's done with
the i.MX27 code.

Signed-off-by: Daniel Mierswa <d.mierswa@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-01-17 19:00:18 +01:00
Sascha Hauer 885694f827 Merge branch 'pu/efikasb' into for-next/imx 2012-12-17 11:29:20 +01:00
Sascha Hauer 40bd757243 Merge branch 'pu/usb' into for-next/imx
Conflicts:
	arch/arm/mach-imx/include/mach/devices-imx31.h
2012-12-17 08:45:49 +01:00
Sascha Hauer de3c258d41 mci i.MX esdhc: Allow to specify devicename from platformdata
For boards which need to have persistent names for the device file.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-17 08:42:32 +01:00
Sascha Hauer 1690746c3a ARM i.MX31: Add USB device functions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-13 22:18:47 +01:00
Sascha Hauer 20f2dae6d2 ARM i.MX51: Add USB device functions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-13 22:18:47 +01:00
Sascha Hauer 9524e95a9b ARM i.MX27: Add USB device functions
Register the USB misc devices and provide convenience wrappers to
register the USB ports for i.MX27.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-13 22:18:47 +01:00
Sascha Hauer bce4fecc4e ARM i.MX31: Add mmc register convenience functions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-12 21:53:59 +01:00
Sascha Hauer d74be493f7 ARM i.MX31: sync iomux with kernel
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-12 21:53:58 +01:00
Sascha Hauer 0ae4b1e827 Merge branch 'for-next/imx'
Conflicts:
	arch/arm/mach-imx/include/mach/devices-imx53.h
2012-12-07 16:43:12 +01:00
Sascha Hauer 4bdb250c9f Merge branch 'for-next/clk' 2012-12-07 16:42:04 +01:00
Sascha Hauer cc7f346f24 ARM i.MX5: Add SATA support
Add the convenience wrappers for registering the SATA device.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-07 12:19:45 +01:00
Sascha Hauer 5a12d90361 ARM i.MX6: Add sata device
This also adds and enables the clocks needed for SATA.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-06 14:25:18 +01:00
Sascha Hauer 2ff02e7aa1 ARM i.MX: Add i.MX51 PATA device support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-06 13:52:54 +01:00
Sascha Hauer 77fd727b89 ARM i.MX6: save boot location
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-06 13:43:29 +01:00
Sascha Hauer 8e9a1d9943 ARM i.MX bbu internal: Add spi/i2c support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-06 13:43:29 +01:00
Sascha Hauer 1ad78f3c80 ARM i.MX bbu: Add i.MX6 MMC handler
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-06 13:43:29 +01:00
Sascha Hauer 744696bbfc ARM i.MX: add esdctl-v4 support
This adds support for initializing DDR3 RAMs on the i.MX53 type
SDRAM controller. The code automatically detects size/layout of
the connected RAM, detects the bus width and which chipselects are
populated.
While I believe this code is not 100% generic, it is far too
sophisticated to stay in a single board directory. I'm sure
other boards could make use of this aswell.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-06 13:43:10 +01:00
Sascha Hauer e8fa8b5ccf ARM i.MX5: move pll setup defines to header file
The pll setup function is exported, so it makes sense to export
the convenience wrappers for specific frequencies aswell.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-06 13:43:10 +01:00
Sascha Hauer 0e9ba6c384 ARM i.MX bbu: Allow to overwrite app_dest
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-06 13:43:09 +01:00
Sascha Hauer 4fa54b7e5d ARM i.MX: Add driver to get sdram base and size
The code initializing the SDRAM controller is not at the same
place where SDRAM is registered with barebox. To reduce the
risk of registering wrong SDRAM sizes this patch adds a
driver for the ESDCTL which reads back the configured SDRAM
size and registers the memory found with barebox.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-06 13:43:08 +01:00
Sascha Hauer ea2be760d4 i.MX debug_ll support
This adds lowlevel debug functions for i.MX. As we have a great variety
of different UARTs on i.MX currently no Kconfig support for chosing the
correct one is added. Instead we expect the user to add the correct
define and issue a compiler warning if he hasn't.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-05 19:48:53 +01:00
Christian Kapeller 0a6da02621 imx53: implement imx53_add_kpp
Allows usage of imx keypad driver in imx53 platforms

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-12-05 19:48:10 +01:00
Sascha Hauer abb5c25bbb i.MX27 regs remove unnecessary include
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-11-27 21:01:09 +01:00
Sascha Hauer 6e94a6d8db ARM i.MX esdctl.h: Add double include protection
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-11-27 20:51:10 +01:00
Christoph Fritz cc37eb4a4d i.MX25 & 35 usb config bits : fix host power bit
This patch sets HPM (Host power mask bit) to bit 16 according to i.MX
Reference Manual. Falsely it was set to bit 8, but this controls pull-up
Impedance.

Reported-by: Michael Burkey <mdburkey@gmail.com>
Signed-off-by: Christoph Fritz <chf.fritz@googlemail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-11-19 11:08:14 +01:00
Sascha Hauer bf38ac7b89 Merge branch 'for-next/imx'
Conflicts:
	arch/arm/boards/guf-neso/lowlevel.c
	arch/arm/boards/pcm038/lowlevel.c
	commands/Makefile
2012-11-16 14:01:09 +01:00
Sascha Hauer daac8bf5d3 Merge branch 'for-next/bcm2835'
Conflicts:
	arch/arm/configs/versatilepb_defconfig
2012-11-16 14:00:34 +01:00
Uwe Kleine-König 56371f4e84 iomux-imx35: add missing comma in pad definition
The same issue was fixed in the Linux kernel in commit

	66ddfc6 (mx35: add a missing comma in a pad definition)

for 2.6.33-rc7.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-11-01 16:32:12 +01:00
Sascha Hauer f207ca79a0 ARM i.MX: Add barebox update handler for internal boot
This adds support for an update handler for internal boot. Currently
handled are:

- v1 MMC/SD
- v2 MMC/SD
- v2 NAND

where v1 is found on i.MX25, i.MX35 and i.MX51. v2 is found on i.MX53.

This code intentionally does not use the DCD data compiled into every
i.MX internal boot image. This makes it possible to make a pure second
stage barebox bootable on i.MX internal boot devices later.

This has been tested on the i.MX51 babbage, i.MX53 loco and i.MX53 tx53
board.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:23:42 +02:00
Sascha Hauer 7b84676763 ARM i.MX53: set bootsource location
To be able to set the environment location based on the
bootsource.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:58 +02:00
Sascha Hauer 3bbe8a9ea4 ARM i.MX tx53: Add rev xx30 board support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:58 +02:00
Sascha Hauer b1b76f6027 ARM i.MX: get rid of imx-regs.h
- remove now unused __REG definitions
- include individual SoC register files instead of imx-regs.h
- move IMX_GPIO_NR to generic.h
- finally remove imx-regs.h

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:02 +02:00
Sascha Hauer ee372b8f28 ARM i.MX27: remove duplicate ESDCTL registers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:02 +02:00
Sascha Hauer 86d9ed1cc5 ARM i.MX27: move PCCR gate registers to its only user
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:02 +02:00
Sascha Hauer 6a9d37e579 ARM i.MX27: Cleanup remaining unprefixed registers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:02 +02:00
Sascha Hauer 11b1757937 ARM i.MX21: Cleanup remaining unprefixed registers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:02 +02:00
Sascha Hauer 926cccc9d5 ARM i.MX1: Cleanup remaining unprefixed registers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:02 +02:00
Sascha Hauer 4c53af062b ARM i.MX: remove unused improperly prefixed register defines
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:02 +02:00
Sascha Hauer dc9d70e239 ARM i.MX35: Cleanup remaining unprefixed registers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:02 +02:00
Sascha Hauer 1092bde80c ARM i.MX25: Cleanup remaining unprefixed registers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:01 +02:00
Sascha Hauer a8c6359667 ARM i.MX31: Cleanup remaining unprefixed registers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:01 +02:00
Sascha Hauer 7a334ccdec ARM i.MX: Use SoC specific base to access sdram controller registers
This redefines the sdram controller registers as offsets to the base
rather than as absolute addresses. All users are fixed to use the
SoC specific base address.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 20:22:01 +02:00
Sascha Hauer 09efce4ad3 Merge branch 'for-next/imx-work' into for-next/imx
Conflicts:
	arch/arm/mach-imx/imx1.c

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-17 08:49:18 +02:00
Sascha Hauer f36c792109 ARM i.MX: Print silicon revision in common place
Rather than doing this in the SoC specific code just print
it in imx_set_silicon_revision. This saves some lines of code
and also results in i.MX27 now also having the silicon revision
printed during startup.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-15 19:44:36 +02:00
Sascha Hauer a029e32d7f ARM i.MX: rework bootsource setting
This moves the known i.MX bootsource settings to a single file
so that the code can be shared. Also we add a enum for the different
boot sources so that it can be used in C Code and not only on the shell.
The pcm038 board is changed to use it instead of digging in the registers
manually.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-15 19:44:36 +02:00
Sascha Hauer d553125983 ARM i.MX iomux-v1: Add separate header file
- Add a separate header file for the iomux-v1 just like done for
  iomux-v3.
- initialize iomux from SoC code so that we do not depend on IMX_GPIO_BASE
  anymore.
- define registers as offset to the base rather than absolute addresses

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-05 20:03:04 +02:00
Sascha Hauer 3f35afd996 ARM i.MX1: move iomux definitions to separate header file
Just like we have a separate file for the other i.MX SoCs.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-10-05 20:03:04 +02:00