oweals/u-boot.git
4 years agocolibri_imx7: add update_uboot wrapper
Igor Opaniuk [Mon, 9 Dec 2019 10:33:28 +0000 (12:33 +0200)]
colibri_imx7: add update_uboot wrapper

Add universal update_uboot wrapper that helps to update
U-Boot image on internal storage.

Usage example:
> tftpboot ${loadaddr} ${board_name}/u-boot-dtb.imx
> run update_uboot

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
4 years agoimx: cx9020: use distro boot
Steffen Dirkwinkel [Wed, 23 Oct 2019 05:40:43 +0000 (07:40 +0200)]
imx: cx9020: use distro boot

We switch from custom boot commands relying on uEnv.txt to distro boot.
This removes the automatic fpga bitstream loading in favor of loading
bitstreams via custom bootscripts (boot.scr) or after booting the
kernel.

Acked-by: Patrick Bruenn <p.bruenn@beckhoff.com>
Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
4 years agoimx: cx9020: enable vidconsole by default
Steffen Dirkwinkel [Wed, 23 Oct 2019 05:40:42 +0000 (07:40 +0200)]
imx: cx9020: enable vidconsole by default

Acked-by: Patrick Bruenn <p.bruenn@beckhoff.com>
Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
4 years agoimx: cx9020: migrate cx9020 to CONFIG_DM_USB
Steffen Dirkwinkel [Wed, 23 Oct 2019 05:40:41 +0000 (07:40 +0200)]
imx: cx9020: migrate cx9020 to CONFIG_DM_USB

Note: gpio7_8 was never used for usb power regulator so we remove it here

Acked-by: Patrick Bruenn <p.bruenn@beckhoff.com>
Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
4 years agoimx: cx9020: migrate cx9020 to CONFIG_DM_ETH
Steffen Dirkwinkel [Wed, 23 Oct 2019 05:40:40 +0000 (07:40 +0200)]
imx: cx9020: migrate cx9020 to CONFIG_DM_ETH

Acked-by: Patrick Bruenn <p.bruenn@beckhoff.com>
Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
4 years agoimx: sync with kernel device tree for Phycore SoM
Parthiban Nallathambi [Mon, 4 Nov 2019 18:50:07 +0000 (19:50 +0100)]
imx: sync with kernel device tree for Phycore SoM

Sync the Linux Kernel 5.4-rc6 device tree for Phytec Phycore
SoM and Segin board based on imx6UL and imx6ULL.

Changes includes Phytec naming convention for the devicetree files.

Signed-off-by: Parthiban Nallathambi <parthitce@gmail.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
4 years agomach-imx: bootaux: add dcache flushing before enabling M4
Igor Opaniuk [Thu, 28 Nov 2019 13:56:20 +0000 (15:56 +0200)]
mach-imx: bootaux: add dcache flushing before enabling M4

This patch fixes the issue with broken bootaux command,
when M4 binary is loaded and data cache isn't flushed
before M4 core is enabled.

Reproducing:
> tftpboot ${loadaddr} ${board_name}/hello_world.bin
> cp.b ${loadaddr} 0x7F8000 $filesize
> bootaux 0x7F8000

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
4 years agomach-imx: bootaux: print stack pointer and reset vector
Igor Opaniuk [Thu, 28 Nov 2019 13:56:19 +0000 (15:56 +0200)]
mach-imx: bootaux: print stack pointer and reset vector

1. Change information printed about loaded M4 binary, print the stack
pointer and reset vector addressed.
2. Add sanity check for the address provided as param.

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
4 years agopci: imx: Add iMX6SX compatible
Marek Vasut [Tue, 26 Nov 2019 08:33:29 +0000 (09:33 +0100)]
pci: imx: Add iMX6SX compatible

The driver works fine with iMX6SX, add the missing compatible string.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
4 years agoarm: imx6: cm_fx6: Enable DM SPI and SPI_FLASH, fix SPL build errors
Suniel Mahesh [Wed, 27 Nov 2019 10:47:48 +0000 (16:17 +0530)]
arm: imx6: cm_fx6: Enable DM SPI and SPI_FLASH, fix SPL build errors

Enable driver model for SPI and SPI_FLASH to remove the following
compile warning on CM-FX6 SOM:
===================== WARNING ======================
This board does not use CONFIG_DM_SPI_FLASH. Please update
the board to use CONFIG_SPI_FLASH before the v2019.07 release.
====================================================

This change introduced SPL build error as shown:

In file included from include/common.h:47:0,
                 from drivers/mtd/spi/sf_probe.c:10:
drivers/mtd/spi/sf_probe.c: In function 'spi_flash_std_probe':
drivers/mtd/spi/sf_probe.c:149:54: error: dereferencing pointer to incomplete type 'struct dm_spi_slave_platdata'
scripts/Makefile.build:278: recipe for target 'spl/drivers/mtd/spi/sf_probe.o' failed
make[3]: *** [spl/drivers/mtd/spi/sf_probe.o] Error 1
scripts/Makefile.build:432: recipe for target 'spl/drivers/mtd/spi' failed
make[2]: *** [spl/drivers/mtd/spi] Error 2

Disabling DM for SPI support(SPI and SF) in SPL resolves the issue.
Target was compile tested, build was clean.

Signed-off-by: Suniel Mahesh <sunil.m@techveda.org>
4 years agoboard: cm_fx6: Enable CONFIG_DM_ETH
Suniel Mahesh [Wed, 20 Nov 2019 09:55:01 +0000 (15:25 +0530)]
board: cm_fx6: Enable CONFIG_DM_ETH

Enable CONFIG_DM_ETH to remove compile warning on CM-FX6
SOM based target:

===================== WARNING ======================
This board does not use CONFIG_DM_ETH (Driver Model
for Ethernet drivers). Please update the board to use
CONFIG_DM_ETH before the v2020.07 release.
====================================================

Signed-off-by: Suniel Mahesh <sunil.m@techveda.org>
4 years agoboard: cm_fx6: Enable DM support for video, fix build error
Suniel Mahesh [Wed, 20 Nov 2019 09:55:00 +0000 (15:25 +0530)]
board: cm_fx6: Enable DM support for video, fix build error

Enable driver model for Video to remove the following
compile warning on CM-FX6 SOM based target:

===================== WARNING ======================
This board does not use CONFIG_DM_VIDEO Please update
the board to use CONFIG_DM_VIDEO before the v2019.07 release.
====================================================

This change introduced build error as shown:

LD      u-boot
drivers/built-in.o: In function ipu_displays_init'
arm-linux-ld.bfd: BFD (GNU Binutils) 2.29.1 assertion fail elf32-arm.c:9509
Makefile:1621: recipe for target 'u-boot' failed
make: *** [u-boot] Error 1

The DM converted video driver calls ipu_displays_init
in its probe, which inturn calls relevant board_video_skip.
Defining ipu_displays_init in the board file fixes build error.
Target was compile tested, build was clean.

Signed-off-by: Suniel Mahesh <sunil.m@techveda.org>
4 years agoARM: mx6: ddr: Add support for iMX6SX
Marek Vasut [Tue, 26 Nov 2019 08:34:52 +0000 (09:34 +0100)]
ARM: mx6: ddr: Add support for iMX6SX

This patch adds support for iMX6SX MMDC into the DDR calibration
code. The only difference between MX6DQ and MX6SX is that the SX
has 2 SDQS registers, while the DQ has 8.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Eric Nelson <eric@nelint.com>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Eric Nelson <eric@nelint.com>
4 years agoARM: mx6: ddr: Configure all SDQS pullups using loop
Marek Vasut [Tue, 26 Nov 2019 08:34:51 +0000 (09:34 +0100)]
ARM: mx6: ddr: Configure all SDQS pullups using loop

Instead of explicitly setting up each SDQS register, use a loop.
No functional change.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Eric Nelson <eric@nelint.com>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Eric Nelson <eric@nelint.com>
4 years agoARM: mx6: ddr: Factor out SDQS configuration code
Marek Vasut [Tue, 26 Nov 2019 08:34:50 +0000 (09:34 +0100)]
ARM: mx6: ddr: Factor out SDQS configuration code

Pull out the code turning SDQS pullups on and off into a separate
function, since it is replicated in two places in the code and it
is the single place in the entire function which is SoC dependent.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Eric Nelson <eric@nelint.com>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Eric Nelson <eric@nelint.com>
4 years agoARM: mx6: ddr: Make debug prints work with tiny printf
Marek Vasut [Tue, 26 Nov 2019 08:34:49 +0000 (09:34 +0100)]
ARM: mx6: ddr: Make debug prints work with tiny printf

The %08X format returns just zeroes with tiny printf, which is
horribly confusing, especially when debugging DRAM calibration
problems. Change the format to %08x (with lowercase x), which
behaves correctly with either implementation of printf in SPL.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Eric Nelson <eric@nelint.com>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Eric Nelson <eric@nelint.com>
4 years agoARM: imx6: DHCOM i.MX6 PDK: Enable sysreset driver and wdt command
Claudius Heine [Fri, 29 Nov 2019 07:59:03 +0000 (08:59 +0100)]
ARM: imx6: DHCOM i.MX6 PDK: Enable sysreset driver and wdt command

The SPL does not have DM enabled and therefor still needs to use the
hardware watchdog interface provided by the imx-watchdog driver.

Fixes: broken reset command after f2929d11a639 ("watchdog: imx: Use
       immediate reset bits for expire_now")

Signed-off-by: Claudius Heine <ch@denx.de>
4 years agoARM: dts: dh-imx6: add u-boot specific wdt-reboot node
Claudius Heine [Fri, 29 Nov 2019 07:59:02 +0000 (08:59 +0100)]
ARM: dts: dh-imx6: add u-boot specific wdt-reboot node

The wdt-reboot node is needed for the sysreset_watchdog driver to
register a watchdog as a reset handler in case 'CONFIG_SYSRESET' is
enabled.

Signed-off-by: Claudius Heine <ch@denx.de>
4 years agomx6cuboxi: enable OF_CONTROL with DM_MMC and DM_USB
Baruch Siach [Sun, 10 Nov 2019 12:38:07 +0000 (14:38 +0200)]
mx6cuboxi: enable OF_CONTROL with DM_MMC and DM_USB

Make first step in DT/DM migration. Enable OF_CONTROL only for the main
U-Boot image for now.

Remove mmc_init_main() because board_mmc_init() is not called when
DM_MMC is enabled.

DM_MMC requires DM_GPIO for card-detect to work. That in turn makes gpio
request mandatory. Add code to request/free gpios in platform code.

MMC devices are now numbered according to DT. The SD card is 1, and eMMC
is 2. Account for that in board_mmc_get_env_dev(), BOOT_TARGET_DEVICES,
and has_emmc().

DM_MMC requires BLK. However, the (BLK && !DM_USB) combination disables
USB_STORAGE. Enable DM_USB to preserve USB functionality. Add also
DM_REGULATORS for the USB power controller. This allows us to drop
board_ehci_hcd_init() and setup_usb().

Runtime selection of DT is necessary because of the i.MX6QD vs i.MX6SDL
incompatibility. DT selection does not rely on GPIOs, since DM_GPIO
depends on DT. Instead, we take one "fully featured" DT of each variant.
That should be enough to boot from both SD card and eMMC.

Since we don't select the exact DT, override the generic
show_board_info() that shows the selected DT 'model' field.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
4 years agoarm: dts: hummingboard: add cubox/hummingboard DT (part 2 of 2)
Baruch Siach [Sun, 10 Nov 2019 12:38:06 +0000 (14:38 +0200)]
arm: dts: hummingboard: add cubox/hummingboard DT (part 2 of 2)

These DT files are copied from kernel v5.3 with no changes.

This is part 2 of 2 commits. Included are DT files for SOM rev 1.5, and
Hummingboard2 Gate/Edge.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
4 years agoarm: dts: hummingboard: add cubox/hummingboard DT (part 1 of 2)
Baruch Siach [Sun, 10 Nov 2019 12:38:05 +0000 (14:38 +0200)]
arm: dts: hummingboard: add cubox/hummingboard DT (part 1 of 2)

These DT files are copied from kernel v5.3 with no changes.

This is part 1 of 2 commits. Included are DT files for the original
Cubox-i and Hummingboard Base/Pro.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
4 years agodt-bindings: add imx-audmux macro definitions
Baruch Siach [Sun, 10 Nov 2019 12:38:04 +0000 (14:38 +0200)]
dt-bindings: add imx-audmux macro definitions

Import fsl-imx-audmux.h from Linux as of v5.4-rc6. The header is
unchanged since v4.18.

That would make it easier to import DT files that depend on imx-audmux
definitions from the kernel tree.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
4 years agoboard: ge: mx53ppd: use imx wdt
Robert Beckett [Tue, 12 Nov 2019 19:15:20 +0000 (19:15 +0000)]
board: ge: mx53ppd: use imx wdt

Enable DM imx WDT
Enable SYSRESET_WATCHDOG to maintain WDT based reset ability

Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoboard: ge: bx50v3: use imx wdt
Robert Beckett [Tue, 12 Nov 2019 19:15:19 +0000 (19:15 +0000)]
board: ge: bx50v3: use imx wdt

Enable DM imx WDT
Enable SYSRESET_WATCHDOG to maintain WDT based reset ability

Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoboard: ge: pass rtc_status via device tree
Ian Ray [Tue, 12 Nov 2019 19:15:18 +0000 (19:15 +0000)]
board: ge: pass rtc_status via device tree

Pass rtc_status via the device tree, instead of on kernel command line.
Additionally, the 2038 mitigation is reported, if applied successfully.

Signed-off-by: Ian Ray <ian.ray@ge.com>
Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoboard: ge: bx50v3: Enable DM for PCI and ethernet
Denis Zalevskiy [Tue, 12 Nov 2019 19:15:17 +0000 (19:15 +0000)]
board: ge: bx50v3: Enable DM for PCI and ethernet

DM for PCI pulls DM for ethernet that also needs other changes described
below to build u-boot and keep existing functionality - ability to update
MAC addresses of FEC ethernet adapter and I210 adapter connected to the
Marvell switch.

- fec_mxc driver with DM needs PHYLIB;

- configuration items are moved from ge_bx50v3.h to ge_bx50v3_defconfig;

- FEC is marked as eth0 because it is always present, so indices changed:
  I210 are still probed in the same order;

- board_eth_init() was used by legacy ethernet, setup for enet iomux and
  pcie is moved to the board_late_init();

- pci_init() is called from the board_late_init() to initiate PCI bus
  probing, so I210 devices are propagated to the device tree;

Signed-off-by: Denis Zalevskiy <denis.zalevskiy@ge.com>
[Describe PHY reset in device tree]
Signed-off-by: Ian Ray <ian.ray@ge.com>
Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoconfigs: ppd: DM for USB and regulators PPD
Denis Zalevskiy [Tue, 12 Nov 2019 19:15:16 +0000 (19:15 +0000)]
configs: ppd: DM for USB and regulators PPD

DM should be used for USB since 2019.07, it also requires DM for
regulators.

Signed-off-by: Denis Zalevskiy <denis.zalevskiy@ge.com>
Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoboard: ge: bx50v3: Fix message output to video console
Ian Ray [Tue, 12 Nov 2019 19:15:15 +0000 (19:15 +0000)]
board: ge: bx50v3: Fix message output to video console

Use vidconsole for output to the LCD, now that DM_VIDEO is used.  Write
white text on a black background, like before migrating to DM_VIDEO.

Signed-off-by: Ian Ray <ian.ray@ge.com>
Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoboard: ge: bx50v3: Fix run-time warning
Ian Ray [Tue, 12 Nov 2019 19:15:14 +0000 (19:15 +0000)]
board: ge: bx50v3: Fix run-time warning

Fix GPIO reservation warning on code paths that do not need LVDS power.

Signed-off-by: Ian Ray <ian.ray@ge.com>
Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoconfigs: bx50v3: Fix boot hang with video
Ian Ray [Tue, 12 Nov 2019 19:15:13 +0000 (19:15 +0000)]
configs: bx50v3: Fix boot hang with video

Fixes commit: 0b09f7b15052bb419e318e38da453be46e5a13e5, which converted
to DM_VIDEO, but requires more memory.

[Inspired by 9002e735e71754a90adbb9676c0ffb1964dbc288]

Signed-off-by: Ian Ray <ian.ray@ge.com>
Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoboard: ge: ppd: sync device tree from Linux
Robert Beckett [Tue, 12 Nov 2019 19:15:12 +0000 (19:15 +0000)]
board: ge: ppd: sync device tree from Linux

Copy device tree from linux for PPD.

Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoboard: ge: bx50v3: sync devicetrees from Linux
Robert Beckett [Tue, 12 Nov 2019 19:15:11 +0000 (19:15 +0000)]
board: ge: bx50v3: sync devicetrees from Linux

Copy device trees from linux, keeping them as separate files for
each board to ease future sync.

Update board code to use generic bx50v3 dt initially, then select
the specific dt based on board detection.

Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoimx: Add support for i.MX28 based XEA board
Lukasz Majewski [Sun, 8 Dec 2019 21:06:56 +0000 (22:06 +0100)]
imx: Add support for i.MX28 based XEA board

This patch introduces support for i.MX28 based XEA board.

This board supports DM/DTS in U-Boot proper as well as DM aware drivers
in SPL (u-boot.sb) by using OF_PLATDATA.
More detailed information regarding usage of it can be found in
./board/liebherr/xea/README file.

U-Boot SPL 2019.10-rc1-00233-g6aa549f05c (Aug 12 2019 - 09:23:36 +0200)
Trying to boot from MMC1
MMC0: Command 8 timeout (status 0xf0344020)
mmc_load_image_raw_sector: mmc block read error

U-Boot 2019.10-rc1-00233-g6aa549f05c (Aug 12 2019 - 09:23:36 +0200)

CPU:   Freescale i.MX28 rev1.2 at 454 MHz
BOOT:  SSP SPI #3, master, 3V3 NOR
Model: Liebherr (LWE) XEA i.MX28 Board
DRAM:  128 MiB
MMC:   MXS MMC: 0
Loading Environment from SPI Flash... SF: Detected n25q128a13 with page size 256 Bytes, erase size 64 KiB, total 16 MiB
OK
In:    serial
Out:   serial
Err:   serial
Net:
Warning: ethernet@800f0000 (eth0) using random MAC address - ce:e1:9e:46:f3:a2
eth0: ethernet@800f0000
Hit any key to stop autoboot:  0

Signed-off-by: Lukasz Majewski <lukma@denx.de>
4 years agoimx6: aristainetos: add support for rev C board
Heiko Schocher [Sun, 1 Dec 2019 10:23:32 +0000 (11:23 +0100)]
imx6: aristainetos: add support for rev C board

add support for revision C boards. This board has
no longer a NAND.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: add aristainetos 2b csl
Heiko Schocher [Sun, 1 Dec 2019 10:23:31 +0000 (11:23 +0100)]
imx6: aristainetos: add aristainetos 2b csl

add aristainetso board version CSL.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: readd aristainetos 2b board
Heiko Schocher [Sun, 1 Dec 2019 10:23:30 +0000 (11:23 +0100)]
imx6: aristainetos: readd aristainetos 2b board

readd aristainetos 2b board.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: enable HAB boot
Heiko Schocher [Sun, 1 Dec 2019 10:23:29 +0000 (11:23 +0100)]
imx6: aristainetos: enable HAB boot

enable IMX_HAB on aristianetos board

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: cleanup default Environment
Heiko Schocher [Sun, 1 Dec 2019 10:23:28 +0000 (11:23 +0100)]
imx6: aristainetos: cleanup default Environment

sync defaut Envoronment with customer changes.
Unfortunately they are not changeable, as already
board is in production mode.

Get rid of the big bootcommand and set bootcommand
through Kconfig option.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: WDT DM conversion enable WDT reset
Heiko Schocher [Sun, 1 Dec 2019 10:23:27 +0000 (11:23 +0100)]
imx6: aristainetos: WDT DM conversion enable WDT reset

enable config symbols:
CONFIG_SYSRESET
CONFIG_SYSRESET_WATCHDOG

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: cleanup bootmode settings
Heiko Schocher [Sun, 1 Dec 2019 10:23:26 +0000 (11:23 +0100)]
imx6: aristainetos: cleanup bootmode settings

on the aristainetos there are some jumpers for
changing behaviour setting up Environment. Clean
this up.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: add version variable
Heiko Schocher [Sun, 1 Dec 2019 10:23:25 +0000 (11:23 +0100)]
imx6: aristainetos: add version variable

add VERSION_VARIABLE

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: add AUTOBOOT_KEYED
Heiko Schocher [Sun, 1 Dec 2019 10:23:24 +0000 (11:23 +0100)]
imx6: aristainetos: add AUTOBOOT_KEYED

add stop autobooting via SHA256 encrypted password.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: add i2c eeprom support
Heiko Schocher [Sun, 1 Dec 2019 10:23:23 +0000 (11:23 +0100)]
imx6: aristainetos: add i2c eeprom support

add support for i2c eeprom and add parsing "Rescue"
or "DefEnv" at offset 0x1ff0.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: get rid of CONFIG_BOARDNAME
Heiko Schocher [Sun, 1 Dec 2019 10:23:22 +0000 (11:23 +0100)]
imx6: aristainetos: get rid of CONFIG_BOARDNAME

CONFIG_BOARDNAME is not longer needed, as we use
the model information from DTS.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: convert to DM_PWM/DM_BACKLIGHT
Heiko Schocher [Sun, 1 Dec 2019 10:23:21 +0000 (11:23 +0100)]
imx6: aristainetos: convert to DM_PWM/DM_BACKLIGHT

use DM_PWM and DM_BLACKLIGHT support and remove
board code.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: add DM_I2C support
Heiko Schocher [Sun, 1 Dec 2019 10:23:20 +0000 (11:23 +0100)]
imx6: aristainetos: add DM_I2C support

enable DM_I2C in defconfig and remove i2c specific
board code.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: add DM_VIDEO support
Heiko Schocher [Sun, 1 Dec 2019 10:23:19 +0000 (11:23 +0100)]
imx6: aristainetos: add DM_VIDEO support

add DM_VIDEO support and remove now unneeded board
code. As we show a bmp logo on boot, call now
bmp_display() from board code and do not use
cfb_console anymore.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: enable DM_ETH
Heiko Schocher [Sun, 1 Dec 2019 10:23:18 +0000 (11:23 +0100)]
imx6: aristainetos: enable DM_ETH

enable DM_ETH and remove unneeded board code.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: convert CONFIG_DM_SPI
Heiko Schocher [Sun, 1 Dec 2019 10:23:17 +0000 (11:23 +0100)]
imx6: aristainetos: convert CONFIG_DM_SPI

enable CONFIG_DM_SPI and CONFIG_DM_SPI_FLASH
and get rid of build removal warnings.

define CONFIG_GPIO_ENABLE_SPI_FLASH is not longer
needed, so remove it from config_whitelist.txt

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: convert to DM_USB
Heiko Schocher [Sun, 1 Dec 2019 10:23:16 +0000 (11:23 +0100)]
imx6: aristainetos: convert to DM_USB

Drop CONFIG_USB_MAX_CONTROLLER_COUNT and enable DM_USB
in defconfig.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: convert gpio pins to DM and DTS
Heiko Schocher [Sun, 1 Dec 2019 10:23:15 +0000 (11:23 +0100)]
imx6: aristainetos: convert gpio pins to DM and DTS

Enable DM_GPIO, GPIO_HOG, LED and LED_GPIO as gpio
and LEDs are now defined in DTS. Enable also here
the pinctrl driver, so pinmux setup is also done.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: convert to DM_MMC
Heiko Schocher [Sun, 1 Dec 2019 10:23:14 +0000 (11:23 +0100)]
imx6: aristainetos: convert to DM_MMC

Enable DM_MMC support.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: add DM_SERIAL support
Heiko Schocher [Sun, 1 Dec 2019 10:23:13 +0000 (11:23 +0100)]
imx6: aristainetos: add DM_SERIAL support

add DM_SERIAL support for the aristainetos board, and
remove not used code from board code.

remove CONSOLE_OVERWRITE_ROUTINE.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: prepare dts for other board versions
Heiko Schocher [Sun, 1 Dec 2019 10:23:12 +0000 (11:23 +0100)]
imx6: aristainetos: prepare dts for other board versions

as we switch to support DM and DTS, rework the existing
DTS trees. Change also Linux specific Device trees, goal
is to push this changes to linux.

Collect U-Boot specific changes in separate "*u-boot*" dts
files.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: remove aristainetos-v2.c
Heiko Schocher [Sun, 1 Dec 2019 10:23:11 +0000 (11:23 +0100)]
imx6: aristainetos: remove aristainetos-v2.c

remove aristainetos-v2.c file, as we now want to
switch to DM/DTS support and have all board specific
code in one file. Goal is to setup differences
through DT.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: add thumb build
Heiko Schocher [Sun, 1 Dec 2019 10:23:10 +0000 (11:23 +0100)]
imx6: aristainetos: add thumb build

add thumb build to aristainetos build to save
binary space.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: add device tree from linux
Heiko Schocher [Sun, 1 Dec 2019 10:23:09 +0000 (11:23 +0100)]
imx6: aristainetos: add device tree from linux

Add device trees from Linux in preparation for driver model
conversions.

device tree files taken from Linux:
71ae5fc87c34: "Merge tag 'linux-kselftest-5.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest"

and added SPDX license identifier.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: disable gigabit support
Heiko Schocher [Sun, 1 Dec 2019 10:23:08 +0000 (11:23 +0100)]
imx6: aristainetos: disable gigabit support

gigabit support does not work on the aristainetos
board, so disable it.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: remove 2b version
Heiko Schocher [Sun, 1 Dec 2019 10:23:07 +0000 (11:23 +0100)]
imx6: aristainetos: remove 2b version

remove 2b version of aristainetos board, as it
is easier to make the DM / DTS port and introduce
the 2b board version again (also some more board
version).

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: aristainetos: move defines to Kconfig
Heiko Schocher [Sun, 1 Dec 2019 10:23:06 +0000 (11:23 +0100)]
imx6: aristainetos: move defines to Kconfig

move defines, which are already moved to Kconfig
out of board config.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agovideo: lg4573: convert to DM
Heiko Schocher [Sun, 1 Dec 2019 10:23:05 +0000 (11:23 +0100)]
video: lg4573: convert to DM

convert this driver to support DM.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoimx6: remove aristainetos board
Heiko Schocher [Sun, 1 Dec 2019 10:23:04 +0000 (11:23 +0100)]
imx6: remove aristainetos board

remove not anymore used aristainetos board.

Signed-off-by: Heiko Schocher <hs@denx.de>
4 years agoPrepare v2020.01 v2020.01
Tom Rini [Mon, 6 Jan 2020 20:56:31 +0000 (15:56 -0500)]
Prepare v2020.01

Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agoRevert "mmc: davinci: drop struct davinci_mmc_plat"
Tom Rini [Fri, 3 Jan 2020 17:00:04 +0000 (12:00 -0500)]
Revert "mmc: davinci: drop struct davinci_mmc_plat"

Adam Ford reports that this change breaks booting on da850-evm and
Bartosz Golaszewski agrees that with the impending release we should
revert the change for now.  With that noted:

This reverts commit 21a4d80a710c79053ac1deaa65ff9b69e6c031d4.

Cc: Bartosz Golaszewski <brgl@bgdev.pl>
Tested-by: Adam Ford <aford173@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agoMerge branch '2020-01-03-master-imports'
Tom Rini [Fri, 3 Jan 2020 14:47:22 +0000 (09:47 -0500)]
Merge branch '2020-01-03-master-imports'

- Fixes for host tools with musl C library
- Two fixes for TI K3 platforms

4 years agoarm: mach-k3: Enable WA for R5F deadlock
Lokesh Vutla [Tue, 31 Dec 2019 10:19:55 +0000 (15:49 +0530)]
arm: mach-k3: Enable WA for R5F deadlock

On K3 devices there are 2 conditions where R5F can deadlock:
1.When software is performing series of store operations to
  cacheable write back/write allocate memory region and later
  on software execute barrier operation (DSB or DMB). R5F may
  hang at the barrier instruction.
2.When software is performing a mix of load and store operations
  within a tight loop and store operations are all writing to
  cacheable write back/write allocates memory regions, R5F may
  hang at one of the load instruction.

To avoid the above two conditions disable linefill optimization
inside Cortex R5F which will make R5F to only issue up to 2 cache
line fills at any point of time.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
4 years agoarm: dts: k3-j721e: ddr: Update to 0.2 version of DDR config tool
Lokesh Vutla [Tue, 31 Dec 2019 10:18:48 +0000 (15:48 +0530)]
arm: dts: k3-j721e: ddr: Update to 0.2 version of DDR config tool

Update the ddr settings to use the DDR reg config tool rev 0.2.0.
This reduces the aging count(in DDRSS_CTL_274_DATA reg) to 15 in-order
to avoid DSS underflow errors.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Kevin Scholz <k-scholz@ti.com>
4 years agoinclude/u-boot/crc.h: pull 'uint' definition on musl targets
Sergei Trofimovich [Mon, 30 Dec 2019 15:53:42 +0000 (15:53 +0000)]
include/u-boot/crc.h: pull 'uint' definition on musl targets

The build failure was originally reported on arm64-musl
target at https://bugs.gentoo.org/703132. Here is the amd64-musl
variant:

```
$ LANG=C make CROSS_COMPILE=x86_64-gentoo-linux-musl- tools-only_defconfig -j$(nproc)
$ LANG=C make CROSS_COMPILE=x86_64-gentoo-linux-musl- tools-all            -j$(nproc)
...
include/u-boot/crc.h:37:44: error: unknown type name 'uint'; did you mean 'int'?
   37 | void crc16_ccitt_wd_buf(const uint8_t *in, uint len,
      |                                            ^~~~
      |                                            int
```

Note: 'uint' is not defined there.

On glibc 'uint' comes from <sys/types.h> and happens to work on most .c files.

The change imports 'uint' declaration from '<compiler.h>'.

Bug: https://bugs.gentoo.org/703132
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
4 years agoinclude: fix 'ulong' definition on musl targets
Sergei Trofimovich [Mon, 30 Dec 2019 15:53:41 +0000 (15:53 +0000)]
include: fix 'ulong' definition on musl targets

The build failure was originally reported on arm64-musl
target at https://bugs.gentoo.org/703132. Here is the amd64-musl
variant:

```
$ LANG=C make CROSS_COMPILE=x86_64-gentoo-linux-musl- tools-only_defconfig -j$(nproc)
$ LANG=C make CROSS_COMPILE=x86_64-gentoo-linux-musl- tools-all            -j$(nproc)
...
In file included from tools/env/../../env/flags.c:7,
                 from tools/env/env_flags.c:1:
include/env.h:159:1: error: unknown type name 'ulong'; did you mean 'long'?
  159 | ulong env_get_ulong(const char *name, int base, ulong default_val);
      | ^~~~~
      | long
```

Note: 'ulong' is not defined there.

On glibc 'ulong' comes from <sys/types.h>:

```c
/* Old compatibility names for C types.  */
typedef unsigned long int ulong;
```

On musl it comes from <sys/types.h> as well but from under different guards:

```c
typedef unsigned long u_long, ulong;
```

The change inlines 'ulong' define similar to 'uint' define.

Bug: https://bugs.gentoo.org/703132
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
4 years agoMerge tag 'fixes-v2020.01' of https://gitlab.denx.de/u-boot/custodians/u-boot-video
Tom Rini [Thu, 2 Jan 2020 23:12:05 +0000 (18:12 -0500)]
Merge tag 'fixes-v2020.01' of https://gitlab.denx.de/u-boot/custodians/u-boot-video

- fix missing graphics output on some x86 boards
- avoid using #ifdef in video code
- add .gitignore for video font *.S files

4 years agovideo: add wrappers for ttf type files to .gitignore
Dario Binacchi [Tue, 31 Dec 2019 17:09:14 +0000 (18:09 +0100)]
video: add wrappers for ttf type files to .gitignore

The scripts/Makefile.lib generates an assembler file (*.S) to wrap the
font data for each file of type ttf defined in Kconfig.

Signed-off-by: Dario Binacchi <dariobin@libero.it>
4 years agoMerge tag 'u-boot-rockchip-20191231' of https://gitlab.denx.de/u-boot/custodians...
Tom Rini [Thu, 2 Jan 2020 15:28:26 +0000 (10:28 -0500)]
Merge tag 'u-boot-rockchip-20191231' of https://gitlab.denx.de/u-boot/custodians/u-boot-rockchip

- Fix latest mainline kernel for rk3308
- Update rk3288-evb config to suport OP-TEE
- Fix for firefly-px30 DEBUG_UART channel and make it standalone
- Script make_fit_atf add python3 support
- Fix rk3328 timer with correct COUNTER_FREQUENCY
- Fix rk3328 ATF support with enable spl-fifo-mode

4 years agoMerge branch '2020-01-02-master-imports'
Tom Rini [Thu, 2 Jan 2020 15:27:47 +0000 (10:27 -0500)]
Merge branch '2020-01-02-master-imports'

- Assorted test.py fixes
- Other minor changes

4 years agotest: Fix the boardspec for the SPL handoff test
Simon Glass [Fri, 27 Dec 2019 14:46:30 +0000 (07:46 -0700)]
test: Fix the boardspec for the SPL handoff test

This test currently does not run because it specifies the sandbox board
instead of sandbox_spl. Fix it.

Signed-off-by: Simon Glass <sjg@chromium.org>
4 years agomailmap: Update mail address for Igor Opaniuk
Igor Opaniuk [Tue, 17 Dec 2019 12:48:54 +0000 (14:48 +0200)]
mailmap: Update mail address for Igor Opaniuk

My address at Linaro doesn't exist anymore, so people
keep getting mail delivery error responses. Map this address
to the actual one.

Signed-off-by: Igor Opaniuk <igor.opaniuk@gmail.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
4 years agotest_env: don't strip() printenv results
Stephen Warren [Wed, 18 Dec 2019 18:37:21 +0000 (11:37 -0700)]
test_env: don't strip() printenv results

get_env() was originally written to strip() the output of printenv to
isolate the test from any whitespace changes in printenv's output.
However, this throws away any whitespace in the variable value, which can
cause issues when test code expects to see that whitespace. In fact,
printenv never adds any whitespace at all, so there's no need to strip.

The strip causes a practical problem for test_env_echo_exists() if
state_test_env.get_existent_var() happens to choose a U-Boot variable that
contains trailing whitespace. This is true for variable boot_targets.

With Python 2, get_existent_var() never returned boot_targets so this
issue never caused a practical problem.

With Python 3, get_existent_var does sometimes return boot_targets, no
doubt due to Python 3's different dict hash key order implementation,
about 0.5-2% of the time, so this test appears intermittent. With the
strip removed, this intermittency is solved, since the test passes for all
possible U-Boot variables.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
4 years agoarch/arm/Kconfig: typo/grammar/punctuation fixes
Robert P. J. Day [Wed, 25 Dec 2019 11:34:07 +0000 (06:34 -0500)]
arch/arm/Kconfig: typo/grammar/punctuation fixes

Various (mostly minor) spelling, grammar and punctuation tweaks for
arch/arm/Kconfig.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
4 years ago.gitignore: ignore files generated by asn1 compiler
Dario Binacchi [Sun, 29 Dec 2019 12:47:32 +0000 (13:47 +0100)]
.gitignore: ignore files generated by asn1 compiler

As described in doc/README.asn1 document the tools/asn1_compiler is used
to "generate bytecode as a C file (*.asn1.[ch]) from *.asn1 file".

Signed-off-by: Dario Binacchi <dariobin@libero.it>
4 years agotools: .gitignore: add asn1_compiler
Dario Binacchi [Sun, 29 Dec 2019 12:44:18 +0000 (13:44 +0100)]
tools: .gitignore: add asn1_compiler

Add the tool to the ignore list to prevent being marked as unversioned.

Signed-off-by: Dario Binacchi <dariobin@libero.it>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
4 years agovideo: Avoid using #ifdef in video-uclass.c
Simon Glass [Sat, 21 Dec 2019 01:10:37 +0000 (18:10 -0700)]
video: Avoid using #ifdef in video-uclass.c

This code does not really need to use #ifdef. We can use if() instead and
gain build coverage without impacting code size.

Change the #ifdefs to use IS_ENABLED(), etc., instead.

Signed-off-by: Simon Glass <sjg@chromium.org>
4 years agovideo: Avoid using #ifdef in vidconsole-uclass.c
Simon Glass [Sat, 21 Dec 2019 01:10:36 +0000 (18:10 -0700)]
video: Avoid using #ifdef in vidconsole-uclass.c

This code does not really need to use #ifdef. We can use if() instead and
gain build coverage without impacting code size.

Change the #ifdefs to use CONFIG_IS_ENABLED() instead.

Signed-off-by: Simon Glass <sjg@chromium.org>
4 years agovideo: Avoid using #ifdef in console_rotate.c
Simon Glass [Sat, 21 Dec 2019 01:10:35 +0000 (18:10 -0700)]
video: Avoid using #ifdef in console_rotate.c

This code does not really need to use #ifdef. We can use if() instead and
gain build coverage without impacting code size.

Change the #ifdefs to use IS_ENABLED() instead.

Signed-off-by: Simon Glass <sjg@chromium.org>
4 years agovideo: Avoid using #ifdef in video blitting code
Simon Glass [Sat, 21 Dec 2019 01:10:34 +0000 (18:10 -0700)]
video: Avoid using #ifdef in video blitting code

This code does not really need to use #ifdef. We can use if() instead and
gain build coverage without impacting code size.

Change the #ifdefs to use IS_ENABLED() instead.

Signed-off-by: Simon Glass <sjg@chromium.org>
4 years agovideo: x86: Enable 32-bit graphics by default
Simon Glass [Sat, 21 Dec 2019 01:10:33 +0000 (18:10 -0700)]
video: x86: Enable 32-bit graphics by default

Most x86 boards that use video make use of 32bpp graphics. Enable this by
default. This fixes missing graphics output on some x86 boards.

Also remove the unnecessary 'default n' while we are here.

Signed-off-by: Simon Glass <sjg@chromium.org>
4 years agorockchip: evb-rk3328: Enable support ATF in SPL
Kever Yang [Tue, 31 Dec 2019 08:02:59 +0000 (16:02 +0800)]
rockchip: evb-rk3328: Enable support ATF in SPL

Enable the ATF in SPL and adjust the SPL STACK/HEAD at the same time to
support ATF entry at 0x40000.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: rk3328: enable spl-fifo-mode for emmc and sdmmc
Kever Yang [Tue, 31 Dec 2019 07:57:55 +0000 (15:57 +0800)]
rockchip: rk3328: enable spl-fifo-mode for emmc and sdmmc

Since mmc to sram can't do dma, add patch to prevent aborts transfering
TF-A parts.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: rk3328: add COUNTER_FREQUENCY definition
Kever Yang [Tue, 31 Dec 2019 07:17:56 +0000 (15:17 +0800)]
rockchip: rk3328: add COUNTER_FREQUENCY definition

The arch timer needs COUNTER_FREQUENCY to get correct counter, add it to
make the timer works correct.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
4 years agoMerge tag 'u-boot-imx-20191228' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
Tom Rini [Sat, 28 Dec 2019 13:07:16 +0000 (08:07 -0500)]
Merge tag 'u-boot-imx-20191228' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx

Fixes for 2020.01
-----------------
- Fixes for Nitrogen6x
- Fix corruption for mx51evk
- colibri i.MX6: fix broken ESDHC conversion
- mx6sxsabresd: fix broken mmcdev
- imx6q_logic: cleanup boot sequence
- update ATF for imx8mq_evk
- pfuze: fix pmic_get()

Travis CI: https://travis-ci.org/sbabic/u-boot-imx/builds/630007464

4 years agoMerge https://gitlab.denx.de/u-boot/custodians/u-boot-sunxi
Tom Rini [Fri, 27 Dec 2019 21:46:38 +0000 (16:46 -0500)]
Merge https://gitlab.denx.de/u-boot/custodians/u-boot-sunxi

- Orange Pi Zero Plus 2 support
- sunxi psci, prcm fixes

4 years agoMerge https://gitlab.denx.de/u-boot/custodians/u-boot-spi
Tom Rini [Fri, 27 Dec 2019 21:46:15 +0000 (16:46 -0500)]
Merge https://gitlab.denx.de/u-boot/custodians/u-boot-spi

- rk spi transfer limit fix
- Gigadevice, gd25q128 support
- spi-nor-core warnings

4 years agoomap3_beagle: Change NAND ECC scheme back to OMAP_ECC_HAM1_CODE_HW
Patrik Dahlström [Sat, 21 Dec 2019 16:18:22 +0000 (17:18 +0100)]
omap3_beagle: Change NAND ECC scheme back to OMAP_ECC_HAM1_CODE_HW

The omap3_beagle NAND ECC scheme was changed in 4b37928d357 for unknown
reasons, leading to uncorrectible ecc errors. This commit changes it
back to what it was before.

Signed-off-by: Patrik Dahlström <risca@dalakolonin.se>
4 years agortc: rx8010js: add compatible string
Robert Beckett [Tue, 29 Oct 2019 19:07:03 +0000 (19:07 +0000)]
rtc: rx8010js: add compatible string

Add compatible string used by Linux.
Allows for simpler syncing of device trees.

Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agortc: s35392a: add compatible strings
Robert Beckett [Mon, 28 Oct 2019 19:10:10 +0000 (19:10 +0000)]
rtc: s35392a: add compatible strings

Add compatible strings used by Linux.
Allows for simpler syncing of device trees.

Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agortc: rx8010sj: fix DM initialization
Robert Beckett [Mon, 28 Oct 2019 18:49:15 +0000 (18:49 +0000)]
rtc: rx8010sj: fix DM initialization

pass the udevice by reference instead of double ref

Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
4 years agoARM: imx6q_logic: Cleanup boot sequence check
Adam Ford [Sun, 3 Nov 2019 13:58:40 +0000 (07:58 -0600)]
ARM: imx6q_logic: Cleanup boot sequence check

The board_boot_order() function currenly assumes that the boot source
is MMC/eMMC, but this isn't true for the NAND devices.

This patch cleans up board_boot_order() to check for NAND, SD, ESD,
MMC or EMMC.  Anything beyond these are not supported, so it will
default back to the serial downloader if any of those devices are not
available.

Fixes: 9fb50c68daa6 ("ARM: imx6q_logic: Fix MMC2 booting")

Signed-off-by: Adam Ford <aford173@gmail.com>
4 years agoARM: i.MX6: TARGET_NITROGEN6X: add 'select MX6QDL'
Troy Kisky [Mon, 4 Nov 2019 02:20:05 +0000 (18:20 -0800)]
ARM: i.MX6: TARGET_NITROGEN6X: add 'select MX6QDL'

This fixes commit <91435cd40d30> "ARM: i.MX6: exclude the ARM errata
 from i.MX6 UP system"

for nitrogen6x. The above commit removed the errata for the board
since MX6Q/MXDL/MX6S is selected via CONFIG_SYS_EXTRA_OPTIONS

This restores the errata configs.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
4 years agonitrogen6x: prepare for CONFIG_MX6QDL
Troy Kisky [Mon, 4 Nov 2019 02:20:04 +0000 (18:20 -0800)]
nitrogen6x: prepare for CONFIG_MX6QDL

The next patch adds CONFIG_MX6QDL so that
errata will be enabled again.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
4 years agospi: rk: Limit transfers to (64K - 1) bytes
Jagan Teki [Sat, 21 Dec 2019 07:54:30 +0000 (13:24 +0530)]
spi: rk: Limit transfers to (64K - 1) bytes

The Rockchip SPI controller's length register only supports 16-bits,
yielding a maximum length of 64KiB (the CTRLR1 register holds "length -
1"). Trying to transfer more than that (e.g., with a large SPI flash
read) will cause the driver to hang.

Now, it seems that while theoretically we should be able to program
CTRLR1 with 0xffff, and get a 64KiB transfer, but that also seems to
cause the core to choke, so stick with a maximum of 64K - 1 bytes --
i.e., 0xffff.

Note, that the size is further divided into 'minus 1' while writing
into CTRLR1.

This change fixed two different read issues,

1. sf read failure when with > 0x10000

2. Boot from SPI flash failed during spi_flash_read call in
   common/spl/spl_spi.c

Observed and Tested in
- Rockpro64 with Gigadevice flash
- ROC-RK3399-PC with Winbond flash

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agomtd: spi-nor-core: Fix static checker warnings
Vignesh Raghavendra [Sat, 9 Nov 2019 06:34:13 +0000 (12:04 +0530)]
mtd: spi-nor-core: Fix static checker warnings

Static checker warns 'ret' variable may be used uninitialized in
spi_nor_erase() and spi_nor_write() in case of zero length requests.
Fix these warnings by checking for zero length requests and returning
early.

Reported-by: Dan Murphy <dmurphy@ti.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
4 years agotools/imximage: share DCD information via Kconfig
Jorge Ramirez-Ortiz [Wed, 11 Dec 2019 09:42:36 +0000 (10:42 +0100)]
tools/imximage: share DCD information via Kconfig

IMX based platforms can have the DCD table located on different
addresses due to differences in their memory maps (ie iMX7ULP).

This information is required by the user to sign the images for secure
boot so continue making it accessible via mkimage.

Signed-off-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Stefano Babic <sbabic@denx.de>