project/bcm63xx/u-boot.git
10 years agoRevert "arm: mxs: Add support for generating signed BootStream"
Stefano Babic [Fri, 4 Apr 2014 09:29:29 +0000 (11:29 +0200)]
Revert "arm: mxs: Add support for generating signed BootStream"

This reverts commit 53e6b14e037c9f72e6d03244c32d8d597e2e0234.

Patch does not merge anymore with u-boot-arm and must be rebased.

Signed-off-by: Stefano Babic <sbabic@denx.de>
10 years agomx6: add example DTB for mx6qsabreauto
Stefano Babic [Mon, 31 Mar 2014 07:50:36 +0000 (09:50 +0200)]
mx6: add example DTB for mx6qsabreauto

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Fabio Estevam <fabio.estevam@freescale.com>
10 years agoimx: add rules for U-Boot DTB support
Stefano Babic [Mon, 31 Mar 2014 07:50:35 +0000 (09:50 +0200)]
imx: add rules for U-Boot DTB support

Signed-off-by: Stefano Babic <sbabic@denx.de>
10 years agomxs: fix warning in SPL with console support
Stefano Babic [Wed, 2 Apr 2014 08:42:06 +0000 (10:42 +0200)]
mxs: fix warning in SPL with console support

Signed-off-by: Stefano Babic <sbabic@denx.de>
10 years agoarm: mxs: Add serial console support into SPL
Marek Vasut [Wed, 19 Mar 2014 01:21:36 +0000 (02:21 +0100)]
arm: mxs: Add serial console support into SPL

Add support for serial console into the i.MX23/i.MX28 SPL. A full,
uncrippled serial console support comes very helpful when debugging
various spectacular hardware bringup issues early in the process.
Because we do not use SPL framework, but have our own minimalistic
SPL, which is compatible with the i.MX23/i.MX28 BootROM, we do not
use preloader_console_init(), but instead use a similar function to
start the console. Nonetheless, to avoid blowing up the size of the
SPL binary, this support is enabled only if CONFIG_SPL_SERIAL_SUPPORT
is defined, which is disabled by default.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
10 years agoarm: mxs: Properly set GD pointer in SPL
Marek Vasut [Wed, 19 Mar 2014 01:21:35 +0000 (02:21 +0100)]
arm: mxs: Properly set GD pointer in SPL

Set the GD pointer in the SPL to a defined symbol so various
functions from U-Boot can be used without adverse side effects.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
10 years agoarm: mx5: Avoid hardcoding memory sizes on M53EVK
Marek Vasut [Fri, 28 Mar 2014 07:31:01 +0000 (08:31 +0100)]
arm: mx5: Avoid hardcoding memory sizes on M53EVK

The DRAM size can be easily detected at runtime on i.MX53. Implement
such detection on M53EVK and adjust the rest of the macros accordingly
to use the detected values.

An important thing to note here is that we had to override the function
for trimming the effective DRAM address, get_effective_memsize(). That
is because the function uses CONFIG_MAX_MEM_MAPPED as the upper bound of
the available DRAM and we don't have gd->bd->bi_dram[0].size set up at
the time the function is called, thus we cannot put this into the macro
CONFIG_MAX_MEM_MAPPED . Instead, we use custom override where we use the
size of the first DRAM block which we just detected.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
10 years agoarm: mx5: Fix memory slowness on M53EVK
Marek Vasut [Fri, 28 Mar 2014 07:31:00 +0000 (08:31 +0100)]
arm: mx5: Fix memory slowness on M53EVK

Fix memory access slowness on i.MX53 M53EVK board. Let us inspect the
issue: First of all, the i.MX53 CPU has two memory banks mapped at
0x7000_0000 and 0xb000_0000 and each of those can hold up to 1GiB of
DRAM memory. Notice that the memory area is not continuous. On M53EVK,
each of the banks contain 512MiB of DRAM, which makes a total of 1GiB
of memory available to the system.

The problem is how the relocation of U-Boot is treated on i.MX53 . The
U-Boot is placed at the ((start of first DRAM partition) + (gd->ram_size)) .
This in turn poses a problem, since in our case, the gd->ram_size is 1GiB,
the first DRAM bank starts at 0x7000_0000 and contains 512MiB of memory.
Thus, with this algorithm, U-Boot is placed at offset:

    0x7000_0000 + 1GiB - sizeof(u-boot and some small margin)

This is past the DRAM available in the first bank on M53EVK, but is still
within the address range of the first DRAM bank. Because of the memory
wrap-around, the data can still be read and written to this area, but the
access is much slower.

There were two ideas how to solve this problem, first was to map both of
the available DRAM chunks next to one another by using MMU, second was to
define CONFIG_VERY_BIG_RAM and CONFIG_MAX_MEM_MAPPED to size of the memory
in the first DRAM bank. We choose the later because it turns out the former
is not applicable afterall. The former cannot be used in case Linux kernel
was loaded into the second DRAM bank area, which would be remapped and one
would try booting the kernel, since at some point before the kernel is started,
the MMU would be turned off, which would destroy the mapping and hang the
system.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
10 years agoarm: mx5: Avoid hardcoding memory sizes on MX53QSB
Marek Vasut [Fri, 28 Mar 2014 07:30:59 +0000 (08:30 +0100)]
arm: mx5: Avoid hardcoding memory sizes on MX53QSB

The DRAM size can be easily detected at runtime on i.MX53. Implement
such detection on MX53QSB and adjust the rest of the macros accordingly
to use the detected values.

An important thing to note here is that we had to override the function
for trimming the effective DRAM address, get_effective_memsize(). That
is because the function uses CONFIG_MAX_MEM_MAPPED as the upper bound of
the available DRAM and we don't have gd->bd->bi_dram[0].size set up at
the time the function is called, thus we cannot put this into the macro
CONFIG_MAX_MEM_MAPPED . Instead, we use custom override where we use the
size of the first DRAM block which we just detected.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
10 years agoarm: mx5: Fix memory slowness on MX53QSB
Marek Vasut [Fri, 28 Mar 2014 07:30:58 +0000 (08:30 +0100)]
arm: mx5: Fix memory slowness on MX53QSB

Fix memory access slowness on i.MX53 MX53QSB board. Let us inspect the
issue: First of all, the i.MX53 CPU has two memory banks mapped at
0x7000_0000 and 0xb000_0000 and each of those can hold up to 1GiB of
DRAM memory. Notice that the memory area is not continuous. On MX53QSB,
each of the banks contain 512MiB of DRAM, which makes a total of 1GiB
of memory available to the system.

The problem is how the relocation of U-Boot is treated on i.MX53 . The
U-Boot is placed at the ((start of first DRAM partition) + (gd->ram_size)) .
This in turn poses a problem, since in our case, the gd->ram_size is 1GiB,
the first DRAM bank starts at 0x7000_0000 and contains 512MiB of memory.
Thus, with this algorithm, U-Boot is placed at offset:

    0x7000_0000 + 1GiB - sizeof(u-boot and some small margin)

This is past the DRAM available in the first bank on MX53QSB, but is still
within the address range of the first DRAM bank. Because of the memory
wrap-around, the data can still be read and written to this area, but the
access is much slower.

There were two ideas how to solve this problem, first was to map both of
the available DRAM chunks next to one another by using MMU, second was to
define CONFIG_VERY_BIG_RAM and CONFIG_MAX_MEM_MAPPED to size of the memory
in the first DRAM bank. We choose the later because it turns out the former
is not applicable afterall. The former cannot be used in case Linux kernel
was loaded into the second DRAM bank area, which would be remapped and one
would try booting the kernel, since at some point before the kernel is started,
the MMU would be turned off, which would destroy the mapping and hang the
system.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
10 years agoARM: mx6: Add PCIe on SabreSDP
Marek Vasut [Sun, 23 Mar 2014 21:45:41 +0000 (22:45 +0100)]
ARM: mx6: Add PCIe on SabreSDP

Add support for PCIe on MX6 SabreSDP board and enable the support
in the config file.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Liu Ying <Ying.Liu@freescale.com>
10 years agopci: mx6: Implement power callback
Marek Vasut [Sun, 23 Mar 2014 21:45:40 +0000 (22:45 +0100)]
pci: mx6: Implement power callback

Implement a callback to toggle the slot power supply. The callback
can be overriden in case some more complex power supply for the slot
was implemented in hardware, yet for the usual case, one can define
a GPIO which toggles the power to the slot.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Liu Ying <Ying.Liu@freescale.com>
10 years agoARM: mx6: Disable PCIe on SABRE Lite/Nitrogen6x
Eric Nelson [Sat, 22 Mar 2014 15:17:09 +0000 (08:17 -0700)]
ARM: mx6: Disable PCIe on SABRE Lite/Nitrogen6x

Use of PCIe on SABRE Lite and Nitrogen6x boards
is atypical and requires the use of custom daughter
boards.

Use in U-Boot is even rarer, so this patch removes it from
the standard configuration.

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Acked-by: Marek Vasut <marex@denx.de>
10 years agowoodburn_sd: Remove CONFIG_BOOT_INTERNAL
Fabio Estevam [Sun, 16 Mar 2014 21:20:09 +0000 (18:20 -0300)]
woodburn_sd: Remove CONFIG_BOOT_INTERNAL

CONFIG_BOOT_INTERNAL is not used anywhere, so let's remove it.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
10 years agoARM: mxs: Add OCOTP driver
Marek Vasut [Thu, 6 Mar 2014 00:52:03 +0000 (01:52 +0100)]
ARM: mxs: Add OCOTP driver

Add yet another OCOTP driver for this i.MX family. This time, it's a driver for
the OCOTP variant found in the i.MX23 and i.MX28. This version of OCOTP is too
different from the i.MX6 one that I could not use the mxc_ocotp.c driver without
making it into a big pile of #ifdef . This driver implements the regular fuse
command interface, but due to the IP blocks' limitation, we support only READ
and PROG functions.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
10 years agoarm: mxs: Add support for generating signed BootStream
Marek Vasut [Wed, 5 Mar 2014 19:01:14 +0000 (20:01 +0100)]
arm: mxs: Add support for generating signed BootStream

This patch adds the groundwork for generating signed BootStream, which
can be used by the HAB library in i.MX28. We are adding a new target,
u-boot-signed.sb , since the process for generating regular non-signed
BootStream is much easier. Moreover, the signed bootstream depends on
external _proprietary_ _binary-only_ tool from Freescale called 'cst',
which is available only under NDA.

To make things even uglier, the CST or HAB mandates a kind-of circular
dependency. The problem is, unlike the regular IVT, which is generated
by mxsimage, the IVT for signed boot must be generated by hand here due
to special demands of the CST. The U-Boot binary (or SPL binary) and IVT
are then signed by the CST as a one block. But here is the problem. The
size of the entire image (U-Boot, IVT, CST blocks) must be appended at
the end of IVT. But the size of the entire image is not known until the
CST has finished signing the U-Boot and IVT. We solve this by expecting
the CST block to be always 3904B (which it is in case two files, U-Boot
and the hand-made IVT, are signed in the CST block).

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
10 years agoarm: mxs: Adjust the load address of U-Boot and SPL for HAB
Marek Vasut [Wed, 5 Mar 2014 19:01:13 +0000 (20:01 +0100)]
arm: mxs: Adjust the load address of U-Boot and SPL for HAB

When using HAB, there are additional special requirements on the placement of
U-Boot and the U-Boot SPL in memory. To fullfill these, this patch moves the
U-Boot binary a little further from the begining of the DRAM, so the HAB CST
and IVT can be placed in front of the U-Boot binary. This is necessary, since
both the U-Boot and the IVT must be contained in single CST signature. To
make things worse, the IVT must be concatenated with one more entry at it's
end, that is the length of the entire CST signature, IVT and U-Boot binary
in memory. By placing the blocks in this order -- CST, IVT, U-Boot, we can
easily align them all and then produce the length field as needed.

As for the SPL, on i.MX23/i.MX28, the SPL size is limited to 32 KiB, thus
we place the IVT at 0x8000 offset, CST right past IVT and claim the size
is correct. The HAB library accepts this setup.

Finally, to make sure the vectoring in SPL still works even after moving
the SPL from 0x0 to 0x1000, we add a small function which copies the
vectoring code and tables to 0x0. This is fine, since the vectoring code
is position independent.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
10 years agomx25pdk: Align the environment with other FSL boards
Fabio Estevam [Wed, 5 Mar 2014 18:51:00 +0000 (15:51 -0300)]
mx25pdk: Align the environment with other FSL boards

Allow the boot of a device tree mainline kernel by aligning the environment
variables with other FSL boards.

Tested NFS boot of a dt 3.14-rc5 kernel.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Acked-by: Stefano Babic <sbabic@denx.de>
10 years agoventana: Add Gateworks Ventana family support
Tim Harvey [Thu, 6 Mar 2014 15:46:30 +0000 (07:46 -0800)]
ventana: Add Gateworks Ventana family support

Gateworks Ventana is a product family based on the i.MX6.  This
patch adds support for all boards in the Ventana family. Where
possible, data from the boards EEPROM is used to determine various
details about the board at runtime.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Stefano Babic [Wed, 5 Mar 2014 11:51:26 +0000 (12:51 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

10 years agofb: Add a prototype for board_video_skip()
Fabio Estevam [Sat, 15 Feb 2014 16:52:02 +0000 (14:52 -0200)]
fb: Add a prototype for board_video_skip()

Add a prototype for board_video_skip() in order to fix the following sparse
warning:

wandboard.c:227:5: warning: symbol 'board_video_skip' was not declared. Should it be static?

Cc: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
10 years agowandboard: Include <input.h>
Fabio Estevam [Sat, 15 Feb 2014 16:52:01 +0000 (14:52 -0200)]
wandboard: Include <input.h>

Include <input.h> in order to fix the following sparse warning:

wandboard.c:278:5: warning: symbol 'overwrite_console' was not declared. Should it be static?

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
10 years agowandboard: Fix sparse warning
Fabio Estevam [Sat, 15 Feb 2014 16:52:00 +0000 (14:52 -0200)]
wandboard: Fix sparse warning

Add a prototype for board_phy_config() to fix the following sparse warning:

wandboard.c:200:5: warning: symbol 'board_phy_config' was not declared. Should it be static?

Cc: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
10 years agommc: Add a prototype for board_mmc_init()
Fabio Estevam [Sat, 15 Feb 2014 16:51:59 +0000 (14:51 -0200)]
mmc: Add a prototype for board_mmc_init()

Fixes the following sparse warning:

wandboard.c:137:5: warning: symbol 'board_mmc_init' was not declared. Should it be static?

Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
10 years agowandboard: Staticize usdhc1_pads
Fabio Estevam [Sat, 15 Feb 2014 16:51:58 +0000 (14:51 -0200)]
wandboard: Staticize usdhc1_pads

Fix the following sparse warning:

wandboard.c:58:22: warning: symbol 'usdhc1_pads' was not declared. Should it be static?

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
10 years agopower: add PFUZE100 PMIC driver
Tim Harvey [Thu, 13 Feb 2014 07:48:12 +0000 (23:48 -0800)]
power: add PFUZE100 PMIC driver

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Acked-by: Stefano Babic <sbabic@denx.de>
10 years agoarm: am335x: DXR2: Reset SMSC LAN9303 switch via GPIO upon bootup
Stefan Roese [Tue, 25 Feb 2014 10:07:22 +0000 (11:07 +0100)]
arm: am335x: DXR2: Reset SMSC LAN9303 switch via GPIO upon bootup

Since the switch may be re-configured for VLAN usage in Linux (or any
other OS), lets reset the switch to its default register values upon
power-up. Otherwise network might not be available in U-Boot.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Heiko Schocher <hs@denx.de>
Cc: Roger Meier <r.meier@siemens.com>
Cc: Lukas Stockmann <lukas.stockmann@siemens.com>
Cc: Tom Rini <trini@ti.com>
10 years agoARM: AM43xx: Change DDR3 Reset Value
Dave Gerlach [Tue, 18 Feb 2014 12:32:01 +0000 (07:32 -0500)]
ARM: AM43xx: Change DDR3 Reset Value

The bit DDR3_RST_DEF_VAL inside CTRL_DDR_IO represents the default value
of the ddr reset value for DDR3 before the EMIF takes over. We must have
this bit set high so that on exit from DeepSleep0 within the kernel the
reset line has the proper value.

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
10 years agoARM: AM43xx: Write sdram_config to secure_emif_sdram_config
Dave Gerlach [Tue, 18 Feb 2014 12:32:00 +0000 (07:32 -0500)]
ARM: AM43xx: Write sdram_config to secure_emif_sdram_config

The register secure_emif_sdram_config in control module is copied to
the EMIF sdram_config register when it is coming out of DeepSleep0 in
order to ensure that the EMIF comes up for the correct type of DDR.
Without this, resume can hang from within the kernel.

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
10 years agoARM: AM43xx: EMIF: configure self-refresh entry delay
Dave Gerlach [Tue, 18 Feb 2014 12:31:59 +0000 (07:31 -0500)]
ARM: AM43xx: EMIF: configure self-refresh entry delay

Per a suggestion from the hardware team, program the emif_pwr_mgmt_ctrl
and emif_pwr_mgmt_ctrl_shdw registers within the EMIF to hold the
desired delay in cycles that the EMIF waits without an access to enter
self-refresh, in this case 8192 cycles. With this, code desiring to
enter self refresh only has to toggle one bit to enable it.

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
10 years agoARM: AM43xx: Add Ethernet boot support to SPL
Mugunthan V N [Tue, 18 Feb 2014 12:31:58 +0000 (07:31 -0500)]
ARM: AM43xx: Add Ethernet boot support to SPL

Add Ethernet Boot support to SPL

Acked-by: Tom Rini <trini@ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
10 years agoARM: AM4372: Update EMIF registers for DDR3
Lokesh Vutla [Tue, 18 Feb 2014 12:31:57 +0000 (07:31 -0500)]
ARM: AM4372: Update EMIF registers for DDR3

Updating EMIF_PHY_CTRL and adding EMIF_READ_WRITE_EXECUTION_THRESHOLD
registers.
In EMIF_PHY_CTRL:
Updating [4:0]READ_LATENCY to 8, because at higher frequencies like
400MHz the read latency expected will be CL+3 as per tests from HW
folks.
Clearing [19]PHY_DIS_CALIB_RST bit as this is used onl for debug
purpose. With out this resume is not working(Still waiting for PHY team
to come back for better explanation).

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
10 years agoARM: DRA7xx: add support for reading cpsw 2nd mac from efuse
Mugunthan V N [Tue, 18 Feb 2014 12:31:56 +0000 (07:31 -0500)]
ARM: DRA7xx: add support for reading cpsw 2nd mac from efuse

Adding support for reading cpsw 2nd mac address from efuse and pass it
to kernel via dtb which will be used in dual emac mode of cpsw.
Also correct the bit masking of mac id read from the efuse.

Acked-by: Tom Rini <trini@ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
10 years agoARM: AM335x: add support for reading cpsw 2nd mac address from efuse
Mugunthan V N [Tue, 18 Feb 2014 12:31:55 +0000 (07:31 -0500)]
ARM: AM335x: add support for reading cpsw 2nd mac address from efuse

Adding support for reading cpsw 2nd mac address from efuse and pass it
to kernel via dtb which will be used in dual emac mode of cpsw.
Also adding mii command support to am335x common config.

Acked-by: Tom Rini <trini@ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
10 years agoARM: AM43xx: Add CPSW support to AM43xx EPOS and GP EVM
Mugunthan V N [Tue, 18 Feb 2014 12:31:54 +0000 (07:31 -0500)]
ARM: AM43xx: Add CPSW support to AM43xx EPOS and GP EVM

Adding support for CPSW to AM43xx EPOS nad GP EVM which is connected
to RMII and RGMII phy respectively and enable cpsw in config.

Reviewed-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
10 years agoARM: AM43xx: clocks: Enable CPGMAC clock control
Mugunthan V N [Tue, 18 Feb 2014 12:31:53 +0000 (07:31 -0500)]
ARM: AM43xx: clocks: Enable CPGMAC clock control

Enable CPGMAC clock control for AM43xx to use ethernet in U-Boot

Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
10 years agodrivers: net: cpsw: add support to have phy address from cpsw platform data
Mugunthan V N [Tue, 18 Feb 2014 12:31:52 +0000 (07:31 -0500)]
drivers: net: cpsw: add support to have phy address from cpsw platform data

Some platforms like AM437x have different EVMs with different phy addresses,
so this patch adds support for passing phy address via cpsw plaform data.
Also renamed phy_id to phy_addr so better understanding of the code.

Reviewed-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
[trini: Update BuR am335x_igep0033 pcm051_rev3 pcm051_rev1 cm_t335
pengwyn boards]
Signed-off-by: Tom Rini <trini@ti.com>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Tom Rini [Wed, 26 Feb 2014 21:49:58 +0000 (16:49 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

Conflicts:
arch/arm/cpu/armv7/config.mk
board/ti/am43xx/mux.c
include/configs/am43xx_evm.h

Signed-off-by: Tom Rini <trini@ti.com>
10 years agoarm: Switch to -mno-unaligned-access when supported by the compiler
Tom Rini [Tue, 25 Feb 2014 15:27:01 +0000 (10:27 -0500)]
arm: Switch to -mno-unaligned-access when supported by the compiler

When we tell the compiler to optimize for ARMv7 (and ARMv6 for that
matter) it assumes a default of SCTRL.A being cleared and unaligned
accesses being allowed and fast at the hardware level.  We set this bit
and must pass along -mno-unaligned-access so that the compiler will
still breakdown accesses and not trigger a data abort.

To better help understand the requirements of the project with respect
to unaligned memory access, the
Documentation/unaligned-memory-access.txt file has been added as
doc/README.unaligned-memory-access.txt and is taken from the v3.14-rc1
tag of the kernel.

Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Mans Rullgard <mans@mansr.com>
Signed-off-by: Tom Rini <trini@ti.com>
10 years agocheckpatch.pl: Add warning for new __packed additions
Tom Rini [Tue, 25 Feb 2014 15:27:00 +0000 (10:27 -0500)]
checkpatch.pl: Add warning for new __packed additions

While there are valid reasons to use __packed, often the answer is that
you should be doing something else here instead.

Signed-off-by: Tom Rini <trini@ti.com>
10 years agoarm: remove unneeded symbol offsets and _TEXT_BASE
Albert ARIBAUD [Sat, 22 Feb 2014 16:53:43 +0000 (17:53 +0100)]
arm: remove unneeded symbol offsets and _TEXT_BASE

Remove the last uses of symbol offsets in ARM U-Boot.
Remove some needless uses of _TEXT_BASE.
Remove all _TEXT_BASE definitions.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
10 years agoarm: make _end compiler-generated
Albert ARIBAUD [Sat, 22 Feb 2014 16:53:42 +0000 (17:53 +0100)]
arm: make _end compiler-generated

This prevents references to _end from generating absolute
relocation records.

This change is binary invariant for ARM targets.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
10 years agocm_t335: fix linker file to produce full ELF
Albert ARIBAUD [Sat, 22 Feb 2014 16:53:41 +0000 (17:53 +0100)]
cm_t335: fix linker file to produce full ELF

Newly added cm_t335 was missed in commit 47ed5dd0 which
made ARM targets produce full ELF files. Fix its linker
script.

This change is binary-invariant when only .dynsym, .dynstr,
.dynamic, .plt, .interp and .gun sections are declared.

Sections .hash, .got.plt, .dynbss and .ARM.exidx are also
declared so that their (unused) content is moved out of the
u-boot binary.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
10 years agoRevert "ext4fs: Add ext4 extent cache for read operations"
Tom Rini [Wed, 26 Feb 2014 13:18:58 +0000 (08:18 -0500)]
Revert "ext4fs: Add ext4 extent cache for read operations"

This reverts commit fc0fc50f38a4d7d0554558076a79dfe8b0d78cd5.

The author has asked on the mailing list that we revert this for now as
it breaks write support.

Reported-by: Łukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Tom Rini <trini@ti.com>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Tom Rini [Tue, 25 Feb 2014 17:44:13 +0000 (12:44 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

With this, fixup a trivial build error of get_effective_memsize needing
to be updated in the new board/freescale/p1010rdb/spl.c

Signed-off-by: Tom Rini <trini@ti.com>
10 years agoarm: omap: delete unincluded omap-common/config.mk
Masahiro Yamada [Tue, 25 Feb 2014 01:01:50 +0000 (10:01 +0900)]
arm: omap: delete unincluded omap-common/config.mk

arch/arm/cpu/armv7/omap-common/config.mk is never included
because "omap-common" is not SoC name.

If we want to add OMAP-specific compiler flags,
they must be added to omap3/config.mk, omap4/config.mk, omap5/config.mk.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Tom Rini <trini@ti.com>
10 years agokbuild: Move linker sciript check to prepare1
Masahiro Yamada [Tue, 25 Feb 2014 10:26:48 +0000 (19:26 +0900)]
kbuild: Move linker sciript check to prepare1

Same as the previous commit.
Move sanity check to prepare1 target to avoid nasty troubles.

Before this commit, LDSCRIPT existence was not checked
when it was specified by CONFIG_SYS_LDSCRIPT.
Now LDSCRIPT existence is checked for all boards.

$(wildcard $(LDSCRIPT)) must point to the linker scripts
with absolute path.
Otherwise, make will terminate with a false error
on out-of-tree build.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: Fix a false error of generic board support
Masahiro Yamada [Tue, 25 Feb 2014 10:26:47 +0000 (19:26 +0900)]
kbuild: Fix a false error of generic board support

Before this commit, make terminated with an error
where is shouldn't under some condition.

This bug happened when we built a board unsupporting
generic board right after building with generic board.

For example, the following sequence failed.
(harmony uses generic board but microblaze-generic does not
support it)

  $ make harmony_config
  Configuring for harmony board...
  $ make CROSS_COMPILE=arm-linux-gnueabi-
    [ Build succeed ]
  $ make microblaze-generic_config
  Configuring for microblaze-generic board...
  $ make CROSS_COMPILE=microblaze-linux-
  Makefile:488: *** Your architecture does not support generic board.
  Please undefined CONFIG_SYS_GENERIC_BOARD in your board config file.  Stop.

We had to do "make clean" before building the microblaze board.

This commit fixes this unconvenience.

Move generic board sanity check to "prepare1" target,
which is run after generation of include/autoconf.mk.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: get back DTB at the top directory
Masahiro Yamada [Fri, 21 Feb 2014 06:34:30 +0000 (15:34 +0900)]
kbuild: get back DTB at the top directory

Commit 6ab6b2af deleted ./u-boot.dtb because it was a copy
of dts/dt.dtb.

But Simon suggested to keep u-boot.dtb at the top directory
because it is a build output.

After discussions, we agreed on revival of ./u-boot.dtb.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@ti.com>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agokbuild: add misc targets, help, ubootrelease, ubootversion
Masahiro Yamada [Mon, 24 Feb 2014 02:12:23 +0000 (11:12 +0900)]
kbuild: add misc targets, help, ubootrelease, ubootversion

"help" target has been copied from Linux 3.13 and adjusted
for U-Boot.
Unlike Linux, cleaning is done on 4 levels:
clean, clobber, mrproper, distclean.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: support building signle targets
Masahiro Yamada [Mon, 24 Feb 2014 02:12:22 +0000 (11:12 +0900)]
kbuild: support building signle targets

Import build rules of single targets from Linux 3.13.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: refactor more IMX image rules
Masahiro Yamada [Mon, 24 Feb 2014 02:12:21 +0000 (11:12 +0900)]
kbuild: refactor more IMX image rules

This commit avoids generating ./SPL twice.
  - Fist time descending to spl/
  - Second time as a prerequisite of u-boot-with-spl.imx,
    u-boot-with-nand-spl.imx.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: use shorten logs for IMX images
Masahiro Yamada [Mon, 24 Feb 2014 02:12:20 +0000 (11:12 +0900)]
kbuild: use shorten logs for IMX images

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: use shorten logs for misc targets
Masahiro Yamada [Mon, 24 Feb 2014 02:12:19 +0000 (11:12 +0900)]
kbuild: use shorten logs for misc targets

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: use shorten log for linking u-boot
Masahiro Yamada [Mon, 24 Feb 2014 02:12:18 +0000 (11:12 +0900)]
kbuild: use shorten log for linking u-boot

Move sandbox-specific link rule to arch/sandbox/config.mk.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: use shorten logs for combined rules of mkimage, padding and cat
Masahiro Yamada [Mon, 24 Feb 2014 02:12:17 +0000 (11:12 +0900)]
kbuild: use shorten logs for combined rules of mkimage, padding and cat

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: use shorten logs for cat rules
Masahiro Yamada [Mon, 24 Feb 2014 02:12:16 +0000 (11:12 +0900)]
kbuild: use shorten logs for cat rules

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: use shorten logs for mkimage rules
Masahiro Yamada [Mon, 24 Feb 2014 02:12:15 +0000 (11:12 +0900)]
kbuild: use shorten logs for mkimage rules

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: use shorten logs objcopy rules
Masahiro Yamada [Mon, 24 Feb 2014 02:12:14 +0000 (11:12 +0900)]
kbuild: use shorten logs objcopy rules

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: Add $(Q) when descending into subdirectories
Masahiro Yamada [Mon, 24 Feb 2014 02:12:13 +0000 (11:12 +0900)]
kbuild: Add $(Q) when descending into subdirectories

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agokbuild: rename OBJCFLAGS to OBJCOPYFLAGS
Masahiro Yamada [Mon, 24 Feb 2014 02:12:12 +0000 (11:12 +0900)]
kbuild: rename OBJCFLAGS to OBJCOPYFLAGS

Rename OBJCFLAGS to OBJCOPYFLAGS beforehand to use
"cmd_objcopy" in scripts/Makefile.lib in an upcoming commit.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: move asm-offsets.h rules to ./Kbuild
Masahiro Yamada [Mon, 24 Feb 2014 02:12:11 +0000 (11:12 +0900)]
kbuild: move asm-offsets.h rules to ./Kbuild

Generate include/generated/generic-asm-offsets.h and
include/generated/asm-offsets.h in ./Kbuild.

This commit also changes the include guard.

Before this commit, __ASM_OFFSETS_H__ was used for both of them.
So we could not include generic-asm-offsets.h and asm-offsets.h
at the same time.

This commit renames the include guard of the former to
__GENERIC_ASM_OFFSETS_H__.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: abolish "depend" target
Masahiro Yamada [Mon, 24 Feb 2014 02:12:10 +0000 (11:12 +0900)]
kbuild: abolish "depend" target

This commit moves include/generated/{generic-asm-offsets.h, asm-offsets.h}
from "depend" targets to "prepare" targets and deletes "depend" targets.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokbuild: consolidate version and timestamp headers generation
Masahiro Yamada [Mon, 24 Feb 2014 02:12:09 +0000 (11:12 +0900)]
kbuild: consolidate version and timestamp headers generation

- Generate include/generated/{timestamp.h, version.h}
   more simply by using filechk rule.

 - Add $(UBOOTRELEASE) variable and re-write u-boot.imx rule
   more simply.

 - Rename U_BOOT_VERSION in Makefile to UBOOTVERSION

   Before this commit, the same variable name, "U_BOOT_VERSION"
   was used for two different strings.

   One of them was defined in Makefile.
   It takes the form like "2014.01-rc1" and used in
   makefiles and script files.

   The other is defined in include/generated/version.h
   It takes the form like "U-Boot 2014.01-rc1-00010-gbe6d426-dirty"
   and used in C and Aseembler.

   It is confusing when grepping the source tree. So, this commit
   renames the former to UBOOTVERSION.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agoMakefile: add a new script to check -fstack-usage support
Masahiro Yamada [Wed, 11 Dec 2013 11:11:34 +0000 (20:11 +0900)]
Makefile: add a new script to check -fstack-usage support

If -fstack-usage option is given to crosstools
that do not support it, gcc displays a warning message
but still exits with status 0.

This means we can not rely on $(call cc-option,...)
to detect if -fstack-usage option is supported or not.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agofsl/usb: Limit phy_type comparison to first four characters
Nikhil Badola [Mon, 17 Feb 2014 11:28:36 +0000 (16:58 +0530)]
fsl/usb: Limit phy_type comparison to first four characters

Use first four characters for phy_type comparison. Strcmp() should not
be used to check the phy_type string which maybe parsed by hwconfig_subarg().
Hwconfig_subarg() returns part of hwconfig string starting from
phy_type value till the end of the string. Since phy_type could be
either "utmi" or "ulpi", strncmp() should be used so that a comparison
of "utmi;fsl_ddr:bank_intlv=auto" with "utmi" will succeed.

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Nikhil Badola <nikhil.badola@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc/mpc8536DS:Increase binary size for mpc8536DS board
Haijun.Zhang [Thu, 13 Feb 2014 01:03:02 +0000 (09:03 +0800)]
powerpc/mpc8536DS:Increase binary size for mpc8536DS board

u-boot binary size for Freescale mpc8536DS platforms is 512KB.
This has been reached to upper limit of the platforms and causig
linker error. So increase the u-boot binary size to 768KB.

Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agoar8031/8033/phy:enable autonegotiation for ar8031/8033
Zhao Qiang [Mon, 23 Dec 2013 07:51:33 +0000 (15:51 +0800)]
ar8031/8033/phy:enable autonegotiation for ar8031/8033

Function "genphy_parse_link()" used "if (mii_reg & BMSR_ANEGCAPABLE)" before
while "if (phydev->supported & SUPPORTED_Autoneg)" now.
So assign "phydev->supported" to "phydev->drv->features" for ar8031/8033
to enable autonegotiation.

Signed-off-by: Zhao Qiang <B45475@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc: p1010rdb: Enable p1010rdb to start from NAND/SD/SPI flash with SPL
Ying Zhang [Fri, 24 Jan 2014 07:50:09 +0000 (15:50 +0800)]
powerpc: p1010rdb: Enable p1010rdb to start from NAND/SD/SPI flash with SPL

In the previous patches, we introduced the SPL/TPL fraamework.
For SD/SPI flash booting way, we introduce the SPL to enable a loader stub. The
SPL was loaded by the code from the internal on-chip ROM. The SPL initializes
the DDR according to the SPD and loads the final uboot image into DDR, then
jump to the DDR to begin execution.

For NAND booting way, the nand SPL has size limitation on some board(e.g.
P1010RDB), it can not be more than 8KB, we can call it "minimal SPL", So the
dynamic DDR driver doesn't fit into this minimum SPL. We added the TPL that is
loaded by the the minimal SPL. The TPL initializes the DDR according to the SPD
and loads the final uboot image into DDR,then jump to the DDR to begin execution.

This patch enabled SPL/TPL for P1010RDB to support starting from NAND/SD/SPI
flash with SPL framework and initializing the DDR according to SPD in the SPL/TPL.
Because the minimal SPL load the TPL to L2 SRAM and the jump to the L2 SRAM to
execute, so the section .resetvec is no longer needed.

Signed-off-by: Ying Zhang <b40530@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agoSPL: P1022DS: fix the problem booting from spi flash
Ying Zhang [Fri, 24 Jan 2014 07:50:08 +0000 (15:50 +0800)]
SPL: P1022DS: fix the problem booting from spi flash

There was no enough memory for malloc in SPL booting from spi flash, so
relayout the memory in SPL: reduce the memory for global data from 16K
Bytes to 4K Bytes, save the space for malloc.

Signed-off-by: Ying Zhang <b40530@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agoSPL: P2020RDB: fix the problem booting from spi flash
Ying Zhang [Fri, 24 Jan 2014 07:50:07 +0000 (15:50 +0800)]
SPL: P2020RDB: fix the problem booting from spi flash

There was no enough stack in SPL, so the buffer needed in SPL is to malloc
from memory pool and to repalce the temporary variable.

Signed-off-by: Ying Zhang <b40530@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agoSPL: powerpc: expand SPL's length to 128K
Ying Zhang [Fri, 24 Jan 2014 07:50:06 +0000 (15:50 +0800)]
SPL: powerpc: expand SPL's length to 128K

1. The SPL's length of SDCARD boot has not enough,expand the SPL's
length to 128K.
2. deleted unused symbol: CONFIG_SYS_RUN_INDDR

Signed-off-by: Ying Zhang <b40530@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc/t2081qds: Add T2081 QDS board support
Shengzhou Liu [Fri, 21 Feb 2014 05:16:19 +0000 (13:16 +0800)]
powerpc/t2081qds: Add T2081 QDS board support

T2081 QDS is a high-performance computing evaluation, development and
test platform supporting the T2081 QorIQ Power Architecture processor.

T2081QDS board Overview
-----------------------
- T2081 SoC integrating four 64-bit dual-threads e6500 cores up to 1.8GHz
- 2MB shared L2 and 512KB L3 CoreNet platform cache (CPC)
- CoreNet fabric supporting coherent and noncoherent transactions with
  prioritization and bandwidth allocation
- 32-/64-bit DDR3/DDR3LP SDRAM memory controller with ECC and interleaving
- Ethernet interfaces:
  - Two on-board 10M/100M/1G bps RGMII ports
  - Two 10Gbps XFI with on-board SFP+ cage
  - 1Gbps/2.5Gbps SGMII Riser card
  - 10Gbps XAUI Riser card
- Accelerator:
  - DPAA components consist of FMan, BMan, QMan, PME, DCE and SEC
- SerDes:
  - 8 lanes up to 10.3125GHz
  - Supports SGMII, HiGig, XFI, XAUI and Aurora debug,
- IFC:
  - 512MB NOR Flash, 2GB NAND Flash, PromJet debug port and Qixis FPGA
- eSPI:
  - Three SPI flash (16MB N25Q128A + 16MB EN25S64 + 512KB SST25WF040)
- USB:
  - Two USB2.0 ports with internal PHY (one Type-A + one micro Type mini-AB)
- PCIe:
  - Four PCI Express controllers (two PCIe 2.0 and two PCIe 3.0 with SR-IOV)
- eSDHC:
  - Supports various SD/SDHC/SDXC/eMMC devices with adapter cards and
    voltage translators
- I2C:
  - Four I2C controllers.
- UART:
  - Dual 4-pins UART serial ports

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc/t208x: some update to support t2081
Shengzhou Liu [Tue, 21 Jan 2014 06:11:47 +0000 (14:11 +0800)]
powerpc/t208x: some update to support t2081

- fix serdes definition for t2081.
- fix clock speed for t2081.
- update ids, as CONFIG_FSL_SATA_V2 is needed only for t2080,
  T2081 has no SATA.

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agoboards.cfg: Keep arc entries sorted
Fabio Estevam [Mon, 24 Feb 2014 13:32:42 +0000 (10:32 -0300)]
boards.cfg: Keep arc entries sorted

Run "tools/reformat.py -i -d '-' -s 8 <boards.cfg >boards0.cfg && mv boards0.cfg boards.cfg"
in order to keep arc entries sorted.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
10 years agoarm: delete unused macro CONFIG_ARCH_DEVICE_TREE
Masahiro Yamada [Mon, 24 Feb 2014 12:45:48 +0000 (21:45 +0900)]
arm: delete unused macro CONFIG_ARCH_DEVICE_TREE

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Tom Warren <twarren@nvidia.com>
Cc: Stephen Warren <swarren@nvidia.com>
Cc: Rajeshwari Birje <rajeshwari.s@samsung.com>
Cc: Inderpal Singh <inderpal.singh@linaro.org>
10 years agox86: coreboot: delete unused coreboot/config.mk
Masahiro Yamada [Mon, 24 Feb 2014 12:36:35 +0000 (21:36 +0900)]
x86: coreboot: delete unused coreboot/config.mk

HOSTCFLAGS_autoconf.mk.dep was added by commit 422322f
but it has never been used.

Cc: Vadim Bendebury <vbendeb@chromium.org>
Cc: Simon Glass <sjg@chromium.org>
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agopower: fix: Do not execute pmic command when not all necessary parameters are passed
Łukasz Majewski [Mon, 24 Feb 2014 12:33:08 +0000 (13:33 +0100)]
power: fix: Do not execute pmic command when not all necessary parameters are passed

Lack of this check resulted in a data abort when CPU tried to execute the
following command (without further mandatory input): 'pmic MAX77686_PMIC'.

Only the 'pmic list' command requires one passed parameter.
Other require at least two valid parameters for correct operation.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
10 years agokbuild: fix SPL link bug when USE_PRIVATE_LIBGCC is "yes"
Masahiro Yamada [Mon, 24 Feb 2014 11:44:14 +0000 (20:44 +0900)]
kbuild: fix SPL link bug when USE_PRIVATE_LIBGCC is "yes"

Commit 6825a95 (kbuild: use Linux Kernel build scripts)
changed the behavior of linkage when USE_PRIAVATE_LIBGCC
is defined as "yes".
(It dropped arch/arm/lib/eabi_compat.o from the
target library.)

Affected boards are all Tegra boards.

This commit gets back the same behavior as before Kbuild series.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Tom Warren <twarren@nvidia.com>
Cc: Tom Rini <trini@ti.com>
10 years agopart_efi: fix protective mbr struct allocation
Hector Palacios [Thu, 13 Feb 2014 08:48:24 +0000 (09:48 +0100)]
part_efi: fix protective mbr struct allocation

The calloc() call was allocating space for the sizeof the struct
pointer rather than for the struct contents.
Besides, since this buffer is passed to mmc for writing and some
platforms may use cache, the legacy_mbr struct should be cache-aligned.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
Tested-by: Lukasz Majewski <l.majewski@samsung.com>
10 years agoMerge branch 'u-boot-ti/master' into 'u-boot-arm/master'
Albert ARIBAUD [Mon, 24 Feb 2014 09:29:59 +0000 (10:29 +0100)]
Merge branch 'u-boot-ti/master' into 'u-boot-arm/master'

10 years agoboard: bcm28155_ap: Add board files
Darwin Rambo [Tue, 11 Feb 2014 19:06:38 +0000 (11:06 -0800)]
board: bcm28155_ap: Add board files

Add support for the bcm28155_ap reference board.

Signed-off-by: Darwin Rambo <drambo@broadcom.com>
Reviewed-by: Steve Rae <srae@broadcom.com>
Reviewed-by: Tim Kryger <tkryger@linaro.org>
10 years agommc: kona: Add Kona mmc driver
Darwin Rambo [Tue, 11 Feb 2014 19:06:37 +0000 (11:06 -0800)]
mmc: kona: Add Kona mmc driver

Add support for the Kona SDHCI found on Broadcom mobile SoCs.

Signed-off-by: Darwin Rambo <drambo@broadcom.com>
Reviewed-by: Steve Rae <srae@broadcom.com>
Reviewed-by: Tim Kryger <tkryger@linaro.org>
10 years agoi2c: kona: Add Kona I2C driver
Darwin Rambo [Tue, 11 Feb 2014 19:06:36 +0000 (11:06 -0800)]
i2c: kona: Add Kona I2C driver

Add support for the Kona I2C controller found on Broadcom mobile SoCs.

Signed-off-by: Darwin Rambo <drambo@broadcom.com>
Reviewed-by: Steve Rae <srae@broadcom.com>
Reviewed-by: Tim Kryger <tkryger@linaro.org>
10 years agogpio: kona: Add Kona gpio driver
Darwin Rambo [Tue, 11 Feb 2014 19:06:35 +0000 (11:06 -0800)]
gpio: kona: Add Kona gpio driver

Add support for the Kona GPIO controller found on Broadcom mobile SoCs.

Signed-off-by: Darwin Rambo <drambo@broadcom.com>
Reviewed-by: Steve Rae <srae@broadcom.com>
Reviewed-by: Markus Mayer <markus.mayer@linaro.org>
Reviewed-by: Tim Kryger <tkryger@linaro.org>
10 years agoarch: bcm281xx: Initial commit of bcm281xx architecture code
Darwin Rambo [Tue, 11 Feb 2014 19:06:34 +0000 (11:06 -0800)]
arch: bcm281xx: Initial commit of bcm281xx architecture code

Add bcm281xx architecture support code including a clock framework and
chip reset.  Define register block base addresses for the bcm281xx
architecture and create an empty gpio header file required when
CONFIG_CMD_GPIO is set.

Signed-off-by: Darwin Rambo <drambo@broadcom.com>
Reviewed-by: Steve Rae <srae@broadcom.com>
Reviewed-by: Tim Kryger <tkryger@linaro.org>
10 years agoarch: kona: Initial commit of kona-common architecture code
Darwin Rambo [Tue, 11 Feb 2014 19:06:33 +0000 (11:06 -0800)]
arch: kona: Initial commit of kona-common architecture code

The Kona architecture is present on a number of Broadcom mobile SoCs
including the bcm281xx family of chips.

Signed-off-by: Darwin Rambo <drambo@broadcom.com>
Reviewed-by: Steve Rae <srae@broadcom.com>
Reviewed-by: Tim Kryger <tkryger@linaro.org>
10 years agoARM: rpi_b: rework boot scripts, enable sysboot
Stephen Warren [Fri, 14 Feb 2014 03:44:07 +0000 (20:44 -0700)]
ARM: rpi_b: rework boot scripts, enable sysboot

Rework rpi_b's bootcmd (and sub-commands) to match Tegra's bootcmd as
much as possible. This will aid in a future patch which will create a
common header e.g. config_distro_bootcmd.h.

While at it, enable booting from extlinux.conf using the sysboot command.

The iteration and componentization currently makes a little more sense
for Tegra than RPi, but I'd still like to keep the two as similar as
possible. USB and networking support is coming to the RPi in due course,
and it'll all make more sense then anyway.

Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
10 years agoti814x: Fix illegal use of FP ops in clock_ti814x.c
Måns Rullgård [Mon, 28 Oct 2013 23:19:53 +0000 (23:19 +0000)]
ti814x: Fix illegal use of FP ops in clock_ti814x.c

The function pll_sigma_delta_val uses "float" data which is not correct.
The exact "why" of this mangling is lost to history, but this changes us
to equivalent non-FP math to get the same results.

Reported-by: Wolfgang Denk <wd@denx.de>
Acked-by: Matt Porter <mporter@linaro.org>
10 years agoomap4_common: config: remove I2C for SPL mode
Nishanth Menon [Wed, 8 Jan 2014 02:06:56 +0000 (20:06 -0600)]
omap4_common: config: remove I2C for SPL mode

Commit 6789e84ecaa8f45d053084e08c381284a04abff7 (i2c, omap24xx:
convert driver to new mutlibus/mutliadapter framework) intended to
make I2C driver compatible with latest changes. It unfortunately has
had a impact on size on SPL as well. For example on SDP4430,
32032 bytes before/MLO
35416 bytes after/MLO

With this mentioned commit, MLO stops booting on SDP4430 as only 32K
is accessible for non-secure (bootloader) s/w on GP devices and the size
increase to 56K fails boot.

On the latest u-boot commit e7be18225fbea76d1f0034b224f0d1e60f07cfcf,
MLO is now at size 35592 bytes, However, I2C is not necessary for SPL
to function as we use SR_I2C for controlling the PMIC.
Disabling I2C reduces MLO to 32224 bytes which allows
OMAP4 GP platform to boot up.

Since this is common for all OMAP4 platforms, remove the need for I2C
for SPL builds in the common config.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Sricharan R <r.sricharan@ti.com>
10 years agodra7xx_evm: Enable GPT commands
Tom Rini [Tue, 21 Jan 2014 22:15:08 +0000 (17:15 -0500)]
dra7xx_evm: Enable GPT commands

Signed-off-by: Tom Rini <trini@ti.com>
10 years agoam43xx_evm: Enable GPT commands
Tom Rini [Tue, 21 Jan 2014 22:15:07 +0000 (17:15 -0500)]
am43xx_evm: Enable GPT commands

Signed-off-by: Tom Rini <trini@ti.com>
10 years agoam335x_evm: Enable GPT commands
Tom Rini [Tue, 21 Jan 2014 22:15:06 +0000 (17:15 -0500)]
am335x_evm: Enable GPT commands

Signed-off-by: Tom Rini <trini@ti.com>
10 years agoarm: omap: cm_t35: Remove CONFIG_SYS_BOOTMAPSZ to fix FDT Linux booting
Stefan Roese [Fri, 21 Feb 2014 08:28:33 +0000 (09:28 +0100)]
arm: omap: cm_t35: Remove CONFIG_SYS_BOOTMAPSZ to fix FDT Linux booting

With CONFIG_SYS_BOOTMAPSZ defined, recent Linux kernel booting
results in this error:

   Booting using the fdt blob at 0x81f00000
   Loading Kernel Image ... OK
ERROR: Failed to allocate 0x1189d bytes below 0x80004000.
device tree - allocation error
FDT creation failed! hanging...### ERROR ### Please RESET the board ###

Removing this define solves this issue.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@ti.com>
10 years agoDRA7: fix ABB efuse offset for OPP_NOM
Nishanth Menon [Tue, 18 Feb 2014 18:00:01 +0000 (12:00 -0600)]
DRA7: fix ABB efuse offset for OPP_NOM

commit 194dd74ad919e57026f385aaab7f89acf7ea79ef
(DRA7: add ABB setup for MPU voltage domain)

Made an offset typo error by using 0x4A003B24 as the efuse offset
for OPP_NOM. As per TI documentation, 0x4A003B24 is for OPP_OD, and
0x4A003B20 is for OPP_NOM. Fix the same.

Reported-by: Praveen Rao <prao@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
10 years agoARM: OMAP4: fix DDR timings for OMAP4430 ES2.0
Janne Grunau [Sun, 16 Feb 2014 20:57:18 +0000 (21:57 +0100)]
ARM: OMAP4: fix DDR timings for OMAP4430 ES2.0

DDR timings were broken since 47abc3df701d8bc26f311350aa523fc1d0f8ad4e
for PandaBoard EA1.

Signed-off-by: Janne Grunau <j@jannau.net>
10 years agoOMAP3: fix default environment for mcx board
Stefano Babic [Fri, 14 Feb 2014 11:51:27 +0000 (12:51 +0100)]
OMAP3: fix default environment for mcx board

Patch allows to load a script at the startup from MMC.

Signed-off-by: Stefano Babic <sbabic@denx.de>
10 years agoomap3: fix pinmux for mcx board
Stefano Babic [Fri, 14 Feb 2014 11:51:26 +0000 (12:51 +0100)]
omap3: fix pinmux for mcx board

New hardware version cannot recognize the SD-Card
because the SYS_NRESWARM, set as GPIO, does not
guarantee the required reset time.
Change the pin function back to enable the
SYS_NRESWARM signal driven by the SOC.

Signed-off-by: Stefano Babic <sbabic@denx.de>
10 years agoOMAP3: add missing gpio clock init and fix NAND SPL for mcx board
Stefano Babic [Fri, 14 Feb 2014 11:51:25 +0000 (12:51 +0100)]
OMAP3: add missing gpio clock init and fix NAND SPL for mcx board

Patch contains the same fixes as commit
4b9b2c300a23ca4a85811918dc92e822a9571a87
(missing CONFIG_OMAP3_GPIO_2) and commit
f9095aac793aa8917ab9b915c5d449e6dc8d3d30 (missing CONFIG_SPL_NAND_SOFTECC).
Same issues are relevant for the mcx board, too.

Signed-off-by: Stefano Babic <sbabic@denx.de>
10 years agoarm: omap3: Fix tao3530/omap3_ha SPL boot hangup (GPIO clocks not enabled)
Stefan Roese [Fri, 14 Feb 2014 08:47:17 +0000 (09:47 +0100)]
arm: omap3: Fix tao3530/omap3_ha SPL boot hangup (GPIO clocks not enabled)

Patch f33b9bd3
[arm: omap3: Enable clocks for peripherals only if they are used]
breaks SPL booting on tao3530. Since some gpio input's are
read to detect the board revision. But with this patch above, the
clocks to the GPIO subsystems are not enabled per default any more.
The GPIO banks need to be configured specifically now.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Tom Rini <trini@ti.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Reviewed-by: Stefano Babic <sbabic@denx.de>