common: Move old EEPROM functions into a new headerThese functions do not use driver model but are still used. Move them to anew eeprom.h header file.(cherry picked from commit cb3ef6810a27c8ddf
common: Move old EEPROM functions into a new headerThese functions do not use driver model but are still used. Move them to anew eeprom.h header file.(cherry picked from commit cb3ef6810a27c8ddf5db8694bcef9337f27d12ce)Signed-off-by: Simon Glass <sjg@chromium.org>Reviewed-by: Tom Rini <trini@konsulko.com>Signed-off-by: Tan Siewert <tan.siewert@hetzner.com>Link: https://patch.msgid.link/20250117094434.16641-6-tan.siewert@hetzner.comSigned-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
common: fit: Update board_fit_image_post_process() to pass fit and node_offsetboard_fit_image_post_process() passes only start and size of the image,but type of the image is not passed. So pass fi
common: fit: Update board_fit_image_post_process() to pass fit and node_offsetboard_fit_image_post_process() passes only start and size of the image,but type of the image is not passed. So pass fit and node_offset, toderive information about image to be processed.Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>Signed-off-by: Tero Kristo <kristo@kernel.org>Signed-off-by: Chia-Wei Wang <chiawei_wang@aspeedtech.com>(cherry picked from commit 481d394e77915201e4ecc2d98e9cc2fbc3224991)Change-Id: Idbc2e274d1f5a26434e42715014f0b16c29237a2
configs: Remove am43xx_evm_ethboot_defconfigam43xx_evm_ethboot_defconfig is not being actively used and has not beenmoved to DM or DT. Also, ethboot cannot be tested on AM43xx EVM as suchdue EVM
configs: Remove am43xx_evm_ethboot_defconfigam43xx_evm_ethboot_defconfig is not being actively used and has not beenmoved to DM or DT. Also, ethboot cannot be tested on AM43xx EVM as suchdue EVM limitations. Therefore delete it.Signed-off-by: Vignesh R <vigneshr@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>
board: ti: am43xx: turn on USB clocksEnable USB clocks in late init stage to support ports under DM_USB.Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>Reviewed-by: Tom Rini <trini@konsulko.
board: ti: am43xx: turn on USB clocksEnable USB clocks in late init stage to support ports under DM_USB.Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>
ti: remove usage of DM_I2C_COMPAT and don't disable DM_I2C in SPLDM_I2C_COMPAT is a compatibility layer that allows using the non-DM I2CAPI when DM_I2C is used. The goal is to eventually remove DM
ti: remove usage of DM_I2C_COMPAT and don't disable DM_I2C in SPLDM_I2C_COMPAT is a compatibility layer that allows using the non-DM I2CAPI when DM_I2C is used. The goal is to eventually remove DM_I2C_COMPATwhen all I2C "clients" have been migrated to use the DM API.This a step in that direction for the TI based platforms.Build tested with buildman:buildman -dle am33xx ti omap3 omap4 omap5 davinci keystoneboot tested with:am335x_evm, am335x_boneblack, am335x_boneblack_vboot (DM version),am57xx_evm, dra7xx_evm, k2g_evm, am437x_evmSigned-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>Reviewed-by: Heiko Schocher <hs@denx.de>
SPDX: Convert all of our single license tags to Linux Kernel styleWhen U-Boot started using SPDX tags we were among the early adopters andthere weren't a lot of other examples to borrow from. So
SPDX: Convert all of our single license tags to Linux Kernel styleWhen U-Boot started using SPDX tags we were among the early adopters andthere weren't a lot of other examples to borrow from. So we picked thearea of the file that usually had a full license text and replaced itwith an appropriate SPDX-License-Identifier: entry. Since then, theLinux Kernel has adopted SPDX tags and they place it as the very firstline in a file (except where shebangs are used, then it's second line)and with slightly different comment styles than us.In part due to community overlap, in part due to better tag visibilityand in part for other minor reasons, switch over to that style.This commit changes all instances where we have a single declaredlicense in the tag as both the before and after are identical in tagcontents. There's also a few places where I found we did not have a tagand have introduced one.Signed-off-by: Tom Rini <trini@konsulko.com>
board: ti: am43: Fix DCDC3 voltage for epos-evmA common voltage of 1.35V was being programmed for all am43 boardversions. EPOS-EVM Needs 1.20V for LPDDR2.Fixes: fc69d472621b5 (“board: ti: AM43XX
board: ti: am43: Fix DCDC3 voltage for epos-evmA common voltage of 1.35V was being programmed for all am43 boardversions. EPOS-EVM Needs 1.20V for LPDDR2.Fixes: fc69d472621b5 (“board: ti: AM43XX: Add ddr voltage rail configuration”)Reported-by: James Doublesin <doublesin@ti.com>Signed-off-by: Keerthy <j-keerthy@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>
net: Move enetaddr env access code to env config instead of net configIn order that we can use eth_env_* even when CONFIG_NET isn't set, movethese functions to environment code from net code.Thi
net: Move enetaddr env access code to env config instead of net configIn order that we can use eth_env_* even when CONFIG_NET isn't set, movethese functions to environment code from net code.This fixes failures such as: board/ti/am335x/built-in.o: In function `board_late_init': board/ti/am335x/board.c:752: undefined reference to `eth_env_set_enetaddr' u-boot/board/ti/am335x/board.c:766: undefined reference to `eth_env_set_enetaddr'which caters for use cases such as:commit f411b5cca48f ("board: am335x: Always set eth/eth1addr environmentvariable")when Ethernet is required in Linux, but not U-Boot.Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
board: ti: am43xx: Define embedded_dtb_select for runtime DTB selection in U-bootAM437x QSPI boot is a single stage boot and hence needs runtime DTBselection to support AM437x-SK and AM437x-IDK wi
board: ti: am43xx: Define embedded_dtb_select for runtime DTB selection in U-bootAM437x QSPI boot is a single stage boot and hence needs runtime DTBselection to support AM437x-SK and AM437x-IDK with DM enabled. This isrequired to move am43xx_evm_qspiboot_defconfig to use DM/DT.Signed-off-by: Vignesh R <vigneshr@ti.com>Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
ARM: AM43xx: Add support for RTC only + DDR in self-refresh modeKernel stores information to the RTC_SCRATCH0 and RTC_SCRATCH1 registersfor wakeup from RTC-only mode with DDR in self-refresh. Pars
ARM: AM43xx: Add support for RTC only + DDR in self-refresh modeKernel stores information to the RTC_SCRATCH0 and RTC_SCRATCH1 registersfor wakeup from RTC-only mode with DDR in self-refresh. Parse theseregisters during SPL boot and jump to the kernel resume vector if thedevice is waking up from RTC-only modewith DDR in Self-refresh.The RTC scratch register layout used is:SCRATCH0 : bits00-31 : kernel resume addressSCRATCH1 : bits00-15 : RTC magic value used to detect valid configSCRATCH1 : bits16-31 : board type information populated by bootloaderDuring the normal boot path the SCRATCH1 : bits16-31 are updated withthe eeprom read board type data. In the rtc_only boot path the rtcscratchpad register is read and the board type is determined andcorrespondingly ddr dpll parameters are set. This is done so as to avoidcostly i2c read to eeprom.RTC-only +DRR in self-refresh mode support is currently only enabled foram43xx_evm_rtconly_config.This is not to be used with epos evm builds.Signed-off-by: Tero Kristo <t-kristo@ti.com>[j-keerthy@ti.com Rebased to latest u-boot master branch]Signed-off-by: Keerthy <j-keerthy@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>
usb: host: xhci-omap: Remove redundant board_usb_init and board_usb_cleanup functionsboard_usb_init()/_cleanup() should be in board files and don't havea place in the xhci-omap driver. Weak versio
usb: host: xhci-omap: Remove redundant board_usb_init and board_usb_cleanup functionsboard_usb_init()/_cleanup() should be in board files and don't havea place in the xhci-omap driver. Weak versions forboard_usb_init()/_cleanup() already exist in common/usb.c(for host mode) and drivers/usb/gadget/g_dnl.c (for gadget mode).Therefore, remove init and cleanup functions from xhci-omap andimplement them in the board files.Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>Reviewed-by: Marek Vasut <marex@denx.de>Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
ARM: AM43XX: Call hw_data_init() again after relocation to update *ctrlhw_data_init() is called before relocation to initialise hardware data.Since ctrl is initialized to OMAP_SRAM_SCRATCH_SYS_CTR
ARM: AM43XX: Call hw_data_init() again after relocation to update *ctrlhw_data_init() is called before relocation to initialise hardware data.Since ctrl is initialized to OMAP_SRAM_SCRATCH_SYS_CTRL inarch/arm/mach-omap2/am33xx/hw_data.c, the pointer *ctrl will not beupdated during relocation and will hold a stale value.Therefore call hw_data_init() again after relocation toreinitialize *ctrl.Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
env: Rename getenv/_f() to env_get()We are now using an env_ prefix for environment functions. Rename thesetwo functions for consistency. Also add function comments in common.h.Quite a few place
env: Rename getenv/_f() to env_get()We are now using an env_ prefix for environment functions. Rename thesetwo functions for consistency. Also add function comments in common.h.Quite a few places use getenv() in a condition context, provoking awarning from checkpatch. These are fixed up in this patch also.Suggested-by: Wolfgang Denk <wd@denx.de>Signed-off-by: Simon Glass <sjg@chromium.org>
env: Rename eth_setenv_enetaddr() to eth_env_set_enetaddr()Rename this function for consistency with env_set().Signed-off-by: Simon Glass <sjg@chromium.org>
env: Rename setenv() to env_set()We are now using an env_ prefix for environment functions. Rename setenv()for consistency. Also add function comments in common.h.Suggested-by: Wolfgang Denk <wd
env: Rename setenv() to env_set()We are now using an env_ prefix for environment functions. Rename setenv()for consistency. Also add function comments in common.h.Suggested-by: Wolfgang Denk <wd@denx.de>Signed-off-by: Simon Glass <sjg@chromium.org>
board: ti: am43xx: Add FDT fixup for HS devicesDisable RNG and add TEE to FDT used on HS devices.Signed-off-by: Andrew F. Davis <afd@ti.com>
board: ti: am43xx: Add TEE loading and firewall setupAdd support for loading a TEE and setting up firewalled regions toAM43xx HS boards.Signed-off-by: Andrew F. Davis <afd@ti.com>
Merge branch 'master' of git://git.denx.de/u-boot-mmc
arm: omap: Unify get_device_type() functionRefactor OMAP3/4/5 code so that we have only one get_device_type()function for all platforms.Details: - Add ctrl variable for AM33xx and OMAP3 platfor
arm: omap: Unify get_device_type() functionRefactor OMAP3/4/5 code so that we have only one get_device_type()function for all platforms.Details: - Add ctrl variable for AM33xx and OMAP3 platforms (like it's done for OMAP4/5), so we can obtain status register in common way - For now ctrl structure for AM33xx/OMAP3 contains only status register address - Run hw_data_init() in order to assign ctrl to proper structure - Remove DEVICE_MASK and DEVICE_GP definitions as they are not used (DEVICE_TYPE_MASK and GP_DEVICE are used instead) - Guard structs in omap_common.h with #ifdefs, because otherwise including omap_common.h on non-omap4/5 board files breaks compilationBuildman script was run for all OMAP boards. Result output: arm: (for 38/616 boards) all +352.5 bss -1.4 data +3.5 rodata +300.0 spl/u-boot-spl:all +284.7 spl/u-boot-spl:data +2.2 spl/u-boot-spl:rodata +252.0 spl/u-boot-spl:text +30.5 text +50.4 (no errors to report)Tested on AM57x EVM and BeagleBoard xM.Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>[trini: Rework the guards as to not break TI81xx]Signed-off-by: Tom Rini <trini@konsulko.com>
board: ti: AM43XX: Add ddr voltage rail configurationAdd ddr voltage rail (dcdc3) configuration. Set the dcdc3DDR supply to 1.35V.Signed-off-by: Keerthy <j-keerthy@ti.com>Reviewed-by: Tom Rini
board: ti: AM43XX: Add ddr voltage rail configurationAdd ddr voltage rail (dcdc3) configuration. Set the dcdc3DDR supply to 1.35V.Signed-off-by: Keerthy <j-keerthy@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
i2c: omap: Modify code to work without CONFIG_I2C_HARDDrop use of this long-deprecated option.Signed-off-by: Simon Glass <sjg@chromium.org>Suggested-by: Lokesh Vutla <lokeshvutla@ti.com>Reviewe
i2c: omap: Modify code to work without CONFIG_I2C_HARDDrop use of this long-deprecated option.Signed-off-by: Simon Glass <sjg@chromium.org>Suggested-by: Lokesh Vutla <lokeshvutla@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>
arm: am33xx: Add support for mulitiple PLL input frequenciesam335x supports various sysclk frequencies which can be determinedusing sysboot pins. PLLs should be configures based on thissysclk fre
arm: am33xx: Add support for mulitiple PLL input frequenciesam335x supports various sysclk frequencies which can be determinedusing sysboot pins. PLLs should be configures based on thissysclk frequency. Add PLL configurations for all supportedfrequencies.Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>
usb: host: xhci-omap: fix double weak board_usb_init functionsA weak version of the function board_usb_init is implemented in:common/usb.cdrivers/usb/host/xhci-omap.cTo fix the double implement
usb: host: xhci-omap: fix double weak board_usb_init functionsA weak version of the function board_usb_init is implemented in:common/usb.cdrivers/usb/host/xhci-omap.cTo fix the double implementations:* Convert the board_usb_init function in drivers/usb/host/xhci-omap.c normal (not weak).* The function board_usb_init in drivers/usb/host/xhci-omap.c calls to the weak function omap_xhci_board_usb_init.* Rename board version of the function board_usb_init to omap_xhci_board_usb_init. Done only for boards that defines CONFIG_USB_XHCI_OMAP.To achieve the same flexibility with the function board_usb_cleanup:* Add a normal (not weak) implementation of the function board_usb_cleanup in drivers/usb/host/xhci-omap.c* The function board_usb_cleanup in drivers/usb/host/xhci-omap.c calls to the weak function omap_xhci_board_usb_cleanup.* Rename board version of the function board_usb_cleanup to omap_xhci_board_usb_cleanup. Done only for boards that defines CONFIG_USB_XHCI_OMAP.Cc: Lokesh Vutla <lokeshvutla@ti.com>Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il>Acked-by: Marek Vasut <marex@denx.de>Reviewed-by: Tom Rini <trini@konsulko.com>Reviewed-by: Roger Quadros <rogerq@ti.com>
ARM: AMx3xx: Make FIT boot as default boot on HS devicesVerification has to be done before booting any images on HS devices. Sodefault the boot to FIT on HS devices.Signed-off-by: Lokesh Vutla <
ARM: AMx3xx: Make FIT boot as default boot on HS devicesVerification has to be done before booting any images on HS devices. Sodefault the boot to FIT on HS devices.Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>
board: ti: amx3xx: Remove multiple EEPROM readsDetect the board very early and avoid reading eeprom multiple times.Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>Reviewed-by: Tom Rini <trini@ko
board: ti: amx3xx: Remove multiple EEPROM readsDetect the board very early and avoid reading eeprom multiple times.Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>Reviewed-by: Tom Rini <trini@konsulko.com>
1234