Patrice Chotard [Tue, 18 Jul 2017 15:37:24 +0000 (17:37 +0200)]
ram: stm32: migrate fmc defines in driver file
Migrate all FMC defines from arch/arm/include/asm/arch-stm32f7/fmc.h
to drivers/ram/stm32_sdram.c
This will avoid to add an additionnal arch-stm32xx/fmc.h file when
a new stm32 family soc will be introduced.
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Vikas Manocha <vikas.manocha@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Patrice Chotard [Tue, 18 Jul 2017 07:29:10 +0000 (09:29 +0200)]
clk: stm32f7: remove clock_get()
All drivers which was using clock_get() are now using
clk_get_rate() from clock framework, now it's safe to
remove clock_get().
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
Patrice Chotard [Tue, 18 Jul 2017 07:29:09 +0000 (09:29 +0200)]
spi: stm32_qspi: add clk_get_rate() support
Replace proprietary clock_get() by clk_get_rate()
The stm32_qspi is now "generic" and can be used
by other STM32 SoCs.
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
Patrice Chotard [Tue, 18 Jul 2017 07:29:08 +0000 (09:29 +0200)]
serial: stm32x7: add clk_get_rate() support
Replace proprietary clock_get() by clk_get_rate()
The stm32x7 serial driver is now "generic" and can be used
by other STM32 SoCs.
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
Patrice Chotard [Tue, 18 Jul 2017 07:29:07 +0000 (09:29 +0200)]
serial: stm32x7: migrate serial struct to driver
This allow to remove include/dm/platform_data/serial_stm32x7.h
which was included in the past by stm32x7 driver and by
stm32f746-disco.c board file.
Since patch
42bf5e7c27 "serial: stm32f7: add device tree support"
this file is no more needed in board file.
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
Patrice Chotard [Tue, 18 Jul 2017 07:29:06 +0000 (09:29 +0200)]
clk: stm32f7: cleanup clocks unused definitions
clean the code by removing unused enums, structs and
defines related to clocks
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
Patrice Chotard [Tue, 18 Jul 2017 07:29:05 +0000 (09:29 +0200)]
clk: stm32f7: add clock .get_rate() callback
Add clock framework .get_rate callback.
This step will allow to convert all drivers which was using
proprietary clock_get() to use clock framework .get_rate().
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
Patrice Chotard [Tue, 18 Jul 2017 07:29:04 +0000 (09:29 +0200)]
clk: stm32f7: get RCC base address from DT
Retrieve RCC base address from DT, this will prepare
the ground for future STM32 SoCs support.
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
Patrice Chotard [Tue, 18 Jul 2017 07:29:03 +0000 (09:29 +0200)]
clk: stm32f7: add static for configure_clocks()
Also remove its declaration from stm32.h which
is no more needed.
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
Patrice Chotard [Tue, 18 Jul 2017 07:29:02 +0000 (09:29 +0200)]
ARM: DTS: stm32: align DT clock declaration with kernel
Use the same clocks macro than the one used by kernel DT.
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
Srinivas, Madan [Mon, 17 Jul 2017 18:02:02 +0000 (13:02 -0500)]
arm: mach-keystone: Fixes issue with return values in inline assembly
The inline assembly functions in mon.c assume that the caller will
check for the return value in r0 according to regular ARM calling
conventions.
However, this assumption breaks down if the compiler inlines the
functions. The caller is then under no obligation to use r0 for the
result.
To fix this disconnect, we must explicitly move the return value
from the smc/bl call to the variable that the function returns.
Signed-off-by: Madan Srinivas <madans@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Madan Srinivas [Mon, 17 Jul 2017 18:01:36 +0000 (13:01 -0500)]
configs: ti: armv7: Fixes bug in fit_loadaddr for ramfs boot
The load address of ramdisk, rdaddr is 0x88080000 and fit_loadaddr
is defined as 0x88000000. This leaves only 512Kbytes for the
fit image. When the FIT images are larger than this, it will
overwite the ramdisk and cause the boot to fail.
For eg, The K2 HS fit images are a few MB and end up overwriting
the ramdsk. This patch moves the fit_loadaddr to 0x87000000,
leaving a 16MB window for the fit image. This memory can be
reclaimed once the kernel starts running.
Signed-off-by: Madan Srinivas <madans@ti.com>
Madan Srinivas [Mon, 17 Jul 2017 17:59:15 +0000 (12:59 -0500)]
arm: mach-keystone: Updates mon_install for K2G HS
On early K2 devices (eg. K2HK) the secure ROM code does not support
loading secure code to firewall protected memory, before decrypting,
authenticating and executing it.
To load the boot monitor on these devices, it is necessary to first
authenticate and run a copy loop from non-secure memory that copies
the boot monitor behind firewall protected memory, before decrypting
and executing it.
On K2G, the secure ROM does not allow secure code executing from
unprotected memory. Further, ROM first copies the signed and encrypted
image into firewall protected memory, then decrypts, authenticates
and executes it.
As a result of this, we cannot use the copy loop for K2G. The
mon_install has to be modified to pass the address the signed and
encrypted secure boot monitor image to the authentication API.
For backward compatibility with other K2 devices and K2G GP,
the mon_install API still supports a single argument. In this case
the second argument is set to 0 by u-boot and is ignored by ROM
Signed-off-by: Thanh Tran <thanh-tran@ti.com>
Signed-off-by: Madan Srinivas <madans@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Andrew F. Davis [Mon, 17 Jul 2017 17:59:14 +0000 (12:59 -0500)]
configs: k2x_evm: Reorder default boot command
We first split the CONFIG_BOOTCOMMAND into its components to improve
readability. We then make the following order changes:
- Run findfdt first so the fdt name can be used in envboot like OMAP
- Install the boot monitor before running the PMMC so we can make any
needed secure changes before PMMC, do this on both HS and non-HS
- Move set_name_pmmc to just before get_pmmc_${boot}
Signed-off-by: Andrew F. Davis <afd@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Madan Srinivas [Mon, 17 Jul 2017 17:59:13 +0000 (12:59 -0500)]
configs: k2x_evm: Adds environment variables for secure devices
Updates the default u-boot environment variables to support secure
boot. On secure devices, a secure boot monitor (sec-bm) needs to
be installed by u-boot.
Signed-off-by: Madan Srinivas <madans@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Andrew F. Davis [Mon, 17 Jul 2017 17:59:12 +0000 (12:59 -0500)]
configs: k2x_evm: Adds FIT loading environment variables
Updates the default u-boot environment variables to support FIT image
loading.
Signed-off-by: Andrew F. Davis <afd@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Lokesh Vutla [Sun, 16 Jul 2017 14:29:19 +0000 (19:59 +0530)]
board: ti: x15: Add support for beagle_X15 revC
BeagleBoard X15 revC board is similar to X15 revB1 except
with a SR2.0 where revB1 uses a SR1.1. Add board detection
support for revC.
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Lokesh Vutla [Sun, 16 Jul 2017 14:29:18 +0000 (19:59 +0530)]
board: ti: am57xx: Fix detection of board version
board_is*("rev", board_ti_get_rev()) uses strncmp() for
revison detection and assumes it is success if return value
is <= 0. This will fail in case of multiple versions, as
revb will be true for board_is_*revb() and board_is_*reva().
Fix it by looking for exact match of the string.
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Beniamino Galvani [Sun, 9 Jul 2017 22:30:05 +0000 (00:30 +0200)]
odroid-c2: enable GPIO
GPIOs are now supported on Meson GXBB, enable driver and command in
the config.
Signed-off-by: Beniamino Galvani <b.galvani@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Beniamino Galvani [Sun, 9 Jul 2017 22:30:04 +0000 (00:30 +0200)]
pinctrl: meson: add GPIO support
This commit adds GPIO support to the Amlogic Meson pin controller
driver, based on code from Linux kernel.
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Beniamino Galvani <b.galvani@gmail.com>
Beniamino Galvani [Sun, 9 Jul 2017 22:30:03 +0000 (00:30 +0200)]
arm: dts: meson: import dts files from Linux 4.12
Import Amlogic Meson DTS files from Linux kernel version 4.12
Signed-off-by: Beniamino Galvani <b.galvani@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:48 +0000 (21:19 -0600)]
Convert CONFIG_ENV_IS_IN_ONENAND to Kconfig
This converts the following to Kconfig:
CONFIG_ENV_IS_IN_ONENAND
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:47 +0000 (21:19 -0600)]
Convert CONFIG_ENV_IS_IN_FAT to Kconfig
This converts the following to Kconfig:
CONFIG_ENV_IS_IN_FAT
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:46 +0000 (21:19 -0600)]
Convert CONFIG_ENV_IS_IN_REMOTE to Kconfig
This converts the following to Kconfig:
CONFIG_ENV_IS_IN_REMOTE
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:45 +0000 (21:19 -0600)]
Convert CONFIG_ENV_IS_IN_SPI_FLASH to Kconfig
This converts the following to Kconfig:
CONFIG_ENV_IS_IN_SPI_FLASH
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:44 +0000 (21:19 -0600)]
Convert CONFIG_ENV_IS_IN_DATAFLASH to Kconfig
This converts the following to Kconfig:
CONFIG_ENV_IS_IN_DATAFLASH
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:43 +0000 (21:19 -0600)]
Convert CONFIG_ENV_IS_IN_EEPROM to Kconfig
This converts the following to Kconfig:
CONFIG_ENV_IS_IN_EEPROM
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:42 +0000 (21:19 -0600)]
Convert CONFIG_ENV_IS_IN_NVRAM to Kconfig
This converts the following to Kconfig:
CONFIG_ENV_IS_IN_NVRAM
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:41 +0000 (21:19 -0600)]
Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
This converts the following to Kconfig:
CONFIG_ENV_IS_IN_FLASH
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:40 +0000 (21:19 -0600)]
env: Move help from README to Kconfig
The CONFIG_ENV_IS_IN_... options which have already been converted to
Kconfig only have a small amount of help. Move the rest of it over from
the README.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 24 Jul 2017 03:19:39 +0000 (21:19 -0600)]
Convert CONFIG_ENV_IS_IN_MMC/NAND/UBI and NOWHERE to Kconfig
This converts the following to Kconfig:
CONFIG_ENV_IS_IN_MMC
CONFIG_ENV_IS_IN_NAND
CONFIG_ENV_IS_IN_UBI
CONFIG_ENV_IS_NOWHERE
In fact this already exists for sunxi as a 'choice' config. However not
all the choices are available in Kconfig yet so we cannot use that. It
would lead to more than one option being set.
In addition, one purpose of this series is to allow the environment to be
stored in more than one place. So the existing choice is converted to a
normal config allowing each option to be set independently.
There are not many opportunities for Kconfig updates to reduce the size of
this patch. This was tested with
./tools/moveconfig.py -i CONFIG_ENV_IS_IN_MMC
And then manual updates. This is because for CHAIN_OF_TRUST boards they
can only have ENV_IS_NOWHERE set, so we enforce that via Kconfig logic
now.
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Tue, 25 Jul 2017 01:10:06 +0000 (21:10 -0400)]
configs: Resync with savedefconfig
Rsync all defconfig files using moveconfig.py
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Sat, 22 Jul 2017 22:36:16 +0000 (18:36 -0400)]
configs: Migrate RBTREE, LZO, CMD_MTDPARTS, CMD_UBI and CMD_UBIFS
The above CONFIG options are in Kconfig, and now have correct depends and
inter-dependencies. Migrate these to configs/ from include/configs/. In the
case of CMD_UBIFS also change it to be a default y if CMD_UBI.
Signed-off-by: Tom Rini <trini@konsulko.com>
Karl Beldan [Wed, 12 Jul 2017 16:11:47 +0000 (16:11 +0000)]
cmd: Kconfig: Fix CMD_UBIFS dependencies
Remove the ARCH_SUNXI and RBTREE dependencies.
CMD_UBIFS already gets RBTREE from CMD_UBI (from MTD_UBI), and should
the first become independant from the latter, there would likely be a
dependency on MTD_UBI anyway.
Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
Cc: Jagan Teki <jagan@openedev.com>
Signed-off-by: Karl Beldan <karl.beldan-ext@sagemcom.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Karl Beldan [Wed, 12 Jul 2017 16:11:46 +0000 (16:11 +0000)]
cmd: Kconfig: Make CMD_UBI select CMD_MTDPARTS
Many configs still define CMD_MTDPARTS in their non-Kconfig but
CMD_MTDPARTS has now moved to Kconfig.
Signed-off-by: Karl Beldan <karl.beldan-ext@sagemcom.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Karl Beldan [Wed, 12 Jul 2017 16:11:45 +0000 (16:11 +0000)]
ubi: Kconfig: Make MTD_UBI select MTD_PARTITIONS
This missing dependency has probably remained under the radar because
MTD_PARTITIONS is still whitelisted.
Signed-off-by: Karl Beldan <karl.beldan-ext@sagemcom.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Karl Beldan [Wed, 12 Jul 2017 16:11:44 +0000 (16:11 +0000)]
cmd: Kconfig: Fix a dependency of CMD_MTDPARTS
Remove the ARCH_SUNXI dependency.
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: Jagan Teki <jagan@openedev.com>
Signed-off-by: Karl Beldan <karl.beldan-ext@sagemcom.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Karl Beldan [Wed, 12 Jul 2017 16:11:43 +0000 (16:11 +0000)]
ubi: Kconfig: Fix MTD_UBI selection dependency
Remove the ARCH_SUNXI dependency on selection of RBTREE.
Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: Jagan Teki <jagan@openedev.com>
Signed-off-by: Karl Beldan <karl.beldan-ext@sagemcom.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Tom Rini [Sun, 23 Jul 2017 13:25:07 +0000 (09:25 -0400)]
xilinx-ppc.h: Drop
With PowerPC 4xx support removed, we have removed xilinx-ppc support as
well, remove this file now.
Fixes
98f705c9cefd ("powerpc: remove 4xx support")
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Stefan Roese [Fri, 14 Jul 2017 15:25:54 +0000 (17:25 +0200)]
serial: ns16550: Add RX interrupt buffer support
Pasting longer lines into the U-Boot console prompt sometimes leads to
characters missing. One problem here is the small 16-byte FIFO of the
legacy NS16550 UART, e.g. on x86 platforms.
This patch now introduces a Kconfig option to enable RX interrupt
buffer support for NS16550 style UARTs. With this option enabled, I was
able paste really long lines into the U-Boot console, without any
characters missing.
Signed-off-by: Stefan Roese <sr@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
[trini: Guard ns16550_serial_remove with
CONFIG_IS_ENABLED(SERIAL_PRESENT) to match struct assignment]
Signed-off-by: Tom Rini <trini@konsulko.com>
Adam Ford [Fri, 14 Jul 2017 13:53:20 +0000 (08:53 -0500)]
arm: omap3: Detect boot mode very early
Fixes
4bd754d8abef ("arm: omap: Detect boot mode very early") where
the intent was to store the boot params information in a known
location and pass it to SPL very early. Unfortunately it didn't
account for OMAP3 boards.
This patch adds adds this functionality back into OMAP3 boards.
Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Adam Ford <aford173@gmail.com>
Christophe Leroy [Thu, 13 Jul 2017 13:10:10 +0000 (15:10 +0200)]
powerpc: Remove 8260 remainders
commit
2eb48ff7a210d ("powerpc, 8260: remove support for mpc8260")
removed support for 8260 CPU.
This patch remove some remainders.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:10:08 +0000 (15:10 +0200)]
powerpc, 8xx: fix missing function declarations.
Add missing .h and add missing declarations in .h
Declare local functions as static. Make interrupt_init_cpu function
signatures consistent with how decrementer_count is declared.
Based on warnings reported by 'make C=2'
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
[trini: drop cpu_init_f as 8xx/83xx are different from the rest, rework
interrupt_init_cpu/decrementer_count]
Signed-off-by: Tom Rini <trini@konsulko.com>
Christophe Leroy [Thu, 13 Jul 2017 13:10:06 +0000 (15:10 +0200)]
powerpc: move get_pvr() and get_svr() into C
Avoid unnecessary assembly functions when they can easily be written
in C.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:10:04 +0000 (15:10 +0200)]
powerpc, 8xx: move cache helper into C
Avoid unnecessary assembly functions when they can easily be written
in C.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:10:02 +0000 (15:10 +0200)]
powerpc, 8xx: move get_immr() into C
Avoid unnecessary assembly functions when they can easily be written
in C.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:10:00 +0000 (15:10 +0200)]
powerpc, 8xx: Move cache function into C files
Avoid unnecessary assembly functions when they can easily be written
in C.
Also remove dc_read() as it is nowhere referenced
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:09:58 +0000 (15:09 +0200)]
powerpc, 8xx: Simplifying check_CPU()
All complex case have been removed and we now only support
MPC866 and MPC885 families.
So check_CPU() can be made a lot simpler.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:09:54 +0000 (15:09 +0200)]
powerpc: Remove unneccessary #ifdefs in reginfo
reginfo command is calling mpc8xx_reginfo(), mpc85xx_reginfo()
or mpc86xx_reginfo() based on CONFIG_ symbol.
As those 3 functions can't me defined at the same time, let's
rename them print_reginfo() to avoid the #ifdefs
The name is kept generic as it is not at all dependent on
powerpc arch and any other arch could want to also print
such information.
In addition, as the Makefile compiles cmd/reginfo.c only when
CONFIG_CMD_REGINFO is set, there is no need to enclose the U_BOOT_CMD
definition inside a #ifdef CONFIG_CMD_REGINFO
Lets all remove the #ifdefs around the U_BOOT_CMD as this
file is only compiled when CONFIG_CMD_REGINFO is defined
Finally, this is a PowerPC-only command, disable it on a number of
non-PowerPC platforms.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Tom Rini <trini@konsulko.com>
Christophe Leroy [Thu, 13 Jul 2017 13:09:52 +0000 (15:09 +0200)]
powerpc: move set_msr() and get_msr() into .h
set_msr() and get_msr() are defined and used twice.
This patch moves them into ppc.h
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:09:50 +0000 (15:09 +0200)]
power, timer: reset TBL before TBU
In order to avoid TBU increment due to TBL reaching its max
and wrapping, reset TBL before resetting TBU
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:09:48 +0000 (15:09 +0200)]
powerpc, timer: Does 8xx specific actions in 8xx cpu_init
The actions inside #ifdef CONFIG_8xx in arch/powerpc/lib/time.c
can be performed before, in a 8xx dedicated function.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:09:46 +0000 (15:09 +0200)]
powerpc: get rid of addr_probe()
This function has never been used, at least since the beginning
of the git repository
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Christophe Leroy [Thu, 13 Jul 2017 13:09:44 +0000 (15:09 +0200)]
powerpc, 8xx: Simplify brgclk calculation and remove get_brgclk()
divider is calculated based on SCCR_DFBRG, with:
SCCR_DFBRG 00 => divider 1 = 1 << 0
SCCR_DFBRG 01 => divider 4 = 1 << 2
SCCR_DFBRG 10 => divider 16 = 1 << 4
SCCR_DFBRG 11 => divider 64 = 1 << 6
This can be easily converted to a single shift operation:
divider = 1 << (SCCR_DFBRG * 2)
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Holger Brunck [Thu, 13 Jul 2017 09:15:41 +0000 (11:15 +0200)]
km/ivm: allow to set locally administred MAC addresses
It is possible to flag MAC addresses as locally administred. In this
case they don't need to be unique. This is only allowed for interfaces
which have no connection to the outside. For the TEGR1 board we use
this feature.
Cc: Heiko Schocher <hs@denx.de>
Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Holger Brunck [Thu, 13 Jul 2017 09:15:40 +0000 (11:15 +0200)]
km/ivm: always set ethaddr after reading IVM
If we rebrand the IVM and ethaddr was set previously we need to change
ethaddr. Otherwise we end up with a wrong MAC adress for the ethernet
interface.
Cc: Heiko Schocher <hs@denx.de>
Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Simon Glass [Mon, 10 Jul 2017 20:47:47 +0000 (14:47 -0600)]
RFC: moveconfig: Use toolchains from buildman
It is annoying to have to set up and maintain two sets of toolchains, one
for buildman and one for moveconfig.
Adjust moveconfig to make use to buildman's toolchains. This should make
things easier.
One missing feature is the ability to specify the toolchain on the command
line with a special environment variable, e.g. CROSS_COMPILE_ARM. I'm not
sure if that is useful, but if it is it could be implemented in buildman.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Simon Glass [Mon, 10 Jul 2017 20:47:46 +0000 (14:47 -0600)]
moveconfig: Tidy up imply flag parsing
Add an option to specify 'all' to enable all flags. Also print an error
if an unrecognised flag is used. At present it just prints usage
information which is not very helpful.
Signed-off-by: Simon Glass <sjg@chromium.org>
Andrew F. Davis [Mon, 10 Jul 2017 19:45:54 +0000 (14:45 -0500)]
board: ti: am43xx: Add FDT fixup for HS devices
Disable RNG and add TEE to FDT used on HS devices.
Signed-off-by: Andrew F. Davis <afd@ti.com>
Andrew F. Davis [Mon, 10 Jul 2017 19:45:53 +0000 (14:45 -0500)]
board: ti: am43xx: Add TEE loading and firewall setup
Add support for loading a TEE and setting up firewalled regions to
AM43xx HS boards.
Signed-off-by: Andrew F. Davis <afd@ti.com>
Andrew F. Davis [Mon, 10 Jul 2017 19:45:52 +0000 (14:45 -0500)]
arm: mach-omap2: am33xx: Add FDT fixup suport for AM33xx/AM43xx boards
Similar to what is done with OMAP5 class boards we need to
perform fixups common to this SoC class, add support for this here
and add HS fixups.
Signed-off-by: Andrew F. Davis <afd@ti.com>
Andrew F. Davis [Mon, 10 Jul 2017 19:45:51 +0000 (14:45 -0500)]
arm: mach-omap2: fdt-common: Add OP-TEE node when firmware node is defined
If a firmware node is already present in the FDT we will fail to create
one and so fail to add our OP-TEE node, make this fixup first check for
a firmware node and then only try to add one if it is not found.
Signed-off-by: Andrew F. Davis <afd@ti.com>
Andrew F. Davis [Mon, 10 Jul 2017 19:45:50 +0000 (14:45 -0500)]
arm: mach-omap2: Factor out common FDT fixup suport
Some of the fixups currently done for OMAP5 class boards are common to
other OMAP family devices, move these to fdt-common.c.
Signed-off-by: Andrew F. Davis <afd@ti.com>
Andrew F. Davis [Mon, 10 Jul 2017 19:45:49 +0000 (14:45 -0500)]
arm: mach-omap2: Move omap5/sec-fxns.c into sec-common.c
TEE loading and firewall setup are common to all omap2 devices, move
these function out of omap5 and into mach-omap2. This allows us
to use these functions from other omap class devices.
Signed-off-by: Andrew F. Davis <afd@ti.com>
Philipp Tomsich [Wed, 5 Jul 2017 15:30:40 +0000 (17:30 +0200)]
Makefile: add dependencies to regenerate u-boot.cfg when lost
When running a 'make clean' or carelessly removing u-boot.cfg, all
future make invocations (until autoconf is regenerated) will print
an error for a missing u-boot.cfg due to missing rules and dependencies.
This commit adds (i) an explicit rule dependency from all (which will
invokes the configuration checker) to cfg, and (b) adds a rule to
invoke scripts/Makefile.autoconf to regenerate u-boot.cfg.
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Emmanuel Vadot [Sun, 25 Jun 2017 07:43:33 +0000 (09:43 +0200)]
dtc: mkimage: Add the possibility to specify DTC
FreeBSD recently switch to it's BSDL dtc. While it support most of the
features of the GPL one it still lacks the incbin directive.
Add the possibility to specify which dtc we want to use for compiling dts
and generating fit image.
Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com>
Acked-by: Simon Glass <sjg@chromium.org>
xypron.glpk@gmx.de [Fri, 9 Jun 2017 20:13:59 +0000 (22:13 +0200)]
meson-gx: reserved memory regions
The Odroid C2 has two GiB of memory with two reserved regions.
reg = <0x0 0x0 0x0 0x1000000>;
reg = <0x0 0x10000000 0x0 0x200000>;
Patch
bfcef28ae4cf (arm: add initial support for Amlogic Meson and
ODROID-C2) provided function dram_init_banksize to reserve the
first 16 MiB of RAM for firmware in function dram_init_banksize
in arch/arm/mach-meson/board.c and defined
CONFIG_NR_DRAM_BANKS = 1.
With this patch dram_init_banksize is changed to additionally
reserve the 2MiB region for the ARM Trusted Firmware (BL31).
CONFIG_NR_DRAM_BANKS is set to 2.
Cc: Andreas Färber <afaerber@suse.de>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Fiach Antaw [Wed, 25 Jan 2017 08:53:12 +0000 (18:53 +1000)]
env: Switch env_nand, env_mmc and env_ubi to env_import_redund
The env_nand, env_mmc and env_ubi implementations all implement
redundancy using an identical serial-number scheme. This commit
migrates them to use the implementation in env_common, which is
functionally identical.
Signed-off-by: Fiach Antaw <fiach.antaw@uqconnect.edu.au>
Reviewed-by: Tom Rini <trini@konsulko.com>
Fiach Antaw [Wed, 25 Jan 2017 08:53:11 +0000 (18:53 +1000)]
env: Add generic redundant environment implementation
All current environments that implement redundancy use almost
identical implementations. This patch implements the env_nand
implementation as a function in env_common, and updates the
env_export function to export an env_nand-style 'flags' field by
default.
Signed-off-by: Fiach Antaw <fiach.antaw@uqconnect.edu.au>
Reviewed-by: Tom Rini <trini@konsulko.com>
Tom Rini [Mon, 29 Aug 2016 13:57:01 +0000 (09:57 -0400)]
tests: test_dfu.py: Add example udev rule for host_usb_dev_node
If one does not already have a rule to create a custom device node when
a given device enumerates it can be useful to have udev create a
bus path based node to the entry in /dev/bus/usb that was just
enumerated. Given that DFU itself does not require a /dev entry it is a
good idea to provide a rule that will generate one.
Signed-off-by: Tom Rini <trini@konsulko.com>
Michael Heimpold [Mon, 20 May 2013 19:34:42 +0000 (21:34 +0200)]
tools/fw_env: use fsync to ensure that data is physically stored
Closing a file descriptor does not guarantee that the data has been
successfully saved to disk, as the kernel might defer the write.
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Masahiro Yamada [Thu, 22 Jun 2017 08:58:09 +0000 (17:58 +0900)]
mmc: cadence: use fdt32_t for DT property value to fix sparse warning
DTB is encoded in big endian. When we retrieve property values,
we need to use fdt32_to_cpu (aka be32_to_cpu) for endian conversion.
This is a bit error-prone, but sparse is useful to detect endian
mismatch.
We need to use (fdt32_t *) instead of (u32 *) for a pointer of a
property value. Otherwise sparse warns "cast to restricted __be32".
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Masahiro Yamada [Thu, 22 Jun 2017 07:52:36 +0000 (16:52 +0900)]
mmc: add static to spl_mmc_get_device_index()
This function is only used in common/spl/spl_mmc.c[
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Keerthy [Tue, 13 Jun 2017 04:23:56 +0000 (09:53 +0530)]
power: regulator: lp87565: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:55 +0000 (09:53 +0530)]
power: regulator: lp873x: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:54 +0000 (09:53 +0530)]
power: regulator: s5m8767: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:53 +0000 (09:53 +0530)]
power: sandbox: fixed: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:52 +0000 (09:53 +0530)]
power: regulator: rk8xx: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:51 +0000 (09:53 +0530)]
power: regulator: tps65090: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:50 +0000 (09:53 +0530)]
power: regulator: pfuze100: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:49 +0000 (09:53 +0530)]
power: regulator: palmas: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:48 +0000 (09:53 +0530)]
power: regulator: max77686: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:47 +0000 (09:53 +0530)]
power: regulator: act8846: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:46 +0000 (09:53 +0530)]
power: regulator: fixed: get_enable should return integer
get_enable should be able to return error values. Hence change
the return type to integer.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Keerthy [Tue, 13 Jun 2017 04:23:45 +0000 (09:53 +0530)]
regulator: Change get_enable return type to integer from bool
Change get_enable return type to int so errors can be returned.
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Kever Yang [Thu, 8 Jun 2017 01:20:04 +0000 (09:20 +0800)]
mmc: rpmb: update size format for write_counter
According to MMC spec, the write_counter is 4-byte length,
use 'int' instead of 'long' type for the 'long' is not 4-byte
in 64 bit CPU.
Signed-off-by: Jason Zhu <jason.zhu@rock-chips.com>
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Kever Yang [Thu, 8 Jun 2017 01:20:03 +0000 (09:20 +0800)]
mmc: use new hwpart API when CONFIG_BLK enabled
When CONFIG_BLK is enabled, the hwpart id is different with legacy
interface, update it to kame driver work with CONFIG_BLK.
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Marek Vasut [Tue, 18 Jul 2017 16:05:05 +0000 (18:05 +0200)]
ARM: Mark AE boards orphan
I no longer have any of these boards, mark boards orphan.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Tom Rini <trini@konsulko.com>
Tom Rini [Tue, 18 Jul 2017 12:42:48 +0000 (08:42 -0400)]
Merge branch 'master' of git://denx.de/git/u-boot-imx
Fabio Estevam [Thu, 13 Jul 2017 18:22:50 +0000 (15:22 -0300)]
mx6cuboxi: Move CONFIG_CMD_SATA to Kconfig
Move CONFIG_CMD_SATA option to Kconfig to fix the following build
error:
In file included from include/configs/mx6cuboxi.h:137:0,
from include/config.h:7,
from include/common.h:21,
from common/env_common.c:11:
include/config_distro_bootcmd.h:161:2: error: expected '}' before 'BOOT_TARGET_DEVICES_references_SATA_without_CONFIG_SATA'
BOOT_TARGET_DEVICES_references_SATA_without_CONFIG_SATA
Reported-by: Stefano Babic <sbabic@denx.de>
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Fabio Estevam [Wed, 12 Jul 2017 21:31:45 +0000 (18:31 -0300)]
mx6sabreauto: Make Ethernet functional again
Since commit
ce412b79e7255770 ("drivers: net: phy: atheros: add separate
config for AR8031") Ethernet does not work on mx6sabreauto.
This commit correctly assigns ar8031_config() as the configuration
function for AR8031 in the same way as done in the Linux kernel.
However, on mx6sabreauto design we need some additional configurations,
such as enabling the 125 MHz AR8031 output and setting the TX clock
delay that need to be done in the board file.
This is the equivalent fix from commit
4b6035da482c ("mx6sabresd: Make
Ethernet functional again").
Reported-by: Miquel RAYNAL <miquel.raynal@free-electrons.com>
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Tom Rini [Wed, 12 Jul 2017 12:16:41 +0000 (08:16 -0400)]
Merge git://www.denx.de/git/u-boot-marvell
Patrick Bruenn [Tue, 11 Jul 2017 09:23:21 +0000 (11:23 +0200)]
imx: cx9020: try pxe boot, if no vmlinuz on mmc
If no vmlinuz is found on mmc, try to boot from pxe.
Signed-off-by: Patrick Bruenn <p.bruenn@beckhoff.com>
Patrick Bruenn [Tue, 11 Jul 2017 09:23:20 +0000 (11:23 +0200)]
imx: cx9020: use fdt_addr_r and ramdisk_addr_r
Replace fdtaddr and rdaddr variable names with u-boot standard names
fdt_addr_r and ramdisk_addr_r.
This will make the use of pxe boot more easy.
Signed-off-by: Patrick Bruenn <p.bruenn@beckhoff.com>
Diego Dorta [Fri, 7 Jul 2017 18:38:34 +0000 (15:38 -0300)]
mx6sabreauto: Add Falcon mode support
Add support for Falcon mode and explain in the README the steps to
boot the kernel directly without loading the full U-Boot.
Signed-off-by: Diego Dorta <diego.dorta@nxp.com>
Acked-by: Fabio Estevam <fabio.estevam@nxp.com>
Fabio Estevam [Tue, 11 Jul 2017 17:24:29 +0000 (14:24 -0300)]
warp: Use PARTUUID to specify the rootfs location
warp can run different kernel versions, such as NXP 4.1 or
mainline.
Currently the rootfs location is passed via mmcblk number and the
problem with this approach is that the mmcblk number for the eMMC
changes depending on the kernel version.
In order to avoid such issue, use UUID method to specify the rootfs
location.
Succesfully tested booting a NXP 4.1 and also a mainline 4.12 kernel.
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Fabio Berton [Mon, 10 Jul 2017 20:04:11 +0000 (17:04 -0300)]
embestmx6boards: Use PARTUUID to specify the rootfs location
Currently the rootfs location is passed via mmcblk number and the
problem with this approach is that the mmcblk number for the eMMC
changes depending on the kernel version.
In order to avoid such issue, use UUID method to specify the rootfs
location.
Also add CONFIG_BOOTCOMMAND to run finduuid function and distro_bootcmd.
This change was made based on U-Boot commit:
-
ca4f338e2efece5196eb2178e5f7d07be828da6e
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Fabio Berton [Mon, 10 Jul 2017 20:04:10 +0000 (17:04 -0300)]
mx6cuboxi: Use PARTUUID to specify the rootfs location
Currently the rootfs location is passed via mmcblk number and the
problem with this approach is that the mmcblk number for the eMMC
changes depending on the kernel version.
In order to avoid such issue, use UUID method to specify the rootfs
location.
This change was made based on U-Boot commit:
-
ca4f338e2efece5196eb2178e5f7d07be828da6e
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Fabio Berton [Mon, 10 Jul 2017 20:04:09 +0000 (17:04 -0300)]
wandboard: Use PARTUUID to specify the rootfs location
Currently the rootfs location is passed via mmcblk number and the
problem with this approach is that the mmcblk number for the eMMC
changes depending on the kernel version.
In order to avoid such issue, use UUID method to specify the rootfs
location.
This change was made based on U-Boot commit:
-
ca4f338e2efece5196eb2178e5f7d07be828da6e
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Fabio Estevam [Mon, 10 Jul 2017 18:59:12 +0000 (15:59 -0300)]
mx6sabre: Use PARTUUID to specify the rootfs location
mx6sabre boards can run different kernel versions, such as NXP 4.1 or
mainline.
Currently the rootfs location is passed via mmcblk number and the
problem with this approach is that the mmcblk number for the eMMC
changes depending on the kernel version.
In order to avoid such issue, use UUID method to specify the rootfs
location.
Succesfully tested booting a NXP 4.1 and also a mainline kernel on a
mx6qsabresd and mx6dlsabreauto.
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>