2022-08-19 19:17:50

by Apurva Nandan

[permalink] [raw]
Subject: [PATCH 0/4] Add initial support for J784s4 SoC

The J784S4 SoC belongs to the K3 Multicore SoC architecture platform,
providing advanced system integration in automotive ADAS applications
and industrial applications requiring AI at the network edge. This SoC
extends the Jacinto 7 family of SoCs with focus on high performance
providing significant levels of processing power, graphics capability,
video and imaging processing, virtualization and coherent memory
support.

Some highlights of this SoC are:

* Eight Cortex-A72s in dual clusters, four clusters of lockstep capable
dual Cortex-R5F MCUs, Deep-learning Matrix Multiply Accelerator(MMA),
four C7x floating point Vector DSP.
* 3D GPU: Automotive grade IMG BXS-4-64
* Two Vision Processing Accelerator (VPAC) with image signal processor
and Depth and Motion Processing Accelerator (DMPAC)
* Three CSI2.0 4L RX plus one eDP/DP, two DSI Tx and one DPI interface.
* Two RGMII/RMII interfaces,
* Integrated ethernet switch supporting up to 8 external ports,
* Two 4 lane PCIe-GEN3 controllers, USB3.0 Dual-role device subsystems,
* Up to 20 MCANs, 5 McASP, eMMC and SD, OSPI/HyperBus memory controller,
QSPI, I3C and I2C, eCAP/eQEP, eHRPWM, MLB among other peripherals.
* Hardware accelerator blocks containing AES/DES/SHA/MD5 called SA2UL
management.

See J784S4 Technical Reference Manual (SPRUJ52 - JUNE 2022)
for further details: http://www.ti.com/lit/zip/spruj52

Apurva Nandan (4):
dt-bindings: arm: ti: Add bindings for J784s4 SoC
dt-bindings: pinctrl: k3: Introduce pinmux definitions for J784s4
arm64: dts: ti: Add initial support for J784s4 SoC
arch: arm64: ti: Add support for J784s4 EVM board

.../devicetree/bindings/arm/ti/k3.yaml | 6 +
arch/arm64/boot/dts/ti/Makefile | 2 +
arch/arm64/boot/dts/ti/k3-j784s4-evm.dts | 602 +++++++++++
arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi | 939 ++++++++++++++++++
.../boot/dts/ti/k3-j784s4-mcu-wakeup.dtsi | 301 ++++++
arch/arm64/boot/dts/ti/k3-j784s4.dtsi | 287 ++++++
include/dt-bindings/pinctrl/k3.h | 3 +
7 files changed, 2140 insertions(+)
create mode 100644 arch/arm64/boot/dts/ti/k3-j784s4-evm.dts
create mode 100644 arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi
create mode 100644 arch/arm64/boot/dts/ti/k3-j784s4-mcu-wakeup.dtsi
create mode 100644 arch/arm64/boot/dts/ti/k3-j784s4.dtsi

--
2.17.1


2022-08-19 19:18:53

by Apurva Nandan

[permalink] [raw]
Subject: [PATCH 2/4] dt-bindings: pinctrl: k3: Introduce pinmux definitions for J784s4

Add pinctrl macros for J784s4 SoC. These macro definitions are
similar to that of J721s2, but adding new definitions to avoid
any naming confusions in the soc dts files.

checkpatch insists the following error exists:
ERROR: Macros with complex values should be enclosed in parentheses

However, we do not need parentheses enclosing the values for this
macro as we do intend it to generate two separate values as has been
done for other similar platforms.

Signed-off-by: Hari Nagalla <[email protected]>
Signed-off-by: Apurva Nandan <[email protected]>
---
include/dt-bindings/pinctrl/k3.h | 3 +++
1 file changed, 3 insertions(+)

diff --git a/include/dt-bindings/pinctrl/k3.h b/include/dt-bindings/pinctrl/k3.h
index a5204ab91d3e..f258074fd009 100644
--- a/include/dt-bindings/pinctrl/k3.h
+++ b/include/dt-bindings/pinctrl/k3.h
@@ -41,6 +41,9 @@
#define J721S2_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
#define J721S2_WKUP_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))

+#define J784S4_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
+#define J784S4_WKUP_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
+
#define AM62X_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
#define AM62X_MCU_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))

--
2.17.1

2022-08-22 19:22:18

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH 2/4] dt-bindings: pinctrl: k3: Introduce pinmux definitions for J784s4

On Sat, 20 Aug 2022 00:30:52 +0530, Apurva Nandan wrote:
> Add pinctrl macros for J784s4 SoC. These macro definitions are
> similar to that of J721s2, but adding new definitions to avoid
> any naming confusions in the soc dts files.
>
> checkpatch insists the following error exists:
> ERROR: Macros with complex values should be enclosed in parentheses
>
> However, we do not need parentheses enclosing the values for this
> macro as we do intend it to generate two separate values as has been
> done for other similar platforms.
>
> Signed-off-by: Hari Nagalla <[email protected]>
> Signed-off-by: Apurva Nandan <[email protected]>
> ---
> include/dt-bindings/pinctrl/k3.h | 3 +++
> 1 file changed, 3 insertions(+)
>

Acked-by: Rob Herring <[email protected]>

2022-08-26 09:11:57

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH 2/4] dt-bindings: pinctrl: k3: Introduce pinmux definitions for J784s4

On Fri, Aug 19, 2022 at 9:01 PM Apurva Nandan <[email protected]> wrote:

> Add pinctrl macros for J784s4 SoC. These macro definitions are
> similar to that of J721s2, but adding new definitions to avoid
> any naming confusions in the soc dts files.
>
> checkpatch insists the following error exists:
> ERROR: Macros with complex values should be enclosed in parentheses
>
> However, we do not need parentheses enclosing the values for this
> macro as we do intend it to generate two separate values as has been
> done for other similar platforms.
>
> Signed-off-by: Hari Nagalla <[email protected]>
> Signed-off-by: Apurva Nandan <[email protected]>

Acked-by: Linus Walleij <[email protected]>
I guess you will merge these patches together?
Tell me if you rather want that I apply this one patch to the pinctrl tree.

Yours,
Linus Walleij

2022-08-26 11:56:44

by Vignesh Raghavendra

[permalink] [raw]
Subject: Re: [PATCH 2/4] dt-bindings: pinctrl: k3: Introduce pinmux definitions for J784s4



On 26/08/22 13:59, Linus Walleij wrote:
> On Fri, Aug 19, 2022 at 9:01 PM Apurva Nandan <[email protected]> wrote:
>
>> Add pinctrl macros for J784s4 SoC. These macro definitions are
>> similar to that of J721s2, but adding new definitions to avoid
>> any naming confusions in the soc dts files.
>>
>> checkpatch insists the following error exists:
>> ERROR: Macros with complex values should be enclosed in parentheses
>>
>> However, we do not need parentheses enclosing the values for this
>> macro as we do intend it to generate two separate values as has been
>> done for other similar platforms.
>>
>> Signed-off-by: Hari Nagalla <[email protected]>
>> Signed-off-by: Apurva Nandan <[email protected]>
>
> Acked-by: Linus Walleij <[email protected]>
> I guess you will merge these patches together?
> Tell me if you rather want that I apply this one patch to the pinctrl tree.
>

I will the patch via TI K3 SoC tree once other patches are in good shape.
Thanks for the review!
--
Regards
Vignesh