| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
* Increase resource allocation for meeting RTOS use cases
* Add block copy channel allocation
Auto generated from k3-resource-partitioning tool commit ID
8e058012d5bcc457ae1f9212425d0d0ccd534752
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
* Move to new resource subtype names for proxy, ring accelerator
and interrupt routers
* Adjust VINTs and global event allocation after HSM re architecture
Auto generated from k3-resource-partitioning tool commit ID
8e058012d5bcc457ae1f9212425d0d0ccd534752
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the common.h headers to add new defines from
SYSFW 2020.07-rc1.
Starting from SYSFW v2020.07-rc1, a secure_debug_config section
is mandatory in the security config. Otherwise the boot fails
on all SoCs.
Fix this by adding a section for secure_debug_config with
appropriate parameters configured on all on AM65x, AM65x SR2.0,
J721E and J7200 SoCs.
Signed-off-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Now that SoCs have different boot image targets, introduce SOC specific
Makefiles to represent boot targets. Below are boot targets:
- AM65x: sysfw.itb
- AM65x SR2: sysfw.itb
- J721E: sysfw.itb
- J7200: tiboot3.bin, sysfw.itb
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Auto generated from the host-tools with:
Commit ID: 1f48ea8844cff145d6b12fee3d8a0b19e0602a66
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Add the following board configurations specific to j7200 SoC:
- board-cfg
- pm-cfg
- rm-cfg
- sec-cfg
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
The number of Main NavSS rings reserved by DMSC for High capacity Rx
channels is off by one. Update the board configuration validation
script and fix the RM cfg resource entries for the same on both AM65x
and AM65x SR2.0 SoCs.
Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Linux GPIO driver requests all the bank interrupts at the time
of probe itself. J721e needs minimum of 11 interrupts for the
Main GPIO instances and minimum of 6 interrups for the WKUP
GPIO instances.
Reassign the allocation to increase the counts for A72 hosts
while removing them from unused C7X and R5 cores.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
Tested-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the board config using the K3 Resource Partitioning tool
* Add the host_cfg_entries section which allows to define
capabilities for each host
* Updates to comments for readability
* Create separate entries for extended channels for HWA and DRU
* Remove the HOST_ID_ALL entries for virt_id ranges
* Remove the interrupt allocation for slots which are not connected
* Remove the 2nd range of C6X NAVSS interrupts
The K3 Resource Partitioning tool does not support allocating
same resource split across multiple ranges currently.
Drop the 2nd range of NAVSS interrupt router for C6X for now
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
Tested-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
| |
For j721e, most of the usecases required MSMC memory
to be used as SRAM instead of the cache.
Set the msmc_cache_size = 0 for j721e core board config.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The C7x core comes up in secure mode by default, and all the resources
reserved for C7x are currently using the secure context id HOST_ID_C7X_0.
The latest SYS/BIOS 6.82.00.16 adds the support for properly switching
the C7x applications to non-secure mode, so switch back all the
resources to use the non-secure context id HOST_ID_C7X_1.
All the application firmwares are expected to perform the necessary
steps to switch from secure to non-secure context from now on.
Signed-off-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Auto generated from https://git.ti.com/cgit/glsdk/host-tools
Ethernet firmware and PSDKRA will be merged into single image
running on Main R5FSS0 core0 leaving the core1 unused for customer.
To accomodate this, update the resource partitioning to combine
the resources and adjust few to be left free for Main R5FSS0 core1.
Also add non secure proxy allocation for both MCU and Main, the
C7x resources are also switched to using the secure context.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The C7x core comes up in secure mode by default, and all the current
firmwares continue to run in this context until the necessary support
is added to SYS/BIOS to switch the context. All the C7x RM resources
are currently assigned using the non-secure context id HOST_ID_C7X_1.
Switch these to the secure context id HOST_ID_C7X_0 to match the
usage in PDK and current RTOS firmwares.
Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The Main NavSS IR has 192 output lines routed to both the GIC and CLEC
within the Compute Cluster. The first 10 and the last 4 interrupts are
reserved for System Firmware, while the remaining are split up between
the HOST_ID_A72_2, HOST_ID_A72_3 and HOST_ID_C7X_1 contexts. The Main
NavSS IR output lines [174:187] are currently not allocated to any
context, so assign these to the C71x non-secure context.
Signed-off-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ABI 3.0 resource updates haven't added any Main NavSS IR
output lines for the MCU and MAIN domain R5Fs, and the MAIN
domain C66x remote processors. Add the corresponding resource
entries to restore the IPC functionality with these cores.
Following is the main summary of resource partitioning:
- The 8 interrupts from Main NavSS IR towards MCU domain are
split equally between the MCU R5F0 and MCU R5F1.
- The first 4 interrupts from each group of 32 interrupts from
Main NavSS IR towards a MAIN R5F core are reserved for System
Firmware, so the remaining 28 interrupts are added for the
corresponding non-secure R5F host contexts.
- The 32 interrupts from Main NavSS IR towards each of the C66x
DSP cores are split into two sets of 24 interrupts and 8
interrupts, with the first 4 interrupts from the latter set
reserved for System Firmware. Add the remaining interrupts
from each set to each of the corresponding C66x non-secure
contexts.
Signed-off-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Each of the MCU R5F cores are represented by different HOST_IDs, and
the ABI 3.0 RM changes have reassigned all the MAIN2MCU interrupt router
outputs back to only the MCU R5F Core0. This breaks the IPC use-cases
when the MCU R5FSS cluster is configured for Split-mode.
Partition both the MAIN2MCU_LVL and MAIN2MCU_PLS Interrupt Router
outputs equally between the non-secure contexts of both the MCU
R5F cores.
Signed-off-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Main NavSS IR on AM65x SoCs has a total of 152 output interrupt
lines, out of which the first 16 are reserved for System Firmware.
The ABI 3.0 resource updates have assigned all the remaining IR
output lines to the A53 host context HOST_ID_A53_2, which is wrong.
The Main NavSS IR also supports some interrupt lines for the MCU
R5F cores (connected through MAIN2MCU LVL IR) and for each of the
3 ICSSG subsystems.
Fix up the Main NavSS IR outputs properly by adding resources for
each of the processor subsystems. The output lines [120:127] are
split equally for each of the MCU R5F cores (to support Split-mode),
leaving only 104 usable interrupts for the A53 core. The output
lines [128:151] are associated with the ICSSG subsystems.
Signed-off-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the common.h headers to add new defines from SYSFW 2020.04.
Starting from SYSFW v2020.04, an sa2ul_config section is mandatory in
the security config. Otherwise the boot fails.
Fix this by adding a section for sa2ul_config with all parameters
configured to 0.
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the common.h headers to add new defines from SYSFW 2020.03.
Starting from SYSFW v2020.03, a dkek_config section is mandatory in
the security config. Otherwise the boot fails.
Fix this by adding a section for dkek_config with HOST_ID_ALL in
allowed_hosts and allow_dkek_export_tisci set.
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Tested-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
| |
Update the AM65x SR2 RM board configuration to use ABI 3.0 resource type
definitions.
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
|
|
|
|
|
|
|
|
| |
Update the J721E RM board configuration to use ABI 3.0 resource type
definitions.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
|
|
|
|
|
|
|
| |
Update the AM65x RM board configuration to use ABI 3.0 resource type
definitions.
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for AM65x SR2 SoCs which have slightly different board
configuration requirements than AM65x and also require a specific
firmware image.
Also update the SYSFW_GIT_HASH to point to the latest ti-linux-firmware
repo which contains v2019.12b SR2 binary.
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Main NAVSS interrupt router for MCU R5 subsystem is shared between
both CPU cores.
However, SYSFW models them to core specific devices where it
appears that the interrupt router is dedicated for each core.
MCU NAVSS IR is dedicated per MCU core but main NAVSS IR is not.
Due to this, drivers calling GET_RANGE gets the same range on
both cores, causing conflict in the interrupt partitioning.
Fix this by partitioning the shared interrupt pool between
MCU R5 core0 and core1.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Maximum number of entries supported in RM board config is
currently limited to 276 (2 * RESASG_UTYPE_CNT)
Any board config with more entries than this count will be
rejected and causes boot failure.
This needs to be fixed by increasing the max limit in SYSFW.
In the absence of this bugfix, restrict the number of entries
by folding all of R5, C6x, C7x host_id entries into single entry.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
| |
Define the resources for non secure proxy and ring monitor
allocation across different hosts.
Update the total count of resources.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the common.h headers to add new defines from SYSFW 2019.12.
Starting from SYSFW v2019.12, an otp_config section is mandatory in
the security config. Otherwise the boot fails.
Fix this by adding a section for opt_config with no other host
having permission to OTP array.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
|
| |
HOST_ID_R5_1 is to be used only with secure context.
HOST_ID_R5_2 is the right Host Id to use for R5F core 1
Fixes: 54933d505c4d ("rm-cfg: Partition interrupt resources between R5F contexts")
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Acked-by: Suman Anna <s-anna@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sysfw provides a provision for enabling sysfw traces while booting.
This has to be enabled in board-cfg. In order to ease debug, enable
the sysfw trace support with the help of a build option. Use the
option to enable it:
$ make ENABLE_TRACE=1
Reported-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Andreas Dannenberg <dannenberg@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ethernet firmware acts as server for providing networking functionality
to other clients. It allocates few flows from its pool for the client
and then retuns the same to the client.
Client does not own the resource it is borrowing from server and
currently SYSFW lacks any APIs to allow shared ownership of this
resource dyanmically.
In absence of such an API, mark the ethernet firmware flows are HOST_ALL
so that clients can call FLOW_CONFIG with the borrowed flow.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
| |
Currently the Main GPIO interrupt router is only assigned to A72_2.
Partition the IR lines such that few lines are assigned to
A72_3 for usage from another Virtual machine.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
ROM boots up MCU R5 in secure context and R5 SPL continues to run in the
same context. In order for R5 SPL to use DMA (e.g: with OSPI) add MCU
NAVSS resources with MCU R5 secure host ID that is used by R5 SPL.
Resources allocated are same as those allocated for A53.
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
ROM boots up MCU R5 in secure context and R5 SPL continues to run in the
same context. In order for R5 SPL to use DMA (e.g: with OSPI) add MCU
NAVSS resources with MCU R5 secure host ID that is used by R5 SPL.
Resources allocated are same as those allocated for non secure context.
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Reduce the amount of MSMC memory allocated by System Firmware for the
main compute cluster's L3 cache from 4MB to 3MB.
Signed-off-by: Andreas Dannenberg <dannenberg@ti.com>
Acked-by: Nishanth Menon <nm@ti.com>
Acked-by: Sunita Nadampalli <sunitan@ti.com>
Acked-by: Carlos Hernandez <ceh@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Channel allocation for MAIN_0_R5_2 is done such that
Main NAV UDMA Tx and Rx channels start with different offsets.
This cannot be used for block copy carveout since the Tx and Rx channels
are not overlapping at start or end of the range.
Fix this by allocating more channels to MAIN_0_R5_0 so that the
MAIN_0_R5_2 channel ranges start at same value.
Autogen table takes care of the corresponding ring allocations as well.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is auto generated RM config file to describe the
resource partitioning for 2019.02 use cases.
* Assign few channels/rings for A72_3 to be used by VMs
* Assign extended channels for DRU/VPAC/DMPAC
* Adjust resources for Main R5_0_1 for ethernet firmware
* Reduce resources for R5_1_* cores since nothing is running there
* Update the resource entry count
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
Acked-by: Vignesh Raghavendra <vigneshr@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add the consolidated configuration files that were arrived at during
J721E silicon wakeup. Note that SYSFW debug trace both to memory as well
as to the UART is disabled in alignment with the production configuration
used on AM65x. If debug trace output is desired during development refer
to the SYSFW release documentation (referenced in the included README.md
file) discussion related to 'trace_dst_enables' and 'trace_src_enables'.
Signed-off-by: Andreas Dannenberg <dannenberg@ti.com>
Reviewed-by: Suman Anna <s-anna@ti.com>
Cc: Nishanth Menon <nm@ti.com>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Lokesh Vutla <lokeshvutla@ti.com>
Cc: Nikhil Devshatwar <nikhil.nd@ti.com>
|
|
Allow for multiple SoCs to be built and object file names per SoC.
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Andreas Dannenberg <dannenberg@ti.com>
Reviewed-by: Suman Anna <s-anna@ti.com>
|