You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: IR/Yocto/README.md
+12Lines changed: 12 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -143,6 +143,18 @@ The live image boots to UEFI Shell. The different test applications can be run i
143
143
144
144
For the verification steps of SIE ACS, refer to the [SIE ACS Verification](../../common/docs/SIE_ACS_Verification.md).
145
145
146
+
### Enabling Initcall debug prints in IR Yocto Linux boot
147
+
148
+
Enabling initcall debug prints allows the kernel to print traces of initcall functions. This feature is not enabled by default, but manually booting Linux with initcall_debug can assist users in debugging kernel issues.
149
+
150
+
Edit the "Linux boot" boot option by pressing `e` in grub window and append the boot command with following command line options.
151
+
152
+
```
153
+
initcall_debug ignore_loglevel=1
154
+
```
155
+
156
+
Press Ctrl+x to boot the Yocto linux with initcall debug prints enabled.
157
+
146
158
## Baselines for Open Source Software in this release:
147
159
148
160
-[Firmware Test Suite (FWTS)](http://kernel.ubuntu.com/git/hwe/fwts.git) TAG: v23.07.00
Copy file name to clipboardExpand all lines: common/docs/SIE_ACS_Verification.md
+92-16Lines changed: 92 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,14 +8,14 @@ The Security Interface Extension ACS tests the following security related interf
8
8
* Secure firmware update using update capsules
9
9
* For systems with Trusted Platform Modules(TPMs), TPM measured boot and the TCG2 protocol
10
10
11
-
# Running SIE ACS
12
-
13
-
The Prebuilt SR/ES/IR band images can now be used to verify the requirements of SIE from this release, as they are integrated with the SIE ACS.
14
-
15
-
See the Section 3.4 [Security Interface Extension ACS Users Guide](https://developer.arm.com/documentation/102872/latest) for instructions to enroll the SecureBoot keys.
11
+
Note:
12
+
1. The Prebuilt SR/ES/IR band images can be used to verify the requirements of SIE.
13
+
2. See the Section 3.4 [Security Interface Extension ACS Users Guide](https://developer.arm.com/documentation/102872/latest) for instructions to enroll the SecureBoot keys.
16
14
This document also contains the background information on the SIE related specification and ACS.
17
15
18
-
## Installing swtpm package (TPM emulator)
16
+
## Prerequisite for running SIE ACS on QEMU
17
+
18
+
### Install swtpm package (TPM emulator)
19
19
Note: Install only if there is no past installation of swtpm present. Check by running "swtpm -v" in the terminal, which should output the version.
20
20
21
21
The following commands should fetch and install the swtpm package:
@@ -45,7 +45,18 @@ cd ..
45
45
rm -rf swtpm/ libtpms/
46
46
```
47
47
48
-
## Building UEFI Firmware
48
+
## Running SIE ACS on QEMU with UEFI firmware
49
+
50
+
### Build QEMU model
51
+
Follow build instructions from https://www.qemu.org/download/#source
52
+
53
+
Note: During configure stage, enable slirp library build by appending ./configure with --enable-slirp <br>
54
+
slirp is a networking library, required by netdev in QEMU run command.
55
+
```
56
+
./configure --enable-slirp
57
+
```
58
+
59
+
### Build UEFI Firmware
49
60
To build the UEFI firmware images, follow these steps:
export GCC5_AARCH64_PREFIX=<set compiler prefix path for aarch64-linux-gnu->
67
78
build -n $NUM_CPUS -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc -b RELEASE -D TTY_TERMINAL -D SECURE_BOOT_ENABLE -D TPM2_ENABLE -D TTY_TERMINAL all
68
79
```
80
+
69
81
NOTE: Download GCC-ARM 10.3 or later toolchain from [here](https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads). <br />
82
+
70
83
3. Create the required flash images
71
84
```
72
85
#uefi firmware image
@@ -76,7 +89,7 @@ truncate -s 64M flash0.img
76
89
truncate -s 64M flash1.img
77
90
```
78
91
79
-
## Running SIE ACS with Prebuilt SystemReady band images on QEMU
92
+
###Running SIE ACS with Prebuilt SystemReady SR/ES ACS images on QEMU
80
93
1. Create a script "run_qemu.sh" as below with variables configured as per your environment:
Once QEMU execution begins, immediately press Esc key to go into the UEFI settings. Follow the steps in Section 3.4 for "Enrolling keys in EDK2" in the [Security Interface Extension ACS Users Guide](https://developer.arm.com/documentation/102872/latest) for instructions to enroll the secureboot keys. <br>
127
+
Note: The SecureBoot keys are present in \<bootfs>\security-interface-extension-keys
128
+
129
+
130
+
3. To run the SIE ACS suites, choose following in grub options.
131
+
```
132
+
"SCT for Security Interface Extension (optional)" for SIE SCT tests
133
+
and
134
+
"Linux Boot for Security Interface Extension (optional)" for Secure Linux boot, SIE FWTS and TPM2 logs.
135
+
```
136
+
137
+
Note: IR ACS image can also be run using the above steps, if the underlying firmware is UEFI.
113
138
114
-
Once QEMU execution begins, immediately press Esc key to go into the UEFI settings. Follow the steps in Section 3.4 for "Enrolling keys in EDK2" in the [Security Interface Extension ACS Users Guide](https://developer.arm.com/documentation/102872/latest) for instructions to enroll the secureboot keys.
139
+
## Running SIE ACS on QEMU with uboot firmware
115
140
116
-
Note: The SecureBoot keys are present in \<bootfs>/security-interface-extension-keys
141
+
### Build u-boot firmware and QEMU
142
+
Follow the instructions provided in [Verification of the IR image on QEMU Arm machine](../../IR/Yocto/README.md#verification-of-the-ir-image-on-qemu-arm-machine) section of IR Yocto README.
117
143
144
+
### Running SIE ACS with Prebuilt SystemReady IR ACS image on QEMU
145
+
1. Create a script "run_qemu.sh" as below with variables configured as per your environment:
146
+
147
+
```
148
+
#! /bin/bash
149
+
150
+
IMG=<PATH to IR ACS image>
151
+
BUILD_PATH=<path to buildroot directory where QEMU and uboot firmware is built>
3. Execute the "run_qemu.sh", To run the SIE ACS suites, choose following in grub options.
120
194
```
121
-
SCT for Security Interface Extension (optional) for SIE SCT tests
195
+
"SCT for Security Interface Extension (optional)" for SIE SCT tests
122
196
and
123
-
Linux Boot for Security Interface Extension (optional) for Secure Linux boot, SIE FWTS and TPM2 logs.
197
+
"Linux Boot for Security Interface Extension (optional)" for Secure Linux boot, SIE FWTS and TPM2 logs.
124
198
```
125
-
to run the SIE ACS suites.
199
+
200
+
Note: IR Yocto ACS supports automatic enrollment of secure boot keys, still if the system fails to enter SecureBoot mode, Please refer to "Enrolling keys in U-boot" section of [Security Interface Extension ACS Users Guide](https://developer.arm.com/documentation/102872/latest) for instructions to enroll manually. <br>
201
+
Note: The SecureBoot keys are present in \<bootfs>\security-interface-extension-keys
126
202
127
203
--------------
128
-
*Copyright (c) 2023, Arm Limited and Contributors. All rights reserved.*
204
+
*Copyright (c) 2023-24, Arm Limited and Contributors. All rights reserved.*
0 commit comments