oweals/u-boot.git
4 years agocmd: mvebu: bubt: add A38x support
Joel Johnson [Fri, 17 Apr 2020 15:38:04 +0000 (09:38 -0600)]
cmd: mvebu: bubt: add A38x support

Add support for Armada 38x devices in bubt flashing utility.
This is based on (and streamlined from) the support in the SolidRun
master-a38x vendor fork.

Signed-off-by: Joel Johnson <mrjoel@lixil.net>
Reviewed-by: Stefan Roese <sr@denx.de>
4 years agoarm: mvebu: correct SPL boot configs for SPI/MMC
Joel Johnson [Fri, 17 Apr 2020 07:19:05 +0000 (01:19 -0600)]
arm: mvebu: correct SPL boot configs for SPI/MMC

Update mvebu SPL boot selection mechanism for the move to driver model
usage by ensuring that the required driver support for SPI and MMC
booting is available in SPL when the respective boot method is
selected.

Previously, all mvebu boards selected a boot method (implicitly
MVEBU_SPL_BOOT_DEVICE_SPI for many) even if SPL booting wasn't used.
This changes mvebu boot method selection to depend on SPL usage which
resolves the issue with aarch64 boards which don't use SPL getting an
implicit boot device selection resulting in unmet dependencies. The
32-bit arm boards do use SPL, but I'm led to conclude that most aren't
intentionally using the MVEBU_SPL_BOOT_DEVICE selection since none have
SPL_DM_SPI enabled in their defconfig even though they still implicitly
select the SPI boot method.

This also results in the new addition of SPL_GPIO_SUPPORT to helios4.
The mainline dts for helios4 includes the cd-gpios entry for sdhci with
identical addresses as the clearfog dts. I don't have a helios4 board
to confirm, but based on the current source conclude that the board
itself is either wired to pull the signal low for eMMC, or the default
MMC boot isn't fully functional in mainline. In either case, as far as
I can tell, including the GPIO support will at least cause no
regression.

Tested on SolidRun ClearFog devices.

Signed-off-by: Joel Johnson <mrjoel@lixil.net>
Reviewed-by: Stefan Roese <sr@denx.de>
4 years agoarm: mvebu: clearfog: adjust SCSI boot duplication
Joel Johnson [Fri, 17 Apr 2020 07:06:53 +0000 (01:06 -0600)]
arm: mvebu: clearfog: adjust SCSI boot duplication

Fix duplication resulting from merging of multiple related series.
Commits cecf38a75bd02fd29f, and 201a500de added or adjusted SCSI
boot support for ClearFog, but in slightly different locations which
didn't result in a merge conflict.

Signed-off-by: Joel Johnson <mrjoel@lixil.net>
Reviewed-by: Stefan Roese <sr@denx.de>
4 years agoclk: armada-37xx-periph: fix DDR PHY clock divider values
Marek Behún [Tue, 14 Apr 2020 22:59:18 +0000 (00:59 +0200)]
clk: armada-37xx-periph: fix DDR PHY clock divider values

Register value table for DDR PHY clock divider are wrong. They should be
0 or 1 for divide-by-2 or divide-by-4, respectively. Not 1 or 2. Current
values do not make sense, since 2 cannot be achieved, because the
register is only 1 bit long (mask is set to 1).

This fixes clk dump reporting DDR PHY clock rate differently from Linux.

Signed-off-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Stefan Roese <sr@denx.de>
4 years agoMerge https://gitlab.denx.de/u-boot/custodians/u-boot-fsl-qoriq
Tom Rini [Tue, 21 Apr 2020 19:20:42 +0000 (15:20 -0400)]
Merge https://gitlab.denx.de/u-boot/custodians/u-boot-fsl-qoriq

- Backplane support and bug fixes

4 years agoMerge tag 'for-v2020.07' of https://gitlab.denx.de/u-boot/custodians/u-boot-i2c
Tom Rini [Tue, 21 Apr 2020 12:28:13 +0000 (08:28 -0400)]
Merge tag 'for-v2020.07' of https://gitlab.denx.de/u-boot/custodians/u-boot-i2c

i2c changes for 2020.07
- add new i2c driver for Broadcom iproc-based socs
- fix cmd: eeprom: Staticize eeprom_i2c_bus
- i2c: muxes: pca954x: add PCA9546 variant

4 years agoMerge tag 'for-v2020.07' of https://gitlab.denx.de/u-boot/custodians/u-boot-ubi
Tom Rini [Tue, 21 Apr 2020 12:27:56 +0000 (08:27 -0400)]
Merge tag 'for-v2020.07' of https://gitlab.denx.de/u-boot/custodians/u-boot-ubi

new ubi command for renaming an UBI volume

4 years agoMerge branch '2020-04-17-master-imports'
Tom Rini [Mon, 20 Apr 2020 21:22:47 +0000 (17:22 -0400)]
Merge branch '2020-04-17-master-imports'

- Further cleanups for 'make refcheckdocs'
- Another BTRFS fix.
- Support for automatic decompression of images with booti as well as
  unlz4 command for manual decompression.

4 years agoMerge tag 'u-boot-amlogic-20200420' of https://gitlab.denx.de/u-boot/custodians/u...
Tom Rini [Mon, 20 Apr 2020 17:44:27 +0000 (13:44 -0400)]
Merge tag 'u-boot-amlogic-20200420' of https://gitlab.denx.de/u-boot/custodians/u-boot-amlogic

- enable DM_RNG on meson boards
- fix SMBIOS info on Odroid-C2
- Fix video output on GXBB/GXL/GXM boards
- add USB gadget support for GXL/GXM boards

4 years agofs: btrfs: support sparse extents
Marek Behún [Mon, 30 Mar 2020 16:48:42 +0000 (18:48 +0200)]
fs: btrfs: support sparse extents

When logical address of a regular extent is 0, the extent is sparse and
consists of all zeros.

Without this when sparse extents are used in a file reading fails with
  Cannot map logical address 0 to physical

Signed-off-by: Marek Behún <marek.behun@nic.cz>
4 years agoMerge tag 'ti-v2020.07-rc1' of https://gitlab.denx.de/u-boot/custodians/u-boot-ti
Tom Rini [Mon, 20 Apr 2020 15:14:22 +0000 (11:14 -0400)]
Merge tag 'ti-v2020.07-rc1' of https://gitlab.denx.de/u-boot/custodians/u-boot-ti

- Fix boot on am335x guardian board
- Increase OPSI speed on AM65x and J721E devices
- Use JTAD register for identifying K3 devices.
- Update TI entry in MAINTAINERS file.

4 years agoMerge branch 'master' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
Tom Rini [Mon, 20 Apr 2020 12:45:27 +0000 (08:45 -0400)]
Merge branch 'master' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx

4 years agoconfigs: libretech-s912-pc: Enable USB gadget with Mass Storage function
Neil Armstrong [Mon, 30 Mar 2020 09:27:32 +0000 (11:27 +0200)]
configs: libretech-s912-pc: Enable USB gadget with Mass Storage function

Enable configs to support USB gadget and Mass Storage

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agoconfigs: libretech-s905d-pc: Enable USB gadget with Mass Storage function
Neil Armstrong [Mon, 30 Mar 2020 09:27:31 +0000 (11:27 +0200)]
configs: libretech-s905d-pc: Enable USB gadget with Mass Storage function

Enable configs to support USB gadget and Mass Storage

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agoconfigs: khadas-vim: Enable USB gadget with Mass Storage function
Neil Armstrong [Mon, 30 Mar 2020 09:27:30 +0000 (11:27 +0200)]
configs: khadas-vim: Enable USB gadget with Mass Storage function

Enable configs to support USB gadget and Mass Storage

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agoconfigs: khadas-vim2: Enable USB gadget with Mass Storage function
Neil Armstrong [Mon, 30 Mar 2020 09:27:29 +0000 (11:27 +0200)]
configs: khadas-vim2: Enable USB gadget with Mass Storage function

Enable configs to support USB gadget and Mass Storage

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agoconfigs: libretech-ac: Enable USB gadget with Mass Storage function
Neil Armstrong [Mon, 30 Mar 2020 09:27:28 +0000 (11:27 +0200)]
configs: libretech-ac: Enable USB gadget with Mass Storage function

Enable configs to support USB gadget and Mass Storage

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agoconfigs: libretech-cc: Enable USB gadget with Mass Storage function
Neil Armstrong [Mon, 30 Mar 2020 09:27:27 +0000 (11:27 +0200)]
configs: libretech-cc: Enable USB gadget with Mass Storage function

Enable configs to support USB gadget and Mass Storage

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agoarm: dts: meson-gxl: Add USB Gadget nodes for U-Boot
Neil Armstrong [Mon, 30 Mar 2020 09:27:26 +0000 (11:27 +0200)]
arm: dts: meson-gxl: Add USB Gadget nodes for U-Boot

Add the USB DWC2 node to u-boot specific dtsi files since Gadget
support is not (yet) available in upstream Linux yet.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agoarm: meson-gx: add board_usb_init()/cleanup() for USB gadget
Neil Armstrong [Mon, 30 Mar 2020 09:27:25 +0000 (11:27 +0200)]
arm: meson-gx: add board_usb_init()/cleanup() for USB gadget

Add arch code to initialize USB Gadget mode using the DWC2 controller,
and using the previously added set_mode() phy functions.

[narmstrong: fixup board_usb_cleanup call to phy_meson_gxl_usb2_set_mode]
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agophy: meson-gxl-usb: add set_mode call to force switch to peripheral mode
Neil Armstrong [Mon, 30 Mar 2020 09:27:24 +0000 (11:27 +0200)]
phy: meson-gxl-usb: add set_mode call to force switch to peripheral mode

Add set_mode function in the Amlogic GXL PHYs that will be called by
the arch code to switch PHYs from/to gadget mode.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agogeneric-phy: add generic_phy_get_by_node()
Neil Armstrong [Mon, 30 Mar 2020 09:27:23 +0000 (11:27 +0200)]
generic-phy: add generic_phy_get_by_node()

Add generic_phy_get_by_node() to get a PHY phandle from a node instead
of a udevice.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
[narmstrong: fixed by including ofnode.h in generic-phy.h]

4 years agot208xqds: add support for backplane kr
Florinel Iordache [Mon, 16 Mar 2020 13:36:02 +0000 (15:36 +0200)]
t208xqds: add support for backplane kr

Add support for backplane kr on t208xqds: remove board specific fixups
on t208xqds for ethernet interfaces specified in device tree as
supported backplane modes.

Signed-off-by: Florinel Iordache <florinel.iordache@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agolx2160aqds: add support for backplane kr
Florinel Iordache [Mon, 16 Mar 2020 13:36:01 +0000 (15:36 +0200)]
lx2160aqds: add support for backplane kr

Add support for backplane kr on lx2160aqds: remove board specific fixups
on lx2160aqds for ethernet interfaces specified in device tree as
supported backplane modes.

Signed-off-by: Florinel Iordache <florinel.iordache@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agols1046aqds: add support for backplane kr
Florinel Iordache [Mon, 16 Mar 2020 13:36:00 +0000 (15:36 +0200)]
ls1046aqds: add support for backplane kr

Add support for backplane kr on ls1046aqds: remove board specific fixups
on ls1046aqds for ethernet interfaces specified in device tree as
supported backplane modes.

Signed-off-by: Florinel Iordache <florinel.iordache@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agophy: add support for backplane kr mode
Florinel Iordache [Mon, 16 Mar 2020 13:35:59 +0000 (15:35 +0200)]
phy: add support for backplane kr mode

Add generic support for backplane kr modes currently available:
10gbase-kr, 40gbase-kr4. Remove platform generic fixups
(armv8/layerscape and powerpc) for ethernet interfaces specified
in device tree as supported backplane modes.

Signed-off-by: Florinel Iordache <florinel.iordache@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agoarmv8: ls1028a: define esdhc_status_fixup
Yinbo Zhu [Tue, 14 Apr 2020 09:24:48 +0000 (17:24 +0800)]
armv8: ls1028a: define esdhc_status_fixup

This patch is to define esdhc_status_fixup function for ls1028a to disable
SDHC1/SDHC2 status in device tree node if not selected.

Signed-off-by: Yinbo Zhu <yinbo.zhu@nxp.com>
Signed-off-by: Xiaowei Bao <xiaowei.bao@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agoboard: fsl: lx2160a: unused variable gic_lpi_base
Heinrich Schuchardt [Sat, 11 Apr 2020 08:57:09 +0000 (10:57 +0200)]
board: fsl: lx2160a: unused variable gic_lpi_base

If the board is configured without CONFIG_GIC_V3_ITS, an error occurs:

board/freescale/lx2160a/lx2160a.c: In function ‘ft_board_setup’:
board/freescale/lx2160a/lx2160a.c:673:6: error: unused variable
‘gic_lpi_base’ [-Werror=unused-variable]
  673 |  u64 gic_lpi_base;
      |      ^~~~~~~~~~~~

Let's define the variable as __maybe_unused.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agodrivers: i2c: add brcm iproc I2C driver support
Rayagonda Kokatanur [Wed, 8 Apr 2020 05:42:27 +0000 (11:12 +0530)]
drivers: i2c: add brcm iproc I2C driver support

Add I2C driver support for Broadcom iproc-based socs.

Signed-off-by: Arjun Jyothi <arjun.jyothi@broadcom.com>
Signed-off-by: Rayagonda Kokatanur <rayagonda.kokatanur@broadcom.com>
Signed-off-by: Sheetal Tigadoli <sheetal.tigadoli@broadcom.com>
Signed-off-by: Vladimir Olovyannikov <vladimir.olovyannikov@broadcom.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
4 years agocmd: eeprom: Staticize eeprom_i2c_bus
Marek Vasut [Tue, 7 Apr 2020 11:29:04 +0000 (13:29 +0200)]
cmd: eeprom: Staticize eeprom_i2c_bus

The eeprom_i2c_bus is not used outside of this file, make it static.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Heiko Schocher <hs@denx.de>
Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
4 years agoi2c: muxes: pca954x: add PCA9546 variant
Chris Packham [Wed, 1 Apr 2020 02:55:27 +0000 (15:55 +1300)]
i2c: muxes: pca954x: add PCA9546 variant

This adds the PCA9546 4-channel i2c bus switch.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
Reviewed-by: Heiko Schocher <hs@denx.de>
4 years agocmd: ubi: add a command to rename volume
Philippe Reynes [Mon, 23 Mar 2020 18:20:47 +0000 (19:20 +0100)]
cmd: ubi: add a command to rename volume

This commit adds the command ubi rename to rename an ubi volume.
The format of the command is: ubi rename <oldname> <newname>.
To enable this command, the option CMD_UBI_RENAME must be selected.

Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
4 years agoarm: mach-k3: Use JTAD_ID register for device identification
Lokesh Vutla [Fri, 17 Apr 2020 08:13:53 +0000 (13:43 +0530)]
arm: mach-k3: Use JTAD_ID register for device identification

JTAG ID register is defined by IEEE 1149.1 for device identification.
Use this JTAG ID register for identifying AM65x[0] and J721E[1] devices
instead of using SoC specific registers.

[0] http://www.ti.com/lit/ug/spruid7e/spruid7e.pdf
[1] http://www.ti.com/lit/ug/spruil1a/spruil1a.pdf

Reported-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
4 years agoAdd support for i.MXRT1020-EVK board
Giulio Benetti [Tue, 18 Feb 2020 19:02:55 +0000 (20:02 +0100)]
Add support for i.MXRT1020-EVK board

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
4 years agodt-bindings: pinctrl: add i.MXRT1020 pins definition
Giulio Benetti [Tue, 18 Feb 2020 19:02:54 +0000 (20:02 +0100)]
dt-bindings: pinctrl: add i.MXRT1020 pins definition

Add i.MXRT1020 pins definition.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
4 years agoARM: dts: imxrt1020: add dtsi file
Giulio Benetti [Tue, 18 Feb 2020 19:02:53 +0000 (20:02 +0100)]
ARM: dts: imxrt1020: add dtsi file

Add dtsi file for i.MXRT1020.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
4 years agoAdd i.MXRT1020 support
Giulio Benetti [Tue, 18 Feb 2020 19:02:52 +0000 (20:02 +0100)]
Add i.MXRT1020 support

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
4 years agoclk: imx: add i.IMXRT1020 clk driver
Giulio Benetti [Tue, 18 Feb 2020 19:02:51 +0000 (20:02 +0100)]
clk: imx: add i.IMXRT1020 clk driver

Add i.MXRT1020 clk driver support.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
4 years agoimx: pmic: Set proper pmic name for iMX53 HSC|DDC boards
Lukasz Majewski [Wed, 26 Feb 2020 11:37:02 +0000 (12:37 +0100)]
imx: pmic: Set proper pmic name for iMX53 HSC|DDC boards

After the
commit 4213609cc7fb ("drivers: core: use strcmp when find device by name")
the exact DTS node name for PMIC device must be provided.

This patch fixes this issue by providing full DTS node name ('mc34708@8').

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Jaehoon Chug <jh80.chung@samsung.com>
4 years agoconfig: imx: Enable CONFIG_PHY_FIXED on HSC and DDC i.MX53 boards
Lukasz Majewski [Wed, 26 Feb 2020 11:37:01 +0000 (12:37 +0100)]
config: imx: Enable CONFIG_PHY_FIXED on HSC and DDC i.MX53 boards

The CONFIG_PHY_FIXED is necessary to allow DSA switch work in U-Boot after
the
commit 3bf135b6c367 ("drivers: net: phy: Ignore PHY ID 0 during PHY probing").

This particular device - LAN9303 - returns phy_id == 0. With
CONFIG_PHY_FIXED enabled HSC and DDC boards work again with the same U-Boot
binary.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
4 years agodts: imx: Add fixed-link property to HSC and DDC (imx53) devices
Lukasz Majewski [Wed, 26 Feb 2020 11:37:00 +0000 (12:37 +0100)]
dts: imx: Add fixed-link property to HSC and DDC (imx53) devices

Those two boards are supposed to be run with a single u-boot binary.
There are notable differences though - HSC uses DSA switch (which
phy_id == 0x0) and DCC (DP83848C).

After the commit 3bf135b6c367
("drivers: net: phy: Ignore PHY ID 0 during PHY probing") the PHY devices
with phy_id == 0 are not created in U-Boot anymore. This caused regression
on HSC.

To fix this problem - the fec's 'fixed-link' node has been introduced and
the phy_id is not assessed anymore. This approach works on both boards.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
4 years agoARM: imx6: DHCOM i.MX6 PDK: Fix usb-otg VBUS regulator
Harald Seiler [Thu, 16 Apr 2020 08:52:19 +0000 (10:52 +0200)]
ARM: imx6: DHCOM i.MX6 PDK: Fix usb-otg VBUS regulator

During the conversion of this board to DM_REGULATOR, usb-mass-storage
was broken and started failing with the following error:

        => ums 0 mmc 2
        UMS: LUN 0, dev 2, hwpart 0, sector 0x0, count 0xe90000
        Error enabling VBUS supply
        g_dnl_register: failed!, error: -38
        g_dnl_register failed

Fix this by adding the relevant GPIO to the regulator node.

Fixes: 4ca99fe81aea ("ARM: imx: dh-imx6: Enable DM regulator")
Signed-off-by: Harald Seiler <hws@denx.de>
4 years agoARM: imx6: DHCOM i.MX6 PDK: Convert to DM_ETH
Harald Seiler [Wed, 15 Apr 2020 18:04:53 +0000 (20:04 +0200)]
ARM: imx6: DHCOM i.MX6 PDK: Convert to DM_ETH

Use DM_ETH instead of legacy networking.  Add VIO as a fixed regulator
to the relevant device-trees and augment the FEC node with properties
for the reset GPIO.

It should be noted that the relevant properties for the reset GPIO
already exist in the PHY node (reset-gpios, reset-delay-us,
reset-post-delay-us) but U-Boot currently ignores those and only
supports the bus-level reset properties in the FEC node
(phy-reset-gpios, phy-reset-duration, phy-reset-post-delay).

Signed-off-by: Harald Seiler <hws@denx.de>
4 years agowandboard: Print the board version in board_late_init()
Fabio Estevam [Fri, 17 Apr 2020 12:27:13 +0000 (09:27 -0300)]
wandboard: Print the board version in board_late_init()

Since CONFIG_DISPLAY_BOARDINFO_LATE is no longer used,  the checkboard()
function is no longer called.

As it is useful to print the board revision, print it inside
board_late_init() instead.

Also, to avoid GPIO errors related to using a GPIO without requesting it,
move the gpio_request(REV_DETECTION, "REV_DETECT") call prior to its
usage.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Heiko Schocher <hs@denx.de>
4 years agowandboard: Remove CONFIG_DISPLAY_BOARDINFO_LATE
Fabio Estevam [Fri, 17 Apr 2020 12:27:12 +0000 (09:27 -0300)]
wandboard: Remove CONFIG_DISPLAY_BOARDINFO_LATE

Since we are using revD1 device tree for all board revisions, the
following can be seen on a revB1 board:

Model: Wandboard i.MX6 Quad Board revD1
Board: Wandboard rev B1

To avoid such confusing messages, disable CONFIG_DISPLAY_BOARDINFO_LATE.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Heiko Schocher <hs@denx.de>
4 years agowandboard: Do not print error when PMIC is not present
Fabio Estevam [Fri, 17 Apr 2020 12:27:11 +0000 (09:27 -0300)]
wandboard: Do not print error when PMIC is not present

On wandboard variants prior to revD1, there is no PMIC populated, so
do not print an error when the reading of the device ID register fails.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Heiko Schocher <hs@denx.de>
4 years agopmic: pfuze100: Change error message level to debug
Fabio Estevam [Fri, 17 Apr 2020 12:27:10 +0000 (09:27 -0300)]
pmic: pfuze100: Change error message level to debug

In some cases U-Boot runs the same binary on different board versions.

In wandboard, for example, there are versions with the PFUZE100 PMIC
populated and others without it.

When the PMIC is not present, it is not really useful to get PMIC error,
so change the error message level to debug instead.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Heiko Schocher <hs@denx.de>
4 years agowandboard: Fix version detection for mx6q/mx6dl revD1
Fabio Estevam [Fri, 17 Apr 2020 12:27:09 +0000 (09:27 -0300)]
wandboard: Fix version detection for mx6q/mx6dl revD1

The detection of the revD1 version is based on the presence of the PMIC.

Currently revb1 device trees are used for mx6q/mx6dl variants, which
do not have the PMIC nodes.

This causes revD1 boards to be incorrectly be detected as revB1.

Fix this issue by using the revd1 device trees, so that the PMIC node can be
found and then the PMIC can be detected by reading its register ID.

Imported the revd1 device trees from mainline kernel version 5.7-rc1.

Reported-by: Heiko Schocher <hs@denx.de>
Reported-by: Derek Atkins <derek@ihtfp.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Derek Atkins <derek@ihtfp.com>
Tested-by: Heiko Schocher <hs@denx.de>
Tested-by: Peter Robinson <pbrobinson@gmail.com>
4 years agoconfigs: imxrt1050-evk: temporary disable DCACHE
Giulio Benetti [Wed, 8 Apr 2020 15:11:08 +0000 (17:11 +0200)]
configs: imxrt1050-evk: temporary disable DCACHE

mxsfb needs a dcache function not implemented in cortex-M7, so for the
moment let's keep dcache not enabled.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agoconfigs: imxrt1050-evk: enable video support/console
Giulio Benetti [Wed, 8 Apr 2020 15:11:07 +0000 (17:11 +0200)]
configs: imxrt1050-evk: enable video support/console

Enable DM_VIDEO subsystem and its BACKLIGHT_GPIO. Then enable
SYS_WHITE_ON_BLACK to have classic black background on display. Need
also to enable CONFIG_SYS_CONSOLE_ENV_OVERWRITE to retrieve
stdin/stdout/stderr from CONFIG_EXTRA_ENV_SETTINGS.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agoarch: arm: dts: imxrt1050-evk: add lcdif node
Giulio Benetti [Wed, 8 Apr 2020 15:11:06 +0000 (17:11 +0200)]
arch: arm: dts: imxrt1050-evk: add lcdif node

Add lcdif node and its pinctrl.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agoARM: dts: imxrt1050: allow this dtsi file to be compiled in Linux
Giulio Benetti [Wed, 8 Apr 2020 15:11:05 +0000 (17:11 +0200)]
ARM: dts: imxrt1050: allow this dtsi file to be compiled in Linux

Linux doesn't provide skeleton.dtsi file so let's remove its include and
provide #address-cells/size-cells = <1> that were defined in
skeleton.dtsi before.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agoARM: dts: i.mxrt1050: add lcdif node
Giulio Benetti [Wed, 8 Apr 2020 15:10:21 +0000 (17:10 +0200)]
ARM: dts: i.mxrt1050: add lcdif node

Add lcdif node to SoC.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agoimxrt1050_evk: add 16bpp video support if video layer enabled
Giulio Benetti [Wed, 8 Apr 2020 15:10:20 +0000 (17:10 +0200)]
imxrt1050_evk: add 16bpp video support if video layer enabled

i.MXRT1050 provides mxsfb compatible lcd controller, so let's enable
video mxsfb driver with 16bpp depth if CONFIG_DM_VIDEO is selected since
board has 16bpp only connection.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agovideo: mxsfb: enable setting ENABLE negative polarity
Giulio Benetti [Wed, 8 Apr 2020 15:10:19 +0000 (17:10 +0200)]
video: mxsfb: enable setting ENABLE negative polarity

ENABLE signal can now be flipped by writing its bitmask on vdctrl0
register.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agovideo: mxsfb: enable setting PIXDATA on negative edge
Giulio Benetti [Wed, 8 Apr 2020 15:10:18 +0000 (17:10 +0200)]
video: mxsfb: enable setting PIXDATA on negative edge

DOTCLK signal can now be flipped by writing its bitmask on vdctrl0
register.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agovideo: mxsfb: enable setting VSYNC negative polarity
Giulio Benetti [Wed, 8 Apr 2020 15:10:17 +0000 (17:10 +0200)]
video: mxsfb: enable setting VSYNC negative polarity

VSYNC signal can now be flipped by writing its bitmask on vdctrl0
register.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agovideo: mxsfb: enable setting HSYNC negative polarity
Giulio Benetti [Wed, 8 Apr 2020 15:10:16 +0000 (17:10 +0200)]
video: mxsfb: enable setting HSYNC negative polarity

HSYNC signal can now be flipped according to display_flags bitmaks by
writing its bitmask on vdctrl0 register.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agovideo: mxsfb: refactor for using display_timings
Giulio Benetti [Wed, 8 Apr 2020 15:10:15 +0000 (17:10 +0200)]
video: mxsfb: refactor for using display_timings

struct display_timings provides more informations such clock and DE
polarity, so let's refactor the code to use struct display_timings
instead of struct ctfb_res_modes, so we'll become able to get clock and
DE polarity settings and set register according to them in the next patch.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agovideo: mxsfb: add support for i.MXRT
Giulio Benetti [Wed, 8 Apr 2020 15:10:14 +0000 (17:10 +0200)]
video: mxsfb: add support for i.MXRT

Add support for i.MXRT by adding CONFIG_IMXRT in register structure and
adding .compatible = "fsl,imxrt-lcdif".

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agovideo: mxsfb: add support for DM CLK
Giulio Benetti [Wed, 8 Apr 2020 15:10:13 +0000 (17:10 +0200)]
video: mxsfb: add support for DM CLK

Allow using DM CLK instead of mxs_set_lcdclk() so we can avoid to
implement a special function to set lcd clock on i.MXRT.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agosunxi: display: use common video_ctfb_mode_to_display_timing()
Giulio Benetti [Wed, 8 Apr 2020 15:10:12 +0000 (17:10 +0200)]
sunxi: display: use common video_ctfb_mode_to_display_timing()

Since video_ctfb_mode_to_display_timing() has been implemented by moving
sunxi_ctfb_mode_to_display_timing() to video_modes.c and it's meant to be
used by other video subsystem, let's use it instead of local
sunxi_ctfb_mode_to_display_timing().

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agovideomodes: add helper function to convert from ctfb to display_timing
Giulio Benetti [Wed, 8 Apr 2020 15:10:11 +0000 (17:10 +0200)]
videomodes: add helper function to convert from ctfb to display_timing

This function converts from "struct ctf_res_modes" to
"struct display_timing".

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
4 years agoclk: imx: clk-imxrt1050: add set_parent() callback
Giulio Benetti [Wed, 8 Apr 2020 15:10:10 +0000 (17:10 +0200)]
clk: imx: clk-imxrt1050: add set_parent() callback

Need to add set_parent() callback to allow dts assigned-clock-parents to
work so let's add it accordingly.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
4 years agoclk: imx: clk-imxrt1050: setup PLL5 for video in non-SPL
Giulio Benetti [Wed, 8 Apr 2020 15:10:09 +0000 (17:10 +0200)]
clk: imx: clk-imxrt1050: setup PLL5 for video in non-SPL

mxsfb needs PLL5 as source, so let's setup it at its default frequency
specified in RM(650Mhz).

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
4 years agoclk: imx: clk-imxrt1050: fix typo in clock name "video:"
Giulio Benetti [Wed, 8 Apr 2020 15:10:08 +0000 (17:10 +0200)]
clk: imx: clk-imxrt1050: fix typo in clock name "video:"

"video:" must be "video", ":" is a typo.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
4 years agoclk: imx: pllv3: add enable_bit
Giulio Benetti [Wed, 8 Apr 2020 15:10:07 +0000 (17:10 +0200)]
clk: imx: pllv3: add enable_bit

pllv3 PLLs have powerdown/up bits but enable bits too. Specifically
"enable bit" enable the pll output, so when dis/enabling pll by
setting/clearing power_bit we must also set/clear enable_bit.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
4 years agocolibri_imx6: enable relocation of fdt and initrd
Igor Opaniuk [Fri, 27 Mar 2020 10:28:25 +0000 (12:28 +0200)]
colibri_imx6: enable relocation of fdt and initrd

Remove 'fdt_high' and 'initrd_high' environment variables (set to 0xFFFFFFFF)
from default environment which prevents relocation of FDT and initrd.
Rely on 'bootm_size' value instead to safely relocate kernel, device tree and
initrd.

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
4 years agocolibri-imx6ull: enable relocation of fdt and initrd
Igor Opaniuk [Fri, 27 Mar 2020 10:28:24 +0000 (12:28 +0200)]
colibri-imx6ull: enable relocation of fdt and initrd

Remove 'fdt_high' and 'initrd_high' environment variables (set to 0xFFFFFFFF)
from default environment which prevents relocation of FDT and initrd.
Rely on 'bootm_size' value instead to safely relocate kernel, device tree and
initrd.

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
4 years agoapalis_imx6: enable relocation of fdt and initrd
Igor Opaniuk [Fri, 27 Mar 2020 10:28:23 +0000 (12:28 +0200)]
apalis_imx6: enable relocation of fdt and initrd

Remove 'fdt_high' and 'initrd_high' environment variables (set to 0xFFFFFFFF)
from default environment which prevents relocation of FDT and initrd.
Rely on 'bootm_size' value instead to safely relocate kernel, device tree and
initrd.

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
4 years agocolibri_imx7: enable relocation of fdt and initrd
Igor Opaniuk [Fri, 27 Mar 2020 10:28:22 +0000 (12:28 +0200)]
colibri_imx7: enable relocation of fdt and initrd

Remove 'fdt_high' and 'initrd_high' environment variables (set to 0xFFFFFFFF)
from default environment which prevents relocation of FDT and initrd.
Rely on 'bootm_size' value instead to safely relocate kernel, device tree and
initrd.

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
4 years agocolibri_vf: enable relocation of fdt and initrd
Igor Opaniuk [Fri, 27 Mar 2020 10:28:21 +0000 (12:28 +0200)]
colibri_vf: enable relocation of fdt and initrd

Remove 'fdt_high' and 'initrd_high' environment variables (set to 0xFFFFFFFF)
from default environment which prevents relocation of FDT and initrd.
Rely on 'bootm_size' value instead to safely relocate kernel, device tree and
initrd.

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
4 years agoverdin-imx8mm: add nfsboot wrapper to env
Igor Opaniuk [Fri, 27 Mar 2020 10:28:20 +0000 (12:28 +0200)]
verdin-imx8mm: add nfsboot wrapper to env

Add nfsboot wrapper to env to boot Linux kernel from TFTP/NFS.

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
4 years agoimx8mm_evk: adjust dram size in case bl32 is used
Igor Opaniuk [Fri, 27 Mar 2020 10:28:19 +0000 (12:28 +0200)]
imx8mm_evk: adjust dram size in case bl32 is used

Adjust DRAM size in case BL32 secure payload is loaded (OP-TEE/Trusty),
so during MMU initialization U-Boot won't touch this mem area.

BL32 is loaded to the end of DRAM, bl32 payload size is read from
rom_pointer[1]. This relates to the issue described in
59efa6b52b("imx8m: Fix MMU table issue for OPTEE memory").

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
4 years agoverdin-imx8mm: adjust dram size in case bl32 is used
Igor Opaniuk [Fri, 27 Mar 2020 10:28:18 +0000 (12:28 +0200)]
verdin-imx8mm: adjust dram size in case bl32 is used

Adjust DRAM size in case BL32 secure payload is loaded (OP-TEE/Trusty),
so during MMU initialization U-Boot won't touch this mem area.

BL32 is loaded to the end of DRAM, bl32 payload size is read from
rom_pointer[1]. This relates to the issue described in
59efa6b52b("imx8m: Fix MMU table issue for OPTEE memory").

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
4 years agoimx8qxp_mek: Start with USDHC2 unpowered
Fabio Estevam [Wed, 15 Apr 2020 18:01:34 +0000 (15:01 -0300)]
imx8qxp_mek: Start with USDHC2 unpowered

After triggering a "reboot" command in Linux the following
hang in SPL is observed:

U-Boot SPL 2020.04 (Apr 15 2020 - 10:49:29 -0300)
Normal Boot
WDT:   Not found!
Trying to boot from MMC2_2
spl: mmc init failed with error: -70
SPL: failed to boot from all boot devices
### ERROR ### Please RESET the board ###

This error happens because the CMD_ERR bit is set in the IRQ status
register after booting from Linux.

To ensure a fresh start, force the VMMC supply to get unpowered first.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
4 years agoboard: tqc: tqma6_mba6: switch to device model
Michael Krummsdorf [Thu, 9 Apr 2020 13:21:42 +0000 (15:21 +0200)]
board: tqc: tqma6_mba6: switch to device model

Ethernet, usdhc2 and i2c1 interfaces are probed by dm drivers.
Therefor init functions in board file are not necessary.

Signed-off-by: Michael Krummsdorf <michael.krummsdorf@ew.tq-group.com>
4 years agoboard: tqc: tqma6: hw init code disabled for device model
Michael Krummsdorf [Thu, 9 Apr 2020 13:21:41 +0000 (15:21 +0200)]
board: tqc: tqma6: hw init code disabled for device model

Keep code for non-dm configuration of baseboard WRU4.
It cannot be upgraded to device model as
we have no suitable device tree for it.
These changes were not run-tested on WRU4,
only compile-tested.

Signed-off-by: Michael Krummsdorf <michael.krummsdorf@ew.tq-group.com>
4 years agoconfigs: tqma6x_mba6x: update default configs for device model
Michael Krummsdorf [Thu, 9 Apr 2020 13:21:40 +0000 (15:21 +0200)]
configs: tqma6x_mba6x: update default configs for device model

Fixes compilation for WRU4 board.

Signed-off-by: Michael Krummsdorf <michael.krummsdorf@ew.tq-group.com>
4 years agoboard: tqc: tqma6: mba6: apply default Kconfig for device model
Michael Krummsdorf [Thu, 9 Apr 2020 13:21:39 +0000 (15:21 +0200)]
board: tqc: tqma6: mba6: apply default Kconfig for device model

Signed-off-by: Michael Krummsdorf <michael.krummsdorf@ew.tq-group.com>
4 years agoarch: arm: tqma6: apply default Kconfig for device model
Michael Krummsdorf [Thu, 9 Apr 2020 13:21:38 +0000 (15:21 +0200)]
arch: arm: tqma6: apply default Kconfig for device model

Signed-off-by: Michael Krummsdorf <michael.krummsdorf@ew.tq-group.com>
4 years agoarm: dt: imx6qdl: add tqma6[qdl] som on mba6 mainboard
Michael Krummsdorf [Thu, 9 Apr 2020 13:21:37 +0000 (15:21 +0200)]
arm: dt: imx6qdl: add tqma6[qdl] som on mba6 mainboard

The device trees for TQMa6x SOM support variations in
- CPU type: imx6dl- or imx6q-
- MBa6 I2C bus access: -mba6a (i2c1) or -mba6b (i2c3)
  (plus the respective common/module include trees)

- USBH1 is directly connected to a hub
- USBOTG is connected to a separate connector
  and can act as host/device or full OTG port.

Signed-off-by: Michael Krummsdorf <michael.krummsdorf@ew.tq-group.com>
4 years agotqma6: resurrect support by supplying correct SYS_TEXT_BASE
Markus Niebel [Thu, 9 Apr 2020 13:21:36 +0000 (15:21 +0200)]
tqma6: resurrect support by supplying correct SYS_TEXT_BASE

reason: SYS_TEXT_BASE was moved to Kconfig. Give reasonable defaults
in board specific Kconfig.

Signed-off-by: Markus Niebel <Markus.Niebel@tq-group.com>
Signed-off-by: Michael Krummsdorf <michael.krummsdorf@ew.tq-group.com>
4 years agoarm: imx6: configure NoC on i.MX6DQP
Bernhard Messerklinger [Mon, 9 Mar 2020 09:55:34 +0000 (10:55 +0100)]
arm: imx6: configure NoC on i.MX6DQP

The i.MX6DP and i.MX6QP incorporate NoC interconnect logic
which needs to be configured in order to use external DDR memory.

This patch enables the SPL to configure the necessary registers
in accordance with the NXP engineering bulletin EB828.

Co-developed-by: Filip Brozović <fbrozovic@gmail.com>
Signed-off-by: Bernhard Messerklinger <bernhard.messerklinger@br-automation.com>
Signed-off-by: Filip Brozovic <fbrozovic@gmail.com>
4 years agomx6ulz_14x14_evk: Disable CONFIG_NET
Fabio Estevam [Mon, 3 Feb 2020 17:46:22 +0000 (14:46 -0300)]
mx6ulz_14x14_evk: Disable CONFIG_NET

Currently the following build warning is seen:

===================== 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. Failure to
update by the deadline may result in board removal.
See doc/driver-model/migration.rst for more info.
===================================================

Since the mx6ulz-evk board does not have networking support, explicitly
disable networking to avoid the board removal.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
4 years agomx6ullevk: Enable Ethernet support
Fabio Estevam [Mon, 3 Feb 2020 17:23:58 +0000 (14:23 -0300)]
mx6ullevk: Enable Ethernet support

Add Ethernet support using DM_ETH.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
4 years agomx6ul_evk: Remove FEC related board code
Fabio Estevam [Mon, 3 Feb 2020 16:09:23 +0000 (13:09 -0300)]
mx6ul_evk: Remove FEC related board code

mx6ul_evk uses DM_ETH, so there is no need to have board code
to setup the FEC IOMUX and to register the network ports via the
old board_eth_init() method.

Remove these FEC related pieces of code.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
4 years agomx6ul_evk: Move CONFIG_FEC_MXC to defconfig
Fabio Estevam [Mon, 3 Feb 2020 16:09:22 +0000 (13:09 -0300)]
mx6ul_evk: Move CONFIG_FEC_MXC to defconfig

CONFIG_FEC_MXC is supported in Kconfig, so it is preferred to
move it to defconfig file.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
4 years agomx7ulp: Only enable LDO if it is not already enabled
Fabio Estevam [Mon, 3 Feb 2020 12:01:09 +0000 (09:01 -0300)]
mx7ulp: Only enable LDO if it is not already enabled

LDO mode may be already enabled by the ROM and enabling it again
can cause U-Boot to hang.

Avoid this problem by only enabling LDO mode if it is initially disabled.

Reported-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
4 years agomx7ulp: Remove duplicated definitions
Fabio Estevam [Mon, 3 Feb 2020 12:01:08 +0000 (09:01 -0300)]
mx7ulp: Remove duplicated definitions

These PMC0 definitions are already defined in the beginning
of the file, so remove the duplication.

Reported-by: Stefano Babic <sbabic@denx.de>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
4 years agoata: sort ATA commands
Heinrich Schuchardt [Wed, 26 Feb 2020 06:12:33 +0000 (07:12 +0100)]
ata: sort ATA commands

Sort the ATA commands in include/libata.h by number.
Add a few more comments.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
4 years agoinclude/ata.h: remove invalid links
Heinrich Schuchardt [Wed, 26 Feb 2020 04:29:47 +0000 (05:29 +0100)]
include/ata.h: remove invalid links

Remove invalid URLs for "Information Technology - AT Attachment-3 Interface
(ATA-3)", point to ANSI X3.298-1997.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
4 years agoKconfig: fix typos in CMD_BEDBUG description
Heinrich Schuchardt [Tue, 25 Feb 2020 20:44:05 +0000 (21:44 +0100)]
Kconfig: fix typos in CMD_BEDBUG description

Fix documentation bug reported by 'make refcheckdocs'.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Patrick Delaunay <patrick.delaunay@st.com>
4 years agodoc: fix references to driver-model
Heinrich Schuchardt [Tue, 25 Feb 2020 20:35:39 +0000 (21:35 +0100)]
doc: fix references to driver-model

Fix some errors pointed out by 'make refcheckdocs'.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
4 years agoREADME: replace reference to boards.cfg
Heinrich Schuchardt [Mon, 24 Feb 2020 17:36:30 +0000 (18:36 +0100)]
README: replace reference to boards.cfg

boards.cfg is not delivered with the U-Boot source. So it is preferable to
look at configs/*_defconfig to identify available deconfigs.

Fix a typo.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
4 years agoimage: Add compressed Image parsing support in booti.
Atish Patra [Fri, 6 Mar 2020 00:24:23 +0000 (16:24 -0800)]
image: Add compressed Image parsing support in booti.

Add compressed Image parsing support so that booti can parse both
flat and compressed Image to boot Linux. Currently, it is difficult
to calculate a safe address for every board where the compressed
image can be decompressed. It is also not possible to figure out the
size of the compressed file as well. Thus, user need to set two
additional environment variables kernel_comp_addr_r and filesize to
make this work.

Following compression methods are supported for now.
lzma, lzo, bzip2, gzip.

lz4 support is not added as ARM64 kernel generates a lz4 compressed
image with legacy header which U-Boot doesn't know how to parse and
decompress.

Tested on HiFive Unleashed and Qemu for RISC-V.
Tested on Qemu for ARM64.

Signed-off-by: Atish Patra <atish.patra@wdc.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
[trini: Fix minor rST formatting problems]
Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agoimage: Add a common compression type detection function.
Atish Patra [Fri, 6 Mar 2020 00:24:22 +0000 (16:24 -0800)]
image: Add a common compression type detection function.

Currently, there is no method that can detect compression types
given a file. This is very useful where a compressed kernel image
is loaded directly to the memory.

Inspect initial few bytes to figure out compression type of the
image. It will be used in booti method for now but can be reused
any other function in future as well.

Signed-off-by: Atish Patra <atish.patra@wdc.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
4 years agolib: kconfig: Add option to set BZIP2 compression method
Atish Patra [Fri, 6 Mar 2020 00:24:21 +0000 (16:24 -0800)]
lib: kconfig: Add option to set BZIP2 compression method

There is no way to select BZIP2 compression method.
Add it under library/compression config where all other
compression related configs are present.

Signed-off-by: Atish Patra <atish.patra@wdc.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
4 years agocmd: mem: Add bitflip memory test to alternate mtest
Stefan Roese [Thu, 5 Mar 2020 06:21:32 +0000 (07:21 +0100)]
cmd: mem: Add bitflip memory test to alternate mtest

This additional bitflip memory test is inspired by the bitflip test
in memtester v4.3.0. It show some errors on some problematic GARDENA
MT7688 based boards. The other memory tests usually don't show any
errors here.

Signed-off-by: Stefan Roese <sr@denx.de>
4 years agocmd: mem: Use IS_ENABLED instead of alt_test variable
Stefan Roese [Thu, 5 Mar 2020 06:21:31 +0000 (07:21 +0100)]
cmd: mem: Use IS_ENABLED instead of alt_test variable

This patch uses the IS_ENABLED() macro to check, which mtest variant
is enabled.

Signed-off-by: Stefan Roese <sr@denx.de>