[PATCH] Documentation:Update Documentation/zh_CN/arm64/booting.txt

2016-02-16 Thread wefu
From: Fu Wei 

This is a update of Chinese documentation: Documentation/zh_CN/arm64/booting.txt

It is based on the modifications of Documentation/arm64/booting.txt in 
submission:
"61bd93ce", "6c020ea8", "9d372c9f", "6d32ab2d".
And improve the format of documentation.

Signed-off-by: Fu Wei 
---
 Documentation/zh_CN/arm64/booting.txt | 93 ++-
 1 file changed, 58 insertions(+), 35 deletions(-)

diff --git a/Documentation/zh_CN/arm64/booting.txt 
b/Documentation/zh_CN/arm64/booting.txt
index 7cd36af..1145bf8 100644
--- a/Documentation/zh_CN/arm64/booting.txt
+++ b/Documentation/zh_CN/arm64/booting.txt
@@ -6,8 +6,9 @@ communicating in English you can also ask the Chinese 
maintainer for
 help.  Contact the Chinese maintainer if this translation is outdated
 or if there is a problem with the translation.
 
-Maintainer: Will Deacon 
-Chinese maintainer: Fu Wei 
+M: Will Deacon 
+zh_CN: Fu Wei 
+C: 1926e54f115725a9248d0c4c65c22acaf94de4c4
 -
 Documentation/arm64/booting.txt 的中文翻译
 
@@ -15,12 +16,11 @@ Documentation/arm64/booting.txt 的中文翻译
 交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻
 译存在问题,请联系中文版维护者。
 
-本文翻译提交时的 Git 检出点为: bc465aa9d045feb0e13b4a8f32cc33c1943f62d6
-
 英文版维护者: Will Deacon 
 中文版维护者: 傅炜  Fu Wei 
 中文版翻译者: 傅炜  Fu Wei 
 中文版校译者: 傅炜  Fu Wei 
+本文翻译提交时的 Git 检出点为: 1926e54f115725a9248d0c4c65c22acaf94de4c4
 
 以下为正文
 -
@@ -33,9 +33,9 @@ Documentation/arm64/booting.txt 的中文翻译
 本文档基于 Russell King 的 ARM 启动文档,且适用于所有公开发布的
 AArch64 Linux 内核代码。
 
-AArch64 异常模型由多个异常级别(EL0 - EL3)组成,对于 EL0 和 EL1
-异常级有对应的安全和非安全模式。EL2 是系统管理级,且仅存在于
-非安全模式下。EL3 是最高特权级,且仅存在于安全模式下。
+AArch64 异常模型由多个异常级(EL0 - EL3)组成,对于 EL0 和 EL1 异常级
+有对应的安全和非安全模式。EL2 是系统管理级,且仅存在于非安全模式下。
+EL3 是最高特权级,且仅存在于安全模式下。
 
 基于本文档的目的,我们将简单地使用‘引导装载程序’(‘boot loader’)
 这个术语来定义在将控制权交给 Linux 内核前 CPU 上执行的所有软件。
@@ -56,9 +56,9 @@ AArch64 异常模型由多个异常级别(EL0 - EL3)组成,对于 EL0 和
 必要性: 强制
 
 引导装载程序应该找到并初始化系统中所有内核用于保持系统变量数据的 RAM。
-这个操作的执行是设备依赖的。(它可能使用内部算法来自动定位和计算所有
-RAM,或可能使用对这个设备已知的 RAM 信息,还可能使用任何引导装载程序
-设计者想到的匹配方法。)
+这个操作的执行方式因设备而异。(它可能使用内部算法来自动定位和计算所有
+RAM,或可能使用对这个设备已知的 RAM 信息,还可能是引导装载程序设计者
+想到的任何合适的方法。)
 
 
 2、设置设备树数据
@@ -66,10 +66,12 @@ RAM,或可能使用对这个设备已知的 RAM 信息,还可能使用任何
 
 必要性: 强制
 
-设备树数据块(dtb)必须 8 字节对齐,并位于从内核映像起始算起第一个 512MB
-内,且不得跨越 2MB 对齐边界。这使得内核可以通过初始页表中的单个节描述符来
-映射此数据块。
+设备树数据块(dtb)必须 8 字节对齐,且大小不能超过 2MB。由于设备树
+数据块将在使能缓存的情况下以 2MB 粒度被映射,故其不能被置于带任意
+特定属性被映射的 2MB 区域内。
 
+注: v4.2 之前的版本同时要求设备树数据块被置于从内核映像以下
+text_offset 字节处算起第一个 512MB 内。
 
 3、解压内核映像
 -
@@ -78,7 +80,7 @@ RAM,或可能使用对这个设备已知的 RAM 信息,还可能使用任何
 
 AArch64 内核当前没有提供自解压代码,因此如果使用了压缩内核映像文件
 (比如 Image.gz),则需要通过引导装载程序(使用 gzip 等)来进行解压。
-若引导装载程序没有实现这个需求,就要使用非压缩内核映像文件。
+若引导装载程序没有实现这个功能,就要使用非压缩内核映像文件。
 
 
 4、调用内核映像
@@ -97,7 +99,7 @@ AArch64 内核当前没有提供自解压代码,因此如果使用了压缩内
   u64 res3 = 0;/* 保留 */
   u64 res4 = 0;/* 保留 */
   u32 magic= 0x644d5241;   /* 魔数, 小端, "ARM\x64" */
-  u32 res5;/* 保留 (用于 PE COFF 偏移) */
+  u32 res5;/* 保留 (用于 PE COFF 偏移) */
 
 
 映像头注释:
@@ -107,26 +109,36 @@ AArch64 内核当前没有提供自解压代码,因此如果使用了压缩内
 - code0/code1 负责跳转到 stext.
 
 - 当通过 EFI 启动时, 最初 code0/code1 被跳过。
-  res5 是到 PE 文件头的偏移,而 PE 文件头含有 EFI 的启动入口点 (efi_stub_entry)。
-  当 stub 代码完成了它的使命,它会跳转到 code0 继续正常的启动流程。
+  res5 是到 PE 文件头的偏移,而 PE 文件头含有 EFI 的启动入口点
+  (efi_stub_entry)。当 stub 代码完成了它的使命,它会跳转到 code0
+  继续正常的启动流程。
 
 - v3.17 之前,未明确指定 text_offset 的字节序。此时,image_size 为零,
   且 text_offset 依照内核字节序为 0x8。
-  当 image_size 非零,text_offset 为小端模式且是有效值,应被引导加载程序使用。
-  当 image_size 为零,text_offset 可假定为 0x8。
+  当 image_size 非零,text_offset 为小端模式且是有效值,应被引导加载
+  程序使用。当 image_size 为零,text_offset 可假定为 0x8。
 
 - flags 域 (v3.17 引入) 为 64 位小端模式,其编码如下:
   位 0: 内核字节序。 1 表示大端模式,0 表示小端模式。
-  位 1-63:  保留。
-
-- 当 image_size 为零时,引导装载程序应该试图在内核映像末尾之后尽可能多地保留空闲内存
-  供内核直接使用。对内存空间的需求量因所选定的内核特性而异, 且无实际限制。
-
-内核映像必须被放置在靠近可用系统内存起始的 2MB 对齐为基址的 text_offset 字节处,并从那里被调用。
-当前,对 Linux 来说在此基址以下的内存是无法使用的,因此强烈建议将系统内存的起始作为这个基址。
-从映像起始地址算起,最少必须为内核释放出 image_size 字节的空间。
-
-任何提供给内核的内存(甚至在 2MB 对齐的基地址之前),若未从内核中标记为保留
+  位 1-2:   内核页大小。
+   0 - 未指定。
+   1 - 4K
+   2 - 16K
+   3 - 64K
+  位 3-63:  保留。
+
+- 当 image_size 为零时,引导装载程序应试图在内核映像末尾之后尽可能
+  多地保留空闲内存供内核直接使用。对内存空间的需求量因所选定的内核
+  特性而异, 并无实际限制。
+
+内核映像必须被放置在靠近可用系统内存起始的 2MB 对齐为基址的
+text_offset 字节处,并从该处被调用。当前,对 Linux 来说在此基址以下的
+内存是无法使用的,因此强烈建议将系统内存的起始作为这个基址。2MB 对齐
+基址和内核映像起始地址之间的区域对于内核来说没有特殊意义,且可能被
+用于其他目的。
+从映像起始地址算起,最少必须准备 image_size 字节的空闲内存供内核使用。
+
+任何提供给内核的内存(甚至在映像起始地址之前),若未从内核中标记为保留
 (如在设备树(dtb)的 memreserve 区域),都将被认为对内核是可用。
 
 在跳转入内核前,必须符合以下状态:
@@ -147,13 +159,16 @@ AArch64 内核当前没有提供自解压代码,因此如果使用了压缩内
 
 - 高速缓存、MMU
   MMU 必须关闭。
-  指令缓存开启或关闭都可以。
+  

[PATCH] Documentation: Chinese translation of arm64/silicon-errata.txt

2016-02-13 Thread wefu
From: Fu Wei 

This is a Chinese translated version of Documentation/arm64/silicon-errata.txt

Signed-off-by: Fu Wei 
---
 Documentation/zh_CN/arm64/silicon-errata.txt | 74 
 1 file changed, 74 insertions(+)
 create mode 100644 Documentation/zh_CN/arm64/silicon-errata.txt

diff --git a/Documentation/zh_CN/arm64/silicon-errata.txt 
b/Documentation/zh_CN/arm64/silicon-errata.txt
new file mode 100644
index 000..0584bd6
--- /dev/null
+++ b/Documentation/zh_CN/arm64/silicon-errata.txt
@@ -0,0 +1,74 @@
+Chinese translated version of Documentation/arm64/silicon-errata.txt
+
+If you have any comment or update to the content, please contact the
+original document maintainer directly.  However, if you have a problem
+communicating in English you can also ask the Chinese maintainer for
+help.  Contact the Chinese maintainer if this translation is outdated
+or if there is a problem with the translation.
+
+M: Will Deacon 
+zh_CN: Fu Wei 
+C: e835a65f7ab143acf9aee6f9a98ef1c7afd2a835
+-
+Documentation/arm64/silicon-errata.txt 的中文翻译
+
+如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文
+交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻
+译存在问题,请联系中文版维护者。
+
+英文版维护者: Will Deacon 
+中文版维护者: 傅炜  Fu Wei 
+中文版翻译者: 傅炜  Fu Wei 
+中文版校译者: 傅炜  Fu Wei 
+本文翻译提交时的 Git 检出点为: e835a65f7ab143acf9aee6f9a98ef1c7afd2a835
+
+以下为正文
+-
+芯片勘误和软件解决办法
+==
+
+作者: Will Deacon 
+日期: 2015年11月27日
+
+一个不幸的现实:硬件经常带有一些所谓的“错误(errata)”,致使其在
+某些特定的情况下会违背构架定义的行为。对基于 ARM 的硬件,这些错误
+大体被分为以下几类:
+
+  A 类:无可行解决方法的严重错误。
+  B 类:有可接受的解决方法的重大或严重错误。
+  C 类:在正常操作中不会显现的小错误。
+
+更多资讯,请在 infocenter.arm.com (需注册)中查阅“软件开发者勘误
+笔记”(“Software Developers Errata Notice”)文档。
+
+对于 Linux 而言,B 类错误可能需要操作系统的某些特别处理。例如,避免
+一个特殊的代码序列,或是以一种特定的方式配置处理器。在某种不太常见的
+情况下,为将 A 类错误当作 C 类处理,可能需要用类似手段。这些手段被
+统称为“软件解决办法”,且仅在少数情况需要(例如,那些需要一个在非安全
+异常级运行的解决方法 *且* 能被 Linux 触发的情况)。
+
+对于尚在讨论中的可能对未受错误影响的系统产生不利影响的软件解决办法,
+有一个相应的内核配置(Kconfig)选项被加在 “内核特性(Kernel Features)”
+- > “基于可选方案框架的 ARM 错误解决办法(ARM errata workarounds via
+the alternatives framework)"。这些选项被默认开启,若探测到受影响的CPU,
+补丁将在运行时被打入。对于对系统运行影响较小的解决办法,内核配置选项
+并不存在,且代码以一种避开错误的方式被构造(带注释为宜)。
+
+这种做法对于在任意内核源代码树中准确地判断出哪个错误已被软件方法所解决
+稍微有点麻烦,所以这个文件在 Linux 内核中作为软件解决办法的注册表,
+并将在新的软件解决办法被提交和反向移植到稳定内核时被更新。
+
+| 实现者 | 受影响的组件| 勘误编号| 内核配置|
+++-+-+-+
+| ARM| Cortex-A53  | #826319 | ARM64_ERRATUM_826319
|
+| ARM| Cortex-A53  | #827319 | ARM64_ERRATUM_827319
|
+| ARM| Cortex-A53  | #824069 | ARM64_ERRATUM_824069
|
+| ARM| Cortex-A53  | #819472 | ARM64_ERRATUM_819472
|
+| ARM| Cortex-A53  | #845719 | ARM64_ERRATUM_845719
|
+| ARM| Cortex-A53  | #843419 | ARM64_ERRATUM_843419
|
+| ARM| Cortex-A57  | #832075 | ARM64_ERRATUM_832075
|
+| ARM| Cortex-A57  | #852523 | N/A 
|
+| ARM| Cortex-A57  | #834220 | ARM64_ERRATUM_834220
|
+|| | | 
|
+| Cavium | ThunderX ITS| #22375, #24313  | CAVIUM_ERRATUM_22375
|
+| Cavium | ThunderX GICv3  | #23154  | CAVIUM_ERRATUM_23154
|
-- 
2.5.0

--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html