Clément Péron [Wed, 30 Mar 2022 11:49:30 +0000 (13:49 +0200)]
arm: imx: parse-container: add some missing end of line
Some printf() have strings that doesn't terminate with end of line
and make the output hard to read.
Signed-off-by: Clément Péron <peron.clem@gmail.com>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Angus Ainslie [Tue, 29 Mar 2022 14:02:40 +0000 (07:02 -0700)]
clk: imx8m: reduce rate table duplication
Re-factor the imx8m[nmpq] rate tables into the common pll1416x clock
driver.
43cdaa1567ad3 ("clk: imx8mm: Move 1443X/1416X PLL clock structure to common place")
Signed-off-by: Angus Ainslie <angus@akkea.ca>
Tested-by: Adam Ford <aford173@gmail.com> #imx8mm-beacon
Angus Ainslie [Tue, 29 Mar 2022 14:02:39 +0000 (07:02 -0700)]
clk: imx8mq: Add a clock driver for the imx8mq
This is a DM clock driver based off the imx8mm u-boot driver and the linux
kernel driver.
All of the PLLs and clocks are initialized so the subsystems below are
functional and tested.
1) USB host and peripheral
2) ECSPI
3) UART
4) I2C all busses
5) USDHC for eMMC support
6) USB storage
7) GPIO
8) DRAM
Signed-off-by: Angus Ainslie <angus@akkea.ca>
Acked-by: Sean Anderson <seanga2@gmail.com>
Angus Ainslie [Tue, 29 Mar 2022 14:02:38 +0000 (07:02 -0700)]
dt-bindings: imx8mq-clock: add mainline definitions
Sync the clock ids with the mainline kernel
077de6e1c9f ("clk: imx8mq: add PLL monitor output")
Signed-off-by: Angus Ainslie <angus@akkea.ca>
Reviewed-by: Marek Vasut <marex@denx.de>
Ye Li [Mon, 28 Mar 2022 09:14:07 +0000 (17:14 +0800)]
mtd: nand: mxs_nand_spl: Remove the page aligned access
The mxs_nand_spl driver can support to read from page unaligned offset,
so don't need to set bl_len to ask spl_load_simple_fit to handle
the page unaligned access.
Actually spl_load_simple_fit has two parts of reading:
spl_simple_fit_read and spl_load_fit_image.
The spl_load_fit_image can handle the page unaligned offset,
but the spl_simple_fit_read can't do it. spl_simple_fit_read requires
the FIT location at page aligned offset.
Hence, remove the nand_get_mtd overwrite function from mxs_nand_spl
to use page unaligned read by driver.
Signed-off-by: Ye Li <ye.li@nxp.com>
Tested-by: Tim Harvey <tharvey@gateworks.com> #gw_ventana
Tommaso Merciai [Sat, 26 Mar 2022 11:19:10 +0000 (12:19 +0100)]
configs: imx8mm_evk: add pwm backlight support
Enable support for backlight/pwm-imx driver
Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com>
Tommaso Merciai [Sat, 26 Mar 2022 11:19:09 +0000 (12:19 +0100)]
arm: dts: imx8mm_evk: add pwm1/backlight support
Add pwm1/backlight support nodes for imx8mm_evk board
Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com>
Tommaso Merciai [Sat, 26 Mar 2022 11:19:07 +0000 (12:19 +0100)]
driver: pwm: pwm-imx: introduce pwm_dm_imx_get_parms
Introduce pwm_dm_imx_get_parms, dm version of pwm_imx_get_parms.
This function get clock rate using clk dm api
Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com>
Tommaso Merciai [Sat, 26 Mar 2022 11:19:06 +0000 (12:19 +0100)]
driver: pwm: pwm-imx: get and enable per/ipg clock using dm
Get and enable ipg/per pwms clocks using dm api into imx_pwm_of_to_plat
and imx_pwm_probe driver function
Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com>
Tommaso Merciai [Sat, 26 Mar 2022 11:19:04 +0000 (12:19 +0100)]
clk: imx8mm: add pwm clocks support
Add clocks support for the PWM controllers. This is ported from
Linux v5.17-rc8.
Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com>
Tommaso Merciai [Sat, 26 Mar 2022 11:19:03 +0000 (12:19 +0100)]
arch: mach-imx: imx8m: add pwm_regs struct in imx-regs
Add pwm_regs struct for i.MX8MM SOC
Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com>
Tommaso Merciai [Sat, 26 Mar 2022 11:19:02 +0000 (12:19 +0100)]
arch: mach-imx: imx8m: add pwm ctrl registers fields defines
Add pwm control registers fields defines into imx-regs.h:
- prescaler
- dozeen
- waiten
- dbgen
- clksrc_ipg_high
- clksrc_ipg, en field
References:
- iMX8MMRM.pdf p 3884
Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com>
Marek Vasut [Fri, 25 Mar 2022 17:59:28 +0000 (18:59 +0100)]
ARM: imx: Decode ECSPI env location from i.MX8M ROMAPI tables
Decode ECSPI boot device in env_get_location() from i.MX8M ROMAPI tables.
This is necessary to correctly identify env is in SPI NOR when the system
boots from SPI NOR attached to ECSPI.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Adam Ford [Sat, 19 Mar 2022 15:45:16 +0000 (10:45 -0500)]
arm: imx: imx8mn_beacon: Remove unnecessary configs
Because the Beacon imx8mn board uses device tree
for MMC/SD and Ethernet, there is no need to have some of the
config options. It's handled by the device tree.
Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Adam Ford [Sat, 19 Mar 2022 15:45:15 +0000 (10:45 -0500)]
arm: imx: imx8mm_beacon: Remove unnecessary configs
Because the Beacon imx8mm board uses device tree
for MMC/SD and Ethernet, there is no need to have some of the
config options. It's handled by the device tree.
Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Ye Li [Fri, 18 Mar 2022 07:50:18 +0000 (15:50 +0800)]
imx8ulp: Disable SPL exception vector
Disable SPL exception vector which causes issue to ROM patch execution
when SPL calling ROM API.
Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Fabio Estevam [Tue, 15 Mar 2022 20:47:05 +0000 (17:47 -0300)]
tbs2910: Convert to DM_SERIAL
Conversion to DM_SERIAL is mandatory.
Select DM_SERIAL and add a imx6q-tbs2910-u-boot.dtsi file
that describes the nodes that require dm-pre-reloc, which allows
the DM model to configure the UART pinctrl early.
Remove the now unneeded board UART initialization.
Signed-off-by: Fabio Estevam <festevam@denx.de>
Tested-by: Soeren Moch <smoch@web.de>
Fabio Estevam [Mon, 14 Mar 2022 23:24:06 +0000 (20:24 -0300)]
warp7: Remove UART initialization code
With DM_SERIAL selected, it is no longer needed board code to
initialize the UART.
Describe the nodes that require dm-pre-reloc, which allows
the DM model to configure the UART pinctrl early.
Remove the now unneeded board UART initialization.
Signed-off-by: Fabio Estevam <festevam@denx.de>
Tim Harvey [Tue, 8 Mar 2022 00:24:04 +0000 (16:24 -0800)]
drivers: misc: add Gateworks System Controller driver
Add a driver for the Gateworks System Controller used on Gateworks boards
which provides a boot watchdog, power control, temperature monitor,
and voltage ADCs.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tim Harvey [Tue, 8 Mar 2022 00:24:03 +0000 (16:24 -0800)]
board: gateworks: gw_ventana: move ft_early_fixups out of common
DM is not used for the SPL and a generic DT is used in the SPL
which requires no fixups. Remove the call in the SPL and move the function
into the U-Boot code.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tim Harvey [Tue, 8 Mar 2022 00:24:02 +0000 (16:24 -0800)]
board: gateworks: gw_ventana: move GPIO config out of common
Move gpio configuration out of common and into u-boot code as it is
not used by the SPL.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tim Harvey [Tue, 8 Mar 2022 00:24:01 +0000 (16:24 -0800)]
board: gateworks: gw_ventana: move SPL uart config out of common
Since DM_SERIAL is used for U-Boot we no longer need legacy UART code in
common.c shared by the SPL and U-Boot. Move the legacy UART config to
the non-DM SPL.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tim Harvey [Tue, 8 Mar 2022 00:24:00 +0000 (16:24 -0800)]
board: gateworks: gw_ventana: convert to DM_I2C
convert to DM_I2C for U-Boot while leaving SPL legacy I2C:
- Move I2C config from common to SPL
- Move PMIC config from common to SPL (no need to re-configure pmic)
- add DM_I2C support to eeprom/gsc functions shared by SPL and U-Boot
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Ariel D'Alessandro [Fri, 4 Mar 2022 12:48:16 +0000 (09:48 -0300)]
arm: dts: imx8mn_var_som: Set atf-bl31 blob entry type
Configure binman ATF blob entry type to use the path from the BL31
environment variable, if defined.
Signed-off-by: Ariel D'Alessandro <ariel.dalessandro@collabora.com>
Heiko Thiery [Sat, 26 Feb 2022 09:44:21 +0000 (10:44 +0100)]
ARM: imx: imx8mn-evk: enable DM_SERIAL
U-Boot complains that CONFIG_SERIAL is not converted to CONFIG_DM_SERIAL
and gives a deadline before possibly removing the board. Migrate to
DM_SERIAL to fulfill the request.
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Marek Vasut [Sat, 26 Feb 2022 03:37:42 +0000 (04:37 +0100)]
imx8m: ddrphy_utils: Add 3732 MT/s mode
Add entry for 3732 MT/s mode of operation of the LPDDR4, in
which case the DDR PLL has to be configured in 933 MHz mode.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Marek Vasut [Sat, 26 Feb 2022 03:37:41 +0000 (04:37 +0100)]
ARM: imx: imx8m: Add 933 MHz PLL settings
Add settings for operating PLL at 933 MHz. This setting is useful in
case the LPDDR4 DRAM should operate at 1866 MHz or 3733 MT/s.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Marek Vasut [Sat, 26 Feb 2022 03:37:08 +0000 (04:37 +0100)]
pmic: pca9450: Add PCA9450C compatible string
Add DT compatible string for PCA9450C PMIC. This is a variant of the
PCA9450 PMIC with 6 A dual-phase buck regulator and 3 A buck regulator,
and is software-wise compatible with the PCA9450B. This variant of the
PCA9450 is designed for use as companion PMIC for i.MX8MP.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
Marek Vasut [Sat, 26 Feb 2022 03:36:37 +0000 (04:36 +0100)]
ARM: dts: net: dwc_eth_qos: Fix i.MX8MP compatible string
The correct compatible string for i.MX8MP variant of DWC EQoS MAC
is "nxp,imx8mp-dwmac-eqos", use it. Drop the two current users of
the current wrong compatible string to avoid breaking them.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@denx.de>
Cc: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Adam Ford [Wed, 23 Feb 2022 13:50:51 +0000 (07:50 -0600)]
imx: imx8mm/imx8mn_beacon: Remove redundant code
The Ethernet controller and PHY use the device tree info to
configure themselves, so it's not necessary to manually do it
in the board file. This permits the removal of a bunch of headers
as well.
Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Acked-by: Peng Fan <peng.fan@nxp.com>
Heiko Thiery [Wed, 23 Feb 2022 09:48:28 +0000 (10:48 +0100)]
ARM: imx: imx8mn-*-evk: add qca, disable-smarteee phy node
To be in sync with the linux devicetree add the disable-smarteee
property.
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
Tested-by: Marek Vasut <marex@denx.de> # 8MNANOD4-EVK
Heiko Thiery [Wed, 23 Feb 2022 09:48:26 +0000 (10:48 +0100)]
ARM: imx: imx8mn-*-evk: use reset-gpios in phy node
To be in sync with the linux devicetree change the 'phy-reset-gpios' in
the fec node to 'reset-gpios' in the phy node. The PHY reset will be
done by the eth-phy-uclass driver while probing the PHY. This is ok
since it is done before probing the fec.
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
Tested-by: Marek Vasut <marex@denx.de> # 8MNANOD4-EVK
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Heiko Thiery [Wed, 23 Feb 2022 08:10:29 +0000 (09:10 +0100)]
ARM: imx: imx8mn-*-evk: use DM settings for PHY configuration
With the correct settings described in the device-tree the PHY settings
in the board init are no longer required. The values are taken from the
linux device tree.
The PHY latency settings are derived from the phy-mode property and the
voltage seetings are done via the regulator.
Suggested-by: Michael Walle <michael@walle.cc>
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
Tested-by: Marek Vasut <marex@denx.de> # 8MNANOD4-EVK
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Angus Ainslie [Mon, 17 Jan 2022 14:18:46 +0000 (06:18 -0800)]
pinctrl: nxp: don't automatically select DEVRES
If we select DEVRES here then it breaks building an imx8m SPL without
DEVRES support.
Signed-off-by: Angus Ainslie <angus@akkea.ca>
Michael Trimarchi [Wed, 23 Mar 2022 16:52:17 +0000 (17:52 +0100)]
configs: imx6dl_mamoj_defconfig: Enable LTO on imx6dl_mamoj board
Enable LTO on mamoj to reduce SPL and uboot size. Tested with gcc
gcc-11.1.0
U-Boot 2022.04-rc4-00051-g17fc5facd0 (Mar 23 2022 - 16:43:43 +0100)
CPU: Freescale i.MX6DL rev1.3 996 MHz (running at 792 MHz)
CPU: Extended Commercial temperature grade (-20C to 105C) at 40C
Reset cause: POR
Model: BTicino i.MX6DL Mamoj board
DRAM: 512 MiB
Core: 29 devices, 12 uclasses, devicetree: separate
MMC: FSL_SDHC: 2
Loading Environment from MMC... OK
In: serial
Out: serial
Err: serial
Net:
Error: ethernet@2188000 address not set.
No ethernet found.
Tested-by: Raffaele RECALCATI <raffaele.recalcati@bticino.it>
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Gaurav Jain [Thu, 24 Mar 2022 06:20:38 +0000 (11:50 +0530)]
update CAAM MAINTAINER
updated CAAM driver files maintainer.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:37 +0000 (11:50 +0530)]
PPC: Enable Job ring driver model.
removed sec_init() call from board files.
sec is initialized based on job ring information processed
from device tree.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:36 +0000 (11:50 +0530)]
PPC: Add crypto node in device tree
device tree imported from linux kernel.
c500bee1c5b2 (tag: v5.14-rc4) Linux 5.14-rc4
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:35 +0000 (11:50 +0530)]
Layerscape: Enable Job ring driver model.
LS(1021/1012/1028/1043/1046/1088/2088), LX2160, LX2162
platforms are enabled with JR driver model.
removed sec_init() call from board files.
sec is initialized based on job ring information processed
from device tree.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
Reviewed-by: Michael Walle <michael@walle.cc>
Gaurav Jain [Thu, 24 Mar 2022 06:20:34 +0000 (11:50 +0530)]
Layerscape: Add crypto node in device tree
LS(1021/1012/1028/1043/1046/1088/2088), LX2160 - updated device tree
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:33 +0000 (11:50 +0530)]
crypto/fsl: i.MX8: Enable Job ring driver model.
i.MX8(QM/QXP) - added support for JR driver model.
sec is initialized based on job ring information processed
from device tree.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:32 +0000 (11:50 +0530)]
i.MX8: Add crypto node in device tree
i.MX8(QM/QXP) - updated device tree for supporting DM in SPL.
disabled use of JR1 in SPL and uboot, as JR1 is reserved
for SECO FW.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:31 +0000 (11:50 +0530)]
i.MX7ULP: Enable Job ring driver model.
added crypto node in device tree.
sec is initialized based on job ring information processed
from device tree.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:30 +0000 (11:50 +0530)]
i.MX7: Enable Job ring driver model.
i.MX7D - added support for JR driver model.
removed sec_init() call, sec is initialized based on
job ring information processed from device tree.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:29 +0000 (11:50 +0530)]
i.MX6: Enable Job ring driver model.
i.MX6,i.MX6SX,i.MX6UL - added support for JR driver model.
removed sec_init() call, sec is initialized based on
job ring information processed from device tree.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
Ye Li [Thu, 24 Mar 2022 06:20:28 +0000 (11:50 +0530)]
mx6sabre: Remove unnecessary SPL configs
Because we don't use SPL_DM on mx6sabresd and mx6sabreauto, so it is
unnecessary to have SPL DTB related configs and SPL_OF_CONTROL enabled.
Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Reviewed-by: Gaurav Jain <gaurav.jain@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:27 +0000 (11:50 +0530)]
crypto/fsl: i.MX8M: Enable Job ring driver model.
i.MX8MM/MN/MP/MQ - added support for JR driver model.
sec is initialized based on job ring information processed
from device tree.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:26 +0000 (11:50 +0530)]
i.MX8M: crypto: updated device tree for supporting DM in SPL
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
Gaurav Jain [Thu, 24 Mar 2022 06:20:25 +0000 (11:50 +0530)]
crypto/fsl: Add support for CAAM Job ring driver model
added device tree support for job ring driver.
sec is initialized based on job ring information processed
from device tree.
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Kshitiz Varshney [Thu, 7 Apr 2022 12:05:18 +0000 (14:05 +0200)]
LS1043ARDB, LS1046ARDB, LS1088ARDB: Enable SPL_OF_CONTROL in SECURE Boot defconfig
If enable SPL_DM without SPL_OF_CONTROL,
build errors "undefined reference to fdt_get_resource",
is coming in function `caam_jr_probe'.
Added SPL_OF_CONTROL to remove the error.
Signed-off-by: Kshitiz Varshney <kshitiz.varshney@nxp.com>
Tom Rini [Sun, 10 Apr 2022 15:21:39 +0000 (11:21 -0400)]
Merge tag 'efi-2022-07-rc1' of https://source.denx.de/u-boot/custodians/u-boot-efi
Pull request for efi-2022-07-rc1
Documentation:
* Describe how enable DM_SERIAL for a board
UEFI
* Preparatory patches for better integration of DM and UEFI
* Use sysreset after capsule updates instead of do_reset
* Allow to disable persisting non-volatile variables
Marek Vasut [Sun, 10 Apr 2022 04:46:52 +0000 (06:46 +0200)]
Revert "env: Load env when ENV_IS_NOWHERE is only location selected"
This reverts commit
8d61237edbf6314a701cf78da2c5893a73ff5438.
This commit broke environment on literally every board I have access
to, with this revert in place, environment works as it should again.
The problem I observe with this patch is that saved environment in
either SPI NOR or eMMC is never used, the system always falls back
to default environment. The 'saveenv' command does succeed, but then
after reset, the default env is again used.
Furthermore, the commit introduced duplicate code in env_init(), this:
"
if (!prio) {
gd->env_addr = (ulong)&default_environment[0];
gd->env_valid = ENV_INVALID;
return 0;
}
if (ret == -ENOENT) {
gd->env_addr = (ulong)&default_environment[0];
gd->env_valid = ENV_INVALID;
return 0;
}
"
Furthermore, the commit is missing DCO SoB line.
Also note that upstream does not support UltraZed EG board, so
this might have been a patch pulled from downstream which did
depend on some other downstream behavior.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Felix.Vietmeyer@jila.colorado.edu <felix.vietmeyer@jila.colorado.edu>
Cc: Tom Rini <trini@konsulko.com>
Tom Rini [Sun, 10 Apr 2022 15:19:14 +0000 (11:19 -0400)]
Merge branch '2022-04-08-gpio-updates'
- Add PCA957X GPIO support, enable GPIO hogging in SPL, add
gpio_request_by_line_name() for later use and add some pytests for
'gpio'
AKASHI Takahiro [Tue, 8 Mar 2022 11:36:46 +0000 (20:36 +0900)]
dm: add tag support
With dm-tag feature, any U-Boot subsystem is allowed to associate
arbitrary number of data with a particular udevice. This can been
see as expanding "struct udevice" without modifying the definition.
As a first user, UEFI subsystem makes use of tags to associate
an efi_disk object with a block device.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
AKASHI Takahiro [Tue, 8 Mar 2022 11:36:45 +0000 (20:36 +0900)]
virtio: call device_probe() in scanning
virtio_init() enumerates all the peripherals that are to be materialised
with udevices(UCLASS_VIRIO) and creates particular device instances
(UCLASS_BlK or whatever else) as children.
On the other hand, device_probe() won't be invoked against those resultant
udevices unlike other ordinary device drivers do in the driver model.
This is particularly inconvenient when we want to add "event notification"
callback so that we will be able to automatically create all efi_disk
objects in a later patch.
With this patch applied, "virtio scan" will work in a similar way
to "scsi rescan", "usb start" or others in term of 'probe' semantics.
I didn't add this change to virtio_init() itself because this function
may be called in board_init_r() (indirectly in board_late_init())
before UEFI subsustem is initialized.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
AKASHI Takahiro [Tue, 8 Mar 2022 11:36:44 +0000 (20:36 +0900)]
block: ide: call device_probe() after scanning
Every time an ide bus/port is scanned and a new device is detected,
we want to call device_probe() as it will give us a chance to run
additional post-processings for some purposes.
In particular, support for creating partitions on a device will be added.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
AKASHI Takahiro [Tue, 8 Mar 2022 11:36:43 +0000 (20:36 +0900)]
sata: call device_probe() after scanning
Every time a sata bus/port is scanned and a new device is detected,
we want to call device_probe() as it will give us a chance to run
additional post-processings for some purposes.
In particular, support for creating partitions on a device will be added.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
AKASHI Takahiro [Tue, 8 Mar 2022 11:36:42 +0000 (20:36 +0900)]
nvme: call device_probe() after scanning
Every time a nvme bus/port is scanned and a new device is detected,
we want to call device_probe() as it will give us a chance to run
additional post-processings for some purposes.
In particular, support for creating partitions on a device will be added.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
AKASHI Takahiro [Tue, 8 Mar 2022 11:36:41 +0000 (20:36 +0900)]
mmc: call device_probe() after scanning
Every time a mmc bus/port is scanned and a new device is detected,
we want to call device_probe() as it will give us a chance to run
additional post-processings for some purposes.
In particular, support for creating partitions on a device will be added.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
AKASHI Takahiro [Tue, 8 Mar 2022 11:36:40 +0000 (20:36 +0900)]
usb: storage: call device_probe() after scanning
Every time a usb bus/port is scanned and a new device is detected,
we want to call device_probe() as it will give us a chance to run
additional post-processings for some purposes.
In particular, support for creating partitions on a device will be added.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
AKASHI Takahiro [Tue, 8 Mar 2022 11:36:39 +0000 (20:36 +0900)]
scsi: call device_probe() after scanning
Every time a scsi bus/port is scanned and a new block device is detected,
we want to call device_probe() as it will give us a chance to run
additional post-processings for some purposes.
In particular, support for creating partitions on a device will be added.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Masami Hiramatsu [Mon, 21 Mar 2022 13:37:56 +0000 (22:37 +0900)]
efi_loader: Use sysreset instead of reset command
Use sysreset_walk_halt() directly from reset-after-capsule-on-disk
feature to reboot (cold reset) machine instead of using reset command
interface, since this is not a command.
Note that this will make CONFIG_EFI_CAPSULE_ON_DISK depending on
the CONFIG_SYSRESET.
Signed-off-by: Masami Hiramatsu <masami.hiramatsu@linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Masami Hiramatsu [Mon, 21 Mar 2022 13:37:45 +0000 (22:37 +0900)]
efi_loader: Make efi_load_capsule_drivers() available even if EFI_CAPSULE_ON_DISK=n
Make efi_load_capsule_drivers() available even if EFI_CAPSULE_ON_DISK
is disabled because the caller (efi_init_obj_list()) expects it only
relays on EFI_HAVE_CAPSULE_SUPPORT.
Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Masami Hiramatsu <masami.hiramatsu@linaro.org>
Masami Hiramatsu [Mon, 21 Mar 2022 13:37:35 +0000 (22:37 +0900)]
cmd: efidebug: Disable 'capsule disk-update' when CONFIG_EFI_CAPSULE_ON_DISK=n
Disable 'capsule disk-update' option for the efidebug command
when CONFIC_EFI_CAPSULE_ON_DISK is disabled, because this option
is available only when the EFI capsule update on disk is enabled.
Signed-off-by: Masami Hiramatsu <masami.hiramatsu@linaro.org>
Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Tom Saeger [Tue, 22 Mar 2022 21:21:10 +0000 (15:21 -0600)]
efi_loader: optional persistence of variables
Since
be66b89da306 ("efi_loader: configuration of variables store")
the choice of EFI_VARIABLE_FILE_STORE or EFI_MM_COMM_TEE
is mutually-exclusive, however efi_var_to_file also allows
for "neither". Provide an additional Kconfig option.
Signed-off-by: Tom Saeger <tom.saeger@oracle.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Pali Rohár [Wed, 6 Apr 2022 09:35:46 +0000 (11:35 +0200)]
doc: distro: Update list of all support boot types
Add HOST, UBIFS.
Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Heinrich Schuchardt [Tue, 5 Apr 2022 14:14:27 +0000 (16:14 +0200)]
doc: debug UART for RISC-V QEMU virt machine
Provide settings for enabling the debug UART of the virt machine on
RISC-V QEMU.
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Heinrich Schuchardt [Sat, 2 Apr 2022 05:16:56 +0000 (07:16 +0200)]
doc: correct bootefi.rst
* add link to booti man-page
* correct link description for efidebug command
* correct punctuation
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Simon Glass [Wed, 16 Mar 2022 03:03:20 +0000 (21:03 -0600)]
dm: Add docs to explain how to enable DM_SERIAL for a board
This is an attempt to cover the common cases found when enabling driver
model for serial on a new board.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Luca Ellero [Tue, 22 Mar 2022 14:38:36 +0000 (15:38 +0100)]
gpio: pca953x_gpio: add PCA957X support
Take as reference Linux kernel code:
drivers/gpio/gpio-pca953x.c
Signed-off-by: Luca Ellero <l.ellero@asem.it>
Reviewed-by: Simon Glass <sjg@chromium.org>
Eddie James [Mon, 7 Feb 2022 23:09:01 +0000 (17:09 -0600)]
gpio: Enable hogging support in SPL
Use the CONFIG macros to conditionally build the GPIO hogging support in
either the SPL or U-Boot, or both, depending on the configuration. Also
call the GPIO hog probe function in the common SPL board initialization
as an equivalent to adding it to the U-Boot init sequence functions.
Signed-off-by: Eddie James <eajames@linux.ibm.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Andrew Jeffery [Mon, 31 Jan 2022 03:24:05 +0000 (13:54 +1030)]
gpio: Add gpio_request_by_line_name()
Add support for the upstream gpio-line-names property already described
in the common GPIO binding document[1]. The ability to search for a line
name allows boards to lift the implementation of common GPIO behaviours
away from specific line indexes on a GPIO controller.
[1] https://github.com/devicetree-org/dt-schema/blob/
3c35bfee83c2e38e2ae7af5f83eb89ca94a521e8/dtschema/schemas/gpio/gpio.yaml#L17
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Adarsh Babu Kalepalli [Mon, 31 May 2021 10:53:51 +0000 (16:23 +0530)]
test/py:Update python tests for ‘gpio’ cmd
Generic Python Test cases are developed to verfiy 'gpio' command.
Signed-off-by: Adarsh Babu Kalepalli <opensource.kab@gmail.com>
Tom Rini [Fri, 8 Apr 2022 17:36:51 +0000 (13:36 -0400)]
configs: Resync with savedefconfig
Rsync all defconfig files using moveconfig.py
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Fri, 8 Apr 2022 17:33:14 +0000 (13:33 -0400)]
Merge branch '2022-04-08-Kconfig-updates-and-dead-code-removal'
- Migration of more symbols from board config.h files to defconfig
- Remove unused network drivers
Tom Rini [Thu, 31 Mar 2022 17:46:53 +0000 (13:46 -0400)]
arm: Remove unused ep93xx code
There are no platforms for this architecture anymore, remove unused
code.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Thu, 31 Mar 2022 17:46:52 +0000 (13:46 -0400)]
net: Remove uli526x driver
This driver is not enabled by any board and not converted to DM_ETH.
Remove.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Thu, 31 Mar 2022 17:46:51 +0000 (13:46 -0400)]
net: Remove ns8382x driver
This driver is not enabled by any board and not converted to DM_ETH.
Remove.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Thu, 31 Mar 2022 17:46:50 +0000 (13:46 -0400)]
net: Remove natsemi driver
This driver is not enabled by any board and not converted to DM_ETH.
Remove.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Thu, 31 Mar 2022 17:46:49 +0000 (13:46 -0400)]
net: Remove lan91c96 driver
This driver is not enabled by any board and not converted to DM_ETH.
Remove.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Thu, 31 Mar 2022 17:46:48 +0000 (13:46 -0400)]
net: Remove ftmac110 driver
This driver is not enabled by any board and not converted to DM_ETH.
Remove.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Thu, 31 Mar 2022 17:46:47 +0000 (13:46 -0400)]
net: Remove dnet driver
This driver is not enabled by any board and not converted to DM_ETH.
Remove.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Thu, 31 Mar 2022 17:46:46 +0000 (13:46 -0400)]
net: Remove cs8900 driver
This driver is not enabled by any board and not converted to DM_ETH.
Remove.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Thu, 31 Mar 2022 17:46:45 +0000 (13:46 -0400)]
net: Remove ax88180 driver
This driver is not enabled by any board and not converted to DM_ETH.
Remove.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Thu, 31 Mar 2022 17:46:44 +0000 (13:46 -0400)]
net: Remove armada100_fec driver
This driver is not enabled by any board and not converted to DM_ETH.
Remove.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:35 +0000 (18:07 -0400)]
arm: fsl-layerscape: Migrate more DP-DDR options to Kconfig
Based on current usage, migrate a number of DP-DDR related options to
Kconfig.
Cc: Priyanka Jain <priyanka.jain@nxp.com>
Cc: Rajesh Bhagat <rajesh.bhagat@nxp.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:34 +0000 (18:07 -0400)]
siemens-am33x-common: Drop CONFIG_DMA_COHERENT*
These values are not used in the code, remove them.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:33 +0000 (18:07 -0400)]
m53menlo: Drop CONFIG_DISCOVER_PHY
This is not used in code, drop.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:32 +0000 (18:07 -0400)]
Convert CONFIG_FSL_QIXIS et al to Kconfig
This converts the following to Kconfig:
CONFIG_FSL_QIXIS
CONFIG_QIXIS_I2C_ACCESS
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:31 +0000 (18:07 -0400)]
Convert CONFIG_DIMM_SLOTS_PER_CTLR to Kconfig
This converts the following to Kconfig:
CONFIG_DIMM_SLOTS_PER_CTLR
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:30 +0000 (18:07 -0400)]
galileo: Remove CONFIG_DESIGNWARE_ETH reference
This platform has CONFIG_ETH_DESIGNWARE set already, which is the
correct value for the driver in question. Remove this incorrect line.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:29 +0000 (18:07 -0400)]
powerpc: mpc83xx: Migrate DEFAULT_IMMR to Kconfig
As no platforms override this value, set it for all mpc83xx platforms.
Cc: Mario Six <mario.six@gdsys.cc>
Cc: Wolfgang Denk <wd@denx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:28 +0000 (18:07 -0400)]
nds32: Migrate CONFIG_DEBUG_LED to Kconfig
Move this value to the board Kconfig file.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:27 +0000 (18:07 -0400)]
ls1021atwr: Use DEBUG and not CONFIG_DEBUG
We use 'DEBUG' and not 'CONFIG_DEBUG' tree-wide for debug code that is
left in, and not wrapped by some other regular debugging type print
macro.
Cc: Alison Wang <alison.wang@nxp.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:26 +0000 (18:07 -0400)]
microblaze: Migrate DCACHE/ICACHE to Kconfig
Move these two options to the arch Kconfig file.
Cc: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
Tom Rini [Wed, 30 Mar 2022 22:07:25 +0000 (18:07 -0400)]
tegra: Drop CONFIG_CHROMEOS_EXTRA_ENV_SETTINGS
This is not currently set by any boards, so drop.
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:24 +0000 (18:07 -0400)]
controlcenterdc: Migrate CUSTOMER_BOARD_SUPPORT to Kconfig
This symbol is only possibly useful on some mvebu platforms, so move the
symbol there and select it for the only current user.
Cc: Mario Six <mario.six@gdsys.cc>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Stefan Roese <sr@denx.de>
Tom Rini [Wed, 30 Mar 2022 22:07:23 +0000 (18:07 -0400)]
spi: cadence_qspi: Migrate CONFIG_CQSPI_REF_CLK to Kconfig
This is a little tricky since SoCFPGA has code to determine this as
runtime. Introduce a guard variable for platforms to select if they
have a static value to use. Then for ARCH_SOCFPGA, call
cm_get_qspi_controller_clk_hz() and otherwise continue the previous
behavior.
Cc: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:22 +0000 (18:07 -0400)]
Convert CONFIG_SH_SCIF_CLK_FREQ to Kconfig
This converts the following to Kconfig:
CONFIG_SH_SCIF_CLK_FREQ
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 30 Mar 2022 22:07:21 +0000 (18:07 -0400)]
Convert CONFIG_CONS_SCIF0 et al to Kconfig
This converts the following to Kconfig:
CONFIG_CONS_SCIF0
CONFIG_CONS_SCIF1
CONFIG_CONS_SCIF2
CONFIG_CONS_SCIF4
CONFIG_CONS_SCIFA0
Signed-off-by: Tom Rini <trini@konsulko.com>