Commit Graph

24264 Commits

Author SHA1 Message Date
Samuel Dolt 5fdf57516a rename genimi to hw34 2024-02-12 16:26:19 +01:00
Stefan Eichenberger 04eb56941b gemini: board: add board and device tree
Add gemini as new am64x board including, board configuration, devicetree
and configuration.
2024-01-11 14:10:11 +01:00
Judith Mendez 53922d6b9f arm: dts: k3-am62p5-sk: remove no-1-8 for mmc1
Remove no-1-8 dts attribute for mmc1, allowing us to enter
the UHS mode.

Signed-off-by: Judith Mendez <jm@ti.com>
2023-12-06 09:07:53 -06:00
Judith Mendez 8177a2638b arm: dts: k3-am62p: add dll delay mapping for mmc
Add the input and output delay values for the available speed modes
for the MMC controller for mmc1/mmc2 for the am62p5 allowing it
to operate at the highest speed modes available, exclude SDR12 since
the speed mode did pass validation.

The higher speed modes have not been finalized yet, but the process
is to set the base value, then update if characterization says
otherwise.

For mmc0, sync with TI's v6.1 kernel.

Signed-off-by: Judith Mendez <jm@ti.com>
2023-12-06 09:07:37 -06:00
Udit Kumar eaa1840097 arm: k3: j721s2: Enable AVS
Enable AVS in config and probing of AVS node.

Signed-off-by: Udit Kumar <u-kumar1@ti.com>
2023-12-06 09:07:17 -06:00
Udit Kumar 2b8ba79e4a arm: dts: k3-j721s2-r5-common-proc-board: Add avs and buck node
Add AVS and buck node.

Signed-off-by: Udit Kumar <u-kumar1@ti.com>
2023-12-06 09:07:10 -06:00
Markus Schneider-Pargmann 4fda02e747 arm: mach-k3: Remove CANUART IO isolation
After leaving the Partial-IO mode or other deep sleep states, the IO
isolation needs to be removed. This routine is shared by at least am62,
am62a and am62p.

The original function for testing was developed by
Akashdeep Kaur <a-kaur@ti.com>

Signed-off-by: Markus Schneider-Pargmann <msp@baylibre.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
2023-11-28 12:34:52 -06:00
Dhruva Gole e8889cb56a arm: dts: k3: binman: am62p: add support for signing FSSTUB images
Add support for signing, detection and loading of FSSTUB images for
for HSSE and HSFS AM62P devices. Based on the binman code for AM625
with updates to the filenames and load address.

Signed-off-by: Dhruva Gole <d-gole@ti.com>
Acked-by: Vishal Mahaveer <vishalm@ti.com>
2023-11-24 16:56:59 -06:00
Roger Quadros d507c6b2ba arm: dts: k3-am64x-binman: Add NAND overlay and configuration
Add NAND overlay and configuration to tispl and u-boot images.

Signed-off-by: Roger Quadros <rogerq@kernel.org>
2023-11-24 16:53:29 -06:00
Roger Quadros 40e776a36d arm: dts: k3-am642-evm: Add NAND support
Add NAND support for A53 SPL and u-boot.

For A53 SPL & u-boot we use NAND overlay to add NAND support.

Signed-off-by: Roger Quadros <rogerq@kernel.org>
2023-11-24 16:53:29 -06:00
Roger Quadros cc471479d3 arm: dts: k3-am642: main_i2c0 cleanup
move main_i2c0, main-i2c0-pins-default, and tca9554
definitions to where they belong i.e. k3-am642-evm.dts

k3-am642-r5-evm.dts is not cleaned up like in upstream
to include k3-am642-evm.dts so we have to add the
main-i2c0-pins-default and tca9554 nodes to it
as well.

Signed-off-by: Roger Quadros <rogerq@kernel.org>
2023-11-24 16:53:29 -06:00
Roger Quadros 189bd2cc06 arm: mach-k3: am642: Define NAND boot device
AM642 SoC supports booting from GPMC NAND device.
Define boot device for it.

Signed-off-by: Roger Quadros <rogerq@kernel.org>
2023-11-24 16:53:29 -06:00
Vignesh Raghavendra c97fa5cd4a mach-k3: am62p5_init: Add emmc boot support
Add spl_mmc_boot_mode() to help distinguish eMMC raw boot mode.

Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-11-24 16:50:51 -06:00
Vignesh Raghavendra 4209cce84e arm: dts: k3-am62p5-sk: Enable OSPI PHY mode
Enable OSPI PHY mode for faster boot time as PHY mode supports upto
166MHz of OSPI bus freq.

Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-11-23 14:49:54 +05:30
Vignesh Raghavendra 66551ea574 arm: dts: k3-am62p5-r5-sk: Add 32bit OSPI DATA region
Add 32bit OSPI DATA region which enables R5 to access OSPI

Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-11-23 14:49:54 +05:30
Vignesh Raghavendra 34e454793f arm: dts: am62p5-r5-sk: Add DMA support at R5 SPL
OSPI boot requires DMA for faster boot up at R5 SPL stage. Enable the
same.

Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
2023-11-23 14:49:54 +05:30
Vignesh Raghavendra d65ac3de81 arm: dts: k3-am62p-r5-sk: Fix secproxy thread ID for DM2TIFS comm
Per [0] thread IDs should be 20 and 21. Update the same

[0] https://software-dl.ti.com/tisci/esd/latest/5_soc_doc/am62px/sec_proxy.html#secure-proxy-thread-allocation-for-dmass0-sec-proxy-0

Fixes: bc763e60eb ("arm: dts: introduce am62p5 uboot dts files")
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-11-23 14:49:54 +05:30
Judith Mendez 8c121e6e3c HACK: arm: dts: k3-am62p: add dll delay mapping for emmc
Add in the input and output delay values for the available speed modes
for the MMC controller for eMMC for the am62p5 allowing it to operate
that the highest speed modes available.

The patch is labeled as a HACK because the HS200 and HS400 values have
not been finalized as of yet even though they have been tested.

Signed-off-by: Bryan Brattlof <bb@ti.com>
Signed-off-by: Judith Mendez <jm@ti.com>
2023-11-14 17:24:31 -06:00
Mattijs Korpershoek c5296d943c arm: dts: k3-am62p5-sk-u-boot: Add sysreset controller node
The AM62Px SoC uses a central Device Management and Security Controller
(DMSC) processor that manages all the low-level device controls
including the system-wide SoC reset. The system-wide reset is managed
through the system reset driver.

Add a sysreset controller node as a child of the dmsc node to enable
the "reset" command from U-Boot prompt for the K3 AM62p5 SK EVM.

This is based on commit a97ee92e4a ("arm: dts: k3-am642-evm: Add sysreset controller node")

Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2023-11-08 17:32:17 -06:00
Vibhore Vardhan 43d7c74e78 arm: dts: k3: binman: am62a: add support for signing FSSTUB images
Add support for signing, detection and loading of FSSTUB images for
for HSSE, HSFS and GP AM62a devices. Based on the binman code for AM625
with updates to the filenames and load address.

Signed-off-by: Vibhore Vardhan <vibhore@ti.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Tested-by: Vishal Mahaveer <vishalm@ti.com>
2023-11-07 15:29:16 -06:00
Ravi Gunasekaran dbd581fff4 arm: dts: k3-am62p5-sk-u-boot: Configure USB0 in peripheral mode
Configure USB0 in peripheral mode so that USB DFU can be the
default USB boot mode supported.

Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2023-11-03 17:40:06 -05:00
Ravi Gunasekaran 0ec07d2146 HACK arm: dts: k3-am62p-wakeup: Update wkup_conf compatible to syscon, simple-mfd
ti,syscon-phy-pll-refclk property in the USB expects the wkup_conf to
be syscon compatible to setup the regmap. So update wkup_conf compatible
until the dependency of such nodes on wkup_conf are resolved.

Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2023-11-03 17:40:06 -05:00
Bryan Brattlof b0d868ee08 arm: dts: k3-am62p: sync with linux again
There are a few updates from TI's Linux mostly centered around
out-of-box remote core demo enablement and we added the bootph-all
property to sdchi0 to enable eMMC as a boot method.

Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-11-02 17:53:54 -05:00
Bryan Brattlof 6702f57e9e arm: dts: add am62p dtbs to makefile
Thanks to the CONFIG_DEFAULT_DEVICE_TREE option in the defconfig the
correct device tree blobs are being built for each uboot stage. However
rather than relying on this add a am62p5 target to the arm/dts/Makefile

Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-10-31 17:41:50 -05:00
Nishanth Menon 1134dd5dfe arm: dts: Fix build of am62a7 dtbs
am62a7 should be built with CONFIG_SOC_K3_AM62A7 not CONFIG_SOC_K3_AM625

Fixes: 6bdfa69155 ("arm: dts: introduce am62a7 u-boot dtbs")
Cc: Bryan Brattlof <bb@ti.com>
Cc: Vignesh Raghavendra <vigneshr@ti.com>
Cc: Francesco Dolcini <francesco@dolcini.it>
Cc: Sjoerd Simons <sjoerd@collabora.com>
Cc: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Bryan Brattlof <bb@ti.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
2023-10-31 17:41:50 -05:00
Ravi Gunasekaran a8b5e02267 arm: dts: k3-am62p5-sk: Update cpsw3g_mdio node
Add the missing pinctrl info for cpsw3g_mdio and enable
the node.

Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2023-10-30 18:36:32 +05:30
Ravi Gunasekaran db0964fd6c arm: dts: k3-am62p5-sk-u-boot: Update main_pktdma node
Update reg list in main_pktdma node

Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2023-10-30 18:36:32 +05:30
Bryan Brattlof 4c358e4785 arm: dts: k3-am62p: sync with TI's v6.1 kernel
Copy over the DTBs for the am62p5-sk to enable more boot modes.

Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-10-26 17:04:09 -05:00
Bryan Brattlof bc763e60eb arm: dts: introduce am62p5 uboot dts files
Include the uboot device tree files needed to boot the board.

Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-10-24 15:35:42 -05:00
Bryan Brattlof 5014368187 arm: dts: add am62p5 dtbs from linux
Pull in the device tree source files for TI's am62p5 SoCs needed to boot
the board from v6.6-rc5. These are an early release with only the
peripherals to boot the board via UART boot

[bb@ti.com: used DTBs from TI's v6.1 kernel]
Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-10-24 15:35:42 -05:00
Bryan Brattlof 817bff8f64 board: ti: introduce basic board files for the am62px family
Introduce the basic files needed to support the am62px family of SoCs

Co-developed-by: Hari Hagalla <hnagalla@ti.com>
Signed-off-by: Hari Hagalla <hnagalla@ti.com>
Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-10-24 15:35:42 -05:00
Bryan Brattlof ca1c7e2b62 arch: mach-k3: introduce basic files to support the am62px SoC family
Introduce the basic functions and definitions needed to properly
initialize Ti's am62p family of SoCs

[bb@ti.com: rebased on TI's 2023.04 uboot]
Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-10-24 15:35:42 -05:00
Bryan Brattlof d08a421e0c arm: mach-k3: invert logic for split DM firmware config
Currently for the K3 generation of SoCs there are more SoCs that utilize
the split firmware approach than the combined DMSC firmware. Invert the
logic to avoid adding more and more SoCs to this list.

[bb@ti.com: rebased on TI's 2023.04 uboot]
Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-10-24 15:35:41 -05:00
Bryan Brattlof 5baba95077 arm: mach-k3: am62px: introduce clock and device files for wkup spl
Include the clock and lpsc tree files needed for the wkup spl to
initialize the proper PLLs and power domains to boot the SoC.

[bb@ti.com: rebased to TI's 2023.04 uboot]
Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-10-24 15:35:41 -05:00
Bryan Brattlof 835854816d soc: add info to identify the am62p SoC family
Include the part number for TI's am62px family of SoCs so we can
properly identify it during boot

[bb@ti.com: rebased to TI's 2023.04 uboot]
Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-10-24 15:35:41 -05:00
Vignesh Raghavendra 5f8eb8ccc6 mach-k3: am62x: Fix BOOT_DEVICE_SPINAND index
BOOT_DEVICE_SPINAND and BOOT_DEVICE_UART have same index of 0x7, this
leads to attempting SPINAND boot during UART boot. Fix this by
allocating unique value to BOOT_DEVICE_SPINAND. While at that move it
out of unused list as SPINAND boot is very much supported on AM62x SoCs.

Fixes: 8c7827f522 ("arm: mack-k3: am62x: Add SPI NAND as a boot device")
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-10-18 12:24:00 -05:00
Apurva Nandan 8ef4b6ee68 arm: dts: k3-j721e-r5-common-proc-board: Fix OSPI spi-tx-bus-width
spi-tx-bus-width is set as 8 in SoM dtsi, but set to 1 in R5 common
proc board dts, which seems wrong. SPI NOR requires a 8D reset before
probe starts using 0x66+0x99 op, but that will fail if the flash tx
width is set as 1.

Set spi-tx-bus-width to 8 in R5 common proc board dtsi also.

Signed-off-by: Apurva Nandan <a-nandan@ti.com>
Reviewed-by: Vaishnav Achath <vaishnav.a@ti.com>
2023-10-18 09:57:14 +05:30
Neha Malcom Francis 93d4ed3298 arm: dts: k3-j721e-mcu-wakeup: Add MCU domain ESM instance
Currently J721E defines only the main_esm in DTS. Add node for mcu_esm
as well.

According to J721E TRM (12.11.2.2 ESM Environment) [1], we see that the
interrupt line from ESMi (main_esm) is routed to MCU_ESM (mcu_esm). This
is MCU_ESM0_LVL_IN_95 with interrupt ID 95. Configure mcu_esm
accordingly so that errors from main_esm are routed to mcu_esm and
handled.

[1] https://www.ti.com/lit/zip/spruil1

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
2023-10-16 15:59:39 +05:30
Apurva Nandan 83d1a76338 arm: dts: k3-j7xx: binman: Enable split mode for MCU R5F
Set boot core-opts to enable split mode for MCU R5 cluster by default.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Signed-off-by: Apurva Nandan <a-nandan@ti.com>
2023-10-12 21:09:02 +05:30
Apurva Nandan 88e309b21e arm: dts: k3-j7xx-mcu-wakeup: Enable split mode for MCU R5
Previously, MCU R5F runs DM on core0, and core1 sits waiting in WFI mode.
The support to shut the core1 and use it for loading other firmware,
while DM runs on core0, has been added. Enable split-mode on the MCU R5F.

Use the newly introduced compatible for MCU R5F cores.

Signed-off-by: Apurva Nandan <a-nandan@ti.com>
2023-10-12 21:09:02 +05:30
Manorit Chawdhry 761fac39a8 binman: j7200: Add firewall configurations
The following commits adds the configuration of firewalls required to
protect ATF and OP-TEE memory region from non-secure reads and
writes using master and slave firewalls present in our K3 SOCs.

Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
2023-10-12 21:09:02 +05:30
Manorit Chawdhry 1fad1f4bc9 binman: j721s2: Add firewall configurations
The following commits adds the configuration of firewalls required to
protect ATF and OP-TEE memory region from non-secure reads and
writes using master and slave firewalls present in our K3 SOCs.

Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
2023-10-12 21:09:02 +05:30
Manorit Chawdhry 158082c66a binman: j721e: Add firewall configurations
The following commits adds the configuration of firewalls required to
protect ATF and OP-TEE memory region from non-secure reads and
writes using master and slave firewalls present in our K3 SOCs.

Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
2023-10-12 21:09:02 +05:30
Manorit Chawdhry d20a175a8f binman: k3: Add k3-security.h and include it in k3-binman.dtsi
For readability during configuring firewalls, adding k3-security.h file
and including it in k3-binman.dtsi to be accessible across K3 SoCs

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
2023-10-12 21:09:02 +05:30
Keerthy 03bc0bec33 arm: dts: k3-j721s2-r5-common-proc-board: Drop the buck node
Drop the buck node as the AVS is still not enabled and is causing
issues with the xSPI boot.

Signed-off-by: Keerthy <j-keerthy@ti.com>
2023-10-12 21:09:02 +05:30
Keerthy e5935cf5a5 arm: dts: k3-j721s2-r5-common-proc-board: Add ESM PMIC and dependent nodes
PMIC ESM is part of tps6594x PMIC and connected to WKUP_I2C instance.

Signed-off-by: Keerthy <j-keerthy@ti.com>
2023-10-09 14:17:44 +05:30
Keerthy 0088f74e90 arm: dts: ti: k3-j721s2: Add ESM instances
Patch adds the ESM instances for j721s2. It has 3 instances.
One in the main domain and two in the mcu-wakeup domian.

Signed-off-by: Keerthy <j-keerthy@ti.com>
2023-10-09 14:17:39 +05:30
Keerthy f992f9bd84 arm: dts: ti: k3-j7200: Add MCU domain ESM instance
Patch adds the ESM instance for MCU domian of j7200.

Signed-off-by: Keerthy <j-keerthy@ti.com>
2023-10-09 14:17:31 +05:30
Keerthy 5f5e62cd56 arm: dts: ti: k3-j784s4: Add ESM instances
Patch adds the ESM instances for j784s4. It has 3 instances.
One in the main domain and two in the mcu-wakeup domian.

Signed-off-by: Keerthy <j-keerthy@ti.com>
2023-10-09 14:17:20 +05:30
Keerthy d29870a3cc arm: dts: k3-j784s4-r5: Add the PMIC ESM and the PMIC node
The PMIC ESM node is responsible for triggering the PMIC reset.

Signed-off-by: Keerthy <j-keerthy@ti.com>
2023-10-09 14:16:54 +05:30