9
0
Fork 0
Commit Graph

647 Commits

Author SHA1 Message Date
Sascha Hauer b67b2671c2 treewide: Add missing includes
A lot of files rely on include/driver.h including include/of.h (and
this including include/errno.h. include the files explicitly so we can
eventually get rid of including of.h from driver.h

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-08 15:42:04 +01:00
Alexander Shiyan 2b4a1993c7 ARM: i.MX5x: Make IIM driver kernel-compatible
Since kernel uses "imx27-iim" compatible string in i.MX5x DTS templates,
do IIM driver compatible.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-29 08:55:01 +01:00
Sascha Hauer 7f6b6d25d8 Merge branch 'for-next/omap'
Conflicts:
	arch/arm/boards/pcm051/env/config
2013-09-05 10:40:04 +02:00
Sascha Hauer 1729b1798e Merge branch 'for-next/boardinfo'
Conflicts:
	arch/mips/boards/qemu-malta/init.c
	commands/bootm.c
	drivers/of/base.c
2013-09-05 10:39:22 +02:00
Sascha Hauer 8f9d4007c5 Merge branch 'for-next/arm-gpio' 2013-09-05 10:38:53 +02:00
Sascha Hauer e1827816d4 Merge branch 'for-next/imx' 2013-09-05 10:38:39 +02:00
Sascha Hauer 4960dc9db0 rework debug_ll
Convert to static inline functions and use lower case letters for function
names. Also, include mach/debug_ll.h when an architecture provides support
for debug_ll, not only when it's actually enabled. This allows architecures
to put some UART initialization code into mach/debug_ll.h which is compiled
out when debug_ll is disabled.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-05 10:15:48 +02:00
Eric Bénard 77935a71af i.MX53: add imx53_add_mmc3
Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-28 11:08:01 +02:00
Sascha Hauer 2cf467ec07 ARM: i.MX: move esdctl device registration to soc_init
The esdctl devices are currently not in the devicetrees. this means
they are not registered when booting from the devicetree. Move the
device registration from soc_devices_init to soc_init which is called
even with devicetree support so that we get esdctl devices.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-20 11:02:40 +02:00
Sascha Hauer 8c1180c3ed ARM: remove include of mach/gpio.h for gpiolib users
gpiolib user have nothing to define in their machine
specific gpio.h, so do not include it.

The only thing they could define would be ARCH_NR_GPIOS,
but currently no architecture defines it. Should an architecure
feel the need to do it this would be a good opportunity to
get rid of this limitation.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-16 15:58:33 +02:00
Sascha Hauer 1068e0a545 ARM: i.MX: move iomux definitions to iomux.h
mach/gpio.h is for the gpio API, so move unrelated stuff
away.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-16 15:58:33 +02:00
Sascha Hauer 068bed22a6 Set model and hostname at boardlevel
With multiboard support the compiletime generated BOARDINFO string
gets more and more meaningless. This removes it from Kconfig and
replaces it with a variable that can be set at boardlevel.

Also many boards have a standard setting for the hostname in the
environment. This patch also moves the standard to C code by calling
barebox_set_hostname().

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-16 08:40:55 +02:00
Sascha Hauer b454c494ba ARM: i.MX6: Add dfi fs700 m60 i.MX6 Q7 board support
This is an i.MX6 based Q7 module, see:

http://www.dfi.com.tw/products/ProductDetails.jsp?productId=1164&mainCategoryId=2&subCategoryId=581

This patch adds basic support for this module.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-06 15:38:40 +02:00
Sascha Hauer 15ee30138f ARM: i.MX: bbu-internal: optionally use DCD data from image
We used to pass the DCD data from the boards. This patch allows
to optionally skip passing DCD data. In this case the DCD data
from the flash image is used if present.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-06 15:38:40 +02:00
Sascha Hauer d00f5f0b99 ARM: i.MX: bbu-internal: factor out a prereq function
To elminate some code duplication.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-06 15:38:40 +02:00
Sascha Hauer feefc3ef3b Merge branch 'for-next/mtd' 2013-08-05 12:49:58 +02:00
Sascha Hauer 30f29e3e16 ARM: Add Phytec phyFLEX-i.MX6 board support
This adds support for the Phytec phyFLEX-i.MX6 board. The phyFLEX-i.MX6
is a system-on-module based on the Freescale i.MX6 SoC. This patch supports
the 1GiB and 2GiB variants on a PBA-B-01 baseboard.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-25 10:25:53 +02:00
Sascha Hauer 0f15dee78f mtd: nand: mxs-nand: Add i.MX6 support
The i.MX6 uses the same GPMI NAND controller as i.MX23/28 do. This adds
i.MX6 support to the driver.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-23 16:25:14 +02:00
Sascha Hauer 8cd342fb77 ARM: i.MX6: Add ocotp driver
The only functionality at the moment is to register a MAC Address for
an ethernet device.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-22 16:17:19 +02:00
Sascha Hauer 1ee484f382 ARM: i.MX6: TQ tqma6x initial board support
The TQ tqma6x comes in two different variants. One i.MX6s based
tqma6s and a i.MX6q based tqma6q.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-11 09:53:16 +02:00
Sascha Hauer ed91fac6e2 ARM: i.MX: External Nand boot: remove ifdefs around SoC functions
The ifdefs around the SoC specific boot_nand_external functions
can be removed when all functions go into their own sections so
that the linker can discard the unused functions.

This also adds a #ifdef BROKEN around the i.MX21 code which currently
does not have the imx21_barebox_entry function.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-11 09:53:16 +02:00
Sascha Hauer 3ccb034fa1 ARM: i.MX: External Nand boot: remove ifdefs
Instead of ifdeffing out the correct NFC base address just pass
it to imx_nand_load_image which is called from SoC specific
context anyway.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-11 09:53:16 +02:00
Sascha Hauer 09b96768c7 ARM: i.MX: External Nand boot: move pagesize detection into SoC specific code
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-11 09:53:16 +02:00
Sascha Hauer 3de30a438a ARM: i.MX: External Nand boot: remove debug command
The debug command does not work with SoC specific entry points.
remove it.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-11 09:53:16 +02:00
Sascha Hauer 5a3329f6ad ARM: i.MX: External Nand boot: make 2k support nonoptional
All boards using the external nand boot code autodetect the
pagesize, so make this nonoptional to make the code simpler.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-11 09:53:15 +02:00
Philipp Zabel d427ee38fb ARM: gk802: Add support for Zealz GK802
Add support for the GK802 'QUAD CORE Mini PC', which seems to be loosely
based on the Freescale i.MX6Q HDMI dongle reference design.
It is supposedly identical to the Hiapad Hi802.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-11 09:53:11 +02:00
Sascha Hauer 1f6ec400f7 Revert "ARM: i.MX27 pcm038: switch to multi image"
This reverts commit 08c0e206b3.

The external NAND boot code currently uses the _text linker variable
to determine a place for the image. This doesn't work with multi image
support which will link the binary at 0x0. Revert multi image support
for the pcm038 for now until a solution is found.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-09 19:29:28 +02:00
Sascha Hauer 7457f69e17 ARM: i.MX51 efikasb: switch to multiboard support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:08 +02:00
Sascha Hauer e1ec8d514a ARM: i.MX6 realq7: switch to multiboard
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:08 +02:00
Sascha Hauer d1c3520011 ARM: i.MX53 loco: Move over to multiboard
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:08 +02:00
Sascha Hauer 7f900e0b60 ARM: i.MX51 babbage: Move over to multiboard
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:08 +02:00
Sascha Hauer 41f53d8d17 ARM: i.MX: select SoC from board
In principle we could build barebox for multiple i.MX SoCs, so
select the correct SoC from the board selection.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:08 +02:00
Sascha Hauer c37be8632b ARM: i.MX: remove now unused ARCH_IMX_INTERNAL_BOOT_USE_IMXIMAGE
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:07 +02:00
Sascha Hauer fd2e121b5b ARM: i.MX51 babbage: switch to multi image support
The image will be named:

barebox-freescale-imx51-babbage.img

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:07 +02:00
Sascha Hauer 9172539a60 ARM: dmo realq7: switch to multi image support
The image will be named after the official name of this board:

barebox-datamodul-edm-qmx6.img

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:07 +02:00
Sascha Hauer cd977b9364 ARM: i.MX53 loco: Switch to multi image support
This converts the Freescale i.MX53 loco aka qsb board to
multi image. The image will be named:

barebox-freescale-imx53-loco.img

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:07 +02:00
Sascha Hauer 09bc89f539 ARM: i.MX53 loco: Switch to imximage
Use the imximage tool to generate an imximage instead of the linker
based process.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-02 08:24:07 +02:00
Sascha Hauer 939c2173a3 Merge branch 'for-next/multi-image' 2013-07-01 10:14:40 +02:00
Sascha Hauer 08c0e206b3 ARM: i.MX27 pcm038: switch to multi image
This also converts the Phytec phyCORE i.MX27 aka pcm038 to use
image compression. The image will be named

barebox-phytec-phycore-imx27.img

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-07-01 10:14:35 +02:00
Sascha Hauer 2078438662 Add multi images support
This adds the make infrastructure to build multiple SoC or
board specific images from a single barebox binary.

The basic idea is that we no longer have a single pbl, but instead
multiple pbls, one per image if necessary. Each pbl is defined
by its entry function so that each pbl can do exactly what a given
board needs. Additionally the pbls together with a self extracting
barebox binary can be encapsulated in specific image formats.

squashed in build fixes from Lucas Stach for make version >= 3.82:

Split Multimage Makefile rule in explicit and implicit parts

Fixes build with make version >=3.82

Frome the make 3.82 NEWS file:
* WARNING: Backward-incompatibility!
  In previous versions of make it was acceptable to list one or more explicit
  targets followed by one or more pattern targets in the same rule and it
  worked "as expected".  However, this was not documented as acceptable and if
  you listed any explicit targets AFTER the pattern targets, the entire rule
  would be mis-parsed.  This release removes this ability completely: make
  will generate an error message if you mix explicit and pattern targets in
  the same rule.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Lucas Stach <dev@lynxeye.de>
2013-07-01 10:13:12 +02:00
Sascha Hauer be1ebac429 Merge branch 'for-next/mci'
Conflicts:
	arch/arm/boards/ccxmx51/ccxmx51js.c
	arch/arm/boards/dmo-mx6-realq7/board.c
2013-07-01 09:37:35 +02:00
Sascha Hauer e60e6d3ae8 Merge branch 'for-next/imx-realq7'
Conflicts:
	arch/arm/dts/Makefile
2013-07-01 09:37:15 +02:00
Sascha Hauer 33a6e99a38 Merge branch 'for-next/imx'
Conflicts:
	drivers/usb/imx/chipidea-imx.c
2013-07-01 09:37:04 +02:00
Sascha Hauer b70bfc27e6 ARM: i.MX6: Add cputype detection
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-06-25 16:05:35 +02:00
Sascha Hauer 549ccf4d0c ARM: i.MX: Make debug UART selectable from Kconfig
To make early debugging on i.MX a bit simpler. This uses a similar
magic than the kernel does.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-06-25 11:52:36 +02:00
Sascha Hauer a4daf50305 ARM: i.MX: adopt cpu_is_* for multiple SoCs
This makes cpu_is_* functions when necessary for upcoming multisoc
support. When only one SoC type is compiled in cpu_is_* still expand
to static values.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-06-25 11:52:05 +02:00
Sascha Hauer f887536147 ARM: i.MX: centralize i.MX startup
Each i.MX SoC has its own SoC initcall. To ease multi SoC support
move it to a single initcall.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-06-24 08:35:00 +02:00
Sascha Hauer 2260389da4 ARM: i.MX: Make timer available earlier
This moves the CCM drivers to core_initcall since this has no dependencies.
This way we can be sure that the clock for the clocksource is available in
at postcore_initcall time.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-06-18 09:02:44 +02:00
Sascha Hauer 49e94a4211 ARM: i.MX51: Adjust IPG_CLK_DIVR to 6:1
The same value as used in Mainline and Freescale U-Boot. This might
increase the stability of i.MX51 boards. The 5:1 ratio we have in barebox
probably goes back to copy/paste from the i.MX53 code.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-06-18 09:02:20 +02:00
Sascha Hauer 6ce708895c ARM: i.MX51: Make imx51_init_lowlevel callable from early init
imx_silicon_revision() can't be used from early init context, so
use imx51_silicon_revision() instead.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-06-18 09:02:08 +02:00