Re: [U-Boot] [PATCH v1] x86: Make table address selectable

2017-07-28 Thread Bin Meng
On Sat, Jul 29, 2017 at 1:02 AM, Andy Shevchenko wrote: > Some firmwares might have another window for generated tables. > > So, introduce two configuration options to select start address and > maximum length for the generated tables. > > Signed-off-by: Andy Shevchenko > --- > arch/x86/Kconfig

Re: [U-Boot] [PATCHv2] configs: Migrate CMD_NAND*

2017-07-28 Thread Bin Meng
On Sat, Jul 29, 2017 at 9:31 AM, Tom Rini wrote: > Migrate all remaining instances of CMD_NAND, CMD_NAND_TRIMFFS > CMD_NAND_LOCK_UNLOCK and CMD_NAND_TORTURE from the headers into the > defconfig files. > > Tested-by: Adam Ford > Signed-off-by: Tom Rini > --- > Changes in v2: > - imply'd a few mo

Re: [U-Boot] [PATCH 1/3] dm: ahci: Add a generic PCI-based AHCI driver

2017-07-28 Thread Bin Meng
Hi Simon, On Sat, Jul 29, 2017 at 2:44 AM, Simon Glass wrote: > Hi Bin, > > On 13 July 2017 at 03:22, Simon Glass wrote: >> Hi Bin, >> >> On 6 July 2017 at 23:08, Bin Meng wrote: >>> Hi Simon, >>> >>> On Wed, Jun 21, 2017 at 1:00 PM, Bin Meng wrote: Hi Simon, On Wed, Jun 21, 201

Re: [U-Boot] [PATCH 1/3] test/py: Handle the banner being printed after relocation

2017-07-28 Thread Simon Glass
Hi Stephen, On 27 July 2017 at 15:27, Stephen Warren wrote: > On 07/27/2017 09:31 AM, Simon Glass wrote: >> >> If CONFIG_DISPLAY_BOARDINFO_LATE is enabled, U-Boot displays the banner >> again after relocation so that it is visible on the video display. Detect >> this and allow it. >> >> Note: Thi

Re: [U-Boot] Please pull u-boot-dm

2017-07-28 Thread Tom Rini
On Fri, Jul 28, 2017 at 12:46:36PM -0600, Simon Glass wrote: > Hi Tom, > > This includes the tegra livetree conversion at last, plus a few other things. > > > The following changes since commit 26722335253a9fa384ceb423419254cb00d0def1: > > rockchip: puma-rk3399: remove duplicate code (merge

[U-Boot] [PULL] efi patch queue 2017-07-29

2017-07-28 Thread Alexander Graf
Hi Tom, This is my current patch queue for efi. Please pull. Alex The following changes since commit 8d3a25685e4aac7070365a2b3c53c2c81b27930f: Merge git://git.denx.de/u-boot-dm (2017-07-11 20:28:46 -0400) are available in the git repository at: git://github.com/agraf/u-boot.git tags/sig

Re: [U-Boot] [U-Boot,2/4] efi_loader: Add an EFI_CALL() macro

2017-07-28 Thread Alexander Graf
> Rather than open-coding EFI_EXIT() + callback + EFI_ENTRY(), introduce > an EFI_CALL() macro. This makes callbacks into UEFI world (of which > there will be more in the future) more concise and easier to locate in > the code. > > Signed-off-by: Rob Clark Thanks, applied to efi-next Alex ___

Re: [U-Boot] efi_loader: workaround for grub lsefi bug

2017-07-28 Thread Alexander Graf
> Patch has also been sent to fix grub to not ignore the error returned > and treat protocol_buffer_count as valid. But that that might take a > while to trickle into distro's, so this workaround might be useful. > > Signed-off-by: Rob Clark Thanks, applied to efi-next Alex __

Re: [U-Boot] efi_loader: EFI file paths should be DOS style

2017-07-28 Thread Alexander Graf
> shim.efi, for example, actually tries to parse this, but is expecting > backslashes. > > Signed-off-by: Rob Clark Thanks, applied to efi-next Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot

Re: [U-Boot] efi_loader: log EFI return values too

2017-07-28 Thread Alexander Graf
> Turns out this is rather useful to tracking down where things fail. > > Signed-off-by: Rob Clark Thanks, applied to efi-next Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot

Re: [U-Boot] [U-Boot, 1/4] efi_loader: only evaluate EFI_EXIT()'s ret once

2017-07-28 Thread Alexander Graf
> There are a couple spots doing things like: > >return EFI_EXIT(some_fxn(...)); > > which I handn't noticed before. With addition of printing return value > in the EFI_EXIT() macro, now the fxn call was getting evaluated twice. > Which we didn't really want. > > Signed-off-by: Rob Clark

Re: [U-Boot] efi_loader: gop: fixes for CONFIG_DM_VIDEO without CONFIG_LCD

2017-07-28 Thread Alexander Graf
> Make EFI GOP support work with DM_VIDEO but without legacy LCD. > > Signed-off-by: Rob Clark > Cc: Alexander Graf Thanks, applied to efi-next Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot

Re: [U-Boot] efi_loader: fix bug in efi_get_memory_map

2017-07-28 Thread Alexander Graf
> When booting shim -> fallback -> shim -> grub -> linux the memory map is > a bit larger than the size linux passes in on the first call. But in > the EFI_BUFFER_TOO_SMALL case we were not passing back the updated size > to linux so it would loop forever. > > Signed-off-by: Rob Clark Thanks, a

Re: [U-Boot] [U-Boot, 1/2] efi_loader: add helper macro to construct protocol objects

2017-07-28 Thread Alexander Graf
> There are a bunch of protocols which should be exposed by GUID but are > not. Add a helper macro to create an efi_object, to avoid much typing. > > Note that using the pointer for efiobj->handle is semi-arbitrary. We > just need a unique value to match the efiobj supporting the protocol > with

Re: [U-Boot] [U-Boot, 3/4] efi_loader: add checking for incorrect use of EFI_ENTRY/EXIT

2017-07-28 Thread Alexander Graf
> Missing an EFI_ENTRY() or doubling up EFI_EXIT() leads to non-obvious > crashes. Let's add some error checking. > > Signed-off-by: Rob Clark Thanks, applied to efi-next Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listin

Re: [U-Boot] [U-Boot, 2/2] efi_loader: Fix configuration table override

2017-07-28 Thread Alexander Graf
> Before commit 7cbc12415d ("efi_loader: initalize EFI object list > only once") we recreated the world on every bootefi invocation. > > That included the object tree as well as the configuration tables. > > Now however we don't recreate them, which means we must not explicitly > override the con

Re: [U-Boot] efi_loader: add some missing breaks

2017-07-28 Thread Alexander Graf
> Signed-off-by: Rob Clark Thanks, applied to efi-next Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot

Re: [U-Boot] efi_loader: move guidcmp to header

2017-07-28 Thread Alexander Graf
> Want to re-use this for file protocol, which I'm working on. > > Signed-off-by: Rob Clark Thanks, applied to efi-next Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot

Re: [U-Boot] [U-Boot,2/2] efi_loader: expose protocols via GUID

2017-07-28 Thread Alexander Graf
> shim.efi (or rather gnu-efi's LibLocateProtocol() which shim.efi uses) > resolves protocols via efi_locate_handle() so the console protocols > need to be added to the efi object list. > > Signed-off-by: Rob Clark Thanks, applied to efi-next Alex __

Re: [U-Boot] efi_loader: remove more double EFI_EXIT() in efi_disk.c

2017-07-28 Thread Alexander Graf
> Signed-off-by: Rob Clark Thanks, applied to efi-next Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot

Re: [U-Boot] [U-Boot, 1/2] efi_loader: Improve install_configuration_table

2017-07-28 Thread Alexander Graf
> The INSTALL_CONFIGURATION_TABLE callback also provides the ability to > remove table entries. This patch adds that functionality. > > Signed-off-by: Alexander Graf Thanks, applied to efi-next Alex ___ U-Boot mailing list U-Boot@lists.denx.de https:

Re: [U-Boot] efi_loader: remove double EFI_EXIT() with efi_unsupported

2017-07-28 Thread Alexander Graf
> Probably this went unnoticed before, but it causes problems with > addition of 804b1d73 ("efi_loader: log EFI return values too") > > Signed-off-by: Rob Clark Thanks, applied to efi-next Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lis

Re: [U-Boot] [U-Boot, 4/4] efi_loader: indent entry/exit prints to show nesting level

2017-07-28 Thread Alexander Graf
> This should make it easier to see when a callback back to UEFI world > calls back in to the u-boot world, and generally match up EFI_ENTRY() > and EFI_EXIT() calls. > > Signed-off-by: Rob Clark Thanks, applied to efi-next Alex ___ U-Boot mailing li

[U-Boot] [PATCH 3/3] common/env_embedded.c: rename PPCENV/PPCTEXT macros

2017-07-28 Thread Thomas Petazzoni
The environment has pretty much nothing to do with just "PPC", so rename the macros to just __UBOOT_ENV_SECTION__ which is more readable. In addition, only a single macro is needed: the environment now goes either to the default section (USE_HOSTCC is defined) or in the .text section. Signed-off-

[U-Boot] [PATCH 2/3] common/env_embedded.c: drop support for CONFIG_SYS_USE_PPCENV

2017-07-28 Thread Thomas Petazzoni
CONFIG_SYS_USE_PPCENV is no longer used anywhere. It was used to put the environment in the special .ppcenv section, but the last architecture using this section (SuperH) has been changed to not use it. Therefore, this commit drops support for CONFIG_SYS_USE_PPCENV entirely. We only handle two cas

[U-Boot] [PATCH 1/3] arch/sh: don't bring common/env_embedded.o into the link

2017-07-28 Thread Thomas Petazzoni
The linker script for SuperH brings the .ppcenv and .ppcenvr section of common/env_embedded.o into the .text section. However, the .ppcenv section is only ever filled in by env_embedded.o when CONFIG_SYS_USE_PPCENV is defined, but no platforms in mainline U-Boot use this. In addition, common/env_e

[U-Boot] [PATCH 0/3] env_embedded related fixes/improvements

2017-07-28 Thread Thomas Petazzoni
Hello, Here is a small patch series that fixes the build on SuperH when CONFIG_ENV_IS_NOWHERE is set (first patch) and then does some follow-up cleanups in common/env_embedded.c. However, I would like to ask for a careful review to be made here, since the whole environment handling logic is still

Re: [U-Boot] [PATCH 10/14] dm: mmc: sunxi: Add support for driver model

2017-07-28 Thread Suneel Garapati
Hi Simon, On Fri, Jul 28, 2017 at 11:44 AM, Simon Glass wrote: > Hi Suneel, > > On 27 July 2017 at 23:03, Suneel Garapati wrote: >> Hi Simon, >> >> I have similar requirement of Cavium boards using two card slots on >> one host and currently trying to figure out to support it using >> DM_MMC. >

[U-Boot] [PATCH] arch/sh: allow building in big-endian mode

2017-07-28 Thread Thomas Petazzoni
The SuperH architecture allows to be run in either little or big endian mode. Some SuperH SoCs get the little vs. big endian decision through mode pins sampled at reset, so if big endian has been choosen by HW designers, it cannot be easily changed. Therefore, it makes sense to allow building U-Bo

Re: [U-Boot] [PATCH v3 60/66] spl: moveconfig: migrate CONFIG_SPL_LDSCRIPT

2017-07-28 Thread Adam Ford
On Fri, Jul 28, 2017 at 3:05 PM, Dr. Philipp Tomsich wrote: > >> On 28 Jul 2017, at 21:52, Siarhei Siamashka >> wrote: >> >> On Fri, 28 Jul 2017 21:22:32 +0200 >> Philipp Tomsich wrote: >> >>> With SPL_LDSCRIPT defined via Kconfig, we can run moveconfig... this >>> will touch every configuratio

Re: [U-Boot] [PATCH 10/14] dm: mmc: sunxi: Add support for driver model

2017-07-28 Thread Siarhei Siamashka
On Fri, 28 Jul 2017 18:08:31 +0200 Maxime Ripard wrote: > On Thu, Jul 27, 2017 at 10:19:44PM -0600, Simon Glass wrote: > > Hi Maxime, > > > > On 17 July 2017 at 03:26, Maxime Ripard > > wrote: > > > Hi Simon, > > > > > > On Fri, Jul 14, 2017 at 07:47:45AM -0600, Simon Glass wrote: > > >> On

Re: [U-Boot] [PATCH v3 60/66] spl: moveconfig: migrate CONFIG_SPL_LDSCRIPT

2017-07-28 Thread Siarhei Siamashka
On Fri, 28 Jul 2017 21:22:32 +0200 Philipp Tomsich wrote: > With SPL_LDSCRIPT defined via Kconfig, we can run moveconfig... this > will touch every configuration that uses SPL, even if there was an > implicit resolution of the SPL_LDSCRIPT: now everything is explicit. > > Signed-off-by: Philipp

[U-Boot] [PATCH v3 00/66] Support OF_PLATDATA in TPL, enable RK3368 DRAM init and add RK3368-uQ7

2017-07-28 Thread Philipp Tomsich
Here's the (hopefully final) updated series to enable the RK3368 which addresses the concerns regarding the prefixing of GRF bit-definitions with a RK3368-prefix: while I had intended to temporarily pull the GMAC support to get around the underlying issue, moving the bit-definitions into the pinct

Re: [U-Boot] [PATCH v3 60/66] spl: moveconfig: migrate CONFIG_SPL_LDSCRIPT

2017-07-28 Thread Dr. Philipp Tomsich
> On 28 Jul 2017, at 21:52, Siarhei Siamashka > wrote: > > On Fri, 28 Jul 2017 21:22:32 +0200 > Philipp Tomsich wrote: > >> With SPL_LDSCRIPT defined via Kconfig, we can run moveconfig... this >> will touch every configuration that uses SPL, even if there was an >> implicit resolution of the

[U-Boot] [PATCH] net: phy: micrel: add an option to disable gigabit for the KSZ9031

2017-07-28 Thread Sebastien Bourdelin
The environment variable "disable_giga" can now be used to disable 1000baseTx on the Micrel's KSZ9031. Signed-off-by: Sebastien Bourdelin --- drivers/net/phy/micrel.c | 27 +++ 1 file changed, 27 insertions(+) diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micre

[U-Boot] [PATCH v3 52/66] rockchip: rk3368: spl: enable SPL_FRAMEWORK in rk3368_common.h

2017-07-28 Thread Philipp Tomsich
To build TPL and SPL stages for the RK3368, we will also need to enable the SPL_FRAMEWORK. Signed-off-by: Philipp Tomsich Version-changes: 2 - dropped duplicate definition (this in fact dropped one of the patches in this series) of CONFIG_SYS_SDRAM_BASE from rk3368_common.h Reviewed-by: Sim

[U-Boot] [PATCH v3 45/66] rockchip: clk: rk3368: add support for GMAC (SLCK_MAC) clock

2017-07-28 Thread Philipp Tomsich
To enable the GMAC on the RK3368, we need to set up the clocking appropriately to generate a tx_clk for the MAC. This adds an implementation that implements the use of the <&ext_gmac> clock (i.e. an external 125MHz clock for RGMII provided by the PHY). This is the clock setup used by the boards cu

[U-Boot] [PATCH v3 43/66] rockchip: clk: rk3368: implement MMC/SD clock reparenting

2017-07-28 Thread Philipp Tomsich
The original clock support for MMC/SD cards on the RK3368 suffered from a tendency to select a divider less-or-equal to the the one giving the requested clock-rate: this can lead to higher-than-expected (or rather: higher than supported) clock rates for the MMC/SD communiction. This change rewrite

[U-Boot] [PATCH v3 58/66] rockchip: board: lion-rk3368: add support for the RK3368-uQ7

2017-07-28 Thread Philipp Tomsich
The RK3368-uQ7 (codenamed 'Lion') is a micro-Qseven (40mm x 70mm, MXM-230 edge connector compatible with the Qseven specification) form-factor system-on-module based on the octo-core Rockchip RK3368. It is designed, supported and manufactured by Theobroma Systems. It provides the following feature

[U-Boot] [PATCH v3 32/66] rockchip: rk3368: grf: use shifted-constants

2017-07-28 Thread Philipp Tomsich
The RK3368 GRF header was still defines with a shifted-mask but with non-shifted function selectors for the IOMUX defines. As the RK3368 support is still fresh enough to allow a quick change, we do this now before having more code use this. Signed-off-by: Philipp Tomsich --- Changes in v3: Non

[U-Boot] [PATCH v3 15/66] spl: dm: use CONFIG_IS_ENABLED to test for the DM option

2017-07-28 Thread Philipp Tomsich
Even though there's now a TPL_DM configuration option, the spl logic still checks for SPL_DM and thus does not pick up the proper config option. This introduces the use of CONFIG_IS_ENABLED(DM) in spl.c to always pick up the desired configuration option instead of having a hard-coded check for the

[U-Boot] [PATCH v3 48/66] net: gmac_rockchip: Add support for the RK3368 GMAC

2017-07-28 Thread Philipp Tomsich
The GMAC in the RK3368 once again is identical to the incarnation in the RK3288 and the RK3399, except for where some of the configuration and control registers are located in the GRF. This adds the RK3368-specific logic necessary to reuse this driver. Signed-off-by: Philipp Tomsich Acked-by: J

[U-Boot] [PATCH v3 53/66] rockchip: rk3368: spl: add TPL support

2017-07-28 Thread Philipp Tomsich
This adds the TPL support for the RK3368, including the u-boot-tpl.lds. Signed-off-by: Philipp Tomsich --- Changes in v3: - removes the '#define DEBUG' - uses the syscon API to access GRF and SGRF to avoid using hard-coded addresses Changes in v2: - copies the enum for the IOMUX config of th

[U-Boot] [PATCH v3 28/66] rockchip: rk3368: spl: define COUNTER_FREQUENCY to 24MHz

2017-07-28 Thread Philipp Tomsich
The BootROM of the RK3368 Boot ROM does not initialise cntfrq_el0. This change defines COUNTER_FREQUENCY, which is used by the AArch64 init code in arch/arm/cpu/armv8/start.S to set up cntfrq_el0. If the counter-frequency is not correctly set up, the calculation of delays using the ARMv8 generic t

[U-Boot] [PATCH v3 62/66] armv8: TPL_STACK will always be defined, so test CONFIG_TPL_NEEDS_SEPARATE_STACK

2017-07-28 Thread Philipp Tomsich
Now that TPL_STACK has been moved off the whitelist (ok, I'm lying: the 'moving off the whitelist' part comes in once moveconfig runs... which will be a few commits down the line) and added to Kconfig, we need to test CONFIG_TPL_NEEDS_SEPARATE_STACK to see whether the value from TPL_STACK should be

[U-Boot] [PATCH v3 25/66] rockchip: rk3368: improve Kconfig text for the RK3368

2017-07-28 Thread Philipp Tomsich
The RK3368 option in Kconfig referred to the RK3328 (copy-and-paste) and had a few typos and unnecessarily used UTF-8 characters. While fixing this, I also reformatted and further clarified the text (e.g. made the grouping into a a big and little cluster of 4 cores each explicit). Signed-off-by:

[U-Boot] [PATCH v3 39/66] rockchip: clk: rk3368: support OF_PLATDATA for the RK3368 clk driver

2017-07-28 Thread Philipp Tomsich
With the RK3368's limited TPL size, we'll want to use OF_PLATFDATA for the SPL stage. This implements support for OF_PLATDATA in the clock driver for the RK3368. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass --- Changes in v3: None Changes in v2: None drivers/clk/rockchip/clk_rk33

[U-Boot] [PATCH v3 13/66] spl: dm: Kconfig: split CLK support for SPL and TPL

2017-07-28 Thread Philipp Tomsich
Introduce TPL_CLK to allow finer-grained selection of TPL features for feature-rich (i.e. DM-based) TPL stages. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass Reviewed-by: Tom Rini --- Changes in v3: None Changes in v2: None drivers/clk/Kconfig | 10 ++ drivers/clk/Makefil

[U-Boot] [PATCH v3 66/66] rockchip: board: puma_rk3399: rename ATF firmware

2017-07-28 Thread Philipp Tomsich
From: Klaus Goger prefix the bl31 firmware needed to build uboot.itb so it can coexist in the build area with ATFs from other boards (i.e. lion_rk3368) Signed-off-by: Klaus Goger Reviewed-by: Simon Glass Signed-off-by: Philipp Tomsich --- Changes in v3: None Changes in v2: None board/theo

[U-Boot] [PATCH v3 14/66] spl: dm: Kconfig: split OF_CONTROL and OF_PLATDATA between SPL and TPL

2017-07-28 Thread Philipp Tomsich
For the RK3368, we want to use OF_PLATDATA in TPL, but full OF_CONTROL in SPL: this requires the introduction of a new family of configuration options to decouple SPL_OF_CONTROL and SPL_OF_PLATDATA from TPL. Consequently, Makefile.spl needs to be adjusted to test for these configuration items thro

[U-Boot] [PATCH v3 20/66] lib: spl: differentiate between TPL and SPL for libfdt/of_control/of_platdata

2017-07-28 Thread Philipp Tomsich
This splits the compilation of code modules for TPL and SPL for OF_CONTROL (and related) features between TPL and SPL. The typical use-case of this is a TPL stage that uses OF_PLATDATA at TPL and provides full OF_CONTROL at SPL (e.g. on the RK3368). Signed-off-by: Philipp Tomsich Reviewed-by: S

[U-Boot] [PATCH v3 51/66] rockchip: rk3368: dts: add DMC node in rk3368.dtsi

2017-07-28 Thread Philipp Tomsich
For full SPL support, including DRAM initialisation, we need a few nodes from the DTS: this commit adds the DMC (DRAM controller) node, the service_msch (memory scheduler) node and marks GRF, PMUGRF and CRU as 'u-boot,dm-pre-reloc'. In addition to this, we also include the dt-binding for the DMC t

[U-Boot] [PATCH v3 21/66] spl: consistently use $(SPL_TPL_) to select features for SPL and TPL builds

2017-07-28 Thread Philipp Tomsich
To allow for a finer-grained control of features for TPL and SPL builds all modules/boot-methods/etc. need to be consistently selected based on the $(SPL_TPL_) macros. This allows splitting the associated config-options in Kconfig: we don't split the Kconfig options here and now, as this should ha

[U-Boot] [PATCH v3 61/66] spl: support TPL_STACK, TPL_MAX_SIZE and TPL_TEXT_BASE via Kconfig

2017-07-28 Thread Philipp Tomsich
Let's clean up behind ourselves and move the (newly defined) TPL_STACK, TPL_MAX_SIZE and TPL_TEXT_BASE into Kconfig. Given that 0x0 might be considered to be valid values for TPL_TEXT_BASE and TPL_STACK, we need to introduce helper config options ("TPL_NEEDS_SEPARATE_...") to indicate that these s

[U-Boot] [PATCH v3 47/66] rockchip: clk: rk3368: add support for configuring the SPI clocks

2017-07-28 Thread Philipp Tomsich
As SPI support may be useful in the boot-flow, this adds support for configuring the SPI controller's clocks in the RK3368 clock driver. Reviewed-by: Simon Glass Signed-off-by: Philipp Tomsich --- Changes in v3: None Changes in v2: - added SPI clock setup drivers/clk/rockchip/clk_rk3368.c | 1

[U-Boot] [PATCH v3 63/66] rockchip: rk3368: mark TPL as not inheriting its stack, text-base and size from SPL

2017-07-28 Thread Philipp Tomsich
The RK3368 needs to have a different base-address and stack-pointer for its TPL stage. Now that we want to do this via Kconfig, we need to tick the appropriate 'TPL_NEEDS_...' boxes. Signed-off-by: Philipp Tomsich --- Changes in v3: - changes Kconfig, so RK3368 will notify the SPL configuratio

[U-Boot] [PATCH v3 31/66] rockchip: rk3368: syscon: SGRF support for OF_PLATDATA

2017-07-28 Thread Philipp Tomsich
In TPL we will need to configure security in the SGRF of the RK3368. This change adds support for the SGRF as a syscon device, so we can retrieve its address range through the syscon API in TPL (and can avoid having to hard-code the address). Signed-off-by: Philipp Tomsich --- Changes in v3: -

[U-Boot] [PATCH v3 16/66] armv8: move low-level assembly functions into function-sections

2017-07-28 Thread Philipp Tomsich
TPL builds today don't need to call into firmware or set up the MMU (if this changes, it should be controlled through a config option whether to include this or not), but include the needed support code for this anyway. By moving these unused low-level functions into seperate function-sections, th

[U-Boot] [PATCH v3 12/66] spl: dm: Kconfig: SPL_CLK depends on SPL_DM

2017-07-28 Thread Philipp Tomsich
SPL_CLK should also depend on SPL_DM (and not just on CLK). Add the additional dependency. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass Reviewed-by: Tom Rini --- Changes in v3: None Changes in v2: None drivers/clk/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) dif

[U-Boot] [PATCH v3 30/66] rockchip: rk3368: syscon: MSCH/PMUGRF/GRF support for OF_PLATDATA

2017-07-28 Thread Philipp Tomsich
The RK3368 has both a limited TPL size (just 0x7000 bytes) and the added challenge of booting in AArch64, which increases the code size for TPL (particularily when using the LP64 programming model). For this reason we expect the RK3368 to always use OF_PLATDATA for its TPL stage. This change adds

[U-Boot] [PATCH v3 18/66] spl: allow a separate TEXT_BASE, LDSCRIPT and MAX_SIZE for TPL

2017-07-28 Thread Philipp Tomsich
For the bringup of the RK3368, we need to support TPL and SPL running from different addresses... which requires both stages to use a distinct TEXT_BASE. This commit adds support for having a separate LDSCRIPT for TPL (which is expected to make use of the TPL_MAX_SIZE define) and for having a the

[U-Boot] [PATCH v3 27/66] rockchip: rk3368: pmugrf: add definitions for os_reg[0..3]

2017-07-28 Thread Philipp Tomsich
On the RK3368 we use a TPL-stage similar to Rockchip's DDR init (i.e. it initialises DRAM, leaves some info for the next stage and returns to the BootROM). To allow compatibility with Rockchip's DDR init code, we use the same register os_reg2 in pmugrf for passing this info (i.e. DRAM size and con

[U-Boot] [PATCH v3 40/66] rockchip: clk: rk3368: do not change CPLL/GPLL before returning to BROM

2017-07-28 Thread Philipp Tomsich
The RK3368 has a somewhat temperamental BootROM (which I learned the hard way) when it comes to reconfiguring the CPLL and GPLL (in fact, experiments show that changing the GPLL broke things for me, while changing the CPLL seems to be more benign). These should not be modified by the SPL stage, if

[U-Boot] [PATCH v3 65/66] rockchip: board: puma-rk3399: fix warnings in puma_rk3399/fit_spl_atf.its

2017-07-28 Thread Philipp Tomsich
The ITS file generated warnings due to @ designations in the naming which cause DTC to complain as follows: Warning (unit_address_vs_reg): Node /images/uboot@1 has a unit name, but no reg property Warning (unit_address_vs_reg): Node /images/atf@1 has a unit name, but no reg property Warning

[U-Boot] [PATCH v3 11/66] spl: dm: Kconfig: introduce TPL_RAM (in analogy to SPL_RAM)

2017-07-28 Thread Philipp Tomsich
To allow finer grained selection of features for TPL, we introduce TPL_RAM (in analogy to SPL_RAM). Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass Reviewed-by: Tom Rini --- Changes in v3: None Changes in v2: None drivers/ram/Kconfig | 9 + 1 file changed, 9 insertions(+) d

[U-Boot] [PATCH v3 50/66] rockchip: rk3368: add DRAM controller driver with DRAM initialisation

2017-07-28 Thread Philipp Tomsich
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

[U-Boot] [PATCH v3 19/66] spl: Kconfig: split SYS_MALLOC_SIMPLE for TPL and SPL

2017-07-28 Thread Philipp Tomsich
As include/malloc.h already checks for SYS_MALLOC_SIMPLE using the CONFIG_IS_ENABLED macro, we need to move to having separate entries as we switch to fully separate configuration for SPL and TPL. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass Reviewed-by: Tom Rini --- Changes in v3:

[U-Boot] [PATCH v3 56/66] rockchip: rk3368: spl: mark SPL and TPL as supported for ROCKCHIP_RK3368

2017-07-28 Thread Philipp Tomsich
With SPL and TPL support for the RK3368 in place, mark SPL and TPL as supported from Kconfig for the RK3368. As this is primarily tested on the RK3368-uQ7, we'll leave it to board's individual defconfig to enable. Also enable DEBUG_UART_BOARD_INIT for the RK3368, so we get output during the early

[U-Boot] [PATCH v3 64/66] moveconfig: migrate TPL_STACK, TPL_TEXT_BASE and TPL_MAX_SIZE

2017-07-28 Thread Philipp Tomsich
We can finally drop TPL_STACK, TPL_TEXT_BASE and TPL_MAX_SIZE off the whitelist (this time it's really happening!) and migrate the setting (only used on the RK3368-uQ7 so far) into defconfig. One major caveat: other RK3368 boards that move to use SPL/TPL will also need to set these values in their

[U-Boot] [PATCH v3 17/66] armv8: spl: Support separate stack for TPL

2017-07-28 Thread Philipp Tomsich
To allow a TPL and SPL to run from different addresses/memories, we need to split setup of the TPL and SPL stacks. To do so, we introduce CONFIG_TPL_STACK (not listed in Kconfig) which can be used to override the initial stack pointer for TPL. To provide backward compatibility for existing boards

[U-Boot] [PATCH v3 23/66] drivers: spl: consistently use the $(SPL_TPL_) macro

2017-07-28 Thread Philipp Tomsich
To simplify drivers/Makefile a bit when using TPL/SPL, we consistently use the $(SPL_TPL_) macro to test for drivers that have separate configuration symbols for the full U-boot, SPL and TPL stages. Instead of explicitly repeating them in two separate if-guarded sections of the Makefile, we can now

[U-Boot] [PATCH v3 57/66] rockchip: spi: enable support for the rk_spi driver for the RK3368

2017-07-28 Thread Philipp Tomsich
For the RK3368, we can reuse the SPI driver (although we'll have to eventually investigate whether it can be merged with the designware_spi.c driver) also used for the RK3288 and RK3399. This adds the necessary compatible string to support the RK3368. Note that the assumption that GPLL will be clo

[U-Boot] [PATCH v3 46/66] rockchip: clk: rk3368: mark 'priv' __maybe_unused in rk3368_clk_set_rate()

2017-07-28 Thread Philipp Tomsich
With the clock support in rk3368_clk_set_rate() conditionalized on various feature definitions, 'priv' can remain unused (e.g. in the SPL build when only MMC is enabled). Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass --- Changes in v3: None Changes in v2: None drivers/clk/rockchip/

[U-Boot] [PATCH v3 54/66] rockchip: spl: make spl-boot-order code reusable (split from rk3399)

2017-07-28 Thread Philipp Tomsich
In order to reuse the support for the u-boot,spl-boot-order property from the rk3399, we split it into a reusable module that can be included by the SPL code for any of our boards. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass --- Changes in v3: None Changes in v2: - added in v2 ar

[U-Boot] [PATCH v3 38/66] rockchip: clk: rk3368: implement bandwidth adjust for PLLs

2017-07-28 Thread Philipp Tomsich
The RK3368 TRM recommends to configure the bandwith adjustment (CON2) for PLLs to NF/2. This implements this for all reconfigurations of PLLs and removes the 'has_bwadj' flag (as the RK3368 always has the bandwidth-adjustment feature according to its manual). Signed-off-by: Philipp Tomsich Revi

[U-Boot] [PATCH v3 44/66] rockchip: clk: rk3368: support configuring the DRAM PLL (from TPL)

2017-07-28 Thread Philipp Tomsich
As part of the DRAM initialisation process (running as part of the TPL stage) on the RK3368, we need to set up the DRAM PLL. This implements support for configuring the PLL to for 1200, 1332 or 1600 MHz (i.e. for DDR3-1200, DDR3-1333, DDR3-1600 operating modes). Signed-off-by: Philipp Tomsich R

[U-Boot] [PATCH v3 49/66] rockchip: Makefile: streamline SPL/TPL configuration

2017-07-28 Thread Philipp Tomsich
Handling TPL and SPL in the Makefile for mach-rockchip was based on nested if checks and/or if-else-if paths. This can be simplified and made more readable by using $(SPL_TPL_) and by introducing intermediate variables for the aggregation of SPL and TPL features. Signed-off-by: Philipp Tomsich

[U-Boot] [PATCH v3 55/66] rockchip: rk3368: spl: add SPL support

2017-07-28 Thread Philipp Tomsich
Adds SPL support for the RK3368 (assuming that our TPL stage has initialised DRAM and set up the memory firewall). Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass --- Changes in v3: None Changes in v2: - reuses the support for configuring the boot order using the u-boot,spl-boot-orde

[U-Boot] [PATCH v3 42/66] rockchip: clk: rk3368: define DMA1_SRST_REQ and DMA2_SRST_REQ

2017-07-28 Thread Philipp Tomsich
On he RK3368, we need to temporarily disable security on the DMA engines during TPL and SPL to allow the MMC host to DMA into DRAM. To do so, we need to reset the two DMA engines, which in turn requires the DMA1_SRST_REQ and DMA2_SRST_REQ constants to refer to the appropriate bits in the CRU. As

[U-Boot] [PATCH v3 34/66] rockchip: pinctrl: rk3368: add GMAC (RGMII only) support

2017-07-28 Thread Philipp Tomsich
To add GMAC (Gigabit Ethernet) support (limited to RGMII only at this point), we need support for additional pin-configuration. This commit adds the pinctrl support for GMAC in RGMII mode: * adds a PERIPH_ID_GMAC and the mapping from IRQ number to PERIPH_ID * configures the RGMII pins Signed-of

[U-Boot] [PATCH v3 33/66] rockchip: rk3368: dts: add sgrf node

2017-07-28 Thread Philipp Tomsich
We will to drop device security temporarily (until the ATF initialises it fully) from the TPL/SPL stage: this requires access to some registers in the SGRF. This adds the sgrf node to the rk3368.dtsi, so we can then bind a syscon device onto it and access its memory ranges. Signed-off-by: Philipp

[U-Boot] [PATCH v3 22/66] spl: add TPL_DRIVER_MISC_SUPPORT option

2017-07-28 Thread Philipp Tomsich
This adds the TPL_DRIVER_MISC_SUPPORT option to allow activation of DRIVER_MISC_SUPPORT for devices that need it in the TPL stage. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass Reviewed-by: Tom Rini Version-changes: 3 - removes TPL_MISC_DRIVERS_SUPPORT from the whitelist --- Chang

[U-Boot] [PATCH v3 26/66] rockchip: rk3368: mkimage: add support for the RK3368

2017-07-28 Thread Philipp Tomsich
This commit adds support for RK3368 SoC in mkimage. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass --- Changes in v3: None Changes in v2: None tools/rkcommon.c | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/rkcommon.c b/tools/rkcommon.c index 25b0340..04e8272 100644 --- a

[U-Boot] [PATCH v3 24/66] rockchip: Makefile: allow selective inclusion of sdram_common.o from TPL/SPL/U-Boot

2017-07-28 Thread Philipp Tomsich
The utility functions in sdram_common.c will be useful both for some SPL implementations (and if unused, the linked will discard these anyway) and for the full U-Boot stage. This changes selects sdram_common.o through the $(SPL_TPL_) macro to allow better control of its inclusion through the CONFI

[U-Boot] [PATCH v3 59/66] spl: Kconfig: migrate $(SPL_TPL_)LDSCRIPT to Kconfig

2017-07-28 Thread Philipp Tomsich
Now that we have split up SPL_LDSCRIPT into a SPL and TPL variant and have started to use the TPL-variant for the RK3368, it's time to clean up behind ourselves: move both variants into Kconfig and remove them from the whitelist. Signed-off-by: Philipp Tomsich --- Changes in v3: - moves SPL_LDS

[U-Boot] [PATCH v3 41/66] rockchip: clk: rk3368: implement DPLL (DRAM PLL) support

2017-07-28 Thread Philipp Tomsich
To implement a TPL stage (incl. its DRAM controller setup) for the RK3368, we'll want to configure the DPLL (DRAM PLL). This commit implements setting the DPLL (CLK_DDR) and provides PLL configuration details for the common DRAM operating speeds found on RK3368 boards. Signed-off-by: Philipp Toms

[U-Boot] [PATCH v3 10/66] spl: dm: Kconfig: SPL_RAM depends on SPL_DM

2017-07-28 Thread Philipp Tomsich
This commit models the dependency from SPL_RAM to SPL_DM in Kconfig. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass Reviewed-by: Tom Rini --- Changes in v3: None Changes in v2: None drivers/ram/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/ram/

[U-Boot] [PATCH v3 04/66] rockchip: back-to-bootrom: split BACK_TO_BOOTROM for TPL/SPL

2017-07-28 Thread Philipp Tomsich
The back-to-bootrom option is rather unfortunately named CONFIG_ROCKCHIP_SPL_BACK_TO_BOOTROM instead of CONFIG_SPL_ROCKCHIP_BACK_TO_BOOTROM To make is selectable through CONFIG_IS_ENABLED(ROCKCHIP_BACK_TO_BOOTROM), we need to rename it. At the same time, we introduce a TPL_ variant of the opt

[U-Boot] [PATCH v3 35/66] rockchip: pinctrl: rk3368: add support for configuring the MMC pins

2017-07-28 Thread Philipp Tomsich
The RK3368 has two SD/MMC controllers that can be used from U-Boot both during SPL and for booting an OS from the full bootloader stage. While both are configured to (mostly) sensible settings from the BROM, additional configuration for the MMC controller is needed to configure it to 8bit mode. Th

[U-Boot] [PATCH v3 37/66] rockchip: pinctrl: rk3368: add SPI support

2017-07-28 Thread Philipp Tomsich
To implement pinctrl support for the RK3368, we need to add the bit-definitions to configure the IOMUX and tie these into the pinctrl framework. This also adds the mapping from the IRQ# back onto the periheral id for the SPI devices. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass ---

[U-Boot] [PATCH v3 36/66] rockchip: pinctrl: rk3368: move IOMUX bit-definitions to pinctrl driver

2017-07-28 Thread Philipp Tomsich
There is no real reason to keep the bit-definitions for the IOMUX in the grf header file (which defines the register layout of the GRF block): these should only be used by our pinctrl driver (with the possible exception of early debug-init code in TPL/SPL). This moves the relevant definitions from

[U-Boot] [PATCH v3 29/66] rockchip: rk3368: spl: add memory layout for TPL and SPL

2017-07-28 Thread Philipp Tomsich
For the RK3368, we use a multi-stage boot-process consisting of the following: 1. TPL: initalises DRAM, returns to boot-ROM (which then loads the next stage and transfers control to it) 2. SPL: a full-features SPL stage including OF_CONTROL and FIT image loading, which f

[U-Boot] [PATCH v3 07/66] spl: dm: Kconfig: fix help text for SPL/TPL confusion

2017-07-28 Thread Philipp Tomsich
TPL_NAND_SUPPORT, TPL_SERIAL_SUPPORT, TPL_SPI_FLASH_SUPPORT and TPL_SPI_SUPPORT refer to SPL in their help text. This fixes up the description to correctly reference TPL. Signed-off-by: Philipp Tomsich --- Changes in v3: - (new patch) added fix-up of SPL/TPL confusion in help text Changes in

[U-Boot] [PATCH v3 08/66] spl: dm: Kconfig: use more specific prereqs for SPL_REGMAP and SPL_SYSCON

2017-07-28 Thread Philipp Tomsich
SPL_REGMAP and SPL_SYSCON were marked as depending on DM, when a stricter dependency of SPL_DM was possible. This commit makes the prereq more specific. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass Reviewed-by: Tom Rini --- Changes in v3: None Changes in v2: None drivers/core/Kc

[U-Boot] [PATCH v3 05/66] rockchip: back-to-bootrom: simplify the #ifdef-check for LIBGENERIC in TPL/SPL

2017-07-28 Thread Philipp Tomsich
With the finer-grained control over LIBGENERIC_SUPPORT for TPL/SPL (i.e. with the newly introduced distinction between TPL_LIBGENERIC_SUPPORT and SPL_LIBGENERIC_SUPPORT), we can simplify the #ifdef-check to simply use CONFIG_IS_ENABELD. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass Re

[U-Boot] [PATCH v3 09/66] spl: dm: Kconfig: split REGMAP/SYSCON support for TPL from SPL

2017-07-28 Thread Philipp Tomsich
This change introduces TPL variants of the REGMAP and SYSCON config options (i.e. TPL_REGMAP and TPL_SYSCON in analogy to SPL_REGMAP and SPL_SYSCON) in preparation of a finer-grained feature selection for building feature-rich TPL variants. Signed-off-by: Philipp Tomsich Reviewed-by: Simon Glass

[U-Boot] [PATCH v3 06/66] spl: adapts SYS_MALLOC_F_LEN for TPL

2017-07-28 Thread Philipp Tomsich
The (upstream) changes to break up SYS_MALLOC_F_LEN for the full U-Boot and the SPL stage, break TPL (if simple malloc is enabled in TPL). This adds support for a TPL-variant of SYS_MALLOC_F_LEN: - adds TPL_SYS_MALLOC_F_LEN - rewrites a test for CONFIG_SPL_SYS_MALLOC_F_LEN to access CONFIG_VAL(S

[U-Boot] [PATCH v3 01/66] spl: add a 'return to bootrom' boot method

2017-07-28 Thread Philipp Tomsich
Some devices (e.g. the RK3368) have only limited SRAM, but provide support for loading the next boot stage after our SPL performs basic setup (e.g. DRAM). For target systems like these, we add a boot device BOOTROM that will invoke a board-specific hook to return to the bootrom (if supported). Si

[U-Boot] [PATCH v3 02/66] spl: configure 'return to bootrom' separately for SPL and TPL

2017-07-28 Thread Philipp Tomsich
On the RK3368, we want our TPL to use the 'return to bootrom' boot method (to have the bootrom load up the SPL stage) and then continue with different boot methods (MMC, SPI, etc.) from SPL. This adds the config option needed to control the availabily of the 'return to bootrom' boot-method separat

[U-Boot] [PATCH v3 03/66] rockchip: back-to-bootrom: add 'back-to-bootrom' support for AArch64

2017-07-28 Thread Philipp Tomsich
The back-to-bootrom support for Rockchip is equivalent to an (assembly) implementation of setjmp/longjmp (i.e. it saves the stack-pointer, link-register and callee-saved registers). Up until now, this had only been implemented for AArch32 (i.e. ARMv7 or older), which puts the new ARMv8 devices (whi

  1   2   3   >