oweals/u-boot.git
5 years agocolibri_imx6: migrate usb to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:15 +0000 (18:42 +0100)]
colibri_imx6: migrate usb to using driver model

Migrate USB to using driver model.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: migrate mmc to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:14 +0000 (18:42 +0100)]
colibri_imx6: migrate mmc to using driver model

Migrate MMC to using driver model.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: migrate pmic and regulator to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:13 +0000 (18:42 +0100)]
colibri_imx6: migrate pmic and regulator to using driver model

Migrate PMIC and regulator to using driver model.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: migrate i2c to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:12 +0000 (18:42 +0100)]
colibri_imx6: migrate i2c to using driver model

Migrate I2C to using driver model.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: enable pin control driver
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:11 +0000 (18:42 +0100)]
colibri_imx6: enable pin control driver

Enable pin control driver as required for further driver model
migration.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: clean-up and migrate gpios to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:10 +0000 (18:42 +0100)]
colibri_imx6: clean-up and migrate gpios to using driver model

Migrate GPIOs to using driver model, properly request backlight, MMC/SD
card detect and USB power enable GPIOs and also enable SION bit in pin
muxing for auxiliary, backlight and USB power enable GPIOs.

While at it also update copyright year, clean-up/re-order includes, add
some comments clarifying ifdef scope and do some white-space clean-up.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: migrate to using device tree
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:09 +0000 (18:42 +0100)]
colibri_imx6: migrate to using device tree

Migrate to using device tree required for further driver model
integration.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: remove obsolete USB_GADGET_MASS_STORAGE configuration
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:08 +0000 (18:42 +0100)]
colibri_imx6: remove obsolete USB_GADGET_MASS_STORAGE configuration

Remove obsolete USB_GADGET_MASS_STORAGE configuration.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: enable fit image, gpt, imx thermal, efi loader support
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:07 +0000 (18:42 +0100)]
colibri_imx6: enable fit image, gpt, imx thermal, efi loader support

Enbale FIT image, GPT command, i.MX thermal and EFI loader support.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: move console in env from header file to defconfig
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:06 +0000 (18:42 +0100)]
colibri_imx6: move console in env from header file to defconfig

Move console in env from header file to defconfig.

While at it also update copyright year.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: use distro defaults
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:05 +0000 (18:42 +0100)]
colibri_imx6: use distro defaults

Use distro defaults and minimise default configuration again using
savedefconfig.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agocolibri_imx6: get rid of obsolete nospl configurations
Marcel Ziswiler [Fri, 8 Feb 2019 17:42:04 +0000 (18:42 +0100)]
colibri_imx6: get rid of obsolete nospl configurations

Now with SPL long since being in place even for recovery using SDP
finally get rid of those nospl configurations.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoboard: apalis_imx6: check for and report ecc errors in fuses
Gerard Salvatella [Fri, 8 Feb 2019 17:12:26 +0000 (18:12 +0100)]
board: apalis_imx6: check for and report ecc errors in fuses

The PMIC on Apalis iMX6 may have ECC errors in fuses that will prevent
correct settings. Up to one bit error per fuse bank may be reported and
corrected by the ECC logic. Two bit errors can only be reported.

Signed-off-by: Gerard Salvatella <gerard.salvatella@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: switch to zimage
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:25 +0000 (18:12 +0100)]
apalis_imx6: switch to zimage

Switch to the generic compressed Kernel image type (zImage) instead of
the U-Boot specific uImage format.

While at it also fix device tree naming for MMC DFU.

Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: use SDP if USB serial downloader has been used
Stefan Agner [Fri, 8 Feb 2019 17:12:24 +0000 (18:12 +0100)]
apalis_imx6: use SDP if USB serial downloader has been used

In case USB serial downloader has been used to load U-Boot start the
serial download protocol (SDP) emulation. This allows to download
complete images such as Toradex Easy Installer over USB SDP as well.
This code uses the boot ROM provided boot information to reliably
detect USB serial downloader.

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoconfigs: apalis_imx6: Use ext4 file system by default
Sanchayan Maity [Fri, 8 Feb 2019 17:12:23 +0000 (18:12 +0100)]
configs: apalis_imx6: Use ext4 file system by default

Use ext4 file system by default.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: revert fuse value set in mfgr_fuse
Max Krummenacher [Fri, 8 Feb 2019 17:12:22 +0000 (18:12 +0100)]
apalis_imx6: revert fuse value set in mfgr_fuse

We have two commands to change the bootmode fuses:
mfgr_fuse which set fuse 0/5 and 0/6
and
updt_fuse which burns bit 4 of 0/5.

Before BSP 2.6 we fused in mfgr_fuse 0x5062, which boots
from the user partition of the eMMC.
To workaround certain hangs we moved to fastboot mode and
using the first bootpartition of the eMMC requiring a fuse
value of 0x5072 which could be achieved by the then added
updt_fuse command. At the same time the mfgr_fuse command
was changed to also fuse 0x5072, revert that second change
so that one can fuse both values, one with just mfgr_fuse
and the later with mfgr_fuse;updt_fuse.

Note that the mfgr_fuse command is only needed at module
production time, a customer might need to use updt_fuse
when upgrading an older module to be compatible with a
newer image. The command is integrated into the image
update scripts.

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: disable ri and dcd irq in uarts
Max Krummenacher [Fri, 8 Feb 2019 17:12:21 +0000 (18:12 +0100)]
apalis_imx6: disable ri and dcd irq in uarts

If the UART is used in DTE mode the RI and DCD bits in UCR3 become
irq enable bits. Both are set to enabled after reset and both likely
are pending.

Disable the bits also on UARTs not used in the boot loader to prevent
an interrupt storm when Linux enables the UART interrupts.

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: pf0100: reorder and cleanup message printing
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:20 +0000 (18:12 +0100)]
apalis_imx6: pf0100: reorder and cleanup message printing

Keep debug code at the end of the function.
Use a one line informational message for the PMIC only.

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: unify sd/mmc drive strength with linux kernel settings
Max Krummenacher [Fri, 8 Feb 2019 17:12:19 +0000 (18:12 +0100)]
apalis_imx6: unify sd/mmc drive strength with linux kernel settings

In the Linux device tree we use 40Ohm drive strength. So use the same
value in U-Boot.

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: use both sd/mmc interfaces for setsdupdate
Max Krummenacher [Fri, 8 Feb 2019 17:12:18 +0000 (18:12 +0100)]
apalis_imx6: use both sd/mmc interfaces for setsdupdate

During porting to 2016.11 the check of a SD (mmc2) interface
was dropped, this was unintended.

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: add distroboot support
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:17 +0000 (18:12 +0100)]
apalis_imx6: add distroboot support

Add support for distro boot. This is especially helpful for external
devices. There is a global boot command which scans a predefined
list of boot targets:
  run distro_bootcmd

As well as direct boot commands such as:
  run bootcmd_mmc1
  run bootcmd_mmc2
  run bootcmd_usb
  run bootcmd_dhcp
  ...

Refer to doc/README.distro for details.

While at it, remove the CONFIG_DRIVE_TYPES define which has not
been used and was meant to be used for multi device boot support
which is now provided by distroboot.

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: drop CONFIG_OF_SYSTEM_SETUP
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:16 +0000 (18:12 +0100)]
apalis_imx6: drop CONFIG_OF_SYSTEM_SETUP

This doesn't do anything anymore, probably never did.

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: migrate usb to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:15 +0000 (18:12 +0100)]
apalis_imx6: migrate usb to using driver model

Migrate USB to using driver model.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: migrate mmc and sata to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:14 +0000 (18:12 +0100)]
apalis_imx6: migrate mmc and sata to using driver model

Migrate MMC and SATA to using driver model.

While at it also enable SCSI driver model.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: migrate pmic and regulator to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:13 +0000 (18:12 +0100)]
apalis_imx6: migrate pmic and regulator to using driver model

Migrate PMIC and regulator to using driver model.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: migrate i2c to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:12 +0000 (18:12 +0100)]
apalis_imx6: migrate i2c to using driver model

Migrate I2C to using driver model.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: enable pin control driver
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:11 +0000 (18:12 +0100)]
apalis_imx6: enable pin control driver

Enable pin control driver as required for further driver model
migration.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: clean-up and migrate gpios to using driver model
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:10 +0000 (18:12 +0100)]
apalis_imx6: clean-up and migrate gpios to using driver model

Migrate GPIOs to using driver model, properly request backlight,
Ethernet PHY reset, MMC/SD card detect and USB power GPIOs and also
enable SION bit in pin muxing for Apalis, backlight, eMMC reset,
Ethernet PHY reset and USB power enable GPIOs.

While at it also update copyright year, clean-up/re-order includes,
add some comments clarifying ifdef scope and do some White-space
clean-up.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: migrate to using device tree
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:09 +0000 (18:12 +0100)]
apalis_imx6: migrate to using device tree

Migrate to using device tree required for further driver model
integration.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: remove obsolete USB_GADGET_MASS_STORAGE configuration
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:08 +0000 (18:12 +0100)]
apalis_imx6: remove obsolete USB_GADGET_MASS_STORAGE configuration

Remove obsolete USB_GADGET_MASS_STORAGE configuration.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Reviewed-by: Igor Opaniuk <igor.opaniuk@toradex.com>
5 years agoapalis_imx6: enable fit image, gpt, imx thermal, efi loader support
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:07 +0000 (18:12 +0100)]
apalis_imx6: enable fit image, gpt, imx thermal, efi loader support

Enbale FIT image, GPT command, i.MX thermal and EFI loader support.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: move console in env from header file to defconfig
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:06 +0000 (18:12 +0100)]
apalis_imx6: move console in env from header file to defconfig

Move console in env from header file to defconfig.

While at it also update copyright year and remove spurious comments and
new lines.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: use distro defaults
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:05 +0000 (18:12 +0100)]
apalis_imx6: use distro defaults

Use distro defaults and minimise default configuration again using
savedefconfig.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agoapalis_imx6: get rid of obsolete nospl configurations
Marcel Ziswiler [Fri, 8 Feb 2019 17:12:04 +0000 (18:12 +0100)]
apalis_imx6: get rid of obsolete nospl configurations

Now with SPL long since being in place even for recovery using SDP
finally get rid of those nospl configurations.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agomx53ppd: fix unsupported set command
Ian Ray [Thu, 31 Jan 2019 14:21:22 +0000 (16:21 +0200)]
mx53ppd: fix unsupported set command

Fix the NFS commands which used `set' to instead use `setenv'.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agomx53ppd: bring dock out of reset at boot
Ian Ray [Thu, 31 Jan 2019 14:21:21 +0000 (16:21 +0200)]
mx53ppd: bring dock out of reset at boot

Configure GPIO BUFFERED_HOST_CONTROLLED_RESET_TO_DOCKING_CONNECTOR_N to
bring the dock out of reset at boot.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoboard: ge: bx50v3: Network booting of fitImage with nfs rootfs
Joonas Aijala [Thu, 31 Jan 2019 14:21:20 +0000 (16:21 +0200)]
board: ge: bx50v3: Network booting of fitImage with nfs rootfs

New boot command introduced to automate network booting.

Signed-off-by: Joonas Aijala <joonas.aijala@ge.com>
Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoboard: ge: bx50v3: Specific ARP timeout removed
Joonas Aijala [Thu, 31 Jan 2019 14:21:19 +0000 (16:21 +0200)]
board: ge: bx50v3: Specific ARP timeout removed

Specific ARP timeout sometimes causes ARP timeout during nfs loading
of the fitImage.

Signed-off-by: Joonas Aijala <joonas.aijala@ge.com>
Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoboard: ge: store version information in fdt
Ian Ray [Thu, 31 Jan 2019 14:21:18 +0000 (16:21 +0200)]
board: ge: store version information in fdt

Add board-specific FDT function to store U-Boot version in device tree.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoboard: ge: ppd: Enable CONFIG_DM_MMC
Ian Ray [Thu, 31 Jan 2019 14:21:17 +0000 (16:21 +0200)]
board: ge: ppd: Enable CONFIG_DM_MMC

Use MMC device model, and remove USDHC pin configuration code since the
pinctrl driver is used.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoarm: imx: Add esdhc3/4 nodes to imx53.dtsi
Ian Ray [Thu, 31 Jan 2019 14:21:16 +0000 (16:21 +0200)]
arm: imx: Add esdhc3/4 nodes to imx53.dtsi

These nodes are required by mx53ppd when built with CONFIG_DM_MMC=y.
They are copied from Linux 4.20.5.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoboard: ge: ppd: Enable CONFIG_DM
Ian Ray [Thu, 31 Jan 2019 14:21:15 +0000 (16:21 +0200)]
board: ge: ppd: Enable CONFIG_DM

Add simplified, generalised, ppd device tree and enable CONFIG_DM.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoboard: ge: bx50v3: Enable CONFIG_DM_SPI, CONFIG_DM_SPI_FLASH
Ian Ray [Thu, 31 Jan 2019 14:21:14 +0000 (16:21 +0200)]
board: ge: bx50v3: Enable CONFIG_DM_SPI, CONFIG_DM_SPI_FLASH

Use SPI flash device model, and remove SPI pin configuration code since
the pinctrl driver is used.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoboard: ge: bx50v3: Enable CONFIG_DM_GPIO
Ian Ray [Thu, 31 Jan 2019 14:21:13 +0000 (16:21 +0200)]
board: ge: bx50v3: Enable CONFIG_DM_GPIO

Enable CONFIG_DM_GPIO as a pre-requisite for enabling CONFIG_DM_SPI.

Add explicit gpio_requests.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoboard: ge: bx50v3: Enable CONFIG_DM_MMC
Ian Ray [Thu, 31 Jan 2019 14:21:12 +0000 (16:21 +0200)]
board: ge: bx50v3: Enable CONFIG_DM_MMC

Use MMC device model, and remove USDHC pin configuration code since the
pinctrl driver is used.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agoboard: ge: bx50v3: Enable CONFIG_DM
Ian Ray [Thu, 31 Jan 2019 14:21:11 +0000 (16:21 +0200)]
board: ge: bx50v3: Enable CONFIG_DM

Add simplified, generalised, bx50v3 device tree and enable CONFIG_DM.

Signed-off-by: Ian Ray <ian.ray@ge.com>
5 years agopcm052: bk4: Add board_phy_config() for BK4 to setup ksz8081 phy
Lukasz Majewski [Wed, 13 Feb 2019 21:46:59 +0000 (22:46 +0100)]
pcm052: bk4: Add board_phy_config() for BK4 to setup ksz8081 phy

BK4 requires setup of 50MHz reference clock for its KSZ8081 PHY devices.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
5 years agopcm052: mac: Provide board specific imx_get_mac_from_fuse() function
Lukasz Majewski [Wed, 13 Feb 2019 21:46:58 +0000 (22:46 +0100)]
pcm052: mac: Provide board specific imx_get_mac_from_fuse() function

This commit introduces the board specific function to read fused mac
address.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agopcm052: board: Add code to setup LED default states
Lukasz Majewski [Wed, 13 Feb 2019 21:46:57 +0000 (22:46 +0100)]
pcm052: board: Add code to setup LED default states

As one has moved to DM based LEDs, this code is required to setup the
default state.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agopcm052: bk4: sdcard: Add support for SD card booting/recovery
Lukasz Majewski [Wed, 13 Feb 2019 21:46:56 +0000 (22:46 +0100)]
pcm052: bk4: sdcard: Add support for SD card booting/recovery

This code allows reusing the default u-boot as in the late board init, the
default envs are restored and proper recovery scripts executed.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agoconfig: bk4: Update u-boot envs to support NOR memories initial setup
Lukasz Majewski [Wed, 13 Feb 2019 21:46:55 +0000 (22:46 +0100)]
config: bk4: Update u-boot envs to support NOR memories initial setup

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agoconfig: bk4: Update u-boot script to support recovery via SD card
Lukasz Majewski [Wed, 13 Feb 2019 21:46:54 +0000 (22:46 +0100)]
config: bk4: Update u-boot script to support recovery via SD card

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agopcm052: board: Remove in-board setup code (it is now replaced by DM setup)
Lukasz Majewski [Wed, 13 Feb 2019 21:46:53 +0000 (22:46 +0100)]
pcm052: board: Remove in-board setup code (it is now replaced by DM setup)

This commit cleans up the pcm052.c file to remove dead code after moving to
DTS and DM.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agoconfig: bk4: Update include/configs/bk4r1.h file
Lukasz Majewski [Wed, 13 Feb 2019 21:46:52 +0000 (22:46 +0100)]
config: bk4: Update include/configs/bk4r1.h file

The BK4's config file has changed since its initial posting to main line.
This commit reflects those changes.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agoconfig: pcm052: Use SZ_X{MK} from linux/sizes.h for include/configs/pcm052.h
Lukasz Majewski [Wed, 13 Feb 2019 21:46:51 +0000 (22:46 +0100)]
config: pcm052: Use SZ_X{MK} from linux/sizes.h for include/configs/pcm052.h

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agodefconfig: bk4/pcm052: Update bk4r1|pcm052_defconfig to support DM/DT
Lukasz Majewski [Wed, 13 Feb 2019 21:46:50 +0000 (22:46 +0100)]
defconfig: bk4/pcm052: Update bk4r1|pcm052_defconfig to support DM/DT

This commit updates BK4's and PCM052's config files to support as much
as possible device tree and model in u-boot.

Moreover, remove CONFIG_* from pcm052.h (as those are now in
bk4|pcm052_defconfig)

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agoARM: DTS: Provide vf610-bk4r1-u-boot.dtsi for U-Boot specific properties
Lukasz Majewski [Wed, 13 Feb 2019 21:46:49 +0000 (22:46 +0100)]
ARM: DTS: Provide vf610-bk4r1-u-boot.dtsi for U-Boot specific properties

This commit brings a separate file in which the U-Boot specific
properties (like 'dm-pre-reloc') are provided.

Such approach allows easy sync with upstream Linux kernel in the
future.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
5 years agoARM: DTS: Update pcm052 based dts files (bk4r1/pcm052)
Lukasz Majewski [Wed, 13 Feb 2019 21:46:48 +0000 (22:46 +0100)]
ARM: DTS: Update pcm052 based dts files (bk4r1/pcm052)

This commit provides update and renames the bk4r1.dts to vf610-bk4r1.dts
file with more on SoC HW description.
The pcm052.dts has been renamed to vf610-pcm052.dts as well.

Moreover, a new vf610-pcm052.drsi file has been introduced
to reuse the common code between devices based on Phytec's
pcm052 modules.
Ported from Linux kernel - v4.20 (tag)

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agopcm052: board: cosmetic: Add copyright notice to pcm052.c
Lukasz Majewski [Wed, 13 Feb 2019 21:46:47 +0000 (22:46 +0100)]
pcm052: board: cosmetic: Add copyright notice to pcm052.c

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agoARM: DTS: vybrid: Update vf.dtsi file to descibe more vf610 hardware
Lukasz Majewski [Wed, 13 Feb 2019 21:46:46 +0000 (22:46 +0100)]
ARM: DTS: vybrid: Update vf.dtsi file to descibe more vf610 hardware

This patch allows moving vf610 based boards to a device tree and model.
Ported from Linux kernel - v4.20 (tag)

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Stefan Agner <stefan.agner@toradex.com>
Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agopcm052: board: vybrid: Update the board name for BK4 device
Lukasz Majewski [Wed, 13 Feb 2019 21:46:45 +0000 (22:46 +0100)]
pcm052: board: vybrid: Update the board name for BK4 device

This commit provides distinction between PCM052 and BK4.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agopcm052: board: Remove "m4go" command as it is superseded by "bootaux"
Lukasz Majewski [Wed, 13 Feb 2019 21:46:44 +0000 (22:46 +0100)]
pcm052: board: Remove "m4go" command as it is superseded by "bootaux"

The "m4go" provides exactly the same functionality as the IMX generic
"bootaux" command. Remove it to not duplicate the code.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agovybrid: Define the imx_get_mac_from_fuse() as a __weak function
Lukasz Majewski [Wed, 13 Feb 2019 21:46:43 +0000 (22:46 +0100)]
vybrid: Define the imx_get_mac_from_fuse() as a __weak function

The proposed way of reading fused MAC in the imx_get_mac_from_fuse() may
be different for other boards.

This commit defines the imx_get_mac_from_fuse() as a weak function to allow
board file overriding it with customized function.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
5 years agopcm052: board: Do not enable I2C2 code in the board file
Lukasz Majewski [Wed, 13 Feb 2019 21:46:42 +0000 (22:46 +0100)]
pcm052: board: Do not enable I2C2 code in the board file

As the I2C2 clock is now enabled in the generic clock code, we can remove
this code from a board file.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agovybrid: clock: Provide enable_i2c_clk() function for Vybrid
Lukasz Majewski [Wed, 13 Feb 2019 21:46:41 +0000 (22:46 +0100)]
vybrid: clock: Provide enable_i2c_clk() function for Vybrid

Provide function to enable I2C clocks for vf610 - in the generic code.
This function overrides the default weak function implementation (which
only returns 1).

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
5 years agovybrid: ddr: Extend vf610-pinfunc.h with DDR pads definitions
Lukasz Majewski [Wed, 13 Feb 2019 21:46:40 +0000 (22:46 +0100)]
vybrid: ddr: Extend vf610-pinfunc.h with DDR pads definitions

This patch provides definitions necessary for VF610 DDR pad configurations.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Stefan Agner <stefan.agner@toradex.com>
5 years agonet: Kconfig: FEC: Add dependency on VF610
Lukasz Majewski [Wed, 13 Feb 2019 21:46:39 +0000 (22:46 +0100)]
net: Kconfig: FEC: Add dependency on VF610

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Stefan Agner <stefan.agner@toradex.com>
5 years agonet: FEC: Add compatible for vybrid (vf610) to reuse fec_mxc.c driver
Lukasz Majewski [Wed, 13 Feb 2019 21:46:38 +0000 (22:46 +0100)]
net: FEC: Add compatible for vybrid (vf610) to reuse fec_mxc.c driver

The NXP's FEC driver can be reused on vf610 device (with DM).

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Stefan Agner <stefan.agner@toradex.com>
5 years agoMerge tag 'u-boot-stm32-20190412' of https://github.com/patrickdelaunay/u-boot
Tom Rini [Fri, 12 Apr 2019 19:43:19 +0000 (15:43 -0400)]
Merge tag 'u-boot-stm32-20190412' of https://github.com/patrickdelaunay/u-boot

stm32 patches for v2019.07-rc1
- Add trusted boot with TF-A for stm32mp1
- stm32mp1 dts files sync'ed with Linux version
- add STM32MP1 Discovery boards (DK1 and DK2)
- add STMFX gpio expander driver
- misc improvement for stm3mp1 supports
- rename stpmu1 to stpmic1 (official name)
- stm32_qspi: move to exec_op (spi nor driver for stm32 mpu and mcu)
- add STM32 FMC2 NAND flash controller driver

5 years agoMerge branch 'master' of git://git.denx.de/u-boot-sunxi
Tom Rini [Fri, 12 Apr 2019 19:43:08 +0000 (15:43 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-sunxi

5 years agoMerge branch 'master' of git://git.denx.de/u-boot-i2c
Tom Rini [Fri, 12 Apr 2019 19:43:04 +0000 (15:43 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c

5 years agoMerge git://git.denx.de/u-boot-marvell
Tom Rini [Fri, 12 Apr 2019 16:34:44 +0000 (12:34 -0400)]
Merge git://git.denx.de/u-boot-marvell

- Misc dts files sync'ed with Linux version (Chris)
- Orion watchdog fix (Chris)
- kwbimage changed to also support Marvell bin_hdr binary (Chris)
- Add DM support to enable CONFIG_BLK for sata_mv (Stefan)
- Enable BLK on multiple platforms (Stefan)
- Misc minor fixes to AXP theadorable board (Stefan)
- Correct logic for DM_SCSI + unconverted drivers check (stefan)
- Misc changes to kirkwood to enable DM_USB here (Chris)
- Change ahci_mvebu to enable usage on A38x (Baruch)
- Update the kirkwood entry in git-mailrc (Baruch)
- Misc minor improvements (turris, documentation) (Baruch)
- Enhance sata_mv to support Kirkwood as well (Michael)
- Add wdt command (Michael)
- Add Marvell integrated CPUs (MSYS) support with DB-XC3-24G4XG
  board support (Chris)

5 years agoMerge branch '2019-04-11-ti-master-imports'
Tom Rini [Fri, 12 Apr 2019 16:22:43 +0000 (12:22 -0400)]
Merge branch '2019-04-11-ti-master-imports'

- Improve Keystone 3 SoC support (DMA, TI SCI)
- Improve Keystone 2 SoC support (PHY fixes on various platforms)
- Improve am335x families (new platforms, more boot mode options in SPL
  via DM).
- General DaVinci, OMAP5 fixes.

5 years agomtd: rawnand: stm32_fmc2: add STM32 FMC2 NAND flash controller driver
Christophe Kerello [Fri, 5 Apr 2019 09:41:50 +0000 (11:41 +0200)]
mtd: rawnand: stm32_fmc2: add STM32 FMC2 NAND flash controller driver

The driver adds the support for the STMicroelectronics FMC2 NAND
Controller found on STM32MP SOCs.

This patch adds the polling mode, a basic mode that do not need
any DMA channels.

Only NAND_ECC_HW mode is actually supported.
The driver supports a maximum 8k page size.
The following ECC strength and step size are currently supported:
 - nand-ecc-strength = <8>, nand-ecc-step-size = <512> (BCH8)
 - nand-ecc-strength = <4>, nand-ecc-step-size = <512> (BCH4)
 - nand-ecc-strength = <1>, nand-ecc-step-size = <512> (Extended ECC
   based on Hamming)

This patch has been tested on Micron MT29F8G08ABACAH4.

Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
5 years agodt-bindings: mtd: stm32_fmc2: add STM32 FMC2 NAND controller documentation
Christophe Kerello [Fri, 5 Apr 2019 09:41:49 +0000 (11:41 +0200)]
dt-bindings: mtd: stm32_fmc2: add STM32 FMC2 NAND controller documentation

This patch adds the documentation of the device tree bindings for the STM32
FMC2 NAND controller.

Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
Reviewed-by: Patrick DELAUNAY <patrick.delaunay@st.com>
5 years agospi: stm32_qspi: move to exec_op
Christophe Kerello [Fri, 5 Apr 2019 09:46:50 +0000 (11:46 +0200)]
spi: stm32_qspi: move to exec_op

We are facing issues in the driver since SPI NOR framework has moved
on SPI MEM framework, and SPI NAND framework is not running properly
with the current driver.

To be able to solve issues met on SPI NOR Flashes and to be able to
support SPI NAND Flashes, the driver has been reworked. We are now using
exec_op ops instead of using xfer ops.

Thanks to this rework, the driver has been successfully tested with:
 - mx66l51235l SPI NOR Flash on stm32f746 SOC
 - n25q128a SPI NOR Flash on stm32f769 SOC
 - mx66l51235l SPI NOR Flash on stm32mp1 SOC
 - mt29f2g01abagd SPI NAND Flash on stm32mp1 SOC

Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
Tested-by: Patrick DELAUNAY <patrick.delaunay@st.com>
Reviewed-by: Patrick DELAUNAY <patrick.delaunay@st.com>
5 years agoARM: dts: Add STMFX gpio expander support for stm32mp157c-ev1
Patrick Delaunay [Fri, 12 Apr 2019 12:38:28 +0000 (14:38 +0200)]
ARM: dts: Add STMFX gpio expander support for stm32mp157c-ev1

Adds alias to set the pincontrol seq id.
For STMFX gpio expander, force sequence number after
the last bank (GPIOZ) to avoid conflict between STM32MP and STMFX
gpio bank sequence number.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
5 years agoboard: stm32mp1: Force pinctrl driver probe in board_init()
Patrice Chotard [Mon, 11 Mar 2019 10:13:17 +0000 (11:13 +0100)]
board: stm32mp1: Force pinctrl driver probe in board_init()

In order to insure that hog GPIOs are configured early during
the boot process, force all pinctrl driver probing in board_init().

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
5 years agoconfig: stm32mp15: Enable STMFX support
Patrick Delaunay [Mon, 11 Mar 2019 10:13:16 +0000 (11:13 +0100)]
config: stm32mp15: Enable STMFX support

Activate PINCTRL_STMFX and needed part for generic pincontrol
PINCTRL_FULL, PINCONF. Increase pre-reloc memory for MALLOC
(needed for each DM pinconfig node).

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
5 years agopinctrl: Add STMFX GPIO expander Pinctrl/GPIO driver
Patrick Delaunay [Mon, 11 Mar 2019 10:13:15 +0000 (11:13 +0100)]
pinctrl: Add STMFX GPIO expander Pinctrl/GPIO driver

This patch adds pinctrl/GPIO driver for STMicroelectronics
Multi-Function eXpander (STMFX) GPIO expander.
STMFX is an I2C slave controller, offering up to 24 GPIOs.
The driver relies on UCLASS_PINCTRL and UCLASS_GPIO.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
5 years agoARM: dts: stm32mp1: Add adc nodes
Patrice Chotard [Tue, 12 Feb 2019 15:50:41 +0000 (16:50 +0100)]
ARM: dts: stm32mp1: Add adc nodes

Add adc related nodes. These nodes are used to detect the
current supplied by USB type-C power in port on DK1 and DK2
boards.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
5 years agoBoard: stm32mp1: Add supply current boot information
Patrice Chotard [Tue, 12 Feb 2019 15:50:40 +0000 (16:50 +0100)]
Board: stm32mp1: Add supply current boot information

For DK1/DK2 boards, check if power supply provides enough current
to allow the board to boot correctly.
ADC@0 channel 18 and 19 are connected to USB type-C CC1 and CC2
signals. The table below shows the behavior for different range of
CC1 or CC2:

  range       | power supply | red led |          console message
  (Volts)     |   (Amps)     | blinks  |
--------------|--------------|---------|-----------------------------------
[2.10 - 1.23[ |     3        |   NO    |    NO
[1.23 - 0.66[ |     1.5      | 3 times | WARNING 1.5A power supply detected
[0.66 - 0]    |     0.5      | 2 times | WARNING 500mA power supply detected

If detected current is < 3A, red led is kept ON after blinking.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
5 years agoboard: stm32mp1: Update README file
Patrice Chotard [Tue, 12 Feb 2019 15:50:39 +0000 (16:50 +0100)]
board: stm32mp1: Update README file

Update README with DK1 and DK2 boards related informations

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
5 years agoARM: dts: stm32: Synchronize DT with kernel one
Patrice Chotard [Tue, 12 Feb 2019 15:50:38 +0000 (16:50 +0100)]
ARM: dts: stm32: Synchronize DT with kernel one

This patch synchronizes U-boot DT with kernel one
This is based on https://patchwork.kernel.org/cover/10797115/

This patch adds initial support of STM32MP157 discovery boards:
  - Add support of stm32mp157a discovery1 board (part number: STM32MP157A-DK1).
    This board embeds a STM32MP157a SOC with AC package (TFBGA361, 148 ios)
    and 512MB of DDR3. Several connections are available on this boards:
    4*USB2.0, 1*USB2.0 typeC, SDcard, RJ45, HDMI, Arduino connector, ...

  - Add support of stm32mp157c discovery2 board (part number: STM32MP157C-DK2).
    This board is a "super-set" of stm32mp157a-dk1. A display panel (otm8009a)
    and Murata wifi/BT combo is added.

Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
5 years agostpmic1: add NVM update support in fuse command
Patrick Delaunay [Mon, 4 Feb 2019 10:26:22 +0000 (11:26 +0100)]
stpmic1: add NVM update support in fuse command

Add functions to read/update the non volatile memory of STPMIC1
(8 bytes-register at 0xF8 address) and allow access
with fuse command (bank=1, word > 0xF8).

For example:

STM32MP> fuse read 1 0xf8 8
Reading bank 1:

Word 0x000000f8: 000000ee 00000092 000000c0 00000002
Word 0x000000fc: 000000f2 00000080 00000002 00000033

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostm32mp1: dts: activate psci-1.0
Patrick Delaunay [Mon, 4 Feb 2019 10:26:21 +0000 (11:26 +0100)]
stm32mp1: dts: activate psci-1.0

Updates the stm32mp157c devicetree to bind the U-Boot PSCI driver need for
power off command; TF-A for stm32mp15x supports PSCI 1.0.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostm32mp1: add command poweroff
Patrick Delaunay [Fri, 12 Apr 2019 09:55:46 +0000 (11:55 +0200)]
stm32mp1: add command poweroff

Activate the command poweroff by default for STM32MP1:
- with PCSI from TF-A for trusted boot
- with PMIC sysreset request for basic boot (SYSRESET_POWER)

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agopmic: stpmu1: add power switch off support
Patrick Delaunay [Mon, 4 Feb 2019 10:26:19 +0000 (11:26 +0100)]
pmic: stpmu1: add power switch off support

Add sysreset support, and support power switch off request,
needed by poweroff command.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostpmic1: update register names
Patrick Delaunay [Mon, 4 Feb 2019 10:26:18 +0000 (11:26 +0100)]
stpmic1: update register names

Alignment with  STPMIC1 datasheet
  s/MAIN_CONTROL_REG/MAIN_CR/g
  s/MASK_RESET_BUCK/BUCKS_MRST_CR/g
  s/MASK_RESET_LDOS/LDOS_MRST_CR/g
  s/BUCKX_CTRL_REG/BUCKX_MAIN_CR/g
  s/VREF_CTRL_REG/REFDDR_MAIN_CR/g
  s/LDOX_CTRL_REG/LDOX_MAIN_CR/g
  s/USB_CTRL_REG/BST_SW_CR/g
  s/STPMIC1_NVM_USER_STATUS_REG/STPMIC1_NVM_SR/g
  s/STPMIC1_NVM_USER_CONTROL_REG/STPMIC1_NVM_CR/g
and update all the associated defines.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agopower: rename stpmu1 to official name stpmic1
Patrick Delaunay [Mon, 4 Feb 2019 10:26:17 +0000 (11:26 +0100)]
power: rename stpmu1 to official name stpmic1

Alignment with kernel driver name & binding
introduced by https://patchwork.kernel.org/cover/10761943/
to use the final marketing name = STPMIC1.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
5 years agopower: stpmu1: rename files to stpmic1
Patrick Delaunay [Mon, 4 Feb 2019 10:26:16 +0000 (11:26 +0100)]
power: stpmu1: rename files to stpmic1

Prepare file modification for kernel alignment and
rename driver to stpmic1.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
5 years agoregulator: stpmu1: update buck1 range
Patrick Delaunay [Mon, 4 Feb 2019 10:26:15 +0000 (11:26 +0100)]
regulator: stpmu1: update buck1 range

SW impact for Rev 1.2 of STPMIC1 in U-Boot:
Buck converters output voltage change for Buck1
=> Vdd min 0,725 to max 1,5V instead of 0.6V to 1.35V
   (see STPMIC1 datasheet / chapter 5.3 Buck converters)

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostm32mp1: Replace OTP read by SHADOW read
Patrick Delaunay [Wed, 27 Feb 2019 16:01:29 +0000 (17:01 +0100)]
stm32mp1: Replace OTP read by SHADOW read

Replace STM32_BSEC_OTP() by STM32_BSEC_SHADOW() to
increase read performance.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostm32mp1: bsec: shadow all the upper OTP (no secure) during boot
Patrick Delaunay [Wed, 27 Feb 2019 16:01:28 +0000 (17:01 +0100)]
stm32mp1: bsec: shadow all the upper OTP (no secure) during boot

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostm32mp1: bsec: use device tree new compatible
Patrick Delaunay [Wed, 27 Feb 2019 16:01:27 +0000 (17:01 +0100)]
stm32mp1: bsec: use device tree new compatible

Update bsec driver to use the device tree provided by Kernel.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostm32mp1: basic boot: SPL enable access to GPIOZ bank
Patrick Delaunay [Wed, 27 Feb 2019 16:01:26 +0000 (17:01 +0100)]
stm32mp1: basic boot: SPL enable access to GPIOZ bank

SPL need to set GPIOZ_SECCFGR = 0 to enable access to GPIOZ bank
(open security).

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostm32mp1: align serial number on bootrom
Patrick Delaunay [Wed, 27 Feb 2019 16:01:25 +0000 (17:01 +0100)]
stm32mp1: align serial number on bootrom

Always use upper case for serial number.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostm32mp1: add syscfg initialization
Patrick Delaunay [Wed, 27 Feb 2019 16:01:24 +0000 (17:01 +0100)]
stm32mp1: add syscfg initialization

Initialize the system configuration for basic boot
- update interconnect setting
- disable pull-down for boot pin
- enable High Speed Low Voltage Pad mode for SPI, SDMMC, ETH, QSPI
- activate I/O compensation

Done by SSBL = TF-A for trusted boot

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
5 years agostm32mp1: add some syscon drivers for syscfg and etpzc
Patrick Delaunay [Wed, 27 Feb 2019 16:01:23 +0000 (17:01 +0100)]
stm32mp1: add some syscon drivers for syscfg and etpzc

Add SYSCON driver for syscfg and etpzc and reorder in alphabetics order

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>