summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-03-21arm: dts: ti: verdin-am62: R5: Set memory size to 2gbMax Krummenacher
The maximum DDR RAM size stuffed on the Verdin AM62 is 2GB, correct the memory node accordingly. Commit 3610dbfc37e3 ("ram: k3-ddrss: Set SDRAM_IDX using device private data, ddr_ram_size") now evaluates the device tree property and limits DDR access to the specified size. Thus set the maximum stuffed size in the dts corresponding to what is set in CFG_SYS_SDRAM_SIZE. If CFG_SYS_SDRAM_SIZE is bigger than what is set in the device tree SPLs and U-Boot freeze when probing for the DDR size. Upstream-Status: Pending The R5 dtb memory node is only needed in downstream TI U-Boot. All mainline AM62 boards do not set the node, when said commit gets upstreamed we can follow the pattern TI adds the node to the dtb. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2024-03-21arm64: dts: ti: verdin-am62: Set memory size to 2gbMax Krummenacher
The maximum DDR RAM size stuffed on the Verdin AM62 is 2GB, correct the memory node accordingly. Commit 3610dbfc37e3 ("ram: k3-ddrss: Set SDRAM_IDX using device private data, ddr_ram_size") now evaluates the device tree property and limits DDR access to the specified size. Thus set the maximum stuffed size in the dts corresponding to what is set in CFG_SYS_SDRAM_SIZE. If CFG_SYS_SDRAM_SIZE is bigger than what is set in the device tree SPLs and U-Boot freeze when probing for the DDR size. Upstream-Status: Submitted [https://lore.kernel.org/all/20240320142937.2028707-1-max.oss.09@gmail.com/] Submitted to the linux kernel. Upstream U-Boot will get it through the regular sync with Linux. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2024-03-21arm: dts: k3-am625-verdin: rename all fsstub as tifsstubParth Pancholi
Replace all the fsstub occurences with tifsstub to avoid new terminology and resulting confusion. This follows commit 57f1e97afad ("arm: dts: k3-*: s/fsstub/tifsstub/") Upstream-Status: Pending Signed-off-by: Parth Pancholi <parth.pancholi@toradex.com>
2024-03-21arm: dts: k3-*-binman: Move to using ti-dm entry typeNeha Malcom Francis
Move the DM entry in tispl.bin FIT image from default fetching an external blob entry to fetching using ti-dm entry type. This way, the DM entry will be populated by the TI_DM pathname if provided. Else it will resort to the ti-dm.bin file. Signed-off-by: Neha Malcom Francis <n-francis@ti.com> Reviewed-by: Andrew Davis <afd@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org> Upstream-Status: Backport [3ef977e085767df31e42262f15837a66558052db] Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2024-03-21arm: dts: k3-am62p-binman: Move to using ti-dm entry typeVignesh Raghavendra
Move the DM entry in tispl.bin FIT image from default fetching an external blob entry to fetching using ti-dm entry type. This way, the DM entry will be populated by the TI_DM pathname if provided. Else it will resort to the ti-dm.bin file. Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2024-03-21arm: dts: k3-j7200-binman: Add support for HSSE1.0 and HSFS1.0Neha Malcom Francis
J7200 has SR1.0 and SR2.0 having three variants of each GP, HS-FS and HS-SE. Current build does not generate HS-SE SR1.0 and HS-FS SR1.0 so add support for them. Reported-by: Suman Anna <s-anna@ti.com> Reported-by: Aniket Limaye <a-limaye@ti.com> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
2024-03-21arm: dts: k3-j721e-binman: Add support for HSSE2.0 and HSFS1.1Neha Malcom Francis
J721E has SR1.1 and SR2.0 having three variants of each GP, HS-FS and HS-SE. Current build does not generate HS-SE SR2.0 and HS-FS SR1.1 so add support for them. Reported-by: Suman Anna <s-anna@ti.com> Signed-off-by: Neha Malcom Francis <n-francis@ti.com> Reviewed-by: Suman Anna <s-anna@ti.com>
2024-03-21configs: am62x_lpsk_a53_defconfig: Enable splashscreen for A53 SPLDevarsh Thakkar
- Enable BMP and Splash screen related configs - Enable bloblist support to pass video blob from SPL stage to U-boot proper. - Use same memory map for enabling splash screen as used for AM62x[1] : -> Create space for loading bmp image file by moving the malloc area and BSS region down to 0x80b80000 and 0x80c80000 respectively -> Increase the SPL size limit and SPL stack size to 512 KiB and 2KiB respectively to accommodate splash support -> Set stack above the malloc region and report stack overflow by setting CONFIG_SPL_SYS_REPORT_STACK_F_USAGE - Enable simple malloc() for A53 SPL - Enable simplefb and fb reservation for A53 SPL Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21configs: am62x_lpsk_a53_defconfig: Sort the defconfigDevarsh Thakkar
Run `make savedefconfig` to sort the defconfig. Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21arm64: dts: ti: k3-am62x-lp-sk: Enable Microtips OLDI Panel for splash screenDevarsh Thakkar
Enable microtips mf101hie OLDI panel and link it with DSS ports to enable splash screen on AM62x LP SK. Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21HACK: common: splash_source: Don't compile NAND util functions for SPLDevarsh Thakkar
The NAND flash utility functions under CONFIG_CMD_NAND should not be compiled at SPL stage as the underlying functions are under separate Kconfigs viz. CONFIG_ENV_IS_IN_NAND and hence are not supported at SPL stage right now for splash screen. Long term, the NAND flash utility functions and their dependencies need to be tied with splash screen specific Kconfigs too as splash logo file can be present in NAND storage before bootup. Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21configs: j784s4_evm: Update offset OSPI NANDApurva Nandan
Update size of tiboot3.bin is exceeding allocated area of 512KB, 1MB assigned to tiboot3.bin. Default offset for tispl.bin will not work for OSPI NAND. Add config for tispl.bin offset. Signed-off-by: Apurva Nandan <a-nandan@ti.com>
2024-03-21HACK: arm: mach-k3: Fix R5 build errorRavi Gunasekaran
commit 2764be4345 ("remoteproc: uclass: Add methods to load firmware to rproc and boot rproc") selects FS_LOADER in Kconfig and this breaks R5 build for some defconfigs across multiple platforms. Enabling CONFIG_SPL_FS_LOADER does not help for all cases. Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com> Tested-by: MD Danish Anwar <danishanwar@ti.com>
2024-03-21configs: am62x: am62px: Enable simple-framebufferDevarsh Thakkar
Enable simple-framebuffer support for AM62x and AM62p platforms which have early splash screen enabled. This updates the simple-framebuffer node in Linux device-tree on the fly with framebuffer address and meta-data and also reserves framebuffer region in device-tree. Also disable the simple-framebuffer support in am62p's prune splashscreen config fragment as it is not required without splashscreen support. Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21configs: am62x: am62px: Sort the A53 defconfigsDevarsh Thakkar
Run `make savedefconfig` to sort the A53 defconfig files for AM62x and AM62p. Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21board: ti: am62x: am62px: evm: Update simple-framebuffer node in device-treeDevarsh Thakkar
Update simple-framebuffer device-tree node by enumerating framebuffer related information in existing simple-framebuffer node in Linux device-tree file and enabling it. While at it, ignore error return value for framebuffer related DT node updates as a non-zero return value for ft_board_setup is treated as a fatal error causing board reset. In case there is no simple-framebuffer stub detected in Linux kernel device-tree and video is still active, then update the device-tree to reserve the framebuffer region for the active splash screen. This helps preserve the splash screen till the display server takes over after OS is booted. In case the simplefb node update or the framebuffer reservation fails we treat it as a non-fatal error and avoid returning error to parent function as the non-zero return value of ft_board_setup is treated as fatal error which leads to board reset Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21common: Move framebuffer reservation to separate helperDevarsh Thakkar
Create separate helper for just reserving framebuffer region without creating or enabling simple-framebuffer node. This is useful for scenarios where user want to preserve the bootloader splash screen till OS boots up and display server gets started without displaying anything else in between and thus not requiring simple-framebuffer. Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21common: fdt_simplefb: Enumerate framebuffer info from video handoffDevarsh Thakkar
Enable and update simple-framebuffer node using the video handoff bloblist if video was enabled at SPL stage and corresponding video bloblist was received at u-boot proper with necessary parameters. Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21video: Assume video to be active if SPL is passing video hand-offDevarsh Thakkar
If SPL is passing video handoff structure to U-boot then it is safe to assume that SPL has already enabled video and that's why it is passing video handoff structure to U-boot so that U-boot can preserve the framebuffer. Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21video: Fill video handoff in video post probeDevarsh Thakkar
Fill video handoff fields in video_post_probe as at this point we have full framebuffer-related information. Also fill all the fields available in video hand-off struct as those were missing earlier and U-boot framework expects them to be filled for some of the functionalities. While filling framebuffer size in video hand-off structure use the actual framebuffer region size as derived from gd->video_top and gd->video_bottom instead of directly using the size populated in video_uc_plat as it contains unaligned size. Reported-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21ram: k3-ddrss: Set SDRAM_IDX using device private data, ddr_ram_sizeSanthosh Kumar K
The SDRAM_IDX in DDRSS_V2A_CTL_REG describes the number of address bits minus 16 that are used to determine the mask used to detect memory rollover and prevent aliasing and false coherency issues. Set SDRAM_IDX using the device private data, ddr_ram_size for AM64x, AM62x and AM62x SIP. Signed-off-by: Santhosh Kumar K <s-k6@ti.com> Acked-by: Bryan Brattlof <bb@ti.com>
2024-03-21environment: ti: mmc_android: add vbmeta_vendor_dlkm partitionGuillaume La Roque
Add new partition to support avb on vendor_dlkm partition. Add for both Beagle Play and AM62X SK EVM. Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> [mkorpershoek: added beagle play bits] Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2024-03-21board: ti: am62x: beagleplay: android: Add frp partitionMattijs Korpershoek
Factory Reset Protection (frp) is a required Android partition in order to support factory reset via the SystemUI. It's been added to am62x SK EVM partition list in commit bc8e096e814 ("environment: ti: mmc_android: add frp partition") Add it to the Beagle Play partitioning table as well. Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2024-03-21board: ti: am62x: beagleplay: android: Fix metadata partition sizeMattijs Korpershoek
commit d1857c85e2d ("environment: ti: mmc_android: update metadata partition") switched the metadata partition to use f2fs file system. This requires a size increase of the partition to avoid the following flash error: Flashing metadata partition Warning: skip copying metadata image avb footer (metadata partition size: 16777216, metadata image size: 63963136). Sending 'metadata' (62464 KB) OKAY [ 2.477s] Writing 'metadata' FAILED (remote: 'too large for partition') fastboot: error: Command failed Increase the metadata partition size for Beagle Play as well. Fixes: d1857c85e2d ("environment: ti: mmc_android: update metadata partition") Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2024-03-21configs: am62px: r5: Bump up malloc length to 3MiBDevarsh Thakkar
Bump up malloc length to 3MiB for R5 SPL, as the size of tispl.bin is increased now after introduction of splash and caching support and with display-cluster enabled DM firmware, R5 SPL fails to load tispl.bin with below issue : "U-Boot SPL 2023.04-g7d05009917 (Feb 15 2024 - 18:08:11 +0000) SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.1--v09.02.01 (Kool Koala)') SPL initial stack usage: 17072 bytes Trying to boot from MMC2 alloc space exhausted SPL: failed to boot from all boot devices" Fixes: a7e8f56abf9 ("board: ti: am62p: Add splash screen support") Reviewed-by: Kamlesh Gurudasani <kamlesh@ti.com> Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21board: ti: am62p: Fix compilation warning for implicit declarationDevarsh Thakkar
Fixes below warning by including cpu_funcs.h: "board/ti/am62px/evm.c: In function `spl_board_init`: board/ti/am62px/evm.c:83:9: warning: implicit declaration of function `enable_caches` [-Wimplicit-function-declaration] 83 | enable_caches();" | ^~~~~~~~~~~~~ While at it, also sort the include headers by placing video.h at the end. Fixes: a7e8f56abf9 ("board: ti: am62p: Add splash screen support") Reviewed-by: Kamlesh Gurudasani <kamlesh@ti.com> Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
2024-03-21environment: ti: mmc_android: add frp partitionGuillaume La Roque
Add new partition to support factory reset protection with android 14. It's needed to be able to do factory reset. Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
2024-03-21environment: ti: mmc_android: update metadata partitionGuillaume La Roque
To fix vts_fs_test and be compliance with google requirements we need to move on f2fs partition type. fastboot format metadata fail with actual size so update it to 64MB. Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
2024-03-21arm: dts: k3-*-binman: Make default DM file optionalNeha Malcom Francis
The default DM firmware path is non-optional as of now. Make it optional so that users that choose to provide DM via TI_DM argument instead of BINMAN_INDIRS can do so without build errors. Cc: Chirag Shilwant <c-shilwant@ti.com> Signed-off-by: Neha Malcom Francis <n-francis@ti.com> Tested-by: Chirag Shilwant <c-shilwant@ti.com>
2024-03-21arm: dts: k3-am6*: Fix bus-width property in MMC nodesJudith Mendez
Move bus-width property to *main.dtsi, above the OTAP/ITAP delay values. While there is no error with where it is currently at, it is easier to read the MMC node if the bus-width property is located above the OTAP/ITAP delay values consistently across MMC nodes. Add missing bus-width DTS property for sdchi2 in k3-am62-main. Signed-off-by: Judith Mendez <jm@ti.com>
2024-03-21arm: dts: k3-am6*: Fix ti,clkbuf-sel property in MMC nodesJudith Mendez
Move ti,clkbuf-sel property above the OTAP/ITAP delay values. While there is no error with where it is currently at, it is easier to read the MMC node if ti,clkbuf-sel is located above the OTAP/ITAP delay values consistently across MMC nodes. Add missing ti,clkbuf-sel DTS property for sdhci0 in k3-am64-main. Signed-off-by: Judith Mendez <jm@ti.com>
2024-03-21arm: dts: k3-am6*: Remove DLL properties for soft PHYsJudith Mendez
Remove DLL properties which are not applicable for soft PHYs since these PHYs do not have a DLL to enable. Signed-off-by: Judith Mendez <jm@ti.com>
2024-03-21arm: dts: k3-am62p-main: Fix ITAP/OTAP values for MMCJudith Mendez
Update MMC OTAP/ITAP values according to the datasheet [0], refer to Table 7-79 for MMC0 and Table 7-97 for MMC1/MMC2. [0] https://www.ti.com/lit/ds/symlink/am62p.pdf Signed-off-by: Judith Mendez <jm@ti.com>
2024-03-21arm: dts: k3-am62a-main: Fix ITAP/OTAP values for MMCJudith Mendez
Update MMC0/MMC1 OTAP/ITAP delay values according to the datasheet [0], refer to Table 7-79 for MMC0 and Table 7-97 for MMC1. [0] https://www.ti.com/lit/ds/symlink/am62a7.pdf Signed-off-by: Judith Mendez <jm@ti.com>
2024-03-21arm: dts: k3-am64-main: Fix ITAP/OTAP values for MMCJudith Mendez
Update MMC0/MMC1 OTAP/ITAP values according to the datasheet [0], refer to Table 7-68 for MMC0 and Table 7-77 for MMC1. Move ITAPDLY values after OTAPDLY values to make MMC nodes more uniform across devices. [0] https://www.ti.com/lit/ds/symlink/am6442.pdf Signed-off-by: Judith Mendez <jm@ti.com>
2024-03-21arm: dts: k3-am62a-main: Add sdhci2 instanceJudith Mendez
Add sdhci2 DT node in k3-am62a-main for mmc2. Add otap/itap values according to the datasheet[0], Refer to Table 7-97. [0] https://www.ti.com/lit/ds/symlink/am62a3.pdf Signed-off-by: Judith Mendez <jm@ti.com>
2024-03-21board: ti: common: remove debounce config from rtcBryan Brattlof
commit d36ad81d25a99 ("board: ti: common: add rtc setup to common folder") I had mistakenly copied over the gpio debounce configuration into the external 32k rtc crystal setup. Unfortunately this causing issues with the DSP on the AM62Ax SoC family. Because we have no need to configure debounce on our SK boards, let's just rip this out for now. Signed-off-by: Bryan Brattlof <bb@ti.com>
2024-03-21arm: dts: k3-am62x-sip-lp4: update to latest emif outputBryan Brattlof
Nothing much has changed between the versions of the emif output. Some changes to the PHY_PAD_CAL_IO_CFG_0, PHY PAD RST DRIVE, and PHY_CAL_CLK_SELECT_0 should add some minor stability improvements. Nonetheless, update to the latest characterization developments. Signed-off-by: Bryan Brattlof <bb@ti.com>
2024-03-21board: ti: am6*x: evm: Fix up incorrect RAM size for AM62A and AM62PSanthosh Kumar K
The fixup_memory_node() does no change in AM64, AM62A and AM62P when ECC is not enabled. Instead, it causes an issue of fixing up the RAM size as 2GB instead of 4GB and 8GB for AM62A and AM62P because the fix up is done by the R5 SPL and R5 being a 32-bit processor, the gd->bd->bi_dram[bank].start and gd->bd->bi_dram[bank].size values are restricted to 32-bits. So, remove the fixup_memory_node() from spl_perform_fixups() in AM64, AM62A and AM62P's evm files. Fixes: 410888e38c7e ("board: ti: Pull redundant DDR functions to a common location and Fixup DDR size when ECC is enabled") Signed-off-by: Santhosh Kumar K <s-k6@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2024-03-21configs: j784s4_evm: Update offset for emmc and OSPIUdit Kumar
On AM69 board, build image was going beyond wrt defined offsets. So increasing offset for eMMC and OSPI boot. Along with update in corresponding device tree. Cc: Neha Francis <n-francis@ti.com> Cc: Vaishnav Achath <vaishnav.a@ti.com> Cc: Apurva Nandan <a-nandan@ti.com> Signed-off-by: Udit Kumar <u-kumar1@ti.com> Reviewed-by: Neha Malcom Francis <n-francis@ti.com> Tested-by: Beleswar Padhi <b-padhi@ti.com>
2024-03-21dma: ti: k3-udma: Fix ring_idx to pair k3 nav rings"Udit Kumar
OSPI boot was broken due to wrong pairing of DMA Fixes: 61ea32c0eb0c ("dma: ti: k3-udma: Use ring_idx to pair k3 nav rings") Reported-by: Minas Hambardzumyan <minas@ti.com> Cc: MD Danish Anwar <danishanwar@ti.com> Cc: Vignesh Raghavendra <vigneshr@ti.com> Cc: Praneeth Bajjuri <praneeth@ti.com> Signed-off-by: Udit Kumar <u-kumar1@ti.com>
2024-03-21board: ti: j721s2: Move order of AVS probingUdit Kumar
AVS driver was getting probed with base device tree, which leads i2c of derivative board (AM68) in bad state. Moving AVS probe after detection of right device tree. Fixes: eaa184009775 ("arm: k3: j721s2: Enable AVS") Reported-by: Minas Hambardzumyan <minas@ti.com> Cc: Manorit Chawdhry <m-chawdhry@ti.com> Cc: Vignesh Raghavendra <vigneshr@ti.com> Cc: Praneeth Bajjuri <praneeth@ti.com> Signed-off-by: Udit Kumar <u-kumar1@ti.com>
2024-03-21arm: dts: k3-am62x-lp4: update to latest emif tool outputBryan Brattlof
The output from the emif tool hasn't changed for a while now, however there is still a difference from what we use. Signed-off-by: Bryan Brattlof <bb@ti.com>
2024-03-21arm: dts: k3-am62x-ddr: update to latest output from emif toolBryan Brattlof
The output from the emif tool hasn't changes in a long while however there are some differences. Update to these latest settings. Signed-off-by: Bryan Brattlof <bb@ti.com>
2024-03-21arm: dts: k3-am62a-lp4: update to latest output from the emif toolBryan Brattlof
After a little debugging on the am62px some of these values will need to be changed. Update to these new values to improve stability at higher IO voltages. Signed-off-by: Bryan Brattlof <bb@ti.com>
2024-03-21arm: dts: k3-am62p-lp4: update to latest DDR configsBryan Brattlof
After a little bit of debugging and characterization at different IO voltages, some of these values will need to change. Update to these latest settings to improve stability at higher IO voltages. Signed-off-by: Bryan Brattlof <bb@ti.com>
2024-03-21ram: k3-ddrss: ram_ops should be a constantBryan Brattlof
I do not think the R5 SPL will initialize non static variables (I didn't find and evidence of it) so we want to ensure this is a constant. Signed-off-by: Bryan Brattlof <bb@ti.com>
2024-03-21ram: k3-ddrss: limit only the am64x addressable rangeBryan Brattlof
The AM64x and some of the AM62xx family of devices use the same 16b controller though only the AM64x is limited to 2GB addressable. Annoyingly the address alias detection machinery defaults to the full 8GB for the AM64x. Reset this value to 2GB only if we're initializin DDR on an am64x device Signed-off-by: Bryan Brattlof <bb@ti.com>
2024-03-21board: ti: am64x: Set fw_storage_interface and fw_dev_part ENVsMD Danish Anwar
When ICSSG driver is enabled (CONFIG_TI_ICSSG_PRUETH=y) set fw_storage_interface and fw_dev_part env variables. These variables need be set appropriately in order to load differnet ICSSG firmwares needed for ICSSG driver. By default the storage interface is mmc and the partition is 1:2. User can modify this based on their needs. Signed-off-by: MD Danish Anwar <danishanwar@ti.com>
2024-03-21configs: am64x_evm_a53: Enable ICSSG DriverMD Danish Anwar
Enable ICSSG driver, DP83869 phy driver, REMOTEPROC and PRU_REMOTEPROC in am64x_evm_a53_defconfig. All these configs are needed for ICSSG driver. Signed-off-by: MD Danish Anwar <danishanwar@ti.com>