board: ti: am62px: tifs-rm-cfg/rm-cfg: Update DMA resource sharing for CPSW

The CPSW3G instance of CPSW on AM62PX SoC provides Ethernet functionality.
Currently, Ethernet is supported on Linux which runs on the A53 core on the
SoC, by allocating all of the DMA resources associated with CPSW to A53_2.

In order to enable use-cases where the Ethernet traffic is sent from or
consumed by various CPU cores on the SoC simultaneously, while at the
same time, maintaining backward compatibility with the existing use-case
of A53 being the sole entity that exchanges traffic with CPSW via DMA,
update the DMA resource sharing scheme on AM62PX SoC to the following:

---------------      --------------   -------------  ----------------
   Resource              WKUP_R5         MCU_R5            A53_2
---------------      --------------   -------------  ----------------
TX Channels [8]  =>    4 (Primary)     4 (Primary)     8 (Secondary)
TX Rings   [64]  =>   32 (Primary)    32 (Primary)    64 (Secondary)
RX Channels [1]  =>    1 (Primary)     0               1 (Secondary)
RX Flows   [16]  =>    6 (Primary)    10 (Primary)    16 (Secondary)

In the absence of primary owners of resources (existing use-case
where A53 owns all of the CPSW DMA resources), the secondary owner
can claim all of the resources as its own. For shared use-cases,
the resources that are not claimed by the primary are communicated
to the secondary owner allowing it to claim them. This ensures that
Linux on A53_2 can continue claiming all DMA resources associated
with CPSW in the absence of primary owners, while at the same time
providing users the flexibility to share CPSW DMA resources across
various CPU cores listed above if needed.

While Linux has been mentioned as the Operating System running
on A53, there is no dependency between the Operating System
running on A53 and its ability to claim the CPSW DMA resources
listed above.

Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
This commit is contained in:
Siddharth Vadapalli 2025-02-05 18:44:40 +05:30 committed by Tom Rini
parent 3f19062d46
commit 455a003e8d
2 changed files with 125 additions and 29 deletions

View file

@ -1,5 +1,5 @@
# SPDX-License-Identifier: GPL-2.0+
# Copyright (C) 2022-2023 Texas Instruments Incorporated - https://www.ti.com/
# Copyright (C) 2022-2025 Texas Instruments Incorporated - https://www.ti.com/
#
# Resource management configuration for AM62P
#
@ -244,7 +244,7 @@ rm-cfg:
subhdr:
magic: 0x7B25
size: 8
resasg_entries_size: 984
resasg_entries_size: 1048
reserved: 0
resasg_entries:
-
@ -476,13 +476,13 @@ rm-cfg:
host_id: 12
reserved: 0
-
start_resource: 45
start_resource: 44
num_resource: 35
type: 1802
host_id: 35
reserved: 0
-
start_resource: 45
start_resource: 44
num_resource: 35
type: 1802
host_id: 36
@ -494,31 +494,31 @@ rm-cfg:
host_id: 30
reserved: 0
-
start_resource: 14
start_resource: 13
num_resource: 512
type: 1805
host_id: 12
reserved: 0
-
start_resource: 526
start_resource: 525
num_resource: 256
type: 1805
host_id: 35
reserved: 0
-
start_resource: 526
start_resource: 525
num_resource: 256
type: 1805
host_id: 36
reserved: 0
-
start_resource: 782
start_resource: 781
num_resource: 128
type: 1805
host_id: 30
reserved: 0
-
start_resource: 910
start_resource: 909
num_resource: 626
type: 1805
host_id: 128
@ -645,16 +645,28 @@ rm-cfg:
reserved: 0
-
start_resource: 19
num_resource: 64
num_resource: 32
type: 1937
host_id: 12
reserved: 0
-
start_resource: 19
num_resource: 64
num_resource: 32
type: 1937
host_id: 36
reserved: 0
-
start_resource: 51
num_resource: 32
type: 1937
host_id: 12
reserved: 0
-
start_resource: 51
num_resource: 32
type: 1937
host_id: 30
reserved: 0
-
start_resource: 83
num_resource: 8
@ -699,16 +711,28 @@ rm-cfg:
reserved: 0
-
start_resource: 118
num_resource: 16
num_resource: 6
type: 1943
host_id: 12
reserved: 0
-
start_resource: 118
num_resource: 16
num_resource: 6
type: 1943
host_id: 36
reserved: 0
-
start_resource: 124
num_resource: 10
type: 1943
host_id: 12
reserved: 0
-
start_resource: 124
num_resource: 10
type: 1943
host_id: 30
reserved: 0
-
start_resource: 134
num_resource: 8
@ -765,16 +789,28 @@ rm-cfg:
reserved: 0
-
start_resource: 19
num_resource: 8
num_resource: 4
type: 1956
host_id: 12
reserved: 0
-
start_resource: 19
num_resource: 8
num_resource: 4
type: 1956
host_id: 36
reserved: 0
-
start_resource: 23
num_resource: 4
type: 1956
host_id: 12
reserved: 0
-
start_resource: 23
num_resource: 4
type: 1956
host_id: 30
reserved: 0
-
start_resource: 27
num_resource: 1
@ -861,16 +897,28 @@ rm-cfg:
reserved: 0
-
start_resource: 19
num_resource: 16
num_resource: 6
type: 1964
host_id: 12
reserved: 0
-
start_resource: 19
num_resource: 16
num_resource: 6
type: 1964
host_id: 36
reserved: 0
-
start_resource: 25
num_resource: 10
type: 1964
host_id: 12
reserved: 0
-
start_resource: 25
num_resource: 10
type: 1964
host_id: 30
reserved: 0
-
start_resource: 20
num_resource: 1

View file

@ -1,5 +1,5 @@
# SPDX-License-Identifier: GPL-2.0+
# Copyright (C) 2022-2023 Texas Instruments Incorporated - https://www.ti.com/
# Copyright (C) 2022-2025 Texas Instruments Incorporated - https://www.ti.com/
#
# Resource management configuration for AM62P
#
@ -244,7 +244,7 @@ tifs-rm-cfg:
subhdr:
magic: 0x7B25
size: 8
resasg_entries_size: 840
resasg_entries_size: 904
reserved: 0
resasg_entries:
-
@ -423,13 +423,13 @@ tifs-rm-cfg:
reserved: 0
-
start_resource: 44
num_resource: 36
num_resource: 35
type: 1802
host_id: 35
reserved: 0
-
start_resource: 44
num_resource: 36
num_resource: 35
type: 1802
host_id: 36
reserved: 0
@ -555,16 +555,28 @@ tifs-rm-cfg:
reserved: 0
-
start_resource: 19
num_resource: 64
num_resource: 32
type: 1937
host_id: 12
reserved: 0
-
start_resource: 19
num_resource: 64
num_resource: 32
type: 1937
host_id: 36
reserved: 0
-
start_resource: 51
num_resource: 32
type: 1937
host_id: 12
reserved: 0
-
start_resource: 51
num_resource: 32
type: 1937
host_id: 30
reserved: 0
-
start_resource: 83
num_resource: 8
@ -609,16 +621,28 @@ tifs-rm-cfg:
reserved: 0
-
start_resource: 118
num_resource: 16
num_resource: 6
type: 1943
host_id: 12
reserved: 0
-
start_resource: 118
num_resource: 16
num_resource: 6
type: 1943
host_id: 36
reserved: 0
-
start_resource: 124
num_resource: 10
type: 1943
host_id: 12
reserved: 0
-
start_resource: 124
num_resource: 10
type: 1943
host_id: 30
reserved: 0
-
start_resource: 134
num_resource: 8
@ -675,16 +699,28 @@ tifs-rm-cfg:
reserved: 0
-
start_resource: 19
num_resource: 8
num_resource: 4
type: 1956
host_id: 12
reserved: 0
-
start_resource: 19
num_resource: 8
num_resource: 4
type: 1956
host_id: 36
reserved: 0
-
start_resource: 23
num_resource: 4
type: 1956
host_id: 12
reserved: 0
-
start_resource: 23
num_resource: 4
type: 1956
host_id: 30
reserved: 0
-
start_resource: 27
num_resource: 1
@ -771,16 +807,28 @@ tifs-rm-cfg:
reserved: 0
-
start_resource: 19
num_resource: 16
num_resource: 6
type: 1964
host_id: 12
reserved: 0
-
start_resource: 19
num_resource: 16
num_resource: 6
type: 1964
host_id: 36
reserved: 0
-
start_resource: 25
num_resource: 10
type: 1964
host_id: 12
reserved: 0
-
start_resource: 25
num_resource: 10
type: 1964
host_id: 30
reserved: 0
-
start_resource: 20
num_resource: 1