platform/kernel/u-boot.git
22 months agoconfigs: Resync with savedefconfig
Tom Rini [Sat, 19 Nov 2022 23:45:41 +0000 (18:45 -0500)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agonet: ftmac100: Remove non-DM_ETH code
Tom Rini [Sat, 19 Nov 2022 23:45:40 +0000 (18:45 -0500)]
net: ftmac100: Remove non-DM_ETH code

At this point all users of this driver enable DM_ETH, so remove the
legacy code paths.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
22 months agoConvert CONFIG_VSC7385_ENET et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:39 +0000 (18:45 -0500)]
Convert CONFIG_VSC7385_ENET et al to Kconfig

This converts the following to Kconfig:
   CONFIG_VSC7385_ENET
   CONFIG_VSC9953

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_USB_GADGET_AT91 to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:38 +0000 (18:45 -0500)]
Convert CONFIG_USB_GADGET_AT91 to Kconfig

This converts the following to Kconfig:
   CONFIG_USB_GADGET_AT91

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoNokia RX-51: Migrate legacy USB device options to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:37 +0000 (18:45 -0500)]
Nokia RX-51: Migrate legacy USB device options to Kconfig

Move a number of legacy USB UDC options to Kconfig, over from the config
header.

Cc: Pali Rohár <pali@kernel.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_TEGRA_CLOCK_SCALING et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:36 +0000 (18:45 -0500)]
Convert CONFIG_TEGRA_CLOCK_SCALING et al to Kconfig

This converts the following to Kconfig:
   CONFIG_TEGRA_CLOCK_SCALING
   CONFIG_TEGRA_LP0
   CONFIG_TEGRA_PMU

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_TPS6586X_POWER et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:35 +0000 (18:45 -0500)]
Convert CONFIG_TPS6586X_POWER et al to Kconfig

This converts the following to Kconfig:
   CONFIG_TPS6586X_POWER
   CONFIG_TWL6030_POWER

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_SPD_EEPROM to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:34 +0000 (18:45 -0500)]
Convert CONFIG_SPD_EEPROM to Kconfig

This converts the following to Kconfig:
   CONFIG_SPD_EEPROM

Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_SMSC_LPC47M et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:33 +0000 (18:45 -0500)]
Convert CONFIG_SMSC_LPC47M et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SMSC_LPC47M
   CONFIG_SMSC_SIO1007

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_SH_GPIO_PFC et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:32 +0000 (18:45 -0500)]
Convert CONFIG_SH_GPIO_PFC et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SH_GPIO_PFC
   CONFIG_TMU_TIMER

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_RTC_DS1337 et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:31 +0000 (18:45 -0500)]
Convert CONFIG_RTC_DS1337 et al to Kconfig

This converts the following to Kconfig:
   CONFIG_RTC_DS1337
   CONFIG_RTC_DS1337_NOOSC
   CONFIG_RTC_DS1338
   CONFIG_RTC_DS1374
   CONFIG_RTC_DS3231
   CONFIG_RTC_MC13XXX
   CONFIG_RTC_MXS
   CONFIG_RTC_PT7C4338

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_PCA953X to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:30 +0000 (18:45 -0500)]
Convert CONFIG_PCA953X to Kconfig

This converts the following to Kconfig:
   CONFIG_PCA953X

Cc: Uri Mashiach <uri.mashiach@compulab.co.il>
Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_NAND_KMETER1 et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:29 +0000 (18:45 -0500)]
Convert CONFIG_NAND_KMETER1 et al to Kconfig

This converts the following to Kconfig:
   CONFIG_NAND_ECC_BCH
   CONFIG_NAND_KIRKWOOD
   CONFIG_NAND_KMETER1

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_MXS_OCOTP to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:28 +0000 (18:45 -0500)]
Convert CONFIG_MXS_OCOTP to Kconfig

This converts the following to Kconfig:
   CONFIG_MXS_OCOTP

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoarm: Remove unused mx27 code
Tom Rini [Sat, 19 Nov 2022 23:45:27 +0000 (18:45 -0500)]
arm: Remove unused mx27 code

We no longer have any i.MX27 platforms, remove the remaining support
code.

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoarm: samsung: Move CONFIG_MISC_COMMON to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:26 +0000 (18:45 -0500)]
arm: samsung: Move CONFIG_MISC_COMMON to Kconfig

This option controls using board/samsung/common/misc.c, so add a Kconfig
file there as well and select it from the boards which use this
functionality.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Minkyu Kang <mk7.kang@samsung.com>
22 months agoarm: ls102xa: Migrate LS102XA_STREAM_ID
Tom Rini [Sat, 19 Nov 2022 23:45:25 +0000 (18:45 -0500)]
arm: ls102xa: Migrate LS102XA_STREAM_ID

This symbol appears to be globally used in the architecture, select it.

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoarm: lpc32xx: Remove unused hsuart driver
Tom Rini [Sat, 19 Nov 2022 23:45:24 +0000 (18:45 -0500)]
arm: lpc32xx: Remove unused hsuart driver

This driver is not enabled in any config currently, remove it.

Cc: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agosandbox: Move CONFIG_IO_TRACE to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:23 +0000 (18:45 -0500)]
sandbox: Move CONFIG_IO_TRACE to Kconfig

This is only used on sandbox, so select it there.

Cc: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_IOMUX_SHARE_CONF_REG et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:22 +0000 (18:45 -0500)]
Convert CONFIG_IOMUX_SHARE_CONF_REG et al to Kconfig

This converts the following to Kconfig:
   CONFIG_IOMUX_LPSR
   CONFIG_IOMUX_SHARE_CONF_REG

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_IODELAY_RECALIBRATION to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:21 +0000 (18:45 -0500)]
Convert CONFIG_IODELAY_RECALIBRATION to Kconfig

This converts the following to Kconfig:
   CONFIG_IODELAY_RECALIBRATION

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agompc8548cds: Migrate CONFIG_INTERRUPTS to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:20 +0000 (18:45 -0500)]
mpc8548cds: Migrate CONFIG_INTERRUPTS to Kconfig

Only this platform sets this option, define it in the board Kconfig
file.

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_IMX_VIDEO_SKIP et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:19 +0000 (18:45 -0500)]
Convert CONFIG_IMX_VIDEO_SKIP et al to Kconfig

This converts the following to Kconfig:
   CONFIG_IMX_VIDEO_SKIP
   CONFIG_IMX_HDMI

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agopwm: imx: Remove unused references to CONFIG_IMX6_PWM_PER_CLK
Tom Rini [Sat, 19 Nov 2022 23:45:18 +0000 (18:45 -0500)]
pwm: imx: Remove unused references to CONFIG_IMX6_PWM_PER_CLK

On platforms that use DM_PWM, we do not need to define this value
anymore, so remove it from config files.

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoarm920t: Remove unused imx code
Tom Rini [Sat, 19 Nov 2022 23:45:17 +0000 (18:45 -0500)]
arm920t: Remove unused imx code

This code is currently unused, remove it.

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_HWCONFIG to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:16 +0000 (18:45 -0500)]
Convert CONFIG_HWCONFIG to Kconfig

This converts the following to Kconfig:
   CONFIG_HWCONFIG

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_POWER_LTC3676 et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:15 +0000 (18:45 -0500)]
Convert CONFIG_POWER_LTC3676 et al to Kconfig

This converts the following to Kconfig:
   CONFIG_POWER_FSL
   CONFIG_POWER_FSL_MC13892
   CONFIG_POWER_HI6553
   CONFIG_POWER_LTC3676
   CONFIG_POWER_PFUZE100
   CONFIG_POWER_PFUZE3000
   CONFIG_POWER_SPI
   CONFIG_POWER_TPS65090_EC
   CONFIG_POWER_TPS65218
   CONFIG_POWER_TPS65910

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_HIKEY_GPIO et al to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:14 +0000 (18:45 -0500)]
Convert CONFIG_HIKEY_GPIO et al to Kconfig

This converts the following to Kconfig:
   CONFIG_HIKEY_GPIO
   CONFIG_TCA642X

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_FSL_SERDES to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:13 +0000 (18:45 -0500)]
Convert CONFIG_FSL_SERDES to Kconfig

This converts the following to Kconfig:
   CONFIG_FSL_SERDES

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_FSL_LBC to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:12 +0000 (18:45 -0500)]
Convert CONFIG_FSL_LBC to Kconfig

This converts the following to Kconfig:
   CONFIG_FSL_LBC

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_FSL_IIM to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:11 +0000 (18:45 -0500)]
Convert CONFIG_FSL_IIM to Kconfig

This converts the following to Kconfig:
   CONFIG_FSL_IIM

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_FSL_DEVICE_DISABLE to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:10 +0000 (18:45 -0500)]
Convert CONFIG_FSL_DEVICE_DISABLE to Kconfig

This converts the following to Kconfig:
   CONFIG_FSL_DEVICE_DISABLE

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoConvert CONFIG_FSL_CADMUS to Kconfig
Tom Rini [Sat, 19 Nov 2022 23:45:09 +0000 (18:45 -0500)]
Convert CONFIG_FSL_CADMUS to Kconfig

This converts the following to Kconfig:
   CONFIG_FSL_CADMUS

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agopower: pmic: Guard non-DM_PMIC drivers with a check for POWER_LEGACY
Tom Rini [Sat, 19 Nov 2022 23:45:08 +0000 (18:45 -0500)]
power: pmic: Guard non-DM_PMIC drivers with a check for POWER_LEGACY

As we have more legacy PMIC drivers to move to Kconfig, guard them all
with POWER_LEGACY or SPL_POWER_LEGACY. Do the same kind of check for
building the drivers too. This also means that we need to resort the
list slightly in the Makefile.

Cc: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoglobal: Move remaining CONFIG_SYS_* to CFG_SYS_*
Tom Rini [Wed, 16 Nov 2022 18:10:41 +0000 (13:10 -0500)]
global: Move remaining CONFIG_SYS_* to CFG_SYS_*

The rest of the unmigrated CONFIG symbols in the CONFIG_SYS namespace do
not easily transition to Kconfig. In many cases they likely should come
from the device tree instead. Move these out of CONFIG namespace and in
to CFG namespace.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoglobal: Move remaining CONFIG_*SRIO_* to CFG_*
Tom Rini [Wed, 16 Nov 2022 18:10:40 +0000 (13:10 -0500)]
global: Move remaining CONFIG_*SRIO_* to CFG_*

The rest of the unmigrated CONFIG symbols in the SRIO namespace do not
easily transition to Kconfig. In many cases they likely should come from
the device tree instead. Move these out of CONFIG namespace and in to
CFG namespace.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_SRIO et al to Kconfig
Tom Rini [Wed, 16 Nov 2022 18:10:39 +0000 (13:10 -0500)]
Convert CONFIG_SYS_SRIO et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SRIO1
   CONFIG_SRIO2
   CONFIG_SRIO_PCIE_BOOT_MASTER
   CONFIG_SYS_SRIO

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_TIMER_COUNTS_DOWN to Kconfig
Tom Rini [Wed, 16 Nov 2022 18:10:38 +0000 (13:10 -0500)]
Convert CONFIG_SYS_TIMER_COUNTS_DOWN to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_TIMER_COUNTS_DOWN

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoglobal: Move remaining CONFIG_SYS_SDRAM_* to CFG_SYS_SDRAM_*
Tom Rini [Wed, 16 Nov 2022 18:10:37 +0000 (13:10 -0500)]
global: Move remaining CONFIG_SYS_SDRAM_* to CFG_SYS_SDRAM_*

The rest of the unmigrated CONFIG symbols in the CONFIG_SYS_SDRAM
namespace do not easily transition to Kconfig. In many cases they likely
should come from the device tree instead. Move these out of CONFIG
namespace and in to CFG namespace.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoimx6/imx7: Remove now empty imx6_spl.h and imx7_spl.h
Tom Rini [Wed, 16 Nov 2022 18:10:36 +0000 (13:10 -0500)]
imx6/imx7: Remove now empty imx6_spl.h and imx7_spl.h

There are now no flags being set in these files, so remove them.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agospl: Migrate SYS_SATA_FAT_BOOT_PARTITION to Kconfig
Tom Rini [Wed, 16 Nov 2022 18:10:35 +0000 (13:10 -0500)]
spl: Migrate SYS_SATA_FAT_BOOT_PARTITION to Kconfig

This moves SYS_SATA_FAT_BOOT_PARTITION to Kconfig and enforces the
current default via Kconfig rather than C code.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_PMAN et al to Kconfig
Tom Rini [Wed, 16 Nov 2022 18:10:34 +0000 (13:10 -0500)]
Convert CONFIG_SYS_PMAN et al to Kconfig

This converts the following to Kconfig:
   CONFIG_NOBQFMAN
   CONFIG_SYS_DPAA_DCE
   CONFIG_SYS_DPAA_FMAN
   CONFIG_SYS_DPAA_PME
   CONFIG_SYS_DPAA_RMAN
   CONFIG_SYS_PMAN

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoglobal: Move remaining CONFIG_SYS_PCI* to CFG_SYS_PCI*
Tom Rini [Wed, 16 Nov 2022 18:10:33 +0000 (13:10 -0500)]
global: Move remaining CONFIG_SYS_PCI* to CFG_SYS_PCI*

The rest of the unmigrated CONFIG symbols in the CONFIG_SYS_PCI and
CONFIG_SYS_PCIE namespace do not easily transition to Kconfig. In many
cases they likely should come from the device tree instead. Move these
out of CONFIG namespace and in to CFG namespace.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_OMAP_ABE_SYSCK to Kconfig
Tom Rini [Wed, 16 Nov 2022 18:10:32 +0000 (13:10 -0500)]
Convert CONFIG_SYS_OMAP_ABE_SYSCK to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_OMAP_ABE_SYSCK

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoRemove unused symbols
Tom Rini [Wed, 16 Nov 2022 18:10:31 +0000 (13:10 -0500)]
Remove unused symbols

This commit removes the following unused symbols:
   CONFIG_SYS_NVRAM_BASE_ADDR
   CONFIG_SYS_NVRAM_SIZE
   CONFIG_SYS_PAXE_BASE
   CONFIG_SYS_PCCNT
   CONFIG_SYS_PCDAT
   CONFIG_SYS_PCDDR
   CONFIG_SYS_PCI1_ADDR
   CONFIG_SYS_PCI2_ADDR
   CONFIG_SYS_PCI1_IO_BUS
   CONFIG_SYS_PCI1_IO_SIZE
   CONFIG_SYS_PCI1_MEM_BUS
   CONFIG_SYS_PCI1_MEM_SIZE
   CONFIG_SYS_PCIE3_ADDR
   CONFIG_SYS_PCIE4_ADDR
   CONFIG_SYS_PCIE3_IO_PHYS
   CONFIG_SYS_PCIE3_IO_VIRT
   CONFIG_SYS_PCIE4_IO_PHYS
   CONFIG_SYS_PCIE4_IO_VIRT
   CONFIG_SYS_PLL_SETTLING_TIME
   CONFIG_SYS_QMAN_CENA_BASE
   CONFIG_SYS_QMAN_SP_CENA_SIZE
   CONFIG_SYS_RCAR_I2C0_BASE
   CONFIG_SYS_RCAR_I2C1_BASE
   CONFIG_SYS_RCAR_I2C2_BASE
   CONFIG_SYS_RCAR_I2C3_BASE
   CONFIG_SYS_SATA
   CONFIG_SYS_SDRAM_BASE2
   CONFIG_SYS_SGMII_REFCLK_MHZ
   CONFIG_SYS_SGMII_LINERATE_MHZ
   CONFIG_SYS_SGMII_RATESCALE
   CONFIG_SYS_SH_SDHI0_BASE
   CONFIG_SYS_SH_SDHI0_BASE
   CONFIG_SYS_SH_SDHI1_BASE
   CONFIG_SYS_SH_SDHI2_BASE
   CONFIG_SYS_SH_SDHI3_BASE
   CONFIG_SYS_SPI_ST_ENABLE_WP_PIN
   CONFIG_SYS_SPI_U_BOOT_SIZE
   CONFIG_SYS_VCXK_ACKNOWLEDGE_DDR
   CONFIG_SYS_VCXK_ACKNOWLEDGE_PIN
   CONFIG_SYS_VCXK_ACKNOWLEDGE_PORT
   CONFIG_SYS_VCXK_BASE
   CONFIG_SYS_VCXK_DEFAULT_LINEALIGN
   CONFIG_SYS_VCXK_DOUBLEBUFFERED
   CONFIG_SYS_VCXK_ENABLE_DDR
   CONFIG_SYS_VCXK_ENABLE_PIN
   CONFIG_SYS_VCXK_ENABLE_PORT
   CONFIG_SYS_VCXK_INVERT_DDR
   CONFIG_SYS_VCXK_INVERT_PIN
   CONFIG_SYS_VCXK_INVERT_PORT
   CONFIG_SYS_VCXK_REQUEST_DDR
   CONFIG_SYS_VCXK_REQUEST_PIN
   CONFIG_SYS_VCXK_REQUEST_PORT
   CONFIG_SYS_VSC7385_BR_PRELIM
   CONFIG_SYS_VSC7385_OR_PRELIM

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agortc: Remove unused drivers
Tom Rini [Wed, 16 Nov 2022 18:10:30 +0000 (13:10 -0500)]
rtc: Remove unused drivers

These RTC drivers are currently unused and reference other unused CONFIG
variables, so remove them.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoglobal: Move remaining CONFIG_SYS_NUM_* to CFG_SYS_NUM_*
Tom Rini [Wed, 16 Nov 2022 18:10:29 +0000 (13:10 -0500)]
global: Move remaining CONFIG_SYS_NUM_* to CFG_SYS_NUM_*

The rest of the unmigrated CONFIG symbols in the CONFIG_SYS_NUM
namespace do not easily transition to Kconfig. In many cases they likely
should come from the device tree instead. Move these out of CONFIG
namespace and in to CFG namespace.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoglobal: Move remaining CONFIG_SYS_NS16550_* to CFG_SYS_NS16550_*
Tom Rini [Wed, 16 Nov 2022 18:10:28 +0000 (13:10 -0500)]
global: Move remaining CONFIG_SYS_NS16550_* to CFG_SYS_NS16550_*

The rest of the unmigrated CONFIG symbols in the CONFIG_SYS_NS16550
namespace do not easily transition to Kconfig. In many cases they likely
should come from the device tree instead. Move these out of CONFIG
namespace and in to CFG namespace.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_NS16550_MEM32 et al to Kconfig
Tom Rini [Sun, 4 Dec 2022 14:39:03 +0000 (09:39 -0500)]
Convert CONFIG_SYS_NS16550_MEM32 et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SPL_NS16550_MIN_FUNCTIONS
   CONFIG_SYS_NS16550_MEM32
   CONFIG_SYS_NS16550_PORT_MAPPED
   CONFIG_SYS_NS16550_REG_SIZE
   CONFIG_SYS_NS16550_SERIAL

To do this we also introduce CONFIG_SPL_SYS_NS16550_SERIAL so that
platforms can enable the legacy driver here for SPL.

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agopowerpc: Rename CONFIG_NS16550_MIN_FUNCTIONS
Tom Rini [Wed, 16 Nov 2022 18:10:26 +0000 (13:10 -0500)]
powerpc: Rename CONFIG_NS16550_MIN_FUNCTIONS

This symbol is specific to the PowerPC SPL implementation, so rename
this to reflect that it's in SPL and used / tested there, so that we can
then safely migrate it to Kconfig.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoglobal: Move remaining CONFIG_SYS_NOR_* to CFG_SYS_NOR_*
Tom Rini [Wed, 16 Nov 2022 18:10:25 +0000 (13:10 -0500)]
global: Move remaining CONFIG_SYS_NOR_* to CFG_SYS_NOR_*

The rest of the unmigrated CONFIG symbols in the CONFIG_SYS_NOR
namespace do not easily transition to Kconfig. In many cases they likely
should come from the device tree instead. Move these out of CONFIG
namespace and in to CFG namespace.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoglobal: Move remaining CONFIG_SYS_NAND_* to CFG_SYS_NAND_*
Tom Rini [Sat, 12 Nov 2022 22:36:51 +0000 (17:36 -0500)]
global: Move remaining CONFIG_SYS_NAND_* to CFG_SYS_NAND_*

The rest of the unmigrated CONFIG symbols in the CONFIG_SYS_NAND
namespace do not easily transition to Kconfig. In many cases they likely
should come from the device tree instead. Move these out of CONFIG
namespace and in to CFG namespace.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_NAND_SIZE to Kconfig
Tom Rini [Sat, 12 Nov 2022 22:36:50 +0000 (17:36 -0500)]
Convert CONFIG_SYS_NAND_SIZE to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_NAND_SIZE

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_NAND_PAGE_2K et al to Kconfig
Tom Rini [Sat, 12 Nov 2022 22:36:49 +0000 (17:36 -0500)]
Convert CONFIG_SYS_NAND_PAGE_2K et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_NAND_PAGE_2K
   CONFIG_SYS_NAND_PAGE_4K

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_NAND_NO_SUBPAGE_WRITE to Kconfig
Tom Rini [Sat, 12 Nov 2022 22:36:48 +0000 (17:36 -0500)]
Convert CONFIG_SYS_NAND_NO_SUBPAGE_WRITE to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_NAND_NO_SUBPAGE_WRITE

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_NAND_MAX_OOBFREE et al to Kconfig
Tom Rini [Sat, 12 Nov 2022 22:36:47 +0000 (17:36 -0500)]
Convert CONFIG_SYS_NAND_MAX_OOBFREE et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_NAND_MAX_OOBFREE
   CONFIG_SYS_NAND_MAX_ECCPOS

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agomtd: nand: raw: atmel_nand: Use ATMEL_BASE_ECC directly
Tom Rini [Sat, 12 Nov 2022 22:36:46 +0000 (17:36 -0500)]
mtd: nand: raw: atmel_nand: Use ATMEL_BASE_ECC directly

This is the only driver, and only one platform makes use of, setting
CONFIG_SYS_NAND_ECC_BASE. Reference ATMEL_BASE_ECC directly in this
case.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_NAND_HW_ECC to Kconfig
Tom Rini [Sat, 12 Nov 2022 22:36:45 +0000 (17:36 -0500)]
Convert CONFIG_SYS_NAND_HW_ECC to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_NAND_HW_ECC

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_NAND_HW_ECC_OOBFIRST to Kconfig
Tom Rini [Sat, 12 Nov 2022 22:36:44 +0000 (17:36 -0500)]
Convert CONFIG_SYS_NAND_HW_ECC_OOBFIRST to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_NAND_HW_ECC_OOBFIRST

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoRemove unused symbols
Tom Rini [Sat, 12 Nov 2022 22:36:43 +0000 (17:36 -0500)]
Remove unused symbols

This commit removes the following unused symbols:
   CONFIG_SYS_NAND_DDR_LAW
   CONFIG_SYS_NAND_ECCSTEPS
   CONFIG_SYS_NAND_ECCTOTAL
   CONFIG_SYS_NAND_ENABLE_PIN_SPL
   CONFIG_SYS_NAND_MX7_GPMI_62_ECC_BYTES
   CONFIG_SYS_NAND_U_BOOT_RELOC_SP

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoConvert CONFIG_SYS_NAND_DBW_8 et al to Kconfig
Tom Rini [Sat, 12 Nov 2022 22:36:42 +0000 (17:36 -0500)]
Convert CONFIG_SYS_NAND_DBW_8 et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_NAND_DBW_8
   CONFIG_SYS_NAND_DBW_16

Note that all instances of the code check for CONFIG_SYS_NAND_DBW_16
being defined, and then "else" to CONFIG_SYS_NAND_DBW_8 whereas all of
the configs set CONFIG_SYS_NAND_DBW_8. So we introduce
CONFIG_SYS_NAND_DBW_16 as an option.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoPrepare v2023.01-rc3
Tom Rini [Mon, 5 Dec 2022 20:21:53 +0000 (15:21 -0500)]
Prepare v2023.01-rc3

Signed-off-by: Tom Rini <trini@konsulko.com>
22 months agoMerge branch '2022-12-05-add-IPv6-support'
Tom Rini [Mon, 5 Dec 2022 18:28:22 +0000 (13:28 -0500)]
Merge branch '2022-12-05-add-IPv6-support'

To quote the author:
This patch set adds basic IPv6 support to U-boot.
It is based on Chris's Packham patches
(https://lists.denx.de/pipermail/u-boot/2017-January/279366.html)
Chris's patches were taken as base. There were efforts to launch it on
HiFive SiFive Unmatched board but the board didn't work well. The code was
refactored, fixed some bugs as CRC for little-endian, some parts were implemented in
our own way, something was taken from Linux. Finally we did manual tests and the
board worked well.

Testing was done on HiFive SiFive Unmatched board (RISC-V)

22 months agoconfigs: Add IPV6 config to sandbox_flattree_defconfig
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:17 +0000 (12:18 +0300)]
configs: Add IPV6 config to sandbox_flattree_defconfig

Allow to use IPV6 tests in sandbox

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
22 months agoconfigs: Add IPV6 config to sandbox64_defconfig
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:16 +0000 (12:18 +0300)]
configs: Add IPV6 config to sandbox64_defconfig

Allow to use IPV6 tests in sandbox

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
22 months agoconfigs: Add IPV6 config to sandbox_defconfig
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:14 +0000 (12:18 +0300)]
configs: Add IPV6 config to sandbox_defconfig

Allow to use IPV6 tests in sandbox

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
22 months agotest: dm: eth: Add ip6_make_lladdr test
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:13 +0000 (12:18 +0300)]
test: dm: eth: Add ip6_make_lladdr test

Add a test that checks generated Link Local Address. Use in sandbox

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agotest: dm: eth: Add ip6_make_snma test
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:12 +0000 (12:18 +0300)]
test: dm: eth: Add ip6_make_snma test

Add a test that checks generated Solicited Node Multicast Address from our
ipv6 address. Use in sandbox

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agotest: dm: eth: Add ip6_addr_in_subnet test
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:11 +0000 (12:18 +0300)]
test: dm: eth: Add ip6_addr_in_subnet test

Add a test if two address are in the same subnet. Use in sandbox

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agotest: dm: eth: Add csum_ipv6_magic test
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:10 +0000 (12:18 +0300)]
test: dm: eth: Add csum_ipv6_magic test

Test checksum computation. csum_ipv6_magic() uses in upper layer
protocols as TCP/UDP/ICMPv6/etc to calculate payload checksum.

Series-changes: 3
- Fixed style problems

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agotest: dm: eth: Add string_to_ip6 test
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:09 +0000 (12:18 +0300)]
test: dm: eth: Add string_to_ip6 test

Add a test to check convertation from char* to struct in6_addr.
Use in sandbox

Series-changes: 3
- Fixed tests to use length param in string_to_ip6()

Series-changes: 5
- Add test under #ifdef

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ping6: Add ping6 command
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:08 +0000 (12:18 +0300)]
net: ping6: Add ping6 command

Implement ping6 command to ping hosts using IPv6. It works the same way as
an ordinary ping command. There is no ICMP request so it is not possible
to ping our host. This patch adds options in Kconfig and Makefile to
build ping6 command.

Series-changes: 3
- Added structures and functions descriptions
- Added to ping6_receive() return value instead of void

Series-changes: 4
- Fixed structures and functions description style

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: tftp: Add IPv6 support for tftpboot
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:07 +0000 (12:18 +0300)]
net: tftp: Add IPv6 support for tftpboot

The command tftpboot uses IPv4 by default. Add the possibility to use IPv6
instead. If an address in the command is an IPv6 address it will use IPv6
to boot or if there is a suffix -ipv6 in the end of the command it also
force using IPv6. All other tftpboot features and parameters are left
the same.

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ipv6: Incorporate IPv6 support into u-boot net subsystem
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:06 +0000 (12:18 +0300)]
net: ipv6: Incorporate IPv6 support into u-boot net subsystem

Add net_ip6_handler (an IPv6 packet handler) into net_loop. Add
neighbor discovery mechanism into network init process. That is the
main step to run IPv6 in u-boot. Now u-boot is capable to use NDP and
handle IPv6 packets.

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ipv6: Add implementation of main IPv6 functions
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:05 +0000 (12:18 +0300)]
net: ipv6: Add implementation of main IPv6 functions

Functions that were exposed in "net: ipv6: Add IPv6 basic primitives"
had only empty implementations and were exposed as API for futher
patches. This patch add implementation of these functions. Main
functions are: net_ip6_handler() - IPv6 packet handler for incoming
packets; net_send_udp_packet6() - make up and send an UDP packet;
csum_ipv6_magic() - compute checksum of IPv6 "psuedo-header" per RFC2460
section 8.1; ip6_addr_in_subnet() - check if an address is in our
subnet. Other functions are auxiliary.

Series-changes: 3
- Added comments
- Fixed style problems
- Fixed return codes instead of -1

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ipv6: Add ip6addr, gatewayip6, serverip6 variables callbacks
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:04 +0000 (12:18 +0300)]
net: ipv6: Add ip6addr, gatewayip6, serverip6 variables callbacks

Implement actions on ip6addr, gatewayip6, serverip6 varaibles.
on_ip6addr - convert IPv6 string addr to struct ip6_addr
on_gatewayip6 - convert IPv6 string addr to struct ip6_addr
on_serverip6 - convert IPv6 string addr to struct ip6_addr

Series-changes: 3
- Removed memory allocation
- Substituted -1 for error code

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ipv6: Enable IPv6 typeconversion specifier
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:03 +0000 (12:18 +0300)]
net: ipv6: Enable IPv6 typeconversion specifier

Add the possibility to recognize IPv6 address in print function.
To output IPv6 address use %pI6 specifier.

Series-changes: 3
- Substituted #if (...) for if (...) to get better readability

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ipv6: Add string_to_ip6 converter
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:02 +0000 (12:18 +0300)]
net: ipv6: Add string_to_ip6 converter

This functions is used as a converter from IPv6 address string notation
to struct ip6_addr that is used everywhere in IPv6 implementation. For
example it is used to parse and convert IPv6 address from tftpboot
command. Conversion algorithm uses two passes, first to verify syntax and
locate colons and second pass to read the address. In case of valid IPv6
address it returns 0.

Examples of valid strings:
2001:db8::0:1234:1
2001:0db8:0000:0000:0000:0000:1234:0001
::1
::ffff:192.168.1.1

Examples of invalid strings
2001:db8::0::0          (:: can only appear once)
2001:db8:192.168.1.1::1 (v4 part can only appear at the end)
192.168.1.1             (we don't implicity map v4)

Series-changes: 3
- Added function description
- Added length parameter to string_to_ip6()

Series-changes: 4
- Fixed function description style

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ipv6: Add Neighbor Discovery Protocol (NDP)
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:01 +0000 (12:18 +0300)]
net: ipv6: Add Neighbor Discovery Protocol (NDP)

Implement basic of NDP. It doesn't include such things as Router
Solicitation, Router Advertisement and Redirect. It just has Neighbor
Solicitation and Neighbor Advertisement. Only these two features are used
in u-boot IPv6. Implementation of some NDP functions uses API that was
exposed in "net: ipv6: Add IPv6 basic primitives".

Also this patch inlcudes update in Makefile to build NDP.

Series-changes: 3
- Added structures and functions descriptions
- Fixed style problems

Series-changes: 4
- Fixed structures and functions description style

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ipv6: Add callbacks declarations to get access to IPv6 variables
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:18:00 +0000 (12:18 +0300)]
net: ipv6: Add callbacks declarations to get access to IPv6 variables

Set up callbacks for main IPv6 variables ip6add, serverip6, gatewayip6
and set options to them in flag file. These variables are often set up by
users.

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ipv6: Add IPv6 build options
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:17:59 +0000 (12:17 +0300)]
net: ipv6: Add IPv6 build options

Add options to Makefile and Kconfig file to build IPv6

Series-changes: 3
- Added help for IPv6 support

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agonet: ipv6: Add IPv6 basic primitives
Viacheslav Mitrofanov [Fri, 2 Dec 2022 09:17:58 +0000 (12:17 +0300)]
net: ipv6: Add IPv6 basic primitives

This patch is a collection of basic primitives that are prerequisite for
further IPv6 implementation.

There are structures definition such as IPv6 header, UDP header
(for TFTP), ICMPv6 header. There are auxiliary defines such as protocol
codes, padding, struct size and etc. Also here are functions prototypes
and its empty implementation that will be used as API for further patches.
Here are variables declaration such as IPv6 address of our host,
gateway, ipv6 server.

Series-changes: 3
- Added functions and structures descriptions
- Removed enums ND_OPT_*. It will be moved into further patches
- Substituted -1 for error codes

Series-changes: 4
- Changed functions and structures description style

Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
22 months agoMerge tag 'xilinx-for-v2023.01-rc3-v2' of https://source.denx.de/u-boot/custodians...
Tom Rini [Mon, 5 Dec 2022 13:33:19 +0000 (08:33 -0500)]
Merge tag 'xilinx-for-v2023.01-rc3-v2' of https://source.denx.de/u-boot/custodians/u-boot-microblaze

Xilinx changes for v2023.01-rc3-v2

xilinx:
- Fix MAC address selection for System Controller from FRU
- Cleanup Kconfig (ZYNQ_MAC_IN_EEPROM symbol)

versal:
- Create u-boot.elf for mini spi configurations

versal-net:
- Enable MT35XU flash

zynq:
- Add missing timer to DT for mini configurations

zynqmp:
- Do not include psu_init to U-Boot by default
- Do not enable IPI by default to mini U-Boot
- Update Luca's fragment
- Fix SPL_FS_LOAD_PAYLOAD_NAME usage

spi:
- gqspi: Fix tapdelay values
- gqspi: Fix 64bit address support
- cadence: Remove condition for calling enable linear mode
- nor-core: Invert logic to reflect sst26 flash unlocked

net:
- Add PCS/PMA phy support

22 months agoMerge tag 'i2cfixes-for-v2023.01-rc3' of https://source.denx.de/u-boot/custodians...
Tom Rini [Mon, 5 Dec 2022 13:33:01 +0000 (08:33 -0500)]
Merge tag 'i2cfixes-for-v2023.01-rc3' of https://source.denx.de/u-boot/custodians/u-boot-i2c

i2c Fixes for v2023.01-rc3

- nuovoton driver:
  rename npcm_i2c -> npcm-i2c from Jim Liu

22 months agomtd: spi-nor-core: Invert logic to reflect sst26 flash unlocked
Algapally Santosh Sagar [Tue, 22 Nov 2022 05:18:33 +0000 (22:18 -0700)]
mtd: spi-nor-core: Invert logic to reflect sst26 flash unlocked

flash_is_locked is changed to flash_is_unlocked with commit 513c6071ce73
("mtd: spi: Convert is_locked callback to is_unlocked"). sst26_is_locked()
is also changed to sst26_is_unlocked() but the logic remained same.
Invert the logic for the flash lock/unlock to work properly.

Signed-off-by: Algapally Santosh Sagar <santoshsagar.algapally@amd.com>
Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Reviewed-by: Jan Kiszka <jan.kiszka@siemens.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Link: https://lore.kernel.org/r/20221122051833.13306-1-ashok.reddy.soma@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
22 months agoxilinx: zynqmp: Fix SPL_FS_LOAD_PAYLOAD_NAME usage
Michal Simek [Fri, 2 Dec 2022 13:06:15 +0000 (14:06 +0100)]
xilinx: zynqmp: Fix SPL_FS_LOAD_PAYLOAD_NAME usage

SPL_FS_LOAD_PAYLOAD_NAME depends on SPL to be enabled.
If SPL is not enabled code still expects SPL_FS_LOAD_PAYLOAD_NAME to be
present. That's why setup proper dependency in the code.
And by doing so also change the logic around dfu_alt_info string
composition to be simpler.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/3989c390a4acae13a1b05c040e14fb3d68bced02.1669986373.git.michal.simek@amd.com
22 months agoarm64: versal-net: Enable defconfig for Micron octal flashes
Ashok Reddy Soma [Tue, 29 Nov 2022 10:18:31 +0000 (11:18 +0100)]
arm64: versal-net: Enable defconfig for Micron octal flashes

Micron mt35 series octal flashes are under config option
CONFIG_SPI_FLASH_MT35XU. Enable it in default defconfig for octal
flashes to be detected.

Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/dfaf73a72c7b408f1b8530f411c405d3dcf9f854.1669717110.git.michal.simek@amd.com
22 months agospi: cadence-qspi: Remove condition for calling enable linear mode
Ashok Reddy Soma [Tue, 29 Nov 2022 11:41:34 +0000 (04:41 -0700)]
spi: cadence-qspi: Remove condition for calling enable linear mode

cadence_qspi_apb_enable_linear_mode() has a weak function defined, so no
need to gaurd this under if (CONFIG_IS_ENABLED(ARCH_VERSAL)).

In cadence_qspi_apb_write_execute(), enable linear mode is called twice by
mistake, remove extra one.

Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Link: https://lore.kernel.org/r/20221129114134.18909-1-ashok.reddy.soma@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
22 months agoARM: zynq: Add missing twd timer for mini configurations
Michal Simek [Tue, 29 Nov 2022 12:23:20 +0000 (13:23 +0100)]
ARM: zynq: Add missing twd timer for mini configurations

The commit b7e0750d8872 ("zynq: Convert arm twd timer to DM driver")
switched timer to DM but missing to add nodes to all mini configurations.
Based on it missing timer end up in non functional system where any delay
doesn't work.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/2020fc7e3d4760e890265485b3c7e18eb1caf8be.1669724598.git.michal.simek@amd.com
22 months agoarm64: zynqmp: Do not enable IPI by default
Michal Simek [Tue, 29 Nov 2022 15:09:42 +0000 (16:09 +0100)]
arm64: zynqmp: Do not enable IPI by default

ZynqMP mini configurations are not using IPI driver and enabling this is
adding additional ~1200 Bytes (depends on configuration).
This ends up in situation that there is no enough space in OCM for
relocation that's why disable this driver for all mini configurations.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/c71bab3927cb71ae517d9c21f59f3d5cf0caf712.1669734580.git.michal.simek@amd.com
22 months agoarm64: zynqmp: Do not include psu_init to U-Boot by default
Michal Simek [Fri, 2 Dec 2022 08:18:06 +0000 (09:18 +0100)]
arm64: zynqmp: Do not include psu_init to U-Boot by default

The commit ed35de617013 ("Convert CONFIG_ZYNQMP_PSU_INIT_ENABLED to
Kconfig") converted CONFIG_ZYNQMP_PSU_INIT_ENABLED symbol and enabled it by
default which is not correct configuration.
Intention of this config was to have it enabled by default for SPL and
provide an option to users to also do low level initialization directly
from U-Boot.
That's why it is necessary to define second symbol with SPL marking in it
and properly use symbols depends on usage in Makefile.
Also disable ZYNQMP_PSU_INIT_ENABLED from boards which enables it by
default. CONFIG_SPL_ZYNQMP_PSU_INIT_ENABLED is enabled by default when SPL
is enabled.

Reported-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/d5fcbd66b05bf0d7ef594e66464ee23b48c5e4cc.1669969083.git.michal.simek@amd.com
22 months agoboard/xilinx/zynqmp/MAINTAINERS: change e-mail address for Luca Ceresoli
Luca Ceresoli [Sat, 3 Dec 2022 21:49:39 +0000 (22:49 +0100)]
board/xilinx/zynqmp/MAINTAINERS: change e-mail address for Luca Ceresoli

My Bootlin address is the preferred one now.

Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Link: https://lore.kernel.org/r/20221203214939.56608-1-luca@lucaceresoli.net
Signed-off-by: Michal Simek <michal.simek@amd.com>
22 months agoxilinx: Remove unused ZYNQ_MAC_IN_EEPROM/ZYNQ_GEM_I2C_MAC_OFFSET entries
Michal Simek [Wed, 23 Nov 2022 08:27:08 +0000 (09:27 +0100)]
xilinx: Remove unused ZYNQ_MAC_IN_EEPROM/ZYNQ_GEM_I2C_MAC_OFFSET entries

The commit ba74bcf3e07b ("xilinx: common: Remove
zynq_board_read_rom_ethaddr()") removed zynq_board_read_rom_ethaddr()
because xlnx,eeprom link via DT chosen node is no longer used. But forget
to remove Kconfig entries which are used by this code only.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/f97451ed33409838efea4071553b6da795cfc578.1669192026.git.michal.simek@amd.com
22 months agoxilinx: Add option to select SC id instead of DUT id for SC support
Michal Simek [Wed, 23 Nov 2022 11:48:44 +0000 (12:48 +0100)]
xilinx: Add option to select SC id instead of DUT id for SC support

Reading MAC address from on board EEPROM requires different type for System
Controller (SC).

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/90bb7cc5463568a690b979f18c8d42556986b46d.1669204122.git.michal.simek@amd.com
22 months agospi: zynqmp_qspi: Add support for 64-bit read/write
Venkatesh Yadav Abbarapu [Fri, 25 Nov 2022 10:44:13 +0000 (16:14 +0530)]
spi: zynqmp_qspi: Add support for 64-bit read/write

When we pass the 64-bit address to read/write, only lower 32-bit
address is getting updated. Program the upper 32-bit address in the
DMA destination memory address MSBs register, which can handle upto
44-bit destination address.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20221125104413.26140-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
22 months agoarm64: versal: Enable REMAKE_ELF for mini_ospi/mini_qspi
Venkatesh Yadav Abbarapu [Fri, 25 Nov 2022 08:46:39 +0000 (14:16 +0530)]
arm64: versal: Enable REMAKE_ELF for mini_ospi/mini_qspi

Enable the config REMAKE_ELF in xilinx_versal_mini_ospi_defconfig
and xilinx_versal_mini_qspi_defconfig which generates u-boot.elf.
This commit a8c281d4b737("Convert CONFIG_REMAKE_ELF to Kconfig")
misses to enable this config in these defconfigs.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20221125084639.23835-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
22 months agospi: zynqmp_gqspi: Update tapdelay value
T Karthik Reddy [Wed, 23 Nov 2022 09:04:51 +0000 (02:04 -0700)]
spi: zynqmp_gqspi: Update tapdelay value

The driver was using an incorrect value for GQSPI_LPBK_DLY_ADJ_DLY_1
tapdelay for Versal for frequencies above 100MHz. Change it from 2 to 1
based on the recommended value in IP spec.

Signed-off-by: T Karthik Reddy <t.karthik.reddy@xilinx.com>
Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Link: https://lore.kernel.org/r/20221123090451.11409-1-ashok.reddy.soma@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
22 months agoarm64: zynqmp: dynamically mark r5 cores as used
Lukas Funke [Fri, 28 Oct 2022 12:15:47 +0000 (14:15 +0200)]
arm64: zynqmp: dynamically mark r5 cores as used

When Linux boot takes over control of the pmu
(by signaling PM_INIT_FINALIZE via ipi), pmu will switch off 'unused'
rpu cores. The Xilinx zynqmp fsbl prevents switching off those cores by
marking rpu cores as 'used' when loading code partitions to those cores.
The current u-boot SPL is missing this behaviour, which results in
halting rpu cores during Linux boot.

This commit mimics the xilinx zynqmp fsbl behavior by marking r5 cores as
used when they are released during boot.

Signed-off-by: Lukas Funke <lukas.funke@weidmueller.com>
Signed-off-by: Lukas Funke <lukas.funke-oss@weidmueller.com>
Link: https://lore.kernel.org/r/20221028121547.26464-2-lukas.funke-oss@weidmueller.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
22 months agonet: xilinx_axi: check PCS/PMA PHY status in setup_phy
Andy Chiu [Tue, 1 Nov 2022 03:58:00 +0000 (11:58 +0800)]
net: xilinx_axi: check PCS/PMA PHY status in setup_phy

Both PCS/PMA PHY and the external PHY need to have a valid link status
in order to have Ethernet traffic. Check and wait this status at
setup_phy() so that we could diagnose if there is a PHY issue.

Signed-off-by: Andy Chiu <andy.chiu@sifive.com>
Reviewed-by: Greentime Hu <greentime.hu@sifive.com>
Link: https://lore.kernel.org/r/20221101035800.912644-3-andy.chiu@sifive.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
22 months agonet: xilinx_axi: add PCS/PMA PHY
Andy Chiu [Tue, 1 Nov 2022 03:57:59 +0000 (11:57 +0800)]
net: xilinx_axi: add PCS/PMA PHY

If we bridge an external PHY to Xilinx's PCS/PMA PHY and would like to
get and set the real status of the PHY facing the external world. Then
we should phy_connect() to the external PHY instead of the PCS/PMA one.
Thus, we add a pcs-handle DT entry, which have been merged in Linux, and
leave the configuration of it to the driver itself.

Unlike Linux, where the PCS/PMA PHY is managed by phylink, managing the
PCS/PMA PHY is only internal to the driver in U-Boot. The PCS/PMA PHY
pressents only when the phy-mode is configured as SGMII or 1000Base-X,
so it is always 1 Gbps and full-duplex and we may skip passing link
information out.

Signed-off-by: Andy Chiu <andy.chiu@sifive.com>
Reviewed-by: Greentime Hu <greentime.hu@sifive.com>
Link: https://lore.kernel.org/r/20221101035800.912644-2-andy.chiu@sifive.com
Signed-off-by: Michal Simek <michal.simek@amd.com>