9
0
Fork 0
Commit Graph

3647 Commits

Author SHA1 Message Date
Sascha Hauer 8720919039 Merge branch 'for-next/arm-barebox-bootm' 2014-01-07 11:57:51 +01:00
Sascha Hauer 8e3ddc13eb ARM: boot barebox with kernel calling convention
Start a 2nd stage barebox with the Linux Kernel calling convention.
Right now barebox does not interpret ATAGs or devicetree passed
to it, but it doesn't hurt to pass parameters so that future bareboxes
can use them.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-01-06 14:25:06 +01:00
Sascha Hauer cee2a60c56 ARM: remove armlinux_set_bootparams() calls from boards
As the place for the atags now is determined automatically the call
from the boards can be removed.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-01-06 14:25:05 +01:00
Sascha Hauer eb959e1bdf ARM: start kernel: find a valid address for the atags list automatically
If a board does not specify a place for the atags list default to
SDRAM start + 0x100. The vast majority of boards uses this place
anyway, so the call to armlinux_set_bootparams() can be removed
for most boards.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-01-06 14:24:57 +01:00
Du Huanpeng 3173c27e4a mips asm/types.h: add #ifndef to fix compile error
without "#ifndef __ASSEMBLY__ #endif", an assembly file
including this file will break compilation.

Signed-off-by: Du Huanpeng <u74147@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-01-06 09:22:31 +01:00
Sascha Hauer a76f3d9535 video: imx-ipu-fb: Allow to specify framebuffer memory size via platform_data
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-20 11:32:07 +01:00
Sascha Hauer 4e64bcac45 video: ipufb: Allow to disable fractional pixelclock divider
The IPU has a fractional pixelclock divider. When used, this produces
clock jitter which especially LVDS transceivers can't handle. Allow
to disable it via platform_data.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-20 09:35:38 +01:00
Sascha Hauer 135d77b491 ARM: i.MX: bbu external nand: Fix uninitialized variable
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-18 16:50:50 +01:00
Sascha Hauer 68a6fedcd4 video: ipufb: make disp_data_fmt configurable
With the IPU the way the display is connected is completely independent
of the framebuffer pixel format. So instead of specifying a pixel width
in platform_data we have to specify how the display is connected.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-18 16:38:05 +01:00
Beniamino Galvani 217f390d8d openrisc: enable OpenCores ethernet driver
The OpenCores 10/100 Mbps ethernet MAC is often available on
OpenRISC-based SoCs and is supported by the OpenRISC architectural
simulator (or1ksim) as well.

The patch enables the driver on the 'generic' openrisc board.

Signed-off-by: Beniamino Galvani <b.galvani@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-17 08:20:48 +01:00
Jan Weitzel 537c4abb6f ARM: OMAP: early call am33xx_register_ethaddr
am33xx_register_ethaddr must be called before cpsw driver start.
Move it from devices_initcall to coredevice_initcall.

Signed-off-by: Jan Weitzel <j.weitzel@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-12 09:09:06 +01:00
Jan Weitzel db9d2e9f95 pcm051: ethernet and dts fixes
add compatible phytec,pcm051
clean up pinmux_emac_rmii1_pins
introduce davinci_mdio_default pin group
set AM33XX_MAC_MII_SEL via dts rmii-clock-ext
use bch8 as ecc mode
add pagesize to 24c32@52

Signed-off-by: Jan Weitzel <j.weitzel@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-12 09:09:06 +01:00
Sascha Hauer 72930d623c ARM: solidrun-carrier-1: Fix wrong ENTRY_FUNCTION
ENTRY_FUNCTION was changed, fix compilation.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-11 09:14:41 +01:00
Sascha Hauer 58be7f230b ARM: OMAP: consolidate am335x mlo defconfigs
The Beaglebone and the AM335x Phytec phyCORE can be compiled
together, so merge the configs into a am335x_mlo_defconfig.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:35 +01:00
Sascha Hauer 7ae1da8acf ARM: OMAP: introduce multiboard support and move am33xx boards to it
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:35 +01:00
Sascha Hauer dd2d7e1a82 ARM: beaglebone: configure console from devicetree
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer 4e6cd5b6ed ARM: am335x Phytec phyCORE: configure environment from devicetree
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer ee7f5d5d50 ARM: OMAP: Safe boot info in fixed SRAM address
Storing the boot information in the image itself and passing a pointer
around between images is cumbersome and doesn't fit well with multiimage
support where the pointer we pass around is already occupied by the
devicetree.
Do the same as U-Boot does and store the boot information at the bottom
of the SRAM public stack.
To maintain the compatibility between new xloaders and older barebox
binaries we still pass the boot information to the next stage via pointer.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer b037240d1f ARM: am335x Phytec phyCORE: Move partition descriptions to devicetree
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer 9dd7b7a0f2 ARM: beaglebone: Switch to devicetree and multiimage
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer 63ec8ab383 ARM: beaglebone: Add memory to devicetrees
barebox needs it to initialize the memory. While at it, give the
beabglebone black another name than the original beaglebone has.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer f1914c4e53 ARM: am33xx: beaglebone: remove mlo_large_defconfig
As with devicetree support the binary will get too large for the
SRAM drop the configuration. It was mainly meant for debugging purposes
anyway.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer a4811f346d ARM: dts: Add am33xx beaglebone(black) dts files
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer da5809394c ARM: am33xx Phytec phyCORE: update defconfig
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer 9080ddd214 ARM: am33xx Phytec phyCORE: Switch to multiimage support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer 038806d8e2 ARM: am33xx Phytec phyCORE: initialize debug UART
Add debug UART initialization to lowlevel init and print a '>'. Helps
debugging lowlevel code.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer da7ddb69dd ARM: am335x phytec phyCORE: Switch to devicetree probe support
This switches the am335x Phytec phyCORE to devicetree probe support.
For now we use a linked in dtb.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:34 +01:00
Sascha Hauer 25dd411420 ARM: Add base am335x-phytec-phycore devicetree file
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:33 +01:00
Sascha Hauer 0644d1da7f ARM: Make ENTRY_FUNCTION more robust
An entry function should begin with a exception header. For this to work
properly the entry function should not contain any code which gcc might
put before the header. To make this sure change the ENTRY_FUNCTION macro
so that it generates one function which only contains the exception header
and a second function which contains the original body of the entry function.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:33 +01:00
Sascha Hauer 509f622099 ARM: Make multi images startup process simpler
The multi image startup process used to have three binaries involved:
- The lowlevel board code to initialize SDRAM
- the uncompressor
- the regular (compressed) barebox binary
Drop the uncompressor and put the uncompress code into the lowlevel
board code binary. This makes the startup process easier.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 14:35:33 +01:00
Steffen Trumtrar d9774caab6 ARM: socfpga: sockit: reconfigure src for sdmmc
Update to Quartus v13.1 autogenerated version.

Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 08:42:12 +01:00
Steffen Trumtrar af10316742 ARM: socfpga: update iocsr config
Update the IO configuration to the Quartus v13.1 version. This seems to fix a
stability issue under the linux kernel when started with barebox.
As this is undocumented, autogenerated stuff, one can not be sure what it really
does nor if it really fixes the problem or just relocates it.

Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 08:42:12 +01:00
Steffen Trumtrar e4ab2b933a ARM: socfpga: sockit: update sdram config
This updates/changes the sdram config for the sockit to the quartus v13.1
autogenerated version.

Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 08:42:12 +01:00
Du Huanpeng ace667e6bb scripts: add arch/x86/lib/barebox.lds to gitignore
Signed-off-by: Du Huanpeng <u74147@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-10 08:40:32 +01:00
Robert Schwebel a9069e3c73 ARM: i.MX6: tqma6x: dts: remove unused dts file
The DTS file for MBa6x is imx6q-mba6x.dts, so it looks like this file
doesn't make any sense.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-09 09:25:30 +01:00
Robert Schwebel da275b4f7a ARM: i.MX6: tqma6x: dts: get MAC address from OCOTP
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-09 09:24:54 +01:00
Robert Schwebel d34ff9c860 ARM: i.MX6: tqma6x: dts: move FEC enablement to baseboard
The definition if the FEC is used is made by the baseboard (MBa6x), not
by the module (TQMa6x). Move it there.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-09 09:24:43 +01:00
Sascha Hauer fd096d9216 Merge branch 'for-next/x86' 2013-12-06 08:23:27 +01:00
Sascha Hauer 6d8a85d6c3 Merge branch 'for-next/tegra' 2013-12-06 08:23:27 +01:00
Sascha Hauer b1e0f08cb0 Merge branch 'for-next/socfpga' 2013-12-06 08:23:27 +01:00
Sascha Hauer 7a653248be Merge branch 'for-next/ppc' 2013-12-06 08:23:27 +01:00
Sascha Hauer ed039cd72b Merge branch 'for-next/omap-drivers' 2013-12-06 08:23:27 +01:00
Sascha Hauer 6d7fae1e97 Merge branch 'for-next/omap-devicetree-prepare' 2013-12-06 08:23:27 +01:00
Sascha Hauer e9ea6eeaab Merge branch 'for-next/misc'
Conflicts:
	scripts/Makefile
2013-12-06 08:23:24 +01:00
Sascha Hauer 18aa86831e Merge branch 'for-next/mips' 2013-12-06 08:22:48 +01:00
Sascha Hauer 0cb6f2c19e Merge branch 'for-next/imx' 2013-12-06 08:22:48 +01:00
Sascha Hauer cac8f8deb4 Merge branch 'for-next/clk' 2013-12-06 08:22:48 +01:00
Steffen Trumtrar 35cedf6389 ARM: socfgpa: sockit: update sequencer_defines
Use the new Quartus II v13.1 generated sequencer_defines.h file.

Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-04 17:21:08 +01:00
Steffen Trumtrar 3b3eb8fc0e ARM: socfgpa: update sequencer
Quartus II v13.1 generates updated sequencer.[ch] files.
Integrate the changes into the current driver.

Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-04 17:21:08 +01:00
Antony Pavlov 28c1421670 MIPS: import exception registers saving from linux kernel
Checking registers saving:

    $ make qemu-malta_defconfig
    $ make

    ...

    $ qemu-system-mips -nodefaults -M malta -m 256 \
       -nographic -serial stdio -bios ./barebox-flash-image

    ...

    barebox:/ md -l 0x03

    Ooops, address error on load or ifetch!

    $ 0   : 00000000 00000000 ffffffff 0000003f
    $ 4   : 00000000 ffffffff 00000004 00000004
    $ 8   : 00000003 a0404d50 00000001 00000002
    $12   : a0404d50 0000000a a0840000 00000003
    $16   : 00000100 a0404d50 00000100 00000003
    $20   : 00000000 a0406cd8 00000000 00000000
    $24   : a083b4d8 a083058c
    $28   : 00000000 a03ffca8 a0406ab0 a0830604
    Hi    : 00000000
    Lo    : 00000040
    epc   : a083056c
    ra    : a0830604
    Status: 00000006
    Cause : 00000410
    Config: 80008482

    ### ERROR ### Please RESET the board ###

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-04 17:01:11 +01:00
Antony Pavlov ddac4f3ea2 MIPS: add asm-offsets.h generation
Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-04 17:01:11 +01:00
Lucas Stach 1a476f8fb3 dts: tegra: activate SDMMC on Colibri T20
Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-04 16:57:36 +01:00
Lucas Stach 78a637d2bf dts: tegra: add SDMMC nodes
Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-04 16:57:35 +01:00
Lucas Stach fbe8c22a2f tegra: switch main CPU complex to PLLX early
Running at 1GHz, rather than 13MHz certainly makes things a bit faster.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-04 14:59:39 +01:00
Lucas Stach 7b6c063f57 tegra: speed up system bus
We run the system bus from the OSC clock during init, to avoid crashing
the system while reconfiguring the PLLs.
Switch to a more reasonable clock when we are done with this.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-04 14:59:39 +01:00
Lucas Stach c50a17104c tegra: fix fallout from relocatable code changes in PLLX init
Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-04 14:59:39 +01:00
Lucas Stach f87af10fb1 ARM: i.MX6: add initial support for SolidRun Cubox-i Carrier-1
Tested to work:
- MMC
- USB
- Ethernet

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-03 11:35:24 +01:00
Sascha Hauer fbf502a9c2 ARM: i.MX external NAND boot: Add missing instruction cache invalidate
Before we jump to SDRAM where we just copied our code we have to
invalidate the instruction cache.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-03 10:20:00 +01:00
Sascha Hauer a110994405 ARM: Karo TX25: Enable debug uart early
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-12-02 13:55:13 +01:00
Sascha Hauer da8fad0d36 ARM: imx: karo tx25: Add config file for imx-image
Currently unused in barebox, but useful for bootstrapping a tx25
from USB where a imx-image is needed.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-27 13:52:50 +01:00
Sascha Hauer 599e61ebd9 bus: Add omap gpmc driver
This adds a devicetree-only driver for to configure the gpmc and its
child devices from dt. Currently only NAND is supported.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-27 10:42:54 +01:00
Sascha Hauer 5c8ea4ff9a omap: gpmc: some refactoring
- make debug messages more meaningful
- calculate value once and use it to print and configure instead
  of calculating it twice

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-27 10:42:53 +01:00
Sascha Hauer 7603f7442b gpio: omap: move to drivers/gpio/
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-27 10:42:53 +01:00
Sascha Hauer ce0ccefb15 ARM: start: fix fdt inside valid memory check
We want to check whether boarddata contains a valid dtb if it's inside
valid memory. This includes the base of SDRAM, so use '>=' instead of '>'.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-26 17:21:33 +01:00
Sascha Hauer fced09ffec ARM: dts: am33xx: Add mmc aliases
barebox needs these for persistent mmc device names.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-25 09:18:31 +01:00
Rostislav Lisovy f9610695d6 ARM: i.mx53: Support for Voipac board with X53-DMM-668 module.
Device definitions is read from the devicetree description.
The board support is using 'multiboard' approach.

Signed-off-by: Rostislav Lisovy <lisovy@gmail.com>

 create mode 100644 arch/arm/boards/freescale-mx53-vmx53/Makefile
 create mode 100644 arch/arm/boards/freescale-mx53-vmx53/board.c
 create mode 100644 arch/arm/boards/freescale-mx53-vmx53/env/config-board
 create mode 100644 arch/arm/boards/freescale-mx53-vmx53/flash-header-imx53-vmx53.imxcfg
 create mode 100644 arch/arm/boards/freescale-mx53-vmx53/lowlevel.c
 create mode 100644 arch/arm/dts/imx53-voipac-bsb.dts
 create mode 100644 arch/arm/dts/imx53-voipac-dmm-668.dtsi
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-25 09:01:33 +01:00
Sascha Hauer fda3bd477e ARM: OMAP: let UART selection depend on its only user
The UART selection is only meaningful to omap3evm, so hide it
from other users.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-25 08:44:37 +01:00
Sascha Hauer 47521eddfe ARM: am33xx: compile SoC files for pbl aswell
This is necessary for successful pbl compilation on am33xx.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-25 08:44:34 +01:00
Vicente Bergas 94e0337ef0 OMAP4: fix omap4_bootsource regression
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-25 08:30:09 +01:00
Vicente Bergas 58923505eb OMAP4: fix writel data/address swap regression
Broken since:

| commit 72e561b5e8
| Author: Sascha Hauer <s.hauer@pengutronix.de>
| Date:   Fri Jul 19 12:07:05 2013 +0200
|
|     ARM: omap4: Use writel where appropriate
|
|     Instead of making a pure 32bit write to a read/modify/write
|     operation with sr32 use writel directly. This saves a few bytes
|     of binary space.
|
|     Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-25 08:28:53 +01:00
Sascha Hauer e0fbce20e6 ARM: OMAP: centralize omap startup
This introduces a single omap_init function which detects the
SoC and does all further SoC initialization. This is done to get
rid of initcalls without proper SoC protection. The same has been
done for i.MX already.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 21:34:06 +01:00
Sascha Hauer 1869803405 spi: omap: encode register offset into device_id
The omap3 and omap4/am33xx spi cores differ in the offset of the
registers in the address space. Instead of encoding this into the
resources use the platform_device_id mechanism. This is done in
preparation for devicetree probe support where the address space
is in the devicetree and can't be adjusted.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 15:35:12 +01:00
Sascha Hauer dd04578bb2 ARM: OMAP: Make debug_ll UART Kconfig selectable
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 15:34:36 +01:00
Sascha Hauer 5a4d27516e ARM: am33xx: Add am33xx_ prefix to SoC specific functions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 14:24:03 +01:00
Sascha Hauer 78697ef74c ARM: dts: AM33xx: Add gpio aliases
barebox depends on these to number the gpio banks correctly.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 14:24:02 +01:00
Sascha Hauer a3247686ff ARM: am335x: Add reg-shift property to uarts
Since we use the generic ns16550 driver we need the regshift property
to correcty access the UART.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 14:24:02 +01:00
Sascha Hauer 8e7a57fb89 ARM: Add am33xx SoC dtsi file
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 14:24:02 +01:00
Sascha Hauer 6c4ce05e76 ARM: dtb: create dt-bindings link
For making #include <dt-bindings/...> work

We already have the necessary -I flag in dtc_cpp_flags, no nothing
needs to be done here.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 14:24:01 +01:00
Sascha Hauer cca45a3299 ARM: OMAP: Make cpu_is_* macros runtime if necessary
Currently unused, just preparation for the next steps when we'll
get multiarch support for OMAP.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 11:25:37 +01:00
Sascha Hauer f56a48471a ARM: OMAP: select correct reset_cpu function at runtime
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 11:25:01 +01:00
Sascha Hauer f6b399ef9b ARM: OMAP: Add SoC prefix to running_in_* functions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 11:24:42 +01:00
Sascha Hauer 6e2a60bb4f ARM: OMAP: select SoC variant from boards
To be able to compile multiple SoC types later.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 11:24:11 +01:00
Sascha Hauer 9ed42fa866 serial: ns16550: Add device ids for omap
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 10:56:49 +01:00
Rostislav Lisovy 9adc411ce2 ARM: dts: i.mx53: Internal keyboard controller + i2c pinmux
Signed-off-by: Rostislav Lisovy <lisovy@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-22 08:04:41 +01:00
Philipp Zabel ef66c5eff3 ARM i.MX6: sabrelite: register SPI flash barebox update handler
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-20 07:20:03 +01:00
Philipp Zabel ed619f16c4 ARM i.MX6: sabrelite: move flash partitions into device tree
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-20 07:20:03 +01:00
Philipp Zabel a959c685bd ARM i.MX6: sabrelite: usb is probed from device tree
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-20 07:20:03 +01:00
Philipp Zabel d3b797fe32 ARM i.MX6: sabrelite: use &uart2 instead of hard-coding path
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-20 07:19:16 +01:00
Philipp Zabel 9f888766d5 ARM i.MX6: sabrelite: switch to multi image support
The image will be named after the official name of this board:

barebox-freescale-mx6-sabreline.img

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-20 07:19:16 +01:00
Philipp Zabel 1c8608cf58 ARM i.MX6: sabrelite: switch to multiboard support
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-20 07:19:16 +01:00
Renaud Barbier 249c48a075 ppc: DA923RC: update board initialisation
Pull the board device reset GPIO pin high as this prevents
PCI bus probing.
The function da923rc_board_init_r is called at the postcore
initcall level so that the udelay function can take advantage
of the core initialisation.

Signed-off-by: Renaud Barbier <renaud.barbier@ge.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-18 10:50:56 +01:00
Renaud Barbier 0e2308643c ppc: mpc85xx: add fsl,mpic node frequency property
The clock frequency property of the device tree node fsl,mpic is
added as it is needed by the PCI driver to function in newer
Linux version.

Signed-off-by: Renaud Barbier <renaud.barbier@ge.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-18 10:50:56 +01:00
Alexander Aring 32a5775125 barebox: remove double semicolons
Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-18 10:13:35 +01:00
Alexander Shiyan c8daebdfd8 ARM: i.MX boards: Remove duplicate dependency of ARCH_IMX21 for IMX_IIM
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-13 06:57:32 +01:00
Alexander Shiyan 564f15db92 ARM: i.MX boards: Remove useless select
Symbols HAVE_DEFAULT_ENVIRONMENT_NEW & HAVE_PBL_MULTI_IMAGES
are already selected by IMX_MULTI_BOARDS.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-13 06:57:32 +01:00
Uwe Kleine-König 3bd7f80d8f mci: mxs: support overwriting the device name via platform data
The current implementation of the bootloader specification depends on the
hardware name and the name of the device in /dev to match. As the default
hardware name is mciX and the device name is diskY the bootloader spec
cannot be used as is.

This patch implements a way to overwrite the device name similar to what is
possible for the imx-esdhc driver.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-11 11:16:22 +01:00
Sebastian Hesselbarth fa1a406f72 ARM: lib: add BAREBOX_CLK_TABLE to linker script
This adds an .oftables section right before .dtb section with
BAREBOX_CLK_TABLE to ARM linker script.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-11 09:26:59 +01:00
Thomas Petazzoni 54911a5887 arch/x86: fix link with recent gcc
Due to unwind tables being generated by recent versions of gcc by
default, the x86 Barebox link fails with:

ld: section .eh_frame loaded at [00000000000197c4,000000000001f31f]
overlaps section .barebox_initcalls loaded at [00000000000197c4,0000000000019833]

Passing -fno-unwind-tables -fno-asynchronous-unwind-tables avoids this
problem.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-11 08:53:43 +01:00
Alexander Shiyan 8529f1281a ARM: mxs: Fix signed/unsigned arguments for printf
"%d" in format string requires a signed integer.
"%u" in format string requires a unsigned integer.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-11 08:52:05 +01:00
Alexander Shiyan 7a1e15bff8 Cleanup Kconfig files
This patch provides a global cleanup barebox Kconfig files. This includes
replacing spaces to tabs, formatting in accordance format.
No functional changes.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-11 08:52:05 +01:00
Alexander Shiyan b9137e9b6d ARM: at91: Fix signed/unsigned arguments for printf
"%d" in format string requires a signed integer.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-11 08:52:05 +01:00
Sascha Hauer d5929e6ffe ARM: remove asm/hardware.h
asm/hardware.h does not have any content except including mach/hardware.h.
include mach/hardware.h directly where needed and get rid of asm/hardware.h

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-08 15:44:13 +01:00
Sascha Hauer ed01aa85ed ARM: Phytec pfla02: Add I2C EEPROM to devicetree
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-08 15:42:13 +01:00
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
Sascha Hauer ded25480d8 Merge branch 'for-next/rpi' 2013-11-07 08:31:47 +01:00
Sascha Hauer b3055b0f6b Merge branch 'for-next/ppc' 2013-11-07 08:31:47 +01:00
Sascha Hauer 398cdf212d Merge branch 'for-next/mtd' 2013-11-07 08:31:47 +01:00
Sascha Hauer 4bcff209bf Merge branch 'for-next/mips' 2013-11-07 08:31:47 +01:00
Sascha Hauer 4c8221be2c Merge branch 'for-next/mci' 2013-11-07 08:31:47 +01:00
Sascha Hauer 2d022b5097 Merge branch 'for-next/imx' 2013-11-07 08:31:47 +01:00
Renaud Barbier 9e1528ce7c ppc: mpc85xx: build directives
Add the Kconfig and Makefile directives to build barebox
for the GEIP DA923RC board.

Signed-off-by: Renaud Barbier <renaud.barbier@ge.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-06 11:04:38 +01:00
Renaud Barbier 8f44af62c5 ppc: DA923RC: add board support
Add the GEIP DA923RC board support. This includes core
files as well as defconfig and make files.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-06 11:04:38 +01:00
Renaud Barbier 04180c0464 ppc: mpc85xx: enable DDR driver
The use of the DDR driver as well as early I2C support is
enabled for board initialising their memory through SPD EEPROM
data.

A SOC specific function returning the DDR bus frequency
is added for the DDR driver to translate DDR timings to
register values.

Signed-off-by: Renaud Barbier <renaud.barbier@ge.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-06 11:04:37 +01:00
Renaud Barbier eb3ce91e59 ppc: mpc85xx: define Ethernet port count
Because the port count is different between the MPC8544 and
existing CPU support, the Ethernet port count is defined on
a per CPU basis.
Accordingly, the TBI PHY initialisation code is updated.

Signed-off-by: Renaud Barbier <renaud.barbier@ge.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-06 11:04:37 +01:00
Renaud Barbier 2e6750444e ppc: mpc85xx: mpc8544 support
Definitions are added to support the mpc8544 sOC.

The function returning the I2C bus frequency is updated
to take into account the mpc8544 specific clock ratio.
A mininal GPIO API is added to enable and set the GPIO
out pins.

Signed-off-by: Renaud Barbier <renaud.barbier@ge.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-06 11:04:37 +01:00
Sascha Hauer d7c1612d65 of: Add a context pointer to fixup functions
If drivers want to fixup their specific instance they need some context
to know which instance they have to fixup.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-06 10:24:46 +01:00
Andre Heider 91b3761ec8 video: add a BCM2835 framebuffer driver
Use the mailbox driver to set up a framebuffer based on the firmware
configuration.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-06 09:59:05 +01:00
Andre Heider 5e9596f3ad ARM: bcm2835: add missing mbox overscan response field
Add the missing "right" field to struct bcm2835_mbox_tag_overscan.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-06 09:59:04 +01:00
Alexander Shiyan 572f03cfb0 USB: i.MX5x: Remove usage of MXC_EHCI_INTERNAL_PHY for OTG port
i.MX5x OTG port is hardwired to the internal UTMI PHY, so having
this configurable makes no sense and helps using this port with DT.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-04 15:06:14 +01:00
Jean-Christophe PLAGNIOL-VILLARD 7a305b2d8a bcm2835: move mci register at board level
not all board have a SD card.

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-04 09:23:06 +01:00
Alexander Shiyan 77b93d7dfe USB: i.MX: Make DT dr_mode & phy_type parameters kernel compatible
Since the mainline kernel now has its own dr_mode and phy_type DT-options
for setting modes of USB ports, do these kernel parameters compatible by
removing "barebox" prefix.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-30 09:52:42 +01:00
Sascha Hauer 865bab0347 mtd: raw: rename raw device
The name of the raw device is mtdraw<num> which is inconsistent to other
mtd devices which are named mtd<num>.<partname>. Rename it to mtd<num>.raw.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-29 09:10:17 +01:00
Sascha Hauer d58d569d0b ARM: i.MX6: Add spi aliases to devicetree
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-29 09:10:01 +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
Eric Bénard 2826ba50ed bcb: fix compilation
this fix :
arch/arm/mach-mxs/bcb.c:268: error: too few arguments to function 'chip->ecc.read_page_raw'
arch/arm/mach-mxs/bcb.c:309: error: too few arguments to function 'chip->write_page'

caution : this is NOT runtime tested.

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-28 14:15:14 +01:00
Antony Pavlov 597b2a2697 MIPS: qemu-malta: doc: add gxemul documentation
GXemul is another MIPS emulator with Malta board support.
As opposed to qemu GXemul supports only fixed GT64120
YAMON-compatible PCI mapping.

As now barebox uses YAMON-style mapping  we can
use GXemul for barebox run.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-28 09:01:48 +01:00
Antony Pavlov 7b29868f3e MIPS: qemu-malta: use YAMON-style GT64120 memory map
There are some reasons for using YAMON-style memory map:
* we can run Linux kernel from barebox;
* we can use GXemul for running barebox.

YAMON-style GT64120 memory map make move UART to the new position.

The files gt64120.h and mach-gt64120.h are imported from Linux.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-28 09:01:48 +01:00
Antony Pavlov 0ac73f1326 MIPS: qemu-malta: update qemu-malta.dox
Only PBL-enabled barebox-flash-image can correctly
get round BoadrID address (0x1fc00010), so let's
recommend barebox-flash-image.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-28 09:01:48 +01:00
Antony Pavlov 401225a04b MIPS: qemu-malta: don't use BoardID address for executable code
On MIPS Technologies boards 0x1fc00010 address
is reserved for BoardID. The hardware or emulator
intercepts accesses to this address and we can't use
this address for storing code.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-28 09:01:48 +01:00
Antony Pavlov 6f81bcd822 MIPS: qemu-malta: doc: drop broken mips.com link
On 8 February 2013 MIPS Technologies was acquired
by Imagination Technologies. Now the http://www.mips.com/ site
is redirected to http://www.imgtec.com/, the Malta development
board page is unreachable.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-28 09:01:48 +01:00
Jean-Christophe PLAGNIOL-VILLARD a0030a8f91 vexpress: mmc support
qemu-system-arm -m 1024 -smp 1 -M vexpress-a15 -monitor pty -kernel zbarebox -drive if=sd,cache=unsafe,file=sd -nographic -tftp . -net nic -net user

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-22 16:49:48 +02:00
Andre Heider 607968f541 ARM: rpi: use the proper ARM memory size
Use the mailbox driver to query the size. This properly takes the
firmware's VideoCore/ARM memory split into account.

Linux can now be booted with more than 128 MiB.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-22 15:28:59 +02:00
Andre Heider a476255682 ARM: rpi: register a clkdev for the eMMC clock
Use the mailbox driver to query the clock frequency and create
a clkdev for the bcm2835_mci driver.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-22 15:28:59 +02:00
Andre Heider 76cb4002af ARM: bcm2835: add a mailbox driver for VideoCore
This allows exchanging data with the on-SoC GPU.

Based on U-Boot code by Stephen Warren.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-22 15:28:59 +02:00
Andre Heider d841f42664 ARM: bcm2835: register the clocksource device earlier
RPi's mailbox driver is used early and it needs clock functions to
handle timeouts.

Register the driver straight after its clkdev.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-22 15:28:58 +02:00
Andre Heider 4754cc79f6 ARM: bcm2835: cleanup clock registering
Sync exposed names while at it.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-22 15:28:58 +02:00
Andre Heider 0fdd91d92b ARM: cache: do not crash when the MMU isn't yet setup
Drivers currently cannot implement explicit cache handling and rely on
running the same code before and after mmu_initcall() without crashing.

Depending on the chosen config options, the cache functions are not yet
setup and using them early on ends in a null pointer dereference.

The RPi's mailbox driver is such a case; it requires cache handling once
the MMU is fully set up and yet the RPi setup needs to use the driver to
get the memory size before mem_initcall() and hence mmu_initcall().

Fix this by checking the cache_fns pointer before dereferencing it.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-22 15:28:58 +02:00
Andre Heider 5611ccb042 ARM: cache: restore cache functions from the PBL
When using CONFIG_MMU_EARLY combined with CONFIG_PBL_IMAGE, the barebox
setup reuses the MMU setup from the PBL, but doesn't setup the cache
functions.

Set these up to guarantee proper early cache handing before mmu_initcall().

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-22 15:28:58 +02:00
Alexander Shiyan 377250baea ARM: i.MX51: Update DTS template
Update i.MX51 DT template from kernel.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-22 08:59:48 +02:00
Sascha Hauer 2976617635 ARM: rpi: add SD card environment support
Similar to the OMAP boards mount the SD card to /boot and expect
the environment as /boot/barebox.env

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-16 09:45:31 +02:00
Sascha Hauer 16dd5e5603 ARM: rpi: Update defconfig
Enable MMU, stack dumps and a lot of other features

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-16 09:39:30 +02:00
Andre Heider 64bf420013 ARM: rpi: fix tty device name in bootargs-base
Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-16 09:38:53 +02:00
Jan Luebbe 579cbebf41 at91: fix typo in Kconfig description
Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-15 08:37:24 +02:00
Sascha Hauer 51c92d290b x86: Fix compiler warnings
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-14 14:04:46 +02:00
Sascha Hauer 6e30646fa2 Merge branch 'for-next/tegra'
Conflicts:
	arch/arm/dts/Makefile
	images/Makefile
2013-10-07 08:02:36 +02:00
Sascha Hauer 904298deb0 Merge branch 'for-next/socfpga'
Conflicts:
	scripts/Makefile
2013-10-07 08:02:24 +02:00
Sascha Hauer ebf9022f2e Merge branch 'for-next/rs485'
Conflicts:
	common/console_common.c
2013-10-07 08:02:14 +02:00
Sascha Hauer a293dc2753 Merge branch 'for-next/omap' 2013-10-07 08:00:39 +02:00
Sascha Hauer 01f37a992f Merge branch 'for-next/net'
Conflicts:
	arch/arm/boards/animeo_ip/init.c
2013-10-07 08:00:36 +02:00
Sascha Hauer 71fbdfbb13 Merge branch 'for-next/mxs' 2013-10-07 08:00:28 +02:00
Sascha Hauer 33c56e21eb Merge branch 'for-next/misc'
Conflicts:
	commands/Makefile
2013-10-07 08:00:25 +02:00
Sascha Hauer d32008b279 Merge branch 'for-next/mips' 2013-10-07 08:00:16 +02:00
Sascha Hauer 409885aaf3 Merge branch 'for-next/mci' 2013-10-07 08:00:16 +02:00
Sascha Hauer 574947ef76 Merge branch 'for-next/console' 2013-10-07 07:59:18 +02:00
Sascha Hauer e48331d6e2 Merge branch 'for-next/bootm' 2013-10-07 07:59:18 +02:00
Sascha Hauer b32f56e7dd Merge branch 'for-next/at91' 2013-10-07 07:59:18 +02:00
Sascha Hauer 2a10286e49 Merge branch 'for-next/arm' 2013-10-07 07:59:18 +02:00
Jean-Christophe PLAGNIOL-VILLARD 6a5121f748 console: factorise function to get the first enabled console
rename it to console_get_first_active

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-06 13:19:46 +02:00
Jan Luebbe 453fe26ed7 beaglebone: use most recent timings for white variant
These values come from the U-Boot source code.

Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-06 13:13:53 +02:00
Jan Luebbe 58bed295c2 arm: omap: am33xx_generic: fix DDR setup for DDR2
For DDR2 RAMs, regs->zq_config is not used, which causes the
AM33XX_EMIF4_0_REG(SDRAM_CONFIG) register to be left unconfigured, resulting
in boot failure.

It seems that the DDR2 case was missed during the consolidation in commit
9f122f8bf0. The actual call for the Bone was
removed in 88659d9c4a.

Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-06 13:13:53 +02:00
Jan Luebbe 138f604bb2 arm: mmu: be more verbose if ttb setup fails
Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-06 13:13:53 +02:00
Jan Luebbe 45b1e9c274 am33xx_generic: convert from switch to if/else
The function am33xx_get_cpu_rev may be called before barebox_arm_entry(),
so we need to avoid switch statements. One example is the BeagleBone,
where we use this function to differenciate between the white and black
variants.

Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-06 13:13:53 +02:00
Lucas Stach f93b5f8eb9 tegra: switch to multi image
To keep things clean I removed all support for the old way to build
images. There is now a single tegra_v7 defconfig which builds both
supported Tegra boards as images.
The new image generation also paves the way for integration of the
tegra-cbootimage tool to produce directly flashable images.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-02 10:24:05 +02:00
Lucas Stach f3cf0157fb tegra: ac100: delete custom Kconfig
Now that tegra arch is both DT only and forced relocatable
there is nothing interesting left in here.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-02 10:24:05 +02:00
Lucas Stach 4581ea746f tegra: don't force to choose between Tegra arches
There is nothing technically preventing a single Tegra 20/30
image to be built. Don't force this split in Kconfig.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-02 10:24:05 +02:00
Lucas Stach c7aa6cc731 tegra: mandate relocatable binary
Allows us to drop some silly code workaround.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-02 10:24:04 +02:00
Lucas Stach c05a80c825 tegra: fix PBL build
Drop useless BUG(), we are too early for them to be of any use.
Make sure we build the AVP code as ARMv4 even in PBL case.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-02 10:24:04 +02:00
Lucas Stach 02568520ee tegra: start maincomplex execution at correct offset
Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-02 10:24:04 +02:00
Lucas Stach 5163280d65 tegra: try harder inlining early startup functions
It seems GCC 4.8 tries to be clever by not inlining some of those
functions. This causes havok, as it's absolutely required to inline
the early startup function, otherwise we may end up calling ARMv7 code
on the ARMv4 AVP.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-02 10:24:04 +02:00
Sascha Hauer b2755ea06d mips: bcm47xx: Fix compiler warning
Fixes:

arch/mips/mach-bcm47xx/include/mach/debug_ll.h: In function 'PUTC_LL':
arch/mips/mach-bcm47xx/include/mach/debug_ll.h:33: warning: passing argument 1 of '__raw_readb' makes pointer from integer without a cast
arch/mips/mach-bcm47xx/include/mach/debug_ll.h:34: warning: passing argument 2 of '__raw_writeb' makes pointer from integer without a cast

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-02 09:50:48 +02:00
Sascha Hauer fd4d237fc9 ARM: vexpress: Fix compiler warning
Fixes:

arch/arm/boards/vexpress/init.c: In function 'vexpress_core_init':
arch/arm/boards/vexpress/init.c:139:22: warning: 'hostname' may be used uninitialized in this function [-Wmaybe-uninitialized]

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-10-02 09:50:40 +02:00
Sascha Hauer 9d5cf83ed1 ARM: Ka-Ro TX28: Fix result checking of devfs_add_partition
devfs_add_partition was changed to return the cdev. Fix the result
checking accordingly.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-30 16:08:23 +02:00
Sascha Hauer cfe7885b04 ARM: mx23-evk: Fix result checking of devfs_add_partition
devfs_add_partition was changed to return the cdev. Fix the result
checking accordingly.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-30 16:08:11 +02:00
Sascha Hauer 826928bd31 ARM: friendlyarm-tiny210: remove unused variable
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-30 16:05:05 +02:00
Sascha Hauer 17475ec0a3 ARM: edb93xx: Add missing include
Fixes:

arch/arm/boards/edb93xx/edb93xx.c: In function 'edb93xx_console_init':
arch/arm/boards/edb93xx/edb93xx.c:123:2: warning: implicit declaration of function 'free' [-Wimplicit-function-declaration]

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-30 16:04:34 +02:00
Sascha Hauer 5ee4ad2229 environment variables: introduce new helpers
This introduces some new environment variable helpers and updates
the existing ones. Newly introduced are:

getenv_bool: read a bool variable
getenv_ul: read an unsigned long variable
getenev_uint: read an unsigned int variable
getenv_nonempty: like normal getenv, but does return NULL instead of an
                 empty string

All new helpers take a pointer to the value. This value is only modified
when the variable exists. This allows the following programming scheme:

	unsigned int myvalue = sanedefault;

	getenv_uint("myvalue", &myvalue);

So without checking the return value myvalue contains the best possible
value.

getenv_ull is updated to this scheme.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-30 10:28:52 +02:00
Jan Weitzel c988b8bf7f i2c-omap: Update driver
The driver didn't work well with at24 driver. NACKS are lost.
Errors are lost in isr due to the local variable err. Also we didn't wait for
bus free in omap_i2c_xfer_msg.

Fix issues and get other improvements from linux kernel

Tested on OMAP4 and AM335x

Signed-off-by: Jan Weitzel <j.weitzel@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-27 16:24:37 +02:00
Sascha Hauer 0b342aca51 scripts/omap_signGP: add getopt
Instead of using positional arguments add proper getopt support.
This also adds a help text.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-27 16:24:37 +02:00
Sascha Hauer 41dd510b5c ARM: OMAP: unconditionally use /boot/barebox.env
The startup process falls back to /dev/defaultenv automatically,
no need to decide here.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-27 16:13:19 +02:00
Sascha Hauer 5913b71943 ARM: OMAP: register OMAP specific barebox bootm handler
The OMAP ROM code passes the boot information via r0 to the
bootloader. Add an OMAP specific barebox handler to pass this
information to the next stage. This allows us to chainload
bootloaders without loosing the information where we booted from.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-27 16:13:19 +02:00
Sascha Hauer 7220b134ba ARM: pfla02: Fix compiler warning
PUTC_LL no longer exists. Use putc_ll instead.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-27 11:12:43 +02:00
Teresa Gámez 2dd415bce2 arm: Update mach-types
Signed-off-by: Teresa Gámez <t.gamez@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-27 10:56:37 +02:00
Sascha Hauer 9d88abf958 ARM: OMAP: Add missing include
Include mach/generic.h where omap_set_bootmmc_devname is declared.
Change the argument of omap_set_bootmmc_devname to const char *
to fix the resulting conflicting prototypes.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-27 09:09:58 +02:00
Sascha Hauer ab8a576a09 ARM: dts: i.MX6q: cpus/cpu nodes dts updates
Add device_type = "cpu", otherwise a v3.10 kernel boots with only
one CPU enabled.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-27 07:11:02 +02:00
Sascha Hauer fe4ecd1dbf ARM: Altera SoCFPGA: Add defconfig files
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-26 12:29:53 +02:00
Jean-Christophe PLAGNIOL-VILLARD 7359e28522 Animeo IP: add rs485 crossing detection support
this will be used to force the update or the start test mode

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-24 09:21:40 +02:00
Sascha Hauer 56f33b4679 ARM: compile bootm code depending on CONFIG_BOOTM
The bootm code is now independent from the actual bootm command, so
compile the ARM specific bootm code based on CONFIG_BOOTM and not on
CONFIG_CMD_BOOTM.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-24 09:03:18 +02:00
Sascha Hauer 9fc58d665e ARM: SoCFPGA: Add EBV SoCrates board support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-23 08:40:32 +02:00
Sascha Hauer e07ddb8b97 ARM: SoCFPGA: Add Terasic SoCkit board support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-23 08:40:32 +02:00
Sascha Hauer 5b5f6ab6bf ARM: Add Altera SoCFPGA support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-23 08:40:32 +02:00
Sascha Hauer b808f19382 ARM: invalidate caches thoroughly
The data caches should be invalided once during startup. This should
also be done when we do not have the MMU enabled in barebox because
the Kernel does not invalidate the caches during start.

To make this sure this patch enables the arm_early_mmu_cache_invalidate
function even if MMU support is disabled. Additionally this patch adds
calls to arm_early_mmu_cache_invalidate in start.c and uncompress.c.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-23 08:40:31 +02:00
Jean-Christophe PLAGNIOL-VILLARD d4da338105 animeo_ip: fix macb pin mux and set phy interface as MII
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-23 08:40:31 +02:00
Jean-Christophe PLAGNIOL-VILLARD f1631493e5 at91: add irq fixup
Some of the irq can still be on after a reset or power on as the IP are
powered by the backup power. This could lead to an interrupt dead lock
when the kernel boot. So disable them before booting.

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-23 08:40:31 +02:00
Jean-Christophe PLAGNIOL-VILLARD a99a74f87f animeo_ip: retrieve the mac from the macb and set private mac to asix
if the macb's mac is not a valid public mac set a private with "smf" as OUI
as the mac address might be set by the previous bootloader

set a private with "smf" as OUI for asix

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-23 08:22:24 +02:00
Jean-Christophe PLAGNIOL-VILLARD 6e419891d2 animeo_ip: ensure the phy is reset correctly
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-23 08:22:19 +02:00
Jean-Christophe PLAGNIOL-VILLARD 189678dc67 versatilepb: enable qemu fixup
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-22 16:48:03 +02:00
Sascha Hauer e0be72d3cd ARM: invalidate caches thoroughly
The data caches should be invalided once during startup. This should
also be done when we do not have the MMU enabled in barebox because
the Kernel does not invalidate the caches during start.

To make this sure this patch enables the arm_early_mmu_cache_invalidate
function even if MMU support is disabled. Additionally this patch adds
calls to arm_early_mmu_cache_invalidate in start.c and uncompress.c.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-21 10:00:00 +02:00
Jean-Christophe PLAGNIOL-VILLARD e62d425517 console: drop f_caps and check the function pointer getc/putc instead
None of the driver make the difference between STDOUT and STDERR.
So we just need to check if putc or getc are filled in the console_device

save 32 bytes on versatilepb

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-21 09:59:16 +02:00
Jean-Christophe PLAGNIOL-VILLARD a283034600 animeo_ip: set uSD port devname to microsd
so we can always found it and not confuse it with a usb stick device

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-20 08:51:42 +02:00
Jean-Christophe PLAGNIOL-VILLARD c7a7c00f8e Animeo IP: add usb host support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-09-20 08:34:53 +02:00