diff --git a/zh-cn/device-dev/porting/standard-system-porting-guide.md b/zh-cn/device-dev/porting/standard-system-porting-guide.md
index 777c36c2a54a4dfae56a9cb8590bfe0a654465fc..04459e19ef532844fe228adc1b183f42d970a4af 100644
--- a/zh-cn/device-dev/porting/standard-system-porting-guide.md
+++ b/zh-cn/device-dev/porting/standard-system-porting-guide.md
@@ -17,7 +17,7 @@
- [开发板移植实例](#开发板移植实例)
-
+本文描述了移植一块开发板的通用步骤,和具体芯片相关的详细移植过程无法在此一一列举。后续社区还会陆续发布开发板移植的实例供开发者参考。
## 定义开发板
本文以移植名为MyProduct的开发板为例讲解移植过程,假定MyProduct是MyProductVendor公司的开发板,使用MySoCVendor公司生产的MySOC芯片作为处理器。
@@ -80,7 +80,7 @@
./build.sh --product-name MyProduct
```
-构建完成后,可以在“//out/ohos-arm-release/packages/phone/images”目录下看到构建出来的HarmonyOSOpenHarmony镜像文件。
+构建完成后,可以在“//out/ohos-arm-release/packages/phone/images”目录下看到构建出来的OpenHarmony镜像文件。
## 内核移植
@@ -99,21 +99,21 @@
},
```
-接着需要修改定义产品的配置文件//productdefine/common/products/MyProduct.json。将刚刚定义的子系统加入到产品中
+接着需要修改定义产品的配置文件//productdefine/common/products/MyProduct.json。将刚刚定义的子系统加入到产品中。
### 2. 编译内核
-在上一节定义subsystem的时候,定义了构建的路径path,即//device/MySOCVendor/MySOC/build。这一节会在这个目录创建构建脚本,告诉构建系统如何构建内核。
+OpenHarmony源码中提供了Linux 4.19的内核,归档在`//kernel/linux-4.19`。本节以该内核版本为例,讲解如何编译内核。
-目前OpenHarmony源码中提供了Linux 4.19的内核,归档在//kernel/linux-4.19。请尽可能使用这个内核。每个SOC必然需要对内核做一些修改或扩展,建议采用补丁的方式。
+在子系统的定义中,描述了子系统构建的路径path,即`//device/MySOCVendor/MySOC/build`。这一节会在这个目录创建构建脚本,告诉构建系统如何构建内核。
-建议的目录结构
+建议的目录结构如下:
```
├── build
│ ├── kernel
│ │ ├── linux
-│ │ ├──standard_patch_for_4_19.patch
+│ │ ├──standard_patch_for_4_19.patch // 基于4.19版本内核的补丁
│ ├── BUILD.gn
│ ├── ohos.build
```
@@ -197,7 +197,7 @@ root {
}
```
-更详细的驱动开发指导,请参考 [LCD](../driver/driver-peripherals-lcd-des.md)
+更详细的驱动开发指导,请参考 [LCD](../driver/driver-peripherals-lcd-des.md)。
### 2. 触摸屏
@@ -211,7 +211,7 @@ root {
touch_ic_name.c
```
-的文件。代码模板如下:注意:请替换ic\_name为你所适配芯片的名称
+的文件。代码模板如下:注意:请替换ic\_name为你所适配芯片的名称。
```
#include "hdf_touch.h"
@@ -235,7 +235,7 @@ struct HdfDriverEntry g_touchXXXXChipEntry = {
HDF_INIT(g_touchXXXXChipEntry);
```
-其中ChipDevice中要提供若干方法
+其中ChipDevice中要提供若干方法。
方法
@@ -338,6 +338,7 @@ Wi-Fi驱动分为两部分,一部分负责管理WLAN设备,另一个部分
建议适配按如下步骤操作:
1.创建HDF驱动建议将代码放置在//device/MySoCVendor/peripheral/wifi/chip\_name/
+文件模板如下:
```
static int32_t HdfWlanHisiChipDriverInit(struct HdfDeviceObject *device) {
@@ -360,7 +361,7 @@ struct HdfDriverEntry g_hdfXXXChipEntry = {
HDF_INIT(g_hdfXXXChipEntry);
```
-在CreateChipDriverFactory中,需要创建一个HdfChipDriverFactory
+在CreateChipDriverFactory中需要创建一个HdfChipDriverFactory,接口如下:
接口
@@ -444,9 +445,10 @@ HdfChipDriver需要实现的接口有
2.编写配置文件,描述驱动支持的设备
-在产品配置目录下创建芯片的配置文件//vendor/MyProductVendor/MyProduct/config/wifi/wlan\_chip\_chip\_name.hcs
+在产品配置目录下创建芯片的配置文件//vendor/MyProductVendor/MyProduct/config/wifi/wlan\_chip\_chip\_name.hcs。
注意: 路径中的vendor\_name、product\_name、chip\_name请替换成实际名称
+模板如下:
```
root {
@@ -468,6 +470,7 @@ root {
3.编写配置文件,加载驱动
产品的所有设备信息被定义在文件//vendor/MyProductVendor/MyProduct/config/device\_info/device\_info.hcs中。修改该文件,在名为network的host中,名为device\_wlan\_chips的device中增加配置。注意:moduleName 要与触摸屏驱动中的moduleName相同。
+模板如下:
```
deviceN :: deviceNode {
@@ -492,7 +495,7 @@ config DRIVERS_WLAN_XXX
Answer Y to enable XXX Host driver. Support chip xxx
```
-接着修改文件//drivers/adapter/khdf/linux/model/network/wifi/Kconfig,在文件末尾加入如下代码将配置菜单加入内核中。
+接着修改文件//drivers/adapter/khdf/linux/model/network/wifi/Kconfig,在文件末尾加入如下代码将配置菜单加入内核中,如:
```
source "../../../../../device/MySoCVendor/peripheral/Kconfig"
@@ -500,7 +503,7 @@ source "../../../../../device/MySoCVendor/peripheral/Kconfig"
- 创建构建脚本
- 在//drivers/adapter/khdf/linux/model/network/wifi/Makefile文件末尾增加配置,模板如下
+ 在//drivers/adapter/khdf/linux/model/network/wifi/Makefile文件末尾增加配置,模板如下:
```
@@ -508,7 +511,7 @@ HDF_DEVICE_ROOT := $(HDF_DIR_PREFIX)/../device
obj-$(CONFIG_DRIVERS_WLAN_XXX) += $(HDF_DEVICE_ROOT)/MySoCVendor/peripheral/build/standard/
```
-当在内核中开启DRIVERS\_WLAN\_XXX开关时,会调用//device/MySoCVendor/peripheral/build/standard/中的makefile更多详细的开发手册,请参考[WLAN开发](../guide/oem_wifi_sdk_des.md)。
+当在内核中开启DRIVERS\_WLAN\_XXX开关时,会调用//device/MySoCVendor/peripheral/build/standard/中的makefile。更多详细的开发手册,请参考[WLAN开发](../guide/oem_wifi_sdk_des.md)。
## 开发板移植实例
|
|