From patchwork Tue Mar 21 14:10:18 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hari Nagalla X-Patchwork-Id: 1759473 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=85.214.62.61; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=ti.com header.i=@ti.com header.a=rsa-sha256 header.s=ti-com-17Q1 header.b=oOVgDlvN; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4Pgtnt36jrz2476 for ; Wed, 22 Mar 2023 01:11:45 +1100 (AEDT) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id AC2BF85CFA; Tue, 21 Mar 2023 15:11:14 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=ti.com header.i=@ti.com header.b="oOVgDlvN"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id DAF8D85CF7; Tue, 21 Mar 2023 15:10:54 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lelv0142.ext.ti.com (lelv0142.ext.ti.com [198.47.23.249]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id EB8EB85CAD for ; Tue, 21 Mar 2023 15:10:35 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=hnagalla@ti.com Received: from fllv0034.itg.ti.com ([10.64.40.246]) by lelv0142.ext.ti.com (8.15.2/8.15.2) with ESMTP id 32LEATEu011129; Tue, 21 Mar 2023 09:10:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1679407829; bh=W12CRZw6/yIKNKPlbaMS6Ovr2Kc6PKB2u4mIR3INY3M=; h=From:To:CC:Subject:Date; b=oOVgDlvN/Lpo2nvLtoJ/UUh3zwsYqcgYAn3l2CgexlZ1qxdW1CemIqXALfzl2EZmj fWOqporlqyviPj59eUP6RIif9rgw5KlnL2WOlTCSYhQEkxgFJSUARrN683EC0icmnb JQBTlCX+m/XYCTCdyM7z64soKQEAkMXRYLmGJo84= Received: from DLEE103.ent.ti.com (dlee103.ent.ti.com [157.170.170.33]) by fllv0034.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 32LEATRs119642 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Tue, 21 Mar 2023 09:10:29 -0500 Received: from DLEE106.ent.ti.com (157.170.170.36) by DLEE103.ent.ti.com (157.170.170.33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.16; Tue, 21 Mar 2023 09:10:28 -0500 Received: from lelv0326.itg.ti.com (10.180.67.84) by DLEE106.ent.ti.com (157.170.170.36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.16 via Frontend Transport; Tue, 21 Mar 2023 09:10:28 -0500 Received: from localhost (ileaxei01-snat.itg.ti.com [10.180.69.5]) by lelv0326.itg.ti.com (8.15.2/8.15.2) with ESMTP id 32LEASWY019085; Tue, 21 Mar 2023 09:10:28 -0500 From: Hari Nagalla To: CC: , , , , , , Subject: [PATCH v2 00/10] Introduce initial TI's J784S4 support Date: Tue, 21 Mar 2023 09:10:18 -0500 Message-ID: <20230321141028.24456-1-hnagalla@ti.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.8 at phobos.denx.de X-Virus-Status: Clean Hello Everyone! This series will introduce basic support (SD and UART) support for Texas Instruments J784S4 EVM. The J784S4 SoC device tree patches are taken from kernel patch submissions and will be updated as they are accepted and merged to the kernel tree. All other patches are specific to SPL and u-boot and do not have dependency on other trees. Appreciate a review for acceptance to u-boot tree. Here are some of the salient features of the J784S4 automotive grade application processor: The J784S4 SoC belongs to the K3 Multicore SoC architecture platform, providing advanced system integration in automotive, ADAS and industrial applications requiring AI at the network edge. This SoC extends the K3 Jacinto 7 family of SoCs with focus on raising performance and integration while providing interfaces, memory architecture and compute performance for multi-sensor, high concurrency applications. Some highlights of this SoC are: * Up to 8 Cortex-A72s, four clusters of lockstep capable dual Cortex-R5F MCUs, 4 C7x floating point vector DSPs with Matrix Multiply Accelerator(MMA) for deep learning and CNN. * 3D GPU: Automotive grade IMG BXS-4-64 * Vision Processing Accelerator (VPAC) with image signal processor and Depth and Motion Processing Accelerator (DMPAC) * Three CSI2.0 4L RX plus two CSI2.0 4L TX, two DSI Tx, one eDP/DP and one DPI interface. * Integrated gigabit ethernet switch, up to 8 ports (TDA4VH), two ports support 10Gb USXGMII; Two 4 lane PCIe-GEN3 controllers, USB3.0 Dual-role device subsystems, Up to 20 MCANs, among other peripherals. See J784S4 Technical Reference Manual (SPRUJ52 - JUNE 2022) for further details: http://www.ti.com/lit/zip/spruj52 In addtion, the J784S4 EVM board is designed for TI J784S4 SoC. It supports the following interfaces: * 32 GB DDR4 RAM * x2 Gigabit Ethernet interfaces capable of working in Switch and MAC mode * x1 Input Audio Jack, x1 Output Audio Jack * x1 USB2.0 Hub with two Type A host and x1 USB 3.1 Type-C Port * x2 4L PCIe connector * x1 UHS-1 capable micro-SD card slot * 512 Mbit OSPI flash, 1 Gbit Octal NAND flash, 512 Mbit QSPI flash, UFS flash. * x6 UART through UART-USB bridge * XDS110 for onboard JTAG debug using USB * Temperature sensors, user push buttons and LEDs * 40-pin User Expansion Connector * x2 ENET Expansion Connector, x1 GESI expander, x2 Display connector * x1 15-pin CSI header * x6 MCAN instances Schematics: https://www.ti.com/lit/zip/sprr458 bootlog: https://paste.sr.ht/~hnagalla/f14840abc854519f912923662f1fdc8075d92107 Changes in v2: - Refactored environement scripts to 'j784s4.env' and removed scripts not needed for basic board bootup. - Imported the J7874S4 basic device tree files from v6.2 linux kernel. - Moved j784s4 clock definitions and clock data into one patch/commit. - coalesce board commits into one commit. Hari Nagalla (10): arm: dts: introduce j784s4 dtbs from linux kernel arm: dts: introduce j784s4 u-boot dtbs arm: K3: Add basic support for J784S4 SoC definition drivers: dma: Add support for J784S4 clk: clk-k3: Add support for J784S4 SoC power: domain: ti: Add support for J784S4 SoC ram: k3-ddrss: Add support for J784S4 SoC soc: ti: k3-socinfo: Add entry for J784S4 SoC board: ti: j784s4: Add board support for J784S4 SoC dt-bindings: ti-serdes-mux: Add defines for J784S4 SoC arch/arm/dts/Makefile | 2 + arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi | 8757 ++++++++++++++++ arch/arm/dts/k3-j784s4-ddr.dtsi | 8858 +++++++++++++++++ arch/arm/dts/k3-j784s4-evm-u-boot.dtsi | 135 + arch/arm/dts/k3-j784s4-evm.dts | 196 + arch/arm/dts/k3-j784s4-main.dtsi | 1007 ++ arch/arm/dts/k3-j784s4-mcu-wakeup.dtsi | 311 + arch/arm/dts/k3-j784s4-r5-evm.dts | 209 + arch/arm/dts/k3-j784s4.dtsi | 287 + arch/arm/mach-k3/Kconfig | 16 +- arch/arm/mach-k3/Makefile | 2 + arch/arm/mach-k3/arm64-mmu.c | 41 + arch/arm/mach-k3/include/mach/hardware.h | 4 + .../mach-k3/include/mach/j784s4_hardware.h | 41 + arch/arm/mach-k3/include/mach/j784s4_spl.h | 46 + arch/arm/mach-k3/include/mach/spl.h | 6 +- arch/arm/mach-k3/j784s4/Makefile | 5 + arch/arm/mach-k3/j784s4/clk-data.c | 428 + arch/arm/mach-k3/j784s4/dev-data.c | 97 + arch/arm/mach-k3/j784s4_init.c | 319 + board/ti/j784s4/Kconfig | 61 + board/ti/j784s4/MAINTAINERS | 7 + board/ti/j784s4/Makefile | 8 + board/ti/j784s4/evm.c | 105 + board/ti/j784s4/j784s4.env | 108 + configs/j784s4_evm_a72_defconfig | 213 + configs/j784s4_evm_r5_defconfig | 179 + drivers/clk/ti/clk-k3.c | 6 + drivers/dma/ti/Makefile | 1 + drivers/dma/ti/k3-psil-j784s4.c | 166 + drivers/dma/ti/k3-psil-priv.h | 1 + drivers/dma/ti/k3-psil.c | 2 + drivers/firmware/ti_sci_static_data.h | 35 + drivers/power/domain/ti-power-domain.c | 6 + drivers/ram/Kconfig | 2 +- drivers/soc/soc_ti_k3.c | 6 + include/configs/j784s4_evm.h | 49 + include/dt-bindings/mux/ti-serdes.h | 62 + include/dt-bindings/pinctrl/k3.h | 3 + include/k3-clk.h | 1 + include/k3-dev.h | 1 + 41 files changed, 21781 insertions(+), 8 deletions(-) create mode 100644 arch/arm/dts/k3-j784s4-ddr-evm-lp4-4266.dtsi create mode 100644 arch/arm/dts/k3-j784s4-ddr.dtsi create mode 100644 arch/arm/dts/k3-j784s4-evm-u-boot.dtsi create mode 100644 arch/arm/dts/k3-j784s4-evm.dts create mode 100644 arch/arm/dts/k3-j784s4-main.dtsi create mode 100644 arch/arm/dts/k3-j784s4-mcu-wakeup.dtsi create mode 100644 arch/arm/dts/k3-j784s4-r5-evm.dts create mode 100644 arch/arm/dts/k3-j784s4.dtsi create mode 100644 arch/arm/mach-k3/include/mach/j784s4_hardware.h create mode 100644 arch/arm/mach-k3/include/mach/j784s4_spl.h create mode 100644 arch/arm/mach-k3/j784s4/Makefile create mode 100644 arch/arm/mach-k3/j784s4/clk-data.c create mode 100644 arch/arm/mach-k3/j784s4/dev-data.c create mode 100644 arch/arm/mach-k3/j784s4_init.c create mode 100644 board/ti/j784s4/Kconfig create mode 100644 board/ti/j784s4/MAINTAINERS create mode 100644 board/ti/j784s4/Makefile create mode 100644 board/ti/j784s4/evm.c create mode 100644 board/ti/j784s4/j784s4.env create mode 100644 configs/j784s4_evm_a72_defconfig create mode 100644 configs/j784s4_evm_r5_defconfig create mode 100644 drivers/dma/ti/k3-psil-j784s4.c create mode 100644 include/configs/j784s4_evm.h