Lines Matching +full:cpu +full:- +full:release +full:- +full:addr

1 SPDX-License-Identifier: GPL-2.0
15 ---------------------------------------------------------------------
30 ---------------------------------------------------------------------
40 AArch64 異常模型由多個異常級(EL0 - EL3)組成,對於 EL0 和 EL1 異常級
45 這個術語來定義在將控制權交給 Linux 內核前 CPU 上執行的所有軟體。
58 -----------------
69 ---------------
81 -------------
91 -------------
111 - 自 v3.17 起,除非另有說明,所有域都是小端模式。
113 - code0/code1 負責跳轉到 stext.
115 - 當通過 EFI 啓動時, 最初 code0/code1 被跳過。
120 - v3.17 之前,未明確指定 text_offset 的字節序。此時,image_size 爲零,
125 - flags 域 (v3.17 引入) 爲 64 位小端模式,其編碼如下:
127 位 1-2: 內核頁大小。
128 0 - 未指定。
129 1 - 4K
130 2 - 16K
131 3 - 64K
133 0 - 2MB 對齊基址應儘量靠近內存起始處,因爲
135 1 - 2MB 對齊基址可以在物理內存的任意位置
136 位 4-63: 保留。
138 - 當 image_size 爲零時,引導裝載程序應試圖在內核映像末尾之後儘可能
154 - 停止所有 DMA 設備,這樣內存數據就不會因爲虛假網絡包或磁碟數據而
157 -CPU 通用寄存器設置
163 - CPU 模式
166 CPU 必須處於 EL2(推薦,可訪問虛擬化擴展)或非安全 EL1 模式下。
168 - 高速緩存、MMU
181 - 架構計時器
182 CNTFRQ 必須設定爲計時器的頻率,且 CNTVOFF 必須設定爲對所有 CPU
186 - 一致性
187 通過內核啓動的所有 CPU 在內核入口地址上必須處於相同的一致性域中。
191 - 系統寄存器
196 - 如果 EL3 存在:
199 - 若內核運行在 EL1:
202 - 設備樹(DT)或 ACPI 表必須描述一個 GICv3 中斷控制器。
205 - 如果 EL3 存在:
207 - 若內核運行在 EL1:
209 - 設備樹(DT)或 ACPI 表必須描述一個 GICv2 中斷控制器。
211 以上對於 CPU 模式、高速緩存、MMU、架構計時器、一致性、系統寄存器的
212 必要條件描述適用於所有 CPU。所有 CPU 必須在同一異常級別跳入內核。
214 引導裝載程序必須在每個 CPU 處於以下狀態時跳入內核入口:
216 -CPU 必須直接跳入內核映像的第一條指令。通過此 CPU 傳遞的設備樹
217 數據塊必須在每個 CPU 節點中包含一個 『enable-method』 屬性,所
218 支持的 enable-method 請見下文。
223 - enable-method 爲 「spin-table」 的 CPU 必須在它們的 CPU
224 節點中包含一個 『cpu-release-addr』 屬性。這個屬性標識了一個
227 這些 CPU 必須在內存保留區(通過設備樹中的 /memreserve/ 域傳遞
228 給內核)中自旋於內核之外,輪詢它們的 cpu-release-addr 位置(必須
229 包含在保留區中)。可通過插入 wfe 指令來降低忙循環開銷,而主 CPU
230 發出 sev 指令。當對 cpu-release-addr 所指位置的讀取操作返回非零值
231 時,CPU 必須跳入此值所指向的地址。此值爲一個單獨的 64 位小端值,
232 因此 CPU 須在跳轉前將所讀取的值轉換爲其本身的端模式。
234 - enable-method 爲 「psci」 的 CPU 保持在內核外(比如,在
238 CPU_ON 調用來將 CPU 帶入內核。
246 - 輔助 CPU 通用寄存器設置