u-boot/arch/arm/cpu
Siarhei Siamashka 1a9717cbb3 sunxi: dram: Configurable MBUS clock speed (use PLL5 or PLL6)
The sun5i hardware (Allwinner A13) introduced configurable MBUS clock
speed. Allwinner A13 uses only 16-bit data bus width to connect the
external DRAM, which is halved compared to the 32-bit data bus of sun4i
(Allwinner A10), so it does not make much sense to clock a wider
internal bus at a very high speed. The Allwinner A13 manual specifies
300 MHz MBUS clock speed limit and 533 MHz DRAM clock speed limit. Newer
sun7i hardware (Allwinner A20) has a full width 32-bit external memory
interface again, but still keeps the MBUS clock speed configurable.
Clocking MBUS too low inhibits memory performance and one has to find
the optimal MBUS/DRAM clock speed ratio, which may depend on many
factors:
    http://linux-sunxi.org/A10_DRAM_Controller_Performance

This patch introduces a new 'mbus_clock' parameter for the 'dram_para'
struct and uses it as a desired MBUS clock speed target. If 'mbus_clock'
is not set, 300 MHz is used by default to match the older hardcoded
settings.

PLL5P and PLL6 are both evaluated as possible clock sources. Preferring
the one, which can provide higher clock frequency that is lower or
equal to the 'mbus_clock' target. In the case of a tie, PLL5P has
higher priority.

Attempting to set the MBUS clock speed has no effect on sun4i, but does
no harm either.

Signed-off-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
Acked-by: Ian Campbell <ijc@hellion.org.uk>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2014-08-12 08:42:33 +02:00
..
arm720t spl: consolidate arch/arm/include/asm/arch-*/spl.h 2014-06-06 10:05:34 +02:00
arm920t arm: ep9315: Return back Cirrus Logic EDB9315A board support 2014-07-04 23:45:48 +02:00
arm926ejs ARM: kirkwood: add mvsdio driver 2014-08-01 18:44:56 +03:00
arm946es arm: move exception handling out of start.S files 2014-05-15 16:24:53 +02:00
arm1136 arm: move exception handling out of start.S files 2014-05-15 16:24:53 +02:00
arm1176 arm: move exception handling out of start.S files 2014-05-15 16:24:53 +02:00
arm_intcm arm: move exception handling out of start.S files 2014-05-15 16:24:53 +02:00
armv7 sunxi: dram: Configurable MBUS clock speed (use PLL5 or PLL6) 2014-08-12 08:42:33 +02:00
armv8 ARMv8/ls2085a_emu: Add LS2085A emulator and simulator board support 2014-07-04 19:48:41 +02:00
at91-common ARM: atmel: switch to main crystal osc for SPL boot 2014-05-27 00:10:40 +02:00
pxa arm: move exception handling out of start.S files 2014-05-15 16:24:53 +02:00
sa1100 arm: move exception handling out of start.S files 2014-05-15 16:24:53 +02:00
tegra-common ARM: tegra: add function to enable input clamping on tristate 2014-05-13 10:41:31 -07:00
tegra20-common Merge branch 'u-boot/master' 2014-05-09 11:50:14 +02:00
tegra30-common ARM: tegra: Tegra30 pinmux cleanup 2014-04-17 08:41:05 -07:00
tegra114-common ARM: tegra: Tegra114 pinmux cleanup 2014-04-17 08:41:06 -07:00
tegra124-common ARM: tegra: Tegra124 pinmux cleanup 2014-04-17 08:41:06 -07:00
Makefile kbuild: use boolean macros to select tegra*-common directory 2014-04-17 17:44:35 -04:00
u-boot-spl.lds arm: move exception handling out of start.S files 2014-05-15 16:24:53 +02:00
u-boot.lds ARM: HYP/non-sec: add separate section for secure code 2014-07-28 17:07:23 +02:00