xref: /linux/Documentation/translations/zh_TW/arch/arm64/silicon-errata.txt (revision 06d07429858317ded2db7986113a9e0129cd599b)
1e4624435SJonathan CorbetSPDX-License-Identifier: GPL-2.0
2e4624435SJonathan Corbet
3e4624435SJonathan CorbetChinese translated version of Documentation/arch/arm64/silicon-errata.rst
4e4624435SJonathan Corbet
5e4624435SJonathan CorbetIf you have any comment or update to the content, please contact the
6e4624435SJonathan Corbetoriginal document maintainer directly.  However, if you have a problem
7e4624435SJonathan Corbetcommunicating in English you can also ask the Chinese maintainer for
8e4624435SJonathan Corbethelp.  Contact the Chinese maintainer if this translation is outdated
9e4624435SJonathan Corbetor if there is a problem with the translation.
10e4624435SJonathan Corbet
11e4624435SJonathan CorbetM:	Will Deacon <will.deacon@arm.com>
12e4624435SJonathan Corbetzh_CN:	Fu Wei <wefu@redhat.com>
13*335bbdf0SHu Haowenzh_TW:	Hu Haowen <2023002089@link.tyut.edu.cn>
14e4624435SJonathan CorbetC:	1926e54f115725a9248d0c4c65c22acaf94de4c4
15e4624435SJonathan Corbet---------------------------------------------------------------------
16e4624435SJonathan CorbetDocumentation/arch/arm64/silicon-errata.rst 的中文翻譯
17e4624435SJonathan Corbet
18e4624435SJonathan Corbet如果想評論或更新本文的內容,請直接聯繫原文檔的維護者。如果你使用英文
19e4624435SJonathan Corbet交流有困難的話,也可以向中文版維護者求助。如果本翻譯更新不及時或者翻
20e4624435SJonathan Corbet譯存在問題,請聯繫中文版維護者。
21e4624435SJonathan Corbet
22e4624435SJonathan Corbet英文版維護者: Will Deacon <will.deacon@arm.com>
23e4624435SJonathan Corbet中文版維護者: 傅煒  Fu Wei <wefu@redhat.com>
24e4624435SJonathan Corbet中文版翻譯者: 傅煒  Fu Wei <wefu@redhat.com>
25e4624435SJonathan Corbet中文版校譯者: 傅煒  Fu Wei <wefu@redhat.com>
26*335bbdf0SHu Haowen繁體中文版校譯者: 胡皓文  Hu Haowen <2023002089@link.tyut.edu.cn>
27e4624435SJonathan Corbet本文翻譯提交時的 Git 檢出點爲: 1926e54f115725a9248d0c4c65c22acaf94de4c4
28e4624435SJonathan Corbet
29e4624435SJonathan Corbet以下爲正文
30e4624435SJonathan Corbet---------------------------------------------------------------------
31f949cb75SHu Haowen                芯片勘誤和軟件補救措施
32e4624435SJonathan Corbet                ==================
33e4624435SJonathan Corbet
34e4624435SJonathan Corbet作者: Will Deacon <will.deacon@arm.com>
35e4624435SJonathan Corbet日期: 2015年11月27日
36e4624435SJonathan Corbet
37f949cb75SHu Haowen一個不幸的現實:硬件經常帶有一些所謂的“瑕疵(errata)”,導致其在
38f949cb75SHu Haowen某些特定情況下會違背構架定義的行爲。就基於 ARM 的硬件而言,這些瑕疵
39e4624435SJonathan Corbet大體可分爲以下幾類:
40e4624435SJonathan Corbet
41e4624435SJonathan Corbet  A 類:無可行補救措施的嚴重缺陷。
42e4624435SJonathan Corbet  B 類:有可接受的補救措施的重大或嚴重缺陷。
43e4624435SJonathan Corbet  C 類:在正常操作中不會顯現的小瑕疵。
44e4624435SJonathan Corbet
45f949cb75SHu Haowen更多資訊,請在 infocenter.arm.com (需註冊)中查閱“軟件開發者勘誤
46f949cb75SHu Haowen筆記”(“Software Developers Errata Notice”)文檔。
47e4624435SJonathan Corbet
48f949cb75SHu Haowen對於 Linux 而言,B 類缺陷可能需要操作系統的某些特別處理。例如,避免
49e4624435SJonathan Corbet一個特殊的代碼序列,或是以一種特定的方式配置處理器。在某種不太常見的
50e4624435SJonathan Corbet情況下,爲將 A 類缺陷當作 C 類處理,可能需要用類似的手段。這些手段被
51f949cb75SHu Haowen統稱爲“軟件補救措施”,且僅在少數情況需要(例如,那些需要一個運行在
52e4624435SJonathan Corbet非安全異常級的補救措施 *並且* 能被 Linux 觸發的情況)。
53e4624435SJonathan Corbet
54f949cb75SHu Haowen對於尚在討論中的可能對未受瑕疵影響的系統產生干擾的軟件補救措施,有一個
55f949cb75SHu Haowen相應的內核配置(Kconfig)選項被加在 “內核特性(Kernel Features)”->
56f949cb75SHu Haowen“基於可選方法框架的 ARM 瑕疵補救措施(ARM errata workarounds via
57e4624435SJonathan Corbetthe alternatives framework)"。這些選項被默認開啓,若探測到受影響的CPU,
58e4624435SJonathan Corbet補丁將在運行時被使用。至於對系統運行影響較小的補救措施,內核配置選項
59f949cb75SHu Haowen並不存在,且代碼以某種規避瑕疵的方式被構造(帶註釋爲宜)。
60e4624435SJonathan Corbet
61f949cb75SHu Haowen這種做法對於在任意內核源代碼樹中準確地判斷出哪個瑕疵已被軟件方法所補救
62f949cb75SHu Haowen稍微有點麻煩,所以在 Linux 內核中此文件作爲軟件補救措施的註冊表,
63f949cb75SHu Haowen並將在新的軟件補救措施被提交和向後移植(backported)到穩定內核時被更新。
64e4624435SJonathan Corbet
65e4624435SJonathan Corbet| 實現者         | 受影響的組件    | 勘誤編號        | 內核配置                |
66e4624435SJonathan Corbet+----------------+-----------------+-----------------+-------------------------+
67e4624435SJonathan Corbet| ARM            | Cortex-A53      | #826319         | ARM64_ERRATUM_826319    |
68e4624435SJonathan Corbet| ARM            | Cortex-A53      | #827319         | ARM64_ERRATUM_827319    |
69e4624435SJonathan Corbet| ARM            | Cortex-A53      | #824069         | ARM64_ERRATUM_824069    |
70e4624435SJonathan Corbet| ARM            | Cortex-A53      | #819472         | ARM64_ERRATUM_819472    |
71e4624435SJonathan Corbet| ARM            | Cortex-A53      | #845719         | ARM64_ERRATUM_845719    |
72e4624435SJonathan Corbet| ARM            | Cortex-A53      | #843419         | ARM64_ERRATUM_843419    |
73e4624435SJonathan Corbet| ARM            | Cortex-A57      | #832075         | ARM64_ERRATUM_832075    |
74e4624435SJonathan Corbet| ARM            | Cortex-A57      | #852523         | N/A                     |
75e4624435SJonathan Corbet| ARM            | Cortex-A57      | #834220         | ARM64_ERRATUM_834220    |
76e4624435SJonathan Corbet|                |                 |                 |                         |
77e4624435SJonathan Corbet| Cavium         | ThunderX ITS    | #22375, #24313  | CAVIUM_ERRATUM_22375    |
78e4624435SJonathan Corbet| Cavium         | ThunderX GICv3  | #23154          | CAVIUM_ERRATUM_23154    |
79e4624435SJonathan Corbet
80