Skip to content

Commit 290232d

Browse files
authored
Merge pull request #2316 from ArmDeveloperEcosystem/main
Prod update
2 parents ba24e84 + 668116b commit 290232d

243 files changed

Lines changed: 5613 additions & 1099 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.wordlist.txt

Lines changed: 91 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4667,7 +4667,7 @@ Sommelier
46674667
chromeos
46684668
linuxcontainers
46694669
XPS
4670-
NIC's
4670+
NIC’s
46714671
offlines
46724672
passthrough
46734673
SLOs
@@ -4722,4 +4722,94 @@ ATtestation
47224722
CoCo
47234723
procedureS
47244724
NIC’s
4725+
httpbin
4726+
proxying
4727+
OpenBMC
4728+
PoC
4729+
PoCs
4730+
evb
4731+
ipmitool
4732+
openbmc
4733+
poc
4734+
IPMI
4735+
integrators
4736+
KCS
4737+
PLDM
4738+
MCTP
4739+
Redfish
4740+
hyperscalers
4741+
BMCs
4742+
OEM
4743+
NetFn
4744+
RDv
4745+
CSSv
4746+
penBmc
4747+
BMC's
4748+
socat
4749+
ZooKeeper
4750+
IRQs
4751+
IRQS
4752+
Friedt
4753+
namespaces
4754+
atlascli
4755+
benchmarkDB
4756+
cursorTest
4757+
replset
4758+
testCollection
4759+
Namespaces
4760+
mongotop
4761+
Mongotop
4762+
baselineDB
4763+
ef
4764+
netstat
4765+
tulnp
4766+
mongostat
4767+
arw
4768+
conn
4769+
getmore
4770+
qrw
4771+
vsize
4772+
conn
4773+
WiredTiger
4774+
GLE
4775+
getLastError
4776+
createIndex
4777+
getMore
4778+
getmore
4779+
RoT
4780+
lkvm
4781+
JMH
4782+
jmh
4783+
UseG
4784+
Xmx
4785+
Xms
4786+
JavaServer
4787+
servlets
4788+
RMSNorm
4789+
RoPE
4790+
FFN
4791+
ukernel
4792+
libstreamline
4793+
prefill
4794+
OpenCL
4795+
subgraphs
4796+
threadpool
4797+
worksize
4798+
Zhilong
4799+
Denoiser
4800+
RGGB
4801+
denoised
4802+
YGGV
4803+
Mohamad
4804+
Najem
4805+
kata
4806+
svl
4807+
svzero
4808+
anf
4809+
DynamIQ
4810+
Zena
4811+
learnt
4812+
lof
4813+
BalenaOS
4814+
balenaCloud
47254815

assets/contributors.csv

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,4 +100,5 @@ Ann Cheng,Arm,anncheng-arm,hello-ann,,
100100
Fidel Makatia Omusilibwa,,,,,
101101
Ker Liu,,,,,
102102
Rui Chang,,,,,
103-
103+
Alejandro Martinez Vicente,Arm,,,,
104+
Mohamad Najem,Arm,,,,

content/learning-paths/automotive/openadkit2_safetyisolation/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ armips:
2727
tools_software_languages:
2828
- Python
2929
- Docker
30-
- ROS2
30+
- ROS 2
3131
- DDS
3232
operatingsystems:
3333
- Linux

content/learning-paths/automotive/system76-auto/_index.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ armips:
2222
operatingsystems:
2323
- Linux
2424
tools_software_languages:
25-
- Automotive
2625

2726
further_reading:
2827
- resource:
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
---
2+
title: Debug Arm Zena CSS Reference Software Stack with Arm Development Studio
3+
4+
draft: true
5+
cascade:
6+
draft: true
7+
8+
minutes_to_complete: 60
9+
10+
who_is_this_for: This is an introductory topic for software developers who wish to use Arm Development Studio to explore and debug the Arm Zena CSS Reference Software Stack.
11+
12+
learning_objectives:
13+
- Set up debug configuration for the Arm Zena CSS FVP
14+
- Debug Runtime Security Engine (RSE) from boot time
15+
- Debug Safety Island (SI)
16+
- Debug Linux OS on Primary Compute cores
17+
18+
prerequisites:
19+
- Ubuntu 22.04 host machine
20+
- You will need [Arm Development Studio 2024.1 (or later)](/install-guides/armds) and an appropriate license
21+
- A basic understanding of the Arm Zena CSS software stack and Arm processors
22+
23+
author: Ronan Synnott
24+
25+
### Tags
26+
skilllevels: Introductory
27+
subjects: Performance and Architecture
28+
armips:
29+
- Cortex-A
30+
- Cortex-R
31+
operatingsystems:
32+
- Linux
33+
tools_software_languages:
34+
- Arm Development Studio
35+
- Arm Zena CSS
36+
37+
38+
further_reading:
39+
- resource:
40+
title: Arm Zena Compute System (CSS)
41+
link: https://developer.arm.com/Compute%20Subsystems/Arm%20Zena%20Compute%20Subsystem
42+
type: website
43+
- resource:
44+
title: Arm Development Studio
45+
link: https://developer.arm.com/Tools%20and%20Software/Arm%20Development%20Studio
46+
type: website
47+
48+
49+
### FIXED, DO NOT MODIFY
50+
# ================================================================================
51+
weight: 1 # _index.md always has weight of 1 to order correctly
52+
layout: "learningpathall" # All files under learning paths have this same wrapper
53+
learning_path_main_page: "yes" # This should be surfaced when looking for related content. Only set for _index.md of learning path content.
54+
---

content/learning-paths/cross-platform/floating-point-rounding-errors/_next-steps.md renamed to content/learning-paths/automotive/zenacssdebug/_next-steps.md

File renamed without changes.
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
---
2+
# User change
3+
title: "Model Configuration"
4+
5+
weight: 4 # 1 is first, 2 is second, etc.
6+
7+
# Do not modify these elements
8+
layout: "learningpathall"
9+
---
10+
11+
# Debug Configuration
12+
13+
Arm Development Studio requires a `Debug Configuration` of the target that it will connect to.
14+
15+
As of Arm Development Studio version 2025.0, there is no such configuration provided 'out-of-the-box' for the Zena CSS FVP. However creating such a configuration is straight forward.
16+
17+
See the Arm Development Studio [Getting Started Guide](https://developer.arm.com/documentation/101469/latest/Migrating-from-DS-5-to-Arm-Development-Studio/Connect-to-new-or-custom-models) for full instructions, but they are also summarized below.
18+
19+
## Launch FVP
20+
21+
As per previous section, launch FVP with the Iris server enabled:
22+
23+
```command
24+
kas shell -c "../layers/meta-arm/scripts/runfvp -t tmux --verbose -- --iris-server --iris-port 7100"
25+
```
26+
or if connecting to the FVP remotely:
27+
28+
```command
29+
kas shell -c "../layers/meta-arm/scripts/runfvp -t tmux --verbose -- --iris-server --iris-port 7100 -A"
30+
```
31+
{{% notice Note %}}
32+
A local connection is assumed for the remainder of this learning path.
33+
{{% /notice %}}
34+
35+
## Configuration Database
36+
37+
Debug Configurations are stored in a configuration database. You must first create a local database in which to store the configuration.
38+
39+
Navigate to `File` > `New` > `Other`, and then select `Configuration Database` > `Configuration Database` from the drop-down list.
40+
41+
Click `Next`. Give the Database a name, and click `Finish`.
42+
43+
## Debug Configuration
44+
45+
Navigate to the same wizard as above, and select `Model Configuration`.
46+
47+
Click `Next`, and you will be prompted to select the above `Configuration Database`. Click `Next` again, and you will be prompted to select a Model Interface.
48+
49+
Select `Iris` from the pulldown, and click `Next`.
50+
51+
You will then be prompted to locate the model to connect to.
52+
53+
Select `Browse for model running on local host`. The FVP will be detected and interrogated by the debugger.
54+
55+
{{% notice Note %}}
56+
Use `Connect to model running on either local or remote host` if connecting remotely.
57+
{{% /notice %}}
58+
59+
A `model.mdf` file will be created that identifies all CPUs within the FVP.
60+
61+
You can change the `Manufacturer Name` and `Platform Name` to something more meaningful (such as `Arm` and `Zena_CSS_FVP`), then `Save`, and `Import` into the configuration database.
62+
63+
The debugger is now aware of the FVP and you are ready to debug.
27.3 KB
Loading
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
---
2+
# User change
3+
title: "Debug Connections"
4+
5+
weight: 5 # 1 is first, 2 is second, etc.
6+
7+
# Do not modify these elements
8+
layout: "learningpathall"
9+
---
10+
11+
## Debug Connections
12+
13+
You are now ready to create debug connections for each of the sub-systems within Zena CSS. In this section you will create the connections, which will be subsequently enhanced in the following section. You may prefer to fully set up one such connection before moving to others.
14+
15+
Arm Development Studio has full support for Heterogeneous systems such as Zena CSS, and so you can connect to all processors simultaneously.
16+
17+
### Debug connection project
18+
19+
First, create a project to store these connections (`.launch` files) in.
20+
21+
Select `File` > `New...` > `Project` > `General` > `Project`, and give it a meaningful name (`Connections`).
22+
23+
### RSE (Cortex-M55)
24+
25+
Runtime Security Engine (RSE) is based on [Cortex-M55](https://developer.arm.com/Processors/Cortex-M55) core and is a security subsystem fulfilling the role of Root of Trust.
26+
27+
Select `File` > `New` > `Model Connection`.
28+
29+
{{% notice Note %}}
30+
You can also use `File` > `New` > `Other` > `Arm Debugger` > `Model Connection`, or
31+
32+
`Create a debug connection...` shortcut in the `Debug Control` pane.
33+
{{% /notice %}}
34+
35+
Specify a connection name (`RSE`), and associate with the above `Connections` project. Click `Next`.
36+
37+
Locate the FVP based on the name you gave it previously (`Zena_CSS_FVP`). The text filter can help you locate it easily.
38+
39+
You will then be presented with the `Edit configuration` pane. In the `Connection` tab, scroll down to locate `Bare Metal Debug` > `Arm_Cortex-M55`.
40+
41+
As you will be later launching the FVP with the software stack loaded, select `Connect to an already running model`.
42+
43+
Assuming the same host will be running both the FVP and the debugger, specify the `Connection address` as the default `127.0.0.1:7100`.
44+
45+
{{% notice Note %}}
46+
`127.0.0.1` is the same as `localhost`, that is the same host machine as is running the FVP.
47+
48+
It is also possible to connect to a remote host by specifying appropriate IP address, and launching FVP with the `-A` option.
49+
50+
`7100` is the default port number. You may need to change this if necessary.
51+
{{% /notice %}}
52+
53+
Click `Apply` to save the connection information, and `Close`. Observe that `RSE.launch` is created inside the `Connections` project.
54+
55+
### Safety Island (Cortex-R82AE)
56+
57+
The Safety Island is a subsystem based on [Cortex-R82AE](https://developer.arm.com/Processors/Cortex-R82AE) core. The software running on the Safety Island is responsible for power, clock and CMN control.
58+
59+
The procedure to create this connection is very similar to the above, other than to select `Bare Metal Debug` > `Arm_Cortex-R82AE` from the drop-down.
60+
61+
{{% notice %}}
62+
For convenience you can copy-and-paste `RSE.launch` as `SI.launch` and just modify the CPU.
63+
{{% /notice %}}
64+
65+
### Primary Compute (Cortex-A720AE)
66+
67+
The Primary Compute consists of four processor clusters to run a rich OS such as Linux. Each processor cluster includes four [Cortex-A720AE](https://developer.arm.com/Processors/Cortex-A720AE) cores and a [DSU-120AE](https://developer.arm.com/Processors/DSU-120AE) DynamIQ Shared Unit.
68+
69+
The application processors will be debugged in an SMP configuration with Linux Kernel awareness.
70+
71+
As shown above, create `Primary_init.launch` connection and scroll to `Bare Metal Debug` > `ARM_Cortex-A720AE_0`. This will connect to just CPU0, leaving the other CPUs free to run.
72+
73+
To debug the Linux kernel you can make use of the [OS awareness](https://developer.arm.com/documentation/101470/latest/Debugging-Embedded-Systems/About-OS-awareness) feature of the Arm Debugger.
74+
75+
Create `Primary_Linux.launch` connection and scroll to `Linux Kernel Debug` > `ARM_Cortex-A720AEx16 SMP Cluster 1`. This will connect to all 16 `Cortex-A720AE` processors present in the FVP, though only cores 0-3 are used.
145 KB
Loading

0 commit comments

Comments
 (0)