u-boot-brain/drivers
Philipp Tomsich 403e9cbcd5 rockchip: rk3368: add DRAM controller driver with DRAM initialisation
This adds a DRAM controller driver for the RK3368 and places it in
drivers/ram/rockchip (where the other DM-enabled DRAM controller
drivers for rockchip devices should also be moved eventually).

At this stage, only the following feature-set is supported:
 - DDR3
 - 32-bit configuration (i.e. fully populated)
 - dual-rank (i.e. no auto-detection of ranks)
 - DDR3-1600K speed-bin

This driver expects to run from a TPL stage that will later return to
the RK3368 BROM.  It communicates with later stages through the
os_reg2 in the pmugrf (i.e. using the same mechanism as Rockchip's DDR
init code).

Unlike other DMC drivers for RK32xx and RK33xx parts, the required
timings are calculated within the driver based on a target frequency
and a DDR3 speed-bin (only the DDR3-1600K speed-bin is support at this
time).

The RK3368 also has the DDRC0_CON0 (DDR ch. 0, control-register 0)
register for controlling the operation of its (single-channel) DRAM
controller in the GRF block.  This provides for selecting DDR3, mobile
DDR modes, and control low-power operation.
As part of this change, DDRC0_CON0 is also added to the GRF structure
definition (at offset 0x600).

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2017-08-13 17:12:33 +02:00
..
adc dm: adc: Convert uclass to livetree 2017-06-01 07:03:13 -06:00
ata ahci-pci: Update call to ahci_probe_scsi_pci() 2017-08-03 14:48:48 -04:00
bios_emulator bios_emulator: Fix cast for 64-bit compilation 2016-10-11 11:55:33 +08:00
block Merge git://git.denx.de/u-boot-x86 2017-08-01 15:38:32 -04:00
bootcount powerpc: remove 4xx support 2017-07-03 17:35:28 -04:00
clk rockchip: clk: rk3368: add support for configuring the SPI clocks 2017-08-13 17:12:33 +02:00
core spl: dm: Kconfig: split REGMAP/SYSCON support for TPL from SPL 2017-08-13 17:12:20 +02:00
cpu dm: core: Update device_bind_driver_to_node() to use ofnode 2017-06-01 07:03:08 -06:00
crypto Convert CONFIG_CMD_HASH to Kconfig 2017-05-22 12:38:15 -04:00
ddr driver/ddr: Add support for setting timing in hws_topology_map 2017-07-12 06:56:48 +02:00
demo dm: core: Replace of_offset with accessor 2017-02-08 06:12:14 -07:00
dfu dfu: add common function to initiate transaction 2017-07-28 23:34:40 +02:00
dma imx: reorganize IMX code as other SOCs 2017-07-12 10:17:44 +02:00
firmware dm: core: Rename of_device_is_compatible() 2017-06-01 07:03:06 -06:00
fpga fpga: xilinx: Avoid using local intermediate buffer 2017-08-02 09:11:52 +02:00
gpio Convert CONFIG_CMD_TCA642X to Kconfig 2017-08-11 15:42:00 -04:00
i2c i2c: designware: Allow sending restart conditions 2017-08-10 12:02:50 +02:00
input powerpc, 5xxx, 512x: remove support for mpc5xxx and mpc512x 2017-06-16 10:14:55 -04:00
led dm: core: Update device_bind_driver_to_node() to use ofnode 2017-06-01 07:03:08 -06:00
mailbox dm: mailbox: Update uclass to support livetree 2017-06-01 07:03:15 -06:00
memory memory: Move TI_AEMIF config to KCONFIG 2016-04-18 17:11:43 -04:00
misc rockchip: efuse: dm: change to use dev_read_addr 2017-07-27 14:59:00 +02:00
mmc mmc: fsl_esdhc: not always setting esdhc fdt status to okay 2017-08-09 09:57:32 -07:00
mtd Convert CONFIG_NAND to Kconfig 2017-08-12 09:18:47 -04:00
net net: gmac_rockchip: Add support for the RK3368 GMAC 2017-08-13 17:12:33 +02:00
pch dm: Use dm_scan_fdt_dev() directly where possible 2016-07-27 14:15:54 -06:00
pci PCI: layerscape: Fix assigning wrong address to LS2088A pcie cfg1 space 2017-08-09 09:57:32 -07:00
pcmcia Kconfig; Drop CONFIG_IDE_TI_CARDBUS and associated driver 2017-08-11 15:41:51 -04:00
phy phy: add a NO-OP phy driver 2017-07-28 23:34:44 +02:00
pinctrl rockchip: pinctrl: rk3368: add SPI support 2017-08-13 17:12:25 +02:00
power regulator: palmas: disable bypass when the LDO is enabled 2017-08-01 11:58:01 +09:00
pwm dm: tegra: pwm: Convert to livetree 2017-07-28 12:02:47 -06:00
qe QE: add QE support on SD boot 2017-06-01 19:56:54 -07:00
ram rockchip: rk3368: add DRAM controller driver with DRAM initialisation 2017-08-13 17:12:33 +02:00
remoteproc dm: core: Replace of_offset with accessor 2017-02-08 06:12:14 -07:00
reset reset: add reset_release_all() 2017-07-28 23:34:07 +02:00
rtc powerpc, 5xxx, 512x: remove support for mpc5xxx and mpc512x 2017-06-16 10:14:55 -04:00
scsi dm: mmc: Allow disabling driver model in SPL 2017-08-01 11:58:00 +09:00
serial serial: sh: Use the clock framework to obtain clock config 2017-08-03 04:26:25 +09:00
soc Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
sound dm: gpio: Add live tree support 2017-06-01 07:03:10 -06:00
spi Merge git://git.denx.de/u-boot-fsl-qoriq 2017-08-02 10:52:26 -04:00
spmi dm: Rename dev_addr..() functions 2017-06-01 07:03:01 -06:00
sysreset rockchip: rk322x: add sysreset driver 2017-07-11 12:13:46 +02:00
thermal thermal: imx: fix calculation 2017-05-18 11:23:31 +02:00
timer x86: kconfig: Select TIMER and X86_TSC_TIMER 2017-08-01 20:17:02 +08:00
tpm dm: Rename dev_addr..() functions 2017-06-01 07:03:01 -06:00
usb net: usb: r8152: fix "duplicate 'const' declaration specifier" 2017-08-07 15:18:29 -05:00
video rockchip: video: Makefile: Add soc specific driver for rk3288 mipi dsi 2017-08-07 21:32:11 +02:00
watchdog watchdog: Introduce watchdog driver for Intel Tangier 2017-07-30 10:30:25 +08:00
Kconfig scsi: Move drivers into new drivers/scsi directory 2017-07-11 10:08:19 -06:00
Makefile drivers: spl: consistently use the $(SPL_TPL_) macro 2017-08-13 17:12:21 +02:00