| 5665f50e | 08-Dec-2014 |
Hans de Goede <hdegoede@redhat.com> |
sunxi: Fill memory before comparing it when doing dram init on sun6i
The sun8i boot0 code fills the DRAM with a "random" pattern before comparing it at different offsets to do columns, etc. detectio
sunxi: Fill memory before comparing it when doing dram init on sun6i
The sun8i boot0 code fills the DRAM with a "random" pattern before comparing it at different offsets to do columns, etc. detection. The sun6i boot0 code does not do it, instead relying on the memory contents being random enough to begin with for the memcmp to properly detect the wrap-around address, iow it is working purely by chance. Since our sun6i dram code was modelled after the boot0 code it contained the same issue.
This commit fixes this by filling the memory with a unique, distinct pattern.
The new mctl_mem_fill function this introduces is added as an inline helper in dram.h, so that it can be shared with the sun8i dram code.
While at it move mctl_mem_matches to dram.h for re-use in sun8i too.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| 07f4fe7d | 08-Dec-2014 |
Hans de Goede <hdegoede@redhat.com> |
sunxi: Move await_completion dram helper to dram.h
The await_completion helper is already copy pasted between the sun4i and sun6i dram code, and we need it for sun8i too, so lets make it an inline h
sunxi: Move await_completion dram helper to dram.h
The await_completion helper is already copy pasted between the sun4i and sun6i dram code, and we need it for sun8i too, so lets make it an inline helper in dram.h, rather then adding yet another copy.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| 1aac47bd | 07-Dec-2014 |
Hans de Goede <hdegoede@redhat.com> |
sun6i: clock_set_pll5: Calculate k and m rather then hardcoding them
Our old hardcoded k and m values are based on PLL5 being configured in steps of 48 MHz, which is correct for sun6i where the DRAM
sun6i: clock_set_pll5: Calculate k and m rather then hardcoding them
Our old hardcoded k and m values are based on PLL5 being configured in steps of 48 MHz, which is correct for sun6i where the DRAM PLL runs at twice the DRAM CLK, which is usually configured in 24 MHz step. But on the A23 (sun8i) the PLL5 runs at half the DRAM CLK, so we require 12 MHz steps.
This commit adjusts clock_set_pll5 to automatically select the best k and m depending on the requested clk rate.
Suggested-by: Siarhei Siamashka <siarhei.siamashka@gmail.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| 5af741f1 | 30-Nov-2014 |
Hans de Goede <hdegoede@redhat.com> |
sun6i: Add a sigma_delta_enable paramter to clock_set_pll5()
The sun8i dram code sometimes wants to enable sigma delta mode, add a parameter to allow this.
Signed-off-by: Hans de Goede <hdegoede@re
sun6i: Add a sigma_delta_enable paramter to clock_set_pll5()
The sun8i dram code sometimes wants to enable sigma delta mode, add a parameter to allow this.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| bdcdf846 | 29-Nov-2014 |
Hans de Goede <hdegoede@redhat.com> |
sunxi: axp221: Add axp223 support
The axp223 appears to be the same as the axp221, except that it uses the rsb to communicate rather then the p2wi. At least all the registers we use are 100% the sam
sunxi: axp221: Add axp223 support
The axp223 appears to be the same as the axp221, except that it uses the rsb to communicate rather then the p2wi. At least all the registers we use are 100% the same.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| 66ebea06 | 29-Nov-2014 |
Hans de Goede <hdegoede@redhat.com> |
sunxi: Add support for the rsb (Reduced Serial Bus)
sun8i (A23) introduces a new bus for communicating with the pmic, the rsb, the rsb is also used to communicate with the pmic on the A80, and is do
sunxi: Add support for the rsb (Reduced Serial Bus)
sun8i (A23) introduces a new bus for communicating with the pmic, the rsb, the rsb is also used to communicate with the pmic on the A80, and is documented in the A80 user manual.
This commit adds support for this based on the rsb driver from the allwinner u-boot sources.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| ce881076 | 13-Dec-2014 |
Hans de Goede <hdegoede@redhat.com> |
sun6i: s/SUNXI_*P2WI*/SUN6I_*P2WI*/
The p2wi interface is only available on sun6i, adjust the gpio pinmux and base address defines for it to reflect this.
Signed-off-by: Hans de Goede <hdegoede@red
sun6i: s/SUNXI_*P2WI*/SUN6I_*P2WI*/
The p2wi interface is only available on sun6i, adjust the gpio pinmux and base address defines for it to reflect this.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| 3f6242eb | 27-Nov-2014 |
Jan Kiszka <jan.kiszka@siemens.com> |
sunxi: Align PSCI stack calculation to comment
0x400 is true 1K.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Acked-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Ian Campbell <ijc@he
sunxi: Align PSCI stack calculation to comment
0x400 is true 1K.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Acked-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| cac5b1cc | 25-Nov-2014 |
Hans de Goede <hdegoede@redhat.com> |
sunxi: Add sunxi_get_sid helper function
On sun6i the SID is stored in the pmic, rather then in the SoC itself, add a helper function to abstract this away.
This makes our MAC address generation co
sunxi: Add sunxi_get_sid helper function
On sun6i the SID is stored in the pmic, rather then in the SoC itself, add a helper function to abstract this away.
This makes our MAC address generation code also work on sun6i.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| 7582e39e | 15-Nov-2014 |
Hans de Goede <hdegoede@redhat.com> |
sun6i: dram: Do not try to initialize a second dram chan on A31s
The A31s only has one dram channel, so do not bother with trying to initialize a second channel.
Signed-off-by: Hans de Goede <hdego
sun6i: dram: Do not try to initialize a second dram chan on A31s
The A31s only has one dram channel, so do not bother with trying to initialize a second channel.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| 10191ed0 | 15-Nov-2014 |
Hans de Goede <hdegoede@redhat.com> |
sun6i: Add sunxi_get_ss_bonding_id() function
Add a sunxi_get_ss_bonding_id() function, and use it to differentiate between the A31s and the A31.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
sun6i: Add sunxi_get_ss_bonding_id() function
Add a sunxi_get_ss_bonding_id() function, and use it to differentiate between the A31s and the A31.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| 37781a1a | 15-Nov-2014 |
Hans de Goede <hdegoede@redhat.com> |
sun6i: Make dram clk and zq value Kconfig options
It turns out that there is a too large spread between boards to handle this with a default value, turn this into Kconfig options, and set the values
sun6i: Make dram clk and zq value Kconfig options
It turns out that there is a too large spread between boards to handle this with a default value, turn this into Kconfig options, and set the values the factory images are using for the Colombus and Mele_M9 boards.
Note this changes the ZQ default when not overriden through defconfig from 120 to 123, as that is what most boards seem to actually use.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
show more ...
|
| fc46bae2 | 22-Dec-2014 |
James Doublesin <doublesin@ti.com> |
arm: am437x: Enable hardware leveling for EMIF
Switch to using hardware leveling for certain parameters on the EMIF rather than using precalculated values. Doing this also means we have a common pl
arm: am437x: Enable hardware leveling for EMIF
Switch to using hardware leveling for certain parameters on the EMIF rather than using precalculated values. Doing this also means we have a common place now between am437x and am335x for setting emif_sdram_ref_ctrl with a value for the correct delay length.
Tested-by: Felipe Balbi <balbi@ti.com> Tested-by: Tom Rini <trini@ti.com> Signed-off-by: James Doublesin <doublesin@ti.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
show more ...
|
| 906d6fe3 | 06-Jan-2015 |
Fabio Estevam <fabio.estevam@freescale.com> |
mx25: Fix boot hang by avoiding vector relocation
Since commit 3ff46cc42b9d73d0 ("arm: relocate the exception vectors") mx25pdk hangs like this:
CPU: Freescale i.MX25 rev1.2 at 399 MHz Reset caus
mx25: Fix boot hang by avoiding vector relocation
Since commit 3ff46cc42b9d73d0 ("arm: relocate the exception vectors") mx25pdk hangs like this:
CPU: Freescale i.MX25 rev1.2 at 399 MHz Reset cause: WDOG Board: MX25PDK I2C: ready DRAM: 64 MiB (hangs)
Add a specific relocate_vectors macro that skips the vector relocation, as the i.MX25 SoC does not provide RAM at the high vectors address (0xFFFF0000), and (0x00000000) maps to ROM.
This allows mx25 to boot again.
Acked-By: Bill Pringlemeir <bpringlemeir@nbsps.com> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
show more ...
|
| 8ed5e4ce | 06-Jan-2015 |
Fabio Estevam <fabio.estevam@freescale.com> |
mx25: Remove empty line after printing the reset cause
Currently there is an unneeded empty line after printing the reset cause:
U-Boot 2015.01-rc4-00080-g0551a93 (Jan 06 2015 - 13:04:19)
CPU: F
mx25: Remove empty line after printing the reset cause
Currently there is an unneeded empty line after printing the reset cause:
U-Boot 2015.01-rc4-00080-g0551a93 (Jan 06 2015 - 13:04:19)
CPU: Freescale i.MX25 rev1.2 at 399 MHz Reset cause: POR
Board: MX25PDK I2C: ready DRAM: 64 MiB MMC: FSL_SDHC: 0
Remove the extra "\n" when printing the reset cause.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
show more ...
|
| b4ad44ba | 06-Jan-2015 |
Masahiro Yamada <yamada.m@jp.panasonic.com> |
ARM: UniPhier: add UART initialization routine for low-level debug
The low-level debugging functions are useful to debug the early boot stage where the full UART driver is not available.
UniPhier S
ARM: UniPhier: add UART initialization routine for low-level debug
The low-level debugging functions are useful to debug the early boot stage where the full UART driver is not available.
UniPhier SoCs need to initialize the UART port 0 to use this feature. The initialization routine is called at the very entry of the lowlevel_init().
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
show more ...
|
| 2661dfd0 | 06-Jan-2015 |
Masahiro Yamada <yamada.m@jp.panasonic.com> |
ARM: UniPhier: enable output of system bus
For NAND boot on PH1-LD4, PH1-sLD8, and some other SoCs, the output of the system bus is disabled by default. It must be enabled by software to have access
ARM: UniPhier: enable output of system bus
For NAND boot on PH1-LD4, PH1-sLD8, and some other SoCs, the output of the system bus is disabled by default. It must be enabled by software to have access to the system bus.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
show more ...
|
| 5e165b25 | 06-Jan-2015 |
Masahiro Yamada <yamada.m@jp.panasonic.com> |
ARM: UniPhier: fix SRAM size on support card
The max size of available memories on slot0 and slot1 is 32MB because - EA[25] signal is not output on the save-pin mode which is used PH1-LD4 or lat
ARM: UniPhier: fix SRAM size on support card
The max size of available memories on slot0 and slot1 is 32MB because - EA[25] signal is not output on the save-pin mode which is used PH1-LD4 or later SoCs. - EA[25] signal is not connected by the limitation (or bug?) of the PLD logic of DCC support card.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
show more ...
|
| 58927a96 | 09-Dec-2014 |
Karicheri, Muralidharan <m-karicheri2@ti.com> |
keystone: set default pci mode to root complex
pci ports are used as root complex in Linux. So set this as default in u-boot for keystone devices
Signed-off-by: Murali Karicheri <m-karicheri2@ti.co
keystone: set default pci mode to root complex
pci ports are used as root complex in Linux. So set this as default in u-boot for keystone devices
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
show more ...
|
| 87791adc | 15-Dec-2014 |
Dmitry Lifshitz <lifshitz@compulab.co.il> |
arm: omap: reset sata on boot
On OMAP platforms (like OMAP5) Linux kernel fails to detect a SATA device if it is used by U-Boot.
It happens because U-Boot does not reset SATA controller before boot
arm: omap: reset sata on boot
On OMAP platforms (like OMAP5) Linux kernel fails to detect a SATA device if it is used by U-Boot.
It happens because U-Boot does not reset SATA controller before boot.
Reset the controller on OS boot so that Linux will have a clean state to work with.
Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il> Reviewed-by: Tom Rini <trini@ti.com>
show more ...
|
| 8decf5d4 | 15-Dec-2014 |
Dmitry Lifshitz <lifshitz@compulab.co.il> |
OMAP5+: sata/scsi: implement scsi_bus_reset()
Implement missing scsi_bus_reset() for SCSI subsystem commands on OMAP platforms.
Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il> Reviewed-by:
OMAP5+: sata/scsi: implement scsi_bus_reset()
Implement missing scsi_bus_reset() for SCSI subsystem commands on OMAP platforms.
Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il> Reviewed-by: Tom Rini <trini@ti.com>
show more ...
|
| 25098144 | 18-Dec-2014 |
Nishanth Menon <nm@ti.com> |
Revert "ARM: omap4: Update sdram setting for panda rev A6"
This reverts commit 47a4bea6af77b01d59a410d09a4c34b2dd14cf50.
Signed-off-by: Nishanth Menon <nm@ti.com> |
| b3107928 | 19-Dec-2014 |
Tom Rini <trini@ti.com> |
omap-common/hwinit-common.c: timer_init() doesn't need to touch gd
The gd will be cleared at first so we don't need to set arch.tbl to 0. In addition, the checks later against lastinc also work fine
omap-common/hwinit-common.c: timer_init() doesn't need to touch gd
The gd will be cleared at first so we don't need to set arch.tbl to 0. In addition, the checks later against lastinc also work fine with an initial value of 0 here. This also brings us in line with sunxi code for example.
Signed-off-by: Tom Rini <trini@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
show more ...
|
| b352dde1 | 19-Dec-2014 |
Tom Rini <trini@ti.com> |
am33xx: Drop timer_init call from s_init
In both SPL and non-SPL cases we will make a call to timer_init() early on and do not need to call it again within s_init().
Signed-off-by: Tom Rini <trini@
am33xx: Drop timer_init call from s_init
In both SPL and non-SPL cases we will make a call to timer_init() early on and do not need to call it again within s_init().
Signed-off-by: Tom Rini <trini@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
show more ...
|
| 57b5e43e | 19-Dec-2014 |
Tom Rini <trini@ti.com> |
socfpga: Drop redundant save_boot_params
The save_boot_params function here is the same as the default weak one from arch/arm/cpu/armv7/start.S, drop.
Cc: Dinh Nguyen <dinguyen@opensource.altera.co
socfpga: Drop redundant save_boot_params
The save_boot_params function here is the same as the default weak one from arch/arm/cpu/armv7/start.S, drop.
Cc: Dinh Nguyen <dinguyen@opensource.altera.com> Cc: Vince Bridgers <vbridger@opensource.altera.com> Cc: Chin Liang See <clsee@altera.com> Cc: Marek Vasut <marex@denx.de> Signed-off-by: Tom Rini <trini@ti.com> Reviewed-by: Marek Vasut <marex@denx.de>
show more ...
|