summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-11-22configs: am62ax_evm_a53_defconfig: Enable networkingNishanth Menon
Enable networking Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22dma: ti: k3-udma: Introduce DMA support for the am62axVignesh Raghavendra
In preparation for enabling ethernet for the am62ax family of SoCs, introduce the initial DMA channel settings for the am62ax Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> [bb@ti.com: expanded on commit message] Signed-off-by: Bryan Brattlof <bb@ti.com> Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22arm: dts: k3-am62a*: Sync with kernel v6.7-rc1Nishanth Menon
Sync with kernel v6.7-rc1 and sync up the u-boot dts files accordingly. Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22arm: mach-k3: am62a: Add main_timer0 id to the dev listNishanth Menon
main_timer0 is used by u-boot as the tick-timer. Add it to the soc devices list so it an be enabled via the k3 power controller. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22arm: dts: k3-j721e-*: Sync with kernel v6.7-rc1Neha Malcom Francis
Sync the U-Boot DTS files with those of Kernel v6.7-rc1. Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22dt-bindings: misc: Move esm-k3.txt to ti,j721e-esm.yamlNeha Malcom Francis
Move esm-k3.txt to ti,j721e-esm.yaml in line with the devicetree documentation in kernel. Signed-off-by: Neha Malcom Francis <n-francis@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2023-11-22doc: board: beagle: Add BeagleBone AI-64 documentationNishanth Menon
Add base documentation for BeagleBone AI-64. Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22configs: Add j721e_beagleboneai64_* configsNishanth Menon
Add basic support for mmc/emmc and networking support for BeagleBone AI-64. Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22board: beagle: Add BeagleBone AI-64 supportNishanth Menon
Add base support for BeagleBone AI-64 board support. Further information at https://beagleboard.org/ai-64 Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22arm: dts: Add k3-j721e-beagleboneai64Robert Nelson
BeagleBoard.org BeagleBone AI-64 is an open source hardware single board computer based on the Texas Instruments TDA4VM SoC featuring dual-core 2.0GHz Arm Cortex-A72 processor, C7x+MMA and 2 C66x floating-point VLIW DSPs, 3x dual ARM Cortex-R5 co-processors, 2x 6-core Programmable Real-Time Unit and Industrial Communication SubSystem, PowerVR Rogue 8XE GE8430 3D GPU. The board features 4GB DDR4, USB3.0 Type-C, 2x USB SS Type-A, miniDisplayPort, 2x 4-lane CSI, DSI, 16GB eMMC flash, 1G Ethernet, M.2 E-key for WiFi/BT, and BeagleBone expansion headers. This board family can be indentified by the BBONEAI-64-B0 in the at24 eeprom: [aa 55 33 ee 01 37 00 10 2e 00 42 42 4f 4e 45 41 |.U3..7....BBONEA|] [49 2d 36 34 2d 42 30 2d 00 00 42 30 30 30 37 38 |I-64-B0-..B00078|] Baseline of the devicetree is from v6.6-rc1 https://beagleboard.org/ai-64 https://git.beagleboard.org/beagleboard/beaglebone-ai-64 Signed-off-by: Robert Nelson <robertcnelson@gmail.com> Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22board: Move omap3 beagle under beagle vendor folderNishanth Menon
Move the omap3 beagle to the beagle vendor folder representing BeagleBoard.org platforms. Suggested-by: Tom Rini <trini@konsulko.com> Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22doc: board: Move am62x_beagleplay to it's own vendorNishanth Menon
Move BeaglePlay documentation to beagle as a board vendor and update references accordingly. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Bryan Brattlof <bb@ti.com>
2023-11-22board: Move beagleplay under beagle vendor folderNishanth Menon
Move beagleplay support away from ti/am62x to it's own beagle vendor folder. This forms the starting point for new beagle platforms added under it's own board vendor folder. As part of this create all the associated files with a bare minimum beagleplay.c file. Suggested-by: Andrew Davis <afd@ti.com> Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Bryan Brattlof <bb@ti.com> [trini: Update k3-binman.dtsi to use full path to scheme.yaml now] Signed-off-by: Tom Rini <trini@konsulko.com>
2023-11-22configs: Add am62x_beagleplay_*_defconfigNishanth Menon
Add am62x_beagleplay_* defconfig customized for the configuration of BeaglePlay and drop the config fragments. This is in preparation for dropping the dependency on ti vendor folder entirely. Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22arm: dts: k3-am625-beagleplay-u-boot/r5: Just depend on k3-binman.dtsiNishanth Menon
With the upcoming folder separation, there is no further need to depend on am625-binman.dtsi. Duplicate the existing definitions to u-boot.dtsi and r5.dts as appropriate. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Bryan Brattlof <bb@ti.com>
2023-11-22doc: board: ti: j721e_evm: Use board relative path for include directivesNishanth Menon
When using include directives within a section that is included by non TI board rst file, k3.rst and other include paths need to be relative to doc/board/ base. Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22configs: j7200_evm_a72_defconfig: Switch to bootstdNishanth Menon
Switch to using bootstd. Note with this change, we will stop using distro_bootcmd and instead depend entirely on bootflow method of starting the system up. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22configs: j7200: Remove HBMC_AM654 configNishanth Menon
Kernel commit 1b77265626a4 ("arm64: dts: ti: k3-j7200-mcu-wakeup: Add HyperBus node") was merged to kernel without its dependent patch [1]. Similar fix is needed in U-Boot, and hbmc currently breaks boot. Till this gets fixed in U-Boot, disable the config by default so that the hbmc probe that happens in board/ti/j721e/evm.c will not take place and lead to boot failure. This is similar to the approach in commit 5b2671594b80 ("configs: j721e: Remove HBMC_AM654 config"), introduced to j7200 evm platform. [1] https://lore.kernel.org/all/20230424184810.29453-1-afd@ti.com/ Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22arm: mach-k3: j721e: Improve support for UDA FSNishanth Menon
Commit 5019170970ad ("arch: arm: mach-k3: j721e: add support for UDA FS") introduced basic UDA FS support, however, we can Take approach similar to commit 0f1c1e8b368b ("arm: mach-k3: am625: Add support for UDA FS"). While boot partition support with EMMC boot is useful, it is constrained by the size of boot hardware partition itself. In the case of K3 devices, tispl images can contain OP-TEE images that can substantially vary in size and the u-boot image itself can vary over time as we enable various features. So use the CSD information in the case of EMMC_BOOT configuration being enabled to pick boot partition or UDA FS mode operation to pick. If EMMC_BOOT is disabled, then depend on filesystem configuration to pick data from UDA. Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22arm: mach-k3: arm64-mmu: Refactor to be independent of boardNishanth Menon
Refactor J721E J7200 definition to make this independent of board macros. Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22board: ti: j721e: Select SOC_K3_J721E_J7200 for J7200evmNishanth Menon
Enable SOC_K3_J721E_J7200 when board is J7200 EVM - this allows us to differentiate J7200 platform cleanly in board independent codebase. Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22arm: mach-k3: Kconfig: Introduce a symbol to indicate J7200Nishanth Menon
J7200 shares quite a few characteristics with J721E. However a few sets are different. Introduce a Kconfig to differentiate the two to allow for new boards to be introduced in a seamless manner. Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-22configs: j721e_evm_a72_defconfig: Switch to bootstdNishanth Menon
Switch to using bootstd. Note with this change, we will stop using distro_bootcmd and instead depend entirely on bootflow method of starting the system up. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22board: ti: j721e: j721e.env: Add explicit boot_targetsNishanth Menon
Add explicit boot_targets to indicate the specific boot sequence to follow. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22board: ti: j721e: evm: Switch to using IS_ENABLEDNishanth Menon
Switch to using IS_ENABLED() for inline function usage. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22board: ti: j721e: evm: Drop board check for ESMNishanth Menon
When config is enabled, the esm dt probe makes sense. Simplify by dropping board specific checks. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22board: ti: j721e: evm: Drop unused headersNishanth Menon
Drop headers that are no longer necessary for build Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22arm: mach-k3: Move TI dummy keys out of board folderNishanth Menon
This file is used to emulate customer keys on TI development board ecosystems, move it out of board/ directory and into mach-k3. And change the relative paths to absolute paths in the binman paths. While at it, drop the reference in verdin-binman file which is redundant. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com> Acked-by: Manorit Chawdhry <m-chawdhry@ti.com>
2023-11-22arm: mach-k3: Move K3 degenerate keys out of board folderNishanth Menon
This file is common for all of K3, move it out of board/ directory and into mach-k3. And change the relative paths to absolute paths in the binman paths. While at it, drop the reference in verdin-binman file which is redundant. Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Andrew Davis <afd@ti.com>
2023-11-22arm: mach-k3: Move sysfw-loader into R5 directoryAndrew Davis
SYSFW is only ever loaded by the R5 core, move the code into that directory. While here also move the related Kconfig symbols. Signed-off-by: Andrew Davis <afd@ti.com>
2023-11-22arm: mach-k3: Remove incorrect checks for SPL buildAndrew Davis
The kconfig option SPL means this build supports SPL but not that this build is SPL, nor that this build is the SPL running on R5. For options that are for R5 SPL use CPU_V7R. Signed-off-by: Andrew Davis <afd@ti.com>
2023-11-22arm: mach-k3: Move R5 specific code into new r5/ directoryAndrew Davis
This makes it clear these are only to be used by the R5 builds of SPL. And this will be used to later more cleanly split the two builds. Signed-off-by: Andrew Davis <afd@ti.com>
2023-11-22arm: mach-k3: j721s2: Move board selection to mach-k3Andrew Davis
Currently each set of board targets from a vendor is selected inside the board directory for that vendor. This has the problem of multiple targets, one from each vendor, being selectable at the same time. For instance you can select both TARGET_AM654_A53_EVM and TARGET_IOT2050_A53 in the same build. To fix this we need to move the target board choice to a common location for each parent SoC selection. Do this in arch/arm/mach-k3. Signed-off-by: Andrew Davis <afd@ti.com>
2023-11-22arm: mach-k3: am62ax: Move board selection to mach-k3Andrew Davis
Currently each set of board targets from a vendor is selected inside the board directory for that vendor. This has the problem of multiple targets, one from each vendor, being selectable at the same time. For instance you can select both TARGET_AM654_A53_EVM and TARGET_IOT2050_A53 in the same build. To fix this we need to move the target board choice to a common location for each parent SoC selection. Do this in arch/arm/mach-k3. Signed-off-by: Andrew Davis <afd@ti.com>
2023-11-22arm: mach-k3: am62x: Move board selection to mach-k3Andrew Davis
Currently each set of board targets from a vendor is selected inside the board directory for that vendor. This has the problem of multiple targets, one from each vendor, being selectable at the same time. For instance you can select both TARGET_AM654_A53_EVM and TARGET_IOT2050_A53 in the same build. To fix this we need to move the target board choice to a common location for each parent SoC selection. Do this in arch/arm/mach-k3. Signed-off-by: Andrew Davis <afd@ti.com>
2023-11-22arm: mach-k3: am64x: Move board selection to mach-k3Andrew Davis
Currently each set of board targets from a vendor is selected inside the board directory for that vendor. This has the problem of multiple targets, one from each vendor, being selectable at the same time. For instance you can select both TARGET_AM654_A53_EVM and TARGET_IOT2050_A53 in the same build. To fix this we need to move the target board choice to a common location for each parent SoC selection. Do this in arch/arm/mach-k3. Signed-off-by: Andrew Davis <afd@ti.com>
2023-11-22arm: mach-k3: am65x: Move board selection to mach-k3Andrew Davis
Currently each set of board targets from a vendor is selected inside the board directory for that vendor. This has the problem of multiple targets, one from each vendor, being selectable at the same time. For instance you can select both TARGET_AM654_A53_EVM and TARGET_IOT2050_A53 in the same build. To fix this we need to move the target board choice to a common location for each parent SoC selection. Do this in arch/arm/mach-k3. Signed-off-by: Andrew Davis <afd@ti.com>
2023-11-22arm: mach-k3: j721e: Move board selection to mach-k3Andrew Davis
Currently each set of board targets from a vendor is selected inside the board directory for that vendor. This has the problem of multiple targets, one from each vendor, being selectable at the same time. For instance you can select both TARGET_AM654_A53_EVM and TARGET_IOT2050_A53 in the same build. To fix this we need to move the target board choice to a common location for each parent SoC selection. Do this in arch/arm/mach-k3. Signed-off-by: Andrew Davis <afd@ti.com>
2023-11-22board: ti: Add dependency from TARGET selection to SOCAndrew Davis
Currently the K3 selection for TARGET boards does not depend on the SoC for which it is based. This leds to the odd ability to select for instance both SOC_K3_AM625 and TARGET_J721E_A72_EVM. To fix this the target choice should depend on the matching SOC config. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2023-11-22Merge tag 'tpm-next-22112023' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-tpm into next tpm_tis_send-cleanup
2023-11-22tpm: remove superfluous check in tpm_tis_send()Heinrich Schuchardt
Checking if variable chip is NULL after dereferencing it makes no sense. As discribed in [1] it is not expected that the variable can ever be NULL. [1] Re: [PATCH] tpm: avoid NULL pointer dereference in tpm_tis_send() https://lore.kernel.org/u-boot/YaFwDtKKYRr7qzWc@apalos.home/ Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2023-11-20Merge tag 'v2024.01-rc3' into nextTom Rini
Prepare v2024.01-rc3
2023-11-20Prepare v2024.01-rc3v2024.01-rc3Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2023-11-20configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2023-11-20scsi: set dma direction to NONE for TEST UNIT READYNikita Yushchenko
SCSI device scan code was executing TEST UNIT READY command without explicitly setting dma direction in struct scsi_cmd to NONE, so command was passed to driver with dma direction set to DMA_FROM_DEVICE, inherited from older usage. With WDC SDINDDH6-64G ufs device, that caused TEST UNIT READY to return error. Fix that, by explicitly setting dma direction to NONE for TEST UNIT READY, and restoring it back DMA_FROM_DEVICE for the following READ CAPACITY. Signed-off-by: Nikita Yushchenko <nikita.yoush@cogentembedded.com> Reviewed-by: Marek Vasut <marex@denx.de>
2023-11-18Merge tag 'efi-next-18112023' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-tpm into next EFI HTTP Boot is currently supported by using a combination of wget, blkmap and bootefi commands. The user has to download the image, mount it using blkmap and then execute the efi installer using bootefi. This series simplifies the user experience. Instead of doing all the steps manually, users can now enable a new Kconfig (EFI_HTTP_BOOT) which will select wget, blkmap and dns options. They can then use efidebug command to add a boot option for the EFI Bootmanager using => efidebug boot add -u 3 netinst http://<path> => efidebug boot order 3 => bootefi bootmgr The boot manager will automatically download and mount the image. Once it's mounted it will locate and launch the installer. It's worth noting that this rarely fails, but the reason is irrelevant to the current patchset. More information can be found here https://lore.kernel.org/u-boot/CAOMZO5CoduEgwgdQiybmoKh6qQZOezUtRRQO4ecaGdZBBz5dDw@mail.gmail.c om/ The tl;dr is that wget sometimes fails to download the file correctly or set the size env variables. We expect all these to be solved once LWIP is stable and pulled
2023-11-18Merge branch 'master-mmc-clock' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-sh
2023-11-18doc: uefi: add HTTP Boot supportMasahisa Kojima
This adds the description about HTTP Boot. [Ilias add the new EFI_HTTP_BOOT option in docs] Lore: https://lore.kernel.org/u-boot/20231110042542.3797301-1-masahisa.kojima@linaro.org/T/#m36acf922a888cc14f74e823ec57bacd9f977194e Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2023-11-18cmd: efidebug: add uri device pathMasahisa Kojima
This adds the URI device path option for 'boot add' subcommand. User can add the URI load option for downloading ISO image file or EFI application through network. Currently HTTP is only supported. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2023-11-18efi_loader: support boot from URI device pathMasahisa Kojima
This supports to boot from the URI device path. When user selects the URI device path, bootmgr downloads the file using wget into the address specified by loadaddr env variable. If the file is .iso or .img file, mount the image with blkmap then try to boot with the default file(e.g. EFI/BOOT/BOOTAA64.EFI). Since boot option indicating the default file is automatically created when new disk is detected, system can boot by selecting the automatically created blkmap boot option. If the file is PE-COFF file, load and start the downloaded file. The buffer used to download the ISO image file must be reserved to avoid the unintended access to the image and expose the ramdisk to the OS. For PE-COFF file case, this memory reservation is done in LoadImage Boot Service. [Ilias fix a few memory leaks by replacing returns with gotos] Lore: https://lore.kernel.org/u-boot/20231110042542.3797301-1-masahisa.kojima@linaro.org/T/#mbac31da301ff465b60894b38f3a587b2868cf817 Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>