From 2d42f7ee3ecfb17b0cc2f1dd9d9df04371b1ac7b Mon Sep 17 00:00:00 2001 From: duangavin123 Date: Wed, 14 Jul 2021 09:16:04 +0800 Subject: [PATCH 1/3] =?UTF-8?q?update=20=E5=AF=BC=E5=85=A5OpenHarmony?= =?UTF-8?q?=E5=B7=A5=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: duangavin123 --- en/device-dev/driver/Readme-EN.md | 53 +- en/device-dev/driver/driver-development.md | 10 +- ...4.png => en-us_image_0000001123509750.png} | Bin ...4.png => en-us_image_0000001123514210.png} | Bin ...4.png => en-us_image_0000001123540984.png} | Bin ...9.png => en-us_image_0000001123582482.png} | Bin ...8.png => en-us_image_0000001123675706.png} | Bin ...8.png => en-us_image_0000001123703482.png} | Bin ...2.png => en-us_image_0000001123742254.png} | Bin ...5.png => en-us_image_0000001170187071.png} | Bin ...3.png => en-us_image_0000001170227689.png} | Bin ...6.png => en-us_image_0000001170229891.png} | Bin ...7.png => en-us_image_0000001170262141.png} | Bin ...8.png => en-us_image_0000001170383063.png} | Bin en/device-dev/driver/gpio.md | 559 ++++++++- en/device-dev/driver/gpiooverview.md | 85 -- en/device-dev/driver/gpiousage-example.md | 79 -- en/device-dev/driver/gpiousage-guidelines.md | 395 ------ en/device-dev/driver/i2c-overview.md | 60 - en/device-dev/driver/i2c-usage-example.md | 192 --- en/device-dev/driver/i2c-usage-guidelines.md | 171 --- en/device-dev/driver/i2c.md | 425 ++++++- en/device-dev/driver/lcd.md | 362 +++++- .../driver/lcddevelopment-example.md | 291 ----- .../driver/lcddevelopment-guidelines.md | 23 - en/device-dev/driver/lcdoverview.md | 46 - en/device-dev/driver/mipi-dsi-overview.md | 84 -- en/device-dev/driver/mipi-dsi.md | 553 ++++++++- en/device-dev/driver/peripherals.md | 2 +- ...driver-platform.md => platform-drivers.md} | 4 +- en/device-dev/driver/rtc-overview.md | 103 -- en/device-dev/driver/rtc-usage-example.md | 97 -- en/device-dev/driver/rtc-usage-guidelines.md | 741 ------------ en/device-dev/driver/rtc.md | 943 ++++++++++++++- en/device-dev/driver/sdio.md | 1067 ++++++++++++++++- en/device-dev/driver/sdiooverview.md | 149 --- en/device-dev/driver/sdiousage-example.md | 129 -- en/device-dev/driver/sdiousage-guidelines.md | 787 ------------ .../sensor-driver-development-example.md | 583 --------- .../sensor-driver-development-guidelines.md | 16 - .../driver/sensor-driver-overview.md | 244 ---- .../driver/sensor-driver-test-guidelines.md | 82 -- en/device-dev/driver/sensor.md | 928 +++++++++++++- en/device-dev/driver/spi.md | 565 ++++++++- en/device-dev/driver/spioverview.md | 107 -- en/device-dev/driver/spiusage-example.md | 70 -- en/device-dev/driver/spiusage-guidelines.md | 386 ------ en/device-dev/driver/touchscreen.md | 409 ++++++- .../driver/touchscreendevelopment-example.md | 300 ----- .../touchscreendevelopment-guidelines.md | 35 - en/device-dev/driver/touchscreenoverview.md | 71 -- en/device-dev/driver/uart.md | 681 ++++++++++- en/device-dev/driver/uartoverview.md | 106 -- en/device-dev/driver/uartusage-example.md | 67 -- en/device-dev/driver/uartusage-guidelines.md | 506 -------- en/device-dev/driver/usage-example.md | 98 -- en/device-dev/driver/usage-guidelines.md | 365 ------ en/device-dev/driver/watchdog.md | 556 ++++++++- en/device-dev/driver/watchdogoverview.md | 78 -- en/device-dev/driver/watchdogusage-example.md | 86 -- .../driver/watchdogusage-guidelines.md | 395 ------ en/device-dev/driver/wlan.md | 621 +++++++++- .../driver/wlandevelopment-example.md | 372 ------ .../driver/wlandevelopment-guidelines.md | 18 - en/device-dev/driver/wlanoverview.md | 229 ---- en/device-dev/get-code/Readme-EN.md | 2 + en/device-dev/get-code/docker-environment.md | 313 +++++ en/device-dev/get-code/figures/3.png | Bin 30610 -> 43531 bytes en/device-dev/get-code/ide.md | 17 + .../get-code/source-code-acquisition.md | 25 +- en/device-dev/get-code/tool-acquisition.md | 282 +---- en/device-dev/guide/Readme-EN.md | 21 +- ...rning-14.md => building-and-burning-15.md} | 0 .../guide/debugging-and-packaging.md | 2 +- .../{development-12.md => development-13.md} | 0 ...elopment-example-for-peripheral-drivers.md | 4 +- ...evelopment-example-for-platform-drivers.md | 6 +- en/device-dev/guide/input-driver-model.md | 2 +- en/device-dev/guide/led-peripheral-control.md | 9 - .../guide/{overview-10.md => overview-11.md} | 0 .../guide/{overview-13.md => overview-14.md} | 0 en/device-dev/guide/photographing-3.md | 1 + en/device-dev/guide/photographing.md | 1 + ...{preparations-11.md => preparations-12.md} | 0 .../guide/running-on-the-device-9.md | 2 +- en/device-dev/guide/running-on-the-device.md | 4 +- en/device-dev/guide/use-case-5.md | 2 +- en/device-dev/guide/use-case.md | 2 +- .../guide/wlan-connected-products.md | 8 +- en/device-dev/kernel/Readme-EN.md | 6 +- ...nel-basic-functions.md => basic-kernel.md} | 2 +- ...d => kernel-for-mini-and-small-systems.md} | 4 +- ...rnel.md => kernel-for-standard-systems.md} | 2 +- en/device-dev/{quick-start => }/overview.md | 39 +- en/device-dev/porting/Readme-EN.md | 2 +- .../porting-a-library-built-using-cmake.md | 4 +- en/device-dev/porting/system-modules.md | 2 +- en/device-dev/quick-start/Readme-EN.md | 15 +- en/device-dev/quick-start/burning-images.md | 205 ++++ .../quick-start/developing-a-driver.md | 4 +- .../quick-start/environment-setup-7.md | 11 - .../quick-start/environment-setup-8.md | 11 - .../quick-start/environment-setup.md | 2 +- en/device-dev/quick-start/faq.md | 2 +- en/device-dev/quick-start/faqs-2.md | 172 --- en/device-dev/quick-start/faqs-3.md | 8 +- en/device-dev/quick-start/faqs-5.md | 174 --- en/device-dev/quick-start/faqs-6.md | 10 +- .../quick-start/{faqs-11.md => faqs-7.md} | 2 +- en/device-dev/quick-start/faqs.md | 12 +- en/device-dev/quick-start/figures/1-19.png | Bin 14927 -> 0 bytes en/device-dev/quick-start/figures/1-20.png | Bin 14927 -> 0 bytes .../figures/2021-01-27_170334-17.png | Bin 16573 -> 0 bytes .../figures/2021-01-27_170334-18.png | Bin 386 -> 16573 bytes .../figures/2021-01-27_170334-6.png | Bin 386 -> 0 bytes .../quick-start/figures/2021-01-27_181047.png | Bin 8726 -> 0 bytes .../quick-start/figures/2021-01-28_112953.png | Bin 38794 -> 0 bytes .../3516\346\255\243\351\235\242-17.png" | Bin 0 -> 206035 bytes ...e-application-to-access-the-network-17.png | Bin 35003 -> 0 bytes .../quick-start/figures/changjian1-12.png | Bin 61011 -> 0 bytes ...ing-whether-the-serial-port-is-used-10.png | Bin 20832 -> 0 bytes .../quick-start/figures/chuankou1-7.png | Bin 87233 -> 0 bytes ...-the-terminal-using-the-serial-port-11.png | Bin 2782 -> 0 bytes .../figures/en-us_image_0000001078313582.png | Bin 25691 -> 0 bytes .../figures/en-us_image_0000001113969536.png | Bin 85763 -> 0 bytes .../figures/en-us_image_0000001114129426.png | Bin 113968 -> 0 bytes .../figures/en-us_image_0000001117621400.png | Bin 0 -> 25708 bytes .../figures/en-us_image_0000001119945810.png | Bin 345688 -> 0 bytes .../figures/en-us_image_0000001120802173.png | Bin 63797 -> 0 bytes .../figures/en-us_image_0000001120802383.png | Bin 21015 -> 0 bytes .../figures/en-us_image_0000001121061169.png | Bin 29515 -> 0 bytes ...6.png => en-us_image_0000001128311066.png} | Bin ...4.png => en-us_image_0000001128311070.png} | Bin ...1.png => en-us_image_0000001128311072.png} | Bin ...5.png => en-us_image_0000001128311090.png} | Bin ...8.png => en-us_image_0000001128311092.png} | Bin ...2.png => en-us_image_0000001128311094.png} | Bin .../figures/en-us_image_0000001128311096.png | Bin 0 -> 1455 bytes ...3.png => en-us_image_0000001128311098.png} | Bin .../figures/en-us_image_0000001128311100.png | Bin 0 -> 20063 bytes .../figures/en-us_image_0000001128311104.png | Bin 0 -> 96167 bytes ...8.png => en-us_image_0000001128311116.png} | Bin ...2.png => en-us_image_0000001128311118.png} | Bin ...1.png => en-us_image_0000001128470864.png} | Bin ...2.png => en-us_image_0000001128470880.png} | Bin ...6.png => en-us_image_0000001128470900.png} | Bin .../figures/en-us_image_0000001128470902.png | Bin 0 -> 30743 bytes ...5.png => en-us_image_0000001128470904.png} | Bin .../figures/en-us_image_0000001128470906.png | Bin 0 -> 103804 bytes ...8.png => en-us_image_0000001128470922.png} | Bin .../figures/en-us_image_0000001128471042.png | Bin .../figures/en-us_image_0000001160528243.png | Bin 42629 -> 0 bytes .../figures/en-us_image_0000001160649345.png | Bin 46363 -> 0 bytes ...1.png => en-us_image_0000001174270699.png} | Bin ...6.png => en-us_image_0000001174270713.png} | Bin ...2.png => en-us_image_0000001174270715.png} | Bin .../figures/en-us_image_0000001174270727.png | Bin 0 -> 39832 bytes ...8.png => en-us_image_0000001174270729.png} | Bin ...9.png => en-us_image_0000001174270731.png} | Bin .../figures/en-us_image_0000001174270733.png | Bin 0 -> 39410 bytes .../figures/en-us_image_0000001174270735.png | Bin 0 -> 1560 bytes ...1.png => en-us_image_0000001174270737.png} | Bin ...9.png => en-us_image_0000001174270739.png} | Bin ...0.png => en-us_image_0000001174270743.png} | Bin ...5.png => en-us_image_0000001174270749.png} | Bin ...2.png => en-us_image_0000001174270751.png} | Bin .../figures/en-us_image_0000001174350615.png | Bin ...9.png => en-us_image_0000001174350623.png} | Bin ...8.png => en-us_image_0000001174350633.png} | Bin ...1.png => en-us_image_0000001174350641.png} | Bin ...7.png => en-us_image_0000001174350643.png} | Bin ...9.png => en-us_image_0000001174350647.png} | Bin ...8.png => en-us_image_0000001174350649.png} | Bin .../figures/en-us_image_0000001174350651.png | Bin 0 -> 367 bytes .../figures/en-us_image_0000001174350653.png | Bin 0 -> 190192 bytes ...8.png => en-us_image_0000001174350659.png} | Bin ...5.png => en-us_image_0000001174350661.png} | Bin ...4.png => en-us_image_0000001174350669.png} | Bin .../figures/en-us_image_0000001174350781.png | Bin ...-file-due-to-unavailable-connection-13.png | Bin 10090 -> 0 bytes .../failed-to-open-the-serial-port-9.png | Bin 165746 -> 0 bytes .../firewall-and-network-protection-15.png | Bin 141546 -> 0 bytes ...etting-started-for-the-standard-system.png | Bin 0 -> 32197 bytes .../network-and-firewall-setting-14.png | Bin 211258 -> 0 bytes ...-the-visual-studio-code-application-16.png | Bin 136943 -> 0 bytes ...system-startup-and-program-execution-8.png | Bin 2306 -> 0 bytes .../quick-start/hi3516-development-board.md | 2 +- en/device-dev/quick-start/hi3516.md | 2 +- .../quick-start/hi3518-development-board.md | 2 +- en/device-dev/quick-start/hi3518.md | 2 +- .../quick-start/hi3861-development-board.md | 6 +- en/device-dev/quick-start/hi3861.md | 2 +- .../quick-start/how-to-develop-12.md | 246 ---- en/device-dev/quick-start/how-to-develop.md | 2 +- .../introduction-to-the-development-boards.md | 2 +- en/device-dev/quick-start/introduction.md | 54 + en/device-dev/quick-start/overview-0.md | 2 +- en/device-dev/quick-start/overview-1.md | 2 +- en/device-dev/quick-start/overview-6.md | 4 - en/device-dev/quick-start/overview-7.md | 4 - en/device-dev/quick-start/overview-8.md | 58 - en/device-dev/quick-start/overview-9.md | 58 - .../preparing-the-ubuntu-build-environment.md | 69 -- .../running-a-hello-ohos-program-4.md | 268 ----- .../running-a-hello-ohos-program-5.md | 38 +- .../running-a-hello-ohos-program.md | 34 +- .../running-a-hello-world-program.md | 4 +- .../setting-up-the-environment-1.md | 151 --- .../setting-up-the-environment-2.md | 2 +- .../setting-up-the-environment-3.md | 156 --- .../setting-up-the-environment-4.md | 2 +- .../quick-start/setting-up-the-environment.md | 4 +- ...in-docker-mode-and-building-source-code.md | 118 ++ ...lation-package-and-building-source-code.md | 98 ++ ...ing-up-windows-development-environment.md} | 2 +- en/device-dev/quick-start/standard-system.md | 12 +- .../ubuntu-build-environment-10.md | 149 --- .../quick-start/ubuntu-build-environment.md | 6 +- .../windows-development-environment-10.md | 183 --- .../windows-development-environment.md | 22 +- en/device-dev/quick-start/wlan-connection.md | 28 +- en/device-dev/subsystems/Readme-EN.md | 24 +- .../subsystems/application-framework.md | 4 +- en/device-dev/subsystems/audio-video.md | 2 +- ...g-guidelines-for-mini-and-small-systems.md | 6 +- ...ding-guidelines-for-the-standard-system.md | 4 +- .../subsystems/compilation-and-building-0.md | 998 +++++++++++++++ .../compilation-and-building-faq.md | 121 -- .../compilation-and-building-guidelines-1.md | 174 --- .../compilation-and-building-guidelines.md | 482 ++------ .../compilation-and-building-overview-0.md | 60 - .../compilation-and-building-overview.md | 128 +- ...lines-5.md => development-guidelines-4.md} | 0 ...development-guidelines-on-photographing.md | 1 + ...ines-on-trusted-device-group-management.md | 264 ---- .../subsystems/{dfx-11.md => dfx-7.md} | 2 +- en/device-dev/subsystems/dfx.md | 2 +- .../subsystems/figures/build-process.jpg | Bin 63193 -> 59879 bytes .../subsystems/figures/building-process.jpg | Bin 63193 -> 0 bytes .../subsystems/figures/ril-adapter.png | Bin 33317 -> 0 bytes .../figures/\345\216\273\347\224\265.png" | Bin 27820 -> 0 bytes .../figures/\346\235\245\347\224\265.png" | Bin 38191 -> 0 bytes .../{graphics-2.md => graphics-1.md} | 0 en/device-dev/subsystems/graphics.md | 2 +- en/device-dev/subsystems/overview-2.md | 81 ++ en/device-dev/subsystems/overview-3.md | 187 ++- en/device-dev/subsystems/overview-4.md | 148 --- .../{overview-9.md => overview-5.md} | 0 en/device-dev/subsystems/overview.md | 2 +- en/device-dev/subsystems/plug-in.md | 2 + en/device-dev/subsystems/sdk.md | 2 - en/device-dev/subsystems/security.md | 4 +- .../{startup-10.md => startup-6.md} | 0 en/device-dev/subsystems/startup.md | 2 +- en/device-dev/subsystems/xts.md | 1 + en/readme.md | 154 +-- zh-cn/device-dev/driver/GPIO.md | 559 ++++++++- ...77\347\224\250\345\256\236\344\276\213.md" | 79 -- ...77\347\224\250\346\214\207\345\257\274.md" | 395 ------ .../driver/GPIO\346\246\202\350\277\260.md" | 82 -- zh-cn/device-dev/driver/I2C.md | 425 ++++++- ...77\347\224\250\345\256\236\344\276\213.md" | 192 --- ...77\347\224\250\346\214\207\345\257\274.md" | 171 --- .../driver/I2C\346\246\202\350\277\260.md" | 60 - zh-cn/device-dev/driver/LCD.md | 362 +++++- ...00\345\217\221\345\256\236\344\276\213.md" | 291 ----- ...00\345\217\221\346\214\207\345\257\274.md" | 23 - ...00\345\217\221\346\246\202\350\277\260.md" | 46 - zh-cn/device-dev/driver/MIPI-DSI.md | 553 ++++++++- ...77\347\224\250\345\256\236\344\276\213.md" | 98 -- ...77\347\224\250\346\214\207\345\257\274.md" | 365 ------ .../MIPI-DSI\346\246\202\350\277\260.md" | 84 -- zh-cn/device-dev/driver/RTC.md | 943 ++++++++++++++- ...77\347\224\250\345\256\236\344\276\213.md" | 97 -- ...77\347\224\250\346\214\207\345\257\274.md" | 741 ------------ .../driver/RTC\346\246\202\350\277\260.md" | 103 -- zh-cn/device-dev/driver/Readme-CN.md | 49 +- zh-cn/device-dev/driver/SDIO.md | 1067 ++++++++++++++++- ...77\347\224\250\345\256\236\344\276\213.md" | 129 -- ...77\347\224\250\346\214\207\345\257\274.md" | 787 ------------ .../driver/SDIO\346\246\202\350\277\260.md" | 149 --- zh-cn/device-dev/driver/SENSOR.md | 928 +++++++++++++- zh-cn/device-dev/driver/SPI.md | 565 ++++++++- ...77\347\224\250\345\256\236\344\276\213.md" | 70 -- ...77\347\224\250\346\214\207\345\257\274.md" | 386 ------ .../driver/SPI\346\246\202\350\277\260.md" | 107 -- zh-cn/device-dev/driver/TOUCHSCREEN.md | 409 ++++++- ...00\345\217\221\345\256\236\344\276\213.md" | 300 ----- ...00\345\217\221\346\214\207\345\257\274.md" | 36 - ...00\345\217\221\346\246\202\350\277\260.md" | 71 -- zh-cn/device-dev/driver/UART.md | 681 ++++++++++- ...77\347\224\250\345\256\236\344\276\213.md" | 67 -- ...77\347\224\250\346\214\207\345\257\274.md" | 506 -------- .../driver/UART\346\246\202\350\277\260.md" | 106 -- zh-cn/device-dev/driver/WATCHDOG.md | 556 ++++++++- zh-cn/device-dev/driver/WLAN.md | 621 +++++++++- ...00\345\217\221\345\256\236\344\276\213.md" | 372 ------ ...00\345\217\221\346\214\207\345\257\274.md" | 18 - ...00\345\217\221\346\246\202\350\277\260.md" | 229 ---- ...4.png => zh-cn_image_0000001123509750.png} | Bin ...4.png => zh-cn_image_0000001123514210.png} | Bin ...4.png => zh-cn_image_0000001123540984.png} | Bin ...9.png => zh-cn_image_0000001123582482.png} | Bin ...8.png => zh-cn_image_0000001123675706.png} | Bin ...8.png => zh-cn_image_0000001123703482.png} | Bin ...2.png => zh-cn_image_0000001123742254.png} | Bin ...5.png => zh-cn_image_0000001170187071.png} | Bin ...3.png => zh-cn_image_0000001170227689.png} | Bin ...6.png => zh-cn_image_0000001170229891.png} | Bin ...7.png => zh-cn_image_0000001170262141.png} | Bin ...8.png => zh-cn_image_0000001170383063.png} | Bin ...00\345\217\221\345\256\236\344\276\213.md" | 583 --------- ...00\345\217\221\346\214\207\345\257\274.md" | 16 - ...00\345\217\221\346\246\202\350\277\260.md" | 244 ---- ...13\350\257\225\346\214\207\345\257\274.md" | 82 -- ...63\345\217\260\351\251\261\345\212\250.md" | 2 +- ...77\347\224\250\345\256\236\344\276\213.md" | 86 -- ...77\347\224\250\346\214\207\345\257\274.md" | 391 ------ ...50\347\213\227\346\246\202\350\277\260.md" | 78 -- ...61\345\212\250\345\274\200\345\217\221.md" | 4 +- ...26\350\257\221\347\216\257\345\242\203.md" | 313 +++++ zh-cn/device-dev/get-code/IDE.md | 17 + zh-cn/device-dev/get-code/Readme-CN.md | 2 + ...20\347\240\201\350\216\267\345\217\226.md" | 9 +- ...67\345\217\226\345\267\245\345\205\267.md" | 282 +---- ...01\347\250\213\350\247\243\346\236\220.md" | 18 - ...41\345\236\213\347\256\200\344\273\213.md" | 12 - ...26\350\256\276\346\216\247\345\210\266.md" | 109 +- zh-cn/device-dev/guide/Readme-CN.md | 53 +- ...61\345\212\250\345\274\200\345\217\221.md" | 17 - ...5.png => zh-cn_image_0000001169991055.png} | Bin ...350\207\263HDF\346\241\206\346\236\266.md" | 35 - ...62\350\201\224\345\207\275\346\225\260.md" | 40 - ...350\207\263HDF\346\241\206\346\236\266.md" | 4 - ...00\345\217\221\347\244\272\344\276\213.md" | 482 +++++++- ...17\345\244\264\346\216\247\345\210\266.md" | 6 +- ...350\247\201\351\227\256\351\242\230-10.md" | 39 - ...00\345\217\221\347\244\272\344\276\213.md" | 452 ++++++- ...\347\224\250\345\256\236\344\276\213-4.md" | 0 ...24\347\224\250\345\256\236\344\276\213.md" | 2 +- .../guide/\345\274\200\345\217\221-11.md" | 396 ------ .../guide/\345\274\200\345\217\221.md" | 91 -- ...\345\217\221\345\207\206\345\244\207-8.md" | 8 - ...00\345\217\221\351\246\226\351\241\265.md" | 2 +- ...45\345\277\227\345\210\206\346\236\220.md" | 19 - ...\345\217\221\346\214\207\345\257\274-3.md" | 0 ...\345\217\221\346\214\207\345\257\274-2.md" | 1 + ...00\345\217\221\346\214\207\345\257\274.md" | 1 + ...17\345\244\264\346\216\247\345\210\266.md" | 2 +- ...00\345\217\221\346\214\207\345\257\274.md" | 266 ++-- ...00\345\217\221\347\244\272\344\276\213.md" | 15 - .../guide/\346\246\202\350\277\260-0.md" | 10 +- .../guide/\346\246\202\350\277\260-1.md" | 10 - .../guide/\346\246\202\350\277\260-10.md" | 26 - .../guide/\346\246\202\350\277\260-12.md" | 9 - .../guide/\346\246\202\350\277\260-5.md" | 0 .../guide/\346\246\202\350\277\260-7.md" | 15 - .../guide/\346\246\202\350\277\260.md" | 10 +- ...57\345\242\203\345\207\206\345\244\207.md" | 7 - ...57\345\242\203\346\220\255\345\273\272.md" | 7 - ...\346\234\272\350\277\220\350\241\214-9.md" | 35 - ...37\346\234\272\350\277\220\350\241\214.md" | 2 +- ...04\346\272\220\344\273\213\347\273\215.md" | 6 - ...\344\276\213\345\274\200\345\217\221-1.md" | 4 +- ...41\346\201\257\350\247\243\346\236\220.md" | 17 - ...76\345\220\215\346\211\223\345\214\205.md" | 4 - ...350\207\263HDF\346\241\206\346\236\266.md" | 22 - ...345\217\212\347\203\247\345\275\225-13.md" | 17 - ...21\345\217\212\347\203\247\345\275\225.md" | 20 - ...24\347\224\250\345\274\200\345\217\221.md" | 2 +- ...03\350\257\225\346\211\223\345\214\205.md" | 2 +- ...03\350\257\225\351\252\214\350\257\201.md" | 5 - ...01\346\234\211\351\251\261\345\212\250.md" | 99 -- ...50\344\273\266\344\277\241\346\201\257.md" | 98 -- ...17\350\277\260\344\277\241\346\201\257.md" | 64 - .../guide/\351\252\214\350\257\201.md" | 9 - .../kernel/{FAT-20.md => FAT-21.md} | 0 zh-cn/device-dev/kernel/LittleFS.md | 4 +- zh-cn/device-dev/kernel/Readme-CN.md | 18 +- zh-cn/device-dev/kernel/cpup-17.md | 7 + ...50\346\200\201\345\206\205\345\255\230.md" | 2 +- ...346\234\254\346\246\202\345\277\265-18.md" | 0 ...346\234\254\346\246\202\345\277\265-22.md" | 0 ...73\347\273\237\345\206\205\346\240\270.md" | 14 +- ...345\217\221\346\214\207\345\257\274-19.md" | 0 ...345\217\221\346\214\207\345\257\274-23.md" | 0 ...51\345\261\225\347\273\204\344\273\266.md" | 4 +- ...344\273\266\347\263\273\347\273\237-20.md" | 2 +- ...73\347\273\237\345\206\205\346\240\270.md" | 4 +- ...73\347\273\237\345\206\205\346\240\270.md" | 14 +- ...04\345\272\223\347\247\273\346\244\215.md" | 4 +- ...16\345\274\200\345\217\221\346\235\277.md" | 2 +- ...21\346\235\277\344\273\213\347\273\215.md" | 2 +- ...18\345\274\200\345\217\221\346\235\277.md" | 2 +- ...21\346\235\277\344\273\213\347\273\215.md" | 2 +- ...61\345\274\200\345\217\221\346\235\277.md" | 2 +- ...21\346\235\277\344\273\213\347\273\215.md" | 6 +- zh-cn/device-dev/quick-start/Readme-CN.md | 15 +- ...345\242\203\345\207\206\345\244\207-10.md" | 63 - ...\345\242\203\345\207\206\345\244\207-9.md" | 147 --- ...57\345\242\203\345\207\206\345\244\207.md" | 6 +- .../WLAN\350\201\224\347\275\221.md" | 20 +- ...\345\242\203\345\207\206\345\244\207-7.md" | 2 +- ...\345\242\203\345\207\206\345\244\207-8.md" | 183 --- ...57\345\242\203\345\207\206\345\244\207.md" | 22 +- zh-cn/device-dev/quick-start/figures/1-18.png | Bin 14927 -> 0 bytes .../figures/2021-01-27_170334-16.png | Bin 16573 -> 0 bytes .../figures/2021-01-27_170334-17.png | Bin 386 -> 16573 bytes .../quick-start/figures/2021-01-27_181047.png | Bin 8726 -> 0 bytes .../3516\346\255\243\351\235\242-16.png" | Bin 0 -> 420903 bytes .../figures/3861\350\203\214\351\235\242.png" | Bin 653581 -> 0 bytes .../figures/zh-cn_image_0000001113969536.png | Bin 85763 -> 0 bytes .../figures/zh-cn_image_0000001114129426.png | Bin 113968 -> 0 bytes .../figures/zh-cn_image_0000001117168786.png | Bin 34602 -> 0 bytes .../figures/zh-cn_image_0000001117621400.png | Bin 0 -> 25708 bytes .../figures/zh-cn_image_0000001120802383.png | Bin 21015 -> 0 bytes ...6.png => zh-cn_image_0000001128311066.png} | Bin ...4.png => zh-cn_image_0000001128311070.png} | Bin ...1.png => zh-cn_image_0000001128311072.png} | Bin ...5.png => zh-cn_image_0000001128311090.png} | Bin ...8.png => zh-cn_image_0000001128311092.png} | Bin ...2.png => zh-cn_image_0000001128311094.png} | Bin .../figures/zh-cn_image_0000001128311096.png | Bin 0 -> 1455 bytes ...3.png => zh-cn_image_0000001128311098.png} | Bin .../figures/zh-cn_image_0000001128311100.png | Bin 0 -> 20063 bytes .../figures/zh-cn_image_0000001128311104.png | Bin 0 -> 96167 bytes ...8.png => zh-cn_image_0000001128311116.png} | Bin ...2.png => zh-cn_image_0000001128311118.png} | Bin ...1.png => zh-cn_image_0000001128470864.png} | Bin ...2.png => zh-cn_image_0000001128470880.png} | Bin ...6.png => zh-cn_image_0000001128470900.png} | Bin .../figures/zh-cn_image_0000001128470902.png | Bin 0 -> 30743 bytes ...5.png => zh-cn_image_0000001128470904.png} | Bin .../figures/zh-cn_image_0000001128470906.png | Bin 0 -> 103804 bytes .../figures/zh-cn_image_0000001128470908.png | Bin 0 -> 96467 bytes ...8.png => zh-cn_image_0000001128470922.png} | Bin .../figures/zh-cn_image_0000001160527611.png | Bin 85055 -> 0 bytes .../figures/zh-cn_image_0000001160528243.png | Bin 42629 -> 0 bytes .../figures/zh-cn_image_0000001160649345.png | Bin 46363 -> 0 bytes .../figures/zh-cn_image_0000001163045527.png | Bin 19888 -> 0 bytes .../figures/zh-cn_image_0000001163569081.png | Bin 35138 -> 0 bytes ...1.png => zh-cn_image_0000001174270699.png} | Bin ...6.png => zh-cn_image_0000001174270713.png} | Bin ...2.png => zh-cn_image_0000001174270715.png} | Bin .../figures/zh-cn_image_0000001174270727.png | Bin 0 -> 39832 bytes ...8.png => zh-cn_image_0000001174270729.png} | Bin ...9.png => zh-cn_image_0000001174270731.png} | Bin .../figures/zh-cn_image_0000001174270733.png | Bin 0 -> 39410 bytes .../figures/zh-cn_image_0000001174270735.png | Bin 0 -> 1560 bytes ...1.png => zh-cn_image_0000001174270737.png} | Bin ...9.png => zh-cn_image_0000001174270739.png} | Bin ...0.png => zh-cn_image_0000001174270743.png} | Bin ...5.png => zh-cn_image_0000001174270749.png} | Bin ...2.png => zh-cn_image_0000001174270751.png} | Bin ...0.png => zh-cn_image_0000001174350615.png} | Bin ...9.png => zh-cn_image_0000001174350623.png} | Bin ...8.png => zh-cn_image_0000001174350633.png} | Bin ...1.png => zh-cn_image_0000001174350641.png} | Bin ...7.png => zh-cn_image_0000001174350643.png} | Bin ...9.png => zh-cn_image_0000001174350647.png} | Bin ...8.png => zh-cn_image_0000001174350649.png} | Bin .../figures/zh-cn_image_0000001174350651.png | Bin 0 -> 367 bytes .../figures/zh-cn_image_0000001174350653.png | Bin 0 -> 23039 bytes .../figures/zh-cn_image_0000001174350655.png | Bin 0 -> 2267 bytes ...8.png => zh-cn_image_0000001174350659.png} | Bin ...5.png => zh-cn_image_0000001174350661.png} | Bin ...4.png => zh-cn_image_0000001174350669.png} | Bin ...5\351\227\250\346\265\201\347\250\213.png" | Bin 0 -> 19686 bytes ...43\345\274\200\345\217\221\346\235\277.md" | 2 +- ...45\351\227\250\344\273\213\347\273\215.md" | 54 + ...\346\235\277\347\216\257\345\242\203-1.md" | 151 --- ...\346\235\277\347\216\257\345\242\203-2.md" | 2 +- ...\346\235\277\347\216\257\345\242\203-3.md" | 156 --- ...\346\235\277\347\216\257\345\242\203-4.md" | 2 +- ...21\346\235\277\347\216\257\345\242\203.md" | 4 +- ...\350\247\201\351\227\256\351\242\230-0.md" | 292 ----- ...\350\247\201\351\227\256\351\242\230-1.md" | 12 +- ...350\247\201\351\227\256\351\242\230-10.md" | 21 - ...\350\247\201\351\227\256\351\242\230-2.md" | 175 --- ...\350\247\201\351\227\256\351\242\230-3.md" | 8 +- ...\350\247\201\351\227\256\351\242\230-5.md" | 174 --- ...\350\247\201\351\227\256\351\242\230-6.md" | 10 +- ...\350\247\201\351\227\256\351\242\230-8.md" | 2 +- ...70\350\247\201\351\227\256\351\242\230.md" | 2 +- ...345\217\221\346\255\245\351\252\244-11.md" | 246 ---- ...345\217\221\346\255\245\351\252\244-12.md" | 246 ---- ...00\345\217\221\346\255\245\351\252\244.md" | 2 +- ...er\346\226\271\345\274\217\357\274\211.md" | 118 ++ ...05\346\226\271\345\274\217\357\274\211.md" | 98 ++ ...73\347\273\237\347\216\257\345\242\203.md" | 2 +- ...73\347\273\237\345\205\245\351\227\250.md" | 12 +- .../\346\246\202\350\277\260-0.md" | 2 +- .../\346\246\202\350\277\260-6.md" | 4 - .../\346\246\202\350\277\260-7.md" | 4 - .../\346\246\202\350\277\260-8.md" | 58 - .../quick-start/\346\246\202\350\277\260.md" | 2 +- ...57\345\242\203\346\220\255\345\273\272.md" | 11 - .../\350\277\220\350\241\214Hello-OHOS-4.md" | 264 ---- .../\350\277\220\350\241\214Hello-OHOS-5.md" | 22 +- .../\350\277\220\350\241\214Hello-OHOS.md" | 18 +- .../\350\277\220\350\241\214Hello-World.md" | 4 +- ...34\345\203\217\347\203\247\345\275\225.md" | 68 ++ ...00\345\217\221\347\244\272\344\276\213.md" | 4 +- zh-cn/device-dev/subsystems/DFX.md | 6 + ...77\347\224\250\346\214\207\345\257\274.md" | 33 + ...45\350\257\242\346\214\207\345\257\274.md" | 109 ++ ...42\351\230\205\346\214\207\345\257\274.md" | 98 ++ ...00\345\217\221\346\214\207\345\257\274.md" | 139 --- zh-cn/device-dev/subsystems/Readme-CN.md | 27 +- ...00\345\217\221\350\277\207\347\250\213.md" | 4 +- ...00\345\217\221\346\214\207\345\215\227.md" | 67 ++ ...77\347\224\250\346\214\207\345\257\274.md" | 12 +- .../subsystems/figures/RIL-Adapter.png | Bin 24049 -> 0 bytes .../figures/\345\216\273\347\224\265.png" | Bin 25300 -> 0 bytes ...0\345\255\220\347\263\273\347\273\237.png" | Bin 25609 -> 0 bytes .../figures/\346\235\245\347\224\265.png" | Bin 39328 -> 0 bytes ...77\347\224\250\346\214\207\345\257\274.md" | 106 +- ...70\350\247\201\351\227\256\351\242\230.md" | 39 - ...00\345\217\221\346\214\207\345\257\274.md" | 264 ---- .../subsystems/\345\256\211\345\205\250.md" | 13 - ...00\345\217\221\346\214\207\345\257\274.md" | 228 ---- ...00\345\217\221\346\214\207\345\257\274.md" | 272 ----- ...\345\217\221\345\256\236\344\276\213-6.md" | 112 -- ...\345\217\221\346\214\207\345\257\274-1.md" | 0 ...\345\217\221\346\214\207\345\257\274-5.md" | 11 - ...00\345\217\221\346\214\207\345\257\274.md" | 1 + ...\345\273\272\347\216\257\345\242\203-0.md" | 0 ...04\345\273\272\346\214\207\345\257\274.md" | 7 - .../subsystems/\346\246\202\350\277\260-7.md" | 76 -- .../subsystems/\346\246\202\350\277\260.md" | 2 +- ...13\345\272\217\346\241\206\346\236\266.md" | 4 +- ...21\345\267\245\345\205\267\351\223\276.md" | 2 - ...26\350\257\221\346\236\204\345\273\272.md" | 4 +- ...77\347\224\250\346\214\207\345\257\274.md" | 431 ------- ...07\345\207\206\347\263\273\347\273\237.md" | 79 +- ...17\345\236\213\347\263\273\347\273\237.md" | 697 ++++++++++- ...70\350\247\201\351\227\256\351\242\230.md" | 121 -- ...\345\273\272\346\246\202\350\277\260-0.md" | 58 - ...04\345\273\272\346\214\207\345\257\274.md" | 9 - .../device-dev/\345\257\274\350\257\273.md" | 31 +- zh-cn/readme.md | 6 +- 541 files changed, 20934 insertions(+), 24917 deletions(-) rename en/device-dev/driver/figures/{en-us_image_0000001057902344.png => en-us_image_0000001123509750.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001072553354.png => en-us_image_0000001123514210.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001054440624.png => en-us_image_0000001123540984.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001054007499.png => en-us_image_0000001123582482.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001054728498.png => en-us_image_0000001123675706.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001054726248.png => en-us_image_0000001123703482.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001054142582.png => en-us_image_0000001123742254.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001057342245.png => en-us_image_0000001170187071.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001054006983.png => en-us_image_0000001170227689.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001057622716.png => en-us_image_0000001170229891.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001053926237.png => en-us_image_0000001170262141.png} (100%) rename en/device-dev/driver/figures/{en-us_image_0000001055299108.png => en-us_image_0000001170383063.png} (100%) delete mode 100644 en/device-dev/driver/gpiooverview.md delete mode 100644 en/device-dev/driver/gpiousage-example.md delete mode 100644 en/device-dev/driver/gpiousage-guidelines.md delete mode 100644 en/device-dev/driver/i2c-overview.md delete mode 100644 en/device-dev/driver/i2c-usage-example.md delete mode 100644 en/device-dev/driver/i2c-usage-guidelines.md delete mode 100644 en/device-dev/driver/lcddevelopment-example.md delete mode 100644 en/device-dev/driver/lcddevelopment-guidelines.md delete mode 100644 en/device-dev/driver/lcdoverview.md delete mode 100644 en/device-dev/driver/mipi-dsi-overview.md rename en/device-dev/driver/{driver-platform.md => platform-drivers.md} (66%) delete mode 100644 en/device-dev/driver/rtc-overview.md delete mode 100644 en/device-dev/driver/rtc-usage-example.md delete mode 100644 en/device-dev/driver/rtc-usage-guidelines.md delete mode 100644 en/device-dev/driver/sdiooverview.md delete mode 100644 en/device-dev/driver/sdiousage-example.md delete mode 100644 en/device-dev/driver/sdiousage-guidelines.md delete mode 100644 en/device-dev/driver/sensor-driver-development-example.md delete mode 100644 en/device-dev/driver/sensor-driver-development-guidelines.md delete mode 100644 en/device-dev/driver/sensor-driver-overview.md delete mode 100644 en/device-dev/driver/sensor-driver-test-guidelines.md delete mode 100644 en/device-dev/driver/spioverview.md delete mode 100644 en/device-dev/driver/spiusage-example.md delete mode 100644 en/device-dev/driver/spiusage-guidelines.md delete mode 100644 en/device-dev/driver/touchscreendevelopment-example.md delete mode 100644 en/device-dev/driver/touchscreendevelopment-guidelines.md delete mode 100644 en/device-dev/driver/touchscreenoverview.md delete mode 100644 en/device-dev/driver/uartoverview.md delete mode 100644 en/device-dev/driver/uartusage-example.md delete mode 100644 en/device-dev/driver/uartusage-guidelines.md delete mode 100644 en/device-dev/driver/usage-example.md delete mode 100644 en/device-dev/driver/usage-guidelines.md delete mode 100644 en/device-dev/driver/watchdogoverview.md delete mode 100644 en/device-dev/driver/watchdogusage-example.md delete mode 100644 en/device-dev/driver/watchdogusage-guidelines.md delete mode 100644 en/device-dev/driver/wlandevelopment-example.md delete mode 100644 en/device-dev/driver/wlandevelopment-guidelines.md delete mode 100644 en/device-dev/driver/wlanoverview.md create mode 100644 en/device-dev/get-code/docker-environment.md create mode 100644 en/device-dev/get-code/ide.md rename en/device-dev/guide/{building-and-burning-14.md => building-and-burning-15.md} (100%) rename en/device-dev/guide/{development-12.md => development-13.md} (100%) delete mode 100644 en/device-dev/guide/led-peripheral-control.md rename en/device-dev/guide/{overview-10.md => overview-11.md} (100%) rename en/device-dev/guide/{overview-13.md => overview-14.md} (100%) rename en/device-dev/guide/{preparations-11.md => preparations-12.md} (100%) rename en/device-dev/kernel/{openharmony-lite-kernel-basic-functions.md => basic-kernel.md} (60%) rename en/device-dev/kernel/{lite-kernel.md => kernel-for-mini-and-small-systems.md} (55%) rename en/device-dev/kernel/{linux-kernel.md => kernel-for-standard-systems.md} (82%) rename en/device-dev/{quick-start => }/overview.md (81%) create mode 100644 en/device-dev/quick-start/burning-images.md delete mode 100644 en/device-dev/quick-start/environment-setup-7.md delete mode 100644 en/device-dev/quick-start/environment-setup-8.md delete mode 100644 en/device-dev/quick-start/faqs-2.md delete mode 100644 en/device-dev/quick-start/faqs-5.md rename en/device-dev/quick-start/{faqs-11.md => faqs-7.md} (88%) delete mode 100644 en/device-dev/quick-start/figures/1-19.png delete mode 100644 en/device-dev/quick-start/figures/1-20.png delete mode 100644 en/device-dev/quick-start/figures/2021-01-27_170334-17.png delete mode 100644 en/device-dev/quick-start/figures/2021-01-27_170334-6.png delete mode 100644 en/device-dev/quick-start/figures/2021-01-27_181047.png delete mode 100644 en/device-dev/quick-start/figures/2021-01-28_112953.png create mode 100644 "en/device-dev/quick-start/figures/3516\346\255\243\351\235\242-17.png" delete mode 100644 en/device-dev/quick-start/figures/allowing-the-visual-studio-code-application-to-access-the-network-17.png delete mode 100644 en/device-dev/quick-start/figures/changjian1-12.png delete mode 100644 en/device-dev/quick-start/figures/checking-whether-the-serial-port-is-used-10.png delete mode 100644 en/device-dev/quick-start/figures/chuankou1-7.png delete mode 100644 en/device-dev/quick-start/figures/disabling-the-terminal-using-the-serial-port-11.png delete mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001078313582.png delete mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001113969536.png delete mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001114129426.png create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001117621400.png delete mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001119945810.png delete mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001120802173.png delete mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001120802383.png delete mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001121061169.png rename en/device-dev/quick-start/figures/{en-us_image_0000001105524466.png => en-us_image_0000001128311066.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001105216304.png => en-us_image_0000001128311070.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001152176131.png => en-us_image_0000001128311072.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001096963405.png => en-us_image_0000001128311090.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001078089378.png => en-us_image_0000001128311092.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001073835952.png => en-us_image_0000001128311094.png} (100%) create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001128311096.png rename en/device-dev/quick-start/figures/{en-us_image_0000001160649343.png => en-us_image_0000001128311098.png} (100%) create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001128311100.png create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001128311104.png rename en/device-dev/quick-start/figures/{en-us_image_0000001078404538.png => en-us_image_0000001128311116.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001057235392.png => en-us_image_0000001128311118.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001151976061.png => en-us_image_0000001128470864.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001105376252.png => en-us_image_0000001128470880.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001073057176.png => en-us_image_0000001128470900.png} (100%) create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001128470902.png rename en/device-dev/quick-start/figures/{en-us_image_0000001160529355.png => en-us_image_0000001128470904.png} (100%) create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001128470906.png rename en/device-dev/quick-start/figures/{en-us_image_0000001078244328.png => en-us_image_0000001128470922.png} (100%) rename zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001096154076.png => en/device-dev/quick-start/figures/en-us_image_0000001128471042.png (100%) mode change 100755 => 100644 delete mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001160528243.png delete mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001160649345.png rename en/device-dev/quick-start/figures/{en-us_image_0000001152056191.png => en-us_image_0000001174270699.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001105216296.png => en-us_image_0000001174270713.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001105056492.png => en-us_image_0000001174270715.png} (100%) create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001174270727.png rename en/device-dev/quick-start/figures/{en-us_image_0000001116405268.png => en-us_image_0000001174270729.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001163529159.png => en-us_image_0000001174270731.png} (100%) create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001174270733.png create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001174270735.png rename en/device-dev/quick-start/figures/{en-us_image_0000001152256221.png => en-us_image_0000001174270737.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001151976069.png => en-us_image_0000001174270739.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001105376260.png => en-us_image_0000001174270743.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001163569275.png => en-us_image_0000001174270749.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001074285712.png => en-us_image_0000001174270751.png} (100%) rename "en/device-dev/quick-start/figures/3861\350\203\214\351\235\242.png" => en/device-dev/quick-start/figures/en-us_image_0000001174350615.png (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001152176139.png => en-us_image_0000001174350623.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001073388838.png => en-us_image_0000001174350633.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001163568181.png => en-us_image_0000001174350641.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001073242197.png => en-us_image_0000001174350643.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001160529359.png => en-us_image_0000001174350647.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001077956808.png => en-us_image_0000001174350649.png} (100%) create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001174350651.png create mode 100644 en/device-dev/quick-start/figures/en-us_image_0000001174350653.png rename en/device-dev/quick-start/figures/{en-us_image_0000001105536118.png => en-us_image_0000001174350659.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001152256235.png => en-us_image_0000001174350661.png} (100%) rename en/device-dev/quick-start/figures/{en-us_image_0000001074445364.png => en-us_image_0000001174350669.png} (100%) rename zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001143154485.png => en/device-dev/quick-start/figures/en-us_image_0000001174350781.png (100%) mode change 100755 => 100644 delete mode 100644 en/device-dev/quick-start/figures/failed-to-obtain-the-image-file-due-to-unavailable-connection-13.png delete mode 100644 en/device-dev/quick-start/figures/failed-to-open-the-serial-port-9.png delete mode 100644 en/device-dev/quick-start/figures/firewall-and-network-protection-15.png create mode 100644 en/device-dev/quick-start/figures/getting-started-for-the-standard-system.png delete mode 100644 en/device-dev/quick-start/figures/network-and-firewall-setting-14.png delete mode 100644 en/device-dev/quick-start/figures/selecting-the-visual-studio-code-application-16.png delete mode 100644 en/device-dev/quick-start/figures/successful-system-startup-and-program-execution-8.png delete mode 100644 en/device-dev/quick-start/how-to-develop-12.md create mode 100644 en/device-dev/quick-start/introduction.md delete mode 100644 en/device-dev/quick-start/overview-6.md delete mode 100644 en/device-dev/quick-start/overview-7.md delete mode 100644 en/device-dev/quick-start/overview-8.md delete mode 100644 en/device-dev/quick-start/overview-9.md delete mode 100644 en/device-dev/quick-start/preparing-the-ubuntu-build-environment.md delete mode 100644 en/device-dev/quick-start/running-a-hello-ohos-program-4.md delete mode 100644 en/device-dev/quick-start/setting-up-the-environment-1.md delete mode 100644 en/device-dev/quick-start/setting-up-the-environment-3.md create mode 100644 en/device-dev/quick-start/setting-up-ubuntu-development-environment-in-docker-mode-and-building-source-code.md create mode 100644 en/device-dev/quick-start/setting-up-ubuntu-development-environment-with-installation-package-and-building-source-code.md rename en/device-dev/quick-start/{windows-development-environment-9.md => setting-up-windows-development-environment.md} (99%) delete mode 100644 en/device-dev/quick-start/ubuntu-build-environment-10.md delete mode 100644 en/device-dev/quick-start/windows-development-environment-10.md create mode 100644 en/device-dev/subsystems/compilation-and-building-0.md delete mode 100644 en/device-dev/subsystems/compilation-and-building-faq.md delete mode 100644 en/device-dev/subsystems/compilation-and-building-guidelines-1.md delete mode 100644 en/device-dev/subsystems/compilation-and-building-overview-0.md rename en/device-dev/subsystems/{development-guidelines-5.md => development-guidelines-4.md} (100%) delete mode 100644 en/device-dev/subsystems/development-guidelines-on-trusted-device-group-management.md rename en/device-dev/subsystems/{dfx-11.md => dfx-7.md} (92%) delete mode 100644 en/device-dev/subsystems/figures/building-process.jpg delete mode 100644 en/device-dev/subsystems/figures/ril-adapter.png delete mode 100644 "en/device-dev/subsystems/figures/\345\216\273\347\224\265.png" delete mode 100644 "en/device-dev/subsystems/figures/\346\235\245\347\224\265.png" rename en/device-dev/subsystems/{graphics-2.md => graphics-1.md} (100%) create mode 100644 en/device-dev/subsystems/overview-2.md delete mode 100644 en/device-dev/subsystems/overview-4.md rename en/device-dev/subsystems/{overview-9.md => overview-5.md} (100%) rename en/device-dev/subsystems/{startup-10.md => startup-6.md} (100%) delete mode 100755 "zh-cn/device-dev/driver/GPIO\344\275\277\347\224\250\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/GPIO\344\275\277\347\224\250\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/GPIO\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/I2C\344\275\277\347\224\250\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/I2C\344\275\277\347\224\250\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/I2C\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/MIPI-DSI\344\275\277\347\224\250\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/MIPI-DSI\344\275\277\347\224\250\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/MIPI-DSI\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/RTC\344\275\277\347\224\250\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/RTC\344\275\277\347\224\250\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/RTC\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/SDIO\344\275\277\347\224\250\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/SDIO\344\275\277\347\224\250\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/SDIO\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/SPI\344\275\277\347\224\250\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/SPI\344\275\277\347\224\250\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/SPI\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/UART\344\275\277\347\224\250\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/UART\344\275\277\347\224\250\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/UART\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\346\246\202\350\277\260.md" rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001057902344.png => zh-cn_image_0000001123509750.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001072553354.png => zh-cn_image_0000001123514210.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001054440624.png => zh-cn_image_0000001123540984.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001054007499.png => zh-cn_image_0000001123582482.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001054728498.png => zh-cn_image_0000001123675706.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001054726248.png => zh-cn_image_0000001123703482.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001054142582.png => zh-cn_image_0000001123742254.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001057342245.png => zh-cn_image_0000001170187071.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001054006983.png => zh-cn_image_0000001170227689.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001057622716.png => zh-cn_image_0000001170229891.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001053926237.png => zh-cn_image_0000001170262141.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/driver/figures/{zh-cn_image_0000001055299108.png => zh-cn_image_0000001170383063.png} (100%) mode change 100755 => 100644 delete mode 100755 "zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\346\246\202\350\277\260.md" delete mode 100755 "zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\346\265\213\350\257\225\346\214\207\345\257\274.md" rename "zh-cn/device-dev/driver/\351\251\261\345\212\250\345\271\263\345\217\260.md" => "zh-cn/device-dev/driver/\345\271\263\345\217\260\351\251\261\345\212\250.md" (79%) mode change 100755 => 100644 delete mode 100755 "zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\344\275\277\347\224\250\345\256\236\344\276\213.md" delete mode 100755 "zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\344\275\277\347\224\250\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\346\246\202\350\277\260.md" create mode 100644 "zh-cn/device-dev/get-code/Docker\347\274\226\350\257\221\347\216\257\345\242\203.md" create mode 100644 zh-cn/device-dev/get-code/IDE.md delete mode 100644 "zh-cn/device-dev/guide/Input\346\250\241\345\236\213\345\267\245\344\275\234\346\265\201\347\250\213\350\247\243\346\236\220.md" delete mode 100644 "zh-cn/device-dev/guide/Input\346\250\241\345\236\213\347\256\200\344\273\213.md" delete mode 100644 "zh-cn/device-dev/guide/TouchScreen\345\231\250\344\273\266\351\251\261\345\212\250\345\274\200\345\217\221.md" rename zh-cn/device-dev/guide/figures/{zh-cn_image_0000001161922745.png => zh-cn_image_0000001169991055.png} (100%) delete mode 100644 "zh-cn/device-dev/guide/\345\205\254\345\205\261\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" delete mode 100644 "zh-cn/device-dev/guide/\345\205\267\344\275\223\350\260\203\347\224\250\351\200\273\350\276\221\344\270\262\350\201\224\345\207\275\346\225\260.md" delete mode 100644 "zh-cn/device-dev/guide/\345\231\250\344\273\266\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" delete mode 100644 "zh-cn/device-dev/guide/\345\270\270\350\247\201\351\227\256\351\242\230-10.md" rename "zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213-5.md" => "zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213-4.md" (100%) mode change 100755 => 100644 delete mode 100644 "zh-cn/device-dev/guide/\345\274\200\345\217\221-11.md" delete mode 100755 "zh-cn/device-dev/guide/\345\274\200\345\217\221.md" delete mode 100755 "zh-cn/device-dev/guide/\345\274\200\345\217\221\345\207\206\345\244\207-8.md" delete mode 100644 "zh-cn/device-dev/guide/\345\274\200\346\234\272\346\227\245\345\277\227\345\210\206\346\236\220.md" rename "zh-cn/device-dev/guide/\345\275\225\345\203\217\345\274\200\345\217\221\346\214\207\345\257\274-4.md" => "zh-cn/device-dev/guide/\345\275\225\345\203\217\345\274\200\345\217\221\346\214\207\345\257\274-3.md" (100%) mode change 100755 => 100644 rename "zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274-3.md" => "zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274-2.md" (99%) mode change 100755 => 100644 rename "zh-cn/device-dev/guide/\345\274\200\345\217\221\346\255\245\351\252\244.md" => "zh-cn/device-dev/guide/\346\227\266\351\222\237\345\272\224\347\224\250\345\274\200\345\217\221\346\214\207\345\257\274.md" (42%) delete mode 100644 "zh-cn/device-dev/guide/\346\227\266\351\222\237\345\272\224\347\224\250\345\274\200\345\217\221\347\244\272\344\276\213.md" delete mode 100755 "zh-cn/device-dev/guide/\346\246\202\350\277\260-1.md" delete mode 100644 "zh-cn/device-dev/guide/\346\246\202\350\277\260-10.md" delete mode 100644 "zh-cn/device-dev/guide/\346\246\202\350\277\260-12.md" rename "zh-cn/device-dev/guide/\346\246\202\350\277\260-6.md" => "zh-cn/device-dev/guide/\346\246\202\350\277\260-5.md" (100%) mode change 100755 => 100644 delete mode 100755 "zh-cn/device-dev/guide/\346\246\202\350\277\260-7.md" delete mode 100644 "zh-cn/device-dev/guide/\347\216\257\345\242\203\345\207\206\345\244\207.md" delete mode 100644 "zh-cn/device-dev/guide/\347\216\257\345\242\203\346\220\255\345\273\272.md" delete mode 100644 "zh-cn/device-dev/guide/\347\234\237\346\234\272\350\277\220\350\241\214-9.md" delete mode 100644 "zh-cn/device-dev/guide/\347\241\254\344\273\266\350\265\204\346\272\220\344\273\213\347\273\215.md" rename "zh-cn/device-dev/guide/\347\244\272\344\276\213\345\274\200\345\217\221-2.md" => "zh-cn/device-dev/guide/\347\244\272\344\276\213\345\274\200\345\217\221-1.md" (51%) mode change 100755 => 100644 delete mode 100644 "zh-cn/device-dev/guide/\347\247\201\346\234\211\351\205\215\347\275\256\344\277\241\346\201\257\350\247\243\346\236\220.md" delete mode 100644 "zh-cn/device-dev/guide/\347\255\276\345\220\215\346\211\223\345\214\205.md" delete mode 100644 "zh-cn/device-dev/guide/\347\256\241\347\220\206\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" delete mode 100644 "zh-cn/device-dev/guide/\347\274\226\350\257\221\345\217\212\347\203\247\345\275\225-13.md" delete mode 100644 "zh-cn/device-dev/guide/\347\274\226\350\257\221\345\217\212\347\203\247\345\275\225.md" delete mode 100644 "zh-cn/device-dev/guide/\350\260\203\350\257\225\351\252\214\350\257\201.md" delete mode 100644 "zh-cn/device-dev/guide/\351\200\202\351\205\215\345\231\250\344\273\266\347\247\201\346\234\211\351\251\261\345\212\250.md" delete mode 100644 "zh-cn/device-dev/guide/\351\205\215\347\275\256Touchscreen\345\231\250\344\273\266\344\277\241\346\201\257.md" delete mode 100644 "zh-cn/device-dev/guide/\351\205\215\347\275\256\350\256\276\345\244\207\346\217\217\350\277\260\344\277\241\346\201\257.md" delete mode 100755 "zh-cn/device-dev/guide/\351\252\214\350\257\201.md" rename zh-cn/device-dev/kernel/{FAT-20.md => FAT-21.md} (100%) create mode 100644 zh-cn/device-dev/kernel/cpup-17.md rename "zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-17.md" => "zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-18.md" (100%) rename "zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-21.md" => "zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-22.md" (100%) rename "zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-18.md" => "zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-19.md" (100%) rename "zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-22.md" => "zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-23.md" (100%) rename "zh-cn/device-dev/kernel/\346\226\207\344\273\266\347\263\273\347\273\237-19.md" => "zh-cn/device-dev/kernel/\346\226\207\344\273\266\347\263\273\347\273\237-20.md" (99%) delete mode 100644 "zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207-10.md" delete mode 100644 "zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207-9.md" rename "zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-9.md" => "zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-7.md" (99%) delete mode 100644 "zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-8.md" delete mode 100644 zh-cn/device-dev/quick-start/figures/1-18.png delete mode 100644 zh-cn/device-dev/quick-start/figures/2021-01-27_170334-16.png delete mode 100755 zh-cn/device-dev/quick-start/figures/2021-01-27_181047.png create mode 100644 "zh-cn/device-dev/quick-start/figures/3516\346\255\243\351\235\242-16.png" delete mode 100755 "zh-cn/device-dev/quick-start/figures/3861\350\203\214\351\235\242.png" delete mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001113969536.png delete mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001114129426.png delete mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001117168786.png create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001117621400.png delete mode 100755 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001120802383.png rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001105524466.png => zh-cn_image_0000001128311066.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001105216304.png => zh-cn_image_0000001128311070.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001152176131.png => zh-cn_image_0000001128311072.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001096963405.png => zh-cn_image_0000001128311090.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001078089378.png => zh-cn_image_0000001128311092.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001073835952.png => zh-cn_image_0000001128311094.png} (100%) mode change 100755 => 100644 create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128311096.png rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001160649343.png => zh-cn_image_0000001128311098.png} (100%) create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128311100.png create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128311104.png rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001078404538.png => zh-cn_image_0000001128311116.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001057235392.png => zh-cn_image_0000001128311118.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001151976061.png => zh-cn_image_0000001128470864.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001105376252.png => zh-cn_image_0000001128470880.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001073057176.png => zh-cn_image_0000001128470900.png} (100%) mode change 100755 => 100644 create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128470902.png rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001160529355.png => zh-cn_image_0000001128470904.png} (100%) create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128470906.png create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128470908.png rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001078244328.png => zh-cn_image_0000001128470922.png} (100%) mode change 100755 => 100644 delete mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160527611.png delete mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160528243.png delete mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160649345.png delete mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001163045527.png delete mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001163569081.png rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001152056191.png => zh-cn_image_0000001174270699.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001105216296.png => zh-cn_image_0000001174270713.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001105056492.png => zh-cn_image_0000001174270715.png} (100%) create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174270727.png rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001116405268.png => zh-cn_image_0000001174270729.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001163529159.png => zh-cn_image_0000001174270731.png} (100%) create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174270733.png create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174270735.png rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001152256221.png => zh-cn_image_0000001174270737.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001151976069.png => zh-cn_image_0000001174270739.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001105376260.png => zh-cn_image_0000001174270743.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001163569275.png => zh-cn_image_0000001174270749.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001074285712.png => zh-cn_image_0000001174270751.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001119945810.png => zh-cn_image_0000001174350615.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001152176139.png => zh-cn_image_0000001174350623.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001073388838.png => zh-cn_image_0000001174350633.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001163568181.png => zh-cn_image_0000001174350641.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001073242197.png => zh-cn_image_0000001174350643.png} (100%) mode change 100755 => 100644 rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001160529359.png => zh-cn_image_0000001174350647.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001077956808.png => zh-cn_image_0000001174350649.png} (100%) mode change 100755 => 100644 create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174350651.png create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174350653.png create mode 100644 zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174350655.png rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001105536118.png => zh-cn_image_0000001174350659.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001152256235.png => zh-cn_image_0000001174350661.png} (100%) rename zh-cn/device-dev/quick-start/figures/{zh-cn_image_0000001074445364.png => zh-cn_image_0000001174350669.png} (100%) mode change 100755 => 100644 create mode 100644 "zh-cn/device-dev/quick-start/figures/\346\240\207\345\207\206\347\216\257\345\242\203\345\277\253\351\200\237\345\205\245\351\227\250\346\265\201\347\250\213.png" create mode 100644 "zh-cn/device-dev/quick-start/\345\205\245\351\227\250\344\273\213\347\273\215.md" delete mode 100644 "zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-1.md" delete mode 100644 "zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-3.md" delete mode 100755 "zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-0.md" delete mode 100644 "zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-10.md" delete mode 100755 "zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-2.md" delete mode 100755 "zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-5.md" rename "zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-11.md" => "zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-8.md" (86%) delete mode 100644 "zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244-11.md" delete mode 100644 "zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244-12.md" create mode 100644 "zh-cn/device-dev/quick-start/\346\220\255\345\273\272Ubuntu\347\216\257\345\242\203\345\217\212\347\274\226\350\257\221\357\274\210Docker\346\226\271\345\274\217\357\274\211.md" create mode 100644 "zh-cn/device-dev/quick-start/\346\220\255\345\273\272Ubuntu\347\216\257\345\242\203\345\217\212\347\274\226\350\257\221\357\274\210\345\256\211\350\243\205\345\214\205\346\226\271\345\274\217\357\274\211.md" delete mode 100644 "zh-cn/device-dev/quick-start/\346\246\202\350\277\260-6.md" delete mode 100644 "zh-cn/device-dev/quick-start/\346\246\202\350\277\260-7.md" delete mode 100644 "zh-cn/device-dev/quick-start/\346\246\202\350\277\260-8.md" delete mode 100644 "zh-cn/device-dev/quick-start/\347\216\257\345\242\203\346\220\255\345\273\272.md" delete mode 100755 "zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS-4.md" create mode 100644 "zh-cn/device-dev/quick-start/\351\225\234\345\203\217\347\203\247\345\275\225.md" create mode 100644 "zh-cn/device-dev/subsystems/HiSysEvent\345\267\245\345\205\267\344\275\277\347\224\250\346\214\207\345\257\274.md" create mode 100644 "zh-cn/device-dev/subsystems/HiSysEvent\346\237\245\350\257\242\346\214\207\345\257\274.md" create mode 100644 "zh-cn/device-dev/subsystems/HiSysEvent\350\256\242\351\230\205\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/subsystems/IPC\351\200\232\344\277\241\351\211\264\346\235\203\345\274\200\345\217\221\346\214\207\345\257\274.md" delete mode 100644 zh-cn/device-dev/subsystems/figures/RIL-Adapter.png delete mode 100755 "zh-cn/device-dev/subsystems/figures/\345\216\273\347\224\265.png" delete mode 100755 "zh-cn/device-dev/subsystems/figures/\345\256\211\345\205\250\345\255\220\347\263\273\347\273\237.png" delete mode 100644 "zh-cn/device-dev/subsystems/figures/\346\235\245\347\224\265.png" delete mode 100644 "zh-cn/device-dev/subsystems/hdc_std\345\270\270\350\247\201\351\227\256\351\242\230.md" delete mode 100755 "zh-cn/device-dev/subsystems/\345\217\257\344\277\241\350\256\276\345\244\207\347\276\244\347\273\204\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/subsystems/\345\256\211\345\205\250.md" delete mode 100755 "zh-cn/device-dev/subsystems/\345\272\224\347\224\250\346\235\203\351\231\220\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/subsystems/\345\272\224\347\224\250\351\252\214\347\255\276\345\274\200\345\217\221\346\214\207\345\257\274.md" delete mode 100755 "zh-cn/device-dev/subsystems/\345\274\200\345\217\221\345\256\236\344\276\213-6.md" rename "zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-3.md" => "zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-1.md" (100%) delete mode 100755 "zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-5.md" rename "zh-cn/device-dev/subsystems/\346\220\255\345\273\272\347\216\257\345\242\203-2.md" => "zh-cn/device-dev/subsystems/\346\220\255\345\273\272\347\216\257\345\242\203-0.md" (100%) mode change 100755 => 100644 delete mode 100644 "zh-cn/device-dev/subsystems/\346\240\207\345\207\206\347\263\273\347\273\237\347\274\226\350\257\221\346\236\204\345\273\272\346\214\207\345\257\274.md" delete mode 100644 "zh-cn/device-dev/subsystems/\346\246\202\350\277\260-7.md" delete mode 100755 "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\344\275\277\347\224\250\346\214\207\345\257\274.md" rename "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\344\275\277\347\224\250\346\214\207\345\257\274-1.md" => "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237-\346\240\207\345\207\206\347\263\273\347\273\237.md" (66%) mode change 100755 => 100644 rename "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\346\246\202\350\277\260.md" => "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237-\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237.md" (39%) mode change 100755 => 100644 delete mode 100755 "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\270\270\350\247\201\351\227\256\351\242\230.md" delete mode 100755 "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\346\246\202\350\277\260-0.md" delete mode 100755 "zh-cn/device-dev/subsystems/\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237\347\274\226\350\257\221\346\236\204\345\273\272\346\214\207\345\257\274.md" rename "zh-cn/device-dev/quick-start/\345\257\274\350\257\273.md" => "zh-cn/device-dev/\345\257\274\350\257\273.md" (83%) mode change 100755 => 100644 diff --git a/en/device-dev/driver/Readme-EN.md b/en/device-dev/driver/Readme-EN.md index 18678440ad0..74bbfd98ee9 100644 --- a/en/device-dev/driver/Readme-EN.md +++ b/en/device-dev/driver/Readme-EN.md @@ -8,66 +8,19 @@ - [Driver Configuration Management](driver-configuration-management.md) - [HDF Development Example](hdfdevelopment-example.md) -- [Driver Platform](driver-platform.md) +- [Platform Drivers](platform-drivers.md) - [GPIO](gpio.md) - - [GPIO Overview](gpiooverview.md) - - [GPIO Usage Guidelines](gpiousage-guidelines.md) - - [GPIO Usage Example](gpiousage-example.md) - - [I2C](i2c.md) - - [I2C Overview](i2c-overview.md) - - [I2C Usage Guidelines](i2c-usage-guidelines.md) - - [I2C Usage Example](i2c-usage-example.md) - - [RTC](rtc.md) - - [RTC Overview](rtc-overview.md) - - [RTC Usage Guidelines](rtc-usage-guidelines.md) - - [RTC Usage Example](rtc-usage-example.md) - - [SDIO](sdio.md) - - [SDIO Overview](sdiooverview.md) - - [SDIO Usage Guidelines](sdiousage-guidelines.md) - - [SDIO Usage Example](sdiousage-example.md) - - [SPI](spi.md) - - [SPI Overview](spioverview.md) - - [SPI Usage Guidelines](spiusage-guidelines.md) - - [SPI Usage Example](spiusage-example.md) - - [UART](uart.md) - - [UART Overview](uartoverview.md) - - [UART Usage Guidelines](uartusage-guidelines.md) - - [UART Usage Example](uartusage-example.md) - - - [WATCHDOG](watchdog.md) - - [Watchdog Overview](watchdogoverview.md) - - [Watchdog Usage Guidelines](watchdogusage-guidelines.md) - - [Watchdog Usage Example](watchdogusage-example.md) - + - [Watchdog](watchdog.md) - [MIPI DSI](mipi-dsi.md) - - [MIPI DSI Overview](mipi-dsi-overview.md) - - [Usage Guidelines](usage-guidelines.md) - - [Usage Example](usage-example.md) - [Peripherals](peripherals.md) - [LCD](lcd.md) - - [LCD Overview](lcdoverview.md) - - [LCD Development Guidelines](lcddevelopment-guidelines.md) - - [LCD Development Example](lcddevelopment-example.md) - - [TOUCHSCREEN](touchscreen.md) - - [Touchscreen Overview](touchscreenoverview.md) - - [Touchscreen Development Guidelines](touchscreendevelopment-guidelines.md) - - [Touchscreen Development Example](touchscreendevelopment-example.md) - - - [SENSOR](sensor.md) - - [Sensor Driver Overview](sensor-driver-overview.md) - - [Sensor Driver Development Guidelines](sensor-driver-development-guidelines.md) - - [Sensor Driver Development Example](sensor-driver-development-example.md) - - [Sensor Driver Test Guidelines](sensor-driver-test-guidelines.md) - + - [Sensor](sensor.md) - [WLAN](wlan.md) - - [WLAN Overview](wlanoverview.md) - - [WLAN Development Guidelines](wlandevelopment-guidelines.md) - - [WLAN Development Example](wlandevelopment-example.md) diff --git a/en/device-dev/driver/driver-development.md b/en/device-dev/driver/driver-development.md index f9c14ec11f0..20f2b610b30 100644 --- a/en/device-dev/driver/driver-development.md +++ b/en/device-dev/driver/driver-development.md @@ -5,9 +5,9 @@ ## Introduction -The HDF is designed based on the component-based driver model. It provides more refined driver management to make driver development and deployment more standard. Device drivers of the same type are placed in the same host. You can develop and deploy the drivers separately. One driver can have multiple nodes. The following figure shows the HDF driver management model. +The HDF is designed based on the component-based driver model. It provides more refined driver management to make driver development and deployment more standard. Device drivers of the same type are placed in the same host. You can develop and deploy the drivers separately. One driver can have multiple nodes. [Figure 1](#fig5487113011526) shows the HDF driver model. -**Figure 1** HDF driver management model +**Figure 1** HDF driver model ![](figures/en-us_image_0000001054564784.png) @@ -24,9 +24,9 @@ Driver development based on the HDF consists of two parts: driver implementation ``` #include "hdf_device_desc.h" // Header file that describes the APIs provided by the HDF to the driver. - #include "hdf_log.h" // Header file of the log interface provided by the HDF. + #include "hdf_log.h" // Header file that describes the log APIs provided by the HDF. - #define HDF_LOG_TAG "sample_driver" // Tag contained in logs. If the tag is not specified, HDF_TAG is used by default. + #define HDF_LOG_TAG "sample_driver" // Tag contained in logs. If no tag is not specified, the default HDF_TAG is used. // The driver service interface must be bound to the HDF for you to use the service capability. int32_t HdfSampleDriverBind(struct HdfDeviceObject *deviceObject) @@ -123,7 +123,7 @@ Driver development based on the HDF consists of two parts: driver implementation device0 :: deviceNode { // DeviceNode of the sample driver policy = 1; // Driver service release policy. For details, see section Driver Service Management. priority = 100; // Driver startup priority (0-200). A larger value indicates a lower priority. The default value 100 is recommended. If the priorities are the same, the device loading sequence is random. - preload = 0; // On-demand driver loading. For details, see "NOTE" at the end of this section. + preload = 0; // On-demand loading of the driver. For details, see "NOTE" at the end of this section. permission = 0664; // Permission for the driver to create device nodes. moduleName = "sample_driver"; // Driver name. The value of this field must be the same as the value of moduleName in the driver entry structure. serviceName = "sample_service"; // Name of the service released by the driver. The name must be unique. diff --git a/en/device-dev/driver/figures/en-us_image_0000001057902344.png b/en/device-dev/driver/figures/en-us_image_0000001123509750.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001057902344.png rename to en/device-dev/driver/figures/en-us_image_0000001123509750.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001072553354.png b/en/device-dev/driver/figures/en-us_image_0000001123514210.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001072553354.png rename to en/device-dev/driver/figures/en-us_image_0000001123514210.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001054440624.png b/en/device-dev/driver/figures/en-us_image_0000001123540984.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001054440624.png rename to en/device-dev/driver/figures/en-us_image_0000001123540984.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001054007499.png b/en/device-dev/driver/figures/en-us_image_0000001123582482.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001054007499.png rename to en/device-dev/driver/figures/en-us_image_0000001123582482.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001054728498.png b/en/device-dev/driver/figures/en-us_image_0000001123675706.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001054728498.png rename to en/device-dev/driver/figures/en-us_image_0000001123675706.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001054726248.png b/en/device-dev/driver/figures/en-us_image_0000001123703482.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001054726248.png rename to en/device-dev/driver/figures/en-us_image_0000001123703482.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001054142582.png b/en/device-dev/driver/figures/en-us_image_0000001123742254.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001054142582.png rename to en/device-dev/driver/figures/en-us_image_0000001123742254.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001057342245.png b/en/device-dev/driver/figures/en-us_image_0000001170187071.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001057342245.png rename to en/device-dev/driver/figures/en-us_image_0000001170187071.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001054006983.png b/en/device-dev/driver/figures/en-us_image_0000001170227689.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001054006983.png rename to en/device-dev/driver/figures/en-us_image_0000001170227689.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001057622716.png b/en/device-dev/driver/figures/en-us_image_0000001170229891.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001057622716.png rename to en/device-dev/driver/figures/en-us_image_0000001170229891.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001053926237.png b/en/device-dev/driver/figures/en-us_image_0000001170262141.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001053926237.png rename to en/device-dev/driver/figures/en-us_image_0000001170262141.png diff --git a/en/device-dev/driver/figures/en-us_image_0000001055299108.png b/en/device-dev/driver/figures/en-us_image_0000001170383063.png similarity index 100% rename from en/device-dev/driver/figures/en-us_image_0000001055299108.png rename to en/device-dev/driver/figures/en-us_image_0000001170383063.png diff --git a/en/device-dev/driver/gpio.md b/en/device-dev/driver/gpio.md index a35dc16408f..e8f0e7c2075 100644 --- a/en/device-dev/driver/gpio.md +++ b/en/device-dev/driver/gpio.md @@ -1,9 +1,560 @@ -# GPIO +# GPIO -- **[GPIO Overview](gpiooverview.md)** +- [Overview](#section1635911016188) + - [Available APIs](#section17715915181611) -- **[GPIO Usage Guidelines](gpiousage-guidelines.md)** +- [Usage Guidelines](#section259614242196) + - [How to Use](#section103477714216) + - [Determining a GPIO Pin Number](#section370083272117) + - [Using APIs to Operate GPIO Pins](#section13604050132118) -- **[GPIO Usage Example](gpiousage-example.md)** +- [Usage Example](#section25941262111) +## Overview + +Generally, a general-purpose input/output \(GPIO\) controller manages all GPIO pins by group. Each group of GPIO pins is associated with one or more registers. The GPIO pins are operated by reading data from and writing data to the registers. + +The GPIO APIs define a set of standard functions for performing operations on GPIO pins, including: + +- Setting the pin direction, which can be input or output \(High impedance is not supported currently.\) + +- Reading and writing level values, which can be low or high +- Setting an interrupt service routine \(ISR\) function and interrupt trigger mode for a pin +- Enabling or disabling a pin interrupt + +### Available APIs + +**Table 1** APIs available for the GPIO driver + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Capability

+

Function

+

Description

+

GPIO read/write

+

GpioRead

+

Reads the level value of a GPIO pin.

+

GpioWrite

+

Writes the level value of a GPIO pin.

+

GPIO settings

+

GpioSetDir

+

Sets the direction for a GPIO pin.

+

GpioGetDir

+

Obtains the direction for a GPIO pin.

+

GPIO interrupt settings

+

GpioSetIrq

+

Sets the ISR function for a GPIO pin.

+

GpioUnSetIrq

+

Cancels the setting of the ISR function for a GPIO pin.

+

GpioEnableIrq

+

Enables a GPIO interrupt.

+

GpioDisableIrq

+

Disables a GPIO interrupt.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>All functions provided in this document can be called only in kernel mode. + +## Usage Guidelines + +### How to Use + +The GPIO APIs use the GPIO pin number to specify a pin. [Figure 1](#fig1399416053717) shows the general process of using a GPIO. + +**Figure 1** Process of using a GPIO + + +![](figures/en-us_image_0000001170187071.png) + +### Determining a GPIO Pin Number + +The method for converting GPIO pin numbers varies according to the GPIO controller model, parameters, and controller driver of different system on chips \(SoCs\). + +- Hi3516DV300 + + A controller manages 12 groups of GPIO pins. Each group contains 8 GPIO pins. + + GPIO pin number = GPIO group index \(0-11\) x Number of GPIO pins in each group \(8\) + Offset in the group + + Example: GPIO number of GPIO10\_3 = 10 x 8 + 3 = 83 + +- Hi3518EV300 + + A controller manages 10 groups of GPIO pins. Each group contains 10 GPIO pins. + + GPIO pin number = GPIO group index \(0–9\) x Number of GPIO pins in each group \(10\) + Offset in the group + + Example: GPIO pin number of GPIO7\_3 = 7 x 10 + 3 = 73 + + +### Using APIs to Operate GPIO Pins + +- Set the direction for a GPIO pin. + + Before performing read/write operations on a GPIO pin, call the following function to set the direction: + + int32\_t GpioSetDir\(uint16\_t gpio, uint16\_t dir\); + + **Table 2** Description of GpioSetDir + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

gpio

+

GPIO pin number.

+

dir

+

Direction to set.

+

Return Value

+

Description

+

0

+

Succeeded in setting the direction for a GPIO pin.

+

Negative value

+

Failed to set the direction for a GPIO pin.

+
+ + +- Read or write the level value for a GPIO pin. + + To read the level value of a GPIO pin, call the following function: + + int32\_t GpioRead\(uint16\_t gpio, uint16\_t \*val\); + + **Table 3** Description of GpioRead + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

gpio

+

GPIO pin number.

+

val

+

Pointer to the level value.

+

Return Value

+

Description

+

0

+

Succeeded in reading the level value.

+

Negative value

+

Failed to read the level value.

+
+ + To write the level value for a GPIO pin, call the following function: + + int32\_t GpioWrite\(uint16\_t gpio, uint16\_t val\); + + **Table 4** Description of GpioWrite + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

gpio

+

GPIO pin number.

+

val

+

Level value to write.

+

Return Value

+

Description

+

0

+

Succeeded in writing the level value.

+

Negative value

+

Failed to write the level value.

+
+ + Example: + + ``` + int32_t ret; + uint16_t val; + /* Set the output direction for GPIO3. */ + ret = GpioSetDir(3, GPIO_DIR_OUT); + if (ret != 0) { + HDF_LOGE("GpioSerDir: failed, ret %d\n", ret); + return; + } + /* Write the low level GPIO_VAL_LOW for GPIO3. */ + ret = GpioWrite(3, GPIO_VAL_LOW); + if (ret != 0) { + HDF_LOGE("GpioWrite: failed, ret %d\n", ret); + return; + } + /* Set the input direction for GPIO6. */ + ret = GpioSetDir(6, GPIO_DIR_IN); + if (ret != 0) { + HDF_LOGE("GpioSetDir: failed, ret %d\n", ret); + return; + } + /* Read the level value of GPIO6. */ + ret = GpioRead(6, &val); + ``` + + +- Set the ISR function for a GPIO pin. + + To set the ISR function for a GPIO pin, call the following function: + + int32\_t GpioSetIrq\(uint16\_t gpio, uint16\_t mode, GpioIrqFunc func, void \*arg\); + + **Table 5** Description of GpioSetIrq + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

gpio

+

GPIO pin number.

+

mode

+

Interrupt trigger mode.

+

func

+

ISR function to set.

+

arg

+

Pointer to the parameters passed to the ISR function.

+

Return Value

+

Description

+

0

+

Succeeded in setting the ISR function for a GPIO pin.

+

Negative value

+

Failed to set the ISR function for a GPIO pin.

+
+ + >![](public_sys-resources/icon-caution.gif) **CAUTION:** + >Only one ISR function can be set for a GPIO pin at a time. If **GpioSetIrq** is called repeatedly, the previous IRS function will be replaced. + + If the ISR function is no longer required, call the following function to cancel the setting: + + int32\_t GpioUnSetIrq\(uint16\_t gpio\); + + **Table 6** Description of GpioUnSetIrq + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

gpio

+

GPIO pin number.

+

Return Value

+

Description

+

0

+

Succeeded in canceling the ISR function.

+

Negative value

+

Failed to cancel the ISR function.

+
+ + After the ISR function is set, call the following function to enable a GPIO interrupt: + + int32\_t GpioEnableIrq\(uint16\_t gpio\); + + **Table 7** Description of GpioEnableIrq + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

gpio

+

GPIO pin number.

+

Return Value

+

Description

+

0

+

Succeeded in enabling a GPIO interrupt.

+

Negative value

+

Failed to enable a GPIO interrupt.

+
+ + >![](public_sys-resources/icon-caution.gif) **CAUTION:** + >The configured ISR function can be responded only after the GPIO interrupt is enabled. + + Use the following function to disable the GPIO interrupt: + + int32\_t GpioDisableIrq\(uint16\_t gpio\); + + **Table 8** Description of GpioDisableIrq + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

gpio

+

GPIO pin number.

+

Return Value

+

Description

+

0

+

Succeeded in disabling a GPIO interrupt.

+

Negative value

+

Failed to disable a GPIO interrupt.

+
+ + Example: + + ``` + /* ISR function */ + */ + int32_t MyCallBackFunc(uint16_t gpio, void *data) + { + HDF_LOGI("%s: gpio:%u interrupt service in! data=%p\n", __func__, gpio, data); + return 0; + } + + int32_t ret; + /* Set the ISR function to MyCallBackFunc, the parameter to NULL, and the interrupt trigger mode to rising edge. */ + ret = GpioSetIrq(3, OSAL_IRQF_TRIGGER_RISING, MyCallBackFunc, NULL); + if (ret != 0) { + HDF_LOGE("GpioSetIrq: failed, ret %d\n", ret); + return; + } + + /* Enable an interrupt for GPIO3. */ + ret = GpioEnableIrq(3); + if (ret != 0) { + HDF_LOGE("GpioEnableIrq: failed, ret %d\n", ret); + return; + } + + /* Disable the interrupt for GPIO3. */ + ret = GpioDisableIrq(3); + if (ret != 0) { + HDF_LOGE("GpioDisableIrq: failed, ret %d\n", ret); + return; + } + + /* Cancel the ISR function for GPIO3. */ + ret = GpioUnSetIrq(3); + if (ret != 0) { + HDF_LOGE("GpioUnSetIrq: failed, ret %d\n", ret); + return; + } + ``` + + +## Usage Example + +In this example, we test the interrupt trigger of a GPIO pin as follows: Set the ISR function for the pin, set the trigger mode to rising edge and failing edge, write high and low levels to the pin alternately to generate level fluctuation, and observe the execution of the ISR function. + +Select an idle GPIO pin. This example uses a Hi3516D V300 development board and GPIO pin GPIO10\_3, which is numbered GPIO83. + +You can select an idle GPIO pin based on the development board and schematic diagram. + +``` +#include "gpio_if.h" +#include "hdf_log.h" +#include "osal_irq.h" +#include "osal_time.h" + +static uint32_t g_irqCnt; + +/* ISR function */ +static int32_t TestCaseGpioIrqHandler(uint16_t gpio, void *data) +{ + HDF_LOGE("%s: irq triggered! on gpio:%u, data=%p", __func__, gpio, data); + g_irqCnt++; /* If the ISR function is triggered, the number of global interrupts is incremented by 1. */ + return GpioDisableIrq(gpio); +} + +/* Test case function */ +static int32_t TestCaseGpioIrqEdge(void) +{ + int32_t ret; + uint16_t valRead; + uint16_t mode; + uint16_t gpio = 83; /* Number of the GPIO pin to test */ + uint32_t timeout; + + /* Set the output direction for the pin. */ + ret = GpioSetDir(gpio, GPIO_DIR_OUT); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set dir fail! ret:%d\n", __func__, ret); + return ret; + } + + /* Disable the interrupt of the pin. */ + ret = GpioDisableIrq(gpio); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: disable irq fail! ret:%d\n", __func__, ret); + return ret; + } + + /* Set the ISR function for the pin. The trigger mode is both rising edge and falling edge. */ + mode = OSAL_IRQF_TRIGGER_RISING | OSAL_IRQF_TRIGGER_FALLING; + HDF_LOGE("%s: mode:%0x\n", __func__, mode); + ret = GpioSetIrq(gpio, mode, TestCaseGpioIrqHandler, NULL); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set irq fail! ret:%d\n", __func__, ret); + return ret; + } + + /* Enable the interrupt for this pin. */ + ret = GpioEnableIrq(gpio); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: enable irq fail! ret:%d\n", __func__, ret); + (void)GpioUnSetIrq(gpio); + return ret; + } + + g_irqCnt = 0; /* Reset the global counter. */ + timeout = 0; /* Reset the waiting time. */ + /* Wait for the ISR function of this pin to trigger. The timeout duration is 1000 ms. */ + while (g_irqCnt <= 0 && timeout < 1000) { + (void)GpioRead(gpio, &valRead); + (void)GpioWrite(gpio, (valRead == GPIO_VAL_LOW) ? GPIO_VAL_HIGH : GPIO_VAL_LOW); + HDF_LOGE("%s: wait irq timeout:%u\n", __func__, timeout); + OsalMDelay(200); /* wait for irq trigger */ + timeout += 200; + } + (void)GpioUnSetIrq(gpio); + return (g_irqCnt > 0) ? HDF_SUCCESS : HDF_FAILURE; +} +``` diff --git a/en/device-dev/driver/gpiooverview.md b/en/device-dev/driver/gpiooverview.md deleted file mode 100644 index a05df150d2b..00000000000 --- a/en/device-dev/driver/gpiooverview.md +++ /dev/null @@ -1,85 +0,0 @@ -# GPIO Overview - -- [Introduction](#section15318165672215) -- [Available APIs](#section18977142162418) - -## Introduction - -GPIO is short for general-purpose input/output. Generally, a GPIO controller manages all GPIO pins by group. Each group of GPIO pins is associated with one or more registers. The GPIO pins are operated by reading data from and writing data to the registers. - -The GPIO APIs define a set of standard functions for performing operations on GPIO pins, including: - -- Setting the pin direction, which can be input or output \(High impedance is not supported currently.\) - -- Reading and writing level values, which can be low or high -- Setting an interrupt service routine \(ISR\) function and interrupt trigger mode for a pin -- Enabling or disabling a pin interrupt - -## Available APIs - -**Table 1** APIs available for the GPIO driver - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Capability

-

Function

-

Description

-

GPIO read/write

-

GpioRead

-

Reads the level value of a GPIO pin.

-

GpioWrite

-

Writes the level value of a GPIO pin.

-

GPIO settings

-

GpioSetDir

-

Sets the direction for a GPIO pin.

-

GpioGetDir

-

Obtains the direction for a GPIO pin.

-

GPIO interrupt settings

-

-

-

-

GpioSetIrq

-

Sets the ISR function for a GPIO pin.

-

GpioUnSetIrq

-

Cancels the setting of the ISR function for a GPIO pin.

-

GpioEnableIrq

-

Enables a GPIO interrupt.

-

GpioDisableIrq

-

Disables a GPIO interrupt.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->All functions provided in this document can be called only in kernel mode. - diff --git a/en/device-dev/driver/gpiousage-example.md b/en/device-dev/driver/gpiousage-example.md deleted file mode 100644 index bfdb21eed1d..00000000000 --- a/en/device-dev/driver/gpiousage-example.md +++ /dev/null @@ -1,79 +0,0 @@ -# GPIO Usage Example - -In this example, we test the interrupt trigger of a GPIO pin as follows: Set the ISR function for the pin, set the trigger mode to rising edge and failing edge, write high and low levels to the pin alternately to generate level fluctuation, and observe the execution of the ISR function. - -Select an idle GPIO pin. This example uses a Hi3516D V300 development board and GPIO pin GPIO10\_3, which is numbered GPIO83. - -You can select an idle GPIO pin based on the development board and schematic diagram. - -``` -#include "gpio_if.h" -#include "hdf_log.h" -#include "osal_irq.h" -#include "osal_time.h" - -static uint32_t g_irqCnt; - -/* ISR function */ -static int32_t TestCaseGpioIrqHandler(uint16_t gpio, void *data) -{ - HDF_LOGE("%s: irq triggered! on gpio:%u, data=%p", __func__, gpio, data); - g_irqCnt++; /* If the ISR function is triggered, the number of global interrupts is incremented by 1. */ - return GpioDisableIrq(gpio); -} - -/* Test case function */ -static int32_t TestCaseGpioIrqEdge(void) -{ - int32_t ret; - uint16_t valRead; - uint16_t mode; - uint16_t gpio = 83; /* Number of the GPIO pin to test */ - uint32_t timeout; - - /* Set the output direction for the pin. */ - ret = GpioSetDir(gpio, GPIO_DIR_OUT); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set dir fail! ret:%d\n", __func__, ret); - return ret; - } - - /* Disable the interrupt of the pin. */ - ret = GpioDisableIrq(gpio); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: disable irq fail! ret:%d\n", __func__, ret); - return ret; - } - - /* Set the ISR function for the pin. The trigger mode is both rising edge and falling edge. */ - mode = OSAL_IRQF_TRIGGER_RISING | OSAL_IRQF_TRIGGER_FALLING; - HDF_LOGE("%s: mode:%0x\n", __func__, mode); - ret = GpioSetIrq(gpio, mode, TestCaseGpioIrqHandler, NULL); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set irq fail! ret:%d\n", __func__, ret); - return ret; - } - - /* Enable the interrupt for this pin. */ - ret = GpioEnableIrq(gpio); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: enable irq fail! ret:%d\n", __func__, ret); - (void)GpioUnSetIrq(gpio); - return ret; - } - - g_irqCnt = 0; /* Reset the global counter. */ - timeout = 0; /* Reset the waiting time. */ - /* Wait for the ISR function of this pin to trigger. The timeout duration is 1000 ms. */ - while (g_irqCnt <= 0 && timeout < 1000) { - (void)GpioRead(gpio, &valRead); - (void)GpioWrite(gpio, (valRead == GPIO_VAL_LOW) ? GPIO_VAL_HIGH : GPIO_VAL_LOW); - HDF_LOGE("%s: wait irq timeout:%u\n", __func__, timeout); - OsalMDelay(200); /* wait for irq trigger */ - timeout += 200; - } - (void)GpioUnSetIrq(gpio); - return (g_irqCnt > 0) ? HDF_SUCCESS : HDF_FAILURE; -} -``` - diff --git a/en/device-dev/driver/gpiousage-guidelines.md b/en/device-dev/driver/gpiousage-guidelines.md deleted file mode 100644 index 67c29e26454..00000000000 --- a/en/device-dev/driver/gpiousage-guidelines.md +++ /dev/null @@ -1,395 +0,0 @@ -# GPIO Usage Guidelines - -- [How to Use](#section1583613406410) -- [Determining a GPIO Pin Number](#section135943361443) -- [Using APIs to Operate GPIO Pins](#section69151114115315) - -## How to Use - -The GPIO APIs use the GPIO pin number to specify a pin. [Figure 1](#fig1399416053717) shows the general process of using a GPIO. - -**Figure 1** Process of using a GPIO - - -![](figures/en-us_image_0000001057342245.png) - -## Determining a GPIO Pin Number - -The method for converting GPIO pin numbers varies according to the GPIO controller model, parameters, and controller driver of different system on chips \(SoCs\). - -- Hi3516D V300 - - A controller manages 12 groups of GPIO pins. Each group contains 8 GPIO pins. - - GPIO pin number = GPIO group index \(0-11\) x Number of GPIO pins in each group \(8\) + Offset in the group - - Example: GPIO number of GPIO10\_3 = 10 x 8 + 3 = 83 - -- Hi3518E V300 - - A controller manages 10 groups of GPIO pins. Each group contains 10 GPIO pins. - - GPIO pin number = GPIO group index \(0–9\) x Number of GPIO pins in each group \(10\) + Offset in the group - - Example: GPIO pin number of GPIO7\_3 = 7 x 10 + 3 = 73 - - -## Using APIs to Operate GPIO Pins - -- Set the direction for a GPIO pin. - - Before performing read/write operations on a GPIO pin, call the following function to set the direction: - - int32\_t GpioSetDir\(uint16\_t gpio, uint16\_t dir\); - - **Table 1** Description of GpioSetDir - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

gpio

-

GPIO pin number.

-

dir

-

Direction to set.

-

Return Value

-

Description

-

0

-

The setting is successful.

-

Negative value

-

The setting failed.

-
- -- Read or write the level value for a GPIO pin. - - To read the level value of a GPIO pin, call the following function: - - int32\_t GpioRead\(uint16\_t gpio, uint16\_t \*val\); - - **Table 2** Description of GpioRead - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

gpio

-

GPIO pin number.

-

val

-

Pointer to the level value.

-

Return Value

-

Description

-

0

-

Succeeded in reading the level value.

-

Negative value

-

Failed to read the level value.

-
- - To write the level value for a GPIO pin, call the following function: - - int32\_t GpioWrite\(uint16\_t gpio, uint16\_t val\); - - **Table 3** Description of GpioWrite - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

gpio

-

GPIO pin number.

-

val

-

Level value to write.

-

Return Value

-

Description

-

0

-

Succeeded in writing the level value.

-

Negative value

-

Failed to write the level value.

-
- - Example: - - ``` - int32_t ret; - uint16_t val; - /* Set the output direction for GPIO3. */ - ret = GpioSetDir(3, GPIO_DIR_OUT); - if (ret != 0) { - HDF_LOGE("GpioSerDir: failed, ret %d\n", ret); - return; - } - /* Write the low level GPIO_VAL_LOW for GPIO3. */ - ret = GpioWrite(3, GPIO_VAL_LOW); - if (ret != 0) { - HDF_LOGE("GpioWrite: failed, ret %d\n", ret); - return; - } - /* Set the input direction for GPIO6. */ - ret = GpioSetDir(6, GPIO_DIR_IN); - if (ret != 0) { - HDF_LOGE("GpioSetDir: failed, ret %d\n", ret); - return; - } - /* Read the level value of GPIO6. */ - ret = GpioRead(6, &val); - ``` - - -- Set the ISR function for a GPIO pin. - - To set the ISR function for a GPIO pin, call the following function: - - int32\_t GpioSetIrq\(uint16\_t gpio, uint16\_t mode, GpioIrqFunc func, void \*arg\); - - **Table 4** Description of GpioSetIrq - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

gpio

-

GPIO pin number.

-

mode

-

Interrupt trigger mode.

-

func

-

ISR function to set.

-

arg

-

Pointer to the parameters passed to the ISR function.

-

Return Value

-

Description

-

0

-

The setting is successful.

-

Negative value

-

The setting failed.

-
- - >![](public_sys-resources/icon-caution.gif) **CAUTION:** - >Only one ISR function can be set for a GPIO pin at a time. If **GpioSetIrq** is called repeatedly, the previous IRS function will be replaced. - - If the ISR function is no longer required, call the following function to cancel the setting: - - int32\_t GpioUnSetIrq\(uint16\_t gpio\); - - **Table 5** Description of GpioUnSetIrq - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

gpio

-

GPIO pin number.

-

Return Value

-

Description

-

0

-

The ISR function is canceled.

-

Negative value

-

Failed to cancel the ISR function.

-
- - After the ISR function is set, call the following function to enable a GPIO interrupt: - - int32\_t GpioEnableIrq\(uint16\_t gpio\); - - **Table 6** Description of GpioEnableIrq - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

gpio

-

GPIO pin number.

-

Return Value

-

Description

-

0

-

The GPIO interrupt is enabled.

-

Negative value

-

Failed to enable a GPIO interrupt.

-
- - >![](public_sys-resources/icon-caution.gif) **CAUTION:** - >The configured ISR function can be responded only after the ISR function is enabled. - - Use the following function to disable the GPIO interrupt: - - int32\_t GpioDisableIrq\(uint16\_t gpio\); - - **Table 7** Description of GpioDisableIrq - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

gpio

-

GPIO pin number.

-

Return Value

-

Description

-

0

-

The GPIO interrupt is disabled.

-

Negative value

-

Failed to disable the GPIO interrupt.

-
- - Example: - - ``` - /* ISR function */ - */ - int32_t MyCallBackFunc(uint16_t gpio, void *data) - { - HDF_LOGI("%s: gpio:%u interrupt service in! data=%p\n", __func__, gpio, data); - return 0; - } - - int32_t ret; - /* Set the ISR function to MyCallBackFunc, the parameter to NULL, and the interrupt trigger mode to rising edge. */ - ret = GpioSetIrq(3, OSAL_IRQF_TRIGGER_RISING, MyCallBackFunc, NULL); - if (ret != 0) { - HDF_LOGE("GpioSetIrq: failed, ret %d\n", ret); - return; - } - - /* Enable an interrupt for GPIO3. */ - ret = GpioEnableIrq(3); - if (ret != 0) { - HDF_LOGE("GpioEnableIrq: failed, ret %d\n", ret); - return; - } - - /* Disable the interrupt for GPIO3. */ - ret = GpioDisableIrq(3); - if (ret != 0) { - HDF_LOGE("GpioDisableIrq: failed, ret %d\n", ret); - return; - } - - /* Cancel the ISR function for GPIO3. */ - ret = GpioUnSetIrq(3); - if (ret != 0) { - HDF_LOGE("GpioUnSetIrq: failed, ret %d\n", ret); - return; - } - ``` - - diff --git a/en/device-dev/driver/i2c-overview.md b/en/device-dev/driver/i2c-overview.md deleted file mode 100644 index 407a149be21..00000000000 --- a/en/device-dev/driver/i2c-overview.md +++ /dev/null @@ -1,60 +0,0 @@ -# I2C Overview - -- [Introduction](#section5361140416) -- [Available APIs](#section7606310210) - -## Introduction - -- The Inter-Integrated Circuit \(I2C\) is a simple, bidirectional, and synchronous serial bus that uses merely two wires. -- In an I2C communication, one controller communicates with one or more devices through the serial data line \(SDA\) and serial clock line \(SCL\), as shown in [Figure 1](#fig1135561232714). - -- I2C data transfer must begin with a **START** condition and end with a **STOP** condition. Data is transmitted byte-by-byte from the most significant bit to the least significant bit. -- Each I2C node is recognized by a unique address and can serve as either a controller or a device. When the controller needs to communicate with a device, it writes the device address to the bus through broadcast. A device matching this address sends a response to set up a data transfer channel. - -- The I2C APIs define a set of common functions for I2C data transfer, including: - - - I2C controller management: opening or closing an I2C controller - - I2C message transfer: custom transfer by using a message array - - **Figure 1** Physical connection diagram for I2C - ![](figures/physical-connection-diagram-for-i2c.png "physical-connection-diagram-for-i2c") - - -## Available APIs - -**Table 1** APIs available for the I2C driver - - - - - - - - - - - - - - - - - - - -

Capability

-

Function

-

Description

-

I2C controller management

-

I2cOpen

-

Opens an I2C controller.

-

I2cClose

-

Closes an I2C controller.

-

I2C message transfer

-

I2cTransfer

-

Performs a custom transfer.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->All functions provided in this document can be called only in kernel mode. - diff --git a/en/device-dev/driver/i2c-usage-example.md b/en/device-dev/driver/i2c-usage-example.md deleted file mode 100644 index 438961611a6..00000000000 --- a/en/device-dev/driver/i2c-usage-example.md +++ /dev/null @@ -1,192 +0,0 @@ -# I2C Usage Example - -This example describes how to use I2C APIs by using an I2C device on a development board. - -This example shows a simple register read/write operation on TouchPad on a Hi3516D V300 development board. The basic hardware information is as follows: - -- SoC: hi3516dv300 - -- Touch IC: The I2C address is 0x38, and the bit width of Touch IC's internal register is 1 byte. - -- Schematic diagram: TouchPad is mounted to I2C controller 3. The reset pin of Touch IC is GPIO3. - -In this example, first we reset Touch IC. \(The development board supplies power to Touch IC by default after being powered on, and this use case does not consider the power supply\). Then, we perform a read/wirte operation on an internal register to test whether the I2C channel is normal. - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->The example focuses on I2C device access and verifies the I2C channel. The read and write values of the device register are not concerned. The behavior caused by the read and write operations on the register is determined by the device itself. - -Example: - -``` -#include "i2c_if.h" /* Header file of I2C APIs */ -#include "gpio_if.h" /* Header file of GPIO APIs */ -#include "hdf_log.h" /* Header file for log APIs */ -#include "osal_io.h" /* Header file of I/O read and write APIs */ -#include "osal_time.h" /* Header file of delay and sleep APIs */ - -/* Define a TP device structure to store I2C and GPIO hardware information. */ -struct TpI2cDevice { - uint16_t rstGpio; /* Reset pin */ - uint16_t busId; /* I2C bus ID */ - uint16_t addr; /* I2C device address */ - uint16_t regLen; /* Register bit width */ - DevHandle i2cHandle; /* I2C controller handle */ -}; - -/* I2C pin I/O configuration. For details, see the SoC register manual. */ -#define I2C3_DATA_REG_ADDR 0x112f008c /* Address of the SDA pin configuration register of I2C controller 3 -#define I2C3_CLK_REG_ADDR 0x112f0090 /* Address of the SCL pin configuration register of I2C controller 3 -#define I2C_REG_CFG 0x5f1 /* Configuration values of SDA and SCL pins of I2C controller 3 - -static void TpSocIoCfg(void) -{ - /* Set the I/O function of the two pins corresponding to I2C controller 3 to I2C. */ - OSAL_WRITEL(I2C_REG_CFG, IO_DEVICE_ADDR(I2C3_DATA_REG_ADDR)); - OSAL_WRITEL(I2C_REG_CFG, IO_DEVICE_ADDR(I2C3_CLK_REG_ADDR)); -} - -/* Initialize the reset pin of the TP. Pull up the pin for 20 ms, pull down the pin for 50 ms, and then pull up the pin for 20 ms to complete the resetting. */ -static int32_t TestCaseGpioInit(struct TpI2cDevice *tpDevice) -{ - int32_t ret; - - /* Set the output direction for the reset pin. */ - ret = GpioSetDir(tpDevice->rstGpio, GPIO_DIR_OUT); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set rst dir fail!:%d", __func__, ret); - return ret; - } - - ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_HIGH); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set rst hight fail!:%d", __func__, ret); - return ret; - } - OsalMSleep(20); - - ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_LOW); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set rst low fail!:%d", __func__, ret); - return ret; - } - OsalMSleep(50); - - ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_HIGH); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set rst high fail!:%d", __func__, ret); - return ret; - } - OsalMSleep(20); - - return HDF_SUCCESS; -} - -/* Use I2cTransfer to encapsulate a register read/write auxiliary function. Use flag to indicate the read or write operation. */ -static int TpI2cReadWrite(struct TpI2cDevice *tpDevice, unsigned int regAddr, - unsigned char *regData, unsigned int dataLen, uint8_t flag) -{ - int index = 0; - unsigned char regBuf[4] = {0}; - struct I2cMsg msgs[2] = {0}; - - /* Perform length adaptation for the single- or dual-byte register. */ - if (tpDevice->regLen == 1) { - regBuf[index++] = regAddr & 0xFF; - } else { - regBuf[index++] = (regAddr >> 8) & 0xFF; - regBuf[index++] = regAddr & 0xFF; - } - - /* Fill in the I2cMsg message structure. */ - msgs[0].addr = tpDevice->addr; - msgs[0].flags = 0; /* The flag is 0, indicating the write operation. */ - msgs[0].len = tpDevice->regLen; - msgs[0].buf = regBuf; - - msgs[1].addr = tpDevice->addr; - msgs[1].flags = (flag == 1)? I2C_FLAG_READ: 0; /* Add the read flag. */ - msgs[1].len = dataLen; - msgs[1].buf = regData; - - if (I2cTransfer(tpDevice->i2cHandle, msgs, 2) != 2) { - HDF_LOGE("%s: i2c read err", __func__); - return HDF_FAILURE; - } - return HDF_SUCCESS; -} - -/* TP register read function */ -static inline int TpI2cReadReg(struct TpI2cDevice *tpDevice, unsigned int regAddr, - unsigned char *regData, unsigned int dataLen) -{ - return TpI2cReadWrite(tpDevice, regAddr, regData, dataLen, 1); -} - -/* TP register write function */ -static inline int TpI2cWriteReg(struct TpI2cDevice *tpDevice, unsigned int regAddr, - unsigned char *regData, unsigned int dataLen) -{ - return TpI2cReadWrite(tpDevice, regAddr, regData, dataLen, 0); -} - -/* Main entry of I2C */ -static int32_t TestCaseI2c(void) -{ - int32_t i; - int32_t ret; - unsigned char bufWrite[7] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xA, 0xB, 0xC }; - unsigned char bufRead[7] = {0}; - static struct TpI2cDevice tpDevice; - - /* I/O pin function configuration */ - TpSocIoCfg(); - - /* Initialize TP device information. */ - tpDevice.rstGpio = 3; - tpDevice.busId = 3; - tpDevice.addr = 0x38; - tpDevice.regLen = 1; - tpDevice.i2cHandle = NULL; - - /* Initialize the GPIO pin. */ - ret = TestCaseGpioInit(&tpDevice); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: gpio init fail!:%d", __func__, ret); - return ret; - } - - /* Open an I2C controller. */ - tpDevice.i2cHandle = I2cOpen(tpDevice.busId); - if (tpDevice.i2cHandle == NULL) { - HDF_LOGE("%s: Open I2c:%u fail!", __func__, tpDevice.busId); - return -1; - } - - /* Continuously write 7-byte data to register 0xD5 of TP-IC. */ - ret = TpI2cWriteReg(&tpDevice, 0xD5, bufWrite, 7); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: tp i2c write reg fail!:%d", __func__, ret); - I2cClose(tpDevice.i2cHandle); - return -1; - } - OsalMSleep(10); - - /* Continuously read 7-byte data from register 0xDO of TP-IC. */ - ret = TpI2cReadReg(&tpDevice, 0xD5, bufRead, 7); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: tp i2c read reg fail!:%d", __func__, ret); - I2cClose(tpDevice.i2cHandle); - return -1; - } - - HDF_LOGE("%s: tp i2c write&read reg success!", __func__); - for (i = 0; i < 7; i++) { - HDF_LOGE("%s: bufRead[%d] = 0x%x", __func__, i, bufRead[i]); - } - - /* Close the I2C controller. */ - I2cClose(tpDevice.i2cHandle); - return ret; -} -``` - diff --git a/en/device-dev/driver/i2c-usage-guidelines.md b/en/device-dev/driver/i2c-usage-guidelines.md deleted file mode 100644 index 9a207bcc387..00000000000 --- a/en/device-dev/driver/i2c-usage-guidelines.md +++ /dev/null @@ -1,171 +0,0 @@ -# I2C Usage Guidelines - -- [How to Use](#section333203315215) -- [Opening an I2C Controller](#section123631358135713) -- [Performing I2C Communication](#section11091522125812) -- [Closing an I2C Controller](#section13519505589) - -## How to Use - -[Figure 1](#fig166181128151112) illustrates the process of an I2C device. - -**Figure 1** Process of using an I2C device - - -![](figures/en-us_image_0000001057902344.png) - -## Opening an I2C Controller - -Call the following function to open an I2C controller: - -DevHandle I2cOpen\(int16\_t number\); - -**Table 1** Description of I2cOpen - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

number

-

I2C controller ID.

-

Return Value

-

Description

-

NULL

-

Failed to open the I2C controller.

-

Device handle

-

Handle of the I2C controller.

-
- -This example assumes that the system has eight I2C controllers \(numbered from 0 to 7\) and I2C controller 3 is to open. - -``` -DevHandle i2cHandle = NULL; /* I2C controller handle */ - -/* Open an I2C controller. */ -i2cHandle = I2cOpen(3); -if (i2cHandle == NULL) { - HDF_LOGE("I2cOpen: failed\n"); - return; -} -``` - -## Performing I2C Communication - -Use the following function for message transfer: - -int32\_t I2cTransfer\(DevHandle handle, struct I2cMsg \*msgs, int16\_t count\); - -**Table 2** Description of I2cTransfer - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Handle of an I2C controller.

-

msgs

-

Message array of the data to transfer.

-

count

-

Length of the message array.

-

Return Value

-

Description

-

Positive integer

-

Number of message structures that are successfully transmitted.

-

Negative value

-

Failed to perform the message transfer.

-
- -The type of an I2C message transfer is defined by **I2cMsg**. Each message structure indicates a read or write operation. Multiple read or write operations can be performed by using a message array. - -``` -int32_t ret; -uint8_t wbuff[2] = { 0x12, 0x13 }; -uint8_t rbuff[2] = { 0 }; -struct I2cMsg msgs[2]; /* Custom message array for transfer */ -msgs[0].buf = wbuff; /* Data to write */ -msgs[0].len = 2; /* The length of the data to write is 2. */ -msgs[0].addr = 0x5A; /* The address of the device to write the data is 0x5A. */ -msgs[0].flags = 0; /* The flag is 0, indicating the write operation. */ -msgs[1].buf = rbuff; /* Data to read */ -msgs[1].len = 2; /* The length of the data to read is 2. */ -msgs[1].addr = 0x5A; /* The address of the device to read the data is 0x5A. */ -msgs[1].flags = I2C_FLAG_READ /* I2C_FLAG_READ is configured, indicating the read operation. */ -/* Perform a custom transfer to transfer two messages. */ -ret = I2cTransfer(i2cHandle, msgs, 2); -if (ret != 2) { - HDF_LOGE("I2cTransfer: failed, ret %d\n", ret); - return; -} -``` - ->![](public_sys-resources/icon-caution.gif) **CAUTION:** ->- The device address in the **I2cMsg** structure does not contain the read/write flag bit. The read/write information is transferred by the read/write control bit in the member variable **flags**. ->- The **I2cTransfer** function does not limit the number of message structures, which is determined by the I2C controller. ->- The **I2cTransfer** function does not limit the data length of each message structure, which is determined by the I2C controller. ->- The **I2cTransfer** function may cause the system to sleep and therefore cannot be invoked in the interrupt context. - -## Closing an I2C Controller - -Call the following function to close the I2C controller after the communication is complete: - -void I2cClose\(DevHandle handle\); - -**Table 3** Description of I2cClose - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Handle of an I2C controller.

-
- -``` -I2cClose(i2cHandle); /* Close the I2C controller. */ -``` - diff --git a/en/device-dev/driver/i2c.md b/en/device-dev/driver/i2c.md index 12167aeab96..98c3ddc01c9 100644 --- a/en/device-dev/driver/i2c.md +++ b/en/device-dev/driver/i2c.md @@ -1,9 +1,426 @@ -# I2C +# I2C -- **[I2C Overview](i2c-overview.md)** +- [Overview](#section5361140416) + - [Available APIs](#section459052019177) -- **[I2C Usage Guidelines](i2c-usage-guidelines.md)** +- [Usage Guidelines](#section1695201514281) + - [How to Use](#section1338373417288) + - [Opening an I2C Controller](#section13751110132914) + - [Performing I2C Communication](#section9202183372916) + - [Closing an I2C Controller](#section19481164133018) -- **[I2C Usage Example](i2c-usage-example.md)** +- [Usage Example](#section5302202015300) +## Overview + +- The Inter-Integrated Circuit \(I2C\) is a simple, bidirectional, and synchronous serial bus that uses merely two wires. +- In an I2C communication, one controller communicates with one or more devices through the serial data line \(SDA\) and serial clock line \(SCL\), as shown in [Figure 1](#fig1135561232714). + +- I2C data transfer must begin with a **START** condition and end with a **STOP** condition. Data is transmitted byte-by-byte from the most significant bit to the least significant bit. +- Each I2C node is recognized by a unique address and can serve as either a controller or a device. When the controller needs to communicate with a device, it writes the device address to the bus through broadcast. A device matching this address sends a response to set up a data transfer channel. + +- The I2C APIs define a set of common functions for I2C data transfer, including: + + - I2C controller management: opening or closing an I2C controller + - I2C message transfer: custom transfer by using a message array + + **Figure 1** Physical connection diagram for I2C + ![](figures/physical-connection-diagram-for-i2c.png "physical-connection-diagram-for-i2c") + + +### Available APIs + +**Table 1** APIs available for the I2C driver + + + + + + + + + + + + + + + + + + + +

Capability

+

Function

+

Description

+

I2C controller management

+

I2cOpen

+

Opens an I2C controller.

+

I2cClose

+

Closes an I2C controller.

+

I2C message transfer

+

I2cTransfer

+

Performs a custom transfer.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>All functions provided in this document can be called only in kernel mode. + +## Usage Guidelines + +### How to Use + +[Figure 2](#fig166181128151112) illustrates the process of an I2C device. + +**Figure 2** Process of using an I2C device + + +![](figures/en-us_image_0000001123509750.png) + +### Opening an I2C Controller + +Call the following function to open an I2C controller: + +DevHandle I2cOpen\(int16\_t number\); + +**Table 2** Description of I2cOpen + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

number

+

I2C controller ID.

+

Return Value

+

Description

+

NULL

+

Failed to open the I2C controller.

+

Device handle

+

Handle of the I2C controller.

+
+ +This example assumes that the system has eight I2C controllers \(numbered from 0 to 7\) and I2C controller 3 is to open. + +``` +DevHandle i2cHandle = NULL; /* I2C controller handle */ + +/* Open an I2C controller. */ +i2cHandle = I2cOpen(3); +if (i2cHandle == NULL) { + HDF_LOGE("I2cOpen: failed\n"); + return; +} +``` + +### Performing I2C Communication + +Use the following function for message transfer: + +int32\_t I2cTransfer\(DevHandle handle, struct I2cMsg \*msgs, int16\_t count\); + +**Table 3** Description of I2cTransfer + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Handle of an I2C controller.

+

msgs

+

Message array of the data to transfer.

+

count

+

Length of the message array.

+

Return Value

+

Description

+

Positive integer

+

Number of message structures that are successfully transmitted.

+

Negative value

+

Failed to perform the message transfer.

+
+ +The type of an I2C message transfer is defined by **I2cMsg**. Each message structure indicates a read or write operation. Multiple read or write operations can be performed by using a message array. + +``` +int32_t ret; +uint8_t wbuff[2] = { 0x12, 0x13 }; +uint8_t rbuff[2] = { 0 }; +struct I2cMsg msgs[2]; /* Custom message array for transfer */ +msgs[0].buf = wbuff; /* Data to write */ +msgs[0].len = 2; /* The length of the data to write is 2. */ +msgs[0].addr = 0x5A; /* The address of the device to write the data is 0x5A. */ +msgs[0].flags = 0; /* The flag is 0, indicating the write operation. */ +msgs[1].buf = rbuff; /* Data to read */ +msgs[1].len = 2; /* The length of the data to read is 2. */ +msgs[1].addr = 0x5A; /* The address of the device to read is 0x5A. */ +msgs[1].flags = I2C_FLAG_READ /* I2C_FLAG_READ is configured, indicating the read operation. */ +/* Perform a custom transfer to transfer two messages. */ +ret = I2cTransfer(i2cHandle, msgs, 2); +if (ret != 2) { + HDF_LOGE("I2cTransfer: failed, ret %d\n", ret); + return; +} +``` + +>![](public_sys-resources/icon-caution.gif) **CAUTION:** +>- The device address in the **I2cMsg** structure does not contain the read/write flag bit. The read/write information is transferred by the read/write control bit in the member variable **flags**. +>- The **I2cTransfer** function does not limit the number of message structures, which is determined by the I2C controller. +>- The **I2cTransfer** function does not limit the data length of each message structure, which is determined by the I2C controller. +>- The **I2cTransfer** function may cause the system to sleep and therefore cannot be called in the interrupt context. + +### Closing an I2C Controller + +Call the following function to close the I2C controller after the communication is complete: + +void I2cClose\(DevHandle \*handle\); + +**Table 4** Description of I2cClose + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Handle of an I2C controller.

+
+ +``` +I2cClose(i2cHandle); /* Close the I2C controller. */ +``` + +## Usage Example + +This example describes how to use I2C APIs with an I2C device on a development board. + +This example shows a simple register read/write operation on TouchPad on a Hi3516D V300 development board. The basic hardware information is as follows: + +- SoC: hi3516dv300 + +- Touch IC: The I2C address is 0x38, and the bit width of Touch IC's internal register is 1 byte. + +- Schematic diagram: TouchPad is mounted to I2C controller 3. The reset pin of Touch IC is GPIO3. + +In this example, first we reset Touch IC. \(The development board supplies power to Touch IC by default after being powered on, and this use case does not consider the power supply\). Then, we perform a read/write operation on an internal register to test whether the I2C channel is normal. + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>The example focuses on I2C device access and verifies the I2C channel. The read and write values of the device register are not concerned. The behavior caused by the read and write operations on the register is determined by the device itself. + +Example: + +``` +#include "i2c_if.h" /* Header file of I2C APIs */ +#include "gpio_if.h" /* Header file of GPIO APIs */ +#include "hdf_log.h" /* Header file for log APIs */ +#include "osal_io.h" /* Header file of I/O read and write APIs */ +#include "osal_time.h" /* Header file of delay and sleep APIs */ + +/* Define a TP device structure to store I2C and GPIO hardware information. */ +struct TpI2cDevice { + uint16_t rstGpio; /* Reset pin */ + uint16_t busId; /* I2C bus ID */ + uint16_t addr; /* I2C device address */ + uint16_t regLen; /* Register bit width */ + DevHandle i2cHandle; /* I2C controller handle */ +}; + +/* I2C pin I/O configuration. For details, see the SoC register manual. */ +#define I2C3_DATA_REG_ADDR 0x112f008c /* Address of the SDA pin configuration register of I2C controller 3 +#define I2C3_CLK_REG_ADDR 0x112f0090 /* Address of the SCL pin configuration register of I2C controller 3 +#define I2C_REG_CFG 0x5f1 /* Configuration values of SDA and SCL pins of I2C controller 3 + +static void TpSocIoCfg(void) +{ + /* Set the I/O function of the two pins corresponding to I2C controller 3 to I2C. */ + OSAL_WRITEL(I2C_REG_CFG, IO_DEVICE_ADDR(I2C3_DATA_REG_ADDR)); + OSAL_WRITEL(I2C_REG_CFG, IO_DEVICE_ADDR(I2C3_CLK_REG_ADDR)); +} + +/* Initialize the reset pin of the TP. Pull up the pin for 20 ms, pull down the pin for 50 ms, and then pull up the pin for 20 ms to complete the resetting. */ +static int32_t TestCaseGpioInit(struct TpI2cDevice *tpDevice) +{ + int32_t ret; + + /* Set the output direction for the reset pin. */ + ret = GpioSetDir(tpDevice->rstGpio, GPIO_DIR_OUT); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set rst dir fail!:%d", __func__, ret); + return ret; + } + + ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_HIGH); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set rst hight fail!:%d", __func__, ret); + return ret; + } + OsalMSleep(20); + + ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_LOW); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set rst low fail!:%d", __func__, ret); + return ret; + } + OsalMSleep(50); + + ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_HIGH); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set rst high fail!:%d", __func__, ret); + return ret; + } + OsalMSleep(20); + + return HDF_SUCCESS; +} + +/* Use I2cTransfer to encapsulate a register read/write auxiliary function. Use flag to indicate the read or write operation. */ +static int TpI2cReadWrite(struct TpI2cDevice *tpDevice, unsigned int regAddr, + unsigned char *regData, unsigned int dataLen, uint8_t flag) +{ + int index = 0; + unsigned char regBuf[4] = {0}; + struct I2cMsg msgs[2] = {0}; + + /* Perform length adaptation for the single- or dual-byte register. */ + if (tpDevice->regLen == 1) { + regBuf[index++] = regAddr & 0xFF; + } else { + regBuf[index++] = (regAddr >> 8) & 0xFF; + regBuf[index++] = regAddr & 0xFF; + } + + /* Fill in the I2cMsg message structure. */ + msgs[0].addr = tpDevice->addr; + msgs[0].flags = 0; /* The flag is 0, indicating the write operation. */ + msgs[0].len = tpDevice->regLen; + msgs[0].buf = regBuf; + + msgs[1].addr = tpDevice->addr; + msgs[1].flags = (flag == 1)? I2C_FLAG_READ: 0; /* Add the read flag. */ + msgs[1].len = dataLen; + msgs[1].buf = regData; + + if (I2cTransfer(tpDevice->i2cHandle, msgs, 2) != 2) { + HDF_LOGE("%s: i2c read err", __func__); + return HDF_FAILURE; + } + return HDF_SUCCESS; +} + +/* TP register read function */ +static inline int TpI2cReadReg(struct TpI2cDevice *tpDevice, unsigned int regAddr, + unsigned char *regData, unsigned int dataLen) +{ + return TpI2cReadWrite(tpDevice, regAddr, regData, dataLen, 1); +} + +/* TP register write function */ +static inline int TpI2cWriteReg(struct TpI2cDevice *tpDevice, unsigned int regAddr, + unsigned char *regData, unsigned int dataLen) +{ + return TpI2cReadWrite(tpDevice, regAddr, regData, dataLen, 0); +} + +/* Main entry of I2C */ +static int32_t TestCaseI2c(void) +{ + int32_t i; + int32_t ret; + unsigned char bufWrite[7] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xA, 0xB, 0xC }; + unsigned char bufRead[7] = {0}; + static struct TpI2cDevice tpDevice; + + /* I/O pin function configuration */ + TpSocIoCfg(); + + /* Initialize TP device information. */ + tpDevice.rstGpio = 3; + tpDevice.busId = 3; + tpDevice.addr = 0x38; + tpDevice.regLen = 1; + tpDevice.i2cHandle = NULL; + + /* Initialize the GPIO pin. */ + ret = TestCaseGpioInit(&tpDevice); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: gpio init fail!:%d", __func__, ret); + return ret; + } + + /* Open an I2C controller. */ + tpDevice.i2cHandle = I2cOpen(tpDevice.busId); + if (tpDevice.i2cHandle == NULL) { + HDF_LOGE("%s: Open I2c:%u fail!", __func__, tpDevice.busId); + return -1; + } + + /* Continuously write 7-byte data to register 0xD5 of TP-IC. */ + ret = TpI2cWriteReg(&tpDevice, 0xD5, bufWrite, 7); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: tp i2c write reg fail!:%d", __func__, ret); + I2cClose(tpDevice.i2cHandle); + return -1; + } + OsalMSleep(10); + + /* Continuously read 7-byte data from register 0xDO of TP-IC. */ + ret = TpI2cReadReg(&tpDevice, 0xD5, bufRead, 7); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: tp i2c read reg fail!:%d", __func__, ret); + I2cClose(tpDevice.i2cHandle); + return -1; + } + + HDF_LOGE("%s: tp i2c write&read reg success!", __func__); + for (i = 0; i < 7; i++) { + HDF_LOGE("%s: bufRead[%d] = 0x%x", __func__, i, bufRead[i]); + } + + /* Close the I2C controller. */ + I2cClose(tpDevice.i2cHandle); + return ret; +} +``` diff --git a/en/device-dev/driver/lcd.md b/en/device-dev/driver/lcd.md index 9930511412c..855cd171cdd 100644 --- a/en/device-dev/driver/lcd.md +++ b/en/device-dev/driver/lcd.md @@ -1,9 +1,363 @@ -# LCD +# LCD -- **[LCD Overview](lcdoverview.md)** +- [Overview](#section141575391542) + - [API Description](#section14711163785519) -- **[LCD Development Guidelines](lcddevelopment-guidelines.md)** +- [Development Guidelines](#section12394223125615) + - [How to Develop](#section515923045814) -- **[LCD Development Example](lcddevelopment-example.md)** +- [Development Example](#section7441155155813) +## Overview + +The Liquid Crystal Display \(LCD\) driver powers on the LCD and initializes internal LCD registers through APIs to enable the LCD to work properly. The display driver is developed based on the hardware driver foundation \([HDF](hdfoverview.md)\). It provides power-on, power-off, and sending of the initialization sequence for LCD hardware across OSs and platforms. The display driver model is shown in [Figure 1](#fig69138814229). + +**Figure 1** Architecture of the display driver model +![](figures/architecture-of-the-display-driver-model.png "architecture-of-the-display-driver-model") + +- **Display driver model** + + The display driver model consists of the display common driver layer, SoC adapter layer, and third-party chip driver layer. The display driver model is developed based on the HDF and hides the differences between kernel forms through platform and OSAL APIs so the LCD driver can be migrated between different OSs and chip platforms. The display driver connects to the display common HAL, supports the implementation of Hardware Driver Interfaces \(HDIs\), and provides various driver interfaces for the graphics service through the display HDI. + + - Display common driver layer: connects to the display common HAL through the IOService data channel provided by the HDF to receive and process upper-layer calls in a centralized manner. + + - SoC adapter layer: decouples the display driver from the SoC driver, configures parameters related to the chip platform, and passes calls from the platform driver layer to the LCD driver layer. + + - Third-party chip driver layer: provides LCD-related APIs for sending the LCD initialization sequence, powering on or off the LCD device, and setting the backlight. + + The display driver model, capabilities, and APIs help you simplify the display driver development and improve the efficiency. + + +### API Description + +The LCD interfaces are classified into the Mobile Industry Processor Interface \(MIPI\) Display Serial Interface \(DSI\), Transistor-Transistor Logic \(TTL\) interfaces, and Low Voltage Differential Signaling \(LVDS\) interfaces. The MIPI DSI and TTL interfaces are commonly used. Here is a brief introduction to them. + +- MIPI DSI + + **Figure 2** MIPI DSI + ![](figures/mipi-dsi.png "mipi-dsi") + + The MIPI DSI is defined by MIPI Alliance. It is mainly used for mobile terminal display. The MIPI DSI is used to transmit image data, in compliance with the MIPI protocol. Generally, control information of the MIPI DSI is sent to the peer IC in the form of MIPI packets through the MIPI DSI. No additional interface is required. + +- TTL interface + + **Figure 3** TTL interface + ![](figures/ttl-interface.png "ttl-interface") + + TTL level signals are generated by TTL devices, which are a major type of digital integrated circuits. They are manufactured using the bipolar process and feature high speed, low power consumption, and multiple types. + + The TTL interface is used to transmit data in parallel mode under the control of control signals. It transmits data signals, clock signals, and control signals \(such as line synchronization signals, frame synchronization signals, and data validity signals\). Generally, the LCD of the TTL interface and the read/write of internal registers require additional peripheral interfaces, such as the Serial Peripheral Interface \(SPI\) and Inter-Integrated Circuit \(I2C\). + + +## Development Guidelines + +The display driver model is developed based on the HDF, platform APIs, and APIs at the OS abstraction layer \(OSAL\), and provides a unified driver model for the LCD regardless of the OS \(LiteOS or Linux OS\) and chip platforms \(such as Hi35xx, Hi38xx, and V3S\). + +### How to Develop + +1. Add the LCD driver-related hardware descriptions. +2. Add a driver that adapts to the chip at the SoC adapter layer. +3. Add the LCD panel driver and register the panel driver functions in the driver entry function **Init**. The functions provide capabilities for: + - Powering on/off the LCD device + + Based on the LCD hardware connection, use the GPIO interfaces provided by the platform to perform operations on the LCD pins, such as the reset pin and IOVCC pin. For details about the power-on sequence, see the SPEC provided by the LCD supplier. + + - Sending the initialization sequence + + Based on the LCD hardware interfaces, use the I2C, SPI, and MIPI interfaces provided by the platform to download the LCD initialization sequence. For details, see the SPEC provided by the LCD supplier. + + +4. Implement other HDF interfaces as required, for example, the **Release** interface. +5. Use the HDF to create other device nodes for implementing service logic or debugging as required. + +## Development Example + +Add the device description. + +``` +/* Description of the display driver */ +display :: host { + hostName = "display_host"; + /* Description of the HDF display driver */ + device_hdf_disp :: device { + device0 :: deviceNode { + policy = 2; + priority = 200; + permission = 0660; + moduleName = "HDF_DISP"; + serviceName = "hdf_disp"; + } + } + /* Description of the driver device at the SoC adapter layer */ + device_hi35xx_disp :: device { + device0 :: deviceNode { + policy = 0; + priority = 199; + moduleName = "HI351XX_DISP"; + } + } + /* Description of the LCD driver */ + device_lcd :: device { + device0 :: deviceNode { + policy = 0; + priority = 100; + preload = 0; + moduleName = "LCD_Sample"; + } + device1 :: deviceNode { + policy = 0; + priority = 100; + preload = 2; + moduleName = "LCD_SampleXX"; + } + } +} +``` + +The following example shows how to adapt to the MIPI device to the Hi35xx series chips at the SoC adapter layer: + +``` +static int32_t MipiDsiInit(struct PanelInfo *info) +{ + int32_t ret; + struct DevHandle *mipiHandle = NULL; + struct MipiCfg cfg; + + mipiHandle = MipiDsiOpen(0); + if (mipiHandle == NULL) { + HDF_LOGE("%s: MipiDsiOpen failure", __func__); + return HDF_FAILURE; + } + cfg.lane = info->mipi.lane; + cfg.mode = info->mipi.mode; + cfg.format = info->mipi.format; + cfg.burstMode = info->mipi.burstMode; + cfg.timing.xPixels = info->width; + cfg.timing.hsaPixels = info->hsw; + cfg.timing.hbpPixels = info->hbp; + cfg.timing.hlinePixels = info->width + info->hbp + info->hfp + info->hsw; + cfg.timing.vsaLines = info->vsw; + cfg.timing.vbpLines = info->vbp; + cfg.timing.vfpLines = info->vfp; + cfg.timing.ylines = info->height; + /* 0 : no care */ + cfg.timing.edpiCmdSize = 0; + cfg.pixelClk = CalcPixelClk(info); + cfg.phyDataRate = CalcDataRate(info); + /* config mipi device */ + ret = MipiDsiSetCfg(mipiHandle, &cfg); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s:MipiDsiSetCfg failure", __func__); + } + MipiDsiClose(mipiHandle); + HDF_LOGI("%s:pixelClk = %d, phyDataRate = %d\n", __func__, + cfg.pixelClk, cfg.phyDataRate); + return ret; +} +``` + +The following example shows code for developing an LCD driver: + +``` +#define RESET_GPIO 5 +#define MIPI_DSI0 0 +#define BLK_PWM1 1 +#define PWM_MAX_PERIOD 100000 +/* backlight setting */ +#define MIN_LEVEL 0 +#define MAX_LEVEL 255 +#define DEFAULT_LEVEL 100 + +#define WIDTH 480 +#define HEIGHT 960 +#define HORIZONTAL_BACK_PORCH 20 +#define HORIZONTAL_FRONT_PORCH 20 +#define HORIZONTAL_SYNC_WIDTH 10 +#define VERTIACL_BACK_PORCH 14 +#define VERTIACL_FRONT_PORCH 16 +#define VERTIACL_SYNC_WIDTH 2 +#define FRAME_RATE 60 + +/* PanelInfo structure */ +struct PanelInfo { + uint32_t width; + uint32_t height; + uint32_t hbp; + uint32_t hfp; + uint32_t hsw; + uint32_t vbp; + uint32_t vfp; + uint32_t vsw; + uint32_t frameRate; + enum LcdIntfType intfType; + enum IntfSync intfSync; + struct MipiDsiDesc mipi; + struct BlkDesc blk; + struct PwmCfg pwm; +}; + +/* Initialization sequence of the LCD panel */ +static uint8_t g_payLoad0[] = { 0xF0, 0x5A, 0x5A }; +static uint8_t g_payLoad1[] = { 0xF1, 0xA5, 0xA5 }; +static uint8_t g_payLoad2[] = { 0xB3, 0x03, 0x03, 0x03, 0x07, 0x05, 0x0D, 0x0F, 0x11, 0x13, 0x09, 0x0B }; +static uint8_t g_payLoad3[] = { 0xB4, 0x03, 0x03, 0x03, 0x06, 0x04, 0x0C, 0x0E, 0x10, 0x12, 0x08, 0x0A }; +static uint8_t g_payLoad4[] = { 0xB0, 0x54, 0x32, 0x23, 0x45, 0x44, 0x44, 0x44, 0x44, 0x60, 0x00, 0x60, 0x1C }; +static uint8_t g_payLoad5[] = { 0xB1, 0x32, 0x84, 0x02, 0x87, 0x12, 0x00, 0x50, 0x1C }; +static uint8_t g_payLoad6[] = { 0xB2, 0x73, 0x09, 0x08 }; +static uint8_t g_payLoad7[] = { 0xB6, 0x5C, 0x5C, 0x05 }; +static uint8_t g_payLoad8[] = { 0xB8, 0x23, 0x41, 0x32, 0x30, 0x03 }; +static uint8_t g_payLoad9[] = { 0xBC, 0xD2, 0x0E, 0x63, 0x63, 0x5A, 0x32, 0x22, 0x14, 0x22, 0x03 }; +static uint8_t g_payLoad10[] = { 0xb7, 0x41 }; +static uint8_t g_payLoad11[] = { 0xC1, 0x0c, 0x10, 0x04, 0x0c, 0x10, 0x04 }; +static uint8_t g_payLoad12[] = { 0xC2, 0x10, 0xE0 }; +static uint8_t g_payLoad13[] = { 0xC3, 0x22, 0x11 }; +static uint8_t g_payLoad14[] = { 0xD0, 0x07, 0xFF }; +static uint8_t g_payLoad15[] = { 0xD2, 0x63, 0x0B, 0x08, 0x88 }; +static uint8_t g_payLoad16[] = { 0xC6, 0x08, 0x15, 0xFF, 0x10, 0x16, 0x80, 0x60 }; +static uint8_t g_payLoad17[] = { 0xc7, 0x04 }; +static uint8_t g_payLoad18[] = { + 0xC8, 0x7C, 0x50, 0x3B, 0x2C, 0x25, 0x16, 0x1C, 0x08, 0x27, 0x2B, 0x2F, 0x52, 0x43, 0x4C, 0x40, + 0x3D, 0x30, 0x1E, 0x06, 0x7C, 0x50, 0x3B, 0x2C, 0x25, 0x16, 0x1C, 0x08, 0x27, 0x2B, 0x2F, 0x52, + 0x43, 0x4C, 0x40, 0x3D, 0x30, 0x1E, 0x06 +}; +static uint8_t g_payLoad19[] = { 0x11 }; +static uint8_t g_payLoad20[] = { 0x29 }; + +struct DsiCmdDesc g_OnCmd[] = { + { 0x29, 0, sizeof(g_payLoad0), g_payLoad0 }, + { 0x29, 0, sizeof(g_payLoad1), g_payLoad1 }, + { 0x29, 0, sizeof(g_payLoad2), g_payLoad2 }, + { 0x29, 0, sizeof(g_payLoad3), g_payLoad3 }, + { 0x29, 0, sizeof(g_payLoad4), g_payLoad4 }, + { 0x29, 0, sizeof(g_payLoad5), g_payLoad5 }, + { 0x29, 0, sizeof(g_payLoad6), g_payLoad6 }, + { 0x29, 0, sizeof(g_payLoad7), g_payLoad7 }, + { 0x29, 0, sizeof(g_payLoad8), g_payLoad8 }, + { 0x29, 0, sizeof(g_payLoad9), g_payLoad9 }, + { 0x23, 0, sizeof(g_payLoad10), g_payLoad10 }, + { 0x29, 0, sizeof(g_payLoad11), g_payLoad11 }, + { 0x29, 0, sizeof(g_payLoad12), g_payLoad12 }, + { 0x29, 0, sizeof(g_payLoad13), g_payLoad13 }, + { 0x29, 0, sizeof(g_payLoad14), g_payLoad14 }, + { 0x29, 0, sizeof(g_payLoad15), g_payLoad15 }, + { 0x29, 0, sizeof(g_payLoad16), g_payLoad16 }, + { 0x23, 0, sizeof(g_payLoad17), g_payLoad17 }, + { 0x29, 1, sizeof(g_payLoad18), g_payLoad18 }, + { 0x05, 120, sizeof(g_payLoad19), g_payLoad19 }, + { 0x05, 120, sizeof(g_payLoad20), g_payLoad20 }, +}; +static DevHandle g_mipiHandle = NULL; +static DevHandle g_pwmHandle = NULL; + +/* Set the status of the reset pin. */ +static int32_t LcdResetOn(void) +{ + int32_t ret; + ret = GpioSetDir(RESET_GPIO, GPIO_DIR_OUT); + if (ret != HDF_SUCCESS) { + HDF_LOGE("GpioSetDir failure, ret:%d", ret); + return HDF_FAILURE; + } + ret = GpioWrite(RESET_GPIO, GPIO_VAL_HIGH); + if (ret != HDF_SUCCESS) { + HDF_LOGE("GpioWrite failure, ret:%d", ret); + return HDF_FAILURE; + } + /* delay 20ms */ + OsalMSleep(20); + return HDF_SUCCESS; +} + +static int32_t SampleInit(void) +{ + /* Obtain the MIPI DSI device handle. */ + g_mipiHandle = MipiDsiOpen(MIPI_DSI0); + if (g_mipiHandle == NULL) { + HDF_LOGE("%s: MipiDsiOpen failure", __func__); + return HDF_FAILURE; + } + return HDF_SUCCESS; +} + +static int32_t SampleOn(void) +{ + int32_t ret; + /* Power on the LCD. */ + ret = LcdResetOn(); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: LcdResetOn failure", __func__); + return HDF_FAILURE; + } + if (g_mipiHandle == NULL) { + HDF_LOGE("%s: g_mipiHandle is null", __func__); + return HDF_FAILURE; + } + /* Send the initialization sequence via MIPI. */ + int32_t count = sizeof(g_OnCmd) / sizeof(g_OnCmd[0]); + int32_t i; + for (i = 0; i < count; i++) { + ret = MipiDsiTx(g_mipiHandle, &(g_OnCmd[i])); + if (ret != HDF_SUCCESS) { + HDF_LOGE("MipiDsiTx failure"); + return HDF_FAILURE; + } + } + /* Set MIPI to the high speed (HS) mode. */ + MipiDsiSetHsMode(g_mipiHandle); + return HDF_SUCCESS; +} + +/* PanelInfo structure variables */ +static struct PanelInfo g_panelInfo = { + .width = WIDTH, /* width */ + .height = HEIGHT, /* height */ + .hbp = HORIZONTAL_BACK_PORCH, /* horizontal back porch */ + .hfp = HORIZONTAL_FRONT_PORCH, /* horizontal front porch */ + .hsw = HORIZONTAL_SYNC_WIDTH, /* horizontal sync width */ + .vbp = VERTIACL_BACK_PORCH, /* vertiacl back porch */ + .vfp = VERTIACL_FRONT_PORCH, /* vertiacl front porch */ + .vsw = VERTIACL_SYNC_WIDTH, /* vertiacl sync width */ + .frameRate = FRAME_RATE, /* frame rate */ + .intfType = MIPI_DSI, /* panel interface type */ + .intfSync = OUTPUT_USER, /* output timming type */ + /* mipi config info */ + .mipi = { DSI_2_LANES, DSI_VIDEO_MODE, VIDEO_BURST_MODE, FORMAT_RGB_24_BIT }, + /* backlight config info */ + .blk = { BLK_PWM, MIN_LEVEL, MAX_LEVEL, DEFAULT_LEVEL }, + .pwm = { BLK_PWM1, PWM_MAX_PERIOD }, +}; + +/* Basic APIs that need to be adapted for the chip driver */ +static struct PanelData g_panelData = { + .info = &g_panelInfo, + .init = SampleInit, + .on = SampleOn, + .off = SampleOff, + .setBacklight = SampleSetBacklight, +}; + +/* Entry function of the chip driver */ +int32_t SampleEntryInit(struct HdfDeviceObject *object) +{ + HDF_LOGI("%s: enter", __func__); + if (object == NULL) { + HDF_LOGE("%s: param is null!", __func__); + return HDF_FAILURE; + } + /* Register the chip driver APIs with the platform driver. */ + if (PanelDataRegister(&g_panelData) != HDF_SUCCESS) { + HDF_LOGE("%s: PanelDataRegister error!", __func__); + return HDF_FAILURE; + } + return HDF_SUCCESS; +} + +struct HdfDriverEntry g_sampleDevEntry = { + .moduleVersion = 1, + .moduleName = "LCD_SAMPLE", + .Init = SampleEntryInit, +}; + +HDF_INIT(g_sampleDevEntry); +``` diff --git a/en/device-dev/driver/lcddevelopment-example.md b/en/device-dev/driver/lcddevelopment-example.md deleted file mode 100644 index 35122ca4fa6..00000000000 --- a/en/device-dev/driver/lcddevelopment-example.md +++ /dev/null @@ -1,291 +0,0 @@ -# LCD Development Example - -Add the device description. - -``` -/* Description of the display driver */ -display :: host { - hostName = "display_host"; - /* Description of the HDF display driver */ - device_hdf_disp :: device { - device0 :: deviceNode { - policy = 2; - priority = 200; - permission = 0660; - moduleName = "HDF_DISP"; - serviceName = "hdf_disp"; - } - } - /* Description of the driver device at the SoC adapter layer */ - device_hi35xx_disp :: device { - device0 :: deviceNode { - policy = 0; - priority = 199; - moduleName = "HI351XX_DISP"; - } - } - /* Description of the LCD driver */ - device_lcd :: device { - device0 :: deviceNode { - policy = 0; - priority = 100; - preload = 0; - moduleName = "LCD_Sample"; - } - device1 :: deviceNode { - policy = 0; - priority = 100; - preload = 2; - moduleName = "LCD_SampleXX"; - } - } -} -``` - -The following example shows how to adapt to the MIPI device to the Hi35xx series chips at the SoC adapter layer: - -``` -static int32_t MipiDsiInit(struct PanelInfo *info) -{ - int32_t ret; - struct DevHandle *mipiHandle = NULL; - struct MipiCfg cfg; - - mipiHandle = MipiDsiOpen(0); - if (mipiHandle == NULL) { - HDF_LOGE("%s: MipiDsiOpen failure", __func__); - return HDF_FAILURE; - } - cfg.lane = info->mipi.lane; - cfg.mode = info->mipi.mode; - cfg.format = info->mipi.format; - cfg.burstMode = info->mipi.burstMode; - cfg.timing.xPixels = info->width; - cfg.timing.hsaPixels = info->hsw; - cfg.timing.hbpPixels = info->hbp; - cfg.timing.hlinePixels = info->width + info->hbp + info->hfp + info->hsw; - cfg.timing.vsaLines = info->vsw; - cfg.timing.vbpLines = info->vbp; - cfg.timing.vfpLines = info->vfp; - cfg.timing.ylines = info->height; - /* 0 : no care */ - cfg.timing.edpiCmdSize = 0; - cfg.pixelClk = CalcPixelClk(info); - cfg.phyDataRate = CalcDataRate(info); - /* config mipi device */ - ret = MipiDsiSetCfg(mipiHandle, &cfg); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s:MipiDsiSetCfg failure", __func__); - } - MipiDsiClose(mipiHandle); - HDF_LOGI("%s:pixelClk = %d, phyDataRate = %d\n", __func__, - cfg.pixelClk, cfg.phyDataRate); - return ret; -} -``` - -The following example shows code for developing an LCD driver: - -``` -#define RESET_GPIO 5 -#define MIPI_DSI0 0 -#define BLK_PWM1 1 -#define PWM_MAX_PERIOD 100000 -/* backlight setting */ -#define MIN_LEVEL 0 -#define MAX_LEVEL 255 -#define DEFAULT_LEVEL 100 - -#define WIDTH 480 -#define HEIGHT 960 -#define HORIZONTAL_BACK_PORCH 20 -#define HORIZONTAL_FRONT_PORCH 20 -#define HORIZONTAL_SYNC_WIDTH 10 -#define VERTIACL_BACK_PORCH 14 -#define VERTIACL_FRONT_PORCH 16 -#define VERTIACL_SYNC_WIDTH 2 -#define FRAME_RATE 60 - -/* Panel information structure */ -struct PanelInfo { - uint32_t width; - uint32_t height; - uint32_t hbp; - uint32_t hfp; - uint32_t hsw; - uint32_t vbp; - uint32_t vfp; - uint32_t vsw; - uint32_t frameRate; - enum LcdIntfType intfType; - enum IntfSync intfSync; - struct MipiDsiDesc mipi; - struct BlkDesc blk; - struct PwmCfg pwm; -}; - -/* Initialization sequence of the LCD panel */ -static uint8_t g_payLoad0[] = { 0xF0, 0x5A, 0x5A }; -static uint8_t g_payLoad1[] = { 0xF1, 0xA5, 0xA5 }; -static uint8_t g_payLoad2[] = { 0xB3, 0x03, 0x03, 0x03, 0x07, 0x05, 0x0D, 0x0F, 0x11, 0x13, 0x09, 0x0B }; -static uint8_t g_payLoad3[] = { 0xB4, 0x03, 0x03, 0x03, 0x06, 0x04, 0x0C, 0x0E, 0x10, 0x12, 0x08, 0x0A }; -static uint8_t g_payLoad4[] = { 0xB0, 0x54, 0x32, 0x23, 0x45, 0x44, 0x44, 0x44, 0x44, 0x60, 0x00, 0x60, 0x1C }; -static uint8_t g_payLoad5[] = { 0xB1, 0x32, 0x84, 0x02, 0x87, 0x12, 0x00, 0x50, 0x1C }; -static uint8_t g_payLoad6[] = { 0xB2, 0x73, 0x09, 0x08 }; -static uint8_t g_payLoad7[] = { 0xB6, 0x5C, 0x5C, 0x05 }; -static uint8_t g_payLoad8[] = { 0xB8, 0x23, 0x41, 0x32, 0x30, 0x03 }; -static uint8_t g_payLoad9[] = { 0xBC, 0xD2, 0x0E, 0x63, 0x63, 0x5A, 0x32, 0x22, 0x14, 0x22, 0x03 }; -static uint8_t g_payLoad10[] = { 0xb7, 0x41 }; -static uint8_t g_payLoad11[] = { 0xC1, 0x0c, 0x10, 0x04, 0x0c, 0x10, 0x04 }; -static uint8_t g_payLoad12[] = { 0xC2, 0x10, 0xE0 }; -static uint8_t g_payLoad13[] = { 0xC3, 0x22, 0x11 }; -static uint8_t g_payLoad14[] = { 0xD0, 0x07, 0xFF }; -static uint8_t g_payLoad15[] = { 0xD2, 0x63, 0x0B, 0x08, 0x88 }; -static uint8_t g_payLoad16[] = { 0xC6, 0x08, 0x15, 0xFF, 0x10, 0x16, 0x80, 0x60 }; -static uint8_t g_payLoad17[] = { 0xc7, 0x04 }; -static uint8_t g_payLoad18[] = { - 0xC8, 0x7C, 0x50, 0x3B, 0x2C, 0x25, 0x16, 0x1C, 0x08, 0x27, 0x2B, 0x2F, 0x52, 0x43, 0x4C, 0x40, - 0x3D, 0x30, 0x1E, 0x06, 0x7C, 0x50, 0x3B, 0x2C, 0x25, 0x16, 0x1C, 0x08, 0x27, 0x2B, 0x2F, 0x52, - 0x43, 0x4C, 0x40, 0x3D, 0x30, 0x1E, 0x06 -}; -static uint8_t g_payLoad19[] = { 0x11 }; -static uint8_t g_payLoad20[] = { 0x29 }; - -struct DsiCmdDesc g_OnCmd[] = { - { 0x29, 0, sizeof(g_payLoad0), g_payLoad0 }, - { 0x29, 0, sizeof(g_payLoad1), g_payLoad1 }, - { 0x29, 0, sizeof(g_payLoad2), g_payLoad2 }, - { 0x29, 0, sizeof(g_payLoad3), g_payLoad3 }, - { 0x29, 0, sizeof(g_payLoad4), g_payLoad4 }, - { 0x29, 0, sizeof(g_payLoad5), g_payLoad5 }, - { 0x29, 0, sizeof(g_payLoad6), g_payLoad6 }, - { 0x29, 0, sizeof(g_payLoad7), g_payLoad7 }, - { 0x29, 0, sizeof(g_payLoad8), g_payLoad8 }, - { 0x29, 0, sizeof(g_payLoad9), g_payLoad9 }, - { 0x23, 0, sizeof(g_payLoad10), g_payLoad10 }, - { 0x29, 0, sizeof(g_payLoad11), g_payLoad11 }, - { 0x29, 0, sizeof(g_payLoad12), g_payLoad12 }, - { 0x29, 0, sizeof(g_payLoad13), g_payLoad13 }, - { 0x29, 0, sizeof(g_payLoad14), g_payLoad14 }, - { 0x29, 0, sizeof(g_payLoad15), g_payLoad15 }, - { 0x29, 0, sizeof(g_payLoad16), g_payLoad16 }, - { 0x23, 0, sizeof(g_payLoad17), g_payLoad17 }, - { 0x29, 1, sizeof(g_payLoad18), g_payLoad18 }, - { 0x05, 120, sizeof(g_payLoad19), g_payLoad19 }, - { 0x05, 120, sizeof(g_payLoad20), g_payLoad20 }, -}; -static DevHandle g_mipiHandle = NULL; -static DevHandle g_pwmHandle = NULL; - -/* Set the status of the reset pin. */ -static int32_t LcdResetOn(void) -{ - int32_t ret; - ret = GpioSetDir(RESET_GPIO, GPIO_DIR_OUT); - if (ret != HDF_SUCCESS) { - HDF_LOGE("GpioSetDir failure, ret:%d", ret); - return HDF_FAILURE; - } - ret = GpioWrite(RESET_GPIO, GPIO_VAL_HIGH); - if (ret != HDF_SUCCESS) { - HDF_LOGE("GpioWrite failure, ret:%d", ret); - return HDF_FAILURE; - } - /* delay 20ms */ - OsalMSleep(20); - return HDF_SUCCESS; -} - -static int32_t SampleInit(void) -{ - /* Obtain the MIPI DSI device handle. */ - g_mipiHandle = MipiDsiOpen(MIPI_DSI0); - if (g_mipiHandle == NULL) { - HDF_LOGE("%s: MipiDsiOpen failure", __func__); - return HDF_FAILURE; - } - return HDF_SUCCESS; -} - -static int32_t SampleOn(void) -{ - int32_t ret; - /* Power on the LCD. */ - ret = LcdResetOn(); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: LcdResetOn failure", __func__); - return HDF_FAILURE; - } - if (g_mipiHandle == NULL) { - HDF_LOGE("%s: g_mipiHandle is null", __func__); - return HDF_FAILURE; - } - /* Send the initialization sequence via MIPI. */ - int32_t count = sizeof(g_OnCmd) / sizeof(g_OnCmd[0]); - int32_t i; - for (i = 0; i < count; i++) { - ret = MipiDsiTx(g_mipiHandle, &(g_OnCmd[i])); - if (ret != HDF_SUCCESS) { - HDF_LOGE("MipiDsiTx failure"); - return HDF_FAILURE; - } - } - /* Set MIPI to the high speed (HS) mode. */ - MipiDsiSetHsMode(g_mipiHandle); - return HDF_SUCCESS; -} - -/* PanelInfo structure variables */ -static struct PanelInfo g_panelInfo = { - .width = WIDTH, /* width */ - .height = HEIGHT, /* height */ - .hbp = HORIZONTAL_BACK_PORCH, /* horizontal back porch */ - .hfp = HORIZONTAL_FRONT_PORCH, /* horizontal front porch */ - .hsw = HORIZONTAL_SYNC_WIDTH, /* horizontal sync width */ - .vbp = VERTIACL_BACK_PORCH, /* vertiacl back porch */ - .vfp = VERTIACL_FRONT_PORCH, /* vertiacl front porch */ - .vsw = VERTIACL_SYNC_WIDTH, /* vertiacl sync width */ - .frameRate = FRAME_RATE, /* frame rate */ - .intfType = MIPI_DSI, /* panel interface type */ - .intfSync = OUTPUT_USER, /* output timming type */ - /* mipi config info */ - .mipi = { DSI_2_LANES, DSI_VIDEO_MODE, VIDEO_BURST_MODE, FORMAT_RGB_24_BIT }, - /* backlight config info */ - .blk = { BLK_PWM, MIN_LEVEL, MAX_LEVEL, DEFAULT_LEVEL }, - .pwm = { BLK_PWM1, PWM_MAX_PERIOD }, -}; - -/* Basic APIs that need to be adapted for the chip driver */ -static struct PanelData g_panelData = { - .info = &g_panelInfo, - .init = SampleInit, - .on = SampleOn, - .off = SampleOff, - .setBacklight = SampleSetBacklight, -}; - -/* Entry function of the chip driver */ -int32_t SampleEntryInit(struct HdfDeviceObject *object) -{ - HDF_LOGI("%s: enter", __func__); - if (object == NULL) { - HDF_LOGE("%s: param is null!", __func__); - return HDF_FAILURE; - } - /* Register the chip driver APIs with the platform driver. */ - if (PanelDataRegister(&g_panelData) != HDF_SUCCESS) { - HDF_LOGE("%s: PanelDataRegister error!", __func__); - return HDF_FAILURE; - } - return HDF_SUCCESS; -} - -struct HdfDriverEntry g_sampleDevEntry = { - .moduleVersion = 1, - .moduleName = "LCD_SAMPLE", - .Init = SampleEntryInit, -}; - -HDF_INIT(g_sampleDevEntry); -``` - diff --git a/en/device-dev/driver/lcddevelopment-guidelines.md b/en/device-dev/driver/lcddevelopment-guidelines.md deleted file mode 100644 index a7d0f9cb745..00000000000 --- a/en/device-dev/driver/lcddevelopment-guidelines.md +++ /dev/null @@ -1,23 +0,0 @@ -# LCD Development Guidelines - -- [How to Develop](#section3904154911218) - -The display driver model is developed based on the HDF, platform APIs, and APIs at the OS abstraction layer \(OSAL\), and provides a unified driver model for the LCD regardless of the OS \(LiteOS or Linux OS\) and chip platforms \(such as Hi35xx, Hi38xx, and V3S\). - -## How to Develop - -1. Add the LCD driver-related hardware descriptions. -2. Add a driver that adapts to the chip at the SoC adapter layer. -3. Add the LCD panel driver and register the panel driver functions in the driver entry function **Init**. The functions provide capabilities for: - - Powering on/off the LCD device - - Based on the LCD hardware connection, use the GPIO interfaces provided by the platform to perform operations on the LCD pins, such as the reset pin and IOVCC pin. For details about the power-on sequence, see the SPEC provided by the LCD supplier. - - - Sending the initialization sequence - - Based on the LCD hardware interfaces, use the I2C, SPI, and MIPI interfaces provided by the platform to download the LCD initialization sequence. For details, see the SPEC provided by the LCD supplier. - - -4. Implement other HDF interfaces as required, for example, the **Release** interface. -5. Use the HDF to create other device nodes for implementing service logic or debugging as required. - diff --git a/en/device-dev/driver/lcdoverview.md b/en/device-dev/driver/lcdoverview.md deleted file mode 100644 index 08ba05e1f40..00000000000 --- a/en/device-dev/driver/lcdoverview.md +++ /dev/null @@ -1,46 +0,0 @@ -# LCD Overview - -- [Introduction](#section3781515122118) -- [API Description](#section20280192712120) - -## Introduction - -The Liquid Crystal Display \(LCD\) driver powers on the LCD and initializes internal LCD registers APIs to enable the LCD to work properly. The display driver is developed based on the hardware driver foundation \([HDF](hdfoverview.md)\). It provides power-on, power-off, and sending of the initialization sequence for LCD hardware across OSs and platforms. The display driver model is shown in [Figure 1](#fig69138814229). - -**Figure 1** Architecture of the display driver model -![](figures/architecture-of-the-display-driver-model.png "architecture-of-the-display-driver-model") - -- **Display driver model** - - The display driver model consists of the display common driver layer, SoC adapter layer, and third-party chip driver layer. It is developed based on the HDF and hides the differences between kernel forms through platform and OSAL APIs so the LCD driver can be migrated to different OSs and chip platforms. The display driver connects to the display common HAL, supports the implementation of Hardware Driver Interfaces \(HDIs\), and provides various driver interfaces for the graphics service through the display HDI. - - - Display common driver layer: connects to the display common HAL through the IOService data channel provided by the HDF to receive and process various upper-layer calls in a centralized manner. - - - SoC adapter layer: decouples the display driver from the SoC driver, configures parameters related to the chip platform, and passes the calls at the platform driver layer to the LCD driver layer. - - - Third-party chip driver layer: provides LCD-related APIs for sending the LCD initialization sequence, powering on or off the LCD device, and setting the backlight. - - Based on the display driver model, various capabilities, and APIs, you can greatly simplify the display driver development and improve the efficiency. - - -## API Description - -The LCD interfaces are classified into the Mobile Industry Processor Interface \(MIPI\) Display Serial Interface \(DSI\), Transistor Transistor Logic \(TTL\) interfaces, and Low Voltage Differential Signaling \(LVDS\) interfaces. The MIPI DSI and TTL interfaces are commonly used. Here is a brief introduction to them. - -- MIPI DSI - - **Figure 2** MIPI DSI - ![](figures/mipi-dsi.png "mipi-dsi") - - The MIPI DSI is defined by MIPI Alliance. It is mainly used for mobile terminal display. The MIPI DSI is used to transmit image data, in compliance with the MIPI protocol. Generally, control information of the MIPI DSI is sent to the peer IC in the form of MIPI packets through the MIPI DSI. No additional interface is required. - -- TTL interface - - **Figure 3** TTL interface - ![](figures/ttl-interface.png "ttl-interface") - - TTL level signals are generated by TTL devices, which are a major type of digital integrated circuits. They are manufactured using the bipolar process and feature high speed, low power consumption, and multiple types. - - The TTL interface is used to transmit data in parallel mode. It transmits data signals, clock signals, and control signals \(such as line synchronization signals, frame synchronization signals, and data validity signals\) under the control of control signals. Generally, the LCD of the TTL interface and the read/write of internal registers require additional peripheral interfaces, such as the Serial Peripheral Interface \(SPI\) and Inter-Integrated Circuit \(I2C\). - - diff --git a/en/device-dev/driver/mipi-dsi-overview.md b/en/device-dev/driver/mipi-dsi-overview.md deleted file mode 100644 index ec579fba093..00000000000 --- a/en/device-dev/driver/mipi-dsi-overview.md +++ /dev/null @@ -1,84 +0,0 @@ -# MIPI DSI Overview - -- [Introduction](#section1369320102013) -- [Available APIs](#section6577545192317) - -## Introduction - -- The Display Serial Interface \(DSI\) is a specification stipulated by the Mobile Industry Processor Interface \(MIPI\) Alliance, aiming to reduce the cost of display controllers in a mobile device. It defines a serial bus and communication protocol among the host, the source of image data, and the target device. In this way, the DSI can send pixel data or commands to peripherals \(usually LCDs or similar display devices\) in serial mode, or reads information such as status and pixel from the peripherals. - -- MIPI DSI is capable of working in both high speed \(HS\) mode and low power \(LP\) mode. All data lanes can only travel from the DSI host to a peripheral in HS mode, except the first data lane, which can also receive data such as status information and pixels from the peripheral in LP mode. The clock lane is dedicated to transmitting synchronization clock signals in HS mode. - - [Figure 1](#fig1122611461203) shows a simplified DSI interface. Conceptually, a DSI-compliant interface has the same features as interfaces complying with DBI-2 and DPI-2 standards. It sends pixels or commands to a peripheral and can read status or pixel information from the peripheral. The main difference is that the DSI serializes all pixel data, commands, and events that, in traditional interfaces, are conveyed to and from the peripheral on a parallel data bus with additional control signals. - - **Figure 1** DSI transmitting and receiving Interface - ![](figures/dsi-transmitting-and-receiving-interface.png "dsi-transmitting-and-receiving-interface") - - - -## Available APIs - -**Table 1** APIs for MIPI DSI - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Capability

-

Function

-

Description

-

Setting/Obtaining MIPI DSI configuration parameters

-

MipiDsiSetCfg

-

Sets configuration parameters for a MIPI DSI device.

-

MipiDsiGetCfg

-

Obtains the configuration parameters of a MIPI DSI device.

-

Obtaining /Releasing device handles

-

MipiDsiOpen

-

Obtains a MIPI DSI device handle.

-

MipiDsiClose

-

Releases a specified MIPI DSI device handle.

-

Setting the LP or HS mode

-

MipiDsiSetLpMode

-

Sets LP mode for a MIPI DSI device.

-

MipiDsiSetHsMode

-

Sets HS mode for a MIPI DSI device.

-

Reading/Sending commands

-

MipiDsiTx

-

Sends a display command set (DCS) command for sending data.

-

MipiDsiRx

-

Receives a DCS command for reading data with the specified length.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->All functions described in this document can be called only in kernel space. - diff --git a/en/device-dev/driver/mipi-dsi.md b/en/device-dev/driver/mipi-dsi.md index f50672962f5..698edad62a3 100644 --- a/en/device-dev/driver/mipi-dsi.md +++ b/en/device-dev/driver/mipi-dsi.md @@ -1,9 +1,554 @@ -# MIPI DSI +# MIPI DSI -- **[MIPI DSI Overview](mipi-dsi-overview.md)** +- [Overview](#section16806142183217) + - [Available APIs](#section129611916132011) -- **[Usage Guidelines](usage-guidelines.md)** +- [Usage Guidelines](#section037231715335) + - [How to Use](#section49299119344) + - [Obtains a MIPI DSI device handle.](#section5126155683811) + - [Setting MIPI DSI Configuration Parameters](#section201164274344) + - [Sending/Receiving the Pointer to a Command](#section199401342173415) + - [Releasing the MIPI DSI Device Handle](#section161011610357) -- **[Usage Example](usage-example.md)** +- [Usage Example](#section17470126123520) +## Overview + +- The Display Serial Interface \(DSI\) is a specification stipulated by the Mobile Industry Processor Interface \(MIPI\) Alliance, aiming to reduce the cost of display controllers in a mobile device. It defines a serial bus and communication protocol among the host, the source of image data, and the target device. In this way, the DSI can send pixel data or commands to peripherals \(usually LCDs or similar display devices\) in serial mode, or reads information such as status and pixel from the peripherals. + +- MIPI DSI is capable of working in both high speed \(HS\) mode and low power \(LP\) mode. All data lanes can only travel from the DSI host to a peripheral in HS mode, except the first data lane, which can also receive data such as status information and pixels from the peripheral in LP mode. The clock lane is dedicated to transmitting synchronization clock signals in HS mode. +- [Figure 1](#fig1122611461203) shows a simplified DSI interface. Conceptually, a DSI-compliant interface has the same features as interfaces complying with DBI-2 and DPI-2 standards. It sends pixels or commands to a peripheral and can read status or pixel information from the peripheral. The main difference is that the DSI serializes all pixel data, commands, and events that, in traditional interfaces, are conveyed to and from the peripheral on a parallel data bus with additional control signals. + + **Figure 1** DSI transmitting and receiving interface + ![](figures/dsi-transmitting-and-receiving-interface.png "dsi-transmitting-and-receiving-interface") + + +### Available APIs + +**Table 1** APIs for MIPI DSI + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Capability

+

Function

+

Description

+

Setting/Obtaining MIPI DSI configuration parameters

+

MipiDsiSetCfg

+

Sets configuration parameters for a MIPI DSI device.

+

MipiDsiGetCfg

+

Obtains configuration parameters of a MIPI DSI device.

+

Obtaining /Releasing device handles

+

MipiDsiOpen

+

Obtains a MIPI DSI device handle.

+

MipiDsiClose

+

Releases a specified MIPI DSI device handle.

+

Setting the LP or HS mode

+

MipiDsiSetLpMode

+

Sets LP mode for a MIPI DSI device.

+

MipiDsiSetHsMode

+

Sets HS mode for a MIPI DSI device.

+

Reading/Sending commands

+

MipiDsiTx

+

Sends a display command set (DCS) command for sending data.

+

MipiDsiRx

+

Receives a DCS command for reading data with the specified length.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>All functions described in this document can be called only in kernel space. + +## Usage Guidelines + +### How to Use + +[Figure 2](#fig99821771782) shows the process of using a MIPI DSI device. + +**Figure 2** Process of using a MIPI DSI device + + +![](figures/en-us_image_0000001123514210.png) + +### Obtains a MIPI DSI device handle. + +Before performing MIPI DSI communication, obtain a MIPI DSI device handle by calling **MipiDsiOpen**. This function returns a MIPI DSI device handle with a specified channel ID. + +DevHandle MipiDsiOpen\(uint8\_t id\); + +**Table 2** Description of **MipiDsiOpen** + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

id

+

MIPI DSI channel ID.

+

Return Value

+

Description

+

NULL

+

Failed to receive the specified command.

+

Device handle

+

MIPI DSI device handle with a specified channel ID, whose data type is DevHandle.

+
+ +The following example shows how to obtain a MIPI DSI device handle with the channel ID **0**: + +``` +DevHandle mipiDsiHandle = NULL; /* Device handle */ +chnId = 0; /* MIPI DSI channel ID */ + +/* Obtain the MIPI DSI device handle based on a specified channel ID. */ +mipiDsiHandle = MipiDsiOpen(chnId); +if (mipiDsiHandle == NULL) { + HDF_LOGE("MipiDsiOpen: failed\n"); + return; +} +``` + +### Setting MIPI DSI Configuration Parameters + +- Set MIPI DSI configuration parameters by calling the following function: + +int32\_t MipiDsiSetCfg\(DevHandle handle, struct MipiCfg \*cfg\); + +**Table 3** Description of **MipiDsiSetCfg** + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

MIPI DSI device handle.

+

cfg

+

Pointer to MIPI DSI configuration parameters.

+

Return Value

+

Description

+

0

+

Succeeded in setting MIPI DSI configuration parameters.

+

Negative value

+

Failed to set MIPI DSI configuration parameters.

+
+ +``` +int32_t ret; +struct MipiCfg cfg = {0}; + +/* Configuration parameters of the connected device are as follows: */ +cfg.lane = DSI_4_LANES; +cfg.mode = DSI_CMD_MODE; +cfg.burstMode = VIDEO_NON_BURST_MODE_SYNC_EVENTS; +cfg.format = FORMAT_RGB_24_BIT; +cfg.pixelClk = 174; +cfg.phyDataRate = 384; +cfg.timingInfo.hsaPixels = 50; +cfg.timingInfo.hbpPixels = 55; +cfg.timingInfo.hlinePixels = 1200; +cfg.timingInfo.yResLines = 1800; +cfg.timingInfo.vbpLines = 33; +cfg.timingInfo.vsaLines = 76; +cfg.timingInfo.vfpLines = 120; +cfg.timingInfo.xResPixels = 1342; +/* Set MIPI DSI configuration parameters. */ +ret = MipiDsiSetCfg(g_handle, &cfg); +if (ret != 0) { + HDF_LOGE("%s: SetMipiCfg fail! ret=%d\n", __func__, ret); + return -1; +} +``` + +- Obtain MIPI DSI configuration parameters by calling the following function: + +int32\_t MipiDsiGetCfg\(DevHandle handle, struct MipiCfg \*cfg\); + +**Table 4** Description of **MipiDsiGetCfg** + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

MIPI DSI device handle.

+

cfg

+

Pointer to MIPI DSI configuration parameters.

+

Return Value

+

Description

+

0

+

Succeeded in receiving the specified command.

+

Negative value

+

Failed to receive the specified command.

+
+ +``` +int32_t ret; +struct MipiCfg cfg; +memset(&cfg, 0, sizeof(struct MipiCfg)); +ret = MipiDsiGetCfg(g_handle, &cfg); +if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: GetMipiCfg fail!\n", __func__); + return HDF_FAILURE; +} +``` + +### Sending/Receiving the Pointer to a Command + +- Send the pointer to a specified command by calling the following function: + +int32\_t MipiDsiTx\(PalHandle handle, struct DsiCmdDesc \*cmd\); + +**Table 5** Description of **MipiDsiTx** + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

MIPI DSI device handle.

+

cmd

+

Pointer to the command to be sent.

+

Return Value

+

Description

+

0

+

Succeeded in sending the specified command.

+

Negative value

+

Failed to send the specified command.

+
+ +``` +int32_t ret; +struct DsiCmdDesc *cmd = OsalMemCalloc(sizeof(struct DsiCmdDesc)); +if (cmd == NULL) { + return HDF_FAILURE; +} +cmd->dtype = DTYPE_DCS_WRITE; +cmd->dlen = 1; +cmd->payload = OsalMemCalloc(sizeof(uint8_t)); +if (cmd->payload == NULL) { + HdfFree(cmd); + return HDF_FAILURE; +} +*(cmd->payload) = DTYPE_GEN_LWRITE; +MipiDsiSetLpMode(mipiHandle); +ret = MipiDsiTx(mipiHandle, cmd); +MipiDsiSetHsMode(mipiHandle); +if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: PalMipiDsiTx fail! ret=%d\n", __func__, ret); + HdfFree(cmd->payload); + HdfFree(cmd); + return HDF_FAILURE; +} +HdfFree(cmd->payload); +HdfFree(cmd); +``` + +- Receive a specified command by calling the following function: + +int32\_t MipiDsiRx\(DevHandle handle, struct DsiCmdDesc \*cmd, uint32\_t readLen, uint8\_t \*out\); + +**Table 6** Description of **MipiDsiRx** + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

MIPI DSI device handle.

+

cmd

+

Pointer to the command to be received.

+

readLen

+

Length of the data to read.

+

out

+

Pointer to the read data.

+

Return Value

+

Description

+

0

+

Succeeded in receiving the specified command.

+

Negative value

+

Failed to receive the specified command.

+
+ +``` +int32_t ret; +uint8_t readVal = 0; + +struct DsiCmdDesc *cmdRead = OsalMemCalloc(sizeof(struct DsiCmdDesc)); +if (cmdRead == NULL) { + return HDF_FAILURE; +} +cmdRead->dtype = DTYPE_DCS_READ; +cmdRead->dlen = 1; +cmdRead->payload = OsalMemCalloc(sizeof(uint8_t)); +if (cmdRead->payload == NULL) { + HdfFree(cmdRead); + return HDF_FAILURE; +} +*(cmdRead->payload) = DDIC_REG_STATUS; +MipiDsiSetLpMode(g_handle); +ret = MipiDsiRx(g_handle, cmdRead, sizeof(readVal), &readVal); +MipiDsiSetHsMode(g_handle); +if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: MipiDsiRx fail! ret=%d\n", __func__, ret); + HdfFree(cmdRead->payload); + HdfFree(cmdRead); + return HDF_FAILURE; +} +HdfFree(cmdRead->payload); +HdfFree(cmdRead); +``` + +### Releasing the MIPI DSI Device Handle + +After the MIPI DSI communication, release the MIPI DSI device handle by calling the following function: + +void MipiDsiClose\(DevHandle handle\); + +This function releases the resources requested by **MipiDsiOpen**. + +**Table 7** Description of **MipiDsiClose** + + + + + + + + + + +

Parameter

+

Description

+

handle

+

MIPI DSI device handle.

+
+ +``` +MipiDsiClose(mipiHandle); /* Release the MIPI DSI device handle */ +``` + +## Usage Example + +The following is an example of using a MIPI DSI device: + +``` +#include "hdf.h" +#include "mipi_dsi_if.h" + +void PalMipiDsiTestSample(void) +{ + uint8_t chnId; + int32_t ret; + DevHandle handle = NULL; + + /* Device channel ID */ + chnId = 0; + /* Obtain the MIPI DSI device handle based on a specified channel ID. */ + handle = MipiDsiOpen(chnId); + if (handle == NULL) { + HDF_LOGE("MipiDsiOpen: failed!\n"); + return; + } + /* MIPI DSI configuration parameters */ + struct MipiCfg cfg = {0}; + cfg.lane = DSI_4_LANES; + cfg.mode = DSI_CMD_MODE; + cfg.burstMode = VIDEO_NON_BURST_MODE_SYNC_EVENTS; + cfg.format = FORMAT_RGB_24_BIT; + cfg.pixelClk = 174; + cfg.phyDataRate = 384; + cfg.timingInfo.hsaPixels = 50; + cfg.timingInfo.hbpPixels = 55; + cfg.timingInfo.hlinePixels = 1200; + cfg.timingInfo.yResLines = 1800; + cfg.timingInfo.vbpLines = 33; + cfg.timingInfo.vsaLines = 76; + cfg.timingInfo.vfpLines = 120; + cfg.timingInfo.xResPixels = 1342; + /* Set MIPI DSI configuration parameters. */ + ret = MipiDsiSetCfg(g_handle, &cfg); + if (ret != 0) { + HDF_LOGE("%s: SetMipiCfg fail! ret=%d\n", __func__, ret); + return; + } + /* Send the command for initializing the PANEL register. */ + struct DsiCmdDesc *cmd = OsalMemCalloc(sizeof(struct DsiCmdDesc)); + if (cmd == NULL) { + return; + } + cmd->dtype = DTYPE_DCS_WRITE; + cmd->dlen = 1; + cmd->payload = OsalMemCalloc(sizeof(uint8_t)); + if (cmd->payload == NULL) { + HdfFree(cmd); + return; + } + *(cmd->payload) = DTYPE_GEN_LWRITE; + MipiDsiSetLpMode(mipiHandle); + ret = MipiDsiTx(mipiHandle, cmd); + MipiDsiSetHsMode(mipiHandle); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: MipiDsiTx fail! ret=%d\n", __func__, ret); + HdfFree(cmd->payload); + HdfFree(cmd); + return; + } + HdfFree(cmd->payload); + HdfFree(cmd); + /* Pointer to the register that reads the PANEL status */ + uint8_t readVal = 0; + struct DsiCmdDesc *cmdRead = OsalMemCalloc(sizeof(struct DsiCmdDesc)); + if (cmdRead == NULL) { + return; + } + cmdRead->dtype = DTYPE_DCS_READ; + cmdRead->dlen = 1; + cmdRead->payload = OsalMemCalloc(sizeof(uint8_t)); + if (cmdRead->payload == NULL) { + HdfFree(cmdRead); + return; + } + *(cmdRead->payload) = DDIC_REG_STATUS; + MipiDsiSetLpMode(g_handle); + ret = MipiDsiRx(g_handle, cmdRead, sizeof(readVal), &readVal); + MipiDsiSetHsMode(g_handle); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: MipiDsiRx fail! ret=%d\n", __func__, ret); + HdfFree(cmdRead->payload); + HdfFree(cmdRead); + return; + } + HdfFree(cmdRead->payload); + HdfFree(cmdRead); + /* Release the MIPI DSI device handle. */ + MipiDsiClose(handle); +} +``` diff --git a/en/device-dev/driver/peripherals.md b/en/device-dev/driver/peripherals.md index 42016f572c9..7c9a9629fc1 100644 --- a/en/device-dev/driver/peripherals.md +++ b/en/device-dev/driver/peripherals.md @@ -4,7 +4,7 @@ - **[TOUCHSCREEN](touchscreen.md)** -- **[SENSOR](sensor.md)** +- **[Sensor](sensor.md)** - **[WLAN](wlan.md)** diff --git a/en/device-dev/driver/driver-platform.md b/en/device-dev/driver/platform-drivers.md similarity index 66% rename from en/device-dev/driver/driver-platform.md rename to en/device-dev/driver/platform-drivers.md index d75727d7407..c7607bb8d07 100644 --- a/en/device-dev/driver/driver-platform.md +++ b/en/device-dev/driver/platform-drivers.md @@ -1,4 +1,4 @@ -# Driver Platform +# Platform Drivers - **[GPIO](gpio.md)** @@ -12,7 +12,7 @@ - **[UART](uart.md)** -- **[WATCHDOG](watchdog.md)** +- **[Watchdog](watchdog.md)** - **[MIPI DSI](mipi-dsi.md)** diff --git a/en/device-dev/driver/rtc-overview.md b/en/device-dev/driver/rtc-overview.md deleted file mode 100644 index 97aa8a24369..00000000000 --- a/en/device-dev/driver/rtc-overview.md +++ /dev/null @@ -1,103 +0,0 @@ -# RTC Overview - -- [Introduction](#section104842041574) -- [Available APIs](#section16892932155715) - -## Introduction - -The real-time clock \(RTC\) driver provides precise real time for the operating system \(OS\). If the OS is powered off, the RTC driver continues to keep track of the system time using an external battery. - -## Available APIs - -**Table 1** APIs provided by the RTC driver - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Capability

-

Function

-

Description

-

RTC handle

-

RtcOpen

-

Opens the RTC device to obtain its handle.

-

RtcClose

-

Releases a specified handle of the RTC device.

-

RTC time

-

RtcReadTime

-

Reads time information from the RTC driver, including the year, month, the day of the week, day, hour, minute, second, and millisecond.

-

RtcWriteTime

-

Writes time information from the RTC driver, including the year, month, the day of the week, day, hour, minute, second, and millisecond.

-

RTC alarm

-

RtcReadAlarm

-

Reads the RTC alarm time that was set last time.

-

RtcWriteAlarm

-

Writes the RTC alarm time based on the alarm index.

-

RtcRegisterAlarmCallback

-

Registers RtcAlarmCallback that will be invoked when an alarm is generated at the specified time.

-

RtcAlarmInterruptEnable

-

Enables or disables RTC alarm interrupts.

-

RTC configuration

-

RtcGetFreq

-

Reads the frequency of the external crystal oscillator connected to the RTC driver.

-

RtcSetFreq

-

Sets the frequency of the external crystal oscillator connected to the RTC driver.

-

RtcReset

-

Resets the RTC.

-

Custom register

-

RtcReadReg

-

Reads the configuration of a custom RTC register based on the register index.

-

RtcWriteReg

-

Writes the configuration of a custom RTC register based on the register index.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->All functions provided in this document can be called only in kernel mode. - diff --git a/en/device-dev/driver/rtc-usage-example.md b/en/device-dev/driver/rtc-usage-example.md deleted file mode 100644 index e546c2f1433..00000000000 --- a/en/device-dev/driver/rtc-usage-example.md +++ /dev/null @@ -1,97 +0,0 @@ -# RTC Usage Example - -This section describes the process of using RTC APIs: - -1. During the OS startup, the HDF identifies the RTC component in the system. -2. The HDF initializes and creates the RTC device. -3. You can perform operations on the RTC device by calling different APIs. -4. Call the **RtcClose** function to release the device handle and device resources. - -Example: - -``` -#include "rtc_if.h" -int32_t RtcAlarmACallback(enum RtcAlarmIndex alarmIndex) -{ - if (alarmIndex == RTC_ALARM_INDEX_A) { - /* Process alarm A. */ - printf("RTC Alarm A callback function\n\r"); - } else if (alarmIndex == RTC_ALARM_INDEX_B) { - /* Process alarm B. */ - printf("RTC Alarm B callback function\n\r"); - } else { - /* Process the error. */ - } - return 0; -} - -void RtcTestSample(void) -{ - int32_t ret; - struct RtcTime tm; - struct RtcTime alarmTime; - uint32_t freq; - DevHandle handle = NULL; - - /* Obtain the RTC device handle. */ - handle = RtcOpen(); - if (handle == NULL) { - /* Process the error. */ - } - /* Register RtcAlarmCallback for alarm A. */ - ret = RtcRegisterAlarmCallback(handle, RTC_ALARM_INDEX_A, RtcAlarmACallback); - if (ret != 0) { - /* Process the error. */ - } - /* Set the RTC external crystal frequency. Note that the frequency must be configured in accordance with the requirements specified in the product manual of the in-use component. */ - freq = 32768; /* 32768 Hz */ - ret = RtcSetFreq(handle, freq); - if (ret != 0) { - /* Process the error. */ - } - /* Enable the RTC alarm interrupts. */ - ret = RtcAlarmInterruptEnable(handle, RTC_ALARM_INDEX_A, 1); - if (ret != 0) { - /* Process the error. */ - } - /* Set the RTC time to 2020/01/01 00:00:10 .990. */ - tm.year = 2020; - tm.month = 01; - tm.day = 01; - tm.hour= 0; - tm.minute = 0; - tm.second = 10; - tm.millisecond = 990; - /* Write the RTC time information. */ - ret = RtcWriteTime(handle, &tm); - if (ret != 0) { - /* Process the error. */ - } - /* Set the RTC alarm time to 2020/01/01 00:00:30 .100. */ - alarmTime.year = 2020; - alarmTime.month = 01; - alarmTime.day = 01; - alarmTime.hour = 0; - alarmTime.minute = 0; - alarmTime.second = 30; - alarmTime.millisecond = 100; - /* Set the alarm time information for RTC_ALARM_INDEX_A. When the specified time is reached, "RTC Alarm A callback function" is printed. */ - ret = RtcWriteAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); - if (ret != 0) { - /* Process the error. */ - } - - /* Read the RTC real time. */ - ret = RtcReadTime(handle, &tm); - if (ret != 0) { - /* Process the error. */ - } - sleep(5) - printf("RTC read time:\n\r"); - printf("year-month-date-weekday hour:minute:second .millisecond %04u-%02u-%02u-%u %02u:%02u:%02u .%03u", - tm.year, tm.month, tm.day, tm.weekday, tm.hour, tm.minute, tm.second, tm.millisecond); - /* Release the RTC device handle. */ - RtcClose(handle); -} -``` - diff --git a/en/device-dev/driver/rtc-usage-guidelines.md b/en/device-dev/driver/rtc-usage-guidelines.md deleted file mode 100644 index 3d0a2f66380..00000000000 --- a/en/device-dev/driver/rtc-usage-guidelines.md +++ /dev/null @@ -1,741 +0,0 @@ -# RTC Usage Guidelines - -- [How to Use](#section620515765714) -- [Creating an RTC Device Handle](#section0702183665711) -- [Releasing the RTC Device Handle](#section639962619542) -- [Registering RtcAlarmCallback](#section123631358135713) -- [Performing RTC-related Operations](#section11091522125812) - -## How to Use - -During the OS startup, the HDF loads the RTC driver based on the configuration file. The RTC driver detects the RTC component and initializes the driver. - -[Figure 1](#fig166181128151112) illustrates the process of an RTC device. - -**Figure 1** Process of using an RTC device - - -![](figures/en-us_image_0000001054728498.png) - -## Creating an RTC Device Handle - -After the RTC driver is loaded successfully, you can use the API provided by the HDF and call APIs of the RTC driver. - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->Currently, only one RTC device is supported in the OS. - -DevHandle RtcOpen\(void\); - -**Table 1** Description of **RtcOpen** - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

void

-

N/A

-

Return Value

-

Description

-

handle

-

Returns the pointer if the operation is successful.

-

NULL

-

The operation fails.

-
- -``` -DevHandle handle = NULL; - -/* Obtain the RTC device handle. */ -handle = RtcOpen(); -if (handle == NULL) { - /* Process the error. */ -} -``` - -## Releasing the RTC Device Handle - -You can call the following function to release the RTC device handle, thereby releasing resources of the device: - -void RtcClose\(DevHandle handle\); - -**Table 2** Description of **RtcClose** - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle

-
- -``` -/* Release the RTC device handle. */ -RtcClose(handle); -``` - -## Registering RtcAlarmCallback - -After the OS is started, call the following function to register **RtcAlarmCallback**, which will be invoked when an alarm is generated at the specified time: - -int32\_t RtcRegisterAlarmCallback\(DevHandle handle, enum RtcAlarmIndex alarmIndex, RtcAlarmCallback cb\); - -**Table 3** Description of **RtcRegisterAlarmCallback** - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

alarmIndex

-

Alarm index.

-

cb

-

Callback that will be invoked when an alarm is generated at the specified time.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- -The following is an example of registering **RtcAlarmCallback** for processing alarm **RTC\_ALARM\_INDEX\_A**: - -``` -/* Register an RTC alarm callback. */ -int32_t RtcAlarmACallback(enum RtcAlarmIndex alarmIndex) -{ - if (alarmIndex == RTC_ALARM_INDEX_A) { - /* Process alarm A. */ - } else if (alarmIndex == RTC_ALARM_INDEX_B) { - /* Process alarm B. */ - } else { - /* Process the error. */ - } - return 0; -} -int32_t ret; -/* Register RtcAlarmCallback for alarm A. */ -ret = RtcRegisterAlarmCallback(handle, RTC_ALARM_INDEX_A, RtcAlarmACallback); -if (ret != 0) { - /* Process the error. */ -} -``` - -## Performing RTC-related Operations - -- Reading RTC time - -Call the following function to read time information from the RTC driver, including the year, month, the day fo the week, day, hour, minute, second, and millisecond: - -int32\_t RtcReadTime\(DevHandle handle, struct RtcTime \*time\); - -**Table 4** Description of **RtcReadTime** - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

time

-

Pointer to the time information read from the RTC driver. The time information includes the year, month, the day of the week, day, hour, minute, second, and millisecond.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- -``` -int32_t ret; -struct RtcTime tm; - -/* Read time information from the RTC driver. */ -ret = RtcReadTime(handle, &tm); -if (ret != 0) { - /* Process the error. */ -} -``` - -- Setting RTC time - -Call the following function to set the RTC time: - -int32\_t RtcWriteTime\(DevHandle handle, struct RtcTime \*time\); - -**Table 5** Description of **RtcWriteTime** - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

time

-

Pointer to the time information written into the RTC driver. The time information includes the year, month, the day of the week, day, hour, minute, second, and millisecond.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->The RTC start time is 1970/01/01 Thursday 00:00:00 \(UTC\). The maximum value of **year** must be set based on the requirements specified in the product manual of the in-use component. You do not need to configure the day of the week. - -``` -int32_t ret; -struct RtcTime tm; - -/* Set the RTC time to UTC 2020/01/01 00:59:00 .000. */ -tm.year = 2020; -tm.month = 01; -tm.day = 01; -tm.hour= 00; -tm.minute = 59; -tm.second = 00; -tm.millisecond = 0; -/* Write the RTC time information. */ -ret = RtcWriteTime(handle, &tm); -if (ret != 0) { - /* Process the error. */ -} -``` - -- Reading the RTC alarm time - -Call the following function to read the alarm time: - -int32\_t RtcReadAlarm\(DevHandle handle, enum RtcAlarmIndex alarmIndex, struct RtcTime \*time\); - -**Table 6** Description of **RtcReadAlarm** - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

alarmIndex

-

Alarm index.

-

time

-

Pointer to the RTC alarm time information. The time information includes the year, month, the day of the week, day, hour, minute, second, and millisecond.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- -``` -int32_t ret; -struct RtcTime alarmTime; - -/* Read the RTC alarm time information of alarm RTC_ALARM_INDEX_A. */ -ret = RtcReadAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); -if (ret != 0) { - /* Process the error. */ -} -``` - -- Setting RTC alarm time - -Call the following function to set the RTC alarm time based on the alarm index: - -int32\_t RtcWriteAlarm\(DevHandle handle, enum RtcAlarmIndex alarmIndex, struct RtcTime \*time\); - -**Table 7** Description of **RtcWriteAlarm** - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

alarmIndex

-

Alarm index.

-

time

-

Pointer to the RTC alarm time information. The time information includes the year, month, the day of the week, day, hour, minute, second, and millisecond.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->The RTC start time is 1970/01/01 Thursday 00:00:00 \(UTC\). The maximum value of **year** must be set based on the requirements specified in the product manual of the in-use component. You do not need to configure the day of the week. - -``` -int32_t ret; -struct RtcTime alarmTime; - -/* Set the RTC alarm time to 2020/01/01 00:59:59 .000. */ -alarmTime.year = 2020; -alarmTime.month = 01; -alarmTime.day = 01; -alarmTime.hour = 00; -alarmTime.minute = 59; -alarmTime.second = 59; -alarmTime.millisecond = 0; -/* Set the alarm time of alarm RTC_ALARM_INDEX_A. */ -ret = RtcWriteAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); -if (ret != 0) { - /* Process the error. */ -} -``` - -- Enabling or disabling alarm interrupts - -Before performing alarm operations, use this function to enable alarm interrupts, so that **RtcAlarmCallback** will be called when the alarm is not generated upon a timeout. - -int32\_t RtcAlarmInterruptEnable\(DevHandle handle, enum RtcAlarmIndex alarmIndex, uint8\_t enable\); - -**Table 8** Description of **RtcAlarmInterruptEnable** - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

alarmIndex

-

Alarm index.

-

enable

-

Whether to enable RTC alarm interrupts. Value 1 means to enable alarm interrupts and value 0 means to disable alarm interrupts.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- -``` -int32_t ret; - -/* Enable the RTC alarm interrupts. */ -ret = RtcAlarmInterruptEnable(handle, RTC_ALARM_INDEX_A, 1); -if (ret != 0) { - /* Process the error. */ -} -``` - -- Reading RTC external frequency - -Call the following function to read the frequency of the external crystal oscillator connected to the RTC driver: - -int32\_t RtcGetFreq\(DevHandle handle, uint32\_t \*freq\); - -**Table 9** Description of **RtcGetFreq** - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

freq

-

Frequency to set for the external crystal oscillator, in Hz.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- -``` -int32_t ret; -uint32_t freq = 0; - -/* Read frequency of the external crystal oscillator connected to the RTC driver */ -ret = RtcGetFreq(handle, &freq); -if (ret != 0) { - /* Process the error. */ -} -``` - -- Setting the frequency of the external crystal oscillator connected to the RTC driver - -Call the following function to set the frequency of the external crystal oscillator connected to the RTC driver: - -int32\_t RtcSetFreq\(DevHandle handle, uint32\_t freq\); - -**Table 10** Description of **RtcSetFreq** - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

freq

-

Frequency to set for the external crystal oscillator, in Hz.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- -``` -int32_t ret; -uint32_t freq = 32768; /* 32768 Hz */ - -/* Set the frequency of the external crystal oscillator. Note that the frequency must be configured in accordance with the requirements specified in the product manual of the in-use component. */ -ret = RtcSetFreq(handle, freq); -if (ret != 0) { - /* Process the error. */ -} -``` - -- Resetting the RTC driver - -Call the following function to perform a reset on the RTC driver. After the reset, the registers are restored to the default values: - -int32\_t RtcReset\(DevHandle handle\); - -**Table 11** Description of **RtcReset** - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- -``` -int32_t ret; - -/* Reset the RTC driver. After the reset, the configuration registers are restored to the default values. */ -ret = RtcReset(handle); -if (ret != 0) { - /* Process the error. */ -} -``` - -- Reading the configuration of a custom RTC register - -Call the following function to read the configuration of a custom RTC register based on the register index \(one index corresponds to one byte of the configuration value\): - -int32\_t RtcReadReg\(DevHandle handle, uint8\_t usrDefIndex, uint8\_t \*value\); - -**Table 12** Description of **RtcReadReg** - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

usrDefIndex

-

Index of the custom register.

-

value

-

Register value.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- -``` -int32_t ret; -uint8_t usrDefIndex = 0; /* Define index 0 for the first custom register. */ -uint8_t value = 0; - -/* Read the configuration of a custom RTC register based on the register index. One index corresponds to one byte of the configuration value. */ -ret = RtcReadReg(handle, usrDefIndex, &value); -if (ret != 0) { - /* Process the error. */ -} -``` - -- Setting the configuration of a custom RTC register - -Call the following function to configure a register based on the specified register index \(one index corresponds to one byte of the configuration value\): - -int32\_t RtcWriteReg\(DevHandle handle, uint8\_t usrDefIndex, uint8\_t value\); - -**Table 13** Description of **RtcWriteReg** - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the RTC device handle.

-

usrDefIndex

-

Index of the custom register.

-

value

-

Register value.

-

Return Value

-

Description

-

0

-

The operation is successful.

-

Negative value

-

The operation fails.

-
- -``` -int32_t ret; -uint8_t usrDefIndex = 0; /* Define index 0 for the first custom register. */ -uint8_t value = 0x10; - -/* Configure a register based on the specified register index. One index corresponds to one byte of the configuration value. */ -ret = RtcWriteReg(handle, usrDefIndex, value); -if (ret != 0) { - /* Process the error. */ -} -``` - diff --git a/en/device-dev/driver/rtc.md b/en/device-dev/driver/rtc.md index 50b89f7b7c1..322dac86cfa 100644 --- a/en/device-dev/driver/rtc.md +++ b/en/device-dev/driver/rtc.md @@ -1,9 +1,944 @@ -# RTC +# RTC -- **[RTC Overview](rtc-overview.md)** +- [Overview](#section104842041574) + - [Available APIs](#section3373340142215) -- **[RTC Usage Guidelines](rtc-usage-guidelines.md)** +- [Usage Guidelines](#section20636145604113) + - [How to Use](#section16919828134215) + - [Creating an RTC Device Handle](#section1131212144310) + - [Releasing the RTC Device Handle](#section10744117144314) + - [Registering RtcAlarmCallback](#section14839440184320) + - [Performing RTC-related Operations](#section161927578433) -- **[RTC Usage Example](rtc-usage-example.md)** +- [Usage Example](#section1186111020456) +## Overview + +The real-time clock \(RTC\) driver provides precise real time for the operating system \(OS\). If the OS is powered off, the RTC driver continues to keep track of the system time using an external battery. + +### Available APIs + +**Table 1** APIs provided by the RTC driver + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Capability

+

Function

+

Description

+

RTC handle

+

RtcOpen

+

Opens the RTC device to obtain its handle.

+

RtcClose

+

Releases a specified handle of the RTC device.

+

RTC time

+

RtcReadTime

+

Reads time information from the RTC driver, including the year, month, the day of the week, day, hour, minute, second, and millisecond.

+

RtcWriteTime

+

Writes time information from the RTC driver, including the year, month, the day of the week, day, hour, minute, second, and millisecond.

+

RTC alarm

+

RtcReadAlarm

+

Reads the RTC alarm time that was set last time.

+

RtcWriteAlarm

+

Writes the RTC alarm time based on the alarm index.

+

RtcRegisterAlarmCallback

+

Registers RtcAlarmCallback that will be invoked when an alarm is generated at the specified time.

+

RtcAlarmInterruptEnable

+

Enables or disables RTC alarm interrupts.

+

RTC configuration

+

RtcGetFreq

+

Reads the frequency of the external crystal oscillator connected to the RTC driver.

+

RtcSetFreq

+

Sets the frequency of the external crystal oscillator connected to the RTC driver.

+

RtcReset

+

Resets the RTC.

+

Custom register

+

RtcReadReg

+

Reads the configuration of a custom RTC register based on the register index.

+

RtcWriteReg

+

Writes the configuration of a custom RTC register based on the register index.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>All functions provided in this document can be called only in kernel mode. + +## Usage Guidelines + +### How to Use + +During the OS startup, the HDF loads the RTC driver based on the configuration file. The RTC driver detects the RTC component and initializes the driver. + +[Figure 1](#fig166181128151112) illustrates the process of using an RTC device. + +**Figure 1** Process of using an RTC device + + +![](figures/en-us_image_0000001123675706.png) + +### Creating an RTC Device Handle + +After the RTC driver is loaded, you can use the API provided by the HDF and call APIs of the RTC driver. + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>Currently, only one RTC device is supported in the OS. + +DevHandle RtcOpen\(void\); + +**Table 2** Description of RtcOpen + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

void

+

NA

+

Return Value

+

Description

+

handle

+

Returns the if the operation is successful.

+

NULL

+

The operation fails.

+
+ +``` +DevHandle handle = NULL; + +/* Obtain the RTC device handle. */ +handle = RtcOpen(); +if (handle == NULL) { + /* Process the error. */ +} +``` + +### Releasing the RTC Device Handle + +You can call the following function to release the RTC device handle, thereby releasing resources of the device: + +void RtcClose\(DevHandle handle\); + +**Table 3** Description of RtcClose + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+
+ +``` +/* Release the RTC device handle. */ +RtcClose(handle); +``` + +### Registering RtcAlarmCallback + +After the OS is started, call the following function to register **RtcAlarmCallback**, which will be invoked when an alarm is generated at the specified time: + +int32\_t RtcRegisterAlarmCallback\(DevHandle handle, enum RtcAlarmIndex alarmIndex, RtcAlarmCallback cb\); + +**Table 4** Description of RtcRegisterAlarmCallback + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

alarmIndex

+

Alarm index.

+

cb

+

Callback that will be invoked when an alarm is generated at the specified time.

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +The following is an example of registering **RtcAlarmCallback** for processing alarm **RTC\_ALARM\_INDEX\_A**: + +``` +/* Register an RTC alarm callback. */ +int32_t RtcAlarmACallback(enum RtcAlarmIndex alarmIndex) +{ + if (alarmIndex == RTC_ALARM_INDEX_A) { + /* Process alarm A. */ + } else if (alarmIndex == RTC_ALARM_INDEX_B) { + /* Process alarm B. */ + } else { + /* Process the error. */ + } + return 0; +} +int32_t ret; +/* Register RtcAlarmCallback for alarm A. */ +ret = RtcRegisterAlarmCallback(handle, RTC_ALARM_INDEX_A, RtcAlarmACallback); +if (ret != 0) { + /* Process the error. */ +} +``` + +### Performing RTC-related Operations + +- Reading RTC time + +Call the following function to read time information from the RTC driver, including the year, month, the day of the week, day, hour, minute, second, and millisecond: + +int32\_t RtcReadTime\(DevHandle handle, struct RtcTime \*time\); + +**Table 5** Description of RtcReadTime + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

time

+

Pointer to the time information read from the RTC driver. The time information includes the year, month, the day of the week, day, hour, minute, second, and millisecond.

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +``` +int32_t ret; +struct RtcTime tm; + +/* Read time information from the RTC driver. */ +ret = RtcReadTime(handle, &tm); +if (ret != 0) { + /* Process the error. */ +} +``` + +- Setting RTC time + +Call the following function to set the RTC time: + +int32\_t RtcWriteTime\(DevHandle handle, struct RtcTime \*time\); + +**Table 6** Description of RtcWriteTime + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

time

+

Pointer to the time information written into the RTC driver. The time information includes the year, month, the day of the week, day, hour, minute, second, and millisecond.

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>The RTC start time is 1970/01/01 Thursday 00:00:00 \(UTC\). The maximum value of **year** must be set based on the requirements specified in the product manual of the in-use component. You do not need to configure the day of the week. + +``` +int32_t ret; +struct RtcTime tm; + +/* Set the RTC time to UTC 2020/01/01 00:59:00 .000. */ +tm.year = 2020; +tm.month = 01; +tm.day = 01; +tm.hour= 00; +tm.minute = 59; +tm.second = 00; +tm.millisecond = 0; +/* Write the RTC time information. */ +ret = RtcWriteTime(handle, &tm); +if (ret != 0) { + /* Process the error. */ +} +``` + +- Reading the RTC alarm time + +Call the following function to read the alarm time: + +int32\_t RtcReadAlarm\(DevHandle handle, enum RtcAlarmIndex alarmIndex, struct RtcTime \*time\); + +**Table 7** Description of RtcReadAlarm + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

alarmIndex

+

Alarm index.

+

time

+

Pointer to the RTC alarm time information. The time information includes the year, month, the day of the week, day, hour, minute, second, and millisecond.

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +``` +int32_t ret; +struct RtcTime alarmTime; + +/* Read the RTC alarm time information of alarm RTC_ALARM_INDEX_A. */ +ret = RtcReadAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); +if (ret != 0) { + /* Process the error. */ +} +``` + +- Setting RTC alarm time + +Call the following function to set the RTC alarm time based on the alarm index: + +int32\_t RtcWriteAlarm\(DevHandle handle, enum RtcAlarmIndex alarmIndex, struct RtcTime \*time\); + +**Table 8** Description of RtcWriteAlarm + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

alarmIndex

+

Alarm index.

+

time

+

Pointer to the RTC alarm time information. The time information includes the year, month, the day of the week, day, hour, minute, second, and millisecond.

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>The RTC start time is 1970/01/01 Thursday 00:00:00 \(UTC\). The maximum value of **year** must be set based on the requirements specified in the product manual of the in-use component. You do not need to configure the day of the week. + +``` +int32_t ret; +struct RtcTime alarmTime; + +/* Set the RTC alarm time to 2020/01/01 00:59:59 .000. */ +alarmTime.year = 2020; +alarmTime.month = 01; +alarmTime.day = 01; +alarmTime.hour = 00; +alarmTime.minute = 59; +alarmTime.second = 59; +alarmTime.millisecond = 0; +/* Set the alarm time of alarm RTC_ALARM_INDEX_A. */ +ret = RtcWriteAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); +if (ret != 0) { + /* Process the error. */ +} +``` + +- Enabling or disabling alarm interrupts + +Before performing alarm operations, use the following function to enable alarm interrupts, so that **RtcAlarmCallback** will be called when the alarm is not generated upon a timeout: + +int32\_t RtcAlarmInterruptEnable\(DevHandle handle, enum RtcAlarmIndex alarmIndex, uint8\_t enable\); + +**Table 9** Description of RtcAlarmInterruptEnable + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

alarmIndex

+

Alarm index.

+

enable

+

Whether to enable RTC alarm interrupts. The value 1 means to enable alarm interrupts and 0 means to disable alarm interrupts.

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +``` +int32_t ret; + +/* Enable the RTC alarm interrupts. */ +ret = RtcAlarmInterruptEnable(handle, RTC_ALARM_INDEX_A, 1); +if (ret != 0) { + /* Process the error. */ +} +``` + +- Reading RTC external frequency + +Call the following function to read the frequency of the external crystal oscillator connected to the RTC driver: + +int32\_t RtcGetFreq\(DevHandle handle, uint32\_t \*freq\); + +**Table 10** Description of RtcGetFreq + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

freq

+

Pointer to the frequency to set for the external crystal oscillator, in Hz.

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +``` +int32_t ret; +uint32_t freq = 0; + +/* Read frequency of the external crystal oscillator connected to the RTC driver */ +ret = RtcGetFreq(handle, &freq); +if (ret != 0) { + /* Process the error. */ +} +``` + +- Setting the frequency of the external crystal oscillator connected to the RTC driver + +Call the following function to set the frequency of the external crystal oscillator connected to the RTC driver: + +int32\_t RtcSetFreq\(DevHandle handle, uint32\_t freq\); + +**Table 11** Description of RtcSetFreq + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

freq

+

Frequency to set for the external crystal oscillator, in Hz

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +``` +int32_t ret; +uint32_t freq = 32768; /* 32768 Hz */ + +/* Set the frequency of the external crystal oscillator. Note that the frequency must be configured in accordance with the requirements specified in the product manual of the in-use component. */ +ret = RtcSetFreq(handle, freq); +if (ret != 0) { + /* Process the error. */ +} +``` + +- Resetting the RTC driver + +Call the following function to perform a reset on the RTC driver \(after the reset, the registers are restored to the default values\): + +int32\_t RtcReset\(DevHandle handle\); + +**Table 12** Description of RtcReset + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +``` +int32_t ret; + +/* Reset the RTC driver. After the reset, the configuration registers are restored to the default values. */ +ret = RtcReset(handle); +if (ret != 0) { + /* Process the error. */ +} +``` + +- Reading the configuration of a custom RTC register + +Call the following function to read the configuration of a custom RTC register based on the register index \(one index corresponds to one byte of the configuration value\): + +int32\_t RtcReadReg\(DevHandle handle, uint8\_t usrDefIndex, uint8\_t \*value\); + +**Table 13** Description of RtcReadReg + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

usrDefIndex

+

Index of the custom register

+

value

+

Pointer to the register value

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +``` +int32_t ret; +uint8_t usrDefIndex = 0; /* Define index 0 for the first custom register. */ +uint8_t value = 0; + +/* Read the configuration of a custom RTC register based on the register index. One index corresponds to one byte of the configuration value. */ +ret = RtcReadReg(handle, usrDefIndex, &value); +if (ret != 0) { + /* Process the error. */ +} +``` + +- Setting the configuration of a custom RTC register + +Call the following function to configure a register based on the specified register index \(one index corresponds to one byte of the configuration value\): + +int32\_t RtcWriteReg\(DevHandle handle, uint8\_t usrDefIndex, uint8\_t value\); + +**Table 14** Description of RtcWriteReg + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

RTC device handle.

+

usrDefIndex

+

Index of the custom register

+

value

+

Register value

+

Return Value

+

Description

+

0

+

The operation is successful.

+

Negative value

+

The operation fails.

+
+ +``` +int32_t ret; +uint8_t usrDefIndex = 0; /* Define index 0 for the first custom register. */ +uint8_t value = 0x10; + +/* Configure a register based on the specified register index. One index corresponds to one byte of the configuration value. */ +ret = RtcWriteReg(handle, usrDefIndex, value); +if (ret != 0) { + /* Process the error. */ +} +``` + +## Usage Example + +This section describes the process of using RTC APIs: + +1. During the OS startup, the HDF identifies the RTC component in the system. +2. The HDF initializes and creates the RTC device. +3. You can perform operations on the RTC device by calling different APIs. +4. Call the **RtcClose** function to release the device handle and device resources. + +Example: + +``` +#include "rtc_if.h" +int32_t RtcAlarmACallback(enum RtcAlarmIndex alarmIndex) +{ + if (alarmIndex == RTC_ALARM_INDEX_A) { + /* Process alarm A. */ + printf("RTC Alarm A callback function\n\r"); + } else if (alarmIndex == RTC_ALARM_INDEX_B) { + /* Process alarm B. */ + printf("RTC Alarm B callback function\n\r"); + } else { + /* Process the error. */ + } + return 0; +} + +void RtcTestSample(void) +{ + int32_t ret; + struct RtcTime tm; + struct RtcTime alarmTime; + uint32_t freq; + DevHandle handle = NULL; + + /* Obtain the RTC device handle. */ + handle = RtcOpen(); + if (handle == NULL) { + /* Process the error. */ + } + /* Register RtcAlarmCallback for alarm A. */ + ret = RtcRegisterAlarmCallback(handle, RTC_ALARM_INDEX_A, RtcAlarmACallback); + if (ret != 0) { + /* Process the error. */ + } + /* Set the RTC external crystal frequency. Note that the frequency must be configured in accordance with the requirements specified in the product manual of the in-use component. */ + freq = 32768; /* 32768 Hz */ + ret = RtcSetFreq(handle, freq); + if (ret != 0) { + /* Process the error. */ + } + /* Enable the RTC alarm interrupts. */ + ret = RtcAlarmInterruptEnable(handle, RTC_ALARM_INDEX_A, 1); + if (ret != 0) { + /* Process the error. */ + } + /* Set the RTC time to 2020/01/01 00:00:10 .990. */ + tm.year = 2020; + tm.month = 01; + tm.day = 01; + tm.hour= 0; + tm.minute = 0; + tm.second = 10; + tm.millisecond = 990; + /* Write the RTC time information. */ + ret = RtcWriteTime(handle, &tm); + if (ret != 0) { + /* Process the error. */ + } + /* Set the RTC alarm time to 2020/01/01 00:00:30 .100. */ + alarmTime.year = 2020; + alarmTime.month = 01; + alarmTime.day = 01; + alarmTime.hour = 0; + alarmTime.minute = 0; + alarmTime.second = 30; + alarmTime.millisecond = 100; + /* Set the alarm time information for RTC_ALARM_INDEX_A. When the specified time is reached, "RTC Alarm A callback function" is printed. */ + ret = RtcWriteAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); + if (ret != 0) { + /* Process the error. */ + } + + /* Read the RTC real time. */ + ret = RtcReadTime(handle, &tm); + if (ret != 0) { + /* Process the error. */ + } + sleep(5) + printf("RTC read time:\n\r"); + printf("year-month-date-weekday hour:minute:second .millisecond %04u-%02u-%02u-%u %02u:%02u:%02u .%03u", + tm.year, tm.month, tm.day, tm.weekday, tm.hour, tm.minute, tm.second, tm.millisecond); + /* Release the RTC device handle. */ + RtcClose(handle); +} +``` diff --git a/en/device-dev/driver/sdio.md b/en/device-dev/driver/sdio.md index 43fb7620519..f286ab45ca7 100644 --- a/en/device-dev/driver/sdio.md +++ b/en/device-dev/driver/sdio.md @@ -1,9 +1,1068 @@ -# SDIO +# SDIO -- **[SDIO Overview](sdiooverview.md)** +- [Overview](#section1155271783811) + - [Available APIs](#section08064247248) -- **[SDIO Usage Guidelines](sdiousage-guidelines.md)** +- [Usage Guidelines](#section1878939192515) + - [How to Use](#section1490685512255) + - [Opening an SDIO Controller](#section10782428132616) + - [Claiming a Host Exclusively](#section11263172312715) + - [Enabling the SDIO Device](#section17861486271) + - [Claiming an SDIO IRQ](#section521213262286) + - [Performing SDIO Communication](#section85661522153420) + - [Releasing the SDIO IRQ](#section1683449352) + - [Disabling the SDIO Device](#section15379324143611) + - [Releasing the Exclusively Claimed Host](#section536018263713) + - [Closing an SDIO Controller](#section4752739183716) -- **[SDIO Usage Example](sdiousage-example.md)** +- [Usage Example](#section376910122382) +## Overview + +- Secure Digital Input/Output \(SDIO\) is a peripheral interface evolved from the Secure Digital \(SD\) memory card interface. The SDIO interface is compatible with SD memory cards and can be connected to devices that support the SDIO interface. +- SDIO is widely used. Currently, many smartphones support SDIO, and many SDIO peripherals are developed for connections to smartphones. Common SDIO peripherals include WLAN, GPS, cameras, and Bluetooth. +- The SDIO bus has two ends, named host and device. All communication starts when the host sends a command. The device can communicate with the host as long as it can parse the command of the host. An SDIO host can connect to multiple devices, as shown in the figure below. + + - CLK signal: clock signal sent from the host to the device + - VDD signal: power signal + - VSS signal: ground signal + - D0-3 signal: four data lines. The DAT1 signal cable is multiplexed as the interrupt line. In 1-bit mode, DAT0 is used to transmit data. In 4-bit mode, DAT0 to DAT3 are used to transmit data. + - CMD signal: used by the host to send commands and the device to respond to commands. + + **Figure 1** Connections between the host and devices in SDIO + + + ![](figures/en-us_image_0000001054280608.png) + +- The SDIO interface defines a set of common methods for operating an SDIO device, including opening and closing an SDIO controller, exclusively claiming and releasing the host, enabling and disabling devices, claiming and releasing an SDIO IRQ, reading and writing data based on SDIO, and obtaining and setting common information. + +### Available APIs + +**Table 1** APIs available for the SDIO driver + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Capability

+

Function

+

Description

+

SDIO device opening/closing

+

SdioOpen

+

Opens an SDIO controller with a specified bus number.

+

SdioClose

+

Closes an SDIO controller.

+

SDIO reading/writing

+

SdioReadBytes

+

Incrementally reads a given length of data from a specified SDIO address.

+

SdioWriteBytes

+

Incrementally writes a given length of data into a specified SDIO address.

+

SdioReadBytesFromFixedAddr

+

Reads a given length of data from a fixed SDIO address.

+

SdioWriteBytesToFixedAddr

+

Writes a given length of data into a fixed SDIO address.

+

SdioReadBytesFromFunc0

+

Reads a given length of data from the address space of SDIO function 0.

+

SdioWriteBytesToFunc0

+

Writes a given length of data into the address space of SDIO function 0.

+

SDIO block size setting

+

SdioSetBlockSize

+

Sets the block size.

+

SDIO common information retrieval/setting

+

SdioGetCommonInfo

+

Obtains common information.

+

SdioSetCommonInfo

+

Sets common information.

+

SDIO data flushing

+

SdioFlushData

+

Flushes data.

+

SDIO host exclusively claiming or releasing

+

SdioClaimHost

+

Claims a host exclusively.

+

SdioReleaseHost

+

Releases the exclusively claimed host.

+

SDIO device enablement

+

SdioEnableFunc

+

Enables an SDIO device.

+

SdioDisableFunc

+

Disables an SDIO device.

+

SDIO IRQ claiming/releasing

+

SdioClaimIrq

+

Claims an SDIO IRQ.

+

SdioReleaseIrq

+

Releases an SDIO IRQ.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>All functions provided in this document can be called only in kernel mode. + +## Usage Guidelines + +### How to Use + +[Figure 2](#fig1343742311264) illustrates the process of using an SDIO. + +**Figure 2** Process of using an SDIO + + +![](figures/en-us_image_0000001123540984.png) + +### Opening an SDIO Controller + +Before performing SDIO communication, obtain the device handle of an SDIO controller by calling **SdioOpen**. This function returns the device handle of the SDIO controller with a specified bus number. + +DevHandle SdioOpen\(int16\_t mmcBusNum, struct SdioFunctionConfig \*config\); + +**Table 2** Parameters and return values of SdioOpen + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

mmcBusNum

+

Bus number.

+

config

+

SDIO functionality configurations.

+

Return Value

+

Description

+

NULL

+

Failed to obtain the device handle of an SDIO controller.

+

Device handle

+

Device handle of an SDIO controller.

+
+ +The following example shows how to open an SDIO controller. + +``` +DevHandle handle = NULL; +struct SdioFunctionConfig config; +config.funcNr = 1; +config.vendorId = 0x123; +config.deviceId = 0x456; +/* Open an SDIO controller whose bus number is 1. */ +handle = SdioOpen(1, &config); +if (handle == NULL) { + HDF_LOGE("SdioOpen: failed!\n"); +} +``` + +### Claiming a Host Exclusively + +After obtaining the device handle of an SDIO controller, exclusively claim the host before performing subsequent operations on the SDIO device. + +void SdioClaimHost\(DevHandle handle\); + +**Table 3** Parameter description of SdioClaimHost + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+
+ +The following example shows how to exclusively claim a host. + +``` +SdioClaimHost(handle); /* Claim a host exclusively. */ +``` + +### Enabling the SDIO Device + +Before accessing a register, enable the SDIO device. + +int32\_t SdioEnableFunc\(DevHandle handle\); + +**Table 4** Parameters and return values of SdioEnableFunc + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

Return Value

+

Description

+

0

+

The SDIO device is enabled.

+

Negative value

+

Failed to enable the SDIO device.

+
+ +The following example shows how to enable the SDIO device. + +``` +int32_t ret; +/* Enable the SDIO device. */ +ret = SdioEnableFunc(handle); +if (ret != 0) { + HDF_LOGE("SdioEnableFunc: failed, ret %d\n", ret); +} +``` + +### Claiming an SDIO IRQ + +Before SDIO communication, claim an SDIO IRQ. + +int32\_t SdioClaimIrq\(DevHandle handle, SdioIrqHandler \*handler\); + +**Table 5** Parameters and return values of SdioClaimIrq + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

handler

+

Pointer to the SDIO IRQ function.

+

Return Value

+

Description

+

0

+

The SDIO IRQ is claimed.

+

Negative value

+

Failed to claim an SDIO IRQ.

+
+ +The following example shows how to claim an SDIO IRQ. + +``` +/* Implement the SDIO IRQ function based on the application. */ +static void SdioIrqFunc(void *data) +{ + if (data == NULL) { + HDF_LOGE("SdioIrqFunc: data is NULL.\n"); + return; + } + /* You need to add specific implementations. */ +} + +int32_t ret; +/* Claim an SDIO IRQ. */ +ret = SdioClaimIrq(handle, SdioIrqFunc); +if (ret != 0) { + HDF_LOGE("SdioClaimIrq: failed, ret %d\n", ret); +} +``` + +### Performing SDIO Communication + +- Incrementally write a given length of data into the SDIO device. + +The corresponding function is as follows: + +int32\_t SdioWriteBytes\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); + +**Table 6** Parameters and return values of SdioWriteBytes + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

data

+

Pointer to the data to write.

+

addr

+

Start address where the data is written into.

+

size

+

Length of the data to write.

+

Return Value

+

Description

+

0

+

Data is written into the SDIO device.

+

Negative value

+

Failed to write data into the SDIO device.

+
+ +The following example shows how to incrementally write a given length of data into the SDIO device. + +``` +int32_t ret; +uint8_t wbuff[] = {1,2,3,4,5}; +uint32_t addr = 0x100 + 0x09; +/* Incrementally write 5-byte data into the start address 0x109 of the SDIO device. */ +ret = SdioWriteBytes(handle, wbuff, addr, sizeof(wbuff) / sizeof(wbuff[0])); +if (ret != 0) { + HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); +} +``` + +- Incrementally read a given length of data from the SDIO device. + +The corresponding function is as follows: + +int32\_t SdioReadBytes\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); + +**Table 7** Parameters and return values of SdioReadBytes + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

data

+

Pointer to the data to read.

+

addr

+

Start address where the data is read from.

+

size

+

Length of the data to read.

+

Return Value

+

Description

+

0

+

Data is read from the SDIO device.

+

Negative value

+

Failed to read data from the SDIO device.

+
+ +The following example shows how to incrementally read a given length of data from the SDIO device. + +``` +int32_t ret; +uint8_t rbuff[5] = {0}; +uint32_t addr = 0x100 + 0x09; +/* Incrementally read 5-byte data from the start address 0x109 of the SDIO device. */ +ret = SdioReadBytes(handle, rbuff, addr, 5); +if (ret != 0) { + HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); +} +``` + +- Write a given length of data into the fixed address of an SDIO device. + + The corresponding function is as follows: + + int32\_t SdioWriteBytesToFixedAddr\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size, uint32\_t scatterLen\); + + **Table 8** Parameters and return values of SdioWriteBytesToFixedAddr + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

data

+

Pointer to the data to write.

+

addr

+

Fixed address where the data is written into.

+

size

+

Length of the data to write.

+

scatterLen

+

Length of the scatter list. If the value is not 0, the data is of the scatter list type.

+

Return Value

+

Description

+

0

+

Data is written into the SDIO device.

+

Negative value

+

Failed to write data into the SDIO device.

+
+ + The following example shows how to write a given length of data into the fixed address of an SDIO device. + + ``` + int32_t ret; + uint8_t wbuff[] = {1, 2, 3, 4, 5}; + uint32_t addr = 0x100 + 0x09; + /* Write 5-byte data into the fixed address 0x109 of the SDIO device. */ + ret = SdioWriteBytesToFixedAddr(handle, wbuff, addr, sizeof(wbuff) / sizeof(wbuff[0]), 0); + if (ret != 0) { + HDF_LOGE("SdioWriteBytesToFixedAddr: failed, ret %d\n", ret); + } + ``` + +- Read a given length of data from the fixed address of an SDIO device. + + The corresponding function is as follows: + + int32\_t SdioReadBytesFromFixedAddr\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size, uint32\_t scatterLen\); + + **Table 9** Parameters and return values of SdioReadBytesFromFixedAddr + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

data

+

Pointer to the data to read.

+

addr

+

Start address where the data is read from.

+

size

+

Length of the data to read.

+

scatterLen

+

Length of the scatter list. If the value is not 0, the data is of the scatter list type.

+

Return Value

+

Description

+

0

+

Data is read from the SDIO device.

+

Negative value

+

Failed to read data from the SDIO device.

+
+ + The following example shows how to read a given length of data from the fixed address of an SDIO device. + + ``` + int32_t ret; + uint8_t rbuff[5] = {0}; + uint32_t addr = 0x100 + 0x09; + /* Read 5-byte data from the fixed address 0x109 of the SDIO device. */ + ret = SdioReadBytesFromFixedAddr(handle, rbuff, addr, 5, 0); + if (ret != 0) { + HDF_LOGE("SdioReadBytesFromFixedAddr: failed, ret %d\n", ret); + } + ``` + + +- Writes a given length of data into the address space of SDIO function 0. + +Currently, only 1-byte data can be written. The corresponding function is as follows: + +int32\_t SdioWriteBytesToFunc0\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); + +**Table 10** Parameters and return values of SdioWriteBytesToFunc0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

data

+

Pointer to the data to write.

+

addr

+

Start address where the data is written into.

+

size

+

Length of the data to write.

+

Return Value

+

Description

+

0

+

Data is written into the SDIO device.

+

Negative value

+

Failed to write data into the SDIO device.

+
+ +The following example shows how to write a given length of data into the address space of SDIO function 0. + +``` +int32_t ret; +uint8_t wbuff = 1; +/* Write 1-byte data into the address 0x2 of SDIO function 0. */ +ret = SdioWriteBytesToFunc0(handle, &wbuff, 0x2, 1); +if (ret != 0) { + HDF_LOGE("SdioWriteBytesToFunc0: failed, ret %d\n", ret); +} +``` + +- Reads a given length of data from the address space of SDIO function 0. + +Currently, only 1-byte data can be read. The corresponding function is as follows: + +int32\_t SdioReadBytesFromFunc0\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); + +**Table 11** Parameters and return values of SdioReadBytesFromFunc0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

data

+

Pointer to the data to read.

+

addr

+

Start address where the data is read from.

+

size

+

Length of the data to read.

+

Return Value

+

Description

+

0

+

Data is read from the SDIO device.

+

Negative value

+

Failed to read data from the SDIO device.

+
+ +The following example shows how to read a given length of data from the address space of SDIO function 0. + +``` +int32_t ret; +uint8_t rbuff; +/* Read 1-byte data from the address 0x2 of SDIO function 0. */ +ret = SdioReadBytesFromFunc0(handle, &rbuff, 0x2, 1); +if (ret != 0) { + HDF_LOGE("SdioReadBytesFromFunc0: failed, ret %d\n", ret); +} +``` + +### Releasing the SDIO IRQ + +After the SDIO communication, release the SDIO IRQ. + +int32\_t SdioReleaseIrq\(DevHandle handle\); + +**Table 12** Parameters and return values of SdioReleaseIrq + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

Return Value

+

Description

+

0

+

The SDIO IRQ is released.

+

Negative value

+

Failed to release the SDIO IRQ.

+
+ +The following example shows how to release the SDIO IRQ. + +``` +int32_t ret; +/* Release the SDIO IRQ. */ +ret = SdioReleaseIrq(handle); +if (ret != 0) { + HDF_LOGE("SdioReleaseIrq: failed, ret %d\n", ret); +} +``` + +### Disabling the SDIO Device + +After the SDIO communication, disable the SDIO device. + +int32\_t SdioDisableFunc\(DevHandle handle\); + +**Table 13** Parameters and return values of SdioDisableFunc + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+

Return Value

+

Description

+

0

+

The SDIO device is disabled.

+

Negative value

+

Failed to disable the SDIO device.

+
+ +The following example shows how to disable the SDIO device. + +``` +int32_t ret; +/* Disable the SDIO device. */ +ret = SdioDisableFunc(handle); +if (ret != 0) { + HDF_LOGE("SdioDisableFunc: failed, ret %d\n", ret); +} +``` + +### Releasing the Exclusively Claimed Host + +After the SDIO communication, release the exclusively claimed host. + +void SdioReleaseHost\(DevHandle handle\); + +**Table 14** Parameter description of SdioReleaseHost + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+
+ +The following example shows how to release the exclusively claimed host. + +``` +SdioReleaseHost(handle); /* Release the exclusively claimed host. */ +``` + +### Closing an SDIO Controller + +After the SDIO communication, close the SDIO controller. + +void SdioClose\(DevHandle handle\); + +This function releases the resources requested. + +**Table 15** Parameter description of SdioClose + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Device handle of an SDIO controller.

+
+ +The following example shows how to close an SDIO controller. + +``` +SdioClose(handle); /* Close an SDIO controller. */ +``` + +## Usage Example + +The following example shows how to use an SDIO device. First, open an SDIO controller whose bus number is 1, exclusively claim a host, enable the SDIO device, claim an SDIO IRQ, and then perform SDIO communication \(such as reading and writing\). After the SDIO communication, release the SDIO IRQ, disable the SDIO device, release the host, and close the SDIO controller. + +``` +#include "hdf_log.h" +#include "sdio_if.h" + +#define TEST_FUNC_NUM 1 /* The I/O function whose ID is 1 is used. */ +#define TEST_FBR_BASE_ADDR 0x100 /* FBR base address of the I/O function whose ID is 1 */ +#define TEST_ADDR_OFFSET 9 /* Address offset of the register to read or write */ +#define TEST_DATA_LEN 3 /* Length of the data to read or write */ +#define TEST_BLOCKSIZE 2 /* Size of a data block, in bytes */ + +/* Implement the SDIO IRQ function based on the application. */ +static void SdioIrqFunc(void *data) +{ + if (data == NULL) { + HDF_LOGE("SdioIrqFunc: data is NULL.\n"); + return; + } + /* You need to add specific implementations. */ +} + +void SdioTestSample(void) +{ + int32_t ret; + DevHandle handle = NULL; + uint8_t data[TEST_DATA_LEN] = {0}; + struct SdioFunctionConfig config = {1, 0x123, 0x456}; + uint8_t val; + uint32_t addr; + + /* Open an SDIO controller whose bus number is 1. */ + handle = SdioOpen(1, &config); + if (handle == NULL) { + HDF_LOGE("SdioOpen: failed!\n"); + return; + } + /* Claim a host exclusively. */ + SdioClaimHost(handle); + /* Enable the SDIO device. */ + ret = SdioEnableFunc(handle); + if (ret != 0) { + HDF_LOGE("SdioEnableFunc: failed, ret %d\n", ret); + goto ENABLE_ERR; + } + /* Claim an SDIO IRQ. */ + ret = SdioClaimIrq(handle, SdioIrqFunc); + if (ret != 0) { + HDF_LOGE("SdioClaimIrq: failed, ret %d\n", ret); + goto CLAIM_IRQ_ERR; + } + /* Set the block size to 2 bytes. */ + ret = SdioSetBlockSize(handle, TEST_BLOCKSIZE); + if (ret != 0) { + HDF_LOGE("SdioSetBlockSize: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* Read 3-byte data from the incremental address of an SDIO device. */ + addr = TEST_FBR_BASE_ADDR * TEST_FUNC_NUM + TEST_ADDR_OFFSET; + ret = SdioReadBytes(handle, data, addr, TEST_DATA_LEN); + if (ret != 0) { + HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* Write 3-byte data into the incremental address of an SDIO device. */ + ret = SdioWriteBytes(handle, data, addr, TEST_DATA_LEN); + if (ret != 0) { + HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* Read 1-byte data from the SDIO device. */ + ret = SdioReadBytes(handle, &val, addr, 1); + if (ret != 0) { + HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* Write 1-byte data into the SDIO device. */ + ret = SdioWriteBytes(handle, &val, addr, 1); + if (ret != 0) { + HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* Read 3-byte data from the fixed address of an SDIO device. */ + ret = SdioReadBytesFromFixedAddr(handle, data, addr, TEST_DATA_LEN, 0); + if (ret != 0) { + HDF_LOGE("SdioReadBytesFromFixedAddr: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* Write 1-byte data to the fixed address of an SDIO device. */ + ret = SdioWriteBytesToFixedAddr(handle, data, addr, 1, 0); + if (ret != 0) { + HDF_LOGE("SdioWriteBytesToFixedAddr: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* Read 1-byte data from SDIO function 0. */ + addr = 0x02; + ret = SdioReadBytesFromFunc0(handle, &val, addr, 1); + if (ret != 0) { + HDF_LOGE("SdioReadBytesFromFunc0: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* Write 1-byte data into SDIO function 0. */ + ret = SdioWriteBytesToFunc0(handle, &val, addr, 1); + if (ret != 0) { + HDF_LOGE("SdioWriteBytesToFunc0: failed, ret %d\n", ret); + goto COMM_ERR; + } +COMM_ERR: + /* Release the SDIO IRQ. */ + ret = SdioReleaseIrq(handle); + if (ret != 0) { + HDF_LOGE("SdioReleaseIrq: failed, ret %d\n", ret); + } +CLAIM_IRQ_ERR: + /* Disable the SDIO device. */ + ret = SdioDisableFunc(handle); + if (ret != 0) { + HDF_LOGE("SdioDisableFunc: failed, ret %d\n", ret); + } +ENABLE_ERR: + /* Release the exclusively claimed host. */ + SdioReleaseHost(handle); + /* Close an SDIO controller. */ + SdioClose(handle); +} +``` diff --git a/en/device-dev/driver/sdiooverview.md b/en/device-dev/driver/sdiooverview.md deleted file mode 100644 index 9890cf8f3c6..00000000000 --- a/en/device-dev/driver/sdiooverview.md +++ /dev/null @@ -1,149 +0,0 @@ -# SDIO Overview - -- [Introduction](#section1155271783811) -- [Available APIs](#section10204143763819) - -## Introduction - -- Secure Digital Input/Output \(SDIO\) is a peripheral interface evolved from the Secure Digital \(SD\) memory card interface. The SDIO interface is compatible with SD memory cards and can be connected to devices that support the SDIO interface. -- SDIO is widely used. Currently, many smartphones support SDIO, and many SDIO peripherals are developed for connections to smartphones. Common SDIO peripherals include WLAN, GPS, cameras, and Bluetooth. -- The SDIO bus has two ends, named host and device. All communication starts when the host sends a command. The device can communicate with the host as long as it can parse the command of the host. An SDIO host can connect to multiple devices, as shown in the figure below. - - - CLK signal: clock signal sent from the host to the device - - VDD signal: power signal - - VSS signal: ground signal - - D0-3 signal: four data lines. The DAT1 signal cable is multiplexed as the interrupt line. In 1-bit mode, DAT0 is used to transmit data. In 4-bit mode, DAT0 to DAT3 are used to transmit data. - - CMD signal: used by the host to send commands and the device to respond to commands. - - **Figure 1** Connections between the host and devices in SDIO - - - ![](figures/en-us_image_0000001054280608.png) - -- The SDIO interface defines a set of common methods for operating an SDIO device, including opening and closing an SDIO controller, exclusively claiming and releasing the host, enabling and disabling devices, claiming and releasing an SDIO IRQ, reading and writing data based on SDIO, and obtaining and setting common information. - -## Available APIs - -**Table 1** APIs available for the SDIO driver - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Capability

-

Function

-

Description

-

SDIO device opening/closing

-

SdioOpen

-

Opens an SDIO controller with a specified bus number.

-

SdioClose

-

Closes an SDIO controller.

-

SDIO reading/writing

-

SdioReadBytes

-

Incrementally reads a given length of data from a specified SDIO address.

-

SdioWriteBytes

-

Incrementally writes a given length of data into a specified SDIO address.

-

SdioReadBytesFromFixedAddr

-

Reads a given length of data from a fixed SDIO address.

-

SdioWriteBytesToFixedAddr

-

Writes a given length of data into a fixed SDIO address.

-

SdioReadBytesFromFunc0

-

Reads a given length of data from the address space of SDIO function 0.

-

SdioWriteBytesToFunc0

-

Writes a given length of data into the address space of SDIO function 0.

-

SDIO block size setting

-

SdioSetBlockSize

-

Sets the block size.

-

SDIO common information retrieval/setting

-

SdioGetCommonInfo

-

Obtains common information.

-

SdioSetCommonInfo

-

Sets common information.

-

SDIO data flushing

-

SdioFlushData

-

Flushes data.

-

SDIO host exclusively claiming or releasing

-

SdioClaimHost

-

Claims a host exclusively.

-

SdioReleaseHost

-

Releases the exclusively claimed host.

-

SDIO device enablement

-

SdioEnableFunc

-

Enables an SDIO device.

-

SdioDisableFunc

-

Disables an SDIO device.

-

SDIO IRQ claiming/releasing

-

SdioClaimIrq

-

Claims an SDIO IRQ.

-

SdioReleaseIrq

-

Releases an SDIO IRQ.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->All functions provided in this document can be called only in kernel mode. - diff --git a/en/device-dev/driver/sdiousage-example.md b/en/device-dev/driver/sdiousage-example.md deleted file mode 100644 index 558f4cf1912..00000000000 --- a/en/device-dev/driver/sdiousage-example.md +++ /dev/null @@ -1,129 +0,0 @@ -# SDIO Usage Example - -The following example shows how to use an SDIO device. First, open an SDIO controller whose bus number is 1, exclusively claim a host, enable the SDIO device, claim an SDIO IRQ, and then perform SDIO communication \(such as reading and writing\). After the SDIO communication, release the SDIO IRQ, disable the SDIO device, release the host, and close the SDIO controller. - -``` -#include "hdf_log.h" -#include "sdio_if.h" - -#define TEST_FUNC_NUM 1 /* The I/O function whose ID is 1 is used. */ -#define TEST_FBR_BASE_ADDR 0x100 /* FBR base address of the I/O function whose ID is 1 */ -#define TEST_ADDR_OFFSET 9 /* Address offset of the register to read or write */ -#define TEST_DATA_LEN 3 /* Length of the data to read or write */ -#define TEST_BLOCKSIZE 2 /* Size of a data block, in bytes */ - -/* Implement the SDIO IRQ function based on the application. */ -static void SdioIrqFunc(void *data) -{ - if (data == NULL) { - HDF_LOGE("SdioIrqFunc: data is NULL.\n"); - return; - } - /* You need to add specific implementations. */ -} - -void SdioTestSample(void) -{ - int32_t ret; - DevHandle handle = NULL; - uint8_t data[TEST_DATA_LEN] = {0}; - struct SdioFunctionConfig config = {1, 0x123, 0x456}; - uint8_t val; - uint32_t addr; - - /* Open an SDIO controller whose bus number is 1. */ - handle = SdioOpen(1, &config); - if (handle == NULL) { - HDF_LOGE("SdioOpen: failed!\n"); - return; - } - /* Claim a host exclusively. */ - SdioClaimHost(handle); - /* Enable the SDIO device. */ - ret = SdioEnableFunc(handle); - if (ret != 0) { - HDF_LOGE("SdioEnableFunc: failed, ret %d\n", ret); - goto ENABLE_ERR; - } - /* Claim an SDIO IRQ. */ - ret = SdioClaimIrq(handle, SdioIrqFunc); - if (ret != 0) { - HDF_LOGE("SdioClaimIrq: failed, ret %d\n", ret); - goto CLAIM_IRQ_ERR; - } - /* Set the block size to 2 bytes. */ - ret = SdioSetBlockSize(handle, TEST_BLOCKSIZE); - if (ret != 0) { - HDF_LOGE("SdioSetBlockSize: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* Read 3-byte data from the incremental address of an SDIO device. */ - addr = TEST_FBR_BASE_ADDR * TEST_FUNC_NUM + TEST_ADDR_OFFSET; - ret = SdioReadBytes(handle, data, addr, TEST_DATA_LEN); - if (ret != 0) { - HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* Write 3-byte data into the incremental address of an SDIO device. */ - ret = SdioWriteBytes(handle, data, addr, TEST_DATA_LEN); - if (ret != 0) { - HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* Read 1-byte data from the SDIO device. */ - ret = SdioReadBytes(handle, &val, addr, 1); - if (ret != 0) { - HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* Write 1-byte data into the SDIO device. */ - ret = SdioWriteBytes(handle, &val, addr, 1); - if (ret != 0) { - HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* Read 3-byte data from the fixed address of an SDIO device. */ - ret = SdioReadBytesFromFixedAddr(handle, data, addr, TEST_DATA_LEN, 0); - if (ret != 0) { - HDF_LOGE("SdioReadBytesFromFixedAddr: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* Write 1-byte data to the fixed address of an SDIO device. */ - ret = SdioWriteBytesToFixedAddr(handle, data, addr, 1, 0); - if (ret != 0) { - HDF_LOGE("SdioWriteBytesToFixedAddr: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* Read 1-byte data from SDIO function 0. */ - addr = 0x02; - ret = SdioReadBytesFromFunc0(handle, &val, addr, 1); - if (ret != 0) { - HDF_LOGE("SdioReadBytesFromFunc0: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* Write 1-byte data into SDIO function 0. */ - ret = SdioWriteBytesToFunc0(handle, &val, addr, 1); - if (ret != 0) { - HDF_LOGE("SdioWriteBytesToFunc0: failed, ret %d\n", ret); - goto COMM_ERR; - } -COMM_ERR: - /* Release the SDIO IRQ. */ - ret = SdioReleaseIrq(handle); - if (ret != 0) { - HDF_LOGE("SdioReleaseIrq: failed, ret %d\n", ret); - } -CLAIM_IRQ_ERR: - /* Disable the SDIO device. */ - ret = SdioDisableFunc(handle); - if (ret != 0) { - HDF_LOGE("SdioDisableFunc: failed, ret %d\n", ret); - } -ENABLE_ERR: - /* Release the exclusively claimed host. */ - SdioReleaseHost(handle); - /* Close an SDIO controller. */ - SdioClose(handle); -} -``` - diff --git a/en/device-dev/driver/sdiousage-guidelines.md b/en/device-dev/driver/sdiousage-guidelines.md deleted file mode 100644 index 402cf305ebb..00000000000 --- a/en/device-dev/driver/sdiousage-guidelines.md +++ /dev/null @@ -1,787 +0,0 @@ -# SDIO Usage Guidelines - -- [How to Use](#section1962415610383) -- [Opening an SDIO Controller](#section814751015461) -- [Claiming a Host Exclusively](#section49274582455) -- [Enabling the SDIO Device](#section1431520410489) -- [Claiming an SDIO IRQ](#section3662781537) -- [Performing SDIO Communication](#section391941913484) -- [Releasing the SDIO IRQ](#section56205204481) -- [Disabling the SDIO Device](#section181181621124815) -- [Releasing the Exclusively Claimed Host](#section657117215486) -- [Closing an SDIO Controller](#section1898172114818) - -## How to Use - -[Figure 1](spiusage-guidelines.md#fig23885455594) illustrates the process of using an SDIO. - -**Figure 1** Process of using an SDIO - - -![](figures/en-us_image_0000001054440624.png) - -## Opening an SDIO Controller - -Before performing SDIO communication, obtain the device handle of an SDIO controller by calling **SdioOpen**. This function returns the device handle of the SDIO controller with a specified bus number. - -DevHandle SdioOpen\(int16\_t mmcBusNum, struct SdioFunctionConfig \*config\); - -**Table 1** Parameters and return values of SdioOpen - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

mmcBusNum

-

Bus number.

-

config

-

SDIO functionality configurations.

-

Return Value

-

Description

-

NULL

-

Failed to obtain the device handle of an SDIO controller.

-

Device handle

-

Device handle of an SDIO controller.

-
- -The following example shows how to open an SDIO controller. - -``` -DevHandle handle = NULL; -struct SdioFunctionConfig config; -config.funcNr = 1; -config.vendorId = 0x123; -config.deviceId = 0x456; -/* Open an SDIO controller whose bus number is 1. */ -handle = SdioOpen(1, &config); -if (handle == NULL) { - HDF_LOGE("SdioOpen: failed!\n"); -} -``` - -## Claiming a Host Exclusively - -After obtaining the device handle of an SDIO controller, exclusively claim the host before performing subsequent operations on the SDIO device. - -void SdioClaimHost\(DevHandle handle\); - -**Table 2** Parameter description of SdioClaimHost - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-
- -The following example shows how to exclusively claim a host. - -``` -SdioClaimHost(handle); /* Claim a host exclusively. */ -``` - -## Enabling the SDIO Device - -Before accessing a register, enable the SDIO device. - -int32\_t SdioEnableFunc\(DevHandle handle\); - -**Table 3** Parameters and return values of SdioEnableFunc - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

Return Value

-

Description

-

0

-

The SDIO device is enabled.

-

Negative value

-

Failed to enable the SDIO device.

-
- -The following example shows how to enable the SDIO device. - -``` -int32_t ret; -/* Enable the SDIO device. */ -ret = SdioEnableFunc(handle); -if (ret != 0) { - HDF_LOGE("SdioEnableFunc: failed, ret %d\n", ret); -} -``` - -## Claiming an SDIO IRQ - -Before SDIO communication, claim an SDIO IRQ. - -int32\_t SdioClaimIrq\(DevHandle handle, SdioIrqHandler \*handler\); - -**Table 4** Parameters and return values of SdioClaimIrq - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

handler

-

Pointer to the SDIO IRQ function.

-

Return Value

-

Description

-

0

-

The SDIO IRQ is claimed.

-

Negative value

-

Failed to claim an SDIO IRQ.

-
- -The following example shows how to claim an SDIO IRQ. - -``` -/* Implement the SDIO IRQ function based on the application. */ -static void SdioIrqFunc(void *data) -{ - if (data == NULL) { - HDF_LOGE("SdioIrqFunc: data is NULL.\n"); - return; - } - /* You need to add specific implementations. */ -} - -int32_t ret; -/* Claim an SDIO IRQ. */ -ret = SdioClaimIrq(handle, SdioIrqFunc); -if (ret != 0) { - HDF_LOGE("SdioClaimIrq: failed, ret %d\n", ret); -} -``` - -## Performing SDIO Communication - -- Incrementally write a given length of data into the SDIO device. - -The corresponding function is as follows: - -int32\_t SdioWriteBytes\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); - -**Table 5** Parameters and return values of SdioWriteBytes - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

data

-

Pointer to the data to write.

-

addr

-

Start address where the data is written into.

-

size

-

Length of the data to write.

-

Return Value

-

Description

-

0

-

Data is written into the SDIO device.

-

Negative value

-

Failed to write data into the SDIO device.

-
- -The following example shows how to incrementally write a given length of data into the SDIO device. - -``` -int32_t ret; -uint8_t wbuff[] = {1,2,3,4,5}; -uint32_t addr = 0x100 + 0x09; -/* Incrementally write 5-byte data into the start address 0x109 of the SDIO device. */ -ret = SdioWriteBytes(handle, wbuff, addr, sizeof(wbuff) / sizeof(wbuff[0])); -if (ret != 0) { - HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); -} -``` - -- Incrementally read a given length of data from the SDIO device. - -The corresponding function is as follows: - -int32\_t SdioReadBytes\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); - -**Table 6** Parameters and return values of SdioReadBytes - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

data

-

Pointer to the data to read.

-

addr

-

Start address where the data is read from.

-

size

-

Length of the data to read.

-

Return Value

-

Description

-

0

-

Data is read from the SDIO device.

-

Negative value

-

Failed to read data from the SDIO device.

-
- -The following example shows how to incrementally read a given length of data from the SDIO device. - -``` -int32_t ret; -uint8_t rbuff[5] = {0}; -uint32_t addr = 0x100 + 0x09; -/* Incrementally read 5-byte data from the start address 0x109 of the SDIO device. */ -ret = SdioReadBytes(handle, rbuff, addr, 5); -if (ret != 0) { - HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); -} -``` - -- Write a given length of data into the fixed address of an SDIO device. - - The corresponding function is as follows: - - int32\_t SdioWriteBytesToFixedAddr\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size, uint32\_t scatterLen\); - - **Table 7** Parameters and return values of SdioWriteBytesToFixedAddr - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

data

-

Pointer to the data to write.

-

addr

-

Fixed address where the data is written into.

-

size

-

Length of the data to write.

-

scatterLen

-

Length of the scatter list. If the value is not 0, the data is of the scatter list type.

-

Return Value

-

Description

-

0

-

Data is written into the SDIO device.

-

Negative value

-

Failed to write data into the SDIO device.

-
- - The following example shows how to write a given length of data into the fixed address of an SDIO device. - - ``` - int32_t ret; - uint8_t wbuff[] = {1, 2, 3, 4, 5}; - uint32_t addr = 0x100 + 0x09; - /* Write 5-byte data into the fixed address 0x109 of the SDIO device. */ - ret = SdioWriteBytesToFixedAddr(handle, wbuff, addr, sizeof(wbuff) / sizeof(wbuff[0]), 0); - if (ret != 0) { - HDF_LOGE("SdioWriteBytesToFixedAddr: failed, ret %d\n", ret); - } - ``` - -- Read a given length of data from the fixed address of an SDIO device. - - The corresponding function is as follows: - - int32\_t SdioReadBytesFromFixedAddr\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size, uint32\_t scatterLen\); - - **Table 8** Parameters and return values of SdioReadBytesFromFixedAddr - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

data

-

Pointer to the data to read.

-

addr

-

Start address where the data is read from.

-

size

-

Length of the data to read.

-

scatterLen

-

Length of the scatter list. If the value is not 0, the data is of the scatter list type.

-

Return Value

-

Description

-

0

-

Data is read from the SDIO device.

-

Negative value

-

Failed to read data from the SDIO device.

-
- - The following example shows how to read a given length of data from the fixed address of an SDIO device. - - ``` - int32_t ret; - uint8_t rbuff[5] = {0}; - uint32_t addr = 0x100 + 0x09; - /* Read 5-byte data from the fixed address 0x109 of the SDIO device. */ - ret = SdioReadBytesFromFixedAddr(handle, rbuff, addr, 5, 0); - if (ret != 0) { - HDF_LOGE("SdioReadBytesFromFixedAddr: failed, ret %d\n", ret); - } - ``` - - -- Write a given length of data into the address space of SDIO function 0. - -Currently, only 1-byte data can be written. The corresponding function is as follows: - -int32\_t SdioWriteBytesToFunc0\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); - -**Table 9** Parameters and return values of SdioWriteBytesToFunc0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

data

-

Pointer to the data to write.

-

addr

-

Start address where the data is written into.

-

size

-

Length of the data to write.

-

Return Value

-

Description

-

0

-

Data is written into the SDIO device.

-

Negative value

-

Failed to write data into the SDIO device.

-
- -The following example shows how to write a given length of data into the address space of SDIO function 0. - -``` -int32_t ret; -uint8_t wbuff = 1; -/* Write 1-byte data into the address 0x2 of SDIO function 0. */ -ret = SdioWriteBytesToFunc0(handle, &wbuff, 0x2, 1); -if (ret != 0) { - HDF_LOGE("SdioWriteBytesToFunc0: failed, ret %d\n", ret); -} -``` - -- Read a given length of data from the address space of SDIO function 0. - -Currently, only 1-byte data can be read. The corresponding function is as follows: - -int32\_t SdioReadBytesFromFunc0\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); - -**Table 10** Parameters and return values of SdioReadBytesFromFunc0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

data

-

Pointer to the data to read.

-

addr

-

Start address where the data is read from.

-

size

-

Length of the data to read.

-

Return Value

-

Description

-

0

-

Data is read from the SDIO device.

-

Negative value

-

Failed to read data from the SDIO device.

-
- -The following example shows how to read a given length of data from the address space of SDIO function 0. - -``` -int32_t ret; -uint8_t rbuff; -/* Read 1-byte data from the address 0x2 of SDIO function 0. */ -ret = SdioReadBytesFromFunc0(handle, &rbuff, 0x2, 1); -if (ret != 0) { - HDF_LOGE("SdioReadBytesFromFunc0: failed, ret %d\n", ret); -} -``` - -## Releasing the SDIO IRQ - -After the SDIO communication, release the SDIO IRQ. - -int32\_t SdioReleaseIrq\(DevHandle handle\); - -**Table 11** Parameters and return values of SdioReleaseIrq - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

Return Value

-

Description

-

0

-

The SDIO IRQ is released.

-

Negative value

-

Failed to release the SDIO IRQ.

-
- -The following example shows how to release the SDIO IRQ. - -``` -int32_t ret; -/* Release the SDIO IRQ. */ -ret = SdioReleaseIrq(handle); -if (ret != 0) { - HDF_LOGE("SdioReleaseIrq: failed, ret %d\n", ret); -} -``` - -## Disabling the SDIO Device - -After the SDIO communication, disable the SDIO device. - -int32\_t SdioDisableFunc\(DevHandle handle\); - -**Table 12** Parameters and return values of SdioDisableFunc - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-

Return Value

-

Description

-

0

-

The SDIO device is disabled.

-

Negative value

-

Failed to disable the SDIO device.

-
- -The following example shows how to disable the SDIO device. - -``` -int32_t ret; -/* Disable the SDIO device. */ -ret = SdioDisableFunc(handle); -if (ret != 0) { - HDF_LOGE("SdioDisableFunc: failed, ret %d\n", ret); -} -``` - -## Releasing the Exclusively Claimed Host - -After the SDIO communication, release the exclusively claimed host. - -void SdioReleaseHost\(DevHandle handle\); - -**Table 13** Parameter description of SdioReleaseHost - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-
- -The following example shows how to release the exclusively claimed host. - -``` -SdioReleaseHost(handle); /* Release the exclusively claimed host. */ -``` - -## Closing an SDIO Controller - -After the SDIO communication, close the SDIO controller. - -void SdioClose\(DevHandle handle\); - -This function releases the resources requested. - -**Table 14** Parameter description of SdioClose - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Device handle of an SDIO controller.

-
- -The following example shows how to close an SDIO controller. - -``` -SdioClose(handle); /* Close an SDIO controller. */ -``` - diff --git a/en/device-dev/driver/sensor-driver-development-example.md b/en/device-dev/driver/sensor-driver-development-example.md deleted file mode 100644 index acab2c70f8f..00000000000 --- a/en/device-dev/driver/sensor-driver-development-example.md +++ /dev/null @@ -1,583 +0,0 @@ -# Sensor Driver Development Example - -This section provides a code example of how to load and start the acceleration sensor driver based on the HDF driver model. For details about the mechanism, see [HDF Driver Development](driver-development.md). This example uses the Bosch BMI160 acceleration sensor that communicates over I2C. - -1. Register the driver entry of the acceleration sensor. - -- Implementation of the entry function - -``` -/* Register the entry structure object of the acceleration sensor. */ -struct HdfDriverEntry g_sensorAccelDevEntry = { - .moduleVersion = 1, /* Version number of the acceleration sensor module */ - .moduleName = "HDF_SENSOR_ACCEL", /* Name of the acceleration sensor module. The value must be the same as that of moduleName in the device_info.hcs file. */ - .Bind = BindAccelDriver, /* Binding function of the acceleration sensor */ - .Init = InitAccelDriver, /* Initialization function of the acceleration sensor */ - .Release = ReleaseAccelDriver, /* Resource release function of the acceleration sensor */ -}; - -/* Call HDF_INIT to register the driver entry with the HDF. When loading the driver, the HDF calls the Bind function first and then the Init function. If the Init function fails to be called, the HDF will call Release to release the driver resource and exit. -HDF_INIT(g_sensorAccelDevEntry); -``` - -- Acceleration sensor configuration - -The acceleration sensor model uses the HCS as the configuration source code. For details about the HCS configuration fields, see [Driver Configuration Management](driver-configuration-management.md). - -``` -/* HCS configuration of the acceleration sensor device */ -device_sensor_accel :: device { - device0 :: deviceNode { - policy = 1; /* Policy for providing the driver service */ - priority = 105; /* Driver startup priority (0–200). A larger value indicates a lower priority. The default value 100 is recommended. The sequence for loading devices with the same priority is random. */ - preload = 2; /* Field for specifying whether to load the driver. Value 0 means to load the driver, and 2 means the opposite. */ - permission = 0664; /* Permission for the driver to create device nodes */ - moduleName = "HDF_SENSOR_ACCEL"; /* Driver name. The value must be the same as that of moduleName in the driver entry structure. */ - serviceName = "sensor_accel"; /* Name of the service provided by the driver. The name must be unique. */ - deviceMatchAttr = "hdf_sensor_accel_driver"; /* Keyword matching the private data of the driver. The value must be the same as that of match_attr in the private data configuration table of the driver. */ - } -} -``` - -1. Initialize and deinitialize the acceleration sensor driver. - -- Initialization entry function **init** - -``` -/* Bind the service provided by the acceleration sensor driver to the HDF. */ -int32_t BindAccelDriver(struct HdfDeviceObject *device) -{ - CHECK_NULL_PTR_RETURN_VALUE(device, HDF_ERR_INVALID_PARAM); - - static struct IDeviceIoService service = { - .object = {0}, - .Dispatch = DispatchAccel, - }; - device->service = &service; - - return HDF_SUCCESS; -} -/* After detecting that the device is in position, call RegisterAccelChipOps to register the differentiation adaptation function. */ -int32_t RegisterAccelChipOps(struct AccelOpsCall *ops) -{ - struct AccelDrvData *drvData = NULL; - - CHECK_NULL_PTR_RETURN_VALUE(ops, HDF_ERR_INVALID_PARAM); - - drvData = AccelGetDrvData(); - drvData->ops.Init = ops->Init; - drvData->ops.ReadData = ops->ReadData; - return HDF_SUCCESS; -} -/* Hook the acceleration sensor driver normalization function. */ -static int32_t InitAccelOps(struct SensorDeviceInfo *deviceInfo) -{ - struct AccelDrvData *drvData = AccelGetDrvData(); - - (void)memset_s((void *)deviceInfo, sizeof(*deviceInfo), 0, sizeof(*deviceInfo)); - deviceInfo->ops.GetInfo = SetAccelInfo; - deviceInfo->ops.Enable = SetAccelEnable; - deviceInfo->ops.Disable = SetAccelDisable; - deviceInfo->ops.SetBatch = SetAccelBatch; - deviceInfo->ops.SetMode = SetAccelMode; - deviceInfo->ops.SetOption = SetAccelOption; - - if (memcpy_s(&deviceInfo->sensorInfo, sizeof(deviceInfo->sensorInfo), - &drvData->accelCfg->sensorInfo, sizeof(drvData->accelCfg->sensorInfo)) != EOK) { - HDF_LOGE("%s: copy sensor info failed", __func__); - return HDF_FAILURE; - } - /* The sensor type ID can be configured in the HCS configuration file or here. */ - drvData->accelCfg->sensorInfo.sensorTypeId = SENSOR_TAG_ACCELEROMETER; - drvData->accelCfg->sensorInfo.sensorId = SENSOR_TAG_ACCELEROMETER; - - return HDF_SUCCESS; -} -/* Initialize the sensor register. */ -static int32_t InitAccelAfterConfig(void) -{ - struct SensorDeviceInfo deviceInfo; - - if (InitAccelConfig() != HDF_SUCCESS) { - HDF_LOGE("%s: init accel config failed", __func__); - return HDF_FAILURE; - } - - if (InitAccelOps(&deviceInfo) != HDF_SUCCESS) { - HDF_LOGE("%s: init accel ops failed", __func__); - return HDF_FAILURE; - } - - if (AddSensorDevice(&deviceInfo) != HDF_SUCCESS) { - HDF_LOGE("%s: add accel device failed", __func__); - return HDF_FAILURE; - } - - return HDF_SUCCESS; -} -/* Call the device detection function to hook the differentiated device function. */ -static int32_t DetectAccelChip(void) -{ - int32_t num; - int32_t ret; - int32_t loop; - struct AccelDrvData *drvData = AccelGetDrvData(); - CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); - - num = sizeof(g_accelDetectIfList) / sizeof(g_accelDetectIfList[0]); - for (loop = 0; loop < num; ++loop) { - if (g_accelDetectIfList[loop].DetectChip != NULL) { - ret = g_accelDetectIfList[loop].DetectChip(drvData->accelCfg); - if (ret == HDF_SUCCESS) { - drvData->detectFlag = true; - break; - } - } - } - - if (loop == num) { - HDF_LOGE("%s: detect accel device failed", __func__); - drvData->detectFlag = false; - return HDF_FAILURE; - } - return HDF_SUCCESS; -} -/* The entry function of the acceleration sensor driver is used to initialize the structure object of the sensor private data, allocate space for the HCS data configuration object of the sensor, invoke the entry function for initializing the sensor HCS data configuration, detect whether the sensor device is in position, create the sensor data reporting timer, implement the sensor normalization API, and register the sensor device. */ -int32_t InitAccelDriver(struct HdfDeviceObject *device) -{ - /* Obtain the private data structure object of the sensor. */ - struct AccelDrvData *drvData = AccelGetDrvData(); - - /* When detecting sensors of the same type from different vendors, the function checks whether this type of sensors is in position. If yes, it no longer detects the other sensors of this type and directly returns the result. */ - if (drvData->detectFlag) { - HDF_LOGE("%s: accel sensor have detected", __func__); - return HDF_SUCCESS; - } - - CHECK_NULL_PTR_RETURN_VALUE(device, HDF_ERR_INVALID_PARAM); - /* Allocate space for the private data structure objects for storing sensor data configurations. The allocated space needs to be released when the driver is released. */ - drvData->accelCfg = (struct SensorCfgData *)OsalMemCalloc(sizeof(*cfg)); - if (drvData->accelCfg == NULL) { - HDF_LOGE("%s: malloc sensor config data failed", __func__); - return HDF_FAILURE; - } - - drvData->accelCfg->regCfgGroup = &g_regCfgGroup[0]; - /* Initializing the sensor configuration data aims to parse the configuration information of the sensor communication bus, basic sensor information, sensor attributes, whether the sensor is in position, and register group information. */ - if (GetSensorBaseConfigData(device->property, drvData->accelCfg) != HDF_SUCCESS) { - HDF_LOGE("%s: get sensor base config failed", __func__); - goto Base_CONFIG_EXIT; - } - - if (DetectAccelChip() != HDF_SUCCESS) { - HDF_LOGE("%s: accel sensor detect device no exist", __func__); - goto DETECT_CHIP_EXIT; - } - drvData->detectFlag = true; - if (ParseSensorRegConfig(drvData->accelCfg) != HDF_SUCCESS) { - HDF_LOGE("%s: detect sensor device failed", __func__); - goto REG_CONFIG_EXIT; - } - - if (InitAccelAfterConfig() != HDF_SUCCESS) { - HDF_LOGE("%s: init accel after config failed", __func__); - goto INIT_EXIT; - } - - HDF_LOGI("%s: init accel driver success", __func__); - return HDF_SUCCESS; - -INIT_EXIT: - DestroySensorThread(&drvData->thread, &drvData->threadStatus); - (void)DeleteSensorDevice(SENSOR_TAG_ACCELEROMETER); -REG_CONFIG_EXIT: - ReleaseSensorAllRegConfig(drvData->accelCfg); - (void)ReleaseSensorBusHandle(&drvData->accelCfg->busCfg); -DETECT_CHIP_EXIT: - drvData->detectFlag = false; -BASE_CONFIG_EXIT: - drvData->accelCfg->root = NULL; - drvData->accelCfg->regCfgGroup = NULL; - OsalMemFree(drvData->accelCfg); - drvData->accelCfg = NULL; - return HDF_FAILURE; -} - -/* Release the resources allocated during driver initialization. */ -void ReleaseAccelDriver(struct HdfDeviceObject *device) -{ - (void)device; - struct AccelDrvData *drvData = NULL; - - drvData = AccelGetDrvData(); - (void)DestroySensorThread(&drvData->thread, &drvData->threadStatus); - (void)DeleteSensorDevice(SENSOR_TAG_ACCELEROMETER); - drvData->detectFlag = false; - - if (drvData->accelCfg != NULL) { - drvData->accelCfg->root = NULL; - drvData->accelCfg->regCfgGroup = NULL; - ReleaseSensorAllRegConfig(drvData->accelCfg); - (void)ReleaseSensorBusHandle(&drvData->accelCfg->busCfg); - OsalMemFree(drvData->accelCfg); - drvData->accelCfg = NULL; - } - - drvData->initStatus = false; -} -``` - -1. Configure the acceleration sensor register group. - -You only need to configure the acceleration sensor data according to the template. Template configuration parsing has been implemented via the **InitSensorConfigData** function and only needs to be called during initialization. If new configuration items are added, you need to modify this function accordingly. - -``` -Acceleration sensor data configuration template (accel_config.hcs) -root { - sensorAccelConfig { - accelChipConfig { - /* Sensor information template */ - template sensorInfo { - sensorName = "accelerometer"; /* Acceleration sensor name. The value contains a maximum of 16 bytes. */ - vendorName = "borsh_bmi160"; /* Sensor vendor name. The value contains a maximum of 16 bytes. */ - firmwareVersion = "1.0"; /* Sensor firmware version number. The default value is 1.0. The value contains a maximum of 16 bytes. */ - hardwareVersion = "1.0"; /* Sensor hardware version number. The default value is 1.0. The value contains a maximum of 16 bytes. */ - sensorTypeId = 1; /* Sensor type ID. For details, see SensorTypeTag. */ - sensorId = 1; /* Sensor ID, which is defined by the sensor driver developer. The SensorTypeTag enums are recommended. */ - maxRange = 8; /* Maximum measurement range of the sensor. Set this parameter based on your business requirements. */ - precision = 0; /* Sensor accuracy, which is used together with sensor data reporting. For details, see SensorEvents. */ - power = 230; /* Power consumption of the sensor */ - } - /* Template of the bus type and configuration information used by the sensor */ - template sensorBusConfig { - busType = 0; /* 0 for the I2C bus and 1 for the SPI bus */ - busNum = 6; /* Device ID allocated to the sensor on the chip */ - busAddr = 0; /* Address allocated to the sensor on the chip */ - regWidth = 1; /* Width of the sensor register address */ - regBigEndian = 0; /* Endian mode of the sensor register */ - } - /* Sensor attribute template */ - template sensorAttr { - chipName = ""; /* Sensor chip name */ - chipIdRegister = 0xf; /* Address of the register detecting whether the sensor is in position */ - chipIdValue = 0xd1; /* Value of the register detecting whether the sensor is in position */ - } - } - } -} - -/* You can modify the template configuration based on the differences of sensor devices. If no modification is made, the default template configuration is used. */ -root { - sensorAccelConfig { - accel_bmi160_chip_config : accelChipConfig { - match_attr = "hdf_sensor_accel_driver"; /* The value must be the same as the match_attr field configured for the acceleration sensor. */ - accelInfo :: sensorInfo { - vendorName = "borsh_bmi160"; - sensorTypeId = 1; - sensorId = 1; - } - accelBusConfig :: sensorBusConfig { - busType = 0; /* I2C communication mode */ - busNum = 6; - busAddr = 0x68; - regWidth = 1; /* 1-byte bit width */ - } - accelAttr :: sensorAttr { - chipName = "bmi160"; - chipIdRegister = 0x00; - chipIdValue = 0xd1; - } - accelRegConfig { - /* regAddr: Register address - value: Register value - mask: Mask of the register value - len: Length (in bytes) of the register value - delay: Register delay (in milliseconds) - opsType: Operation type. The options can be 0 (no operation), 1 (read), 2 (write), 3 (read and check), and 4 (bit update). - calType: Calculation type. The options can be 0 (none), 1 (write), 2 (negate), 3 (XOR) 4, (left shift), and 5 (right shift). - shiftNum: Number of shifts - debug: Debugging switch. The value can be 0 (disabled) or 1 (enabled). - save: Data saving switch. The value can be 0 (not save data) or 1 (save data). - */ - /* Groups of sensor register operations. Registers can be configured in sequence based on the groups. */ - /* Register address, register value, mask of the register value, data length of the register value, register delay, operation type, calculation type, number of shifts, debugging switch, data saving switch */ - /* Initialize the register groups. */ - initSeqConfig = [ - 0x7e, 0xb6, 0xff, 1, 5, 2, 0, 0, 0, 0, - 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 - ]; - /* Enable the register groups. */ - enableSeqConfig = [ - 0x7e, 0x11, 0xff, 1, 5, 2, 0, 0, 0, 0, - 0x41, 0x03, 0xff, 1, 0, 2, 0, 0, 0, 0, - 0x40, 0x08, 0xff, 1, 0, 2, 0, 0, 0, 0 - ]; - /* Disable the register groups. */ - disableSeqConfig = [ - 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 - ]; - } - } - } -} -``` - -1. Implement APIs for acceleration sensor driver operations. - -You need to implement normalized APIs based on sensor types. - -``` -/* Leave a function empty if it is not used. */ -static int32_t SetAccelInfo(struct SensorBasicInfo *info) -{ - (void)info; - - return HDF_ERR_NOT_SUPPORT; -} -/* Deliver the configuration of enabling the register groups. */ -static int32_t SetAccelEnable(void) -{ - int32_t ret; - struct AccelDrvData *drvData = AccelGetDrvData(); - - CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); - ret = SetSensorRegCfgArray(&drvData->accelCfg->busCfg, drvData->accelCfg->regCfgGroup[SENSOR_ENABLE_GROUP]); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: accel sensor disable config failed", __func__); - return HDF_FAILURE; - } - - drvData->threadStatus = SENSOR_THREAD_RUNNING; - - return HDF_SUCCESS; -} -/* Deliver the configuration of disabling the register groups. */ -static int32_t SetAccelDisable(void) -{ - int32_t ret; - struct AccelDrvData *drvData = AccelGetDrvData(); - - CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); - - ret = SetSensorRegCfgArray(&drvData->accelCfg->busCfg, drvData->accelCfg->regCfgGroup[SENSOR_DISABLE_GROUP]); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: accel sensor disable config failed", __func__); - return HDF_FAILURE; - } - - drvData->threadStatus = SENSOR_THREAD_STOPPED; - - return HDF_SUCCESS; -} -/* Set the sampling interval and data reporting interval of the sensor. */ -static int32_t SetAccelBatch(int64_t samplingInterval, int64_t interval) -{ - (void)interval; - - struct AccelDrvData *drvData = AccelGetDrvData(); - drvData->interval = samplingInterval; - - return HDF_SUCCESS; -} -/* Set the data reporting mode of the sensor. Currently, the real-time mode is supported. */ -static int32_t SetAccelMode(int32_t mode) -{ - return (mode == SENSOR_WORK_MODE_REALTIME) ? HDF_SUCCESS : HDF_FAILURE; -} -/* Set the sensor options. */ -static int32_t SetAccelOption(uint32_t option) -{ - (void)option; - return HDF_ERR_NOT_SUPPORT; -} -``` - -- Differentiated processing APIs - - ``` - /* If a device is successfully detected, register the differentiated processing function to the accel driver model. */ - int32_t DetectAccelBim160Chip(struct SensorCfgData *data) - { - int32_t ret; - struct AccelOpsCall ops; - CHECK_NULL_PTR_RETURN_VALUE(data, HDF_ERR_INVALID_PARAM); - - if (strcmp(ACCEL_CHIP_NAME_BMI160, data->sensorAttr.chipName) != 0) { - return HDF_SUCCESS; - } - ret = InitAccelPreConfig(); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: init BMI160 bus mux config", __func__); - return HDF_FAILURE; - } - if (DetectSensorDevice(data) != HDF_SUCCESS) { - return HDF_FAILURE; - } - - /* Differentiated processing function */ - ops.Init = InitBmi160; - ops.ReadData = ReadBmi160Data; - ret = RegisterAccelChipOps(&ops); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: register BMI160 accel failed", __func__); - (void)ReleaseSensorBusHandle(&data->busCfg); - return HDF_FAILURE; - } - return HDF_SUCCESS; - } - /* Initialization processing function */ - static int32_t InitBmi160(struct SensorCfgData *data) - { - int32_t ret; - - CHECK_NULL_PTR_RETURN_VALUE(data, HDF_ERR_INVALID_PARAM); - ret = SetSensorRegCfgArray(&data->busCfg, data->regCfgGroup[SENSOR_INIT_GROUP]); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: bmi160 sensor init config failed", __func__); - return HDF_FAILURE; - } - return HDF_SUCCESS; - } - /* Data processing function */ - int32_t ReadBmi160Data(struct SensorCfgData *data) - { - int32_t ret; - struct AccelData rawData = { 0, 0, 0 }; - int32_t tmp[ACCEL_AXIS_NUM]; - struct SensorReportEvent event; - - (void)memset_s(&event, sizeof(event), 0, sizeof(event)); - - ret = ReadBmi160RawData(data, &rawData, &event.timestamp); - if (ret != HDF_SUCCESS) { - return HDF_FAILURE; - } - - event.sensorId = SENSOR_TAG_ACCELEROMETER; - event.option = 0; - event.mode = SENSOR_WORK_MODE_REALTIME; - - rawData.x = rawData.x * BMI160_ACC_SENSITIVITY_2G; - rawData.y = rawData.y * BMI160_ACC_SENSITIVITY_2G; - rawData.z = rawData.z * BMI160_ACC_SENSITIVITY_2G; - - tmp[ACCEL_X_AXIS] = (rawData.x * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; - tmp[ACCEL_Y_AXIS] = (rawData.y * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; - tmp[ACCEL_Z_AXIS] = (rawData.z * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; - - event.dataLen = sizeof(tmp); - event.data = (uint8_t *)&tmp; - ret = ReportSensorEvent(&event); - return ret; - } - ``` - -- Data processing function - -Create a sensor timer to periodically sample data based on the configured sampling interval and report the data to the data subscriber. - -``` -/* Scheduled working thread of the sensor */ -static int32_t ReadAccelDataThreadWorker(void *arg) -{ - (void)arg; - int64_t interval; - struct AccelDrvData *drvData = AccelGetDrvData(); - - drvData->threadStatus = SENSOR_THREAD_START; - while (true) { - if (drvData->threadStatus == SENSOR_THREAD_RUNNING) { - if (drvData->ops.ReadData != NULL) { - (void)drvData->ops.ReadData(drvData->accelCfg); - } - interval = OsalDivS64(drvData->interval, (SENSOR_CONVERT_UNIT * SENSOR_CONVERT_UNIT)); - OsalMSleep(interval); - } else if (drvData->threadStatus == SENSOR_THREAD_DESTROY) { - break; - } else { - OsalMSleep(ACC_DEFAULT_SAMPLING_200_MS / SENSOR_CONVERT_UNIT / SENSOR_CONVERT_UNIT); - } - - if ((!drvData->initStatus) || (drvData->interval < 0) || drvData->threadStatus != SENSOR_THREAD_RUNNING) { - continue; - } - } - - return HDF_SUCCESS; -} -/* Create a sensor timer and initialize the sensor device. */ -static int32_t InitAccelConfig(void) -{ - int32_t ret; - struct AccelDrvData *drvData = AccelGetDrvData(); - - if (drvData->threadStatus != SENSOR_THREAD_NONE && drvData->threadStatus != SENSOR_THREAD_DESTROY) { - HDF_LOGE("%s: accel thread have created", __func__); - return HDF_SUCCESS; - } - - ret = CreateSensorThread(&drvData->thread, ReadAccelDataThreadWorker, "hdf_sensor_accel", drvData); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: accel create thread failed", __func__); - drvData->threadStatus = SENSOR_THREAD_NONE; - return HDF_FAILURE; - } - - CHECK_NULL_PTR_RETURN_VALUE(drvData->ops.Init, HDF_ERR_INVALID_PARAM); - - ret = drvData->ops.Init(drvData->accelCfg); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: accel create thread failed", __func__); - drvData->threadStatus = SENSOR_THREAD_NONE; - return HDF_FAILURE; - } - drvData->initStatus = true; - return HDF_SUCCESS; -} -``` - -- Major data structures - -``` -/* Sensor conversion units */ -#define SENSOR_CONVERT_UNIT 1000 -#define SENSOR_1K_UNIT 1024 -/* Sensitivity conversion value of the sensor with a 2g measurement range */ -#define BMI160_ACC_SENSITIVITY_2G 61 -/* Address of the sensor data sampling register */ -#define BMI160_ACCEL_X_LSB_ADDR 0X12 -#define BMI160_ACCEL_X_MSB_ADDR 0X13 -#define BMI160_ACCEL_Y_LSB_ADDR 0X14 -#define BMI160_ACCEL_Y_MSB_ADDR 0X15 -#define BMI160_ACCEL_Z_LSB_ADDR 0X16 -#define BMI160_ACCEL_Z_MSB_ADDR 0X17 -/* Data dimension of the sensor */ -enum AccelAxisNum { - ACCEL_X_AXIS = 0, - ACCEL_Y_AXIS = 1, - ACCEL_Z_AXIS = 2, - ACCEL_AXIS_NUM = 3, -}; -/* Each dimension of the sensor */ -struct AccelData { - int32_t x; - int32_t y; - int32_t z; -}; -/* Private data structure of the sensor */ -struct AccelDrvData { - bool detectFlag; - uint8_t threadStatus; - uint8_t initStatus; - int64_t interval; - struct SensorCfgData *accelCfg; - struct OsalThread thread; - struct AccelOpsCall ops; -}; -/* Differentiation adaptation function */ -struct AccelOpsCall { - int32_t (*Init)(struct SensorCfgData *data); - int32_t (*ReadData)(struct SensorCfgData *data); -}; -``` - diff --git a/en/device-dev/driver/sensor-driver-development-guidelines.md b/en/device-dev/driver/sensor-driver-development-guidelines.md deleted file mode 100644 index afbb833cac7..00000000000 --- a/en/device-dev/driver/sensor-driver-development-guidelines.md +++ /dev/null @@ -1,16 +0,0 @@ -# Sensor Driver Development Guidelines - -- [How to Develop](#section18816105182315) - -Regardless of the OS and system on a chip \(SoC\), the sensor driver is developed based on the HDF, platform, and OSAL APIs to provide a unified driver model for sensor devices. This section uses the acceleration sensor as an example to describe how to develop a sensor driver. - -## How to Develop - -1. Register the acceleration sensor driver. The HDF provides a unified driver management model. The HDF identifies and loads the target module driver based on the configuration information of the acceleration sensor module. -2. Initialize and deinitialize the acceleration sensor driver. Using the **init** function, the HDF starts loading the sensor device driver and allocating configuration resources for sensor device data, respectively. Using the **release** function, the HDF releases the resources and configurations loaded by the driver. -3. Parse the configurations of the acceleration sensor register group. For different types of sensors, you need to configure their respective HCS configuration files in the HCS, check whether the sensor device is in position during the device driver startup, and then load the corresponding configuration file to generate the configuration structure object. -4. Implement APIs for acceleration sensor driver operations. The driver APIs for various types of sensors, such as **init**, **GetInfo**, **Enable**, **Disable**, **SetBatch**, **SetMode**, **SetOption**, and **ReadSensorData**, are normalized to deliver sensor driver configurations and report sensor data. - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->The sensor driver model provides a collection of APIs to implement sensor driver capabilities, including the driver device management capabilities, abstract bus and platform operation capabilities, general configuration capabilities, and configuration parsing capabilities. For details about the APIs, see [Table 2](sensor-driver-overview.md#table1156812588320). You need to implement the following APIs: some operations to perform on sensors \([Table 3](sensor-driver-overview.md#table1083014911336)\), differentiated data configuration of the sensor HCS, and verification of basic driver functions. - diff --git a/en/device-dev/driver/sensor-driver-overview.md b/en/device-dev/driver/sensor-driver-overview.md deleted file mode 100644 index b3d5e86797f..00000000000 --- a/en/device-dev/driver/sensor-driver-overview.md +++ /dev/null @@ -1,244 +0,0 @@ -# Sensor Driver Overview - -- [Introduction](#section667413271505) -- [Available APIs](#section7255104114110) - -## Introduction - -The sensor driver module provides APIs for upper-layer sensor services to implement basic sensor capabilities, including querying the sensor list, enabling or disabling a sensor, subscribing to or unsubscribing from sensor data, and setting sensor options. The sensor driver model is developed based on the Hardware Driver Foundation \(HDF\) and supports functions such as cross-OS migration and differentiated device configuration. The following figure shows the architecture of the sensor driver model. - -**Figure 1** Architecture of the sensor driver model -![](figures/architecture-of-the-sensor-driver-model.png "architecture-of-the-sensor-driver-model") - -The sensor driver model offers the following APIs: - -- Hardware Driver Interfaces \(HDIs\) for sensors: Facilitate service development. -- APIs for implementing sensor driver model capabilities: Implement the capabilities of registering, loading, and unregistering sensor drivers as well as detecting sensor devices depending on the HDF, normalize APIs for sensor devices of the same type, and offer APIs for parsing register configurations, abstract APIs for bus access, and abstract platform APIs. -- APIs to be implemented by developers: Based on the HDF Configuration Source \(HCS\), implement differentiated configuration for sensors of the same type and serialized configuration of sensor device parameters, and offer APIs for some sensor device operations to simplify sensor driver development. - -## Available APIs - -The following table lists the APIs provided by the sensor driver model. - -**Table 1** External APIs provided by the sensor driver model - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Category

-

API

-

Description

-

Query

-

int32_t GetAllSensors(struct SensorInformation **sensorInfo, int32_t *count)

-

Obtains information about all sensors in the system. The information about a sensor generally includes the sensor name, sensor vendor, firmware version, hardware version, sensor type ID, sensor ID, maximum measurement range, accuracy, and power.

-

Setting

-

int32_t Enable(int32_t sensorId)

-

Enables the sensor that has been subscribed to. The subscriber can obtain the sensor data only after the sensor is enabled.

-

int32_t Disable(int32_t sensorId)

-

Disables a sensor.

-

int32_t SetBatch(iint32_t sensorId, int64_t samplingInterval, int64_t reportInterval)

-

Sets the data sampling interval and data reporting interval for the specified sensor.

-

int32_t SetMode(int32_t sensorTypeId, SensorUser *user, int32_t mode)

-

Sets the data reporting mode for the specified sensor.

-

int32_t SetOption(int32_t sensorId, uint32_t option)

-

Sets options for the specified sensor, including its measurement range and accuracy.

-

Data subscription and unsubscription

-

int32_t Register(RecordDataCallback cb)

-

Registers the callback for reporting sensor data to the subscriber.

-

int32_t Unregister(void)

-

Unregisters the callback for reporting sensor data.

-

Instance creation

-

const struct SensorInterface *NewSensorInterfaceInstance(void)

-

Creates a SensorInterface instance.

-

int32_t FreeSensorInterfaceInstance(void)

-

Releases the SensorInterface instance.

-
- -The following table lists the APIs provided by the sensor driver model for driver developers. You can directly call these APIs without any implementations. - -**Table 2** APIs provided by the sensor driver model for driver developers - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Category

-

API

-

Description

-

Device management

-

int32_t AddSensorDevice(const struct SensorDeviceInfo *deviceInfo)

-

Adds a sensor of the current type to the sensor management module.

-

int32_t DeleteSensorDevice(int32_t sensorId)

-

Deletes a specified sensor from the sensor management module.

-

int32_t ReportSensorEvent(const struct SensorReportEvent *events)

-

Reports data of a specified sensor type.

-

Abstract bus and platform operations

-

int32_t ReadSensor(struct SensorBusCfg *busCfg, uint16_t regAddr, uint8_t *data, uint16_t dataLen)

-

Reads sensor configuration data from the sensor register based on the bus configuration.

-

int32_t WriteSensor(struct SensorBusCfg *busCfg, uint8_t *writeData, uint16_t len)

-

Writes sensor configuration data to the sensor register based on the bus configuration.

-

int32_t CreateSensorThread(struct OsalThread *thread, OsalThreadEntry threadEntry, char *name, void *entryPara)

-

Creates a scheduled thread for a specified sensor to process sensor data reporting.

-

void DestroySensorThread(struct OsalThread *thread, uint8_t *status);

-

Destroys the scheduled thread created for the sensor.

-

Common configuration

-

int32_t SetSensorRegCfgArray(struct SensorBusCfg *busCfg, const struct SensorRegCfgGroupNode *group);

-

Sets the sensor register group configuration based on the sensor bus type.

-

Configuration parsing

-

-

int32_t GetSensorBaseConfigData(const struct DeviceResourceNode *node, struct SensorCfgData *config)

-

Obtains basic configuration information such as sensor, bus, and attribute configurations based on the HCS resource configuration of the sensor device, and initializes the basic configuration data structure.

-

int32_t ParseSensorRegConfig(struct SensorCfgData *config)

-

Parses the register group information based on the HCS resource configuration of the sensor device and initializes the configuration data structure.

-

void ReleaseSensorAllRegConfig(struct SensorCfgData *config)

-

Releases the resources allocated to the sensor configuration data structure.

-

int32_t GetSensorBusHandle(struct SensorBusCfg *busCfg)

-

Obtains the sensor bus handle information.

-

int32_t ReleaseSensorBusHandle(struct SensorBusCfg *busCfg)

-

Releases the sensor bus handle information.

-
- -The following table lists the APIs that need to be implemented by driver developers. - -**Table 3** APIs that need to be implemented by driver developers - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Category

-

API

-

Description

-

Basic functions

-

int32_t init(void)

-

Initializes the configuration of a sensor device after it is detected successfully.

-

int32_t GetInfo(struct SensorBasicInfo *info)

-

Obtains the basic information about the current sensor device from the HCS of sensor devices.

-

int32_t Enable(void)

-

Enables the current sensor device by delivering the register configuration in the operation group based on the HCS of the current sensor device.

-

int32_t Disable(void)

-

Disables the current sensor device by delivering the register configuration in the operation group based on the HCS of the current sensor device.

-

int32_t SetBatch(int64_t samplingInterval, int64_t reportInterval)

-

Sets the processing time of the data reporting thread for the current sensor device based on the data sampling interval and data reporting interval.

-

int32_t SetMode(int32_t mode)

-

Sets the data reporting mode of the current sensor device.

-

int32_t SetOption(uint32_t option)

-

Sets the register configuration such as the measurement range and accuracy based on sensor options.

-

void ReadSensorData(void)

-

Reads sensor data.

-
- -For details about the API implementation, see the [sensor driver development example](sensor-driver-development-example.md). - diff --git a/en/device-dev/driver/sensor-driver-test-guidelines.md b/en/device-dev/driver/sensor-driver-test-guidelines.md deleted file mode 100644 index 042112036cd..00000000000 --- a/en/device-dev/driver/sensor-driver-test-guidelines.md +++ /dev/null @@ -1,82 +0,0 @@ -# Sensor Driver Test Guidelines - -After the driver is developed, you can develop self-test cases in the sensor unit test to verify the basic functions of the driver. The developer self-test platform is used as the test environment. - -``` -/* Specify whether to report sensor data. */ -static int32_t g_sensorDataFlag = 0; -/* Retain the address of the sensor interface instance. */ -static const struct SensorInterface *g_sensorDev = nullptr; - -/* Register the data reporting function. */ -static int SensorTestDataCallback(struct SensorEvents *event) -{ - if (event == nullptr) { - return -1; - } - float *data = (float*)event->data; - printf("time [%lld] sensor id [%d] x-[%f] y-[%f] z-[%f]\n\r", event->timestamp, - event->sensorId, (*data), *(data + 1), *(data + g_axisZ)); - if (*data > 1e-5) { - g_sensorDataFlag = 1; - } - return 0; -} -/* Initialize the sensor interface instance before executing the test cases. */ -void HdfSensorTest::SetUpTestCase() -{ - g_sensorDev = NewSensorInterfaceInstance(); - if (g_sensorDev == nullptr) { - printf("test sensorHdi get Module instace failed\n\r"); - } -} -/* Release case resources. */ -void HdfSensorTest::TearDownTestCase() -{ - if (g_sensorDev != nullptr) { - FreeSensorInterfaceInstance(); - g_sensorDev = nullptr; - } -} -/* Verify the sensor driver. */ -HWTEST_F(HdfSensorTest,TestAccelDriver_001, TestSize.Level0) -{ - int32_t sensorInterval = 1000000000; /* Data sampling interval, in nanoseconds */ - int32_t pollTime = 5; /* Data sampling duration, in seconds */ - int32_t accelSensorId = 1; /* Acceleration sensor type ID, which is 1 */ - int32_t count = 0; - int ret; - struct SensorInformation *sensorInfo = nullptr; - - ret = g_sensorDev->Register(SensorTestDataCallback) - EXPECT_EQ(SENSOR_NULL_PTR, ret); - - ret = g_sensorDev->GetAllSensors(&sensorInfo, &count); - EXPECT_EQ(0, ret); - if (sensorInfo == nullptr) { - EXPECT_NE(nullptr, sensorInfo); - return; - } - /* Print the obtained sensor list. */ - for (int i = 0; i < count; i++) { - printf("get sensoriId[%d], info name[%s]\n\r", sensorInfo[i]->sensorId, sensorInfo[i]->sensorName); - } - ret = g_sensorDev->Enable(accelSensorId); - EXPECT_EQ(0, ret); - g_sensorDataFlag = 0; - - ret = g_sensorDev->SetBatch(accelSensorId, sensorInterval, pollTime); - EXPECT_EQ(0, ret); - /* Observe the printed data within the period specified by pollTime. */ - OsalSleep(pollTime); - EXPECT_EQ(1, g_sensorDataFlag); - - ret = g_sensorDev->Disable(accelSensorId); - g_sensorDataFlag = 0; - EXPECT_EQ(0, ret); - - ret = g_sensorDev->Unregister(); - EXPECT_EQ(0, ret); -} -``` - diff --git a/en/device-dev/driver/sensor.md b/en/device-dev/driver/sensor.md index f9e8d552c0c..cf8d8ab7e56 100644 --- a/en/device-dev/driver/sensor.md +++ b/en/device-dev/driver/sensor.md @@ -1,11 +1,929 @@ -# SENSOR +# Sensor -- **[Sensor Driver Overview](sensor-driver-overview.md)** +- [Overview](#section3634112111) + - [Available APIs](#section188213414114) -- **[Sensor Driver Development Guidelines](sensor-driver-development-guidelines.md)** +- [Development Guidelines](#section1140943382) + - [How to Develop](#section7893102915819) -- **[Sensor Driver Development Example](sensor-driver-development-example.md)** +- [Development Example](#section257750691) +- [Test Guidelines](#section106021256121219) -- **[Sensor Driver Test Guidelines](sensor-driver-test-guidelines.md)** +## Overview +The sensor driver module provides APIs for upper-layer sensor services to implement basic sensor capabilities, including querying the sensor list, enabling or disabling a sensor, subscribing to or unsubscribing from sensor data, and setting sensor options. The sensor driver model is developed based on the Hardware Driver Foundation \(HDF\) and supports functions such as cross-OS migration and differentiated device configuration. The following figure shows the architecture of the sensor driver model. + +**Figure 1** Architecture of the sensor driver model +![](figures/architecture-of-the-sensor-driver-model.png "architecture-of-the-sensor-driver-model") + +The sensor driver model offers the following APIs: + +- Hardware Driver Interfaces \(HDIs\) for sensors: These HDIs facilitate service development. +- APIs for implementing sensor driver model capabilities: These APIs implement the capabilities of registering, loading, and unregistering sensor drivers as well as detecting sensor devices depending on the HDF. The APIs include normalized APIs for sensor devices of the same type, APIs for parsing register configurations, abstract APIs for bus access, and abstract platform APIs. +- APIs to be implemented by developers: Based on the HDF Configuration Source \(HCS\), developers can implement differentiated configuration for sensors of the same type and serialized configuration of sensor device parameters. Some sensor device operations can be abstracted as APIs to simplify sensor driver development. + +### Available APIs + +The following table lists the APIs provided by the sensor driver model. + +**Table 1** External APIs provided by the sensor driver model + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Category

+

API

+

Description

+

Query

+

int32_t GetAllSensors(struct SensorInformation **sensorInfo, int32_t *count)

+

Obtains information about all sensors in the system. The information about a sensor generally includes the sensor name, sensor vendor, firmware version, hardware version, sensor type ID, sensor ID, maximum measurement range, accuracy, and power.

+

Setting

+

int32_t Enable(int32_t sensorId)

+

Enables the sensor that has been subscribed to. The subscriber can obtain the sensor data only after the sensor is enabled.

+

int32_t Disable(int32_t sensorId)

+

Disables a sensor.

+

int32_t SetBatch(iint32_t sensorId, int64_t samplingInterval, int64_t reportInterval)

+

Sets the data sampling interval and data reporting interval for the specified sensor.

+

int32_t SetMode(int32_t sensorTypeId, SensorUser *user, int32_t mode)

+

Sets the data reporting mode for the specified sensor.

+

int32_t SetOption(int32_t sensorId, uint32_t option)

+

Sets options for the specified sensor, including its measurement range and accuracy.

+

Data subscription and unsubscription

+

int32_t Register(RecordDataCallback cb)

+

Registers the callback for reporting sensor data to the subscriber.

+

int32_t Unregister(void)

+

Unregisters the callback for reporting sensor data.

+

Instance creation

+

const struct SensorInterface *NewSensorInterfaceInstance(void)

+

Creates a SensorInterface instance.

+

int32_t FreeSensorInterfaceInstance(void)

+

Releases the SensorInterface instance.

+
+ +The following table lists the APIs provided by the sensor driver model for driver developers. You can directly call these APIs without any implementations. + +**Table 2** APIs provided by the sensor driver model for driver developers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Category

+

API

+

Description

+

Device management

+

int32_t AddSensorDevice(const struct SensorDeviceInfo *deviceInfo)

+

Adds a sensor of the current type to the sensor management module.

+

int32_t DeleteSensorDevice(int32_t sensorId)

+

Deletes a specified sensor from the sensor management module.

+

int32_t ReportSensorEvent(const struct SensorReportEvent *events)

+

Reports data of a specified sensor type.

+

Abstract bus and platform operations

+

int32_t ReadSensor(struct SensorBusCfg *busCfg, uint16_t regAddr, uint8_t *data, uint16_t dataLen)

+

Reads sensor configuration data from the sensor register based on the bus configuration.

+

int32_t WriteSensor(struct SensorBusCfg *busCfg, uint8_t *writeData, uint16_t len)

+

Writes sensor configuration data to the sensor register based on the bus configuration.

+

int32_t CreateSensorThread(struct OsalThread *thread, OsalThreadEntry threadEntry, char *name, void *entryPara)

+

Creates a scheduled thread for a specified sensor to process sensor data reporting.

+

void DestroySensorThread(struct OsalThread *thread, uint8_t *status);

+

Destroys the scheduled thread created for the sensor.

+

Common configuration

+

int32_t SetSensorRegCfgArray(struct SensorBusCfg *busCfg, const struct SensorRegCfgGroupNode *group);

+

Sets the sensor register group configuration based on the sensor bus type.

+

Configuration parsing

+

+

int32_t GetSensorBaseConfigData(const struct DeviceResourceNode *node, struct SensorCfgData *config)

+

Obtains basic configuration information such as sensor, bus, and attribute configurations based on the HCS resource configuration of the sensor device, and initializes the basic configuration data structure.

+

int32_t ParseSensorRegConfig(struct SensorCfgData *config)

+

Parses the register group information based on the HCS resource configuration of the sensor device and initializes the configuration data structure.

+

void ReleaseSensorAllRegConfig(struct SensorCfgData *config)

+

Releases the resources allocated to the sensor configuration data structure.

+

int32_t GetSensorBusHandle(struct SensorBusCfg *busCfg)

+

Obtains the sensor bus handle information.

+

int32_t ReleaseSensorBusHandle(struct SensorBusCfg *busCfg)

+

Releases the sensor bus handle information.

+
+ +The following table lists the APIs that need to be implemented by driver developers. + +**Table 3** APIs that need to be implemented by driver developers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Category

+

API

+

Description

+

Basic functions

+

int32_t init(void)

+

Initializes the configuration of a sensor device after it is detected.

+

int32_t GetInfo(struct SensorBasicInfo *info)

+

Obtains the basic information about the current sensor device from the HCS of sensor devices.

+

int32_t Enable(void)

+

Enables the current sensor device by delivering the register configuration in the operation group based on the HCS of the current sensor device.

+

int32_t Disable(void)

+

Disables the current sensor device by delivering the register configuration in the operation group based on the HCS of the current sensor device.

+

int32_t SetBatch(int64_t samplingInterval, int64_t reportInterval)

+

Sets the processing time of the data reporting thread for the current sensor device based on the data sampling interval and data reporting interval.

+

int32_t SetMode(int32_t mode)

+

Sets the data reporting mode of the current sensor device.

+

int32_t SetOption(uint32_t option)

+

Sets the register configuration such as the measurement range and accuracy based on sensor options.

+

void ReadSensorData(void)

+

Reads sensor data.

+
+ +For details about the API implementation, see Sensor Driver Development Example. + +## Development Guidelines + +Regardless of the OS and system on a chip \(SoC\), the sensor driver is developed based on the HDF, platform, and OSAL APIs to provide a unified driver model for sensor devices. This section uses the acceleration sensor as an example to describe how to develop a sensor driver. + +### How to Develop + +1. Register the acceleration sensor driver. The HDF provides a unified driver management model. The HDF identifies and loads the target module driver based on the configuration of the acceleration sensor module. +2. Initialize and deinitialize the acceleration sensor driver. Using the **init** function, the HDF starts loading the sensor device driver and allocating configuration resources for sensor device data, respectively. Using the **release** function, the HDF releases the resources and configurations loaded by the driver. +3. Parse the configurations of the acceleration sensor register group. For different types of sensors, you must configure their respective HCS configuration files in the HCS, check whether the sensor device is in position during the device driver startup, and then load the corresponding configuration file to generate the configuration structure object. +4. Implement APIs for acceleration sensor driver operations. The driver APIs for various types of sensors, such as **init**, **GetInfo**, **Enable**, **Disable**, **SetBatch**, **SetMode**, **SetOption**, and **ReadSensorData**, are normalized to deliver sensor driver configurations and report sensor data. + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>The sensor driver model provides a collection of APIs to implement sensor driver capabilities, including the driver device management, abstract bus and platform operation, general configuration, and configuration parsing capabilities. For details about the APIs, see [Table 2](#table1156812588320). You need to implement the following APIs: some operations to perform on sensors \([Table 3](#table1083014911336)\), differentiated data configuration of the sensor HCS, and verification of basic driver functions. + +## Development Example + +This section uses a code example to demonstrate how to load and start the acceleration sensor driver based on the HDF driver model. For details about the mechanism, see [HDF Driver Development](driver-development.md). This example uses the Bosch BMI160 acceleration sensor that communicates over I2C. + +1. Register the driver entry of the acceleration sensor. + +- Implementation of the entry function + +``` +/* Register the entry structure object of the acceleration sensor. */ +struct HdfDriverEntry g_sensorAccelDevEntry = { + .moduleVersion = 1, /* Version of the acceleration sensor module */ + .moduleName = "HDF_SENSOR_ACCEL", /* Name of the acceleration sensor module. The value must be the same as that of moduleName in the device_info.hcs file. */ + .Bind = BindAccelDriver, /* Binding function of the acceleration sensor */ + .Init = InitAccelDriver, /* Initialization function of the acceleration sensor */ + .Release = ReleaseAccelDriver, /* Resource release function of the acceleration sensor */ +}; + +/* Call HDF_INIT to register the driver entry with the HDF. When loading the driver, the HDF calls the Bind function first and then the Init function. If the Init function fails to be called, the HDF will call Release to release the driver resource and exit. +HDF_INIT(g_sensorAccelDevEntry); +``` + +- Acceleration sensor configuration + +The acceleration sensor model uses the HCS as the configuration source code. For details about the HCS configuration fields, see [Driver Configuration Management](driver-configuration-management.md). + +``` +/* HCS configuration of the acceleration sensor device */ +device_sensor_accel :: device { + device0 :: deviceNode { + policy = 1; /* Policy for providing the driver service */ + priority = 105; /* Driver startup priority (0–200). A larger value indicates a lower priority. The default value 100 is recommended. The sequence for loading devices with the same priority is random. */ + preload = 2; /* Field for specifying whether to load the driver. The value 0 means to load the driver, and 2 means the opposite. */ + permission = 0664; /* Permission for the driver to create device nodes */ + moduleName = "HDF_SENSOR_ACCEL"; /* Driver name. The value must be the same as that of moduleName in the driver entry structure. */ + serviceName = "sensor_accel"; /* Name of the service provided by the driver. The name must be unique. */ + deviceMatchAttr = "hdf_sensor_accel_driver"; /* Keyword matching the private data of the driver. The value must be the same as that of match_attr in the private data configuration table of the driver. */ + } +} +``` + +1. Initialize and deinitialize the acceleration sensor driver. + +- Initialization entry function **init** + +``` +/* Bind the service provided by the acceleration sensor driver to the HDF. */ +int32_t BindAccelDriver(struct HdfDeviceObject *device) +{ + CHECK_NULL_PTR_RETURN_VALUE(device, HDF_ERR_INVALID_PARAM); + + static struct IDeviceIoService service = { + .object = {0}, + .Dispatch = DispatchAccel, + }; + device->service = &service; + + return HDF_SUCCESS; +} +/* After detecting that the device is in position, call RegisterAccelChipOps to register the differentiation adaptation function. */ +int32_t RegisterAccelChipOps(struct AccelOpsCall *ops) +{ + struct AccelDrvData *drvData = NULL; + + CHECK_NULL_PTR_RETURN_VALUE(ops, HDF_ERR_INVALID_PARAM); + + drvData = AccelGetDrvData(); + drvData->ops.Init = ops->Init; + drvData->ops.ReadData = ops->ReadData; + return HDF_SUCCESS; +} +/* Hook the acceleration sensor driver normalization function. */ +static int32_t InitAccelOps(struct SensorDeviceInfo *deviceInfo) +{ + struct AccelDrvData *drvData = AccelGetDrvData(); + + (void)memset_s((void *)deviceInfo, sizeof(*deviceInfo), 0, sizeof(*deviceInfo)); + deviceInfo->ops.GetInfo = SetAccelInfo; + deviceInfo->ops.Enable = SetAccelEnable; + deviceInfo->ops.Disable = SetAccelDisable; + deviceInfo->ops.SetBatch = SetAccelBatch; + deviceInfo->ops.SetMode = SetAccelMode; + deviceInfo->ops.SetOption = SetAccelOption; + + if (memcpy_s(&deviceInfo->sensorInfo, sizeof(deviceInfo->sensorInfo), + &drvData->accelCfg->sensorInfo, sizeof(drvData->accelCfg->sensorInfo)) != EOK) { + HDF_LOGE("%s: copy sensor info failed", __func__); + return HDF_FAILURE; + } + /* The sensor type ID can be configured in the HCS configuration file or here. */ + drvData->accelCfg->sensorInfo.sensorTypeId = SENSOR_TAG_ACCELEROMETER; + drvData->accelCfg->sensorInfo.sensorId = SENSOR_TAG_ACCELEROMETER; + + return HDF_SUCCESS; +} +/* Initialize the sensor register. */ +static int32_t InitAccelAfterConfig(void) +{ + struct SensorDeviceInfo deviceInfo; + + if (InitAccelConfig() != HDF_SUCCESS) { + HDF_LOGE("%s: init accel config failed", __func__); + return HDF_FAILURE; + } + + if (InitAccelOps(&deviceInfo) != HDF_SUCCESS) { + HDF_LOGE("%s: init accel ops failed", __func__); + return HDF_FAILURE; + } + + if (AddSensorDevice(&deviceInfo) != HDF_SUCCESS) { + HDF_LOGE("%s: add accel device failed", __func__); + return HDF_FAILURE; + } + + return HDF_SUCCESS; +} +/* Call the device detection function to hook the differentiated device function. */ +static int32_t DetectAccelChip(void) +{ + int32_t num; + int32_t ret; + int32_t loop; + struct AccelDrvData *drvData = AccelGetDrvData(); + CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); + + num = sizeof(g_accelDetectIfList) / sizeof(g_accelDetectIfList[0]); + for (loop = 0; loop < num; ++loop) { + if (g_accelDetectIfList[loop].DetectChip != NULL) { + ret = g_accelDetectIfList[loop].DetectChip(drvData->accelCfg); + if (ret == HDF_SUCCESS) { + drvData->detectFlag = true; + break; + } + } + } + + if (loop == num) { + HDF_LOGE("%s: detect accel device failed", __func__); + drvData->detectFlag = false; + return HDF_FAILURE; + } + return HDF_SUCCESS; +} +/* The entry function of the acceleration sensor driver is used to initialize the structure object of the sensor private data, allocate space for the HCS data configuration object of the sensor, invoke the entry function for initializing the sensor HCS data configuration, detect whether the sensor device is in position, create the sensor data reporting timer, implement the sensor normalization API, and register the sensor device. */ +int32_t InitAccelDriver(struct HdfDeviceObject *device) +{ + /* Obtain the private data structure object of the sensor. */ + struct AccelDrvData *drvData = AccelGetDrvData(); + + /* When detecting sensors of the same type from different vendors, the function checks whether this type of sensors is in position. If yes, it no longer detects the other sensors of this type and directly returns the result. */ + if (drvData->detectFlag) { + HDF_LOGE("%s: accel sensor have detected", __func__); + return HDF_SUCCESS; + } + + CHECK_NULL_PTR_RETURN_VALUE(device, HDF_ERR_INVALID_PARAM); + /* Allocate space for the private data structure objects for storing sensor data configurations. The allocated space needs to be released when the driver is released. */ + drvData->accelCfg = (struct SensorCfgData *)OsalMemCalloc(sizeof(*cfg)); + if (drvData->accelCfg == NULL) { + HDF_LOGE("%s: malloc sensor config data failed", __func__); + return HDF_FAILURE; + } + + drvData->accelCfg->regCfgGroup = &g_regCfgGroup[0]; + /* Initializing the sensor configuration data aims to parse the configuration information of the sensor communication bus, basic sensor information, sensor attributes, whether the sensor is in position, and register group information. */ + if (GetSensorBaseConfigData(device->property, drvData->accelCfg) != HDF_SUCCESS) { + HDF_LOGE("%s: get sensor base config failed", __func__); + goto Base_CONFIG_EXIT; + } + + if (DetectAccelChip() != HDF_SUCCESS) { + HDF_LOGE("%s: accel sensor detect device no exist", __func__); + goto DETECT_CHIP_EXIT; + } + drvData->detectFlag = true; + if (ParseSensorRegConfig(drvData->accelCfg) != HDF_SUCCESS) { + HDF_LOGE("%s: detect sensor device failed", __func__); + goto REG_CONFIG_EXIT; + } + + if (InitAccelAfterConfig() != HDF_SUCCESS) { + HDF_LOGE("%s: init accel after config failed", __func__); + goto INIT_EXIT; + } + + HDF_LOGI("%s: init accel driver success", __func__); + return HDF_SUCCESS; + +INIT_EXIT: + DestroySensorThread(&drvData->thread, &drvData->threadStatus); + (void)DeleteSensorDevice(SENSOR_TAG_ACCELEROMETER); +REG_CONFIG_EXIT: + ReleaseSensorAllRegConfig(drvData->accelCfg); + (void)ReleaseSensorBusHandle(&drvData->accelCfg->busCfg); +DETECT_CHIP_EXIT: + drvData->detectFlag = false; +BASE_CONFIG_EXIT: + drvData->accelCfg->root = NULL; + drvData->accelCfg->regCfgGroup = NULL; + OsalMemFree(drvData->accelCfg); + drvData->accelCfg = NULL; + return HDF_FAILURE; +} + +/* Release the resources allocated during driver initialization. */ +void ReleaseAccelDriver(struct HdfDeviceObject *device) +{ + (void)device; + struct AccelDrvData *drvData = NULL; + + drvData = AccelGetDrvData(); + (void)DestroySensorThread(&drvData->thread, &drvData->threadStatus); + (void)DeleteSensorDevice(SENSOR_TAG_ACCELEROMETER); + drvData->detectFlag = false; + + if (drvData->accelCfg != NULL) { + drvData->accelCfg->root = NULL; + drvData->accelCfg->regCfgGroup = NULL; + ReleaseSensorAllRegConfig(drvData->accelCfg); + (void)ReleaseSensorBusHandle(&drvData->accelCfg->busCfg); + OsalMemFree(drvData->accelCfg); + drvData->accelCfg = NULL; + } + + drvData->initStatus = false; +} +``` + +1. Configure the acceleration sensor register group. + +You only need to configure the acceleration sensor data according to the template. Template configuration parsing has been implemented via the **InitSensorConfigData** function and only needs to be called during initialization. If new configuration items are added, you need to modify this function accordingly. + +``` +Acceleration sensor data configuration template (accel_config.hcs) +root { + sensorAccelConfig { + accelChipConfig { + /* Sensor information template */ + template sensorInfo { + sensorName = "accelerometer"; /* Acceleration sensor name. The value contains a maximum of 16 bytes. */ + vendorName = "borsh_bmi160"; /* Sensor vendor name. The value contains a maximum of 16 bytes. */ + firmwareVersion = "1.0"; /* Sensor firmware version. The default value is 1.0. The value contains a maximum of 16 bytes. */ + hardwareVersion = "1.0"; /* Sensor hardware version. The default value is 1.0. The value contains a maximum of 16 bytes. */ + sensorTypeId = 1; /* Sensor type ID. For details, see SensorTypeTag. */ + sensorId = 1; /* Sensor ID, which is defined by the sensor driver developer. The SensorTypeTag enums are recommended. */ + maxRange = 8; /* Maximum measurement range of the sensor. Set this parameter based on your business requirements. */ + precision = 0; /* Sensor accuracy, which is used together with sensor data reporting. For details, see SensorEvents. */ + power = 230; /* Power consumption of the sensor */ + } + /* Template of the bus type and configuration information used by the sensor */ + template sensorBusConfig { + busType = 0; /* 0:i2c 1:spi */ + busNum = 6; /* Device ID allocated to the sensor on the chip */ + busAddr = 0; /* Address allocated to the sensor on the chip */ + regWidth = 1; /* Width of the sensor register address */ + regBigEndian = 0; /* Endian mode of the sensor register */ + } + /* Sensor attribute template */ + template sensorAttr { + chipName = ""; /* Sensor chip name */ + chipIdRegister = 0xf; /* Address of the register detecting whether the sensor is in position */ + chipIdValue = 0xd1; /* Value of the register detecting whether the sensor is in position */ + } + } + } +} + +/* You can modify the template configuration based on the differences of sensor devices. If no modification is made, the default template configuration is used. */ +root { + sensorAccelConfig { + accel_bmi160_chip_config : accelChipConfig { + match_attr = "hdf_sensor_accel_driver"; /* The value must be the same as the match_attr field configured for the acceleration sensor. */ + accelInfo :: sensorInfo { + vendorName = "borsh_bmi160"; + sensorTypeId = 1; + sensorId = 1; + } + accelBusConfig :: sensorBusConfig { + busType = 0; /* I2C communication mode */ + busNum = 6; + busAddr = 0x68; + regWidth = 1; /* 1-byte bit width */ + } + accelAttr :: sensorAttr { + chipName = "bmi160"; + chipIdRegister = 0x00; + chipIdValue = 0xd1; + } + accelRegConfig { + /* regAddr: Register address + value: Register value + mask: Mask of the register value + len: Length (in bytes) of the register value + delay: Register delay (in milliseconds) + opsType: Operation type. The options can be 0 (no operation), 1 (read), 2 (write), 3 (read and check), and 4 (bit update). + calType: Calculation type. The options can be 0 (none), 1 (write), 2 (negate), 3 (XOR) 4, (left shift), and 5 (right shift). + shiftNum: Number of shifts + debug: Debugging switch. The value can be 0 (disabled) or 1 (enabled). + save: Data saving switch. The value can be 0 (not save data) or 1 (save data). + */ + /* Groups of sensor register operations. Registers can be configured in sequence based on the groups. */ + /* Register address, register value, mask of the register value, data length of the register value, register delay, operation type, calculation type, number of shifts, debugging switch, data saving switch */ + /* Initialize the register groups. */ + initSeqConfig = [ + 0x7e, 0xb6, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + /* Enable the register groups. */ + enableSeqConfig = [ + 0x7e, 0x11, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x41, 0x03, 0xff, 1, 0, 2, 0, 0, 0, 0, + 0x40, 0x08, 0xff, 1, 0, 2, 0, 0, 0, 0 + ]; + /* Disable the register groups. */ + disableSeqConfig = [ + 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + } + } + } +} +``` + +1. Implement APIs for acceleration sensor driver operations. + +You need to implement normalized APIs based on sensor types. + +``` +/* Leave a function empty if it is not used. */ +static int32_t SetAccelInfo(struct SensorBasicInfo *info) +{ + (void)info; + + return HDF_ERR_NOT_SUPPORT; +} +/* Deliver the configuration of enabling the register groups. */ +static int32_t SetAccelEnable(void) +{ + int32_t ret; + struct AccelDrvData *drvData = AccelGetDrvData(); + + CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); + ret = SetSensorRegCfgArray(&drvData->accelCfg->busCfg, drvData->accelCfg->regCfgGroup[SENSOR_ENABLE_GROUP]); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: accel sensor disable config failed", __func__); + return HDF_FAILURE; + } + + drvData->threadStatus = SENSOR_THREAD_RUNNING; + + return HDF_SUCCESS; +} +/* Deliver the configuration of disabling the register groups. */ +static int32_t SetAccelDisable(void) +{ + int32_t ret; + struct AccelDrvData *drvData = AccelGetDrvData(); + + CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); + + ret = SetSensorRegCfgArray(&drvData->accelCfg->busCfg, drvData->accelCfg->regCfgGroup[SENSOR_DISABLE_GROUP]); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: accel sensor disable config failed", __func__); + return HDF_FAILURE; + } + + drvData->threadStatus = SENSOR_THREAD_STOPPED; + + return HDF_SUCCESS; +} +/* Set the sampling interval and data reporting interval of the sensor. */ +static int32_t SetAccelBatch(int64_t samplingInterval, int64_t interval) +{ + (void)interval; + + struct AccelDrvData *drvData = AccelGetDrvData(); + drvData->interval = samplingInterval; + + return HDF_SUCCESS; +} +/* Set the data reporting mode of the sensor. Currently, the real-time mode is supported. */ +static int32_t SetAccelMode(int32_t mode) +{ + return (mode == SENSOR_WORK_MODE_REALTIME) ? HDF_SUCCESS : HDF_FAILURE; +} +/* Set the sensor options. */ +static int32_t SetAccelOption(uint32_t option) +{ + (void)option; + return HDF_ERR_NOT_SUPPORT; +} +``` + +- Differentiated processing APIs + + ``` + /* If a device is detected, register the differentiated processing function to the accel driver model. */ + int32_t DetectAccelBim160Chip(struct SensorCfgData *data) + { + int32_t ret; + struct AccelOpsCall ops; + CHECK_NULL_PTR_RETURN_VALUE(data, HDF_ERR_INVALID_PARAM); + + if (strcmp(ACCEL_CHIP_NAME_BMI160, data->sensorAttr.chipName) != 0) { + return HDF_SUCCESS; + } + ret = InitAccelPreConfig(); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: init BMI160 bus mux config", __func__); + return HDF_FAILURE; + } + if (DetectSensorDevice(data) != HDF_SUCCESS) { + return HDF_FAILURE; + } + + /* Differentiated processing function */ + ops.Init = InitBmi160; + ops.ReadData = ReadBmi160Data; + ret = RegisterAccelChipOps(&ops); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: register BMI160 accel failed", __func__); + (void)ReleaseSensorBusHandle(&data->busCfg); + return HDF_FAILURE; + } + return HDF_SUCCESS; + } + /* Initialization processing function */ + static int32_t InitBmi160(struct SensorCfgData *data) + { + int32_t ret; + + CHECK_NULL_PTR_RETURN_VALUE(data, HDF_ERR_INVALID_PARAM); + ret = SetSensorRegCfgArray(&data->busCfg, data->regCfgGroup[SENSOR_INIT_GROUP]); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: bmi160 sensor init config failed", __func__); + return HDF_FAILURE; + } + return HDF_SUCCESS; + } + /* Data processing function */ + int32_t ReadBmi160Data(struct SensorCfgData *data) + { + int32_t ret; + struct AccelData rawData = { 0, 0, 0 }; + int32_t tmp[ACCEL_AXIS_NUM]; + struct SensorReportEvent event; + + (void)memset_s(&event, sizeof(event), 0, sizeof(event)); + + ret = ReadBmi160RawData(data, &rawData, &event.timestamp); + if (ret != HDF_SUCCESS) { + return HDF_FAILURE; + } + + event.sensorId = SENSOR_TAG_ACCELEROMETER; + event.option = 0; + event.mode = SENSOR_WORK_MODE_REALTIME; + + rawData.x = rawData.x * BMI160_ACC_SENSITIVITY_2G; + rawData.y = rawData.y * BMI160_ACC_SENSITIVITY_2G; + rawData.z = rawData.z * BMI160_ACC_SENSITIVITY_2G; + + tmp[ACCEL_X_AXIS] = (rawData.x * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; + tmp[ACCEL_Y_AXIS] = (rawData.y * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; + tmp[ACCEL_Z_AXIS] = (rawData.z * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; + + event.dataLen = sizeof(tmp); + event.data = (uint8_t *)&tmp; + ret = ReportSensorEvent(&event); + return ret; + } + ``` + +- Data processing function + +Create a sensor timer to periodically sample data based on the configured sampling interval and report the data to the data subscriber. + +``` +/* Scheduled working thread of the sensor */ +static int32_t ReadAccelDataThreadWorker(void *arg) +{ + (void)arg; + int64_t interval; + struct AccelDrvData *drvData = AccelGetDrvData(); + + drvData->threadStatus = SENSOR_THREAD_START; + while (true) { + if (drvData->threadStatus == SENSOR_THREAD_RUNNING) { + if (drvData->ops.ReadData != NULL) { + (void)drvData->ops.ReadData(drvData->accelCfg); + } + interval = OsalDivS64(drvData->interval, (SENSOR_CONVERT_UNIT * SENSOR_CONVERT_UNIT)); + OsalMSleep(interval); + } else if (drvData->threadStatus == SENSOR_THREAD_DESTROY) { + break; + } else { + OsalMSleep(ACC_DEFAULT_SAMPLING_200_MS / SENSOR_CONVERT_UNIT / SENSOR_CONVERT_UNIT); + } + + if ((!drvData->initStatus) || (drvData->interval < 0) || drvData->threadStatus != SENSOR_THREAD_RUNNING) { + continue; + } + } + + return HDF_SUCCESS; +} +/* Create a sensor timer and initialize the sensor device. */ +static int32_t InitAccelConfig(void) +{ + int32_t ret; + struct AccelDrvData *drvData = AccelGetDrvData(); + + if (drvData->threadStatus != SENSOR_THREAD_NONE && drvData->threadStatus != SENSOR_THREAD_DESTROY) { + HDF_LOGE("%s: accel thread have created", __func__); + return HDF_SUCCESS; + } + + ret = CreateSensorThread(&drvData->thread, ReadAccelDataThreadWorker, "hdf_sensor_accel", drvData); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: accel create thread failed", __func__); + drvData->threadStatus = SENSOR_THREAD_NONE; + return HDF_FAILURE; + } + + CHECK_NULL_PTR_RETURN_VALUE(drvData->ops.Init, HDF_ERR_INVALID_PARAM); + + ret = drvData->ops.Init(drvData->accelCfg); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: accel create thread failed", __func__); + drvData->threadStatus = SENSOR_THREAD_NONE; + return HDF_FAILURE; + } + drvData->initStatus = true; + return HDF_SUCCESS; +} +``` + +- Major data structures + +``` +/* Sensor conversion units */ +#define SENSOR_CONVERT_UNIT 1000 +#define SENSOR_1K_UNIT 1024 +/* Sensitivity conversion value of the sensor with a 2g measurement range */ +#define BMI160_ACC_SENSITIVITY_2G 61 +/* Address of the sensor data sampling register */ +#define BMI160_ACCEL_X_LSB_ADDR 0X12 +#define BMI160_ACCEL_X_MSB_ADDR 0X13 +#define BMI160_ACCEL_Y_LSB_ADDR 0X14 +#define BMI160_ACCEL_Y_MSB_ADDR 0X15 +#define BMI160_ACCEL_Z_LSB_ADDR 0X16 +#define BMI160_ACCEL_Z_MSB_ADDR 0X17 +/* Data dimension of the sensor */ +enum AccelAxisNum { + ACCEL_X_AXIS = 0, + ACCEL_Y_AXIS = 1, + ACCEL_Z_AXIS = 2, + ACCEL_AXIS_NUM = 3, +}; +/* Each dimension of the sensor */ +struct AccelData { + int32_t x; + int32_t y; + int32_t z; +}; +/* Private data structure of the sensor */ +struct AccelDrvData { + bool detectFlag; + uint8_t threadStatus; + uint8_t initStatus; + int64_t interval; + struct SensorCfgData *accelCfg; + struct OsalThread thread; + struct AccelOpsCall ops; +}; +/* Differentiation adaptation function */ +struct AccelOpsCall { + int32_t (*Init)(struct SensorCfgData *data); + int32_t (*ReadData)(struct SensorCfgData *data); +}; +``` + +## Test Guidelines + +After the driver is developed, you can develop self-test cases in the sensor unit test to verify the basic functions of the driver. The developer self-test platform is used as the test environment. + +``` +/* Specify whether to report sensor data. */ +static int32_t g_sensorDataFlag = 0; +/* Retain the address of the sensor interface instance. */ +static const struct SensorInterface *g_sensorDev = nullptr; + +/* Register the data reporting function. */ +static int SensorTestDataCallback(struct SensorEvents *event) +{ + if (event == nullptr) { + return -1; + } + float *data = (float*)event->data; + printf("time [%lld] sensor id [%d] x-[%f] y-[%f] z-[%f]\n\r", event->timestamp, + event->sensorId, (*data), *(data + 1), *(data + g_axisZ)); + if (*data > 1e-5) { + g_sensorDataFlag = 1; + } + return 0; +} +/* Initialize the sensor interface instance before executing the test cases. */ +void HdfSensorTest::SetUpTestCase() +{ + g_sensorDev = NewSensorInterfaceInstance(); + if (g_sensorDev == nullptr) { + printf("test sensorHdi get Module instace failed\n\r"); + } +} +/* Release case resources. */ +void HdfSensorTest::TearDownTestCase() +{ + if (g_sensorDev != nullptr) { + FreeSensorInterfaceInstance(); + g_sensorDev = nullptr; + } +} +/* Verify the sensor driver. */ +HWTEST_F(HdfSensorTest,TestAccelDriver_001, TestSize.Level0) +{ + int32_t sensorInterval = 1000000000; /* Data sampling interval, in nanoseconds */ + int32_t pollTime = 5; /* Data sampling duration, in seconds */ + int32_t accelSensorId = 1; /* Acceleration sensor type ID, which is 1 */ + int32_t count = 0; + int ret; + struct SensorInformation *sensorInfo = nullptr; + + ret = g_sensorDev->Register(SensorTestDataCallback) + EXPECT_EQ(SENSOR_NULL_PTR, ret); + + ret = g_sensorDev->GetAllSensors(&sensorInfo, &count); + EXPECT_EQ(0, ret); + if (sensorInfo == nullptr) { + EXPECT_NE(nullptr, sensorInfo); + return; + } + /* Print the obtained sensor list. */ + for (int i = 0; i < count; i++) { + printf("get sensoriId[%d], info name[%s]\n\r", sensorInfo[i]->sensorId, sensorInfo[i]->sensorName); + } + ret = g_sensorDev->Enable(accelSensorId); + EXPECT_EQ(0, ret); + g_sensorDataFlag = 0; + + ret = g_sensorDev->SetBatch(accelSensorId, sensorInterval, pollTime); + EXPECT_EQ(0, ret); + /* Observe the printed data within the period specified by pollTime. */ + OsalSleep(pollTime); + EXPECT_EQ(1, g_sensorDataFlag); + + ret = g_sensorDev->Disable(accelSensorId); + g_sensorDataFlag = 0; + EXPECT_EQ(0, ret); + + ret = g_sensorDev->Unregister(); + EXPECT_EQ(0, ret); +} +``` diff --git a/en/device-dev/driver/spi.md b/en/device-dev/driver/spi.md index c635810c74c..93b6085f61e 100644 --- a/en/device-dev/driver/spi.md +++ b/en/device-dev/driver/spi.md @@ -1,9 +1,566 @@ -# SPI +# SPI -- **[SPI Overview](spioverview.md)** +- [Overview](#section193356154511) + - [Available APIs](#section232141411476) -- **[SPI Usage Guidelines](spiusage-guidelines.md)** +- [Usage Guidelines](#section71363452477) + - [How to Use](#section32846814820) + - [Obtaining an SPI Device Handle](#section1927265711481) + - [Obtaining SPI Device Configuration Parameters](#section541133418493) + - [Setting SPI Device Configuration Parameters](#section7870106145010) + - [Performing SPI Communication](#section13324155195013) + - [Destroying the SPI Device Handle](#section19661632135117) -- **[SPI Usage Example](spiusage-example.md)** +- [Usage Example](#section06541058155120) +## Overview + +- Serial Peripheral Interface \(SPI\) is a serial bus specification used for high-speed, full-duplex, and synchronous communication. +- SPI is developed by Motorola. It is commonly used for communication with flash memory, real-time clocks, sensors, and analog-to-digital \(A/D\) converters. +- SPI works in controller/device mode. Generally, there is one SPI controller that controls one or more SPI devices. They are connected via four wires: + - SCLK: clock signals output from the SPI controller + - MOSI: data output from the SPI controller and input into an SPI device + - MISO: data output from an SPI device and input into the SPI controller + - CS: signals enabled by an SPI device and controlled by the SPI controller + + +- [Figure 1](#fig15227181812587) shows the connection between one SPI controller and two SPI devices \(device A and device B\). In this figure, device A and device B share three pins \(SCLK, MISO, and MOSI\) of the controller. CS0 of device A and CS1 of device B are connected to CS0 and CS1 of the controller, respectively. + +**Figure 1** SPI controller/device connection + + +![](figures/en-us_image_0000001123742254.png) + +- SPI communication is usually initiated by the SPI controller and is operated as follows: + +1. A single SPI device is selected at a time via the CS to communicate with the SPI controller. +2. Clock signals are provided for the selected SPI device via the SCLK. +3. The SPI controller sends data to SPI devices via the MOSI, and receives data from SPI devices via the MISO. + +- SPI can work in one of the following four modes, equivalent to one of the four possible states for Clock Polarity \(CPOL\) and Clock Phase \(CPHA\): + - If both CPOL and CPHA are **0**, the clock signal level is low in the idle state and data is sampled on the first clock edge. + - If CPOL is **0** and CPHA is **1**, the clock signal level is low in the idle state and data is sampled on the second clock edge. + - If CPOL is **1** and CPHA is **0**, the clock signal level is high in the idle state and data is sampled on the first clock edge. + - If both CPOL and CPHA are **1**, the clock signal level is high in the idle state and data is sampled on the second clock edge. + + +- SPI defines a set of common functions for operating an SPI device, including those for: + - Obtaining and releasing the handle of an SPI device. + - Reading or writing data of a specified length from or into an SPI device. + - Customizing data reading or writing via **SpiMsg**. + - Obtaining and setting SPI device configuration parameters. + + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>Currently, these functions are only applicable in the communication initiated by the SPI controller. + +### Available APIs + +**Table 1** APIs for the SPI driver + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Capability

+

Function

+

Description

+

SPI device handle obtaining/releasing

+

SpiOpen

+

Obtains an SPI device handle.

+

SpiClose

+

Releases an SPI device handle.

+

SPI reading/writing

+

SpiRead

+

Reads data of a specified length from an SPI device.

+

SpiWrite

+

Writes data of a specified length into an SPI device.

+

SpiTransfer

+

Transfers SPI data.

+

SPI device configuration

+

+

SpiSetCfg

+

Sets configuration parameters for an SPI device.

+

SpiGetCfg

+

Obtains configuration parameters of an SPI device.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>All functions provided in this document can be called only in kernel space. + +## Usage Guidelines + +### How to Use + +[Figure 2](#fig23885455594) shows the process of using an SPI device. + +**Figure 2** Process of using an SPI device + + +![](figures/en-us_image_0000001123703482.png) + +### Obtaining an SPI Device Handle + +Before performing SPI communication, obtain an SPI device handle by calling **SpiOpen**. This function returns an SPI device handle with a specified bus number and CS number. + +DevHandle SpiOpen\(const struct SpiDevInfo \*info\); + +**Table 2** Description of **SpiOpen** + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

info

+

Pointer to the SPI device descriptor.

+

Return Value

+

Description

+

NULL

+

Failed to obtain an SPI device handle.

+

Device handle

+

Returns the pointer to the SPI device handle.

+
+ +The following example shows how to obtain an SPI device handle based on the assumption that both the bus number and CS number of the SPI device are **0**. + +``` +struct SpiDevInfo spiDevinfo; /* SPI device descriptor */ +DevHandle spiHandle = NULL; /* SPI device handle */ +spiDevinfo.busNum = 0; /* SPI device bus number */ +spiDevinfo.csNum = 0; /* SPI device CS number */ + +/* Obtain an SPI device handle. */ +spiHandle = SpiOpen(&spiDevinfo); +if (spiHandle == NULL) { + HDF_LOGE("SpiOpen: failed\n"); + return; +} +``` + +### Obtaining SPI Device Configuration Parameters + +After obtaining the SPI device handle, obtain the SPI device configuration parameters by calling the following function: + +int32\_t SpiGetCfg\(DevHandle handle, struct SpiCfg \*cfg\); + +**Table 3** Description of **SpiGetCfg** + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

SPI device handle.

+

cfg

+

Pointer to SPI device configuration parameters.

+

Return Value

+

Description

+

0

+

Succeeded in obtaining SPI device configuration parameters.

+

Negative value

+

Failed to obtain SPI device configuration parameters.

+
+ +``` +int32_t ret; +struct SpiCfg cfg = {0}; /* SPI configuration information */ +ret = SpiGetCfg(spiHandle, &cfg); /* Set SPI device configuration parameters. */ +if (ret != 0) { + HDF_LOGE("SpiGetCfg: failed, ret %d\n", ret); +} +``` + +### Setting SPI Device Configuration Parameters + +After obtaining the SPI device handle, set SPI device configuration parameters by calling the following function: + +int32\_t SpiSetCfg\(DevHandle handle, struct SpiCfg \*cfg\); + +**Table 4** Description of **SpiSetCfg** + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

SPI device handle.

+

cfg

+

Pointer to SPI device configuration parameters.

+

Return Value

+

Description

+

0

+

Succeeded in setting SPI device configuration parameters.

+

Negative value

+

Failed to set SPI device configuration parameters.

+
+ +``` +int32_t ret; +struct SpiCfg cfg = {0}; /* SPI configuration information */ +cfg.mode = SPI_MODE_LOOP; /* Communication in loopback mode */ +cfg.transferMode = PAL_SPI_POLLING_TRANSFER; /* Communication in polling mode */ +cfg.maxSpeedHz = 115200; /* Maximum transmission frequency */ +cfg.bitsPerWord = 8; /* The width of per word to be read or written is 8 bits. */ +ret = SpiSetCfg(spiHandle, &cfg); /* Set SPI device configuration parameters. */ +if (ret != 0) { + HDF_LOGE("SpiSetCfg: failed, ret %d\n", ret); +} +``` + +### Performing SPI Communication + +- Writing data of a specific length into an SPI device + +To write data into an SPI device only once, call the following function: + +int32\_t SpiWrite\(DevHandle handle, uint8\_t \*buf, uint32\_t len\); + +**Table 5** Description of **SpiWrite** + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

SPI device handle.

+

buf

+

Pointer to the data to write.

+

len

+

Length of the data to write.

+

Return Value

+

Description

+

0

+

Succeeded in writing data into an SPI device.

+

Negative value

+

Failed to write data into an SPI device.

+
+ +``` +int32_t ret; +uint8_t wbuff[4] = {0x12, 0x34, 0x56, 0x78}; +/* Write data of a specific length into an SPI device. */ +ret = SpiWrite(spiHandle, wbuff, 4); +if (ret != 0) { + HDF_LOGE("SpiWrite: failed, ret %d\n", ret); +} +``` + +- Reading data of a specific length from an SPI device + +To read data from an SPI device only once, call the following function: + +int32\_t SpiRead\(DevHandle handle, uint8\_t \*buf, uint32\_t len\); + +**Table 6** Description of **SpiRead** + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

SPI device handle.

+

buf

+

Pointer to the data to read.

+

len

+

Length of the data to read.

+

Return Value

+

Description

+

0

+

Succeeded in reading data from an SPI device.

+

Negative value

+

Failed to read data from an SPI device.

+
+ +``` +int32_t ret; +uint8_t rbuff[4] = {0}; +/* Read data of a specific length from an SPI device. */ +ret = SpiRead(spiHandle, rbuff, 4); +if (ret != 0) { + HDF_LOGE("SpiRead: failed, ret %d\n", ret); +} +``` + +- Launching a custom transfer + +To launch a custom transfer, call the following function: + +int32\_t SpiTransfer\(DevHandle handle, struct SpiMsg \*msgs, uint32\_t count\); + +**Table 7** Description of **SpiTransfer** + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

SPI device handle.

+

msgs

+

Pointer to the message array to be transferred.

+

count

+

Number of messages in the message array.

+

Return Value

+

Description

+

0

+

Succeeded in launching the custom transfer.

+

Negative value

+

Failed to launch the custom transfer.

+
+ +``` +int32_t ret; +uint8_t wbuff[1] = {0x12}; +uint8_t rbuff[1] = {0}; +struct SpiMsg msg; /* Custom message to be transferred */ +msg.wbuf = wbuff; /* Pointer to the data to write */ +msg.rbuf = rbuff; /* Pointer to the data to read */ +msg.len = 1; /* The length of the data to read or write is 1 bit. */ +msg.csChange = 1; /* Disable the CS before the next transfer. */ +msg.delayUs = 0; /* No delay before the next transfer */ +msg.speed = 115200; /* Speed of this transfer */ +/* Launch a custom transfer. The number of messages to be transferred is 1. */ +ret = SpiTransfer(spiHandle, &msg, 1); +if (ret != 0) { + HDF_LOGE("SpiTransfer: failed, ret %d\n", ret); +} +``` + +### Destroying the SPI Device Handle + +After the SPI communication, destroy the SPI device handle by calling the following function: + +void SpiClose\(DevHandle handle\); + +This function will release the resources previously obtained. + +**Table 8** Description of **SpiClose** + + + + + + + + + +

Parameter

+

Description

+

handle

+

SPI device handle.

+
+ +``` +PalHandleDestroy(spiHandle); /* Destroy the SPI device handle. */ +``` + +## Usage Example + +The following example shows how to obtain an SPI device handle, set the configuration parameters, and then read or write data from or into the SPI device, and finally destroy the SPI device handle. + +``` +#include "hdf_log.h" +#include "spi_if.h" + +void SpiTestSample(void) +{ + int32_t ret; + struct SpiCfg cfg; /* SPI device configuration information */ + struct SpiDevInfo spiDevinfo; /* SPI device descriptor */ + DevHandle spiHandle = NULL; /* SPI device handle */ + struct SpiMsg msg; /* Custom message to be transferred */ + uint8_t rbuff[4] = { 0 }; + uint8_t wbuff[4] = { 0x12, 0x34, 0x56, 0x78 }; + uint8_t wbuff2[4] = { 0xa1, 0xb2, 0xc3, 0xd4 }; + + spiDevinfo.busNum = 0; /* SPI device bus number */ + spiDevinfo.csNum = 0; /* SPI device CS number */ + spiHandle = SpiOpen(&spiDevinfo); /* Obtain an SPI device handle based on spiDevinfo. */ + if (spiHandle == NULL) { + HDF_LOGE("SpiOpen: failed\n"); + return; + } + /* Obtain configuration parameters of an SPI device. */ + ret = SpiGetCfg(spiHandle, &cfg); + if (ret != 0) { + HDF_LOGE("SpiGetCfg: failed, ret %d\n", ret); + goto err; + } + cfg.maxSpeedHz = 115200; /* Change the maximum clock frequency to 115200. */ + cfg.bitsPerWord = 8; /* Change the word width to 8 bits. */ + /* Set configuration parameters for an SPI device. */ + ret = SpiSetCfg(spiHandle, &cfg); + if (ret != 0) { + HDF_LOGE("SpiSetCfg: failed, ret %d\n", ret); + goto err; + } + /* Write specified length of data into an SPI device. */ + ret = SpiWrite(spiHandle, wbuff, 4); + if (ret != 0) { + HDF_LOGE("SpiWrite: failed, ret %d\n", ret); + goto err; + } + /* Read data of a specified length from an SPI device. */ + ret = SpiRead(spiHandle, rbuff, 4); + if (ret != 0) { + HDF_LOGE("SpiRead: failed, ret %d\n", ret); + goto err; + } + msg.wbuf = wbuff2; /* Pointer to the data to write */ + msg.rbuf = rbuff; /* Pointer to the data to read */ + msg.len = 4; /* The length of the data to read or write is 4 bits. */ + msg.csChange = 1; /* Disable the CS before the next transfer. */ + msg.delayUs = 0; /* No delay before the next transfer */ + msg.speed = 115200; /* Speed of this transfer */ + /* Launch a custom transfer. The number of messages to be transferred is 1. */ + ret = SpiTransfer(spiHandle, &msg, 1); + if (ret != 0) { + HDF_LOGE("SpiTransfer: failed, ret %d\n", ret); + goto err; + } +err: + /* Destroy the SPI device handle. */ + SpiClose(spiHandle); +} +``` diff --git a/en/device-dev/driver/spioverview.md b/en/device-dev/driver/spioverview.md deleted file mode 100644 index 46303b336ba..00000000000 --- a/en/device-dev/driver/spioverview.md +++ /dev/null @@ -1,107 +0,0 @@ -# SPI Overview - -- [Introduction](#section9202632114011) -- [Available APIs](#section1859594134119) - -## Introduction - -- Serial Peripheral Interface \(SPI\) is a serial bus specification used for high-speed, full-duplex, and synchronous communication. -- SPI is developed by Motorola. It is commonly used for communication with flash memory, real-time clocks, sensors, and analog-to-digital \(A/D\) converters. -- SPI works in controller/device mode. Generally, there is one SPI controller that controls one or more SPI devices. They are connected via four wires: - - SCLK: clock signals output from the SPI controller - - MOSI: data output from the SPI controller and input into an SPI device - - MISO: data output from an SPI device and input into the SPI controller - - CS: signals enabled by an SPI device and controlled by the SPI controller - - -- [Figure 1](#fig15227181812587) shows the connection between one SPI controller and two SPI devices \(device A and device B\). In this figure, device A and device B share three pins \(SCLK, MISO, and MOSI\) of the controller. CS0 of device A and CS1 of device B are connected to CS0 and CS1 of the controller, respectively. - -**Figure 1** SPI controller/device connection - - -![](figures/en-us_image_0000001054142582.png) - -- SPI communication is usually initiated by the SPI controller and is operated as follows: - -1. A single SPI device is selected at a time via the CS to communicate with the SPI controller. -2. Clock signals are provided for the selected SPI device via the SCLK. -3. The SPI controller sends data to SPI devices via the MOSI, and receives data from SPI devices via the MISO. - -- SPI can work in one of the following four modes, equivalent to one of the four possible states for Clock Polarity \(CPOL\) and Clock Phase \(CPHA\): - - If both CPOL and CPHA are **0**, the clock signal level is low in the idle state and data is sampled on the first clock edge. - - If CPOL is **0** and CPHA is **1**, the clock signal level is low in the idle state and data is sampled on the second clock edge. - - If CPOL is **1** and CPHA is **0**, the clock signal level is high in the idle state and data is sampled on the first clock edge. - - If both CPOL and CPHA are **1**, the clock signal level is high in the idle state and data is sampled on the second clock edge. - - -- SPI defines a set of common functions for operating an SPI device, including those for: - - Obtaining and releasing the handle of an SPI device. - - Reading or writing data of a specified length from or into an SPI device. - - Customizing data reading or writing via **SpiMsg**. - - Obtaining and setting SPI device configuration parameters. - - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->Currently, these functions are only applicable in the communication initiated by the SPI controller. - -## Available APIs - -**Table 1** APIs for the SPI driver - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Capability

-

Function

-

Description

-

SPI device handle obtaining/releasing

-

SpiOpen

-

Obtains an SPI device handle.

-

SpiClose

-

Releases an SPI device handle.

-

SPI reading/writing

-

SpiRead

-

Reads data of a specified length from an SPI device.

-

SpiWrite

-

Writes data of a specified length into an SPI device.

-

SpiTransfer

-

Transfers SPI data.

-

SPI device configuration

-

-

SpiSetCfg

-

Sets configuration parameters for an SPI device.

-

SpiGetCfg

-

Obtains configuration parameters of an SPI device.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->All functions provided in this document can be called only in kernel space. - diff --git a/en/device-dev/driver/spiusage-example.md b/en/device-dev/driver/spiusage-example.md deleted file mode 100644 index f3d6cb2b6f6..00000000000 --- a/en/device-dev/driver/spiusage-example.md +++ /dev/null @@ -1,70 +0,0 @@ -# SPI Usage Example - -The following is a usage example of an SPI device, including how to obtain an SPI device handle, set the configuration parameters, and then read or write data from or into the SPI device, and finally destroy the SPI device handle. - -``` -#include "hdf_log.h" -#include "spi_if.h" - -void SpiTestSample(void) -{ - int32_t ret; - struct SpiCfg cfg; /* SPI device configuration information */ - struct SpiDevInfo spiDevinfo; /* SPI device descriptor */ - DevHandle spiHandle = NULL; /* SPI device handle */ - struct SpiMsg msg; /* Custom message to be transferred */ - uint8_t rbuff[4] = { 0 }; - uint8_t wbuff[4] = { 0x12, 0x34, 0x56, 0x78 }; - uint8_t wbuff2[4] = { 0xa1, 0xb2, 0xc3, 0xd4 }; - - spiDevinfo.busNum = 0; /* SPI device bus number */ - spiDevinfo.csNum = 0; /* SPI device CS number */ - spiHandle = SpiOpen(&spiDevinfo); /* Obtain an SPI device handle based on spiDevinfo. */ - if (spiHandle == NULL) { - HDF_LOGE("SpiOpen: failed\n"); - return; - } - /* Obtain configuration parameters of an SPI device. */ - ret = SpiGetCfg(spiHandle, &cfg); - if (ret != 0) { - HDF_LOGE("SpiGetCfg: failed, ret %d\n", ret); - goto err; - } - cfg.maxSpeedHz = 115200; /* Change the maximum clock frequency to 115200. */ - cfg.bitsPerWord = 8; /* Change the word width to 8 bits. */ - /* Set configuration parameters for an SPI device. */ - ret = SpiSetCfg(spiHandle, &cfg); - if (ret != 0) { - HDF_LOGE("SpiSetCfg: failed, ret %d\n", ret); - goto err; - } - /* Write specified length of data into an SPI device. */ - ret = SpiWrite(spiHandle, wbuff, 4); - if (ret != 0) { - HDF_LOGE("SpiWrite: failed, ret %d\n", ret); - goto err; - } - /* Read data of a specified length from an SPI device. */ - ret = SpiRead(spiHandle, rbuff, 4); - if (ret != 0) { - HDF_LOGE("SpiRead: failed, ret %d\n", ret); - goto err; - } - msg.wbuf = wbuff2; /* Pointer to the data to write */ - msg.rbuf = rbuff; /* Pointer to the data to read */ - msg.len = 4; /* The length of the data to be read or written is 4 bits. */ - msg.csChange = 1; /* Disable the CS before the next transfer. */ - msg.delayUs = 0; /* No delay before the next transfer */ - msg.speed = 115200; /* Speed of this transfer */ - /* Launch a custom transfer. The number of messages to be transferred is 1. */ - ret = SpiTransfer(spiHandle, &msg, 1); - if (ret != 0) { - HDF_LOGE("SpiTransfer: failed, ret %d\n", ret); - goto err; - } -err: - /* Destroy the SPI device handle. */ - SpiClose(spiHandle); -} -``` - diff --git a/en/device-dev/driver/spiusage-guidelines.md b/en/device-dev/driver/spiusage-guidelines.md deleted file mode 100644 index f5f9c482c05..00000000000 --- a/en/device-dev/driver/spiusage-guidelines.md +++ /dev/null @@ -1,386 +0,0 @@ -# SPI Usage Guidelines - -- [How to Use](#section691514116412) -- [Obtaining an SPI Device Handle](#section12372204616215) -- [Obtaining SPI Device Configuration Parameters](#section17121446171311) -- [Setting SPI Device Configuration Parameters](#section97691946634) -- [Performing SPI Communication](#section197116254416) -- [Destroying the SPI Device Handle](#section117661819108) - -## How to Use - -[Figure 1](#fig23885455594) shows the process of using an SPI device. - -**Figure 1** Process of using an SPI device - - -![](figures/en-us_image_0000001054726248.png) - -## Obtaining an SPI Device Handle - -Before performing SPI communication, obtain an SPI device handle by calling **SpiOpen**. This function returns an SPI device handle with a specified bus number and CS number. - -DevHandle SpiOpen\(const struct SpiDevInfo \*info\); - -**Table 1** Description of **SpiOpen** - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

info

-

Pointer to the SPI device descriptor.

-

Return Value

-

Description

-

NULL

-

Failed to obtain an SPI device handle.

-

Device handle

-

Returns the pointer to the SPI device handle.

-
- -The following example shows how to obtain an SPI device handle based on the assumption that both the bus number and CS number of the SPI device are **0**. - -``` -struct SpiDevInfo spiDevinfo; /* SPI device descriptor */ -DevHandle spiHandle = NULL; /* SPI device handle */ -spiDevinfo.busNum = 0; /* SPI device bus number */ -spiDevinfo.csNum = 0; /* SPI device CS number */ - -/* Obtain an SPI device handle. */ -spiHandle = SpiOpen(&spiDevinfo); -if (spiHandle == NULL) { - HDF_LOGE("SpiOpen: failed\n"); - return; -} -``` - -## Obtaining SPI Device Configuration Parameters - -After obtaining the SPI device handle, obtain the SPI device configuration parameters by calling the following function: - -int32\_t SpiGetCfg\(DevHandle handle, struct SpiCfg \*cfg\); - -**Table 2** Description of **SpiGetCfg** - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the SPI device handle.

-

cfg

-

Pointer to SPI device configuration parameters.

-

Return Value

-

Description

-

0

-

Succeeded in obtaining SPI device configuration parameters.

-

Negative value

-

Failed to obtain SPI device configuration parameters.

-
- -``` -int32_t ret; -struct SpiCfg cfg = {0}; /* SPI configuration information */ -ret = PalSpiSetCfg(spiHandle, &cfg); /* Set SPI device configuration parameters. */ -if (ret != 0) { - HDF_LOGE("SpiGetCfg: failed, ret %d\n", ret); -} -``` - -## Setting SPI Device Configuration Parameters - -After obtaining the SPI device handle, set SPI device configuration parameters by calling the following function: - -int32\_t SpiSetCfg\(DevHandle handle, struct SpiCfg \*cfg\); - -**Table 3** Description of **SpiSetCfg** - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the SPI device handle.

-

cfg

-

Pointer to SPI device configuration parameters.

-

Return Value

-

Description

-

0

-

Succeeded in setting SPI device configuration parameters.

-

Negative value

-

Failed to set SPI device configuration parameters.

-
- -``` -int32_t ret; -struct SpiCfg cfg = {0}; /* SPI configuration information */ -cfg.mode = SPI_MODE_LOOP; /* Communicate in loopback mode. */ -cfg.comMode = PAL_SPI_POLLING_TRANSFER; /* Communicate in polling mode. */ -cfg.maxSpeedHz = 115200; /* Maximum transmission frequency */ -cfg.bitsPerWord = 8; /* The width of per word to be read or written is 8 bits. */ -ret = SpiSetCfg(spiHandle, &cfg); /* Set SPI device configuration parameters. */ -if (ret != 0) { - HDF_LOGE("SpiSetCfg: failed, ret %d\n", ret); -} -``` - -## Performing SPI Communication - -- Writing data of a specified length into an SPI device - -To write data into an SPI device only once, call the following function: - -int32\_t SpiWrite\(DevHandle handle, uint8\_t \*buf, uint32\_t len\); - -**Table 4** Description of **SpiWrite** - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the SPI device handle.

-

buf

-

Pointer to the data to write.

-

len

-

Length of the data to write.

-

Return Value

-

Description

-

0

-

Succeeded in writing data into an SPI device.

-

Negative value

-

Failed to write data into an SPI device.

-
- -``` -int32_t ret; -uint8_t wbuff[4] = {0x12, 0x34, 0x56, 0x78}; -/* Write data of a specified length into an SPI device. */ -ret = SpiWrite(spiHandle, wbuff, 4); -if (ret != 0) { - HDF_LOGE("SpiWrite: failed, ret %d\n", ret); -} -``` - -- Reading data of a specified length from an SPI device - -To read data from an SPI device only once, call the following function: - -int32\_t SpiRead\(DevHandle handle, uint8\_t \*buf, uint32\_t len\); - -**Table 5** Description of **SpiRead** - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the SPI device handle.

-

buf

-

Pointer to the data to read.

-

len

-

Length of the data to read.

-

Return Value

-

Description

-

0

-

Succeeded in reading data from an SPI device.

-

Negative value

-

Failed to read data from an SPI device.

-
- -``` -int32_t ret; -uint8_t rbuff[4] = {0}; -/* Read data of a specified length from an SPI device. */ -ret = SpiRead(spiHandle, rbuff, 4); -if (ret != 0) { - HDF_LOGE("SpiRead: failed, ret %d\n", ret); -} -``` - -- Launching a custom transfer - -To launch a custom transfer, call the following function: - -int32\_t SpiTransfer\(DevHandle handle, struct SpiMsg \*msgs, uint32\_t count\); - -**Table 6** Description of **SpiTransfer** - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the SPI device handle.

-

msgs

-

Pointer to the message array to be transferred.

-

count

-

Length of the message array.

-

Return Value

-

Description

-

0

-

Succeeded in launching the custom transfer.

-

Negative value

-

Failed to launch the custom transfer.

-
- -``` -int32_t ret; -uint8_t wbuff[1] = {0x12}; -uint8_t rbuff[1] = {0}; -struct SpiMsg msg; /* Custom message to be transferred */ -msg.wbuf = wbuff; /* Pointer to the data to read */ -msg.rbuf = rbuff; /* Pointer to the data to read */ -msg.len = 1; /* The length of the data to be read or written is 1 bit. */ -msg.csChange = 1; /* Disable the CS before the next transfer. */ -msg.delayUs = 0; /* No delay before the next transfer */ -msg.speed = 115200; /* Speed of this transfer */ -/* Launch a custom transfer. The number of messages to be transferred is 1. */ -ret = SpiTransfer(spiHandle, &msg, 1); -if (ret != 0) { - HDF_LOGE("SpiTransfer: failed, ret %d\n", ret); -} -``` - -## Destroying the SPI Device Handle - -After the SPI communication, destroy the SPI device handle by calling the following function: - -void SpiClose\(DevHandle handle\); - -This function will release the resources previously obtained. - -**Table 7** Description of **SpiClose** - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the SPI device handle

-
- -``` -PalHandleDestroy(spiHandle); /* Destroy the SPI device handle. */ -``` - diff --git a/en/device-dev/driver/touchscreen.md b/en/device-dev/driver/touchscreen.md index 49b35d23fb1..8a4c422ce4a 100644 --- a/en/device-dev/driver/touchscreen.md +++ b/en/device-dev/driver/touchscreen.md @@ -1,9 +1,410 @@ -# TOUCHSCREEN +# TOUCHSCREEN -- **[Touchscreen Overview](touchscreenoverview.md)** +- [Overview](#section175431838101617) + - [Available APIs](#section17667171301711) -- **[Touchscreen Development Guidelines](touchscreendevelopment-guidelines.md)** +- [Development Guidelines](#section65745222184) + - [How to Develop](#section865734181916) -- **[Touchscreen Development Example](touchscreendevelopment-example.md)** +- [Development Example](#section263714411191) + - [Add the touchscreen driver-related descriptions.](#section18249155619195) + - [Board-level Hardware Configuration and Private Data Configuration](#section3571192072014) + - [Adding the Touchscreen Driver](#section6356758162015) +## Overview + +- **Functions of the Touchscreen driver** + + The Touchscreen driver is used to power on its integrated circuit \(IC\), configure and initialize hardware pins, register interrupts, configure Inter-Integrated Circuit \(I2C\) or SPI APIs, set input-related configurations, and download and update firmware. + + +- **Layers of the Touchscreen driver** + + This section describes how to develop the touchscreen driver based on the input driver model. [Figure 1](#fig6251184817261) shows an overall architecture of the touchscreen driver. + + The input driver is developed based on the hardware driver foundation \(HDF\), platform APIs, and operating system abstraction layer \(OSAL\) APIs. It provides hardware driver capabilities through the input Hardware Driver Interfaces \(HDIs\) for upper-layer input services to control the touchscreen. + + +**Figure 1** Architecture of the input driver model +![](figures/architecture-of-the-input-driver-model.png "architecture-of-the-input-driver-model") + +- **Input driver model** + + The input driver model mainly consists of the device manager, common drivers, and chip drivers. The platform data channel provides capabilities for sending data generated by the touchscreen from the kernel to the user space. The driver model adapts to different touchscreen devices and hardware platforms via the configuration file, improving the efficiency of the touchscreen development. The description for each part of the input driver model is as follows: + + - Input device manager: provides input device drivers with the APIs for registering or unregistering input devices and manages the input device list. + + - Input common driver: provides common abstract drivers \(such as the touchscreen common driver\) of various input devices for initializing the board-level hardware, processing hardware interrupts, and registering input devices with the input device manager. + + - Input chip driver: provides different chip drivers of each vendor. You can minimize the workload for the input chip driver development by calling differentiated APIs reserved by the input platform driver. + + - Event hub: provides a unified data reporting channel, which enables input devices to report input events. + + - HDF input config: parses and manages the board-level configuration as well as the private configuration of input devices. + + +- **Advantages of developing drivers based on the HDF** + + The touchscreen driver is developed based on the [HDF](driver-development.md) and is implemented via calls to the OSAL and platform APIs, including bus APIs and OS native APIs \(such as memory, lock, thread, and timer\). The OSAL and platform APIs hide the differences of underlying hardware, so that the touchscreen driver can be migrated across platforms and OSs. In this regard, you can develop the touchscreen driver only once but deploy it on multiple devices. + + +### Available APIs + +Based on the attributes of the pins, interfaces on the touchscreens can be classified into the following types: + +- Power interfaces +- I/O control interfaces +- Communications interfaces + +**Figure 2** Common pins of the touchscreen +![](figures/common-pins-of-the-touchscreen.png "common-pins-of-the-touchscreen") + +The interfaces shown in the figure are described as follows: + +1. **Power interfaces** + - LDO\_1P8: 1.8 V digital circuits + - LDO\_3P3: 3.3 V analog circuits + + Generally, the touchscreen driver IC is separated from the LCD driver IC. In this case, the touchscreen driver IC requires both 1.8 V and 3.3 V power supplies. Nowadays, the touchscreen driver IC and LCD driver IC can be integrated. Therefore, the touchscreen, requires only the 1.8 V power supply, and the 3.3 V power required internally is supplied by the LCD VSP power \(typical value: 5.5 V\) in the driver IC. + + +2. **I/O control interfaces** + - RESET: reset pin, which is used to reset the driver IC on the host when suspending or resuming the system. + - INT: interrupt pin, which needs to be set to the input direction and pull-up status during driver initialization. After detecting an external touch signal, the driver triggers the interrupt by operating the interrupt pin. The driver reads the touch reporting data in the ISR function. + +3. **Communications interfaces** + - I2C: Since only a small amount of touch data is reported by the touchscreen, I2C is used to transmit the reported data. For details about the I2C protocol and interfaces, see [I2C](i2c.md#section1695201514281). + - SPI: In addition to touch reporting data coordinates, some vendors need to obtain basic capacitance data. Therefore, Serial Peripheral Interface \(SPI\) is used to transmit such huge amount of data. For details about the SPI protocol and interfaces, see [SPI](spi.md#section71363452477). + + +## Development Guidelines + +Regardless of the OS and system on a chip \(SoC\), the input driver is developed based on the HDF, platform, and OSAL APIs to provide a unified driver model for touchscreen devices. + +- The following uses the touchscreen driver as an example to describe the loading process of the input driver model: + + \(1\) Complete the device description configuration, such as the loading priority, board-level hardware information, and private data, by referring to the existing template. + + \(2\) Load the input device management driver. The input management driver is loaded automatically by the HDF to create and initialize the device manager. + + \(3\) Load the platform driver. The platform driver is loaded automatically by the HDF to parse the board-level configuration, initialize the hardware, and provide the API for registering the touchscreen. + + \(4\) Load the touchscreen driver. The touchscreen driver is loaded automatically by the HDF to instantiate the touchscreen device, parse the private data, and implement differentiated APIs provided by the platform. + + \(5\) Register the instantiated touchscreen device with the platform driver. Then bind this device to the platform driver, and complete touchscreen initialization such as interrupt registration and power-on and power-off. + + \(6\) Instantiate the input device and register it with the input manager after the touchscreen is initialized. + + +### How to Develop + +1. Add the touchscreen driver-related descriptions. + + Currently, the input driver is developed based on the HDF and is loaded and started by the HDF. Register the driver information, such as whether to load the driver and the loading priority in the configuration file. Then, the HDF starts the registered driver modules one by one. For details about the driver configuration, see [Driver Development](driver-development.md#section1969312275533). + +2. Complete the board-level configuration and private data configuration of the touchscreen. + + Configure the required I/O pins. For example, configure a register for the I2C pin reserved for the touchscreen to use I2C for transmitting data. + +3. Implement differentiated adaptation APIs of the touchscreen. + + Use the platform APIs to perform operations for the reset pins, interrupt pins, and power based on the communications interfaces designed for boards. For details about the GPIO-related operations, see [GPIO](gpio.md#section259614242196). + + +## Development Example + +This example describes how to develop the touchscreen driver. + +### Add the touchscreen driver-related descriptions. + +The information about modules of the input driver model is shown as follows and enables the HDF to load the modules in sequence. For details, see [Driver Development](driver-development.md). + +``` +input :: host { + hostName = "input_host"; + priority = 100; + device_input_manager :: device { + device0 :: deviceNode { + policy = 2; // Publish services externally. + priority = 100; // Loading priority. The input device manager in the input driver has the highest priority. + preload = 0; // Value 0 indicates that the driver is to be loaded, and value 1 indicates the opposite. + permission = 0660; + moduleName = "HDF_INPUT_MANAGER"; + serviceName = "input_dev_manager"; + deviceMatchAttr = ""; + } + } + device_hdf_touch :: device { + device0 :: deviceNode { + policy = 2; + priority = 120; + preload = 0; + permission = 0660; + moduleName = "HDF_TOUCH"; + serviceName = "event1"; + deviceMatchAttr = "touch_device1"; + } + } + + device_touch_chip :: device { + device0 :: deviceNode { + policy = 0; + priority = 130; + preload = 0; + permission = 0660; + moduleName = "HDF_TOUCH_SAMPLE"; + serviceName = "hdf_touch_sample_service"; + deviceMatchAttr = "zsj_sample_5p5"; + } + } +} +``` + +### Board-level Hardware Configuration and Private Data Configuration + +The following describes the configuration of the board-level hardware and private data of the touchscreen. You can modify the configuration based on service requirements. + +``` +root { + input_config { + touchConfig { + touch0 { + boardConfig { + match_attr = "touch_device1"; + inputAttr { + inputType = 0; // Value 0 indicates that the input device is a touchscreen. + solutionX = 480; + solutionY = 960; + devName = "main_touch"; // Device name + } + busConfig { + busType = 0; // Value 0 indicates the I2C bus. + busNum = 6; + clkGpio = 86; + dataGpio = 87; + i2cClkIomux = [0x114f0048, 0x403]; // Register configuration of the i2c_clk pin + i2cDataIomux = [0x114f004c, 0x403]; // Register configuration of the i2c_data pin + } + pinConfig { + rstGpio = 3; + intGpio = 4; + rstRegCfg = [0x112f0094, 0x400]; // Register configuration of the reset pin + intRegCfg = [0x112f0098, 0x400]; // Register configuration of the interrupt pin + } + powerConfig { + vccType = 2; // Values 1, 2, and 3 indicate the low-dropout regulator (LDO), GPIO, and PMIC, respectively. + vccNum = 20; // The GPIO number is 20. + vccValue = 1800; // The voltage amplitude is 1800 mV. + vciType = 1; + vciNum = 12; + vciValue = 3300; + } + featureConfig { + capacitanceTest = 0; + gestureMode = 0; + gloverMOde = 0; + coverMode = 0; + chargerMode = 0; + knuckleMode = 0; + } + } + chipConfig { + template touchChip { + match_attr = ""; + chipName = "sample"; + vendorName = "zsj"; + chipInfo = "AAAA11222"; // The first four characters indicate the product name. The fifth and sixth characters indicate the IC model. The last three characters indicate the chip model. + busType = 0; + deviceAddr = 0x5D; + irqFlag = 2; // Values 1 and 2 indicate that the interrupt is triggered on the rising and falling edges, respectively. Values 4 and 8 indicate that the interrupt is triggered by the high and low levels, respectively. + maxSpeed = 400; + chipVersion = 0; + powerSequence { + /* Power-on sequence is described as follows: + [Type, status, direction, delay] + Value 0 indicates the power or pin is empty. Values 1 and 2 indicate the VCC (1.8 V) and VCI (3.3 V) power, respectively. Values 3 and 4 indicate the reset and interrupt pins, respectively. + Values 0 and 1 indicate the power-off or pull-down, and the power-on or pull-up, respectively. Value 2 indicates that no operation is performed. + Values 0 and 1 indicate the input and output directions, respectively. Value 2 indicates that no operation is performed. + Delay time, in milliseconds. + */ + powerOnSeq = [4, 0, 1, 0, + 3, 0, 1, 10, + 3, 1, 2, 60, + 4, 2, 0, 0]; + suspendSeq = [3, 0, 2, 10]; + resumeSeq = [3, 1, 2, 10]; + powerOffSeq = [3, 0, 2, 10, + 1, 0, 2, 20]; + } + } + chip0 :: touchChip { + match_attr = "zsj_sample_5p5"; + chipInfo = "ZIDN45100"; + chipVersion = 0; + } + } + } + } + } +} +``` + +### Adding the Touchscreen Driver + +The following example shows how to implement the differentiated APIs provided by the platform driver to obtain and parse the touchscreen data. You can adjust the development process based on the board and touchscreen in use. + +``` +/* Parse the touch reporting data read from the touchscreen into coordinates. */ +static void ParsePointData(ChipDevice *device, FrameData *frame, uint8_t *buf, uint8_t pointNum) +{ + int32_t resX = device->driver->boardCfg->attr.resolutionX; + int32_t resY = device->driver->boardCfg->attr.resolutionY; + + for (int32_t i = 0; i < pointNum; i++) { + frame->fingers[i].y = (buf[GT_POINT_SIZE * i + GT_X_LOW] & ONE_BYTE_MASK) | + ((buf[GT_POINT_SIZE * i + GT_X_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); + frame->fingers[i].x = (buf[GT_POINT_SIZE * i + GT_Y_LOW] & ONE_BYTE_MASK) | + ((buf[GT_POINT_SIZE * i + GT_Y_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); + frame->fingers[i].valid = true; + } +} +/* Obtain the touch reporting data from the chip. */ +static int32_t ChipDataHandle(ChipDevice *device) +{ + int32_t ret; + uint8_t touchStatus = 0; + uint8_t pointNum; + uint8_t buf[GT_POINT_SIZE * MAX_SUPPORT_POINT] = {0}; + InputI2cClient *i2cClient = &device->driver->i2cClient; + uint8_t reg[GT_ADDR_LEN] = {0}; + FrameData *frame = &device->driver->frameData; + reg[0] = (GT_BUF_STATE_ADDR >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; + reg[1] = GT_BUF_STATE_ADDR & ONE_BYTE_MASK; + ret = InputI2cRead(i2cClient, reg, GT_ADDR_LEN, &touchStatus, 1); + if (ret < 0 || touchStatus == GT_EVENT_INVALID) { + return HDF_FAILURE; + } + OsalMutexLock(&device->driver->mutex); + (void)memset_s(frame, sizeof(FrameData), 0, sizeof(FrameData)); + if (touchStatus == GT_EVENT_UP) { + frame->realPointNum = 0; + frame->definedEvent = TOUCH_UP; + goto exit; + } + reg[0] = (GT_X_LOW_BYTE_BASE >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; + reg[1] = GT_X_LOW_BYTE_BASE & ONE_BYTE_MASK; + pointNum = touchStatus & GT_FINGER_NUM_MASK; + if (pointNum <= 0 || pointNum > MAX_SUPPORT_POINT) { + HDF_LOGE("%s: pointNum is invalid, %d", __func__, pointNum); + (void)ChipCleanBuffer(i2cClient); + OsalMutexUnlock(&device->driver->mutex); + return HDF_FAILURE; + } + frame->realPointNum = pointNum; + frame->definedEvent = TOUCH_DOWN; + /* Read the touch reporting data from the register. */ + (void)InputI2cRead(i2cClient, reg, GT_ADDR_LEN, buf, GT_POINT_SIZE * pointNum); + /* Parse the touch reporting data. */ + ParsePointData(device, frame, buf, pointNum); +exit: + OsalMutexUnlock(&device->driver->mutex); + if (ChipCleanBuffer(i2cClient) != HDF_SUCCESS) { + return HDF_FAILURE; + } + return HDF_SUCCESS; +} + +static struct TouchChipOps g_sampleChipOps = { + .Init = ChipInit, + .Detect = ChipDetect, + .Resume = ChipResume, + .Suspend = ChipSuspend, + .DataHandle = ChipDataHandle, +}; + +static TouchChipCfg *ChipConfigInstance(struct HdfDeviceObject *device) +{ + TouchChipCfg *chipCfg = (TouchChipCfg *)OsalMemAlloc(sizeof(TouchChipCfg)); + if (chipCfg == NULL) { + HDF_LOGE("%s: instance chip config failed", __func__); + return NULL; + } + (void)memset_s(chipCfg, sizeof(TouchChipCfg), 0, sizeof(TouchChipCfg)); + /* Parse the private configuration of the touchscreen. */ + if (ParseTouchChipConfig(device->property, chipCfg) != HDF_SUCCESS) { + HDF_LOGE("%s: parse chip config failed", __func__); + OsalMemFree(chipCfg); + chipCfg = NULL; + } + return chipCfg; +} + +static ChipDevice *ChipDeviceInstance(void) +{ + ChipDevice *chipDev = (ChipDevice *)OsalMemAlloc(sizeof(ChipDevice)); + if (chipDev == NULL) { + HDF_LOGE("%s: instance chip device failed", __func__); + return NULL; + } + (void)memset_s(chipDev, sizeof(ChipDevice), 0, sizeof(ChipDevice)); + return chipDev; +} + +static void FreeChipConfig(TouchChipCfg *config) +{ + if (config->pwrSeq.pwrOn.buf != NULL) { + OsalMemFree(config->pwrSeq.pwrOn.buf); + } + if (config->pwrSeq.pwrOff.buf != NULL) { + OsalMemFree(config->pwrSeq.pwrOff.buf); + } + OsalMemFree(config); +} + +static int32_t HdfSampleChipInit(struct HdfDeviceObject *device) +{ + TouchChipCfg *chipCfg = NULL; + ChipDevice *chipDev = NULL; + HDF_LOGE("%s: enter", __func__); + if (device == NULL) { + return HDF_ERR_INVALID_PARAM; + } + /* Parse the private configuration of the touchscreen. */ + chipCfg = ChipConfigInstance(device); + if (chipCfg == NULL) { + return HDF_ERR_MALLOC_FAIL; + } + /* Instantiate the touchscreen device. */ + chipDev = ChipDeviceInstance(); + if (chipDev == NULL) { + goto freeCfg; + } + chipDev->chipCfg = chipCfg; + chipDev->ops = &g_sampleChipOps; + chipDev->chipName = chipCfg->chipName; + chipDev->vendorName = chipCfg->vendorName; + + /* Register the touchscreen device with the platform driver. */ + if (RegisterChipDevice(chipDev) != HDF_SUCCESS) { + goto freeDev; + } + HDF_LOGI("%s: exit succ, chipName = %s", __func__, chipCfg->chipName); + return HDF_SUCCESS; + +freeDev: + OsalMemFree(chipDev); +freeCfg: + FreeChipConfig(chipCfg); + return HDF_FAILURE; +} + +struct HdfDriverEntry g_touchSampleChipEntry = { + .moduleVersion = 1, + .moduleName = "HDF_TOUCH_SAMPLE", + .Init = HdfSampleChipInit, +}; + +HDF_INIT(g_touchSampleChipEntry); +``` + diff --git a/en/device-dev/driver/touchscreendevelopment-example.md b/en/device-dev/driver/touchscreendevelopment-example.md deleted file mode 100644 index 8d49343af5e..00000000000 --- a/en/device-dev/driver/touchscreendevelopment-example.md +++ /dev/null @@ -1,300 +0,0 @@ -# Touchscreen Development Example - -- [Device Description Configuration](#section85281142102317) -- [Board-level Hardware Configuration and Private Data Configuration](#section189081946192410) -- [Adding the Touchscreen Driver](#section19856687253) - -This example describes how to develop the touchscreen driver. - -## Device Description Configuration - -The information about modules of the input driver model is shown as follows and enables the HDF to load the modules in sequence. For details, see [Driver Development](driver-development.md). - -``` -input :: host { - hostName = "input_host"; - priority = 100; - device_input_manager :: device { - device0 :: deviceNode { - policy = 2; // Publish services externally. - priority = 100; // Loading priority. The input device manager in the input driver has the highest priority. - preload = 0; // Value 0 indicates that the driver is to be loaded, and value 1 indicates the opposite. - permission = 0660; - moduleName = "HDF_INPUT_MANAGER"; - serviceName = "input_dev_manager"; - deviceMatchAttr = ""; - } - } - device_hdf_touch :: device { - device0 :: deviceNode { - policy = 2; - priority = 120; - preload = 0; - permission = 0660; - moduleName = "HDF_TOUCH"; - serviceName = "event1"; - deviceMatchAttr = "touch_device1"; - } - } - - device_touch_chip :: device { - device0 :: deviceNode { - policy = 0; - priority = 130; - preload = 0; - permission = 0660; - moduleName = "HDF_TOUCH_SAMPLE"; - serviceName = "hdf_touch_sample_service"; - deviceMatchAttr = "zsj_sample_5p5"; - } - } -} -``` - -## Board-level Hardware Configuration and Private Data Configuration - -The following describes the configuration of the board-level hardware and private data of the touchscreen. You can modify the configuration based on the service requirements. - -``` -root { - input_config { - touchConfig { - touch0 { - boardConfig { - match_attr = "touch_device1"; - inputAttr { - inputType = 0; // Value 0 indicates that the input device is a touchscreen. - solutionX = 480; - solutionY = 960; - devName = "main_touch"; // Device name - } - busConfig { - busType = 0; // Value 0 indicates the I2C bus. - busNum = 6; - clkGpio = 86; - dataGpio = 87; - i2cClkIomux = [0x114f0048, 0x403]; // Register configuration of the i2c_clk pin - i2cDataIomux = [0x114f004c, 0x403]; // Register configuration of the i2c_data pin - } - pinConfig { - rstGpio = 3; - intGpio = 4; - rstRegCfg = [0x112f0094, 0x400]; // Register configuration of the reset pin - intRegCfg = [0x112f0098, 0x400]; // Register configuration of the interrupt pin - } - powerConfig { - vccType = 2; // Values 1, 2, and 3 indicate the low-dropout regulator (LDO), GPIO, and PMIC, respectively. - vccNum = 20; // The GPIO number is 20. - vccValue = 1800; // The voltage amplitude is 1800 mV. - vciType = 1; - vciNum = 12; - vciValue = 3300; - } - featureConfig { - capacitanceTest = 0; - gestureMode = 0; - gloverMOde = 0; - coverMode = 0; - chargerMode = 0; - knuckleMode = 0; - } - } - chipConfig { - template touchChip { - match_attr = ""; - chipName = "sample"; - vendorName = "zsj"; - chipInfo = "AAAA11222"; // The first four characters indicate the product name. The fifth and sixth characters indicate the IC model. The last three characters indicate the chip model. - busType = 0; - deviceAddr = 0x5D; - irqFlag = 2; // Values 1 and 2 indicate that the interrupt is triggered on the rising and falling edges, respectively. Values 4 and 8 indicate that the interrupt is triggered by the high and low levels, respectively. - maxSpeed = 400; - chipVersion = 0; - powerSequence { - /* Power-on sequence is described as follows: - [Type, status, direction, delay] - Value 0 indicates the power or pin is empty. Values 1 and 2 indicate the VCC (1.8 V) and VCI (3.3 V) power, respectively. Values 3 and 4 indicate the reset and interrupt pins, respectively. - Values 0 and 1 indicate the power-off or pull-down, and the power-on or pull-up, respectively. Value 2 indicates that no operation is performed. - Values 0 and 1 indicate the input and output directions, respectively. Value 2 indicates that no operation is performed. - Delay time, in milliseconds. - */ - powerOnSeq = [4, 0, 1, 0, - 3, 0, 1, 10, - 3, 1, 2, 60, - 4, 2, 0, 0]; - suspendSeq = [3, 0, 2, 10]; - resumeSeq = [3, 1, 2, 10]; - powerOffSeq = [3, 0, 2, 10, - 1, 0, 2, 20]; - } - } - chip0 :: touchChip { - match_attr = "zsj_sample_5p5"; - chipInfo = "ZIDN45100"; - chipVersion = 0; - } - } - } - } - } -} -``` - -## Adding the Touchscreen Driver - -The following example shows how to implement the differentiated APIs provided by the platform driver to obtain and parse the touchscreen data. You can adjust the development process based on the board and touchscreen in use. - -``` -/* Parse the touch reporting data read from the touchscreen into coordinates. */ -static void ParsePointData(ChipDevice *device, FrameData *frame, uint8_t *buf, uint8_t pointNum) -{ - int32_t resX = device->driver->boardCfg->attr.resolutionX; - int32_t resY = device->driver->boardCfg->attr.resolutionY; - - for (int32_t i = 0; i < pointNum; i++) { - frame->fingers[i].y = (buf[GT_POINT_SIZE * i + GT_X_LOW] & ONE_BYTE_MASK) | - ((buf[GT_POINT_SIZE * i + GT_X_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); - frame->fingers[i].x = (buf[GT_POINT_SIZE * i + GT_Y_LOW] & ONE_BYTE_MASK) | - ((buf[GT_POINT_SIZE * i + GT_Y_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); - frame->fingers[i].valid = true; - } -} -/* Obtain the touch reporting data from the chip. */ -static int32_t ChipDataHandle(ChipDevice *device) -{ - int32_t ret; - uint8_t touchStatus = 0; - uint8_t pointNum; - uint8_t buf[GT_POINT_SIZE * MAX_SUPPORT_POINT] = {0}; - InputI2cClient *i2cClient = &device->driver->i2cClient; - uint8_t reg[GT_ADDR_LEN] = {0}; - FrameData *frame = &device->driver->frameData; - reg[0] = (GT_BUF_STATE_ADDR >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; - reg[1] = GT_BUF_STATE_ADDR & ONE_BYTE_MASK; - ret = InputI2cRead(i2cClient, reg, GT_ADDR_LEN, &touchStatus, 1); - if (ret < 0 || touchStatus == GT_EVENT_INVALID) { - return HDF_FAILURE; - } - OsalMutexLock(&device->driver->mutex); - (void)memset_s(frame, sizeof(FrameData), 0, sizeof(FrameData)); - if (touchStatus == GT_EVENT_UP) { - frame->realPointNum = 0; - frame->definedEvent = TOUCH_UP; - goto exit; - } - reg[0] = (GT_X_LOW_BYTE_BASE >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; - reg[1] = GT_X_LOW_BYTE_BASE & ONE_BYTE_MASK; - pointNum = touchStatus & GT_FINGER_NUM_MASK; - if (pointNum <= 0 || pointNum > MAX_SUPPORT_POINT) { - HDF_LOGE("%s: pointNum is invalid, %d", __func__, pointNum); - (void)ChipCleanBuffer(i2cClient); - OsalMutexUnlock(&device->driver->mutex); - return HDF_FAILURE; - } - frame->realPointNum = pointNum; - frame->definedEvent = TOUCH_DOWN; - /* Read the touch reporting data from the register. */ - (void)InputI2cRead(i2cClient, reg, GT_ADDR_LEN, buf, GT_POINT_SIZE * pointNum); - /* Parse the touch reporting data. */ - ParsePointData(device, frame, buf, pointNum); -exit: - OsalMutexUnlock(&device->driver->mutex); - if (ChipCleanBuffer(i2cClient) != HDF_SUCCESS) { - return HDF_FAILURE; - } - return HDF_SUCCESS; -} - -static struct TouchChipOps g_sampleChipOps = { - .Init = ChipInit, - .Detect = ChipDetect, - .Resume = ChipResume, - .Suspend = ChipSuspend, - .DataHandle = ChipDataHandle, -}; - -static TouchChipCfg *ChipConfigInstance(struct HdfDeviceObject *device) -{ - TouchChipCfg *chipCfg = (TouchChipCfg *)OsalMemAlloc(sizeof(TouchChipCfg)); - if (chipCfg == NULL) { - HDF_LOGE("%s: instance chip config failed", __func__); - return NULL; - } - (void)memset_s(chipCfg, sizeof(TouchChipCfg), 0, sizeof(TouchChipCfg)); - /* Parse the private configuration of the touchscreen. */ - if (ParseTouchChipConfig(device->property, chipCfg) != HDF_SUCCESS) { - HDF_LOGE("%s: parse chip config failed", __func__); - OsalMemFree(chipCfg); - chipCfg = NULL; - } - return chipCfg; -} - -static ChipDevice *ChipDeviceInstance(void) -{ - ChipDevice *chipDev = (ChipDevice *)OsalMemAlloc(sizeof(ChipDevice)); - if (chipDev == NULL) { - HDF_LOGE("%s: instance chip device failed", __func__); - return NULL; - } - (void)memset_s(chipDev, sizeof(ChipDevice), 0, sizeof(ChipDevice)); - return chipDev; -} - -static void FreeChipConfig(TouchChipCfg *config) -{ - if (config->pwrSeq.pwrOn.buf != NULL) { - OsalMemFree(config->pwrSeq.pwrOn.buf); - } - if (config->pwrSeq.pwrOff.buf != NULL) { - OsalMemFree(config->pwrSeq.pwrOff.buf); - } - OsalMemFree(config); -} - -static int32_t HdfSampleChipInit(struct HdfDeviceObject *device) -{ - TouchChipCfg *chipCfg = NULL; - ChipDevice *chipDev = NULL; - HDF_LOGE("%s: enter", __func__); - if (device == NULL) { - return HDF_ERR_INVALID_PARAM; - } - /* Parse the private configuration of the touchscreen. */ - chipCfg = ChipConfigInstance(device); - if (chipCfg == NULL) { - return HDF_ERR_MALLOC_FAIL; - } - /* Instantiate the touchscreen device. */ - chipDev = ChipDeviceInstance(); - if (chipDev == NULL) { - goto freeCfg; - } - chipDev->chipCfg = chipCfg; - chipDev->ops = &g_sampleChipOps; - chipDev->chipName = chipCfg->chipName; - chipDev->vendorName = chipCfg->vendorName; - - /* Register the touchscreen device with the platform driver. */ - if (RegisterChipDevice(chipDev) != HDF_SUCCESS) { - goto freeDev; - } - HDF_LOGI("%s: exit succ, chipName = %s", __func__, chipCfg->chipName); - return HDF_SUCCESS; - -freeDev: - OsalMemFree(chipDev); -freeCfg: - FreeChipConfig(chipCfg); - return HDF_FAILURE; -} - -struct HdfDriverEntry g_touchSampleChipEntry = { - .moduleVersion = 1, - .moduleName = "HDF_TOUCH_SAMPLE", - .Init = HdfSampleChipInit, -}; - -HDF_INIT(g_touchSampleChipEntry); -``` - diff --git a/en/device-dev/driver/touchscreendevelopment-guidelines.md b/en/device-dev/driver/touchscreendevelopment-guidelines.md deleted file mode 100644 index 9e1543c1e66..00000000000 --- a/en/device-dev/driver/touchscreendevelopment-guidelines.md +++ /dev/null @@ -1,35 +0,0 @@ -# Touchscreen Development Guidelines - -- [How to Develop](#section1255740132616) - -Regardless of the OS and system on a chip \(SoC\), the input driver is developed based on the HDF, platform, and OSAL APIs to provide a unified driver model for touchscreen devices. - -- The following uses the touchscreen driver as an example to describe the loading process of the input driver model: - - Add the touchscreen driver-related descriptions: You can add the touchscreen driver-related descriptions, such as the loading priority, board-level hardware information, and private data, by referring to the existing template. - - - Load the input device manager driver: The HDF automatically loads the input device manager driver, which then creates the device manager and initializes it. - - - Load the touchscreen common driver: The HDF automatically loads the touchscreen common driver, which then parses the board-level configuration, initializes the hardware, and provides the API for registering the touchscreen. - - - Load the touchscreen chip driver: The HDF automatically loads the touchscreen chip driver, which then instantiates the touchscreen device, parses the private data, and implements differentiated APIs provided by the platform. - - - Register the touchscreen device with the platform driver: Register the instantiated touchscreen device with the platform driver, bind this device to the platform driver, and complete touchscreen initialization such as interrupt registration and power-on and power-off. - - - Register the input device: Instantiate the input device and register it with the input manager after the touchscreen is initialized. - - -## How to Develop - -1. Add the touchscreen driver-related descriptions. - - Currently, the input driver is developed based on the HDF and is loaded and started by the HDF. Register the driver information, such as whether to load the driver and the loading priority in the configuration file. Then, the HDF starts the registered driver modules one by one. For details about the driver configuration, see [How to Develop](driver-development.md#section1969312275533). - -2. Complete the board-level configuration and private data configuration of the touchscreen. - - Configure the required I/O pins. For example, configure a register for the I2C pin reserved for the touchscreen to use I2C for transmitting data. - -3. Implement differentiated adaptation APIs of the touchscreen. - - Use the platform APIs to perform operations for the reset pins, interrupt pins and power based on the communications interfaces designed for boards. For details about the GPIO-related operations, see [GPIO Usage Guidelines](gpiousage-guidelines.md). - - diff --git a/en/device-dev/driver/touchscreenoverview.md b/en/device-dev/driver/touchscreenoverview.md deleted file mode 100644 index b136894e5ad..00000000000 --- a/en/device-dev/driver/touchscreenoverview.md +++ /dev/null @@ -1,71 +0,0 @@ -# Touchscreen Overview - -- [Introduction](#section124332411260) -- [Available APIs](#section10542625172618) - -## Introduction - -- **Functions of the Touchscreen driver** - - The Touchscreen driver is used to power on its integrated circuit \(IC\), configure and initialize hardware pins, register interrupts, configure Inter-Integrated Circuit \(I2C\) or SPI APIs, set input-related configurations, and download and update firmware. - - -- **Layers of the Touchscreen driver** - - This section describes how to develop the touchscreen driver based on the input driver model. [Figure 1](#fig6251184817261) shows an overall architecture of the touchscreen driver. - - The input driver is developed based on the hardware driver foundation \(HDF\), platform APIs, and operating system abstraction layer \(OSAL\) APIs. It provides hardware driver capabilities through the input Hardware Driver Interfaces \(HDIs\) for upper-layer input services to control the touchscreen. - - -**Figure 1** Architecture of the input driver model -![](figures/architecture-of-the-input-driver-model.png "architecture-of-the-input-driver-model") - -- **Input driver model** - - The input driver model mainly consists of the device manager, common drivers, and chip drivers. The platform data channel provides capabilities for sending data generated by the touchscreen from the kernel to the user space. The driver model adapts to different touchscreen devices and hardware platforms via the configuration file, improving the efficiency of the touchscreen development. The description for each part of the input driver model is as follows: - - - Input device manager: provides various input device drivers with the APIs for registering or unregistering input devices and manages the input device list. - - - Input common driver: provides common abstract drivers \(such as the touchscreen common driver\) of various input devices for initializing the board-level hardware, processing hardware interrupts, and registering input devices with the input device manager. - - - Input chip driver: provides different chip drivers of each vendor. You can minimize the workload for the input chip driver development by calling differentiated APIs reserved by the input platform driver. - - - Event hub: provides a unified data reporting channel, which enables various input devices to report input events. - - - HDF input config: parses and manages the board-level configuration as well as the private configuration of input devices. - - -- **Advantages of developing drivers based on the HDF** - - The touchscreen driver is developed based on the HDF and is implemented via calls to the OSAL and platform APIs, including bus APIs and OS native APIs \(such as memory, lock, thread, and timer\). The OSAL and platform APIs hide the differences of underlying hardware, so that the touchscreen driver can be migrated across platforms and OSs. In this regard, you can develop the touchscreen driver only once but deploy it on multiple devices. - - -## Available APIs - -Based on the attributes of the pins, interfaces on the touchscreens can be classified into the following types: - -- Power interfaces -- I/O control interfaces -- Communications interfaces - -**Figure 2** Common pins of the touchscreen -![](figures/common-pins-of-the-touchscreen.png "common-pins-of-the-touchscreen") - -The interfaces shown in the figure are described as follows: - -1. **Power interfaces** - - LDO\_1P8: 1.8 V digital circuits - - LDO\_3P3: 3.3 V analog circuits - - Generally, the touchscreen driver IC is separated from the LCD driver IC. In this case, the touchscreen driver IC requires both 1.8 V and 3.3 V power supplies. Nowadays, the touchscreen driver IC and LCD driver IC can be integrated. Therefore, the touchscreen, requires only the 1.8 V power supply, and the 3.3 V power required internally is supplied by the LCD VSP power \(typical value: 5.5 V\) in the driver IC. - - -2. **I/O control interfaces** - - RESET: reset pin, which is used to reset the driver IC on the host when suspending or resuming the system. - - INT: interrupt pin, which needs to be set to the input direction and pull-up status during driver initialization. After detecting an external touch signal, the driver triggers the interrupt by operating the interrupt pin. The driver reads the touch reporting data in the ISR function. - -3. **Communications interfaces** - - I2C: Since only a small amount of touch data is reported by the touchscreen, I2C is used to transmit the reported data. For details about the I2C protocol and interfaces, see [I2C Usage Guidelines](i2c-usage-guidelines.md). - - SPI: In addition to touch reporting data coordinates, some vendors need to obtain basic capacitance data. Therefore, Serial Peripheral Interface \(SPI\) is used to transmit such huge amount of data. For details about the SPI protocol and interfaces, see [SPI Usage Guidelines](spiusage-guidelines.md). - - diff --git a/en/device-dev/driver/uart.md b/en/device-dev/driver/uart.md index 9abd98bb4e6..508eb32cd95 100644 --- a/en/device-dev/driver/uart.md +++ b/en/device-dev/driver/uart.md @@ -1,9 +1,682 @@ -# UART +# UART -- **[UART Overview](uartoverview.md)** +- [Overview](#section833012453535) + - [Available APIs](#section1680292311549) -- **[UART Usage Guidelines](uartusage-guidelines.md)** +- [Usage Guidelines](#section12779050105412) + - [How to Use](#section1858116395510) + - [Obtaining a UART Device Handle](#section124512065617) + - [Setting the UART Baud Rate](#section86881004579) + - [Obtaining the UART Baud Rate](#section897032965712) + - [Setting the UART Device Attributes](#section129141884588) + - [Obtaining UART Device Attributes](#section18689637165812) + - [Setting the UART Transmission Mode](#section72713435918) + - [Writing Data of a Specified Length into a UART Device](#section128001736155919) + - [Reading Data of a Specified Length from a UART Device](#section92851601604) + - [Destroying the UART Device Handle](#section1477410521406) -- **[UART Usage Example](uartusage-example.md)** +- [Usage Example](#section35404241311) +## Overview + +- The Universal Asynchronous Receiver/Transmitter \(UART\) is a universal serial data bus used for asynchronous communication. It enables bi-directional communication between devices in full-duplex mode. +- UART is widely used to print information for debugging or to connect to various external modules such as GPS and Bluetooth. +- A UART is connected to other modules through two wires \(as shown in [Figure 1](#fig209936401896)\) or four wires \(as shown in [Figure 2](#fig1435614171015)\). + - TX: TX pin of the transmitting UART. It is connected to the RX pin of the peer UART. + - RX: RX pin of the receiving UART. It is connected to the TX pin of the peer UART. + - RTS: Request to Send signal pin. It is connected to the CTS pin of the peer UART and is used to indicate whether the local UART is ready to receive data. + - CTS: Clear to Send signal pin. It is connected to the RTS pin of the peer UART and is used to indicate whether the local UART is allowed to send data to the peer end. + + **Figure 1** 2-wire UART communication + + + ![](figures/en-us_image_0000001170262141.png) + + **Figure 2** 4-wire UART communication + + + ![](figures/en-us_image_0000001123582482.png) + + +- The transmitting and receiving UARTs must ensure that they have the same settings on particular attributes such as the baud rate and data format \(start bit, data bit, parity bit, and stop bit\) before they start to communicate. During data transmission, a UART sends data to the peer end over the TX pin and receives data from the peer end over the RX pin. When the size of the buffer used by a UART for storing received data reaches the preset threshold, the RTS signal of the UART changes to **1** \(data cannot be received\), and the peer UART stops sending data to it because its CTS signal does not allow it to send data. +- The UART interface defines a set of common functions for operating a UART port, including obtaining and releasing device handles, reading and writing data of a specified length, and obtaining and setting the baud rate, as well as the device attributes. + +### Available APIs + +**Table 1** APIs for the UART driver + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Capability

+

Function

+

Description

+

Obtaining and releasing device handles

+

+

UartOpen

+

Obtains the UART device handle.

+

UartClose

+

Releases a specified UART device handle.

+

Reading and writing data

+

+

UartRead

+

Reads data of a specified length from a UART device.

+

UartWrite

+

Writes data of a specified length into a UART device.

+

Obtaining and setting the baud rate

+

UartGetBaud

+

Obtains the UART baud rate.

+

UartSetBaud

+

Sets the UART baud rate.

+

Obtaining and setting device attributes

+

+

UartGetAttribute

+

Obtains the UART device attributes.

+

UartSetAttribute

+

Sets the UART device attributes.

+

Setting the transmission mode

+

UartSetTransMode

+

Sets the UART transmission mode.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>All functions provided in this document can be called only in kernel space. + +## Usage Guidelines + +### How to Use + +[Figure 3](#fig1852173020185) shows the process of using a UART device. + +**Figure 3** Process of using a UART device + + +![](figures/en-us_image_0000001170227689.png) + +### Obtaining a UART Device Handle + +Before performing UART communication, call **UartOpen** to obtain a UART device handle. This function returns the pointer to the UART device handle with a specified port number. + +DevHandle UartOpen\(uint32\_t port\); + +**Table 2** Description of UartOpen + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

port

+

UART port number.

+

Return Value

+

Description

+

NULL

+

Failed to obtain the UART device handle.

+

Device handle

+

UART device handle.

+
+ +The following example shows how to obtain a UART device handle based on the assumption that the UART port number is **3**: + +``` +DevHandle handle = NULL; /* The UART device handle */ +uint32_t port = 3; /* UART port number */ +handle = UartOpen(port); +if (handle == NULL) { + HDF_LOGE("UartOpen: failed!\n"); + return; +} +``` + +### Setting the UART Baud Rate + +After obtaining the UART device handle, set the UART baud rate by calling the following function: + +int32\_t UartSetBaud\(DevHandle handle, uint32\_t baudRate\); + +**Table 3** Description of UartSetBaud + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

UART device handle.

+

baudRate

+

Baud rate of the UART to set.

+

Return Value

+

Description

+

0

+

Succeeded in setting the UART baud rate.

+

Negative value

+

Failed to set the UART baud rate.

+
+ +The following example shows how to set the UART baud rate to **9600**: + +``` +int32_t ret; +/* Set the UART baud rate to 9600. */ +ret = UartSetBaud(handle, 9600); +if (ret != 0) { + HDF_LOGE("UartSetBaud: failed, ret %d\n", ret); +} +``` + +### Obtaining the UART Baud Rate + +After setting the UART baud rate, obtain the current baud rate by calling the following function: + +int32\_t UartGetBaud\(DevHandle handle, uint32\_t \*baudRate\); + +**Table 4** Description of UartGetBaud + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

UART device handle.

+

baudRate

+

Pointer to the UART baud rate.

+

Return Value

+

Description

+

0

+

Succeeded in obtaining the UART baud rate.

+

Negative value

+

Failed to obtain the UART baud rate.

+
+ +The following example shows how to obtain the UART baud rate: + +``` +int32_t ret; +uint32_t baudRate; +/* Obtain the UART baud rate. */ +ret = UartGetBaud(handle, &baudRate); +if (ret != 0) { + HDF_LOGE("UartGetBaud: failed, ret %d\n", ret); +} +``` + +### Setting the UART Device Attributes + +Before performing UART communication, set the UART device attributes by calling the following function: + +int32\_t UartSetAttribute\(DevHandle handle, struct UartAttribute \*attribute\); + +**Table 5** Description of UartSetAttribute + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

UART device handle.

+

attribute

+

Pointer to the UART device attributes to set.

+

Return Value

+

Description

+

0

+

Succeeded in setting the UART device attributes.

+

Negative value

+

Failed to set the UART device attributes.

+
+ +The following example shows how to set the UART device attributes: + +``` +int32_t ret; +struct UartAttribute attribute; +attribute.dataBits = UART_ATTR_DATABIT_7; /* Set the number of data bits to 7. */ +attribute.parity = UART_ATTR_PARITY_NONE; /* Set the parity bit to no parity. */ +attribute.stopBits = UART_ATTR_STOPBIT_1; /* Set the stop bit to 1. */ +attribute.rts = UART_ATTR_RTS_DIS; /* Disable the RTS signal. */ +attribute.cts = UART_ATTR_CTS_DIS; /* Disable the CTS signal. */ +attribute.fifoRxEn = UART_ATTR_RX_FIFO_EN; /* Enable RX FIFO. */ +attribute.fifoTxEn = UART_ATTR_TX_FIFO_EN; /* Enable TX FIFO. */ +/* Set the UART device attributes. */ +ret = UartSetAttribute(handle, &attribute); +if (ret != 0) { + HDF_LOGE("UartSetAttribute: failed, ret %d\n", ret); +} +``` + +### Obtaining UART Device Attributes + +After setting the UART device attributes, obtain the current device attributes by calling the following function: + +int32\_t UartGetAttribute\(DevHandle handle, struct UartAttribute \*attribute\); + +**Table 6** Description of UartGetAttribute + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

UART device handle.

+

attribute

+

Pointer to the UART device attributes.

+

Return Value

+

Description

+

0

+

Succeeded in obtaining the UART device attributes.

+

Negative value

+

Failed to obtain the UART device attributes.

+
+ +The following example shows how to obtain the UART device attributes: + +``` +int32_t ret; +struct UartAttribute attribute; +/* Obtain the UART attributes. */ +ret = UartGetAttribute(handle, &attribute); +if (ret != 0) { + HDF_LOGE("UartGetAttribute: failed, ret %d\n", ret); +} +``` + +### Setting the UART Transmission Mode + +Before performing UART communication, set the UART transmission mode by calling the following function: + +int32\_t UartSetTransMode\(DevHandle handle, enum UartTransMode mode\); + +**Table 7** Description of UartSetTransMode + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

UART device handle.

+

mode

+

UART transmission mode to set.

+

Return Value

+

Description

+

0

+

Succeeded in setting the UART transmission mode.

+

Negative value

+

Failed to set the UART transmission mode.

+
+ +The following example shows how to set the transmission mode to **UART\_MODE\_RD\_BLOCK**: + +``` +int32_t ret; +/* Set the UART transmission mode. */ +ret = UartSetTransMode(handle, UART_MODE_RD_BLOCK); +if (ret != 0) { + HDF_LOGE("UartSetTransMode: failed, ret %d\n", ret); +} +``` + +### Writing Data of a Specified Length into a UART Device + +To write data into a UART device, call the following function: + +int32\_t UartWrite\(DevHandle handle, uint8\_t \*data, uint32\_t size\); + +**Table 8** Description of UartWrite + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

UART device handle.

+

data

+

Pointer to the data to write.

+

size

+

Length of the data to write.

+

Return Value

+

Description

+

0

+

Succeeded in writing data into the UART device.

+

Negative value

+

Failed to write data into the UART device.

+
+ +The following example shows how to write data of a specified length into the UART device: + +``` +int32_t ret; +uint8_t wbuff[5] = {1, 2, 3, 4, 5}; +/* Write 5-byte data into the UART device. */ +ret = UartWrite(handle, wbuff, 5); +if (ret != 0) { + HDF_LOGE("UartWrite: failed, ret %d\n", ret); +} +``` + +### Reading Data of a Specified Length from a UART Device + +To write data into a UART device, call the following function: + +int32\_t UartRead\(DevHandle handle, uint8\_t \*data, uint32\_t size\); + +**Table 9** Description of UartRead + + + + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

UART device handle.

+

data

+

Pointer to the buffer for receiving the data.

+

size

+

Length of the data to read.

+

Return Value

+

Description

+

Non-negative value

+

Length of the data read from the UART device.

+

Negative value

+

Failed to read data from the UART device.

+
+ +The following example shows how to read data of a specified length from the UART device: + +``` +int32_t ret; +uint8_t rbuff[5] = {0}; +/* Read 5-byte data from the UART device. */ +ret = UartRead(handle, rbuff, 5); +if (ret < 0) { + HDF_LOGE("UartRead: failed, ret %d\n", ret); +} +``` + +>![](public_sys-resources/icon-caution.gif) **CAUTION:** +>Data is successfully read from the UART device if a non-negative value is returned. If the return value is **0**, no valid data can be read from the UART device. If the return value is greater than **0**, the return value is the length of the data actually read from the UART device. The length is less than or equal to the value of **size** and does not exceed the maximum length of data to read at a time specified by the UART controller in use. + +### Destroying the UART Device Handle + +After the UART communication, destroy the UART device handle by calling the following function: + +void UartClose\(DevHandle handle\); + +This function will release the resources previously obtained. + +**Table 10** Description of UartClose + + + + + + + + + + +

Parameter

+

Description

+

handle

+

UART device handle.

+
+ +The following example shows how to destroy the UART device handle: + +``` +UartClose(handle); /* Destroy the UART device handle. */ +``` + +## Usage Example + +The following is a usage example of a UART device, including how to obtain the UART device handle, set the baud rate, device attributes, and transmission mode, read data from or write data into the UART device, and then destroy the UART device handle. + +``` +#include "hdf_log.h" +#include "uart_if.h" + +void UartTestSample(void) +{ + int32_t ret; + uint32_t port; + DevHandle handle = NULL; + uint8_t wbuff[5] = { 1, 2, 3, 4, 5 }; + uint8_t rbuff[5] = { 0 }; + struct UartAttribute attribute; + attribute.dataBits = UART_ATTR_DATABIT_7; /* Set the number of data bits to 7. */ + attribute.parity = UART_ATTR_PARITY_NONE; /* Set the parity bit to no parity. */ + attribute.stopBits = UART_ATTR_STOPBIT_1; /* Set the stop bit to 1. */ + attribute.rts = UART_ATTR_RTS_DIS; /* Disable the RTS signal. */ + attribute.cts = UART_ATTR_CTS_DIS; /* Disable the CTS signal. */ + attribute.fifoRxEn = UART_ATTR_RX_FIFO_EN; /* Enable RX FIFO. */ + attribute.fifoTxEn = UART_ATTR_TX_FIFO_EN; /* Enable TX FIFO. */ + /* Set the UART port number actually used. */ + port = 1; + /* Obtain the UART device handle. */ + handle = UartOpen(port); + if (handle == NULL) { + HDF_LOGE("UartOpen: failed!\n"); + return; + } + /* Set the UART baud rate to 9600. */ + ret = UartSetBaud(handle, 9600); + if (ret != 0) { + HDF_LOGE("UartSetBaud: failed, ret %d\n", ret); + goto _ERR; + } + /* Set the UART device attributes. */ + ret = UartSetAttribute(handle, &attribute); + if (ret != 0) { + HDF_LOGE("UartSetAttribute: failed, ret %d\n", ret); + goto _ERR; + } + /* Set the UART transmission mode to non-blocking mode. */ + ret = UartSetTransMode(handle, UART_MODE_RD_NONBLOCK); + if (ret != 0) { + HDF_LOGE("UartSetTransMode: failed, ret %d\n", ret); + goto _ERR; + } + /* Write 5-byte data into the UART device. */ + ret = UartWrite(handle, wbuff, 5); + if (ret != 0) { + HDF_LOGE("UartWrite: failed, ret %d\n", ret); + goto _ERR; + } + /* Read 5-byte data from the UART device. */ + ret = UartRead(handle, rbuff, 5); + if (ret < 0) { + HDF_LOGE("UartRead: failed, ret %d\n", ret); + goto _ERR; + } +_ERR: + /* Destroy the UART device handle. */ + UartClose(handle); +} +``` diff --git a/en/device-dev/driver/uartoverview.md b/en/device-dev/driver/uartoverview.md deleted file mode 100644 index 2238f2ca556..00000000000 --- a/en/device-dev/driver/uartoverview.md +++ /dev/null @@ -1,106 +0,0 @@ -# UART Overview - -- [Introduction](#section14770623164917) -- [Available APIs](#section149505462492) - -## Introduction - -- The Universal Asynchronous Receiver/Transmitter \(UART\) is a universal serial data bus used for asynchronous communication. It enables bi-directional communication between devices in full-duplex mode. -- UART is widely used to print information for debugging or to connect to various external modules such as GPS and Bluetooth. -- A UART is connected to other modules through two wires \(as shown in [Figure 1](#fig209936401896)\) or four wires \(as shown in [Figure 2](#fig1435614171015)\). - - TX: TX pin of the transmitting UART. It is connected to the RX pin of the peer UART. - - RX: RX pin of the receiving UART. It is connected to the TX pin of the peer UART. - - RTS: Request to Send signal pin. It is connected to the CTS pin of the peer UART and is used to indicate whether the local UART is ready to receive data. - - CTS: Clear to Send signal pin. It is connected to the RTS pin of the peer UART and is used to indicate whether the local UART is allowed to send data to the peer end. - - **Figure 1** 2-wire UART communication - - - ![](figures/en-us_image_0000001053926237.png) - - **Figure 2** 4-wire UART communication - - - ![](figures/en-us_image_0000001054007499.png) - - -- The transmitting and receiving UARTs must ensure that they have the same settings on particular attributes such as the baud rate and data format \(start bit, data bit, parity bit, and stop bit\) before they start to communicate. During data transmission, a UART sends data to the peer end over the TX pin and receives data from the peer end over the RX pin. When the size of the buffer used by a UART for storing received data reaches the preset threshold, the RTS signal of the UART changes to **1** \(data cannot be received\), and the peer UART stops sending data to it because its CTS signal does not allow it to send data. -- The UART interface defines a set of common functions for operating a UART port, including obtaining and releasing device handles, reading and writing data of a specified length, and obtaining and setting the baud rate, as well as the device attributes. - -## Available APIs - -**Table 1** APIs for the UART driver - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Capability

-

Function

-

Description

-

Obtaining and releasing device handles

-

-

UartOpen

-

Obtains the UART device handle.

-

UartClose

-

Releases a specified UART device handle.

-

Reading and writing data

-

-

UartRead

-

Reads data of a specified length from a UART device.

-

UartWrite

-

Writes data of a specified length into a UART device.

-

Obtaining and setting the baud rate

-

UartGetBaud

-

Obtains the UART baud rate.

-

UartSetBaud

-

Sets the UART baud rate.

-

Obtaining and setting device attributes

-

-

UartGetAttribute

-

Obtains the UART device attributes.

-

UartSetAttribute

-

Sets the UART device attributes.

-

Setting the transmission mode

-

UartSetTransMode

-

Sets the UART transmission mode.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->All functions provided in this document can be called only in kernel space. - diff --git a/en/device-dev/driver/uartusage-example.md b/en/device-dev/driver/uartusage-example.md deleted file mode 100644 index 32572d40521..00000000000 --- a/en/device-dev/driver/uartusage-example.md +++ /dev/null @@ -1,67 +0,0 @@ -# UART Usage Example - -The following is a usage example of a UART device, including how to obtain the UART device handle, set the baud rate, device attributes, and transmission mode, read data from or write data into the UART device, and then destroy the UART device handle. - -``` -#include "hdf_log.h" -#include "uart_if.h" - -void UartTestSample(void) -{ - int32_t ret; - uint32_t port; - DevHandle handle = NULL; - uint8_t wbuff[5] = { 1, 2, 3, 4, 5 }; - uint8_t rbuff[5] = { 0 }; - struct UartAttribute attribute; - attribute.dataBits = UART_ATTR_DATABIT_7; /* Set the number of data bits to 7. */ - attribute.parity = UART_ATTR_PARITY_NONE; /* Set the parity bit to no parity. */ - attribute.stopBits = UART_ATTR_STOPBIT_1; /* Set the stop bit to 1. */ - attribute.rts = UART_ATTR_RTS_DIS; /* Disable the RTS signal. */ - attribute.cts = UART_ATTR_CTS_DIS; /* Disable the CTS signal. */ - attribute.fifoRxEn = UART_ATTR_RX_FIFO_EN; /* Enable RX FIFO. */ - attribute.fifoTxEn = UART_ATTR_TX_FIFO_EN; /* Enable TX FIFO. */ - /* Set the UART port number actually used. */ - port = 1; - /* Obtain the UART device handle. */ - handle = UartOpen(port); - if (handle == NULL) { - HDF_LOGE("UartOpen: failed!\n"); - return; - } - /* Set the UART baud rate to 9600. */ - ret = UartSetBaud(handle, 9600); - if (ret != 0) { - HDF_LOGE("UartSetBaud: failed, ret %d\n", ret); - goto _ERR; - } - /* Set the UART device attributes. */ - ret = UartSetAttribute(handle, &attribute); - if (ret != 0) { - HDF_LOGE("UartSetAttribute: failed, ret %d\n", ret); - goto _ERR; - } - /* Set the UART transmission mode to non-blocking mode. */ - ret = UartSetTransMode(handle, UART_MODE_RD_NONBLOCK); - if (ret != 0) { - HDF_LOGE("UartSetTransMode: failed, ret %d\n", ret); - goto _ERR; - } - /* Write 5-byte data into the UART device. */ - ret = UartWrite(handle, wbuff, 5); - if (ret != 0) { - HDF_LOGE("UartWrite: failed, ret %d\n", ret); - goto _ERR; - } - /* Read 5-byte data from the UART device. */ - ret = UartRead(handle, rbuff, 5); - if (ret < 0) { - HDF_LOGE("UartRead: failed, ret %d\n", ret); - goto _ERR; - } -_ERR: - /* Destroy the UART device handle. */ - UartClose(handle); -} -``` - diff --git a/en/device-dev/driver/uartusage-guidelines.md b/en/device-dev/driver/uartusage-guidelines.md deleted file mode 100644 index edd894e92db..00000000000 --- a/en/device-dev/driver/uartusage-guidelines.md +++ /dev/null @@ -1,506 +0,0 @@ -# UART Usage Guidelines - -- [How to Use](#section47784125013) -- [Obtaining a UART Device Handle](#section146445153110) -- [Setting the UART Baud Rate](#section1862705516339) -- [Obtaining the UART Baud Rate](#section1263651563414) -- [Setting the UART Device Attributes](#section1770091483814) -- [Obtaining UART Device Attributes](#section117543316384) -- [Setting the UART Transmission Mode](#section187233112369) -- [Writing Data of a Specified Length into a UART Device](#section82416423368) -- [Reading Data of a Specified Length from a UART Device](#section192177171373) -- [Destroying the UART Device Handle](#section63131236354) - -## How to Use - -[Figure 1](#fig1852173020185) shows the process of using a UART device. - -**Figure 1** Process of using a UART device - - -![](figures/en-us_image_0000001054006983.png) - -## Obtaining a UART Device Handle - -Before performing UART communication, call **UartOpen** to obtain a UART device handle. This function returns the pointer to the UART device handle with a specified port number. - -DevHandle UartOpen\(uint32\_t port\); - -**Table 1** Description of **UartOpen** - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

port

-

UART port number.

-

Return Value

-

Description

-

NULL

-

Failed to obtain the UART device handle.

-

Device handle

-

Pointer to the UART device handle.

-
- -The following example shows how to obtain a UART device handle based on the assumption that the UART port number is **3**: - -``` -DevHandle handle = NULL; /* The UART device handle */ -uint32_t port = 3; /* UART port number */ -handle = UartOpen(port); -if (handle == NULL) { - HDF_LOGE("UartOpen: failed!\n"); - return; -} -``` - -## Setting the UART Baud Rate - -After obtaining the UART device handle, set the UART baud rate by calling the following function: - -int32\_t UartSetBaud\(DevHandle handle, uint32\_t baudRate\); - -**Table 2** Description of **UartSetBaud** - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the UART device handle.

-

baudRate

-

Baud rate of the UART to set.

-

Return Value

-

Description

-

0

-

Succeeded in setting the UART baud rate.

-

Negative value

-

Failed to set the UART baud rate.

-
- -The following example shows how to set the UART baud rate to **9600**: - -``` -int32_t ret; -/* Set the UART baud rate to 9600. */ -ret = UartSetBaud(handle, 9600); -if (ret != 0) { - HDF_LOGE("UartSetBaud: failed, ret %d\n", ret); -} -``` - -## Obtaining the UART Baud Rate - -After setting the UART baud rate, obtain the current baud rate by calling the following function: - -int32\_t UartGetBaud\(DevHandle handle, uint32\_t \*baudRate\); - -**Table 3** Description of **UartGetBaud** - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the UART device handle.

-

baudRate

-

Pointer to the UART baud rate.

-

Return Value

-

Description

-

0

-

Succeeded in obtaining the UART baud rate.

-

Negative value

-

Failed to obtain the UART baud rate.

-
- -The following example shows how to obtain the UART baud rate: - -``` -int32_t ret; -uint32_t baudRate; -/* Obtain the UART baud rate. */ -ret = UartGetBaud(handle, &baudRate); -if (ret != 0) { - HDF_LOGE("UartGetBaud: failed, ret %d\n", ret); -} -``` - -## Setting the UART Device Attributes - -Before performing UART communication, set the UART device attributes by calling the following function: - -int32\_t UartSetAttribute\(DevHandle handle, struct UartAttribute \*attribute\); - -**Table 4** Description of **UartSetAttribute** - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the UART device handle.

-

attribute

-

Pointer to the UART device attributes to set.

-

Return Value

-

Description

-

0

-

Succeeded in setting the UART device attributes.

-

Negative value

-

Failed to set the UART device attributes.

-
- -The following example shows how to set the UART device attributes: - -``` -int32_t ret; -struct UartAttribute attribute; -attribute.dataBits = UART_ATTR_DATABIT_7; /* Set the number of data bits to 7. */ -attribute.parity = UART_ATTR_PARITY_NONE; /* Set the parity bit to no parity. */ -attribute.stopBits = UART_ATTR_STOPBIT_1; /* Set the stop bit to 1. */ -attribute.rts = UART_ATTR_RTS_DIS; /* Disable the RTS signal. */ -attribute.cts = UART_ATTR_CTS_DIS; /* Disable the CTS signal. */ -attribute.fifoRxEn = UART_ATTR_RX_FIFO_EN; /* Enable RX FIFO. */ -attribute.fifoTxEn = UART_ATTR_TX_FIFO_EN; /* Enable TX FIFO. */ -/* Set the UART device attributes. */ -ret = UartSetAttribute(handle, &attribute); -if (ret != 0) { - HDF_LOGE("UartSetAttribute: failed, ret %d\n", ret); -} -``` - -## Obtaining UART Device Attributes - -After setting the UART device attributes, obtain the current device attributes by calling the following function: - -int32\_t UartGetAttribute\(DevHandle handle, struct UartAttribute \*attribute\); - -**Table 5** Description of **UartGetAttribute** - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the UART device handle.

-

attribute

-

Pointer to the UART device attributes.

-

Return Value

-

Description

-

0

-

Succeeded in obtaining the UART device attributes.

-

Negative value

-

Failed to obtain the UART device attributes.

-
- -The following example shows how to obtain the UART device attributes: - -``` -int32_t ret; -struct UartAttribute attribute; -/* Obtain the UART attributes. */ -ret = UartGetAttribute(handle, &attribute); -if (ret != 0) { - HDF_LOGE("UartGetAttribute: failed, ret %d\n", ret); -} -``` - -## Setting the UART Transmission Mode - -Before performing UART communication, set the UART transmission mode by calling the following function: - -int32\_t UartSetTransMode\(DevHandle handle, enum UartTransMode mode\); - -**Table 6** Description of **UartSetTransMode** - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the UART device handle.

-

mode

-

UART transmission mode to set.

-

Return Value

-

Description

-

0

-

Succeeded in setting the UART transmission mode.

-

Negative value

-

Failed to set the UART transmission mode.

-
- -The following example shows how to set the transmission mode to **UART\_MODE\_RD\_BLOCK**: - -``` -int32_t ret; -/* Set the UART transmission mode. */ -ret = UartSetTransMode(handle, UART_MODE_RD_BLOCK); -if (ret != 0) { - HDF_LOGE("UartSetTransMode: failed, ret %d\n", ret); -} -``` - -## Writing Data of a Specified Length into a UART Device - -To write data into a UART device, call the following function: - -int32\_t UartWrite\(DevHandle handle, uint8\_t \*data, uint32\_t size\); - -**Table 7** Description of **UartWrite** - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the UART device handle.

-

data

-

Pointer to the data to write.

-

size

-

Length of the data to write.

-

Return Value

-

Description

-

0

-

Succeeded in writing data into the UART device.

-

Negative value

-

Failed to write data into the UART device.

-
- -The following example shows how to write data of a specified length into the UART device: - -``` -int32_t ret; -uint8_t wbuff[5] = {1, 2, 3, 4, 5}; -/* Write 5-byte data into the UART device. */ -ret = UartWrite(handle, wbuff, 5); -if (ret != 0) { - HDF_LOGE("UartWrite: failed, ret %d\n", ret); -} -``` - -## Reading Data of a Specified Length from a UART Device - -To read data from a UART device, call the following function: - -int32\_t UartRead\(DevHandle handle, uint8\_t \*data, uint32\_t size\); - -**Table 8** Description of **UartRead** - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the UART device handle.

-

data

-

Pointer to the buffer for receiving the data.

-

size

-

Length of the data to read.

-

Return Value

-

Description

-

Non-negative value

-

Length of the data read from the UART device.

-

Negative value

-

Failed to read data from the UART device.

-
- -The following example shows how to read data of a specified length from the UART device: - -``` -int32_t ret; -uint8_t rbuff[5] = {0}; -/* Read 5-byte data from the UART device. */ -ret = UartRead(handle, rbuff, 5); -if (ret < 0) { - HDF_LOGE("UartRead: failed, ret %d\n", ret); -} -``` - ->![](public_sys-resources/icon-caution.gif) **CAUTION:** ->Data is successfully read from the UART device if a non-negative value is returned. If the return value is **0**, no valid data can be read from the UART device. If the return value is greater than **0**, the return value is the length of the data actually read from the UART device. The length is less than or equal to the value of **size** and does not exceed the maximum length of data to read at a time specified by the UART controller in use. - -## Destroying the UART Device Handle - -After the UART communication, destroy the UART device handle by calling the following function: - -void UartClose\(DevHandle handle\); - -This function will release the resources previously obtained. - -**Table 9** Description of **UartClose** - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Pointer to the UART device handle

-
- -The following example shows how to destroy the UART device handle: - -``` -UartClose(handle); /* Destroy the UART device handle. */ -``` - diff --git a/en/device-dev/driver/usage-example.md b/en/device-dev/driver/usage-example.md deleted file mode 100644 index e16e8f2eead..00000000000 --- a/en/device-dev/driver/usage-example.md +++ /dev/null @@ -1,98 +0,0 @@ -# Usage Example - -The following is an example of using a MIPI DSI device: - -``` -#include "hdf.h" -#include "mipi_dsi_if.h" - -void PalMipiDsiTestSample(void) -{ - uint8_t chnId; - int32_t ret; - DevHandle handle = NULL; - - /* Device channel ID */ - chnId = 0; - /* Obtain the MIPI DSI device handle based on a specified channel ID. */ - handle = MipiDsiOpen(chnId); - if (handle == NULL) { - HDF_LOGE("MipiDsiOpen: failed!\n"); - return; - } - /* MIPI DSI configuration parameters */ - struct MipiCfg cfg = {0}; - cfg.lane = DSI_4_LANES; - cfg.mode = DSI_CMD_MODE; - cfg.burstMode = VIDEO_NON_BURST_MODE_SYNC_EVENTS; - cfg.format = FORMAT_RGB_24_BIT; - cfg.pixelClk = 174; - cfg.phyDataRate = 384; - cfg.timingInfo.hsaPixels = 50; - cfg.timingInfo.hbpPixels = 55; - cfg.timingInfo.hlinePixels = 1200; - cfg.timingInfo.yResLines = 1800; - cfg.timingInfo.vbpLines = 33; - cfg.timingInfo.vsaLines = 76; - cfg.timingInfo.vfpLines = 120; - cfg.timingInfo.xResPixels = 1342; - /* Set MIPI DSI configuration parameters. */ - ret = MipiDsiSetCfg(g_handle, &cfg); - if (ret != 0) { - HDF_LOGE("%s: SetMipiCfg fail! ret=%d\n", __func__, ret); - return; - } - /* Send the command for initializing the PANEL register. */ - struct DsiCmdDesc *cmd = OsalMemCalloc(sizeof(struct DsiCmdDesc)); - if (cmd == NULL) { - return; - } - cmd->dtype = DTYPE_DCS_WRITE; - cmd->dlen = 1; - cmd->payload = OsalMemCalloc(sizeof(uint8_t)); - if (cmd->payload == NULL) { - HdfFree(cmd); - return; - } - *(cmd->payload) = DTYPE_GEN_LWRITE; - MipiDsiSetLpMode(mipiHandle); - ret = MipiDsiTx(mipiHandle, cmd); - MipiDsiSetHsMode(mipiHandle); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: MipiDsiTx fail! ret=%d\n", __func__, ret); - HdfFree(cmd->payload); - HdfFree(cmd); - return; - } - HdfFree(cmd->payload); - HdfFree(cmd); - /* Pointer to the register that reads the PANEL status */ - uint8_t readVal = 0; - struct DsiCmdDesc *cmdRead = OsalMemCalloc(sizeof(struct DsiCmdDesc)); - if (cmdRead == NULL) { - return; - } - cmdRead->dtype = DTYPE_DCS_READ; - cmdRead->dlen = 1; - cmdRead->payload = OsalMemCalloc(sizeof(uint8_t)); - if (cmdRead->payload == NULL) { - HdfFree(cmdRead); - return; - } - *(cmdRead->payload) = DDIC_REG_STATUS; - MipiDsiSetLpMode(g_handle); - ret = MipiDsiRx(g_handle, cmdRead, sizeof(readVal), &readVal); - MipiDsiSetHsMode(g_handle); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: MipiDsiRx fail! ret=%d\n", __func__, ret); - HdfFree(cmdRead->payload); - HdfFree(cmdRead); - return; - } - HdfFree(cmdRead->payload); - HdfFree(cmdRead); - /* Release the MIPI DSI device handle. */ - MipiDsiClose(handle); -} -``` - diff --git a/en/device-dev/driver/usage-guidelines.md b/en/device-dev/driver/usage-guidelines.md deleted file mode 100644 index 1934eaf6e0b..00000000000 --- a/en/device-dev/driver/usage-guidelines.md +++ /dev/null @@ -1,365 +0,0 @@ -# Usage Guidelines - -- [How to Use](#section8982671284) -- [Obtaining a MIPI DSI Device Handle](#section57982569176) -- [Setting MIPI DSI Configuration Parameters](#section5935410201815) -- [Sending/Receiving the Pointer to a Command](#section611661316194) -- [Releasing the MIPI DSI Device Handle](#section217313211199) - -## How to Use - -[Figure 1](#fig99821771782) shows the process of using a MIPI DSI device. - -**Figure 1** Process of using a MIPI DSI device - - -![](figures/en-us_image_0000001072553354.png) - -## Obtaining a MIPI DSI Device Handle - -Before performing MIPI DSI communication, obtain a MIPI DSI device handle by calling **MipiDsiOpen**. This function returns a MIPI DSI device handle with a specified channel ID. - -DevHandle MipiDsiOpen\(uint8\_t id\); - -**Table 1** Description of **MipiDsiOpen** - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

id

-

MIPI DSI channel ID.

-

Return Value

-

Description

-

NULL

-

Failed to obtain the MIPI DSI channel ID.

-

Device handle

-

MIPI DSI device handle with a specified channel ID, whose data type is DevHandle.

-
- -The following example shows how to obtain a MIPI DSI device handle with the channel ID **0**: - -``` -DevHandle mipiDsiHandle = NULL; /* Device handle */ -chnId = 0; /* MIPI DSI channel ID */ - -/* Obtain the MIPI DSI device handle based on a specified channel ID. */ -mipiDsiHandle = MipiDsiOpen(chnId); -if (mipiDsiHandle == NULL) { - HDF_LOGE("MipiDsiOpen: failed\n"); - return; -} -``` - -## Setting MIPI DSI Configuration Parameters - -- Set MIPI DSI configuration parameters by calling the following function: - -int32\_t MipiDsiSetCfg\(DevHandle handle, struct MipiCfg \*cfg\); - -**Table 2** Description of **MipiDsiSetCfg** - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

MIPI DSI device handle

-

cfg

-

Pointer to MIPI DSI configuration parameters

-

Return Value

-

Description

-

0

-

Succeeded in setting MIPI DSI configuration parameters.

-

Negative value

-

Failed to set MIPI DSI configuration parameters.

-
- -``` -int32_t ret; -struct MipiCfg cfg = {0}; - -/* Configuration parameters of the connected device are as follows: */ -cfg.lane = DSI_4_LANES; -cfg.mode = DSI_CMD_MODE; -cfg.burstMode = VIDEO_NON_BURST_MODE_SYNC_EVENTS; -cfg.format = FORMAT_RGB_24_BIT; -cfg.pixelClk = 174; -cfg.phyDataRate = 384; -cfg.timingInfo.hsaPixels = 50; -cfg.timingInfo.hbpPixels = 55; -cfg.timingInfo.hlinePixels = 1200; -cfg.timingInfo.yResLines = 1800; -cfg.timingInfo.vbpLines = 33; -cfg.timingInfo.vsaLines = 76; -cfg.timingInfo.vfpLines = 120; -cfg.timingInfo.xResPixels = 1342; -/* Set MIPI DSI configuration parameters. */ -ret = MipiDsiSetCfg(g_handle, &cfg); -if (ret != 0) { - HDF_LOGE("%s: SetMipiCfg fail! ret=%d\n", __func__, ret); - return -1; -} -``` - -- Obtain MIPI DSI configuration parameters by calling the following function: - -int32\_t MipiDsiGetCfg\(DevHandle handle, struct MipiCfg \*cfg\); - -**Table 3** Description of **MipiDsiGetCfg** - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

MIPI DSI device handle

-

cfg

-

Pointer to MIPI DSI configuration parameters

-

Return Value

-

Description

-

0

-

Succeeded in obtaining MIPI DSI configuration parameters.

-

Negative value

-

Failed to obtain MIPI DSI configuration parameters.

-
- -``` -int32_t ret; -struct MipiCfg cfg; -memset(&cfg, 0, sizeof(struct MipiCfg)); -ret = MipiDsiGetCfg(g_handle, &cfg); -if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: GetMipiCfg fail!\n", __func__); - return HDF_FAILURE; -} -``` - -## Sending/Receiving the Pointer to a Command - -- Send the pointer to a specified command by calling the following function: - -int32\_t MipiDsiTx\(PalHandle handle, struct DsiCmdDesc \*cmd\); - -**Table 4** Description of **MipiDsiTx** - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

MIPI DSI device handle

-

cmd

-

Pointer to the command to be sent

-

Return Value

-

Description

-

0

-

Succeeded in sending the specified command.

-

Negative value

-

Failed to send the specified command.

-
- -``` -int32_t ret; -struct DsiCmdDesc *cmd = OsalMemCalloc(sizeof(struct DsiCmdDesc)); -if (cmd == NULL) { - return HDF_FAILURE; -} -cmd->dtype = DTYPE_DCS_WRITE; -cmd->dlen = 1; -cmd->payload = OsalMemCalloc(sizeof(uint8_t)); -if (cmd->payload == NULL) { - HdfFree(cmd); - return HDF_FAILURE; -} -*(cmd->payload) = DTYPE_GEN_LWRITE; -MipiDsiSetLpMode(mipiHandle); -ret = MipiDsiTx(mipiHandle, cmd); -MipiDsiSetHsMode(mipiHandle); -if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: PalMipiDsiTx fail! ret=%d\n", __func__, ret); - HdfFree(cmd->payload); - HdfFree(cmd); - return HDF_FAILURE; -} -HdfFree(cmd->payload); -HdfFree(cmd); -``` - -- Receive a specified command by calling the following function: - -int32\_t MipiDsiRx\(DevHandle handle, struct DsiCmdDesc \*cmd, uint32\_t readLen, uint8\_t \*out\); - -**Table 5** Description of **MipiDsiRx** - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

MIPI DSI device handle

-

cmd

-

Pointer to the command to be received

-

readLen

-

Length of the data to read.

-

out

-

Pointer to the read data.

-

Return Value

-

Description

-

0

-

Succeeded in receiving the specified command.

-

Negative value

-

Failed to receive the specified command.

-
- -``` -int32_t ret; -uint8_t readVal = 0; - -struct DsiCmdDesc *cmdRead = OsalMemCalloc(sizeof(struct DsiCmdDesc)); -if (cmdRead == NULL) { - return HDF_FAILURE; -} -cmdRead->dtype = DTYPE_DCS_READ; -cmdRead->dlen = 1; -cmdRead->payload = OsalMemCalloc(sizeof(uint8_t)); -if (cmdRead->payload == NULL) { - HdfFree(cmdRead); - return HDF_FAILURE; -} -*(cmdRead->payload) = DDIC_REG_STATUS; -MipiDsiSetLpMode(g_handle); -ret = MipiDsiRx(g_handle, cmdRead, sizeof(readVal), &readVal); -MipiDsiSetHsMode(g_handle); -if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: MipiDsiRx fail! ret=%d\n", __func__, ret); - HdfFree(cmdRead->payload); - HdfFree(cmdRead); - return HDF_FAILURE; -} -HdfFree(cmdRead->payload); -HdfFree(cmdRead); -``` - -## Releasing the MIPI DSI Device Handle - -After the MIPI DSI communication, release the MIPI DSI device handle by calling the following function: - -void MipiDsiClose\(DevHandle handle\); - -This function releases the resources requested by **MipiDsiOpen**. - -**Table 6** Description of **MipiDsiClose** - - - - - - - - - - -

Parameter

-

Description

-

handle

-

MIPI DSI device handle

-
- -``` -MipiDsiClose(mipiHandle); /* Release the MIPI DSI device handle */ -``` - diff --git a/en/device-dev/driver/watchdog.md b/en/device-dev/driver/watchdog.md index b8f20d1dad9..6a8bcd98026 100644 --- a/en/device-dev/driver/watchdog.md +++ b/en/device-dev/driver/watchdog.md @@ -1,9 +1,557 @@ -# WATCHDOG +# Watchdog -- **[Watchdog Overview](watchdogoverview.md)** +- [Overview](#section14918241977) + - [Available APIs](#section20177131219818) -- **[Watchdog Usage Guidelines](watchdogusage-guidelines.md)** +- [Usage Guidelines](#section10103184312813) + - [How to Use](#section10181195910815) + - [Opening a Watchdog](#section66089201107) + - [Obtaining the Watchdog Status](#section786624341011) + - [Setting the Timeout Duration](#section182386137111) + - [Obtaining the Timeout Duration](#section1883310371114) + - [Starting a Watchdog](#section82501405123) + - [Feeding a Watchdog](#section3547530101211) + - [Stopping a Watchdog](#section944595841217) + - [Closing a Watchdog](#section96561824121311) -- **[Watchdog Usage Example](watchdogusage-example.md)** +- [Usage Example](#section1724514523135) +## Overview + +A watchdog, also called a watchdog timer, is a hardware timing device. If an error occurs in the main program of the system and fails to reset the watchdog timer, the watchdog timer sends a reset signal to restore the system to a normal state. + +### Available APIs + +**Table 1** Watchdog APIs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Capability

+

Function

+

Description

+

Open/Close

+

WatchdogOpen

+

Opens a watchdog.

+

WatchdogClose

+

Closes a watchdog.

+

Start/Stop

+

WatchdogStart

+

Starts a watchdog.

+

WatchdogStop

+

Stops a watchdog.

+

Timeout duration

+

WatchdogSetTimeout

+

Sets the watchdog timeout duration.

+

WatchdogGetTimeout

+

Obtains the watchdog timeout duration.

+

Status

+

WatchdogGetStatus

+

Obtains the watchdog status.

+

Feeding

+

WatchdogFeed

+

Feeds a watchdog, or resets a watchdog timer.

+
+ +>![](public_sys-resources/icon-note.gif) **NOTE:** +>All watchdog functions provided in this document can be called only in kernel mode. + +## Usage Guidelines + +### How to Use + +[Figure 1](#fig19134125410189) illustrates the process of using a watchdog. + +**Figure 1** Process of using a watchdog + + +![](figures/en-us_image_0000001170229891.png) + +### Opening a Watchdog + +Use **WatchdogOpen** to open a watchdog. A system may have multiple watchdogs. You can open the specified watchdog by using the ID. + +int32\_t WatchdogOpen\(int16\_t wdtId\); + +**Table 2** Description of WatchdogOpen + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

wdtId

+

Watchdog ID.

+

Return Value

+

Description

+

NULL

+

Failed to open the watchdog.

+

DevHandle pointer

+

Pointer to the watchdog handle.

+
+ +``` +DevHandle handle = NULL; +handle = WatchdogOpen(0); /* Open watchdog 0.*/ +if (handle == NULL) { + HDF_LOGE("WatchdogOpen: failed, ret %d\n", ret); + return; +} +``` + +### Obtaining the Watchdog Status + +int32\_t WatchdogGetStatus\(DevHandle handle, int32\_t \*status\); + +**Table 3** Description of WatchdogGetStatus + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Watchdog handle.

+

status

+

Pointer to the watchdog status.

+

Return Value

+

Description

+

0

+

The watchdog status is obtained.

+

Negative value

+

Failed to obtain the watchdog status.

+
+ +``` +int32_t ret; +int32_t status; +/* Obtain the watchdog status. */ +ret = WatchdogGetStatus(handle, &status); +if (ret != 0) { + HDF_LOGE("WatchdogGetStatus: failed, ret %d\n", ret); + return; +} +``` + +### Setting the Timeout Duration + +int32\_t WatchdogSetTimeout\(PalHandle \*handle, uint32\_t seconds\); + +**Table 4** Description of WatchdogSetTimeout + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Watchdog handle.

+

seconds

+

Timeout duration, in seconds.

+

Return Value

+

Description

+

0

+

The setting is successful.

+

Negative value

+

Setting failed.

+
+ +``` +int32_t ret; +uint32_t timeOut = 60; +/* Set the timeout duration, in seconds. */ +ret = WatchdogSetTimeout(handle, timeOut); +if (ret != 0) { + HDF_LOGE("WatchdogSetTimeout: failed, ret %d\n", ret); + return; +} +``` + +### Obtaining the Timeout Duration + +int32\_t WatchdogGetTimeout\(PalHandle \*handle, uint32\_t \*seconds\); + +**Table 5** Description of WatchdogGetTimeout + + + + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Watchdog handle.

+

seconds

+

Pointer to the timeout duration, in seconds.

+

Return Value

+

Description

+

0

+

The watchdog status is obtained.

+

Negative value

+

Failed to obtain the watchdog status.

+
+ +``` +int32_t ret; +uint32_t timeOut; +/* Obtain the timeout duration, in seconds. */ +ret = WatchdogGetTimeout(handle, &timeOut); +if (ret != 0) { + HDF_LOGE("WatchdogGetTimeout: failed, ret %d\n", ret); + return; +} +``` + +### Starting a Watchdog + +int32\_t WatchdogStart\(DevHandle handle\); + +**Table 6** Description of WatchdogStart + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Watchdog handle.

+

Return Value

+

Description

+

0

+

The watchdog is started.

+

Negative value

+

Failed to start the watchdog.

+
+ +``` +int32_t ret; +/* Start the watchdog. */ +ret = WatchdogStart(handle); +if (ret != 0) { + HDF_LOGE("WatchdogStart: failed, ret %d\n", ret); + return; +} +``` + +### Feeding a Watchdog + +int32\_t WatchdogFeed\(DevHandle handle\); + +**Table 7** Description of WatchdogFeed + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Watchdog handle.

+

Return Value

+

Description

+

0

+

The watchdog is fed.

+

Negative value

+

Failed to feed the watchdog.

+
+ +``` +int32_t ret; +/* Feed the watchdog. */ +ret = WatchdogFeed(handle); +if (ret != 0) { + HDF_LOGE("WatchdogFeed: failed, ret %d\n", ret); + return; +} +``` + +### Stopping a Watchdog + +int32\_t WatchdogStop\(DevHandle handle\); + +**Table 8** Description of WatchdogStop + + + + + + + + + + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Watchdog handle.

+

Return Value

+

Description

+

0

+

The watchdog is stopped.

+

Negative value

+

Stopping the watchdog failed.

+
+ +``` +int32_t ret; +/* Stop the watchdog. */ +ret = WatchdogStop(handle); +if (ret != 0) { + HDF_LOGE("WatchdogStop: failed, ret %d\n", ret); + return; +} +``` + +### Closing a Watchdog + +If the watchdog is no longer required, call **WatchdogClose** to close the watchdog handle. + +void WatchdogClose\(DevHandle handle\); + +**Table 9** Description of WatchdogClose + + + + + + + + + + +

Parameter

+

Description

+

handle

+

Watchdog handle.

+
+ +``` +/* Close the watchdog. */ +ret = WatchdogClose(handle); +``` + +## Usage Example + +This example provides a complete process for using a watchdog. + +In this example, open a watchdog, set the timeout duration, and start the watchdog. + +- Feed the watchdog periodically to ensure that the system is not reset due to timer expiry. +- Stop feeding the watchdog and check whether the system is reset after the timer expires. + +Example: + +``` +#include "watchdog_if.h" +#include "hdf_log.h" +#include "osal_irq.h" +#include "osal_time.h" + +#define WATCHDOG_TEST_TIMEOUT 2 +#define WATCHDOG_TEST_FEED_TIME 6 + +static int32_t TestCaseWatchdog(void) +{ + int32_t i; + int32_t ret; + uint32_t timeout; + DevHandle handle = NULL; + + /* Open watchdog 0. */ + handle = WatchdogOpen(0); + if (handle == NULL) { + HDF_LOGE("Open watchdog fail!"); + return -1; + } + + /* Set the timeout duration. */ + ret = WatchdogSetTimeout(handle, WATCHDOG_TEST_TIMEOUT); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set timeout fail! ret:%d\n", __func__, ret); + WatchdogClose(handle); + return ret; + } + + /* Obtain the configured timeout duration. */ + ret = WatchdogGetTimeout(handle, &timeout); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: get timeout fail! ret:%d\n", __func__, ret); + WatchdogClose(handle); + return ret; + } + HDF_LOGI("%s: read timeout back:%u\n", __func__, timeout); + + /* Start the watchdog. The timer starts. */ + ret = WatchdogStart(handle); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: satrt fail! ret:%d\n", __func__, ret); + WatchdogClose(handle); + return ret; + } + + /* Feed the watchdog every 1s. */ + for (i = 0; i < WATCHDOG_TEST_FEED_TIME; i++) { + HDF_LOGE("%s: feeding watchdog %d times... \n", __func__, i); + ret = WatchdogFeed(handle); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: feed dog fail! ret:%d\n", __func__, ret); + WatchdogClose(handle); + return ret; + } + OsalSleep(1); + } + /* Because the interval for feeding the watchdog is shorter than the timeout duration, the system does not reset, and logs can be printed normally. */ + HDF_LOGE("%s: no reset ... feeding test OK!!!\n", __func__); + + /* Enable the timer to expire by stopping feeding the watchdog. */ + for (i = 0; i < WATCHDOG_TEST_FEED_TIME; i++) { + HDF_LOGE("%s: watiting dog buck %d times... \n", __func__, i); + OsalSleep(1); + } + + /* The system resets when the timer expires. If the code is correct, the log below is not displayed. */ + HDF_LOGE("%s: dog has't buck!!! \n", __func__, i); + WatchdogClose(handle); + return -1; +} +``` diff --git a/en/device-dev/driver/watchdogoverview.md b/en/device-dev/driver/watchdogoverview.md deleted file mode 100644 index 04b3b373d03..00000000000 --- a/en/device-dev/driver/watchdogoverview.md +++ /dev/null @@ -1,78 +0,0 @@ -# Watchdog Overview - -- [Introduction](#section3579126111816) -- [Available APIs](#section17429111981812) - -## Introduction - -A watchdog, also called a watchdog timer, is a hardware timing device. If an error occurs in the main program of the system and fails to reset the watchdog timer, the watchdog timer sends a reset signal to restore the system to a normal state. - -## Available APIs - -**Table 1** Watchdog APIs - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Capability

-

Function

-

Description

-

Open/Close

-

WatchdogOpen

-

Opens a watchdog.

-

WatchdogClose

-

Closes a watchdog.

-

Start/Stop

-

WatchdogStart

-

Starts a watchdog.

-

WatchdogStop

-

Stops a watchdog.

-

Timeout duration

-

WatchdogSetTimeout

-

Sets the watchdog timeout duration.

-

WatchdogGetTimeout

-

Obtains the watchdog timeout duration.

-

Status

-

WatchdogGetStatus

-

Obtains the watchdog status.

-

Feeding

-

WatchdogFeed

-

Feeds a watchdog, or resets a watchdog timer.

-
- ->![](public_sys-resources/icon-note.gif) **NOTE:** ->All watchdog functions provided in this document can be called only in kernel mode. - diff --git a/en/device-dev/driver/watchdogusage-example.md b/en/device-dev/driver/watchdogusage-example.md deleted file mode 100644 index 98f6acfa0e3..00000000000 --- a/en/device-dev/driver/watchdogusage-example.md +++ /dev/null @@ -1,86 +0,0 @@ -# Watchdog Usage Example - -This example provides a complete process for using a watchdog. - -In this example, open a watchdog, set the timeout duration, and start the watchdog. - -- Feed the watchdog periodically to ensure that the system is not reset due to timer expiry. -- Stop feeding the watchdog and check whether the system is reset after the timer expires. - -Example: - -``` -#include "watchdog_if.h" -#include "hdf_log.h" -#include "osal_irq.h" -#include "osal_time.h" - -#define WATCHDOG_TEST_TIMEOUT 2 -#define WATCHDOG_TEST_FEED_TIME 6 - -static int32_t TestCaseWatchdog(void) -{ - int32_t i; - int32_t ret; - uint32_t timeout; - DevHandle handle = NULL; - - /* Open watchdog 0. */ - handle = WatchdogOpen(0); - if (handle == NULL) { - HDF_LOGE("Open watchdog fail!"); - return -1; - } - - /* Set the timeout duration. */ - ret = WatchdogSetTimeout(handle, WATCHDOG_TEST_TIMEOUT); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set timeout fail! ret:%d\n", __func__, ret); - WatchdogClose(handle); - return ret; - } - - /* Obtain the configured timeout duration. */ - ret = WatchdogGetTimeout(handle, &timeout); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: get timeout fail! ret:%d\n", __func__, ret); - WatchdogClose(handle); - return ret; - } - HDF_LOGI("%s: read timeout back:%u\n", __func__, timeout); - - /* Start the watchdog. The timer starts. */ - ret = WatchdogStart(handle); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: satrt fail! ret:%d\n", __func__, ret); - WatchdogClose(handle); - return ret; - } - - /* Feed the watchdog every 1s. */ - for (i = 0; i < WATCHDOG_TEST_FEED_TIME; i++) { - HDF_LOGE("%s: feeding watchdog %d times... \n", __func__, i); - ret = WatchdogFeed(handle); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: feed dog fail! ret:%d\n", __func__, ret); - WatchdogClose(handle); - return ret; - } - OsalSleep(1); - } - /* Because the interval for feeding the watchdog is shorter than the timeout duration, the system does not reset, and logs can be printed normally. */ - HDF_LOGE("%s: no reset ... feeding test OK!!!\n", __func__); - - /* Enable the timer to expire by stopping feeding the watchdog. */ - for (i = 0; i < WATCHDOG_TEST_FEED_TIME; i++) { - HDF_LOGE("%s: watiting dog buck %d times... \n", __func__, i); - OsalSleep(1); - } - - /* The system resets when the timer expires. If the code is correct, the log below is not displayed. */ - HDF_LOGE("%s: dog has't buck!!! \n", __func__, i); - WatchdogClose(handle); - return -1; -} -``` - diff --git a/en/device-dev/driver/watchdogusage-guidelines.md b/en/device-dev/driver/watchdogusage-guidelines.md deleted file mode 100644 index e3eb5c091fb..00000000000 --- a/en/device-dev/driver/watchdogusage-guidelines.md +++ /dev/null @@ -1,395 +0,0 @@ -# Watchdog Usage Guidelines - -- [How to Use](#section0719414187) -- [Opening a Watchdog](#section198171379261) -- [Obtaining the Watchdog Status](#section206592910275) -- [Setting the Timeout Duration](#section19605128182714) -- [Obtaining the Timeout Duration](#section11111516208) -- [Starting a Watchdog](#section141174192814) -- [Feeding a Watchdog](#section179101435113910) -- [Stopping a Watchdog](#section15282123192816) -- [Closing a Watchdog](#section7857850173411) - -## How to Use - -[Figure 1](#fig19134125410189) illustrates the process of using a watchdog. - -**Figure 1** Process of using a watchdog - - -![](figures/en-us_image_0000001057622716.png) - -## Opening a Watchdog - -Use **WatchdogOpen** to open a watchdog. A system may have multiple watchdogs. You can open a specified watchdog by using the ID. - -int32\_t WatchdogOpen\(int16\_t wdtId\); - -. - -**Table 1** Description of WatchdogOpen - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

wdtId

-

Watchdog ID.

-

Return Value

-

Description

-

NULL

-

Failed to open the watchdog.

-

DevHandle pointer

-

Pointer to the watchdog handle.

-
- -``` -DevHandle handle = NULL; -handle = WatchdogOpen(0); /* Open watchdog 0.*/ -if (handle == NULL) { - HDF_LOGE("WatchdogOpen: failed, ret %d\n", ret); - return; -} -``` - -## Obtaining the Watchdog Status - -int32\_t WatchdogGetStatus\(DevHandle handle, int32\_t \*status\); - -. - -**Table 2** Description of WatchdogGetStatus - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Watchdog handle.

-

status

-

Pointer to the watchdog status.

-

Return Value

-

Description

-

0

-

The watchdog status is obtained.

-

Negative value

-

Failed to obtain the watchdog status.

-
- -``` -int32_t ret; -int32_t status; -/* Obtain the watchdog status. */ -ret = WatchdogGetStatus(handle, &status); -if (ret != 0) { - HDF_LOGE("WatchdogGetStatus: failed, ret %d\n", ret); - return; -} -``` - -## Setting the Timeout Duration - -int32\_t WatchdogSetTimeout\(PalHandle \*handle, uint32\_t seconds\); - -**Table 3** Description of WatchdogSetTimeout - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Watchdog handle.

-

seconds

-

Timeout duration, in seconds.

-

Return Value

-

Description

-

0

-

The setting is successful.

-

Negative value

-

Setting failed.

-
- -``` -int32_t ret; -uint32_t timeOut = 60; -/* Set the timeout duration, in seconds. */ -ret = WatchdogSetTimeout(handle, timeOut); -if (ret != 0) { - HDF_LOGE("WatchdogSetTimeout: failed, ret %d\n", ret); - return; -} -``` - -## Obtaining the Timeout Duration - -int32\_t WatchdogGetTimeout\(PalHandle \*handle, uint32\_t \*seconds\); - -**Table 4** Description of WatchdogGetTimeout - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Watchdog handle.

-

seconds

-

Pointer to the timeout duration, in seconds.

-

Return Value

-

Description

-

0

-

The timeout duration is obtained.

-

Negative value

-

Failed to obtain the watchdog status.

-
- -``` -int32_t ret; -uint32_t timeOut; -/* Obtain the timeout duration, in seconds. */ -ret = WatchdogGetTimeout(handle, &timeOut); -if (ret != 0) { - HDF_LOGE("WatchdogGetTimeout: failed, ret %d\n", ret); - return; -} -``` - -## Starting a Watchdog - -int32\_t WatchdogStart\(DevHandle handle\); - -**Table 5** Description of WatchdogStart - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Watchdog handle.

-

Return Value

-

Description

-

0

-

The watchdog is started.

-

Negative value

-

Failed to start the watchdog.

-
- -``` -int32_t ret; -/* Start the watchdog. */ -ret = WatchdogStart(handle); -if (ret != 0) { - HDF_LOGE("WatchdogStart: failed, ret %d\n", ret); - return; -} -``` - -## Feeding a Watchdog - -int32\_t WatchdogFeed\(DevHandle handle\); - -**Table 6** Description of WatchdogFeed - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Watchdog handle.

-

Return Value

-

Description

-

0

-

The watchdog is fed.

-

Negative value

-

Failed to feed the watchdog.

-
- -``` -int32_t ret; -/* Feed the watchdog. */ -ret = WatchdogFeed(handle); -if (ret != 0) { - HDF_LOGE("WatchdogFeed: failed, ret %d\n", ret); - return; -} -``` - -## Stopping a Watchdog - -int32\_t WatchdogStop\(DevHandle handle\); - -**Table 7** Description of WatchdogStop - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Watchdog handle.

-

Return Value

-

Description

-

0

-

The watchdog is stopped.

-

Negative value

-

Stopping the watchdog failed.

-
- -``` -int32_t ret; -/* Stop the watchdog. */ -ret = WatchdogStop(handle); -if (ret != 0) { - HDF_LOGE("WatchdogStop: failed, ret %d\n", ret); - return; -} - -``` - -## Closing a Watchdog - -If the watchdog is no longer required, call **WatchdogClose** to close the watchdog handle. - -void WatchdogClose\(DevHandle handle\); - -**Table 8** Description of WatchdogClose - - - - - - - - - - -

Parameter

-

Description

-

handle

-

Watchdog handle.

-
- -``` -/* Close the watchdog. */ -ret = WatchdogClose(handle); -``` - diff --git a/en/device-dev/driver/wlan.md b/en/device-dev/driver/wlan.md index d6d1fba4014..5bc198f48d4 100644 --- a/en/device-dev/driver/wlan.md +++ b/en/device-dev/driver/wlan.md @@ -1,9 +1,622 @@ -# WLAN +# WLAN -- **[WLAN Overview](wlanoverview.md)** +- [Overview](#section729758162218) + - [WLAN Driver API Architecture](#section178022416377) + - [Available APIs](#section149681312202415) -- **[WLAN Development Guidelines](wlandevelopment-guidelines.md)** +- [Development Guidelines](#section15957746172412) + - [How to Develop](#section11776186132513) -- **[WLAN Development Example](wlandevelopment-example.md)** +- [Development Example](#section1395253612512) +## Overview + +The WLAN module is developed based on the Hardware Driver Foundation \(HDF\). It supports cross-OS migration, component adaptation, and modular assembly and compilation. Based on the unified APIs provided by the WLAN module, driver developers of WLAN vendors can adapt their driver code and are capable of creating, disabling, scanning, and connecting to WLAN hotspots. The WLAN driver provides the Hardware Driver Interface \(HDI\) layer with the capabilities of setting and obtaining the device MAC address and setting the transmit power. The following figure shows the framework of the [WLAN module](#fig967034316227): + +**Figure 1** WLAN framework + + +![](figures/en-us_image_0000001170383063.png) + +### WLAN Driver API Architecture + +The WLAN module provides the following three types of APIs: + +1. Capability APIs for the HDI layer + +2. Capability APIs directly invoked by drivers + +3. Capability APIs for vendors + +**Figure 2** Available APIs of the WLAN module + + +![](figures/接口分布图4.png) + +### Available APIs + +The WLAN driver module provides APIs that can be directly called by driver developers, such as creating/releasing a **WifiModule**, connecting to/disconnecting from a WLAN hotspot, applying for/releasing a **NetBuf**, and converting between the **pbuf** structure of Lightweight IP \(lwIP\) and a **NetBuf**. [Table 1](#table1521573319472) describes some APIs. + +**Table 1** APIs that can be directly called by driver developers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

File

+

Function

+

Description

+

wifi_module.h

+

+

struct WifiModule *WifiModuleCreate(const struct HdfConfigWifiModuleConfig *config);

+

Creates a WifiModule.

+

void WifiModuleDelete(struct WifiModule *module);

+

Deletes a WifiModule and releases its data.

+

int32_t DelFeature(struct WifiModule *module, uint16_t featureType);

+

Deletes a feature from a WifiModule.

+

int32_t AddFeature(struct WifiModule *module, uint16_t featureType, struct WifiFeature *featureData);

+

Adds a feature to a WifiModule.

+

wifi_mac80211_ops.h

+

int32_t (*startAp)(NetDevice *netDev);

+

Starts an AP.

+

int32_t (*stopAp)(NetDevice *netDev);

+

Stops an AP.

+

int32_t (*connect)(NetDevice *netDev, WifiConnectParams *param);

+

Connects to a hotspot.

+

int32_t (*disconnect)(NetDevice *netDev, uint16_t reasonCode);

+

Disconnects from a hotspot.

+

hdf_netbuf.h

+

static inline void NetBufQueueInit(struct NetBufQueue *q);

+

Initializes a NetBuf queue.

+

struct NetBuf *NetBufAlloc(uint32_t size);

+

Applies for a NetBuf.

+

void NetBufFree(struct NetBuf *nb);

+

Releases a NetBuf.

+

struct NetBuf *Pbuf2NetBuf(const struct NetDevice *netdev, struct pbuf *lwipBuf);

+

Converts the pbuf structure of lwIP to a NetBuf.

+

struct pbuf *NetBuf2Pbuf(const struct NetBuf *nb);

+

Converts a NetBuf to the pbuf structure of lwIP.

+
+ +The WLAN driver module provides APIs for driver developers, such as initializing/deregistering, opening/stopping a **NetDevice**, and obtaining the state of a **NetDevice**. [Table 2](#table74613501475) describes some APIs. + +**Table 2** APIs for driver developers of WLAN vendors to implement + + + + + + + + + + + + + + + + + + + + + + + + + + + +

File

+

Function

+

Description

+

net_device.h

+

int32_t (*init)(struct NetDevice *netDev);

+

Initializes a NetDevice.

+

struct NetDevStats *(*getStats)(struct NetDevice *netDev);

+

Obtains the state of a NetDevice.

+

int32_t (*setMacAddr)(struct NetDevice *netDev, void *addr);

+

Sets the MAC address.

+

void (*deInit)(struct NetDevice *netDev);

+

Deinitializes a NetDevice.

+

int32_t (*open)(struct NetDevice *netDev);

+

Opens a NetDevice.

+

int32_t (*stop)(struct NetDevice *netDev);

+

Stops a NetDevice.

+
+ +The WLAN driver provides the HDI layer with the APIs for creating and destroying an **IWiFi** object and setting the MAC address. [Table 3](#table141076311618) describes some APIs. + +**Table 3** APIs provided by the WLAN HAL module + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Header File

+

Function

+

Description

+

wifi_hal.h

+

+

int32_t WifiConstruct(struct IWiFi **wifiInstance);

+

Creates an IWiFi object with basic capabilities.

+

int32_t WifiDestruct(struct IWiFi **wifiInstance);

+

Destroys an IWiFi object.

+

int32_t (*start)(struct IWiFi *);

+

Creates a channel between the HAL and the driver and obtains the NIC supported by the driver.

+

int32_t (*stop)(struct IWiFi *);

+

Stops the channel between the HAL and the driver.

+

wifi_hal_base_feature.h

+

int32_t (*getFeatureType)(const struct IWiFiBaseFeature *);

+

Obtains the feature type.

+

int32_t (*setMacAddress)(const struct IWiFiBaseFeature *, unsigned char *, uint8_t);

+

Sets the MAC address.

+

int32_t (*getDeviceMacAddress)(const struct IWiFiBaseFeature *, unsigned char *, uint8_t);

+

Obtains the device MAC address.

+

int32_t (*setTxPower)(const struct IWiFiBaseFeature *, int32_t);

+

Sets the transmit power.

+
+ +## Development Guidelines + +The WLAN driver is developed based on the HDF and PLATFORM. It provides a unified driver model for WLAN modules of different vendors regardless of the operating system \(OS\) and system on a chip \(SoC\). + +### How to Develop + +1. Set hardware parameters such as **module** \(different features\) and **chip** in the **wifi\_config.hcs** file. +2. Parse the **wifi\_config.hcs** file and generate a structure with the configured parameters. +3. Initialize and create a module. +4. Mount and initialize the chip. +5. Initialize the bus. +6. Mount the upper-layer WPA service. + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>Some of the above adaptation steps have been provided. For details, see [Development Example](#section1395253612512). The steps waiting to be performed by developers include setting configuration parameters based on hardware attributes, adapting and mounting a chip, and performing tests and verification. + +## Development Example + +This example describes how to initialize a WLAN module. The following uses the Hi3881 WLAN chip as an example: + +1. Set parameters for the WLAN module based on hardware attributes. + +``` +/* Set parameters in the wlan_platform.hcs file based on hardware attributes. The following is an example of the WLAN platform configuration. */ +hisi :& deviceList { + device0 :: deviceInst { + deviceInstId = 0; + powers { + power0 { + powerSeqDelay = 0; /* Power supply sequencing delay */ + powerType = 1; /* Power supply type. Value 0 indicates that the power supply is always on, and value 1 indicates power supply through general-purpose input/output (GPIO). */ + gpioId = 1; /* GPIO pin ID */ + activeLevel=1; /* Active level. Value 0 indicates a low level, and value 1 indicates a high level. */ + } + power1 { + powerSeqDelay = 0; /* Power supply sequencing delay */ + powerType = 0; /* Power supply type. Value 0 indicates that the power supply is always on, and value 1 indicates power supply through GPIO. */ + } + } + reset { + resetType = 0; /* Reset type. Value 0 indicates that reset is not supported, and value 1 indicates reset through GPIO. */ + gpioId = 2; /* GPIO pin ID */ + activeLevel=1; /* Active level. Value 0 indicates a low level, and value 1 indicates a high level. */ + resetHoldTime = 30; /* Hold time (ms) for a reset */ + } + bootUpTimeout = 30; /* Boot timeout duration (ms) */ + bus { + busType = 0; /* Bus type. Value 0 indicates secure digital input/output (SDIO). */ + busId = 2; /* Bus ID */ + funcNum = [1]; /* SDIO function number */ + timeout = 1000; /* Timeout duration for data read/write */ + blockSize = 512; /* Size of the data block to read or write */ + } + } +} +/* Add the configuration file wlan_chip_.hcs (for example, wlan_chip_hi3881.hcs) for each chip and set parameters. The following uses the Hi3881 chip as an example. */ +root { + wlan_config { + hi3881 :& chipList { + chipHi3881 :: chipInst { + match_attr = "hdf_wlan_chips_hi3881"; /* Match attribute */ + chipName = "hi3881"; /* WLAN chip name */ + sdio { + vendorId = 0x0296; /* Vendor ID */ + deviceId = [0x5347]; /* Device ID */ + } + } + } + } +} +``` + +2. Mount the **init** and **deinit** functions of the WLAN chip and WLAN chip driver. + +``` +/* WLAN module initialization and mount process */ +#include "hdf_device_desc.h" +#include "hdf_wifi_product.h" +#include "hdf_log.h" +#include "osal_mem.h" +#include "hdf_wlan_chipdriver_manager.h" +#include "securec.h" +#include "wifi_module.h" +#include "hi_wifi_api.h" +#include "hi_types_base.h" + +#define HDF_LOG_TAG Hi3881Driver + +/* Functions for initializing and deinitializing the WLAN chip */ +int32_t InitHi3881Chip(struct HdfWlanDevice *device); +int32_t DeinitHi3881Chip(struct HdfWlanDevice *device); +/* Functions for initializing and deinitializing the WLAN chip driver */ +int32_t Hi3881Deinit(struct HdfChipDriver* chipDriver, struct NetDevice *netDevice); +int32_t Hi3881Init(struct HdfChipDriver* chipDriver, struct NetDevice *netDevice); + +/* Initialize mac80211 and mount functions of the chip. */ +hi_void HiMac80211Init(struct HdfChipDriver *chipDriver); + +static const char* const HI3881_DRIVER_NAME = "hisi"; + +/* Mount the WLAN chip driver and the functions of mac80211 and the chip. */ +static struct HdfChipDriver *BuildHi3881Driver(struct HdfWlanDevice *device, uint8_t ifIndex) +{ + struct HdfChipDriver *specificDriver = NULL; + if (device == NULL) { + HDF_LOGE("%s fail : channel is NULL", __func__); + return NULL; + } + (void)device; + (void)ifIndex; + specificDriver = (struct HdfChipDriver *)OsalMemCalloc(sizeof(struct HdfChipDriver)); + if (specificDriver == NULL) { + HDF_LOGE("%s fail: OsalMemCalloc fail!", __func__); + return NULL; + } + if (memset_s(specificDriver, sizeof(struct HdfChipDriver), 0, sizeof(struct HdfChipDriver)) != EOK) { + HDF_LOGE("%s fail: memset_s fail!", __func__); + OsalMemFree(specificDriver); + return NULL; + } + + if (strcpy_s(specificDriver->name, MAX_WIFI_COMPONENT_NAME_LEN, HI3881_DRIVER_NAME) != EOK) { + HDF_LOGE("%s fail : strcpy_s fail", __func__); + OsalMemFree(specificDriver); + return NULL; + } + specificDriver->init = Hi3881Init; + specificDriver->deinit = Hi3881Deinit; + + HiMac80211Init(specificDriver); + + return specificDriver; +} + +/* Release the WLAN chip driver. */ +static void ReleaseHi3881Driver(struct HdfChipDriver *chipDriver) +{ + if (chipDriver == NULL) { + return; + } + if (strcmp(chipDriver->name, HI3881_DRIVER_NAME) != 0) { + HDF_LOGE("%s:Not my driver!", __func__); + return; + } + OsalMemFree(chipDriver); +} + +static uint8_t GetHi3881GetMaxIFCount(struct HdfChipDriverFactory *factory) { + (void)factory; + return 1; +} + +/* Register functions related to the WLAN chip. */ +static int32_t HDFWlanRegHisiDriverFactory(void) +{ + static struct HdfChipDriverFactory tmpFactory = { 0 }; + struct HdfChipDriverManager *driverMgr = NULL; + driverMgr = HdfWlanGetChipDriverMgr(); + if (driverMgr == NULL && driverMgr->RegChipDriver != NULL) { + HDF_LOGE("%s fail: driverMgr is NULL!", __func__); + return HDF_FAILURE; + } + tmpFactory.driverName = HI3881_DRIVER_NAME; + tmpFactory.GetMaxIFCount = GetHi3881GetMaxIFCount; + tmpFactory.InitChip = InitHi3881Chip; + tmpFactory.DeinitChip = DeinitHi3881Chip; + tmpFactory.Build = BuildHi3881Driver; + tmpFactory.Release = ReleaseHi3881Driver; + tmpFactory.ReleaseFactory = NULL; + if (driverMgr->RegChipDriver(&tmpFactory) != HDF_SUCCESS) { + HDF_LOGE("%s fail: driverMgr is NULL!", __func__); + return HDF_FAILURE; + } + + return HDF_SUCCESS; +} + +static int32_t HdfWlanHisiChipDriverInit(struct HdfDeviceObject *device) +{ + (void)device; + return HDFWlanRegHisiDriverFactory(); +} + +struct HdfDriverEntry g_hdfHisiChipEntry = { + .moduleVersion = 1, + .Init = HdfWlanHisiChipDriverInit, + .moduleName = "HDF_WLAN_CHIPS" +}; + +HDF_INIT(g_hdfHisiChipEntry); +``` + +``` +#include "hdf_wifi_product.h" +#include "hi_wifi_api.h" +#if (_PRE_OS_VERSION_LINUX == _PRE_OS_VERSION) +#include "oal_thread.h" +#include "osal_time.h" +#endif +#include "wifi_mac80211_ops.h" +#include "wal_cfg80211.h" +#include "net_adpater.h" +#include "hdf_wlan_utils.h" + +#define HDF_LOG_TAG Hi3881Driver + +/* Initialize the WLAN chip. */ +int32_t InitHi3881Chip(struct HdfWlanDevice *device) +{ + uint8_t maxPortCount = 1; + int32_t ret = HI_SUCCESS; + uint8_t maxRetryCount = 2; + if (device == NULL) { + HDF_LOGE("%s:NULL ptr!", __func__); + return HI_FAIL; + } + + do { + if (ret != HI_SUCCESS) { + if (device->reset != NULL && device->reset->Reset != NULL) { + device->reset->Reset(device->reset); + } + HDF_LOGE("%s:Retry init hi3881!last ret=%d", __func__, ret); + } + ret = hi_wifi_init(maxPortCount); + } while (ret != 0 && --maxRetryCount > 0); + + if (ret != 0) { + HDF_LOGE("%s:Init hi3881 driver failed!", __func__); + return ret; + } + return HI_SUCCESS; +} + +/* Deinitialize the WLAN chip. */ +int32_t DeinitHi3881Chip(struct HdfWlanDevice *device) +{ + (void)device; + int32_t ret = hi_wifi_deinit(); + if (ret != 0) { + HDF_LOGE("%s:Deinit failed!ret=%d", __func__, ret); + } + return ret; +} + +/* Initialize the WLAN chip driver. */ +int32_t Hi3881Init(struct HdfChipDriver *chipDriver, struct NetDevice *netDevice) +{ + HDF_LOGI("%s: start...", __func__); + hi_u16 mode = wal_get_vap_mode(); + int32_t ret; + nl80211_iftype_uint8 type; + (void)chipDriver; + + if (mode >= WAL_WIFI_MODE_BUTT) { + oam_error_log1(0, 0, "wal_init_drv_netdev:: invalid mode[%d]", mode); + return HI_FAIL; + } + + if (mode == WAL_WIFI_MODE_STA) { + type = NL80211_IFTYPE_STATION; + } else if (mode == WAL_WIFI_MODE_AP) { + type = NL80211_IFTYPE_AP; + } else { + oam_error_log1(0, 0, "wal_init_drv_netdev:: invalid mode[%d]", mode); + return HI_FAIL; + } + + ret = wal_init_drv_wlan_netdev(type, WAL_PHY_MODE_11N, netDevice); + if (ret != HI_SUCCESS) { + oam_error_log2(0, OAM_SF_ANY, "wal_init_drv_netdev %s failed.l_return:%d\n", netDevice->name, ret); + } + return ret; +} + +/* Deinitialize the WLAN chip driver. */ +int32_t Hi3881Deinit(struct HdfChipDriver *chipDriver, struct NetDevice *netDevice) +{ + (void)chipDriver; + int32_t ret = wal_deinit_drv_wlan_netdev(netDevice); + if (ret != HDF_SUCCESS) { + return ret; + } + return ReleasePlatformNetDevice(netDevice); +} +``` + +3. During the chip initialization, call the **NetDeviceInit\(\)** function to initialize a network device, call the **NetDeviceAdd\(\)** function to add the network device to a protocol stack, and implement some function pointers of **netdev**. + +``` +hi_s32 wal_init_drv_wlan_netdev(nl80211_iftype_uint8 type, wal_phy_mode mode, hi_char* ifname, hi_u32* len) +{ + oal_net_device_stru *netdev = HI_NULL; + + ...... + /* Initialize the network device and obtain the initialized instance. */ + netdev = NetDeviceInit(ifname, *len, LITE_OS); + oal_wireless_dev *wdev = (oal_wireless_dev *)oal_mem_alloc(OAL_MEM_POOL_ID_LOCAL, sizeof(oal_wireless_dev)); + ret = wal_init_netif(type, netdev, wdev); + + ...... + + return HI_SUCCESS; +} +/* Mount some function pointers of NetDeviceInterFace. */ +oal_net_device_ops_stru g_wal_net_dev_ops = +{ + .getStats = wal_netdev_get_stats, + .open = wal_netdev_open, + .stop = wal_netdev_stop, + .xmit = hmac_bridge_vap_xmit, + .ioctl = wal_net_device_ioctl, + .changeMtu = oal_net_device_change_mtu, + .init = oal_net_device_init, + .deInit = oal_net_free_netdev, +#if (defined(_PRE_WLAN_FEATURE_FLOWCTL) || defined(_PRE_WLAN_FEATURE_OFFLOAD_FLOWCTL)) + .selectQueue = wal_netdev_select_queue, +#endif + .setMacAddr = wal_netdev_set_mac_addr, +#if (_PRE_OS_VERSION_LITEOS == _PRE_OS_VERSION) + .netifNotify = HI_NULL, +#endif + .specialEtherTypeProcess = SpecialEtherTypeProcess, +}; + +hi_s32 wal_init_netif(nl80211_iftype_uint8 type, oal_net_device_stru *netdev, const oal_wireless_dev *wdev) +{ + /* Add the network device to a protocol stack. */ + hi_u32 ret = NetDeviceAdd(netdev, (Protocol80211IfType)type); + + ...... + + return HI_SUCCESS; +} +``` + +4. Implement functions of **WifiMac80211Ops**. + +``` +/* Mount some function pointers of mac80211. */ + +/* MAC-layer APIs for basic capabilities that need to be implemented by the driver */ +static struct HdfMac80211BaseOps g_baseOps = { + .SetMode = WalSetMode, + .AddKey = WalAddKey, + .DelKey = WalDelKey, + .SetDefaultKey = WalSetDefaultKey, + .GetDeviceMacAddr = WalGetDeviceMacAddr, + .SetMacAddr = WalSetMacAddr, + .SetTxPower = WalSetTxPower, + .GetValidFreqsWithBand = WalGetValidFreqsWithBand, + .GetHwCapability = WalGetHwCapability +}; + +/* MAC-layer APIs for station capabilities that need to be implemented by the driver */ +static struct HdfMac80211STAOps g_staOps = { + .Connect = WalConnect, + .Disconnect = WalDisconnect, + .StartScan = WalStartScan, + .AbortScan = WalAbortScan, + .SetScanningMacAddress = WalSetScanningMacAddress, +}; + +/* MAC-layer APIs for AP capabilities that need to be implemented by the driver */ +static struct HdfMac80211APOps g_apOps = { + .ConfigAp = WalConfigAp, + .StartAp = WalStartAp, + .StopAp = WalStopAp, + .ConfigBeacon = WalChangeBeacon, + .DelStation = WalDelStation, + .SetCountryCode = WalSetCountryCode, + .GetAssociatedStasCount = WalGetAssociatedStasCount, + .GetAssociatedStasInfo = WalGetAssociatedStasInfo +}; + +/* Initialize mac80211 and mount functions of the chip. */ +hi_void HiMac80211Init(struct HdfChipDriver *chipDriver) +{ + if (chipDriver == NULL) { + oam_error_log(0, OAM_SF_ANY, "%s:input is NULL!", __func__); + return; + } + chipDriver->ops = &g_baseOps; + chipDriver->staOps = &g_staOps; + chipDriver->apOps = &g_apOps; +} +``` diff --git a/en/device-dev/driver/wlandevelopment-example.md b/en/device-dev/driver/wlandevelopment-example.md deleted file mode 100644 index 23c68799d2e..00000000000 --- a/en/device-dev/driver/wlandevelopment-example.md +++ /dev/null @@ -1,372 +0,0 @@ -# WLAN Development Example - -This section describes how to initialize the WLAN module on a Hi3881 WLAN chip. - -1. Set parameters for the WLAN module based on hardware attributes. - -``` -/* Set parameters in the wlan_platform.hcs file based on hardware attributes. The following is an example of the WLAN platform configuration. */ -hisi :& deviceList { - device0 :: deviceInst { - deviceInstId = 0; - powers { - power0 { - powerSeqDelay = 0; /* Power supply sequencing delay */ - powerType = 1; /* Power supply type. Value 0 indicates that the power supply is always on, and value 1 indicates power supply through general-purpose input/output (GPIO). */ - gpioId = 1; /* GPIO pin ID */ - activeLevel=1; /* Active level. Value 0 indicates a low level, and value 1 indicates a high level. */ - } - power1 { - powerSeqDelay = 0; /* Power supply sequencing delay */ - powerType = 0; /* Power supply type. Value 0 indicates that the power supply is always on, and value 1 indicates power supply through GPIO. */ - } - } - reset { - resetType = 0; /* Reset type. Value 0 indicates that reset is not supported, and value 1 indicates reset through GPIO. */ - gpioId = 2; /* GPIO pin ID */ - activeLevel=1; /* Active level. Value 0 indicates a low level, and value 1 indicates a high level. */ - resetHoldTime = 30; /* Hold time (ms) for a reset */ - } - bootUpTimeout = 30; /* Boot timeout duration (ms) */ - bus { - busType = 0; /* Bus type. Value 0 indicates secure digital input/output (SDIO). */ - busId = 2; /* Bus ID */ - funcNum = [1]; /* SDIO function number */ - timeout = 1000; /* Timeout duration for data read/write */ - blockSize = 512; /* Size of the data block to read or write */ - } - } -} -/* Add configuration file wlan_chip_.hcs (for example, wlan_chip_hi3881.hcs) for each chip and set parameters. The following takes the Hi3881 chip as an example. */ -root { - wlan_config { - hi3881 :& chipList { - chipHi3881 :: chipInst { - match_attr = "hdf_wlan_chips_hi3881"; /* Match attribute */ - chipName = "hi3881"; /* WLAN chip name */ - sdio { - vendorId = 0x0296; /* Vendor ID */ - deviceId = [0x5347]; /* Device ID */ - } - } - } - } -} -``` - -2. Mount the **init** and **deinit** functions of the WLAN chip and WLAN chip driver. - -``` -/* WLAN module initialization and mount process */ -#include "hdf_device_desc.h" -#include "hdf_wifi_product.h" -#include "hdf_log.h" -#include "osal_mem.h" -#include "hdf_wlan_chipdriver_manager.h" -#include "securec.h" -#include "wifi_module.h" -#include "hi_wifi_api.h" -#include "hi_types_base.h" - -#define HDF_LOG_TAG Hi3881Driver - -/* Functions for initializing and deinitializing the WLAN chip */ -int32_t InitHi3881Chip(struct HdfWlanDevice *device); -int32_t DeinitHi3881Chip(struct HdfWlanDevice *device); -/* Functions for initializing and deinitializing the WLAN chip driver */ -int32_t Hi3881Deinit(struct HdfChipDriver* chipDriver, struct NetDevice *netDevice); -int32_t Hi3881Init(struct HdfChipDriver* chipDriver, struct NetDevice *netDevice); - -/* Initialize mac80211 and mount functions of the chip. */ -hi_void HiMac80211Init(struct HdfChipDriver *chipDriver); - -static const char* const HI3881_DRIVER_NAME = "hisi"; - -/* Mount the WLAN chip driver and the functions of mac80211 and the chip. */ -static struct HdfChipDriver *BuildHi3881Driver(struct HdfWlanDevice *device, uint8_t ifIndex) -{ - struct HdfChipDriver *specificDriver = NULL; - if (device == NULL) { - HDF_LOGE("%s fail : channel is NULL", __func__); - return NULL; - } - (void)device; - (void)ifIndex; - specificDriver = (struct HdfChipDriver *)OsalMemCalloc(sizeof(struct HdfChipDriver)); - if (specificDriver == NULL) { - HDF_LOGE("%s fail: OsalMemCalloc fail!", __func__); - return NULL; - } - if (memset_s(specificDriver, sizeof(struct HdfChipDriver), 0, sizeof(struct HdfChipDriver)) != EOK) { - HDF_LOGE("%s fail: memset_s fail!", __func__); - OsalMemFree(specificDriver); - return NULL; - } - - if (strcpy_s(specificDriver->name, MAX_WIFI_COMPONENT_NAME_LEN, HI3881_DRIVER_NAME) != EOK) { - HDF_LOGE("%s fail : strcpy_s fail", __func__); - OsalMemFree(specificDriver); - return NULL; - } - specificDriver->init = Hi3881Init; - specificDriver->deinit = Hi3881Deinit; - - HiMac80211Init(specificDriver); - - return specificDriver; -} - -/* Release the WLAN chip driver. */ -static void ReleaseHi3881Driver(struct HdfChipDriver *chipDriver) -{ - if (chipDriver == NULL) { - return; - } - if (strcmp(chipDriver->name, HI3881_DRIVER_NAME) != 0) { - HDF_LOGE("%s:Not my driver!", __func__); - return; - } - OsalMemFree(chipDriver); -} - -static uint8_t GetHi3881GetMaxIFCount(struct HdfChipDriverFactory *factory) { - (void)factory; - return 1; -} - -/* Register functions related to the WLAN chip. */ -static int32_t HDFWlanRegHisiDriverFactory(void) -{ - static struct HdfChipDriverFactory tmpFactory = { 0 }; - struct HdfChipDriverManager *driverMgr = NULL; - driverMgr = HdfWlanGetChipDriverMgr(); - if (driverMgr == NULL && driverMgr->RegChipDriver != NULL) { - HDF_LOGE("%s fail: driverMgr is NULL!", __func__); - return HDF_FAILURE; - } - tmpFactory.driverName = HI3881_DRIVER_NAME; - tmpFactory.GetMaxIFCount = GetHi3881GetMaxIFCount; - tmpFactory.InitChip = InitHi3881Chip; - tmpFactory.DeinitChip = DeinitHi3881Chip; - tmpFactory.Build = BuildHi3881Driver; - tmpFactory.Release = ReleaseHi3881Driver; - tmpFactory.ReleaseFactory = NULL; - if (driverMgr->RegChipDriver(&tmpFactory) != HDF_SUCCESS) { - HDF_LOGE("%s fail: driverMgr is NULL!", __func__); - return HDF_FAILURE; - } - - return HDF_SUCCESS; -} - -static int32_t HdfWlanHisiChipDriverInit(struct HdfDeviceObject *device) -{ - (void)device; - return HDFWlanRegHisiDriverFactory(); -} - -struct HdfDriverEntry g_hdfHisiChipEntry = { - .moduleVersion = 1, - .Init = HdfWlanHisiChipDriverInit, - .moduleName = "HDF_WLAN_CHIPS" -}; - -HDF_INIT(g_hdfHisiChipEntry); -``` - -``` -#include "hdf_wifi_product.h" -#include "hi_wifi_api.h" -#if (_PRE_OS_VERSION_LINUX == _PRE_OS_VERSION) -#include "oal_thread.h" -#include "osal_time.h" -#endif -#include "wifi_mac80211_ops.h" -#include "wal_cfg80211.h" -#include "net_adpater.h" -#include "hdf_wlan_utils.h" - -#define HDF_LOG_TAG Hi3881Driver - -/* Initialize the WLAN chip. */ -int32_t InitHi3881Chip(struct HdfWlanDevice *device) -{ - uint8_t maxPortCount = 1; - int32_t ret = HI_SUCCESS; - uint8_t maxRetryCount = 2; - if (device == NULL) { - HDF_LOGE("%s:NULL ptr!", __func__); - return HI_FAIL; - } - - do { - if (ret != HI_SUCCESS) { - if (device->reset != NULL && device->reset->Reset != NULL) { - device->reset->Reset(device->reset); - } - HDF_LOGE("%s:Retry init hi3881!last ret=%d", __func__, ret); - } - ret = hi_wifi_init(maxPortCount); - } while (ret != 0 && --maxRetryCount > 0); - - if (ret != 0) { - HDF_LOGE("%s:Init hi3881 driver failed!", __func__); - return ret; - } - return HI_SUCCESS; -} - -/* Deinitialize the WLAN chip. */ -int32_t DeinitHi3881Chip(struct HdfWlanDevice *device) -{ - (void)device; - int32_t ret = hi_wifi_deinit(); - if (ret != 0) { - HDF_LOGE("%s:Deinit failed!ret=%d", __func__, ret); - } - return ret; -} - -/* Initialize the WLAN chip driver. */ -int32_t Hi3881Init(struct HdfChipDriver *chipDriver, struct NetDevice *netDevice) -{ - HDF_LOGI("%s: start...", __func__); - hi_u16 mode = wal_get_vap_mode(); - int32_t ret; - nl80211_iftype_uint8 type; - (void)chipDriver; - - if (mode >= WAL_WIFI_MODE_BUTT) { - oam_error_log1(0, 0, "wal_init_drv_netdev:: invalid mode[%d]", mode); - return HI_FAIL; - } - - if (mode == WAL_WIFI_MODE_STA) { - type = NL80211_IFTYPE_STATION; - } else if (mode == WAL_WIFI_MODE_AP) { - type = NL80211_IFTYPE_AP; - } else { - oam_error_log1(0, 0, "wal_init_drv_netdev:: invalid mode[%d]", mode); - return HI_FAIL; - } - - ret = wal_init_drv_wlan_netdev(type, WAL_PHY_MODE_11N, netDevice); - if (ret != HI_SUCCESS) { - oam_error_log2(0, OAM_SF_ANY, "wal_init_drv_netdev %s failed.l_return:%d\n", netDevice->name, ret); - } - return ret; -} - -/* Deinitialize the WLAN chip driver. */ -int32_t Hi3881Deinit(struct HdfChipDriver *chipDriver, struct NetDevice *netDevice) -{ - (void)chipDriver; - int32_t ret = wal_deinit_drv_wlan_netdev(netDevice); - if (ret != HDF_SUCCESS) { - return ret; - } - return ReleasePlatformNetDevice(netDevice); -} -``` - -3. During the chip initialization, call the **NetDeviceInit\(\)** function to initialize a network device, call the **NetDeviceAdd\(\)** function to add the network device to a protocol stack, and implement some function pointers of **netdev**. - -``` -hi_s32 wal_init_drv_wlan_netdev(nl80211_iftype_uint8 type, wal_phy_mode mode, hi_char* ifname, hi_u32* len) -{ - oal_net_device_stru *netdev = HI_NULL; - - ...... - /* Initialize the network device and obtain the initialized instance. */ - netdev = NetDeviceInit(ifname, *len, LITE_OS); - oal_wireless_dev *wdev = (oal_wireless_dev *)oal_mem_alloc(OAL_MEM_POOL_ID_LOCAL, sizeof(oal_wireless_dev)); - ret = wal_init_netif(type, netdev, wdev); - - ...... - - return HI_SUCCESS; -} -/* Mount some function pointers of {@link NetDeviceInterFace}. */ -oal_net_device_ops_stru g_wal_net_dev_ops = -{ - .getStats = wal_netdev_get_stats, - .open = wal_netdev_open, - .stop = wal_netdev_stop, - .xmit = hmac_bridge_vap_xmit, - .ioctl = wal_net_device_ioctl, - .changeMtu = oal_net_device_change_mtu, - .init = oal_net_device_init, - .deInit = oal_net_free_netdev, -#if (defined(_PRE_WLAN_FEATURE_FLOWCTL) || defined(_PRE_WLAN_FEATURE_OFFLOAD_FLOWCTL)) - .selectQueue = wal_netdev_select_queue, -#endif - .setMacAddr = wal_netdev_set_mac_addr, -#if (_PRE_OS_VERSION_LITEOS == _PRE_OS_VERSION) - .netifNotify = HI_NULL, -#endif - .specialEtherTypeProcess = SpecialEtherTypeProcess, -}; - -hi_s32 wal_init_netif(nl80211_iftype_uint8 type, oal_net_device_stru *netdev, const oal_wireless_dev *wdev) -{ - /* Add the network device to a protocol stack. */ - hi_u32 ret = NetDeviceAdd(netdev, (Protocol80211IfType)type); - - ...... - - return HI_SUCCESS; -} -``` - -4. Implement functions of **WifiMac80211Ops**. - -``` -/* Mount some function pointers of mac80211. */ - -/* MAC-layer APIs for basic capabilities that need to be implemented by the driver */ -static struct HdfMac80211BaseOps g_baseOps = { - .SetMode = WalSetMode, - .AddKey = WalAddKey, - .DelKey = WalDelKey, - .SetDefaultKey = WalSetDefaultKey, - .GetDeviceMacAddr = WalGetDeviceMacAddr, - .SetMacAddr = WalSetMacAddr, - .SetTxPower = WalSetTxPower, - .GetValidFreqsWithBand = WalGetValidFreqsWithBand, - .GetHwCapability = WalGetHwCapability -}; - -/* MAC-layer APIs for station capabilities that need to be implemented by the driver */ -static struct HdfMac80211STAOps g_staOps = { - .Connect = WalConnect, - .Disconnect = WalDisconnect, - .StartScan = WalStartScan, - .AbortScan = WalAbortScan, - .SetScanningMacAddress = WalSetScanningMacAddress, -}; - -/* MAC-layer APIs for AP capabilities that need to be implemented by the driver */ -static struct HdfMac80211APOps g_apOps = { - .ConfigAp = WalConfigAp, - .StartAp = WalStartAp, - .StopAp = WalStopAp, - .ConfigBeacon = WalChangeBeacon, - .DelStation = WalDelStation, - .SetCountryCode = WalSetCountryCode, - .GetAssociatedStasCount = WalGetAssociatedStasCount, - .GetAssociatedStasInfo = WalGetAssociatedStasInfo -}; - -/* Initialize mac80211 and mount functions of the chip. */ -hi_void HiMac80211Init(struct HdfChipDriver *chipDriver) -{ - if (chipDriver == NULL) { - oam_error_log(0, OAM_SF_ANY, "%s:input is NULL!", __func__); - return; - } - chipDriver->ops = &g_baseOps; - chipDriver->staOps = &g_staOps; - chipDriver->apOps = &g_apOps; -} -``` - diff --git a/en/device-dev/driver/wlandevelopment-guidelines.md b/en/device-dev/driver/wlandevelopment-guidelines.md deleted file mode 100644 index 4b270cadbc9..00000000000 --- a/en/device-dev/driver/wlandevelopment-guidelines.md +++ /dev/null @@ -1,18 +0,0 @@ -# WLAN Development Guidelines - -- [How to Develop](#section96091936185820) - -The WLAN driver is developed based on the HDF and PLATFORM. It provides a unified driver model for WLAN modules of different vendors regardless of the operating system \(OS\) and system on a chip \(SoC\). - -## How to Develop - -1. Set hardware parameters such as **module** \(different features\) and **chip** in the **wifi\_config.hcs** file. -2. Parse the **wifi\_config.hcs** file and generate a structure with the configured parameters. -3. Initialize and create a module. -4. Mount and initialize the chip. -5. Initialize the bus. -6. Mount the upper-layer WPA service. - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->Some of the above adaptation steps have been provided. For details, see the third part **[WLAN Development Example](wlandevelopment-example.md)**. The steps waiting to be performed by developers include setting configuration parameters based on hardware attributes, adapting and mounting a chip, and performing tests and verification. - diff --git a/en/device-dev/driver/wlanoverview.md b/en/device-dev/driver/wlanoverview.md deleted file mode 100644 index 1d95ddb0028..00000000000 --- a/en/device-dev/driver/wlanoverview.md +++ /dev/null @@ -1,229 +0,0 @@ -# WLAN Overview - -- [Introduction](#section23087361515) -- [WLAN Driver API Architecture](#section1533192516212) -- [Available APIs](#section87491484213) - -## Introduction - -The WLAN module is developed based on the Hardware Driver Foundation \(HDF\). It supports cross-OS migration, component adaptation, and modular assembly and compilation. Based on the unified APIs provided by the WLAN module, driver developers of WLAN vendors can adapt their driver code and are capable of creating, disabling, scanning, and connecting to WLAN hotspots. The WLAN driver provides the Hardware Driver Interface \(HDI\) layer with the capabilities of setting and obtaining the device MAC address and setting the transmit power. The following figure shows the framework of the [WLAN module](#fig967034316227): - -**Figure 1** WLAN framework - - -![](figures/en-us_image_0000001055299108.png) - -## WLAN Driver API Architecture - -The WLAN module provides the following three types of APIs: - -1. Capability APIs for the HDI layer - -2. Capability APIs directly invoked by drivers - -3. Capability APIs for vendors - -**Figure 2** Available APIs of the WLAN module - - -![](figures/接口分布图4.png) - -## Available APIs - -The WLAN driver module provides APIs that can be directly called by driver developers, such as creating/releasing a **WifiModule**, connecting to/disconnecting from a WLAN hotspot, applying for/releasing a **NetBuf**, and converting between the **pbuf** structure of Lightweight IP \(lwIP\) and a **NetBuf**. [Table 1](#table1521573319472) provides some APIs. - -**Table 1** APIs that can be directly called by driver developers - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

File

-

Function

-

Description

-

wifi_module.h

-

-

struct WifiModule *WifiModuleCreate(const struct HdfConfigWifiModuleConfig *config);

-

Creates a WifiModule.

-

void WifiModuleDelete(struct WifiModule *module);

-

Deletes and releases data of a WifiModule.

-

int32_t DelFeature(struct WifiModule *module, uint16_t featureType);

-

Deletes a feature from a WifiModule.

-

int32_t AddFeature(struct WifiModule *module, uint16_t featureType, struct WifiFeature *featureData);

-

Adds a feature to a WifiModule.

-

wifi_mac80211_ops.h

-

int32_t (*startAp)(NetDevice *netDev);

-

Starts an AP.

-

int32_t (*stopAp)(NetDevice *netDev);

-

Stops an AP.

-

int32_t (*connect)(NetDevice *netDev, WifiConnectParams *param);

-

Connects to a hotspot.

-

int32_t (*disconnect)(NetDevice *netDev, uint16_t reasonCode);

-

Disconnects from a hotspot.

-

hdf_netbuf.h

-

static inline void NetBufQueueInit(struct NetBufQueue *q);

-

Initializes a NetBuf queue.

-

struct NetBuf *NetBufAlloc(uint32_t size);

-

Applies for a NetBuf.

-

void NetBufFree(struct NetBuf *nb);

-

Releases a NetBuf.

-

struct NetBuf *Pbuf2NetBuf(const struct NetDevice *netdev, struct pbuf *lwipBuf);

-

Converts the pbuf structure of lwIP to a NetBuf.

-

struct pbuf *NetBuf2Pbuf(const struct NetBuf *nb);

-

Converts a NetBuf to the pbuf structure of lwIP.

-
- -The WLAN driver module provides APIs for driver developers, such as initializing/deregistering, opening/stopping a **NetDevice**, and obtaining the state of a **NetDevice**. [Table 2](#table74613501475) provides some APIs. - -**Table 2** APIs for driver developers of WLAN vendors to implement - - - - - - - - - - - - - - - - - - - - - - - - - - - -

File

-

Function

-

Description

-

net_device.h

-

int32_t (*init)(struct NetDevice *netDev);

-

Initializes a NetDevice.

-

struct NetDevStats *(*getStats)(struct NetDevice *netDev);

-

Obtains the state of a NetDevice.

-

int32_t (*setMacAddr)(struct NetDevice *netDev, void *addr);

-

Sets the MAC address.

-

void (*deInit)(struct NetDevice *netDev);

-

Deinitializes a NetDevice.

-

int32_t (*open)(struct NetDevice *netDev);

-

Opens a NetDevice.

-

int32_t (*stop)(struct NetDevice *netDev);

-

Stops a NetDevice.

-
- -The WLAN driver provides the HDI layer with the APIs for creating and destroying an **IWiFi** object and setting the MAC address. [Table 3](#table141076311618) provides some APIs. - -**Table 3** APIs provided by the WLAN HAL module - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Header File

-

Function

-

Description

-

wifi_hal.h

-

-

int32_t WifiConstruct(struct IWiFi **wifiInstance);

-

Creates an IWiFi object with basic capabilities.

-

int32_t WifiDestruct(struct IWiFi **wifiInstance);

-

Destroys an IWiFi object.

-

int32_t (*start)(struct IWiFi *);

-

Creates a channel between the HAL and the driver and obtains the NIC supported by the driver.

-

int32_t (*stop)(struct IWiFi *);

-

Stops the channel between the HAL and the driver.

-

wifi_hal_base_feature.h

-

int32_t (*getFeatureType)(const struct IWiFiBaseFeature *);

-

Obtains the feature type.

-

int32_t (*setMacAddress)(const struct IWiFiBaseFeature *, unsigned char *, uint8_t);

-

Sets the MAC address.

-

int32_t (*getDeviceMacAddress)(const struct IWiFiBaseFeature *, unsigned char *, uint8_t);

-

Obtains the device MAC address.

-

int32_t (*setTxPower)(const struct IWiFiBaseFeature *, int32_t);

-

Sets the transmit power.

-
- diff --git a/en/device-dev/get-code/Readme-EN.md b/en/device-dev/get-code/Readme-EN.md index 0d01c57880c..5431040667d 100644 --- a/en/device-dev/get-code/Readme-EN.md +++ b/en/device-dev/get-code/Readme-EN.md @@ -2,4 +2,6 @@ - [Source Code Acquisition](source-code-acquisition.md) - [Tool Acquisition](tool-acquisition.md) + - [Docker Environment](docker-environment.md) + - [IDE](ide.md) diff --git a/en/device-dev/get-code/docker-environment.md b/en/device-dev/get-code/docker-environment.md new file mode 100644 index 00000000000..a9dce7ccc7b --- /dev/null +++ b/en/device-dev/get-code/docker-environment.md @@ -0,0 +1,313 @@ +# Docker Environment + +- [Introduction](#section107932281315) +- [Preparations](#section7337134183512) +- [Standalone Docker Environment](#section2858536103611) + - [Setting Up the Docker Environment for Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\)](#section319412277287) + - [Building for Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\)](#section631485163615) + - [Setting Up the Docker Environment for Standard-System Devices \(reference memory ≥ 128 MB\)](#section13585262391) + - [Building for Standard-System Devices \(reference memory ≥ 128 MB\)](#section193711513406) + +- [HPM-based Docker Environment](#section485713518337) + - [Setting Up the Docker Environment](#section3295842510) + - [Obtaining and Building Source Code](#section69141039143518) + + +## Introduction + +OpenHarmony provides the following two types of Docker environments for you to quickly get the development environment ready: + +- Standalone Docker environment: applicable when using Ubuntu or Windows to build a distribution +- HPM-based Docker environment: applicable when using the HarmonyOS Package Manager \(HPM\) to build a distribution + +**Table 1** Docker image + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Docker Environment

+

System Type

+

Operating Platform

+

Docker Image Repository

+

Tag

+

Standalone Docker environment

+

Mini and small systems

+

Ubuntu or Windows

+

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker

+

0.0.5

+

Standard system

+

Ubuntu

+

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard

+

0.0.1

+

HPM-based Docker environment

+

Mini and small systems

+

Ubuntu or Windows

+

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker

+

0.0.3

+
+ +## Preparations + +Before using the Docker environment, perform the following operations: + +1. Install Docker. For details, see [Install Docker Engine](https://docs.docker.com/engine/install/). +2. Obtain the OpenHarmony source code. For details, see [Source Code Acquisition](source-code-acquisition.md). + + >![](public_sys-resources/icon-note.gif) **NOTE:** + >You do not need to obtain the source code for the HPM-based Docker environment. + + +## Standalone Docker Environment + +The Docker image of OpenHarmony is hosted on [HUAWEI CLOUD SWR](https://console.huaweicloud.com/swr/?region=cn-south-1&locale=en-us#/app/warehouse/warehouseMangeDetail/goldensir/openharmony-docker/openharmony-docker?type=ownImage). Using the Docker image will help simplify environment configurations needed for the building. The following describes the detailed procedure. + +### Setting Up the Docker Environment for Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\) + +**Method 1: Obtaining the Docker image from HUAWEI CLOUD SWR** + +1. Obtain the Docker image. + + ``` + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + +2. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: + + Run the following command in Ubuntu: + + ``` + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + + Run the following command in Windows \(assuming that the source code directory is **D:\\OpenHarmony**\): + + ``` + docker run -it -v D:\OpenHarmony:/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + + +**Method 2: Using the Dockerfile to Build a Local Docker Image** + +1. Obtain the Dockerfile script for a local Docker image. + + ``` + git clone https://gitee.com/openharmony/docs.git + ``` + +2. Go to the directory of the Dockerfile code and run the following command to build the Docker image: + + ``` + cd docs/docker + ./build.sh + ``` + +3. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: + + Run the following command in Ubuntu: + + ``` + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + + Run the following command in Windows \(assuming that the source code directory is **D:\\OpenHarmony**\): + + ``` + docker run -it -v D:\OpenHarmony:/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + + +### Building for Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\) + +The following uses the Hi3516 platform as an example to describe the build procedure. + +Set the build path to the current path. + +``` +hb set + . +``` + +**Figure 1** Setting page + + +![](figures/en-us_image_0000001101413884.png) + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>The mapping between the development board and the building GUI: +>- Hi3861: wifiiot\_hispark\_pegasus@hisilicon +>- Hi3516: ipcamera\_hispark\_taurus@hisilicon +>- Hi3518: ipcamera\_hispark\_aries@hisilicon + +1. Select **ipcamera\_hispark\_taurus@hisilicon** and press **Enter**. +2. Start building. + + ``` + hb build -f + ``` + +3. View the build result. + + The files will be generated in the **out/hispark\_taurus/ipcamera\_hispark\_taurus** directory. + + +### Setting Up the Docker Environment for Standard-System Devices \(reference memory ≥ 128 MB\) + +**Method 1: Obtaining the Docker image from HUAWEI CLOUD SWR** + +1. Obtain the Docker image. + + ``` + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 + ``` + +2. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: + + ``` + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 + ``` + + +**Method 2: Using the Dockerfile to Build a Local Docker Image** + +1. Obtain the Dockerfile script for a local Docker image. + + ``` + git clone https://gitee.com/openharmony/docs.git + ``` + +2. Go to the directory of the Dockerfile code and run the following command to build the Docker image: + + ``` + cd docs/docker/standard + ./build.sh + ``` + +3. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: + + ``` + docker run -it -v $(pwd):/home/openharmony openharmony-docker-standard:0.0.1 + ``` + + +### Building for Standard-System Devices \(reference memory ≥ 128 MB\) + +1. Run the preprocessing script in the root directory of the source code. + + ``` + ../scripts/prepare.sh + ``` + +2. Run the following script to start building for standard-system devices \(reference memory ≥ 128 MB\). + + ``` + ./build.sh --product-name {product_name} + ``` + + **product\_name** indicates the platform supported by the current distribution, for example, Hi3516D V300. + + Files generated during building are stored in the **out/ohos-arm-release/** directory, and the generated image is stored in the **out/ohos-arm-release/packages/phone/images/** directory. + + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>You can exit Docker by simply running the **exit** command. + +## HPM-based Docker Environment + +**docker\_dist** is a template component in the [HPM](https://hpm.harmonyos.com/#/en/home) system. It helps to quickly initialize an HPM project and use the Docker image to quickly build a distribution of OpenHarmony, greatly simplifying environment configurations needed for building. After configuring the Ubuntu and [hpm-cli](https://device.harmonyos.com/en/docs/develop/bundles/oem_bundle_guide_prepare-0000001050129846) development environments, perform the following steps to access the Docker environment: + +### Setting Up the Docker Environment + +1. Initialize the installation template by running the following command in any of the working directories: + + ``` + hpm init -t @ohos/docker_dist + ``` + +2. Modify the **publishAs** field. + + The obtained bundle is of the template type. Open the **bundle.json** file in the current directory and change the value of **publishAs** from **template** to **distribution** as needed. + + +### Obtaining and Building Source Code + +Start building. Docker can be automatically installed only in Ubuntu. If you are using any other operating system, manually install Docker before pulling the image. + +- **Automatically Installing Docker \(Ubuntu\)** + + Running the following command will automatically install Docker, pull the Docker image, and start the pulling and building of the corresponding solution in the container. + + **Method 1:** + + Add a parameter to specify the solution. For example: + + ``` + hpm run docker solution={product} + ``` + + **\{product\}** indicates the solution, for example, **@ohos/hispark\_taurus**, **@ohos/hispark\_aries**, and **@ohos/hispark\_pegasus**. + + **Method 2:** + + Set an environment variable to specify the solution, and then run the build command. + + 1. Select the desired solution. + + ``` + export solution={product} + ``` + + **\{product\}** indicates the solution, for example, **@ohos/hispark\_taurus**, **@ohos/hispark\_aries**, and **@ohos/hispark\_pegasus**. + + 2. Obtain and build the source code. + + ``` + hpm run docker + ``` + + + This example uses the **@ohos/hispark\_taurus** solution for illustration. If the execution is successful, the output is as follows: + + ``` + ... + ohos ipcamera_hispark_taurus build success! + @ohos/hispark_taurus: distribution building completed. + ``` + + +- **Manually Installing Docker \(Non-Ubuntu\)** + + Perform the following operations to install Docker: + + ``` + # Pull the image. + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.3# Compile the Docker image in the Linux environment. + hpm run distWithDocker solution={product} + # When using Windows, make sure to configure the Git Bash. + hpm config set shellPath "Git Bash path" + hpm run distWithDocker solution={product} + ``` + + diff --git a/en/device-dev/get-code/figures/3.png b/en/device-dev/get-code/figures/3.png index c99cddf919e6f912aa19c43189f1fdbe895764ac..7936efcb1acc374be338d44d8d2911fa82f29076 100644 GIT binary patch literal 43531 zcmcG$d03L&+csKHgH2|`^JL~gWs{YXQX&peS(-UeSq?c+;*g1&k|qjTSy?%dv*tkM zlsV-PrYSZFiV6;Bhy#@aikJz40s`|wT}BT-nVtjxacoohHD?wfhR z^ELOZPHerAa!U0<+vUsfO>3>wK3(%Vqq$*q(%J2)r$4=lePX+N&#{mVC+5$EoY^^A-M9Hn-rl{dR2dIHk*{rfv{*GWz4%7n&&9D9A@pw$4kkwZD6P3= zz%y$0-D2}11l}wh04#q3G`+ceIQ@LlrBdaEIx+ss%jvvcQQD>RdJ{$q|8uWitX`|E z`cvOk^j2i*cb2mpXQ3(vphThyXnu$ zrm323aQQfVxV=gtscNR_;aAF+$>8W;w0fAd7A7#QPrDR-W|4h~x&t3>XvVtXG-008 z^7Hkw8(UITMTKnI&zAi-oe7=MOLTCHc;g+>@^_V(`9@LSJ$Q{mk1qbaB&v^@2wH~8`e4E<3ay*%1)B&K zDxDVS-wc_y*mE$xAkGV5EwDRkq@q#96z0t>PtNQ*8`|<2LB|*(p`oe}YkGC&usVt{ z@Q?Mx#LVwsADzGEg`6{gM){B;n}zJ2oSK8M_ayX0Ty%*YuilK!L~LX&ljC(?bU0wTI5;i zj)&8wHk$bM`e~8`1Y_Pa`Z!f=yP_ftX8gryEF26ZLO0r(8gK zW>xB(EpR``_#8~QfB$R*cQK1eP`~K?%j4UEPl~YxCrWg6kIo z7>F4Qh^KaZ8)R8$NssFK=5HIgk1&Ng4?~Cz4ukdXx^3@xZf+vd6I5%UUhrXXl%XI~ z-{1n29{k3_WitM;`Wg&rA^B^Q`FK|S31i5_?vUGisH;XDqhoJ-Q_!K~^-Z}J!usaS z?>Dr~*NE!X`$`y?>0EBCZTUgc;~IK@m6v~?V@zoXAZb8$5hFIWmYySbpku@f43o-! z(}}#f%sQ;+swff3U+Yf?cKzvq+c8gL>_*?_4+jnC+~n_0jqDuSm6IF# z%w%E(AmK1mc^yLV3vor^3 zKV_>ORR}EcD2wj=;+K?o-0;NgMKIAsjl6r-H@8C%>IfEg+w(4DF6XAEr2~mv-xzZO z2zb|%3nx5o?EbLEhw-xV2GFN6fGX_crew-r>Jz5+AQ-k5w_N}~ATxhKU&yH?Zx2&E z2WkxO@>*2`Im1`2Ogpv+Q4?@lo-@x+tuGo1dL&EfX|y4_zEmXZ6TK#HD9(Q%PG0;V z;<<>A;Bul%+}U*KK~en)ctWcwh~!^ju}(GLj z)&)WwKy8@((A{ri0X{P1VvN9Y&kZ@h#?$pfL2MS5xw~TQQK!rBrfNFrSzU)I>h2TG zO5nI7?-{mq&q9Uj>6i@13}7QB`+4q9@GL!K@F23d0+$jlSbTfR_2;SB#?!lOVv5WrFK!Wa5kvg=yjjTt%?L2;d<}*^m>L**@pLIglz2n%|1TStIQ+3-Z)q?p4 zsz`c$WiJ$%j8bRZ2Gea)JMH#2!_61XdNU#5DD;P?rGNiak%3}pGTdZXKj8EG-RwY( zG6>sES}M0D-m*tl<<`Vpq%_gN&5u_mj%!%~|$+Qp1KiWN#fhpoy7UJEPVM=1z` z*0))n3aV>=la%93N)z}@+wMagPXR`$tr(=7=VcNb#4NR?Twp=Jty;Tkbm&vIueS6n z(7!MDOPxMAN|ucdY|ib&ZuOD!1dN73uOl?NQvM;8_w=#pGRK%r^+i@ zgd8m=j2Xeg`s&A8jX95&7!=OZ(J)=+IZv8%#%yw9o%Sy?;JWGrgIRl`B&VF~)6^3; zw%^xTMIUGF@iH-FE|LPN>kgaqEW2l4a+UG}{}xjF3;UW9x0CAjBci z+%P7L@Nu&&kJJxbI8v&f<5a$U%(Wj9rl|2`HP!_5TSpI?u&an>CumNub4c}BVRhQF zX-COH#qgbT{$i}uc#Qe~pZZmF5O5#394 zw|0}B8~_##PqlX19{@*yVa7$?16`)1qr)GGo-4)!ZIUP?M*Uv3HRe@WVRjtyQBk|^ z22=zwOn@%1XL|#V^bm7nv6%gCW5p!k6S0wl!~9S=k`>ZHb!L5!_nTRBGavmN$};^s z7X)_GYHdJfq$B!I$#V}1wX`=8KSrymoY%4HgOd}p2(qk9Q}3iBVQ`plxf$$_WP@8v zCaj}b{7*Q}et{E82zKr7JMiG$v-kMDtPfY5Eoew?SM_A1EzDG|n~h#SYa09ZgBEYBhC}2yC@D-3$3` zdUIQlUT|MF>%-G(?*W9^#i^0_Q^;6mH0&Q3sqI?MEoqh%H9c`(@FGflkA;9bgE2K- z8RKB5hL=p^z~8N2gXZP2v-RWyZaMBXtm6l{Jv+b#s3O#UCUBs>S%!J`$dR|=wqqP! zpHa)F>&@c1g%vt0>_AqmiZeA9DrVFOQMc|uh?ZpQ;LqU(*Xn*ererCsI5j=G@5o40 zIY~GiU*xLpgfXI2muMDOW;@XORih*+`X06P)p^9Neb%yjh>twk)1Rlz7rU>t7*Ue_ z$#1u{{2uHJh)#+pay_aKgYjW>&ySIw;^_2)Za$pxxxr{!Q;>KQA%$WxOR(_8TPRkM z_&6|!$B@O>&DQfw{gzXp`LZM8)}Q0&Vp!wqe-{I0w7ql!^ur35HalgCilg%n)=rBrq4OWZF#E(jBJ=6 zB-8sRgQXSK>vOgXmxjIG`5*AyQVZL>yO8sqn8hv@KxARwao^Qu#HVv!I)zd6!2hLsZ#jpu$&#lfM07i^#+## z=_!N8hOpUd!{c2IDX#fr?ZWqb*#P#V(;!5QKT+id?XVcW)8`IMwNS*)!M=v%eu!y^ zxx|)FnxTE-pg+*9kPzZ$VqeS2;rCVJxi|Wd&6WvI3NU{S1q3I>B<*2a(%d9VH&nm4 z+lJnhJN{Y~CA7tCZsh)1L~1@WGuMyNkRyO;#V3)er8fnmggb{d(R>!VFOL;h&KR) z(m214-*8sme1`GFN@IZsffkrDU173TfOdDA@$`j=N)Im9_J8mS4yvcp+GENwBZBNP z=g^9BX79s_>4G{i^6|0;8%@%4#z#%p1^8G`cE#u7Oh*e$++O~gX1l9kiz`@XqG{l3 zeG9EUX8XpxNx^$4*P83p6{(rwUSDn!Y-1*|y#^e|$*U=7epeI^w*rwpCk~L1(!fvR z5uKsBt~Nop#9cjDjTP~O{Nd%13&{;DCw!llxAD{8msT0q+K4D?tv$e_orJLtb?9lc z)$9sMj*w$zN@?C^qu9gBl}*MIj1ZpZbS^l(h>J{GlWk}?b^zhBPUf%f&pETRB`i7J zKEns0fqpzT=}ODXSuYz54^2V{)>t<$z)6LlmMetM1N`?3z8fM}UtebB$h;v0w0lE1 z$f2StxQl=&&gIrJEXK~7AJuacG?dI3a(qJTVtT&~+Zv7Dh(A`@*&*{1-E-j1I1k1n zm4X#DO!QsBNRqI#U^siOi{docAjTV3ML|1oYeuXK4Y0A^Jl*m{%#_6)1@*)|dHX*v@zRIisf8aTZDcyv&n-2Ym~XWEn}RP3~VZ z=CgBC6_=$S7mgU=5Y(Kntw7(8pS>;7_iC3g_c~jrf8hE0!^G{I&TqU}No6d<%n(K?GJralQ_;}6Ou4X( z#LmH2)Sw0T7Az;j=za zr-7wf*f-Ud9pk`liBhBKT?P{qy-M6+!gc;+PyC?I)XQIu^YF%Jj`9c9O_A=e&uHPoosr+{-?t!UlHdYrj_v<6{x60x@dvB;FWln)1Pt=OYueAFQ{L4g z2LCrMbG|6_U1*uIAAdlaf3X_RgyF-@Sy%oCxlz}xKM(Z%pXVo9+bWb2_z$Y1d;w$l z|M~S?oMF^V%TmYM7(K;Ldi3x9?}`twrIINnM6z132#ebyd0duqV^@kEv2xbF{r4~6N29g}bPcl<9*T+95{e3%7IowQAX`D_V%k6Fnl~HBxbP`%5TiWcgH2YFys`glr z0mVF)S7f#!S&9pv)}rQDP?_!M#NX{ZAG1-5?x)#pNa+*EwN(ckxh--g~sM4fkSmFAldEW;@Bd6$`RczyxCB&DGQ@Fd_AkZQ|s4YE#03QmW9NEggzeFuh6r&#fmGkfM;l=sCtqB9sC9uYi>MPPdy9t4YC{H z^ckt0CB4Ns-LO`ee|StZ-sat3UsH1e+!?o)hFrtXFn=e5@4?TeHaE05VYu&2oD(wL zzv1_ky<2oa5(LrItIVN|mmDhYB;BBlj$+C_XARe)>DLvs5JIg}Gvi0W74Zpbg8*Zz z)L_)WyV-b7TLTe&sF*ZM+`Q~o^E8jbXAhV*E5{ImbuTtzcVv%EYCs}^lA^yQI#O*( zTIetAC~KL0SiL!G>+<+k28q!>Q?EAFMjQasAHG}sj1X3!);yPSz|A83`zNN4cwk_< z^*uZJc_6YAYn;%3Kjx;iBA7jO5qw$^C2_9#2jCd2^INoB4PG25G5AR?OL9dFbr%8J zY}s>zHT~8}gMMo~%65*-SZj~_bF^ZTR$5HMu^D4y+uK9-GSer_{qh)=0N2T^OQFly zQA)TE?L*|^z~@oV7pTE5=2YLtRib2~HYN?C=*#3@6`zY*Ufb6=txk!Lmb~mVC%pV3(ba{Fh{XQrRW*_QGJJs#ZuATsn^*u?a( zbp);99P9^$mjjm&D~*sn;Tbc*96)=6BT&rp+9gE=uuJ2b(q(Rvl4rpdP#jI}EJ;jF z@Q{7Y{SiAngE58*<8a5|u9^IPEml(WPJ%2YZp1a;)KAt7asKwELXw^vr(X>qH{P^l zOA?K64@^XVFWgWe5W6rZ&y{$}vQM+ih};t3JO60`==^0Mx1h;+@tntwn@(J1N zt_?(2#Hlz_@q+8f0wGekeZsLs__mMaNFRo`5B0(|$%Q)Hr~&(iE5C4t$WPmjKHf;T z$#SrEKLfeAwiM`+?~!J(S27O)ZzSX;Y;u=eB1)W`h0SLD1ilDD(+(4-8_jHnq6!IKn8d!HWsY2 zxP@|VKn~hVQ)*h{Q-;?9jTJ%tWv|)rS!-Ozm|5@C%iL(20!ruuBiV^C-Jr+~l0zl= zNL_mkv=0kI7omT>wk$XQDoTUQfhwJZQ?Y)NnSK+0e-Nh1U)VL*jVXr=!TCdkde*+! zuxt*`ol9vZ)u?V zQl<;Ti8o-pS~2a1Dw16k_vB|p7vy4DzimjfZGFCH6b=f34Fpp-jTdE%>4rI4dEma5 zjAcg-Q!X(Kg#o&+px9%J-nV&Tipk44Mp3Z8rQ3qZf#p-#@|Q=)0)?IzfS=8~A2k+Y ztOyg#%vqZu@ad5P2sde+#7F=FyWs2s%Rj>J=Z z$Ds5mM5ojJ?WLf+B$M`m>orDsnimHS+P{Uo9Dm9Fc;NkO!l~4sKYtFAE-8(Jt9xO% zbJH$iPe$X~bwroU`9k^Mv)@yXOL%v>$>K32frojyWu(w>2*+$agro^7QNa1AfrTUM3TxW9g?i0i|V({ z%=4_Ckm^7_NgFYbXSpXQo8Zl5kt~o8F+2PN;(8|32;cmquCX}p>BJEm#Ua+m_vg$u zd)aChtNEHzLZ~}MlaG!^o&&K(XSF(`9i4p2fn!^;p+kLfor|rVIRZcTJ?4OP&im2; z+;VJi1Pybccr-0t(eHzkb+~j-?D_&gSC-q#dEboqHbmN_*nwjR~K_oWSV z&MDPmW~a%KYE?SJxos?U{g1x0R`N~5X@hsDPS-Ad!_L@UBp`om&v^^~KwQw}W}kXT zW%mjgBDc(iWK~BeIZeWKo$eA}W@o@elhC2bom;?9($e*_{f6}2h?1;Gzew`y*?Ohk z`c$}A*9&nDBW30fjw65XH=3DPz9vPrT#Ztz_Ry{!IbU^}JvleKMz40%$&9~+oJV){ zyYj86G&A!!@DRe(mH1SU4el#dq#5$MRQ(q>@O!?1RMfcwJ1Haam=4wCc&8C!R3|^p z0@p@Ww?^(yJVq-Bl^uI1DI=xp1A^1L%=4YS5Ry=dpDjJ%te~W`y3-^J6D5E7YryO* zyTY5yraoGbLF5cI5RR5*SH-IAjrwWsa4IfrXMvb`t%Z7Xx$jYWi<42{=+pW1XbEE4 zC@-AelqLE%>#TKtpIpaQN z2Y0q-iU-E`_L0)A{B~t$KEYKU&}k1oEw=mMBuR&iW)tFL(&LmHh{9w>Y*no+S+3XT zJG6b{KzoyJ46n;V+?L=x1ZM}hCGA&EvaL;n6fJ?BnIC!TBCHlC+0E%A>N$c*dlCx? z&v<@iIx^Q_GFeNVzh%hrk1IWvec0h7D)%1fGgxpr7&sz$S#y{k-DVAwv=NNUe_|)Q zZgWk1HbtQ=Ss}YD8DK#3xKF1q!91s`)9`R9-qiKcTc}<~^I?Hgq>b(r^e}sCw8VgSq!Cu`*Y`co9~Kc+yfuebK~IMsg=(?|fvj zT1S6yjJa;-^x$tfypltLe3C9+1WaUCF%<(+tRyOF z_O-i5S=ek=w_yj799zCji2B%b)v7KY?tOyJ%_f?+oxHW{v()ue;s(k<9PK{wG;FFX6pu6MK(c+e)op zIFjI&GmW3$!#zMac>r&iOa@L@rOPQqwz|^~<1>S^c(ARN+g*NCuq&#$AIDriyjKeLQYE z76+{!VO%uIK>1nRPKnzrE$}4z$x)WFI97g5zeA2_;6BpXSIY&sxJh;f#vFfs5lnAe z_*c{JD!)`jC93GAvZn0(F_T@f(BbDfjO5uZlaI}L9E}iF7reRDQ%HCP{R-KS_rtyp zLg^Bsw{j~c;U0As@3c;V{Zae!^}v-b_>7mxf9AN>3qWY+d_bH$e54@9e5e4f%$Uj{ zI>HOqh_V29%PZ)ENFpe2q7TNsg<3Z;UNn~l<_E$tWWvnKkWq{kP*$iq^(wLP&w?rO zFRpE2)bHx^bn8XKtyTO{uiRfk#dUP7?5r90m?!Ejp~1?j+BmS+uM*KAJ_8m`0fm(; zy;3&rZb-pc+oEzz4zdzji(yM|rs-phK+Iq#tn#1{B&F7x%MJ~)5}p0R`6sfvPch89 zn};0OJ>h?BgTe1_BpUp5$rWhSj_VC>&J$hV^wpc{D1 zRZV)7y&(ye>gC2OR>iD-`N{U$bNWFs#B-u_ww{Ekds!h~fXkERf6w?pX8Yp-J1v9$ zj*{Q{^{;KbC4`1`t0VJ;?-J?5M|&5eh$x{UrIV=z^hsbFmn?vU_JGcLqaBktP)^Ukf;lg-nDHTnLv~Pq-$OcmqpG+~)B?y4 zq92faHT)?bs5#T6iW{4((Xkf@=C?a7o`g>oYMml9qH-o`6?#m1(@h{@sxX0sreTOx z{mZU+QWCZQC9J$GdLUS2@A_*cD}J+3cZ#STwh+wv)OfHW2z3s&y>GmL($pW(ofq)< zxY%0q&t$8J(erCzJ|hMNhnj{)=YetKqo=YZHEMxH(Ij;(&}_vQkc_2{c`TzZylJU0 z)P6U@>ci0H&0>;V4R;)(hrNoq6la7CWEDDm1DZxy9TeAfnOyQU+b;xp_AyPzV*U2b z=3_t>voIgI-ofVHIFkX$4(l~C`tHdU#wiylAmH0)~MwJza zM`ir;6AEDRAqD!Jl>i^#m$^Th^hT8AhDHpIMFhsKuvHYn_!HZc^@8DCO zDSoNR*&m>PaF_^JIfMT%5+hWw<)aG0yJg#vY0z0NmVpQ;h6!88@_{JJ|Cl2A7g)gFtZY|ZDUy@e2*w+ z=Jzg98|N7%Qq3q14hg0k0)nZz&WF<}$$wG&ccngDA;q@*`=gOEyV?g4_CzJvn&@Z1|Ggvua&mrIQJUJ!Ap4J zk^&|HDy9tP8Vvjv9x8KDmFTD4Iu^XDGJYHt-ASpSi-&`cq*MF;sB&-(SOS)LkvHB9 zYm*}6cvy>alRdUyRP5O~xs>lk14vIZ;s<5p&@r&i;lV}3x)E8xDs_m3?2ka5Up zEPju2F!fLlGpUKOXj2p#7+R(Ty##Im%`GW0#bm)vB%fZ$=$Pz4 zlb%J0cEcfo-9oU>VBHja;OAXuk7ll;nn5Bxfo7BD&) z{F8-q#rjc#W71OqF|*->I@UD!G18-XHGcWbXr0BZqcSx0%?|W0fxRyAaO8|KQD2sB zP|)P`3A7I5p^icPRGr0`zz8z?#V@;r(8)n_FTj)T5i`aR{6o%w31%^%-8nPTDcbsw z?I!@Mb7xPN;ASp)wRoVQYx!ZHQEPbAnEByvYLFP}==1I!oShc5{oxu%tciLIy6`hd zTo!#UplZS`>ah@g6r$3WpGez^S%<8Jw_-k$d9g&%y=%HY%rx<1Vy%Hgb+(_R2*s@< zA)llDG?mdjEumEFAl(h><38C_f>cJX+LqjthdK-|utTK>;5eEXGP504y3s;ZVz3Vx z7s_JB$xqg(QOb094sPPxM~}$3mr-!-GdZ=2h5Zuu?Mdy&C4upy72#;wtR=4PrbDPX zq+~Jip2g7XDho#6okGV@=pPGcs|XdfCfFye+Nqh6GdPT8K4UI0yP1Wpe=oC3k~R~_k|$fTZ^gkQ5T2v;1zoW{)Kd+q*XEwQUYWJt;70q`F8;{KRiHjHzZMoLV&$ zm_93x_2UwZjJe)!vJ_+q;-UFhbu#ETp;fPK)X}h|2A#uMND7P zMM5e(ijo$P++=>aun=eNm$3JUrhZ9qug-_R{`^dWVaUb`2l!c@<; zi*M7CA*25PajEHV{JI})R-8k~t=Zv$v)lD*yPO7-yT}I!%#y^Z7Y6jlhG($JL_~*k z%8XuXX#P8VLk%7R1X&<0IFA=Pb4XM}KU2<)N_xKzA<`YcU<;e-p^NPRX#!sE_|j3^ znBCTriuy>E*N!oexUxGxun3pT78c#gjP_bLvv7`PR8yf6Lyg#UySMCwIe z%X?JvKDjHAk{GnV0n()!GTAU)u{!EC{Q!O`w7^1KOG=3xRPssQxB#L!9qR4oGY&7S z3W$??j=1^i1QI7#0wQiqf)J;V^oW|}N&NnY1b%i+MFOz;0^|2?$WF z9XIV5nExuVIPr`B%u(w}6FuZ+Bb`9BH~X-KP>@il>d&deaLs&hI)kP5M_wYN*XDB7 z-!N*qDv(~-j88(KIN&L+v85mrz8uO3DpT67cLp5Rxd1_46@Lw#&6z%5#II8>5n+aC z!F9)p{l~yH4fDT$?wNh*V_P2QDd;Z!rQ`(;6)o+h27he>CngOZ0QZUYby8$T2f#w? zOW&9%oIikFlWpBHJ`umF$6z5l6KeWgWp$KrPxxF{>rEc%nBZ*fl{*rprJA@j@7_wa z_zppw6MYgS!$jmqo$`_vB2QQClf%&OC-#E}#@dLW;45+eWvq3WBD^2}_jXdB!tJ!j z*GOyQO6pb_-WzI!i#kq2%U;|V8hGx~6++V$;w8qwhtVF3=4EPx3nZVoiN~{jL6Udo zfhIK}0ZC3{)>+P|f&^37;!5|K#{zpCi*OU21bJxm)g+fl3-wL{4P5{ZbwW=1j@rRx z5NmE*lfU2%{C0BvJE(BRax|9p^`IBPA5KFMEtDZ+bHYZl{pf;vSVih9)d5icB5UN1 zgVC>=Ws>2or-AGIze2M7hs5rsmv#Q^8x4F>`9Vsx( z7@dU`R;Lk>MvF8GiODzM}Mgs7yYJ6&{b)xgvuB@J4+WR6e$8|&8 z8t@(N(*28IQ%pG8l0DpgRItC`nG^UkIag&Z*iqW;#K-7Cbik2NLF?p7WEGIwU6eR3 z-FrQ?-r|)Q~pQXodsIPAZ!GE01N_0NjI14IMwoe>PnYad@~qU0YrTdwXX> z%{v%X8$rD_4}e}!ZcU)m3+XBI zkL9|WwYj$?Iet_}Sjx;UMRGluR=}TDSrg^1lF-iS*8&9zH4m0_p4t#8)D{Y>qAxCH zXk)o%-1k=60MmZ>$ii%XV%p%Sq%Bvam-T9MVAg$m)@cuNCKS@|E3K_GRC4OBHCKcR zlQ|}(0c%$B&7*oysorf|dm3^{9?y$uZ{&X2P^ky%y})2qhr?uO`bbd)~dZ^!=|7hs!P>&P=bQ|4B`I z{`oOw`M;9aK&zm1&(8lYrBmbojVu05djF~9dyP9mX8tE5KQXTi`Tk!YLHOV0-v4i> z8Xjft_Z{{+ui@ zu%pQrVUfh{mLo#Ss)NWln=f}k^ejqf_207J~&_cBjZ`I6f8xG_nJrJRD z?~n6bc|!>VixwOpV5?Qe6YeTO5%p%}j|4`XQ7z)5`OYXh$y7?nDa=g0zMbI0ZN#phzdypMJAK z`C~cNpGH5a7yVi@?&u)bGZ(oeEhNLmrRo&vEw(I(JZbAo?mEF|&Q<9Cr*jd9)bi9s zSIA0yTpbjkGvRf>Jk{D&yfrHR8Fu_Rm~0V*iNzc$J8=s@#4a(b=b7ktU^(U%7WJ<% zQYaC}i3KjW@^^O*m&ui~uvg3{4Bx4W;8nZ#f* zx38V*TMN~&{aIfy$}3F;M+tbDk>V~kPaQDdw85Ld6=kJDXHXthR9}brqqfX+1@ErN zgj#~9wFpq?E@=-Fl^XVYE~9Fh9CW4FAkdm<9IK1)$#p(1 zienNW(%kB`ZklzkbOFD8ZhG*<3GcIlLSe>n|7&p56tT>;Kp+X z0d$6~!ewn|5%Od7V!yswKjE}IL#NuVC#GTZ7H-$lUy?S%-N-TT2o4RLjl=S6*_RN2`{Ls5((JLl zYJ>bdf0S~!JN0U=bmLI@7fxMfIA}-r2j`^C`5KC^Lbyg)pta^nfbnD#H>aTbuA~}o zO5CFwB{=`wNOn!}H4j-+5jh=fG_x%@DzFruSNCn_6?NmEe&k96F334eBY^nL@5xwC z3j^{z;Je1DJ0kcl?czNY2bd(QPC^_oPC+LbTmXb*%0497fp$o()p%WZyjrGS`Kn9>`ANdM+<6;|@xCTx;qY1Q)yQ#sjAZ0cgr zA#y^XN0SDyJ-KT5-0*IUGJ_LAUL5bEHJS(Dk+u4b_e`@NUFlp&XCMrvTlrgr-npkT zKnKkQ4etiKqLaLSyvCl0&K8)D?YpQJxMD<9ePV|YiC;Q>fj!W~wPvM=eD1}dX0j5t z?&ECt9m#%FLA<8no$xf==+Oc|#>|9nNB+(BAy}i=o9hyDrgQtW$|lO7UzuaueX%S2 zSK|gKz!d0nnV{(e`$_ayC+<$rRGnQ;gjF{|*6t3MKxf*t=Ir1eoD4yNiF%*s3@9js zhea?8TA%tAKD)Pmo2l%p}onsJtLlk;lTm@Go-^iV&`ePU%b97>o@Ek(1! zxy#*Eg{rR3PP5fVDE2xv{MKX|@ea{CsujZBFLx z=be+r4v|AQm)nl^ETQf2hB_U2lx$jq>8`%frq8+f@f$}MT5F{zT?L0)vLFrZxx*Ff z_o!v3syW7msT!~H-p{x$xTSk)-Inits?X`e5vxbmmeu%Jvl=$Anol}qz5@Jl+J%Za zEksJ-HJ^^$oQi5CMl&_Lt2&z`Bm3T8DLxwA?o( zVlyYsNs>bxd|_qLXglkPviXj>Fz#n~XWYy&VXjd|DWJ1JZOGxJ{4n6<$W6NpGc}_b zop)z<+LGgZqQ>?psUSwUmVa!Os^Q+wRi02NCz}eK!iN+$n+9ICq&H`0;>1lU47Gu? zDuQd9ywpAmZZ0c(py?duoph(Tq!QhMv8uzdjAkq+i=qk6ucDcnbIHNJ5c)YTy{VrR z>CNG-au_6(R5_8{rq@c|L4S^(2K0kn3a7$pJL)>PLA*u+f{j8-_Ky@e7j-_+0~)ttQ5L>?LX*H zXSPcg#i|{=*?jx=`@a~UKwfXFOH(|xhquk_xxe{-oH@#VlL53kBZ=<=Z(|u`=-VUHQ(jr-OKA^n_W~#9jNObdI+O{r5)eiKsCG(U;A%ZSp#3N?hP2 zo|Q3m2a4d(`pN!C@|BvJhsRT*AGt2R4wO8&oguzN5B}bR#C4#Xj^qL)=aVM4MObNZ z>`G)wCvdrvqa4gTqMy=H9>~iH0j9V#67(u%yO-KU^+@}Ym~*drjw}J zYmMII)j;Gw0WivN>lzoy(Nt!H6)(8B&zS|+dS5*Ol|0F6mON; zjg9D4uX5`Q=O!Od5w3J5SJ5>D-XdMDr+9PCu=qtMiT`ke|8}I!hpC*<<;S^~pt58; zH*^BC6%=_0Jjp;)T^MkP@VA*izj`PXTAgY-wK}j`e`5U8O}oOaoKwCd1;m6*Kd+OT zM{D)(+q+gK7Hg>ZFD$*v;HeN?@XO5&tA%E?Y#PKqs@pnW#>dtX^MI414f_+j5lH~I zerrI&pj;>%#ljQ7t34Q?yui*c`TbYFSy7G$p6|U=w!rXV?d-2tvP5Y5v!dnNcb+vd zy@Po9nk4$0+j5s1jX~4Az2Xp4az&iAdGR`Q^NBwoY5Kde6%Q z(}f?o-J`~mm;j~9oP&=y%l9EsvweVBDltkse15Lmp)7m#6A!uTT6ztO_i#+awZ z=}3sVq(c-X-P6uhWHDybJ>kxbq1k7oTB(QeRN6}1wQIogh5kQ!zg^MGy02=Dq&6Po zq&F7k{h1Kg`TSbt(^c!)nRWa?$BP&G+x>pO=(8#6^b7l)-~wRUF^@59H2->HnoS2u zT&Gx88abWA&uTV@zuyx$Xh=C9#Y&E|NXYhEWoF~?SX84IlxTmb9w&iRV<$iz5e`F2 z12}G+zg3zuz3>l)bhmp#z$j8(`qYq@J9dP;d+HU8JERhME$CcXR!JvR!;$q76nKq% z&PchmJxib4-GSc3q%=Oi0L0lu0(V@i!Un5l5ov}gOH3%0qKqs=tLO zkB#>D1_yGW_dUOBysVf%{b6Cf?DN8jK+&YxCoAE~KpS1MS{7#sG%%$|lb!lk;b#f7 zerilDj=Z_CSbu@F_oU+LG!w z!bmOmN{yWC$v5Ogo!N;OoRlfq6Q{)kSe-7lKS)3w!J^AZ_Vz@J(U|X_&F!L>iR{z+ z-=B7rEN#{<%(LZh$$z)Xh#k(f9^OO1_O05WX2%~7SMtvCSFL*f!~nKAXNCL|939fM+MNjuK@|-f;XaM-5WEcwY?_Xe z^(=RO2^r)Rwf5O+!Us8Tl<*l8Yx%{N9h}B|yDI_a5FN__+X54Vtcu(ZHfN3OXwLEg zH)mNG0QK`dSrJsIbC_WcOgae{Ps~K7v9E z9{P%UZKx^gyH?VFMbY)}|L1=IP(gGqsjrm99oiz-9q3oE$4Xsf*2%zmm>mK6d5*Ib zIZ?v-?rsL)14;$>*6#$)&aqs4923{^J#INB<2QcMoS~9=wS}37#QbXJ?YcJmHfdQg zbW9!JOKzj}XN;xf?y0Tm}2d)F##ftz# z8yi@6reeh~6}AxPF!MU6v2=U8B4&r;ajqDoGcxlU?cFj~ln^dJeD%e0m4V@m){UGH zqs9CR@w85u)O^azs(aVn)z)h#(AqbqHny+%y=@gbsXg&V&?dL?<+LT(a9;fK%iI9Y zfUoY-J<}kk^*O@B3O$psRIHtd9KAlvk(|KBSYfY2#}ONw8IsnjhRo}$_$j|*Zr<_s>0rs#BlNA{%%@$H?>Bw{G?yQkAAjVzt8*1+pV!oLT5XOA z?v6;lmUoPFbQL`z?MVJVIKm-;1&39eP$%zmQrxk{?6`s#jk}(adeEaped?xLS+12a zSicKw+~wxQ>*Ob6&YXee&d3STdnMzqowGY5Cq90r;r@N)Dd`{k*G^he>iCZQ%W*|$ zNX?h7;2;+2*Z5co=NgTIUJ4H2Wq!>3TQr_|tjVs;lIS)2*tPKe#Pv$+Fv@c4bk~#5C z)P6AVXn}pwr!@~Y3;koGZ&zFXFWTNSs>v)08x>JNQDR4=sfY{%5+OBSeru0xBvhO#~@Y0@7sYEf6|VLJz$JCA3fyY8ntoxUVzw-SyqO?p@#d*1Gqn zi}#J^-TRz<&e{8Up3O0vPbj~yz10`=sHnlV94ey#BblaymZ!%}?rC{BYj#y6v3u9b zPdem^Z;bnRO(QvX?c{s;eAgS?soC0dH2r5w_J zh-JEKFmy1_uCcYr*mDHPTMMvmA~>t%EYcG?NdBE|A<@dQ(BN3kzLJ1&i{{;DB>Krx zHbF8Gk3xNYOq|SnE1VC|7Ix>Wwp^Aqlm=8L7>1g%Tu02Uy%{acOUEMB#Xx$o%u1!= z8$Wh)&TOaON9SyWv!h*@#_!W-KiVwio zYmY17V8<*3XU}lGmSqQnxT{d7P>#PFqkF6zwA0bG`HfYsCpo4(s3QY4b3jCl2Q0R4 zH5a|o={lC$p)lH12X?j5s4w*B)zGz+@jS{5LS`1Ui1`+O z)|@jplfF1ctxdG3tk0=OJ_cBR@r?AJLnb&+Z;_!K>{dBAwLcVrYYY0YW@zqriVz1d z_I}>@*=wWH<$t?)!du41m~4u%q1en`j4BT*L$g%QIHYa0oSks$Ld;#jVU?XUw%y}r z%XK*Jv%6YPW=GHdd>rM_o&n;T*$sr7TL8S~9MH~?04B;2>l{*$Fs$SY)LlCHYzzl0 zDeX74k-MbZQcJ_NT1uUb-s||$$ZJHl_Z&7uBe}#wF%gGwMiJG_Epa{Cq3E_~Bxnd? z>S-k2g?r|vu^mejbSadkUCe{%#m$15DO5L_v)ocaMWgLk8SWi?;P>$RsSqy=`e5AP zUO9{)myN8=*#bEC#E#scQgozDiIQfq-UU#TA1T*teLC*R#Ko3sXXE8&JU`=6hW#=G zSN=IDCbx_ACPIifma1G0-}@UhFrRB=F}siYk;o~NbZUT}RC65f9JO)AN!=jFYMmJo zPYZ!|hKtSPZ3T&b%8 z*~pjqB2VX!Z(YTFb`~JCd@l#1V_dKwRny}aY^`hn^7?FfbU>z_#@D}kchav5}-aS}Bcxs=mV zZS!g+FQLS2OE*~u`i+23rqu`?hKFe`W7|UmIyCf=?pF{J^0RW!bR+> z&H-`9f1G6zNNCjTD4Bog^R;J8!`l{TiJhHfoHnkBT-N!8SRTQCG}D;vo7cwex(0as zD3ee@P~;fp{mPy9cb1Ym*ONDXMzs;0{bLv zb&b?G86|=}xYIGa8@mYU%w793csUh-bsQTQ1QwBfkKz0h`STb8uLu+lH2M$RpXo_X zd-&<-eo(yQi<8BWF}c_a0^LX2tVP6L&pFEozt|Nk&ogoSg>;_U--_fkK{=Uw?u;P= zNgBhD+mZT{lYCHVNCwemHkh3#07x$odwy|qkogJ&y`PKPDLavnK78Yxvm(!mSyICeLkQYk+m|Bh#Dei^nrASv9`1P<4$7k! zjw@+Mo&{hN*!)g6X=^z`aVX1YmoqnndS0Ku!1uW5r-i52wi`mkk~a}Xks&Wv*kzp@ zg;eLN(WI7AgLI|cTYSM(lIF?odPk}t!@}bwF4ws&na$|6?P<<$5G?}&jg?yfjz~vh zX#SRrss%ZEWLtE1^$n?4D}y5)aUxG8h72uKH;hv~V(Sed3(z7?zbZ}0{k6(+Z>b^G zx8drO3NkW2$d9b6wv;SvC=L}&>P1SpyHIFX$bW$XZ%*`U6YdvA0at*=o><)r>Q?sz zB%1h?R9?SmZ`R@SJZ5eBMN^;>u9PYk4ou4z)~BF@(q2NwU5*upx_?1?(@Z@xKy<^J z_r^(2@;^8IB`=&`#G@eP~AQGo7$1{An;-DlzfMOam38 zAw|8gd}}Q7XI}hxCjubV=L7l>TbB!Dy`m%6U}jMF0G3`(Vom0qoIKGv6bvk&HQ#;tTMsl~}E_oUe|gav?< zma0k*S071CT`AkOB|pxi0Q(y0oPi4MFiMD%U9i|BKp$QqU5xV4NqoNWi0UwY)7Awu z3dDlXIJPrp+0fI2>p~2=f48@z#Mys#@zn&UWnuEyM1^_?$3*IkE==${2q+@D8= z_$-7FeI$VkhQI-tqeZu;o{g%n zb(7(l9q~X#*&K#3cP)-FOGAv;QU~9>7db<9xt=|whv#KQ5_34w8W{jv@O?lZh-vVp z$3$W;oIk-&MRg~;9`jewoC3$kJVSa}H)?i2I@i9lPjCC5Rr;DUHkGhwo}yqk_+-5F z7TU0Ha+fLV)z25ZFlH!|!wJep9sv%$D5$xq4yyfkC9$Ge{j&t-OZeieD-IfOKVyrn zwfwVF>&fEr>tB=odN-_857v!!BHOe*w~zXmY#53WBa_?!2uq|yWzdW{ms#|4Xb>FR zPnfKi8NY1<9~L0@;QQY$?Y!rui(o#b0{R z`(X^y41=wt5}D=EZY?FfOiwJupgv0kJ~!>)o3#e;*}Xj^I`S3%*??N3*bxOS*^CcT z3kTCZsc)|&`M_?ev6w|WFK%dimaMguo%!VU=UAEafBk0 zcw6n~qRM$f027M~h}_3Xv$ctc0ldBCRXQ{QKu*878-Bk zNod5u`J@fv(Ry1^sqp!*-3w`;ji<`v0UL1>>By~FC?RnweeJVHo4&TQVpc6QK)GiB z*rV+#JlJ$%J z%i7_1g8=0~{4{_>>+N zv3t(puI&vjN^)8>!-m&Nt6zTr-`$!qsfmq~o;e4w>nQ^oyWXiY#_ONR3TSH&i3{Nj zS>6e&yW1Dcf|L~q#T`2H*gKzTq0Q=yNuz(I0$=`LbprpNiu6F5f&uek!92AWU?+4q zQTfs|*!OwZZ)~i(!Iq$!)Ylm03}UeRd!o%2C=g4R_U$KdTqw?*%49rdkoTwl?Ar|) zknCPFswG(0l||M8K+hNBYU&e2A4+vN^L7oMd`!+GyvxYII1huN@FTEOp75ZG6$zUt zc6DgDcum6SQdfNE_15i z^Yweuzk@}2=9}TH3#x~OQ{%VH74P|X_9R9Sf>E8poU;`f_p@?DKIctN_;l!v{8^)!b2Y>g z)}x}p_A2e0Q1tT~Gw82L7k4RCbxd6u;{FN|yYSZxulkx*4#{TN6;T$9{u^q26S7Lur0b?KV zKJWs&1F5|sKi}W$tCy;2C^JqlZ|NVxQ$2jma8fJ2o04k03`xe$n8Y|*UJ7!% zci7ix19fyt!KIL4J|5N-x>!FlRu5iip*Xj!$E`^RVmw)lmF{KxinD6U{qU0mRwFW|w{mMFBOHt?r zbD(@XMD$_t`CifY2_JbrJI<)n?8_mxmqjEE_rE+oAt8+a>ge&GBbl+#aQx$hRCS;0W#?c6uy^Mr~x7^*LsN0R(7jus71mfA+!+h zSl)hS4DsB4=EvKJY-4%t=aOrJ2OW$q<=JQD}ayPxz~6==3STS? zx$kj4C_mm?ZuT4c6Nb_VmY+lP%vx~KZzUi%f|056qpmB7-3eAbgDxIH;fF^5t~T5w z?lJb(R>icKqf8k#CBfe`sXxc-9Szp%ou;;+Fv^z5AOg9E+{{%8*sRU=h<7ily{aog z&n-@N3`gHiy~4rrRzm1ZleRbPY@jHh!`0rp#(cbs!Q6rn?gYKfnAOFg-yJ0`|hZ;PxNC<`S24ZfeAd{vGDQ>i?&q)w*(GT z1jLsVbB-+XOJ-KcgkV&>3|+;DLaN`yt)nR<8T=i|vief9OPKe??@S=3yLY8D+nbf> zzsW>^klur;YJUxIPQp?LV6O_;h(PK~-$dzWlxQ-bTk)Zu3={K3fP=i+fRS={>hQ^nn~pJieeW{#2dGA5OiC$ zul37<7PPn5ctf|_F3n%)O-#U|Y>)<$bi0Pw7*(FhU?uOVNRDZ0w1z6}!sh$w*P6Nd zS|)>MmSfDu9t&n3Uru!f3g&(qawJOfwAQ>y4T~~#E0B{_=y&z`Nos~Z>~B#_`Jd9& z?P_iQm!qx`7aO0D#2PdN=%znm?a!gvlKiDkT?^qx6a9vggONuY`XV>}npdyfH4Vnw zZ@C!v(jH4yQe$rWk6_1M7Ay(++C*wo<$|5;Jkt@W3sBiWhCaDmwg7u)@NMrTz6%9GuX0jSGS>`WGRmdIg3FgcQ?0|j=AnL6ymREYuuLag^2V~MDM zSQ#5v33at>R+x8*DB)wt{<%Db1rLR{n{9ck8fRYP4128$-Coyw8R@7iEn7Xb;du8- zLh?J0Gqp@PFX~t&uQW+fWOopIdd$-AzN^hn*9Iezv0S?m-X~peymw-D#6V4RWui7T z67R`K3$y;DM?A2x?1X%E6nAMtV`C^3&vz+q;}G@X%Maqm^jtOgKCBz3av#s0$r)4O zpVYNf;})g`ujuy~*rfiH$aPL*cw*-al@3tX^TB#r>&GcduFrZndF;&No?29LPrTW) z+$it;M4@ek{GzHVOFxsnqVobnpBcpiZrW{$lwLWWOw>_OJ_7BwORO#)*1>pRyFB3- z!#%D*QXfs*cr$rA7u?~SVT!3Zm*jg4otl8fEJwry{iZMH+{N+~tDcuIO@Z2|l}uus z{e>~Nxf&piY(pG>>ha}C#$dUTc6U_f+JjMzzze=i<*RE$vk*cC*+=?o@5s3WUaEWT zn^bR8w*czI_kcx*RwPNeKMMV-+H_;*gGSq*m;s^LZmZATNh>L|Wc`lnK*pt^GT!4L zV>9h}=Md!QpwZjRZ=?R1I@qme6+yq1NsWnc7n|fV#b}++M;sy&(Kml;6qR;{)K&FK zXD-E;<2I5Xk-K4~@U|vn4}Q*cvif8aH~~YEC~VUrIALy*!>ZlE8bze}fO#>ldDOkg zdpel?fs{ehwk`;EsG^?c>}2y=`B4U-8|>HAy;&DCo3eH>^*E{Us)#M9Eb2dpiV24p z`uH4^i*9ucFzvOd(bz!VHzzpWS4`47kQh&-+P&9(mPO^9oob4fzu=ZE-ELIbB zJ6k)i9A~eBdUHv?ZnjLVH*<>E`Z?$?~4kKe36G0}X0Xd7KeLvRm-DD~?Q( za~%2kMJ`e2-h)b=-nsy|{=7Tk?pZmk!cJ2FvL zm&>P@5j83eyi45HhAPz@#>$3A@Aj=ABjKL~&DFZ0&Q?EH?<@Rfu;_L=XCanWByUq9 zT+Xm_(+2+?bbMNU4D!jH*r{_KlwO3kSDu}cZ?hfwvEwwqe<~&|F=kP=xsl#iJNm>F zt)$W=bjSXLwE%Tv-#)epciCV9cShb1f9!Q5GJ3)2L%`g9SMh;&d@xK|sMk^m5uGa= z2_sB3opvZX({DT1ksn+x6vf%pSdcNaGcdN9S8tco27we7qY~0}7++VJ5ck*Bc|Nm* zo_-F=*|@JQLRD>`fV~tZMvn1x4sJ=yJUXQDp=n5tq-)b?KhP#RW4o@XU{_rFkf=1O zTd2i>tfbCJh)EAVhsq45hPD-d3pLx-AL9ky7i^U!1i4-BiZBF{21{k3;=q^Xk%$%wt1wEoSh=fh}4)M%UxysE``J*Q%`mt>tbrJTvi~9 zl|ft`jno*w=RwE9gt@W2vG1x|S2arEy({-^lTQ)?83)V23r{_2k&0VM*Hjj4e~xb^ zTh3b64L)~*wT=94YA9o!>LK4%A%pS%JupDRtnG?%pijXa&g8~LXiB~3hkHE zE<|)VUi|SQr6qam$DK`5&wJu6lk+c{AC=s{*m>($EXxt|v42m|>=!KYu(j6L;pTYdiW? zXRy3kipDq+r)4IVw0QOQompW(jJSurButGqu%XG8MU;dbU4n3Rb=Duvn^Xtv}CEh z)R5taOAm^C&uW6Oa`U7JYqm5u%x&J#EmDvnH?m0c|%5kbDtejw`K}<6n z#=88hL!I!wz%(Ik_eb3sk%0{^y8ht!_wrGOEMbezZH|e`509wCNi;C@F!b{)Y2DS? za^{sKX{+H1Z676C-%!v_qP}NGZ;D5VzUCO<#(LEg+%XSrCB~ChqUOWgd=o3x?0s#> zCFci=Ms7VSk}f7Bv|oSKo2xIac^kN)-h#!+#P+{kurnBpQP+}{(5BpeqGn%X8T_em;au$9k^+L)6@ z^?G_HxZ5q=cxMR#OpPYhG5Fq=e_n7Z61_MeIKPzPGTe)gmJrwJcbkh@xD8(NAi+KF zjVh-Z?E#1Jv>)hHa~KLoImvYgbFEzK!VfZ#XlPEoV#xSgBJ&W=DT5M;X-gY3P1oTJ z7|hEpN#7@wi@k$kv=<(}p-BYqXU71w`6z;!;;}zvPA1X~arD7kk z;c_L$fhS21ZU<}JZr32xmpfO)-LVm|p~+ZpKOu@d>)vSUl;Y+;0XQERK%1&aWpj>j z4yiFe34jZ%=jW}0gv9xh#ztI`N_jnxW-c?WFmXNw{x39M#cO)ZD38um%)ZPNjP^1e zH|v6<486N2XS3SCig)pTKoaDBfbx#_R^0m#8S-Im0O|0VF0pbUT|U|`uu z4RK`=B{)Vc-sbB+T@j)L1T{sb0Hs3tt-)LDulAjt1^xf8T@U`JYzE)nhqHSdGz`!E zPu}S?UghckdL|&3T0N&4=4N4x<-Ig|Y;gL!Ffp$kux#AFofdl2Ma%emxjD|;Io7%4 z;6va3r9b%m4ysPrSP0^Qc8@73H)0t*=)G%wdr^l_Jn8Z6TOZJSdunqw{Xja(qAz+6aim`@$lBuq&c?UO#^bVDcpBv?}@UK)H?h{f1%KypZ~I`wj;pO8i9iggDghq^chqGjeJ z$eAul=Sa{{Q5_fA_FwM^{I6{QY+(PWCG51QSVt}D{ulT25l^F&L<c)h4TgW>{AXjz zJ7C1Sr^CApeXcYl^vgk8TaVPVckSK2av=)Ve}Kv%cm0n>79W5oYx~aIS8X9WcM-)O zcM;uHTkClPwL(4D#&|lSW#wUAr?#zwR$IG`WJL>V9eegvO(hyu>T2OB|9;P1LjZvg zQoD7Ycee#jK=Y!HD5=>$#wk4jcA!ms0w0_iww_E`uws^43s8snaEon7Ii>xX#Uyh1x#7(sZo{S z=q?z7IaZ_3- z*eltQvtoDF3lJFEFqt;%x_BXA1l^B^_8f$^MY`s=yhem#fWZUP0ZQxUrn z4c?W{*Yg79D^0mwbs`8;@Y7{)Q!TO58~ z&q%3p_-Taq1$u(0H6ixc2(nl0Zm#*>kKEY!TcgkADLT7!@E$!6wjBdQvA}zj1~lvW z-YOZBV$-<-XjtM8@g~VTfkirdyNnvd;Ld_+R;^-ny^;I^y=afs5X2hY<2VGf*7mp! z4Mq&Ph+TJQ`AVP}35B|WXy0oN-U2;e;^EEZ!J&m~4>~bh3wyiR22SYSx^%s1UG+{( z8+kj0j7s^Pq6#pHY_&bhJ*x&_≀-`u?%y-jwuiNKIGb`oF(ycC=xHW3=K7v^Bv8 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%0AK#JuKTW6L`LUq;&}< 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 literal 30610 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 diff --git a/en/device-dev/get-code/ide.md b/en/device-dev/get-code/ide.md new file mode 100644 index 00000000000..f3551de3126 --- /dev/null +++ b/en/device-dev/get-code/ide.md @@ -0,0 +1,17 @@ +# IDE + +- [Acquiring the Device Development Tool \(HUAWEI DevEco Device Tool\)](#section2452141120244) +- [Acquiring the Application Development Tool \(HUAWEI DevEco Studio\)](#section0904101019258) + +## Acquiring the Device Development Tool \(HUAWEI DevEco Device Tool\) + +HUAWEI DevEco Device Tool is a one-stop integrated development environment \(IDE\) provided to develop applications for OpenHarmony devices. It allows on-demand customization of OpenHarmony components, code editing, building, burning, and debugging, and supports C and C++ languages. This tool is installed in Visual Studio Code as a plug-in. For details, see [HUAWEI DevEco Device Tool](https://device.harmonyos.com/en/ide) and [HUAWEI DevEco Device Tool User Guide](https://device.harmonyos.com/en/docs/ide/user-guides/service_introduction-0000001050166905). + +The roadmap of Huawei DevEco Device Tool for supporting OpenHarmony device development is shown in the figure below. + +![](figures/3.png) + +## Acquiring the Application Development Tool \(HUAWEI DevEco Studio\) + +HUAWEI DevEco Studio \(DevEco Studio for short\) is a one-stop IDE oriented to Huawei devices in all scenarios. It provides E2E OpenHarmony application development services, ranging from project template creation to development, building, debugging, and release. With DevEco Studio, you will be able to efficiently develop OpenHarmony applications with distributed capabilities while speeding up innovation. For details, see [HUAWEI DevEco Studio](https://developer.harmonyos.com/en/develop/deveco-studio) and [HUAWEI DevEco Studio User Guide](https://developer.harmonyos.com/en/docs/documentation/doc-guides/tools_overview-0000001053582387). + diff --git a/en/device-dev/get-code/source-code-acquisition.md b/en/device-dev/get-code/source-code-acquisition.md index f7a7c3f5c75..1646c8a9640 100644 --- a/en/device-dev/get-code/source-code-acquisition.md +++ b/en/device-dev/get-code/source-code-acquisition.md @@ -26,11 +26,10 @@ The open-source code repositories are available at [https://openharmony.gitee.c ## Overview of Source Code Acquisition -This document describes how to acquire OpenHarmony source code and provides its directory structure. The OpenHarmony code is open to you as [bundles](../bundles/overview.md), which can be obtained in any of the following ways: +This document describes how to acquire OpenHarmony source code and provides its directory structure. The OpenHarmony code is open to you as [bundles](../bundles/development-specifications.md), which can be obtained in any of the following ways: - **Method 1**: Acquire the source code from a code repository. You can use the **repo** or **git** tool to download the latest code from the code repository. - **Method 2**: Obtain the source code from the HarmonyOS Package Manager \(HPM\). Visit the [HPM](https://hpm.harmonyos.com/#/en/home) website, search for your desired open-source distribution, and download the bundle list \(or customize bundles and download the bundle list\). Then use **hpm-cli** to download and install the bundles and compilation toolchain on your local PC. -- **Method 3**: Download the compressed file of a distribution from an image site. This method provides a fast download speed, so you can also use this method for obtaining the source code of an earlier version. ## Method 1: Acquiring Source Code from a Code Repository @@ -40,9 +39,9 @@ This document describes how to acquire OpenHarmony source code and provides its - You have interconnected your software with OpenHarmony and need official certification from OpenHarmony. -- You want to contribute code to the OpenHarmony community after chips, modules, and applications are certified by OpenHarmony. +- You want to contribute code to the OpenHarmony community after obtaining official OpenHarmony certification for chips, modules, and applications. -- You need to address OpenHarmony issues. +- You need to rectify OpenHarmony issues. - You want to learn OpenHarmony source code. @@ -62,7 +61,7 @@ This document describes how to acquire OpenHarmony source code and provides its 4. Run the following commands to install the **repo** tool: ``` - curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo # If you do not have the access permission to this directory, download the tool to any other accessible directory and configure the directory to the environment variable. + curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo # If you do not have the access permission to this directory, download the tool to any other accessible directory and configure the directory to the environment variable. chmod a+x /usr/local/bin/repo pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests ``` @@ -70,7 +69,7 @@ This document describes how to acquire OpenHarmony source code and provides its ### How to Use -**Obtaining the Source Code for Mini, Small, and Standard Systems \(2.0 Canary\)** +**Obtaining the Source Code for Mini/Small/Standard Systems \(2.0 Canary\)** >![](public_sys-resources/icon-note.gif) **NOTE:** >You can obtain the latest features from the master code, and develop commercial functionalities based on the release code, which is more stable. @@ -109,7 +108,7 @@ This document describes how to acquire OpenHarmony source code and provides its - Obtaining the source code of other OpenHarmony releases - For details about how to obtain the source code of other releases, see the [Release Notes](https://gitee.com/openharmony/docs/blob/master/en/release-notes/OpenHarmony-Release-Notes.md). + For details about how to obtain the source code of other OpenHarmony releases, see the [Release Notes](https://gitee.com/openharmony/docs/blob/master/en/release-notes/OpenHarmony-Release-Notes.md). ## Method 2: Acquiring Source Code from HPM @@ -197,7 +196,7 @@ You must install **Node.js** and HPM on your local PC. The installation proced To ensure the download performance, you are advised to download the source code or the corresponding solution from the image library of the respective site listed in the table below. >![](public_sys-resources/icon-note.gif) **NOTE:** ->- The table below provides only the sites for downloading the source code of the latest OpenHarmony Master and LTS versions. For details about earlier versions and how to obtain their source code, see the [Release Notes](https://gitee.com/openharmony/docs/tree/master/en/release-notes). +>- The table below provides only the sites for downloading the latest OpenHarmony master and LTS code. For details about how to obtain the source code of earlier versions, see the [Release Notes](https://gitee.com/openharmony/docs/tree/master/en/release-notes). >- The Master 1.0 version is no longer maintained. **Table 1** Sites for acquiring source code from image sites @@ -225,7 +224,7 @@ To ensure the download performance, you are advised to download the source code

1.1.1

-

Site

+

Download

Download

@@ -261,9 +260,9 @@ To ensure the download performance, you are advised to download the source code

Version Information

-

Site

+

Site

-

SHA-256 Verification Code

+

SHA-256 Verification Code

Full code (for standard systems)

@@ -324,7 +323,7 @@ To ensure the download performance, you are advised to download the source code

Version Information

-

Site

+

Site

SHA-256 Verification Code

@@ -333,7 +332,7 @@ To ensure the download performance, you are advised to download the source code

-

-

Site

+

Download

-

diff --git a/en/device-dev/get-code/tool-acquisition.md b/en/device-dev/get-code/tool-acquisition.md index ddfc607243d..dd1797b1042 100644 --- a/en/device-dev/get-code/tool-acquisition.md +++ b/en/device-dev/get-code/tool-acquisition.md @@ -1,283 +1,7 @@ -# Tool Acquisition +# Tool Acquisition -- [How to Obtain the Docker Environment](#section107932281315) -- [HPM-based Docker](#section485713518337) - - [Setting Up the Docker Environment](#section18957202218355) - - [Building](#section69141039143518) +- **[Docker Environment](docker-environment.md)** -- [Standalone Docker Environment](#section2858536103611) - - [Setting Up the Docker Environment for Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\)](#section319412277287) - - [Building for Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\)](#section631485163615) - - [Setting Up the Docker Environment for Standard-System Devices \(reference memory ≥ 128 MB\)](#section13585262391) - - [Building for Standard-System Devices \(reference memory ≥ 128 MB\)](#section193711513406) +- **[IDE](ide.md)** -- [Acquiring the Device Development Tool \(HUAWEI DevEco Device Tool\)](#section2452141120244) -- [Acquiring the Application Development Tool \(HUAWEI DevEco Studio\)](#section0904101019258) - -## How to Obtain the Docker Environment - -OpenHarmony provides the following two types of Docker environments for you to quickly get the development environment ready: - -- HPM-based Docker environment: applicable when using the HarmonyOS Package Manager \(HPM\) to build a distribution. -- Standalone Docker environment: applicable when using Ubuntu or Windows to build a distribution. - - The following table lists container-based options needed for building in the standalone Docker environment. - - **Table 1** Docker image - - - - - - - - - - - - - - - - -

Docker Image Repository

-

Tag

-

Description

-

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker

-

0.0.5

-

The OpenHarmony build environment has been pre-installed. This repository applies to Mini-System Devices (reference memory ≥ 128 KB) and Small-System Devices (reference memory ≥ 1 MB).

-

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard

-

0.0.1

-

The OpenHarmony build environment has been pre-installed. This repository applies to Standard-System Devices (reference memory ≥ 128 MB).

-
- - >![](public_sys-resources/icon-note.gif) **NOTE:** - >For details about how to install Docker, see [Install Docker Engine on Ubuntu](https://docs.docker.com/engine/install/ubuntu/). - - -## HPM-based Docker - -**docker\_dist** is a template component in the [HPM](https://hpm.harmonyos.com/#/en/home) system. It helps to quickly initialize an HPM project and use the Docker image to quickly build a distribution of OpenHarmony, greatly simplifying environment configurations needed for building. After configuring the Ubuntu and [hpm-cli](https://device.harmonyos.com/en/docs/develop/bundles/oem_bundle_guide_prepare-0000001050129846) development environments, perform the following steps to access the Docker environment: - -### Setting Up the Docker Environment - -1. Initialize the installation template by running the following command in any of the working directories: - - ``` - hpm init -t @ohos/docker_dist - ``` - -2. Modify the **publishAs** field. - - The obtained bundle is of the template type. Open the **bundle.json** file in the current directory and change the value of **publishAs** from **template** to **distribution** as needed. - - -### Building - -Start building. Docker can be automatically installed only on Ubuntu. If you are using any other operating system, manually install Docker before pulling the image. - -- **Automatically Installing Docker \(Ubuntu\)** - - Running the following command will automatically install Docker, pull the Docker image, and start the pulling and building of the corresponding solution in the container. - - Method 1: - - Add a parameter to specify the solution. For example: - - ``` - hpm run docker solution={product} - ``` - - **\{product\}** indicates the solution, for example, **@ohos/hispark\_taurus**, **@ohos/hispark\_aries**, and **@ohos/hispark\_pegasus**. - - Method 2: - - Set an environment variable to specify the solution, and then run the build command. - - 1. Select the desired solution. - - ``` - export solution={product} - ``` - - **\{product\}** indicates the solution, for example, **@ohos/hispark\_taurus**, **@ohos/hispark\_aries**, and **@ohos/hispark\_pegasus**. - - 2. Start building. - - ``` - hpm run docker - ``` - - This example uses the **@ohos/hispark\_taurus** solution for illustration. If the execution is successful, the output is as follows: - - ``` - ... - ohos ipcamera_hispark_taurus build success! - @ohos/hispark_taurus: distribution building completed. - ``` - - -- **Manually Installing Docker \(Non-Ubuntu\)** - - Perform the following operations to install Docker: - - ``` - # Pull the image. - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.3# Compile the Docker image in the Linux environment. - hpm run distWithDocker solution={product} - # When using Windows, make sure to configure the Git Bash. - hpm config set shellPath "Git Bash path" - hpm run distWithDocker solution={product} - ``` - - -## Standalone Docker Environment - -The Docker image of OpenHarmony is hosted on [HUAWEI CLOUD SWR](https://console.huaweicloud.com/swr/?region=cn-south-1&locale=en-us#/app/warehouse/warehouseMangeDetail/goldensir/openharmony-docker/openharmony-docker?type=ownImage). Using the Docker image will help simplify environment configurations needed for the building. After configuring the development environments, perform the procedures below to access the Docker environment. Both Ubuntu and Windows are supported. The following procedures use Ubuntu as an example. - -### Setting Up the Docker Environment for Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\) - -**Method 1: Obtaining the Docker image from HUAWEI CLOUD SWR** - -1. Obtain the Docker image. - - ``` - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 - ``` - -2. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: - - ``` - docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 - ``` - - -**Method 2: Using the Dockerfile to Build a Local Docker Image** - -1. Obtain the Dockerfile script for a local Docker image. - - ``` - git clone https://gitee.com/openharmony/docs.git - ``` - -2. Go to the directory of the Dockerfile code and run the following command to build the Docker image: - - ``` - cd docs/docker - ./build.sh - ``` - -3. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: - - ``` - docker run -it -v $(pwd):/home/openharmony openharmony-docker:0.0.5 - ``` - - -### Building for Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\) - -The following uses the Hi3516 platform as an example to describe the build procedure. Run the following build scripts to start building: - -Set the build path to the current path. - -``` -hb set - . -``` - -**Figure 1** Setting page - - -![](figures/en-us_image_0000001101413884.png) - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->The mapping between the development board and the building GUI: ->- Hi3861: wifiiot\_hispark\_pegasus@hisilicon ->- Hi3516: ipcamera\_hispark\_taurus@hisilicon ->- Hi3518: ipcamera\_hispark\_aries@hisilicon - -1. Select **ipcamera\_hispark\_taurus@hisilicon** and press **Enter**. -2. Start building. - - ``` - hb build -f - ``` - -3. View the build result. - - The files will be generated in the **out/hispark\_taurus/ipcamera\_hispark\_taurus** directory. - - -### Setting Up the Docker Environment for Standard-System Devices \(reference memory ≥ 128 MB\) - -**Method 1: Obtaining the Docker image from HUAWEI CLOUD SWR** - -1. Obtain the Docker image. - - ``` - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 - ``` - -2. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: - - ``` - docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 - ``` - - -**Method 2: Using the Dockerfile to Build a Local Docker Image** - -1. Obtain the Dockerfile script for a local Docker image. - - ``` - git clone https://gitee.com/openharmony/docs.git - ``` - -2. Go to the directory of the Dockerfile code and run the following command to build the Docker image: - - ``` - cd docs/docker/standard - ./build.sh - ``` - -3. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: - - ``` - docker run -it -v $(pwd):/home/openharmony openharmony-docker-standard:0.0.1 - ``` - - -### Building for Standard-System Devices \(reference memory ≥ 128 MB\) - -1. Run the preprocessing script in the root directory of the source code. - - ``` - ../scripts/prepare.sh - ``` - -2. Run the following script to start building for Standard-System Devices \(reference memory ≥ 128 MB\). - - ``` - ./build.sh --product-name {product_name} - ``` - - **product\_name** indicates the platform supported by the current distribution, for example, Hi3516D V300. - - Files generated during compilation are stored in the **out/ohos-arm-release/** directory, and the generated image is stored in the **out/ohos-arm-release/packages/phone/images/** directory. - - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->You can exit Docker by simply running the **exit** command. - -## Acquiring the Device Development Tool \(HUAWEI DevEco Device Tool\) - -HUAWEI DevEco Device Tool is a one-stop integrated development environment \(IDE\) provided to develop applications for OpenHarmony-based smart devices. It allows on-demand customization of OpenHarmony components, code editing, compilation, burning, and debugging, and supports C and C++ languages. This tool is installed in Visual Studio Code as a plug-in. For details, see [Tool Acquisition](https://device.harmonyos.com/en/ide) and [HUAWEI DevEco Device Tool User Guide](https://device.harmonyos.com/en/docs/ide/user-guides/service_introduction-0000001050166905). - -The roadmap of Huawei DevEco Device Tool for supporting OpenHarmony device development is shown in the figure below. - -![](figures/3.png) - -## Acquiring the Application Development Tool \(HUAWEI DevEco Studio\) - -HUAWEI DevEco Studio \(DevEco Studio for short\) is a one-stop IDE oriented to Huawei devices in all scenarios. It provides E2E OpenHarmony application development services, ranging from project template creation to development, compilation, debugging, and release. With DevEco Studio, you will be able to efficiently develop OpenHarmony applications with distributed capabilities while speeding up innovation. For details, see [Tool Acquisition](https://developer.harmonyos.com/en/develop/deveco-studio) and [HUAWEI DevEco Studio User Guide](https://developer.harmonyos.com/en/docs/documentation/doc-guides/tools_overview-0000001053582387). diff --git a/en/device-dev/guide/Readme-EN.md b/en/device-dev/guide/Readme-EN.md index 31bb3cfd5f9..66faa01846f 100644 --- a/en/device-dev/guide/Readme-EN.md +++ b/en/device-dev/guide/Readme-EN.md @@ -1,10 +1,10 @@ -# Development Examples +# Device Development - [WLAN-connected Products](wlan-connected-products.md) - - [LED Peripheral Control](led-peripheral-control.md) - - [Overview](overview.md) - - [Development](development.md) - - [Verification](verification.md) + - [Overview](overview.md) + - [Development](development.md) + - [Verification](verification.md) + - [Third-Party SDK Integration](third-party-sdk-integration.md) - [Cameras Without a Screen](cameras-without-a-screen.md) - [Camera Control](camera-control.md) @@ -41,15 +41,16 @@ - [How to Develop](how-to-develop.md) - [Signing and Packaging](signing-and-packaging.md) - [Running on the Device](running-on-the-device-9.md) + - [FAQs](faqs-10.md) - [Development Example for Platform Drivers](development-example-for-platform-drivers.md) - - [Overview](overview-10.md) - - [Preparations](preparations-11.md) - - [Development](development-12.md) + - [Overview](overview-11.md) + - [Preparations](preparations-12.md) + - [Development](development-13.md) - [Building and Burning](building-and-burning.md) - [Development Example for Peripheral Drivers](development-example-for-peripheral-drivers.md) - - [Overview](overview-13.md) + - [Overview](overview-14.md) - [Hardware Resources](hardware-resources.md) - [Input Driver Model](input-driver-model.md) @@ -59,7 +60,7 @@ - [Configuring the Touchscreen](configuring-the-touchscreen.md) - [Adapting to the Private Drivers of the Touchscreen](adapting-to-the-private-drivers-of-the-touchscreen.md) - - [Building and Burning](building-and-burning-14.md) + - [Building and Burning](building-and-burning-15.md) - [Debugging and Verification](debugging-and-verification.md) - [Startup Log Analysis](startup-log-analysis.md) diff --git a/en/device-dev/guide/building-and-burning-14.md b/en/device-dev/guide/building-and-burning-15.md similarity index 100% rename from en/device-dev/guide/building-and-burning-14.md rename to en/device-dev/guide/building-and-burning-15.md diff --git a/en/device-dev/guide/debugging-and-packaging.md b/en/device-dev/guide/debugging-and-packaging.md index 97df7e21ab4..2d4c192fb9c 100644 --- a/en/device-dev/guide/debugging-and-packaging.md +++ b/en/device-dev/guide/debugging-and-packaging.md @@ -1,4 +1,4 @@ # Debugging and Packaging -After the code is compiled, debug your application and package it into an App Pack. For details about how to debug and package an application, see [Debugging Your App](https://developer.harmonyos.com/en/docs/documentation/doc-guides/debug_overview-0000001053822404) and [Building Your App](https://developer.harmonyos.com/en/docs/documentation/doc-guides/build_overview-0000001055075201) in the [HUAWEI DevEco Studio User Guide](https://developer.harmonyos.com/en/docs/documentation/doc-guides/tools_overview-0000001053582387). Currently, IPCamera applications do not support signature. You should release an unsigned App Pack. +After the code is compiled, debug your application and package it into an App Pack. For details about how to debug and package an application, see [Debugging Your App](https://developer.harmonyos.com/en/docs/documentation/doc-guides/ide_debug_device-0000001053822404) and [Building Your App](https://developer.harmonyos.com/en/docs/documentation/doc-guides/build_overview-0000001055075201) in the [HUAWEI DevEco Studio User Guide](https://developer.harmonyos.com/en/docs/documentation/doc-guides/tools_overview-0000001053582387). Currently, IPCamera applications do not support signature. You should release an unsigned App Pack. diff --git a/en/device-dev/guide/development-12.md b/en/device-dev/guide/development-13.md similarity index 100% rename from en/device-dev/guide/development-12.md rename to en/device-dev/guide/development-13.md diff --git a/en/device-dev/guide/development-example-for-peripheral-drivers.md b/en/device-dev/guide/development-example-for-peripheral-drivers.md index 4333c26e067..4cf054e30c5 100644 --- a/en/device-dev/guide/development-example-for-peripheral-drivers.md +++ b/en/device-dev/guide/development-example-for-peripheral-drivers.md @@ -1,12 +1,12 @@ # Development Example for Peripheral Drivers -- **[Overview](overview-13.md)** +- **[Overview](overview-14.md)** - **[Setting Up the Environment](setting-up-the-environment.md)** - **[Developing a Touchscreen Driver](developing-a-touchscreen-driver.md)** -- **[Building and Burning](building-and-burning-14.md)** +- **[Building and Burning](building-and-burning-15.md)** - **[Debugging and Verification](debugging-and-verification.md)** diff --git a/en/device-dev/guide/development-example-for-platform-drivers.md b/en/device-dev/guide/development-example-for-platform-drivers.md index fbb47fb7d32..7e35c4dbfcf 100644 --- a/en/device-dev/guide/development-example-for-platform-drivers.md +++ b/en/device-dev/guide/development-example-for-platform-drivers.md @@ -1,10 +1,10 @@ # Development Example for Platform Drivers -- **[Overview](overview-10.md)** +- **[Overview](overview-11.md)** -- **[Preparations](preparations-11.md)** +- **[Preparations](preparations-12.md)** -- **[Development](development-12.md)** +- **[Development](development-13.md)** - **[Building and Burning](building-and-burning.md)** diff --git a/en/device-dev/guide/input-driver-model.md b/en/device-dev/guide/input-driver-model.md index a4f2cdb3720..dc90f115f3a 100644 --- a/en/device-dev/guide/input-driver-model.md +++ b/en/device-dev/guide/input-driver-model.md @@ -8,5 +8,5 @@ The input driver model mainly consists of the device manager, common drivers, an In addition, the input driver model implements functions for reporting input data and parsing input device configurations. -For details about the input driver model, see [Touchscreen Overview](https://device.harmonyos.com/en/docs/develop/drive/oem_drive_touch_des-0000001052857350)[Touchscreen Overview](../driver/touchscreenoverview.md). +For details about the input driver model, see [Touchscreen Overview](../driver/touchscreen.md). diff --git a/en/device-dev/guide/led-peripheral-control.md b/en/device-dev/guide/led-peripheral-control.md deleted file mode 100644 index abe05cea370..00000000000 --- a/en/device-dev/guide/led-peripheral-control.md +++ /dev/null @@ -1,9 +0,0 @@ -# LED Peripheral Control - -- **[Overview](overview.md)** - -- **[Development](development.md)** - -- **[Verification](verification.md)** - - diff --git a/en/device-dev/guide/overview-10.md b/en/device-dev/guide/overview-11.md similarity index 100% rename from en/device-dev/guide/overview-10.md rename to en/device-dev/guide/overview-11.md diff --git a/en/device-dev/guide/overview-13.md b/en/device-dev/guide/overview-14.md similarity index 100% rename from en/device-dev/guide/overview-13.md rename to en/device-dev/guide/overview-14.md diff --git a/en/device-dev/guide/photographing-3.md b/en/device-dev/guide/photographing-3.md index 7d6450e761f..eda733f1534 100644 --- a/en/device-dev/guide/photographing-3.md +++ b/en/device-dev/guide/photographing-3.md @@ -385,6 +385,7 @@ None Surface *surface = Surface::CreateSurface(); if (surface == nullptr) { delete fc; + return; } surface->SetWidthAndHeight(1920, 1080); /* 1920:width,1080:height */ fc->AddSurface(*surface); diff --git a/en/device-dev/guide/photographing.md b/en/device-dev/guide/photographing.md index a1617550bfb..a8da63373f6 100644 --- a/en/device-dev/guide/photographing.md +++ b/en/device-dev/guide/photographing.md @@ -385,6 +385,7 @@ None Surface *surface = Surface::CreateSurface(); if (surface == nullptr) { delete fc; + return; } surface->SetWidthAndHeight(1920, 1080); /* 1920:width,1080:height */ fc->AddSurface(*surface); diff --git a/en/device-dev/guide/preparations-11.md b/en/device-dev/guide/preparations-12.md similarity index 100% rename from en/device-dev/guide/preparations-11.md rename to en/device-dev/guide/preparations-12.md diff --git a/en/device-dev/guide/running-on-the-device-9.md b/en/device-dev/guide/running-on-the-device-9.md index b97c20b8a10..24ee3034d39 100644 --- a/en/device-dev/guide/running-on-the-device-9.md +++ b/en/device-dev/guide/running-on-the-device-9.md @@ -1,6 +1,6 @@ # Running on the Device -Before you install the app and run it on the development board, install the DevEco Device Tool by following operations provided in [HUAWEI DevEco Device Tool User Guide](https://device.harmonyos.com/en/docs/ide/user-guides/service_introduction-0000001050166905). Burn OpenHarmony into the development board, and run it on the board. For details about how to build, burn, and run an image, see [Getting Started with Hi3516](../quick-start/how-to-develop-12.md). After the image is running normally and the system is started properly, perform the following steps to install or uninstall the app: +Before you install the app and run it on the development board, install the DevEco Device Tool by following operations provided in [HUAWEI DevEco Device Tool User Guide](https://device.harmonyos.com/en/docs/ide/user-guides/tool_install-0000001050164976). Burn OpenHarmony into the development board, and run it on the board. For details about how to build, burn, and run an image, see [Getting Started with Hi3516](../quick-start/standard-system.md). After the image is running normally and the system is started properly, perform the following steps to install or uninstall the app: 1. Obtain the HDC client from the following path: diff --git a/en/device-dev/guide/running-on-the-device.md b/en/device-dev/guide/running-on-the-device.md index 79167a2934c..91094bd0cda 100644 --- a/en/device-dev/guide/running-on-the-device.md +++ b/en/device-dev/guide/running-on-the-device.md @@ -1,8 +1,8 @@ # Running on the Device -Before you install the application and run it on the development board, install the DevEco Device Tool by following operations provided in [HUAWEI DevEco Device Tool User Guide](https://device.harmonyos.com/en/docs/ide/user-guides/tool_install-0000001050164976). Burn OpenHarmony into the development board, and run it on the board. For details about how to compile, burn, and run an image, see the [Getting Started with Hi3516](../quick-start/hi3516-development-board.md). After the image is running normally and the system is started properly, perform the following steps to install or uninstall the application: +Before you install the application and run it on the development board, install the DevEco Device Tool by following operations provided in [HUAWEI DevEco Device Tool User Guide](https://device.harmonyos.com/en/docs/ide/user-guides/service_introduction-0000001050166905). Burn OpenHarmony into the development board, and run it on the board. For details about how to compile, burn, and run an image, see the [Hi3516 Development Board](../quick-start/hi3516-development-board.md). After the image is running normally and the system is started properly, perform the following steps to install or uninstall the application: -1. Store the compiled unsigned application installation package and installation tool in an SD card and insert the SD card into the development board slot. The installation tool is in **idev\_tools** of the directory where the image file is generated. +1. Store the compiled unsigned application installation package and installation tool in an SD card and insert the SD card into the development board slot. The installation tool is in **dev\_tools** of the directory where the image file is generated. 2. Run the following command to disable signature verification, which is enabled by default for application installation: ``` diff --git a/en/device-dev/guide/use-case-5.md b/en/device-dev/guide/use-case-5.md index f4e481e1cef..588b3b8addb 100644 --- a/en/device-dev/guide/use-case-5.md +++ b/en/device-dev/guide/use-case-5.md @@ -3,7 +3,7 @@ This use case takes **camera\_sample** \(contained in the source code\) as an example for photographing, recording, and previewing on the development board. - You can obtain source code of the sample from **applications/sample/camera/media/camera\_sample.cpp**. -- Before running the sample camera, you need to compile, burn, and run the image. For details, see [Getting Started with Hi3516](../quick-start/hi3516-development-board.md). +- Before running the sample camera, you need to compile, burn, and run the image. For details, see [Hi3516 Development Board](../quick-start/hi3516-development-board.md). >![](public_sys-resources/icon-note.gif) **NOTE:** >After the development board is started, the home screen is loaded and displayed above the media layer by default. To prevent covering **camera\_sample**, you should remove the home screen during compilation or packaging. diff --git a/en/device-dev/guide/use-case.md b/en/device-dev/guide/use-case.md index 274e2d375df..0847510fb3a 100644 --- a/en/device-dev/guide/use-case.md +++ b/en/device-dev/guide/use-case.md @@ -1,6 +1,6 @@ # Use Case -- For details about the development board, compilation, burning, and image running, see [Getting Started with Hi3518](../quick-start/hi3518-development-board.md). A compilation result file of sample code is stored in **out/ipcamera\_hi3518ev300/dev\_tools/bin/camera\_sample**. You can copy the file to a TF card, or modify the compilation script of **camera\_sample** to copy the result to **rootfs.img**. +- For details about the development board, compilation, burning, and image running, see [Hi3518 Development Board](../quick-start/hi3518-development-board.md). A compilation result file of sample code is stored in **out/ipcamera\_hi3518ev300/dev\_tools/bin/camera\_sample**. You can copy the file to a TF card, or modify the compilation script of **camera\_sample** to copy the result to **rootfs.img**. Modify **output\_dir** in **applications/sample/camera/media/BUILD.gn**. diff --git a/en/device-dev/guide/wlan-connected-products.md b/en/device-dev/guide/wlan-connected-products.md index 184f46eb0e1..b06843d5c1a 100644 --- a/en/device-dev/guide/wlan-connected-products.md +++ b/en/device-dev/guide/wlan-connected-products.md @@ -1,5 +1,11 @@ # WLAN-connected Products -- **[LED Peripheral Control](led-peripheral-control.md)** +- **[Overview](overview.md)** + +- **[Development](development.md)** + +- **[Verification](verification.md)** + +- **[Third-Party SDK Integration](third-party-sdk-integration.md)** diff --git a/en/device-dev/kernel/Readme-EN.md b/en/device-dev/kernel/Readme-EN.md index 2ec9f17abde..632db9a594c 100644 --- a/en/device-dev/kernel/Readme-EN.md +++ b/en/device-dev/kernel/Readme-EN.md @@ -1,7 +1,7 @@ # Kernel -- [Lite Kernel](lite-kernel.md) - - [OpenHarmony Lite Kernel Basic Functions](openharmony-lite-kernel-basic-functions.md) +- [Kernel for Mini and Small Systems](kernel-for-mini-and-small-systems.md) + - [Basic Kernel](basic-kernel.md) - [Process](process.md) - [Thread](thread.md) - [Memory](memory.md) @@ -86,7 +86,7 @@ - [Magic Key Usage](magic-key-usage.md) - [User-Space Exception Information](user-space-exception-information.md) -- [Linux Kernel](linux-kernel.md) +- [Kernel for Standard Systems](kernel-for-standard-systems.md) - [Linux Kernel Overview](linux-kernel-overview.md) - [Guidelines for Using Patches on OpenHarmony Development Boards](guidelines-for-using-patches-on-openharmony-development-boards.md) - [Guidelines for Compiling and Building the Linux Kernel](guidelines-for-compiling-and-building-the-linux-kernel.md) diff --git a/en/device-dev/kernel/openharmony-lite-kernel-basic-functions.md b/en/device-dev/kernel/basic-kernel.md similarity index 60% rename from en/device-dev/kernel/openharmony-lite-kernel-basic-functions.md rename to en/device-dev/kernel/basic-kernel.md index 8e3d07b35fb..ba8c2da4bd4 100644 --- a/en/device-dev/kernel/openharmony-lite-kernel-basic-functions.md +++ b/en/device-dev/kernel/basic-kernel.md @@ -1,4 +1,4 @@ -# OpenHarmony Lite Kernel Basic Functions +# Basic Kernel - **[Process](process.md)** diff --git a/en/device-dev/kernel/lite-kernel.md b/en/device-dev/kernel/kernel-for-mini-and-small-systems.md similarity index 55% rename from en/device-dev/kernel/lite-kernel.md rename to en/device-dev/kernel/kernel-for-mini-and-small-systems.md index 3927b0fb506..5f89928742c 100644 --- a/en/device-dev/kernel/lite-kernel.md +++ b/en/device-dev/kernel/kernel-for-mini-and-small-systems.md @@ -1,6 +1,6 @@ -# Lite Kernel +# Kernel for Mini and Small Systems -- **[OpenHarmony Lite Kernel Basic Functions](openharmony-lite-kernel-basic-functions.md)** +- **[Basic Kernel](basic-kernel.md)** - **[OpenHarmony Lite Kernel File System](openharmony-lite-kernel-file-system.md)** diff --git a/en/device-dev/kernel/linux-kernel.md b/en/device-dev/kernel/kernel-for-standard-systems.md similarity index 82% rename from en/device-dev/kernel/linux-kernel.md rename to en/device-dev/kernel/kernel-for-standard-systems.md index 9391b466f5f..8d387b3cc01 100644 --- a/en/device-dev/kernel/linux-kernel.md +++ b/en/device-dev/kernel/kernel-for-standard-systems.md @@ -1,4 +1,4 @@ -# Linux Kernel +# Kernel for Standard Systems - **[Linux Kernel Overview](linux-kernel-overview.md)** diff --git a/en/device-dev/quick-start/overview.md b/en/device-dev/overview.md similarity index 81% rename from en/device-dev/quick-start/overview.md rename to en/device-dev/overview.md index 63cb2b8be14..7f0112d8696 100644 --- a/en/device-dev/quick-start/overview.md +++ b/en/device-dev/overview.md @@ -30,6 +30,9 @@ In addition, OpenHarmony provides a series of optional system components that ca ## Document Outline +- [Mini and small system development guidelines](#table3762949121211) +- [Standard system development guidelines](#table17667535516) + **Table 1** Mini and small system development guidelines \(reference memory < 128 MB\) @@ -45,49 +48,49 @@ In addition, OpenHarmony provides a series of optional system components that ca

Getting familiar with OpenHarmony

- +

Development resources

Preparing for your development

- +

Quick start

Getting started with setup, build, burning, debugging, and running of OpenHarmony

-

Getting Started for Mini and Small Systems

+

Getting Started for Mini and Small Systems

Basic capabilities

Using basic capabilities of OpenHarmony

- +

Advanced development

Developing smart devices based on system capabilities

- +

Porting and adaptation

  • Porting and adapting the OpenHarmony to an SoC
  • Porting and adapting the OpenHarmony to a third-party library
- +

Contributing components

Contributing components to OpenHarmony

- +

Reference

@@ -111,53 +114,53 @@ In addition, OpenHarmony provides a series of optional system components that ca -

About OpenHarmony

+

About OpenHarmony

-

Getting familiar with OpenHarmony

+

Getting familiar with OpenHarmony

- +

Development resources

Preparing for your development

- +

Quick start

Getting started with setup, build, burning, debugging, and running of OpenHarmony

-

Getting Started for Standard System

+

Getting Started for Standard System

Basic capabilities

-

Using basic capabilities of OpenHarmony

+

Using basic capabilities of OpenHarmony

- +

Advanced development

Developing smart devices based on system capabilities

- +

Porting and adaptation

Porting and adapting the OpenHarmony to a third-party library

-

Third-Party Library Porting Guide

+

Third-Party Library Porting Guide

Contributing components

-

Contributing components to OpenHarmony

+

Contributing components to OpenHarmony

- +

Reference

diff --git a/en/device-dev/porting/Readme-EN.md b/en/device-dev/porting/Readme-EN.md index b4f760b020e..19358865944 100644 --- a/en/device-dev/porting/Readme-EN.md +++ b/en/device-dev/porting/Readme-EN.md @@ -1,4 +1,4 @@ -# Porting Guide +# Third-Party Library Porting Guide - [Third-Party Library Porting Guide](third-party-library-porting-guide.md) - [Overview](overview.md) diff --git a/en/device-dev/porting/porting-a-library-built-using-cmake.md b/en/device-dev/porting/porting-a-library-built-using-cmake.md index a7d399c983a..14cf6c7028e 100644 --- a/en/device-dev/porting/porting-a-library-built-using-cmake.md +++ b/en/device-dev/porting/porting-a-library-built-using-cmake.md @@ -227,7 +227,7 @@ The following steps show how to configure and modify the toolchains for cross-co 1. Set up the OpenHarmony environment. - Using Hi3518EV300 as an example, compile the OpenHarmony image and burn it to the development board. For details, see [Developing the First Example Program Running on Hi3518](https://gitee.com/openharmony/docs/blob/master/docs-en/quick-start/developing-the-first-example-program-running-on-hi3518.md). + Using Hi3518EV300 as an example, compile the OpenHarmony image and burn it to the development board. For details, see [Developing the First Example Program Running on Hi3518](https://device.harmonyos.com/en/docs/start/introduce/oem_development_ex_3518-0000001105528572). The following screen is displayed after a successful login to the OS. @@ -306,7 +306,7 @@ The following steps show how to configure and modify the toolchains for cross-co

GN file for adding the third-party library to the OpenHarmony project

-

openHarmony/third_party/double-conversion/build_thirdpaty.py

+

openHarmony/third_party/double-conversion/build_thirdparty.py

Script file for GN to call the shell command to convert compilation from GN to CMake.

diff --git a/en/device-dev/porting/system-modules.md b/en/device-dev/porting/system-modules.md index 686ea0751d8..3484579267a 100644 --- a/en/device-dev/porting/system-modules.md +++ b/en/device-dev/porting/system-modules.md @@ -22,5 +22,5 @@ For details about how to use SAMGR, see [samgr\_lite](https://gitee.com/openhar The design for X \(DFX\) subsystem mainly includes design for reliability \(DFR\) and design for testability \(DFT\), providing code maintenance and testing. -For details, see [dfx](../subsystems/dfx.md). +For details, see **[DFX](../subsystems/DFX.md)**. diff --git a/en/device-dev/quick-start/Readme-EN.md b/en/device-dev/quick-start/Readme-EN.md index 4aab1f04bc1..8dc877bf65c 100644 --- a/en/device-dev/quick-start/Readme-EN.md +++ b/en/device-dev/quick-start/Readme-EN.md @@ -1,6 +1,5 @@ # Getting Started -- [Overview](overview.md) - [Mini and Small Systems](mini-and-small-systems.md) - [Overview](overview-0.md) - [Introduction to the Development Boards](introduction-to-the-development-boards.md) @@ -33,12 +32,10 @@ - [FAQs](faqs-6.md) - [Standard System](standard-system.md) - - [Overview](overview-7.md) - - [Environment Setup](environment-setup-8.md) - - [Overview](overview-9.md) - - [Windows Development Environment](windows-development-environment-10.md) - - [Preparing the Ubuntu Build Environment](preparing-the-ubuntu-build-environment.md) - - [FAQs](faqs-11.md) - - - [How to Develop](how-to-develop-12.md) + - [Introduction](introduction.md) + - [Setting Up Windows Development Environment](setting-up-windows-development-environment.md) + - [Setting Up Ubuntu Development Environment in Docker Mode and Building Source Code](setting-up-ubuntu-development-environment-in-docker-mode-and-building-source-code.md) + - [Setting Up Ubuntu Development Environment with Installation Package and Building Source Code](setting-up-ubuntu-development-environment-with-installation-package-and-building-source-code.md) + - [Burning Images](burning-images.md) + - [FAQs](faqs-7.md) diff --git a/en/device-dev/quick-start/burning-images.md b/en/device-dev/quick-start/burning-images.md new file mode 100644 index 00000000000..b63966d9433 --- /dev/null +++ b/en/device-dev/quick-start/burning-images.md @@ -0,0 +1,205 @@ +# Burning Images + +- [Next](#section5600113114323) + +Programming flash memory of a regular system requires DevEco Device Tool v2.2 Beta1 or later. + +The Hi3516DV300 of the Hi3516 series development boards supports programming flash memory of a regular system through the USB port, network port, or serial port, where: + +- **Windows system: Supports programming through the USB port, serial port, or network port** +- **Linux system: Supports programming through the serial port or network port \(Linux+Windows dual system: Also supports programming through the USB port\)** + +Except for environment setup, the operations of programming are the same for Windows and Linux. + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>Currently, the Hi3516D V300 development board supports system burning over the network port, USB port, or serial port. This document uses the network port as an example. For details about system burning over other ports, see [Programming Flash Memory on the Hi3516](https://device.harmonyos.com/en/docs/ide/user-guides/hi3516_upload-0000001052148681). + +### Prerequisites + +[Open a project](https://device.harmonyos.com/en/docs/ide/user-guides/open_project-0000001071680043) in DevEco Device Tool and select the folder where the file to be programmed is located. Select **Hi3516DV300** for the development board type and **Hb** for **Framework**. + +### Programming Flash Memory Through the Network Port + +The Hi3516DV300 supports programming through the network port in Windows or Linux. + +1. Connect the PC and the target development board through the power port, serial port, and network port. In this section, the Hi3516DV300 is used as an example. For details, please refer to [Introduction to the Hi3516 Development Board](https://device.harmonyos.com/en/docs/start/introduce/oem_camera_start_3516-0000001052670587). +2. Open Device Manager, then check and record the serial port number corresponding to the development board. + + >![](public_sys-resources/icon-note.gif) **NOTE:** + >If the serial port number is not displayed correctly, follow the steps described in [Installing the Serial Port Driver on the Hi3516 or Hi3518 Series Development Boards](https://device.harmonyos.com/en/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695). + + ![](figures/en-us_image_0000001114129428.png) + +3. Open DevEco Device Tool and go to **Projects** \> **Settings**. + + ![](figures/2021-01-27_170334-18.png) + +4. On the **Partition Configuration** tab page, enter the information about the files to be programmed, including the following. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Name

+

Binary

+

Memory

+

System

+

Address

+

Length

+

Board

+

Type

+

fastboot

+

Select u-boot-hi3516dv300_emmc.bin.

+

emmc

+

none

+

0x000000

+

0x100000

+

Select hi3516dv300.

+

NA

+

boot

+

Select uImage.

+

emmc

+

none

+

0x100000

+

0xf00000

+

NA

+

updater

+

Select updater.img.

+

emmc

+

ext3/4

+

0x1000000

+

0x1400000

+

NA

+

misc

+

Leave it blank.

+

emmc

+

none

+

0x2400000

+

0x100000

+

NA

+

system

+

Select system.img.

+

emmc

+

ext3/4

+

0x2500000

+

0xceb00000

+

NA

+

vendor

+

Select vendor.img.

+

emmc

+

ext3/4

+

0xd1000000

+

0x10000000

+

NA

+

userdata

+

Select userdata.img.

+

emmc

+

ext3/4

+

0xe1000000

+

0x5b800000

+

NA

+
+ + ![](figures/en-us_image_0000001160527611.png) + +5. On the **hi3516dv300** tab page, configure the programming options. + + - **upload\_port**: Select the serial port number obtained in step [2](#en-us_topic_0000001056443961_li1050616379507). + - **upload\_protocol**: Select the programming protocol **hiburn-net**. + - **upload\_partitions**: Select the file to be programmed, including the following: fastboot, boot, updater, misc, system, vendor, and userdata. + + ![](figures/en-us_image_0000001117621400.png) + +6. Check and set the IP address of the network adapter connected to the development board. For details, see [Setting the IP Address of the Network Port for Programming on Hi3516](https://device.harmonyos.com/en/docs/ide/user-guides/set_ipaddress-0000001141825075). +7. Set the IP address of the network port for programming: + + - **upload\_net\_server\_ip**: Select the IP address set in [6](en-us_topic_0000001056443961.md#li1558813168234), such as 192.168.1.2. + - **upload\_net\_client\_mask**: Set the subnet mask of the development board, such as 255.255.255.0. Once the **upload\_net\_server\_ip** field is set, this field will be automatically populated. + - **upload\_net\_client\_gw**: Set the gateway of the development board, such as 192.168.1.1. Once the **upload\_net\_server\_ip** field is set, this field will be automatically populated. + - **upload\_net\_client\_ip**: Set the IP address of the development board, such as 192.168.1.3. Once the **upload\_net\_server\_ip** field is set, this field will be automatically populated. + + ![](figures/en-us_image_0000001117463460.png) + +8. When you finish modifying, click **Save** in the upper right corner. +9. Open the project file, go to ![](figures/2021-01-27_170334-19.png) \> **PROJECT TASKS** \> **fastboot** \> **Erase** to erase U-boot. + + ![](figures/en-us_image_0000001163045527.png) + +10. When the following message is displayed, power off the development board and then power it on. + + ![](figures/en-us_image_0000001114129432.png) + +11. Start programming. When the following message is displayed, it indicates that the programming is successful. + + ![](figures/en-us_image_0000001113969542.png) + + +## Next + +Congratulations! You have completed the quick start for the standard system. Get yourself familiar with OpenHarmony by a [Development Example for Clock App](../guide/development-example-for-clock-apps.md). + diff --git a/en/device-dev/quick-start/developing-a-driver.md b/en/device-dev/quick-start/developing-a-driver.md index ab35222428d..6c57fde80bf 100644 --- a/en/device-dev/quick-start/developing-a-driver.md +++ b/en/device-dev/quick-start/developing-a-driver.md @@ -1,4 +1,4 @@ -# Developing a Driver +# Developing a Driver - [Introduction to Driver](#s8efc1952ebfe4d1ea717182e108c29bb) - [Compiling and Burning](#section660016185110) @@ -439,7 +439,7 @@ Compile and burn images by referring to [Building](../quick-start/running-a-hel 1. Click **Monitor** to enable the serial port. 2. Press **Enter** repeatedly until **hisilicon** displays. - 3. Go to step [2](running-a-hello-ohos-program.md#l5b42e79a33ea4d35982b78a22913b0b1) if the board is started for the first time or the startup parameters need to be modified; go to step [3](running-a-hello-ohos-program.md#ld26f18828aa44c36bfa36be150e60e49) otherwise. + 3. Go to step [2](running-a-hello-ohos-program.md#en-us_topic_0000001151888681_l5b42e79a33ea4d35982b78a22913b0b1) if the board is started for the first time or the startup parameters need to be modified; go to step [3](running-a-hello-ohos-program.md#en-us_topic_0000001151888681_ld26f18828aa44c36bfa36be150e60e49) otherwise. 2. \(Mandatory when the board is started for the first time\) Modify the bootcmd and bootargs parameters of U-boot. You need to perform this step only once if the parameters need not to be modified during the operation. The board automatically starts after it is reset. diff --git a/en/device-dev/quick-start/environment-setup-7.md b/en/device-dev/quick-start/environment-setup-7.md deleted file mode 100644 index ef15df388b1..00000000000 --- a/en/device-dev/quick-start/environment-setup-7.md +++ /dev/null @@ -1,11 +0,0 @@ -# Environment Setup - -- **[Overview](overview-8.md)** - -- **[Windows Development Environment](windows-development-environment-9.md)** - -- **[Ubuntu Build Environment](ubuntu-build-environment-10.md)** - -- **[FAQs](faqs-11.md)** - - diff --git a/en/device-dev/quick-start/environment-setup-8.md b/en/device-dev/quick-start/environment-setup-8.md deleted file mode 100644 index 2428c3c9e47..00000000000 --- a/en/device-dev/quick-start/environment-setup-8.md +++ /dev/null @@ -1,11 +0,0 @@ -# Environment Setup - -- **[Overview](overview-9.md)** - -- **[Windows Development Environment](windows-development-environment-10.md)** - -- **[Preparing the Ubuntu Build Environment](preparing-the-ubuntu-build-environment.md)** - -- **[FAQs](faqs-11.md)** - - diff --git a/en/device-dev/quick-start/environment-setup.md b/en/device-dev/quick-start/environment-setup.md index d1b7756c427..289f31965d0 100644 --- a/en/device-dev/quick-start/environment-setup.md +++ b/en/device-dev/quick-start/environment-setup.md @@ -1,4 +1,4 @@ -# Environment Setup +# Environment Setup - **[Overview](overview-1.md)** diff --git a/en/device-dev/quick-start/faq.md b/en/device-dev/quick-start/faq.md index b1c6da1ec2a..b1ed6400050 100644 --- a/en/device-dev/quick-start/faq.md +++ b/en/device-dev/quick-start/faq.md @@ -1,4 +1,4 @@ -# FAQ +# FAQ - [What should I do if garbled characters and segmentation faults occur during hb installation?](#section411894616119) - [What should I do if the message "cannot import 'sysconfig' from 'distutils'" is displayed during hb installation?](#section629417571626) diff --git a/en/device-dev/quick-start/faqs-2.md b/en/device-dev/quick-start/faqs-2.md deleted file mode 100644 index d85c04678eb..00000000000 --- a/en/device-dev/quick-start/faqs-2.md +++ /dev/null @@ -1,172 +0,0 @@ -# FAQs - -- [What should I do when the images failed to be burnt over the selected serial port?](#section627268185113) -- [What should I do when Windows-based PC failed to be connected to the board?](#section195391036568) -- [What should I do when the image failed to be burnt?](#section571164016565) -- [What should I do when the message indicating Python cannot be found is displayed during compilation and building?](#section1039835245619) -- [What should I do when no command output is displayed?](#section14871149155911) - -## What should I do when the images failed to be burnt over the selected serial port? - -- **Symptom** - - **Error: Opening COMxx: Access denied** is displayed after clicking **Burn** and selecting a serial port. - - **Figure 1** Failed to open the serial port - ![](figures/failed-to-open-the-serial-port.png "failed-to-open-the-serial-port") - -- **Possible Causes** - - The serial port has been used. - -- **Solutions** - -1. Search for the terminal using serial-xx from the drop-down list in the **TERMINAL** panel. - - **Figure 2** Checking whether the serial port is used - ![](figures/checking-whether-the-serial-port-is-used.png "checking-whether-the-serial-port-is-used") - -2. Click the dustbin icon as shown in the following figure to disable the terminal using the serial port. - - **Figure 3** Disabling the terminal using the serial port - ![](figures/disabling-the-terminal-using-the-serial-port.png "disabling-the-terminal-using-the-serial-port") - -3. Click **Burn**, select the serial port, and start burning images again. - - **Figure 4** Restarting burning - - - ![](figures/changjian1.png) - - -## What should I do when Windows-based PC failed to be connected to the board? - -- **Symptom** - - The file image cannot be obtained after clicking **Burn** and selecting a serial port. - - **Figure 5** Failed to obtain the image file due to unavailable connection - ![](figures/failed-to-obtain-the-image-file-due-to-unavailable-connection.png "failed-to-obtain-the-image-file-due-to-unavailable-connection") - -- **Possible Causes** - - The board is disconnected from the Windows-based PC. - - Windows Firewall does not allow Visual Studio Code to access the network. - -- **Solutions** - -1. Check whether the network cable is properly connected. -2. Click **Windows Firewall**. - - **Figure 6** Network and firewall setting - ![](figures/network-and-firewall-setting.png "network-and-firewall-setting") - -3. Click **Firewall & network protection**, and on the displayed page, click **Allow applications to communicate through Windows Firewall**. - - **Figure 7** Firewall and network protection - ![](figures/firewall-and-network-protection.png "firewall-and-network-protection") - -4. Select the Visual Studio Code application - - **Figure 8** Selecting the Visual Studio Code application - ![](figures/selecting-the-visual-studio-code-application.png "selecting-the-visual-studio-code-application") - -5. Select the **Private** and **Public** network access rights for the Visual Studio Code application. - - **Figure 9** Allowing the Visual Studio Code application to access the network - ![](figures/allowing-the-visual-studio-code-application-to-access-the-network.png "allowing-the-visual-studio-code-application-to-access-the-network") - - -## What should I do when the image failed to be burnt? - -- **Symptom** - - The burning status is not displayed after clicking **Burn** and selecting a serial port. - -- **Possible Causes** - - The IDE is not restarted after the DevEco plug-in is installed. - -- **Solutions** - - Restart the IDE. - - -## What should I do when the message indicating Python cannot be found is displayed during compilation and building? - -- **Symptom** - - ![](figures/en-us_image_0000001105056492.png) - - -- **Possible Cause 1**: Python is not installed. -- **Solutions** - - Install Python by referring to [Installing and Configuring Python](../quick-start/ubuntu-build-environment.md). - -- **Possible Cause 2**: The soft link that points to the Python does not exist in the usr/bin directory. - - ![](figures/en-us_image_0000001151976069.png) - -- **Solutions** - - Run the following commands: - - ``` - # cd /usr/bin/ - # which python3 - # ln -s /usr/local/bin/python3 python - # python --version - ``` - - Example: - - ![](figures/en-us_image_0000001152176139.png) - - -## What should I do when no command output is displayed? - -- **Symptom** - - The serial port shows that the connection has been established. After the board is restarted, nothing is displayed when you press **Enter**. - -- **Possible Cause 1** - - The serial port is connected incorrectly. - -- **Solutions** - - Change the serial port number. - - Start **Device Manager** to check whether the serial port connected to the board is the same as that connected to the terminal device. If the serial ports are different, perform step [1](../quick-start/running-a-hello-ohos-program.md) in the **Running an Image** section to change the serial port number. - - -- **Possible Cause 2** - - The U-boot of the board is damaged. - -- **Solutions** - - Burn the U-boot. - - If the fault persists after you perform the preceding operations, the U-boot of the board may be damaged. You can burn the U-boot by performing the following steps: - - -1. Obtain the U-boot file. - - >![](public_sys-resources/icon-notice.gif) **NOTICE:** - >The U-boot file of the two boards can be obtained from the following paths, respectively. - >Hi3516D V300: **device\\hisilicon\\hispark\_taurus\\sdk\_liteos\\uboot\\out\\boot\\u-boot-hi3516dv300.bin** - >Hi3518E V300: **device\\hisilicon\\hispark\_aries\\sdk\_liteos\\uboot\\out\\boot\\u-boot-hi3518ev300.bin** - -2. Burn the U-boot file by following the procedures for burning a U-boot file over USB. - - Select the U-boot files of corresponding development boards for burning by referring to [Programming Flash Memory on the Hi3516](https://device.harmonyos.com/en/docs/ide/user-guides/hi3516_upload-0000001052148681)/[Programming Flash Memory on the Hi3518](https://device.harmonyos.com/en/docs/ide/user-guides/hi3518_upload-0000001057313128) - -3. Log in to the serial port after the burning is complete. - - **Figure 10** Serial port displayed after the U-boot is burnt - ![](figures/serial-port-displayed-after-the-u-boot-is-burnt.png "serial-port-displayed-after-the-u-boot-is-burnt") - - diff --git a/en/device-dev/quick-start/faqs-3.md b/en/device-dev/quick-start/faqs-3.md index f756777596c..12c3a207b5c 100644 --- a/en/device-dev/quick-start/faqs-3.md +++ b/en/device-dev/quick-start/faqs-3.md @@ -1,4 +1,4 @@ -# FAQs +# FAQs - [What should I do when the images failed to be burnt over the selected serial port?](#section627268185113) - [What should I do when Windows-based PC failed to be connected to the board?](#section195391036568) @@ -97,7 +97,7 @@ - **Symptom** - ![](figures/en-us_image_0000001105056492.png) + ![](figures/en-us_image_0000001174270715.png) - **Possible Cause 1**: Python is not installed. @@ -107,7 +107,7 @@ - **Possible Cause 2**: The soft link that points to the Python does not exist in the usr/bin directory. - ![](figures/en-us_image_0000001151976069.png) + ![](figures/en-us_image_0000001128470880.png) - **Solutions** @@ -122,7 +122,7 @@ Example: - ![](figures/en-us_image_0000001152176139.png) + ![](figures/en-us_image_0000001174270713.png) ## What should I do when no command output is displayed? diff --git a/en/device-dev/quick-start/faqs-5.md b/en/device-dev/quick-start/faqs-5.md deleted file mode 100644 index 86fbd180f7f..00000000000 --- a/en/device-dev/quick-start/faqs-5.md +++ /dev/null @@ -1,174 +0,0 @@ -# FAQs - -- [What should I do when the images failed to be burnt over the selected serial port?](#section1498892119619) -- [What should I do when Windows-based PC failed to be connected to the board?](#section8512971816) -- [What should I do when the image failed to be burnt?](#section1767804111198) -- [What should I do when the message indicating Python cannot be found is displayed during compilation and building?](#en-us_topic_0000001053466255_section1039835245619) -- [What should I do when no command output is displayed?](#en-us_topic_0000001053466255_section14871149155911) - -## What should I do when the images failed to be burnt over the selected serial port? - -- **Symptom** - - **Error: Opening COMxx: Access denied** is displayed after clicking **Burn** and selecting a serial port. - - **Figure 1** Failed to open the serial port - ![](figures/failed-to-open-the-serial-port-9.png "failed-to-open-the-serial-port-9") - -- **Possible Causes** - - The serial port has been used. - -- **Solutions** - -1. Search for the terminal using serial-xx from the drop-down list in the **TERMINAL** panel. - - **Figure 2** Checking whether the serial port is used - ![](figures/checking-whether-the-serial-port-is-used-10.png "checking-whether-the-serial-port-is-used-10") - -2. Click the dustbin icon as shown in the following figure to disable the terminal using the serial port. - - **Figure 3** Disabling the terminal using the serial port - ![](figures/disabling-the-terminal-using-the-serial-port-11.png "disabling-the-terminal-using-the-serial-port-11") - -3. Click **Burn**, select the serial port, and start burning images again. - - **Figure 4** Restarting burning - - - ![](figures/changjian1-12.png) - - -## What should I do when Windows-based PC failed to be connected to the board? - -- **Symptom** - - The file image cannot be obtained after clicking **Burn** and selecting a serial port. - - **Figure 5** Failed to obtain the image file due to unavailable connection - ![](figures/failed-to-obtain-the-image-file-due-to-unavailable-connection-13.png "failed-to-obtain-the-image-file-due-to-unavailable-connection-13") - -- **Possible Causes** - - The board is disconnected from the Windows-based PC. - - Windows Firewall does not allow Visual Studio Code to access the network. - -- **Solutions** - -1. Check whether the network cable is properly connected. -2. Click **Windows Firewall**. - - **Figure 6** Network and firewall setting - ![](figures/network-and-firewall-setting-14.png "network-and-firewall-setting-14") - -3. Click **Firewall & network protection**, and on the displayed page, click **Allow applications to communicate through Windows Firewall**. - - **Figure 7** Firewall and network protection - ![](figures/firewall-and-network-protection-15.png "firewall-and-network-protection-15") - -4. Select the Visual Studio Code application - - **Figure 8** Selecting the Visual Studio Code application - ![](figures/selecting-the-visual-studio-code-application-16.png "selecting-the-visual-studio-code-application-16") - -5. Select the **Private** and **Public** network access rights for the Visual Studio Code application. - - **Figure 9** Allowing the Visual Studio Code application to access the network - ![](figures/allowing-the-visual-studio-code-application-to-access-the-network-17.png "allowing-the-visual-studio-code-application-to-access-the-network-17") - - -## What should I do when the image failed to be burnt? - -- **Symptom** - - The burning status is not displayed after clicking **Burn** and selecting a serial port. - -- **Possible Causes** - - The IDE is not restarted after the DevEco plug-in is installed. - -- **Solutions** - - Restart the IDE. - - -## What should I do when the message indicating Python cannot be found is displayed during compilation and building? - -- **Symptom** - - ![](figures/en-us_image_0000001105376260.png) - - -- **Possible Cause 1** - - Python is not installed. - -- **Solutions** - - Install Python by referring to [Installing and Configuring Python](../quick-start/ubuntu-build-environment.md). - -- **Possible Cause 2**: The soft link that points to the Python does not exist in the usr/bin directory. - - ![](figures/en-us_image_0000001105216304.png) - -- **Solutions** - - Run the following commands: - - ``` - # cd /usr/bin/ - # which python3 - # ln -s /usr/local/bin/python3 python - # python --version - ``` - - Example: - - ![](figures/en-us_image_0000001152256235.png) - - -## What should I do when no command output is displayed? - -- **Symptom** - - The serial port shows that the connection has been established. After the board is restarted, nothing is displayed when you press **Enter**. - -- **Possible Cause 1** - - The serial port is connected incorrectly. - -- **Solutions** - - Change the serial port number. - - Start **Device Manager** to check whether the serial port connected to the board is the same as that connected to the terminal device. If the serial ports are different, perform step [1](../quick-start/running-a-hello-ohos-program.md) in the **Running an Image** section to change the serial port number. - - -- **Possible Cause 2** - - The U-boot of the board is damaged. - -- **Solutions** - - Burn the U-boot. - - If the fault persists after you perform the preceding operations, the U-boot of the board may be damaged. You can burn the U-boot by performing the following steps: - - -1. Obtain the U-boot file. - - >![](public_sys-resources/icon-notice.gif) **NOTICE:** - >The U-boot file of the two boards can be obtained from the following paths, respectively. - >Hi3516D V300: **device\\hisilicon\\hispark\_taurus\\sdk\_liteos\\uboot\\out\\boot\\u-boot-hi3516dv300.bin** - >Hi3518E V300: **device\\hisilicon\\hispark\_aries\\sdk\_liteos\\uboot\\out\\boot\\u-boot-hi3518ev300.bin** - -2. Burn the U-boot file by following the procedures for burning a U-boot file over USB. - - Select the U-boot files of corresponding development boards for burning by referring to [Programming Flash Memory on the Hi3516](https://device.harmonyos.com/en/docs/ide/user-guides/hi3516_upload-0000001052148681)/[Programming Flash Memory on the Hi3518](https://device.harmonyos.com/en/docs/ide/user-guides/hi3518_upload-0000001057313128) - -3. Log in to the serial port after the burning is complete. - - ![](figures/en-us_image_0000001105536118.png) - - diff --git a/en/device-dev/quick-start/faqs-6.md b/en/device-dev/quick-start/faqs-6.md index b428e3cf9fa..05d53356aed 100644 --- a/en/device-dev/quick-start/faqs-6.md +++ b/en/device-dev/quick-start/faqs-6.md @@ -1,4 +1,4 @@ -# FAQs +# FAQs - [What should I do when the images failed to be burnt over the selected serial port?](#section1498892119619) - [What should I do when Windows-based PC failed to be connected to the board?](#section8512971816) @@ -97,7 +97,7 @@ - **Symptom** - ![](figures/en-us_image_0000001105376260.png) + ![](figures/en-us_image_0000001174270743.png) - **Possible Cause 1** @@ -110,7 +110,7 @@ - **Possible Cause 2**: The soft link that points to the Python does not exist in the usr/bin directory. - ![](figures/en-us_image_0000001105216304.png) + ![](figures/en-us_image_0000001174270739.png) - **Solutions** @@ -125,7 +125,7 @@ Example: - ![](figures/en-us_image_0000001152256235.png) + ![](figures/en-us_image_0000001174350661.png) ## What should I do when no command output is displayed? @@ -169,6 +169,6 @@ 3. Log in to the serial port after the burning is complete. - ![](figures/en-us_image_0000001105536118.png) + ![](figures/en-us_image_0000001174350659.png) diff --git a/en/device-dev/quick-start/faqs-11.md b/en/device-dev/quick-start/faqs-7.md similarity index 88% rename from en/device-dev/quick-start/faqs-11.md rename to en/device-dev/quick-start/faqs-7.md index 1a0b63cdc83..649bcba046d 100644 --- a/en/device-dev/quick-start/faqs-11.md +++ b/en/device-dev/quick-start/faqs-7.md @@ -1,4 +1,4 @@ -# FAQs +# FAQs - **Symptom** diff --git a/en/device-dev/quick-start/faqs.md b/en/device-dev/quick-start/faqs.md index 67bf3ab4671..43db6c03736 100644 --- a/en/device-dev/quick-start/faqs.md +++ b/en/device-dev/quick-start/faqs.md @@ -1,4 +1,4 @@ -# FAQs +# FAQs - [What should I do when the message configure: error: no acceptable C compiler found in $PATH is displayed during Python 3 installation?](#section1221016541119) - [What should I do when the message -bash: make: command not found is displayed during Python 3 installation?](#section1913477181213) @@ -134,7 +134,7 @@ - Download the source code from [https://pypi.org/project/pycrypto/\#files](https://pypi.org/project/pycrypto/#files). - ![](figures/en-us_image_0000001151976061.png) + ![](figures/en-us_image_0000001128470864.png) - Save the source code package to the Linux server, decompress the package, and run the **python3 setup.py install** command to install **Crypto**. - Rebuild an environment. @@ -164,7 +164,7 @@ - Download the installation package from [https://pypi.org/project/ecdsa/\#files](https://pypi.org/project/ecdsa/#files). - ![](figures/en-us_image_0000001152176131.png) + ![](figures/en-us_image_0000001128311072.png) - Save the installation package to the Linux server and run the **pip3 install ecdsa-0.15-py2.py3-none-any.whl** command to install **ecdsa**. - Rebuild an environment. @@ -194,7 +194,7 @@ - Download the installation package from [https://pypi.org/project/six/\#files](https://pypi.org/project/six/#files). - ![](figures/en-us_image_0000001152056191.png) + ![](figures/en-us_image_0000001174270699.png) - Save the source code to the Linux server and run the **pip3 install six-1.14.0-py2.py3-none-any.whl** command to install **six**. - Rebuild an environment. @@ -247,7 +247,7 @@ - **Possible Cause 2:** The soft link that points to the Python does not exist in the **usr/bin** directory. - ![](figures/en-us_image_0000001105376252.png) + ![](figures/en-us_image_0000001128311070.png) - **Solutions** @@ -262,7 +262,7 @@ Example: - ![](figures/en-us_image_0000001105216296.png) + ![](figures/en-us_image_0000001174350623.png) ## What should I do when an error with **lsb\_release** occurs during **kconfiglib** installation? diff --git a/en/device-dev/quick-start/figures/1-19.png b/en/device-dev/quick-start/figures/1-19.png deleted file mode 100644 index 8ed1535a6bc23dc5bd02fbd5a3f1392f46ad8d83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14927 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 diff --git a/en/device-dev/quick-start/figures/2021-01-27_181047.png b/en/device-dev/quick-start/figures/2021-01-27_181047.png deleted file mode 100644 index 587ca51a1010c3fefcc79be73ffc5584075551ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8726 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 HKY8_E{H)IK diff --git a/en/device-dev/quick-start/figures/2021-01-28_112953.png b/en/device-dev/quick-start/figures/2021-01-28_112953.png deleted file mode 100644 index a3a92549a345ad7ebb1d0142a50d2c41c4ede9f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38794 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

Z-&tDvn}lozWF;~PpDAt|nL;z!D;buoq= zMjt;qUJ^$I_p&lN6qhwe;&Z3PgYTnzh~b|Ux;#qxp51H&6Q=_pGLHUG@Ea&(Md zdTKwJ9n1*x{cBw9IxcVrt(zxFJ*}(&h!r79Qy`jJeUfQAhxOwWMoA-IoD3KkO6L8l z#S8Ysj8${Yw4=kr{@0`$5oYe|yV~j-x*8``K5K1ovgz?^&4a~|z)C4HPDYl&g&SI* z-is3%zieV~GSZ$5kQ8riG+bF+`8TOPcX@kiLgfxyZ!Ll&qnx#WB74=nZ5TVr z?5duQ7i5yFl+_k?p(G{M_@|sZ=~{san~&9eg0=9YFcrP)Cw94eZ$40=k^ShfenoC# zx!`$J$rc5TfwTjD!>Yq)7h&ea{f?JWxu9-^7{uw(BXK^R#WtvfX<#eEx0cc zB2$n)JRg{Dsx}$~2D8NCjQSqqHA7+41qWpvi(Vjff)Wt&g z`IENs8f|IP+DoY7wO`F2aqR|i{e(Ah>D^9zH$V`e{0CEd4!Erv$SLB|wMc6y&^!Be zbBKeI*)Kb;RBH&DRUX_WXLou=y*b-mS0YQNCVBPrJp9{|n1OWtFaWUQPw=i`%s$=q z>${fha!o!Ox|q@qONr7_(M|&F_ETIDh6~4GPx@T|s4>|M`t|N!)8c(kUrSIM`^oJv zk=3l~w>c>XAUHk>8Dhe9O?r8aJQC35dZgXA<{2O2$8qoaec8Qsn-^Mc`>{TYEbqP| z9Wp| zR8jfTcAY4KfwGBw=z3Eo>cT#9tuKLoZOqqpW|(2CApngl9U{B-fN)ooXpQD1#ynd? zOvmi1LS77$m)Nz@Q|@<6n13?8Ubi5}j+_!i8QoW@wG115A~)e)oQ^OI<>|NLZGMOy zQ6AsD9o>4$fx!BL)RLiq>Re?BY-}Y)L``;Xq@UF&pi0X-^Ssvqa!oHdgeIEWqf9q| zy)*ObzSkjh=**O*2<{cSsTqZRQcGC2h0sPR{+8i9u^_x%XPxg;HTe|pxmTDj{^ z^^6FZWc@+P0*3y|+GXwi%_WD}y87h3S%}Gx>tG&GBfUrpw(dsM{{Scuz3EsQ^vL%+ zhVH>C5q`s6d^IWBs;eEpF}Qbq4A%p&#VFO@bK-VM{qsyD+B7a>cTw5nMkZY(4Zc6^ z3N70xRxtpl5~q%U_}qe~H^q}t$%Vg;dKj86rgN=%ZFwxhLmZ zwJ;e%l9Bp;sO^722YOu(8>X+XNZNf(z?!LMyoBaRSv42xd)lfHxnwkBL5ow~u}ld@ z4Zpg5dv~(PJM!jHvZS1Si|RCuPg$Kt7J@Wg=2(Rv@Y3Pb`S0Gh3wg(K`pW}4_4AA@ zb_E7UZJbJH#uYwqkz1JD+#*gwOGIjjH6VO)JfB2F5=0bHC|xz)FnuEi9qbZQT>UG2 z-MWl^7N!#Q_PI4c3rl^earoNnwgmW*UvY$APd@4k`MinH=wJqd#n!!?Tx3eK(Q%oqJ8 zk}|k*S;TYYs=8K;g9l8)=7r}hb4>y|`WG%~w#ETLU>!MoVpYGsY*9hD@9>zxp(D+7 zbg3)rG(wa_;(1XLnuo0R2-Dmu4uv0jittH+A}UmmPK1t{*IN(QXg z8>ylOe|_;YR%g>Irx~YTKh^Zk1mgpPg zb83~8#YyO90+Kkt^eICB!-9cuc)x6vZ*H*5+pe9gdgGWnQ@QE#S@V6-ZHfZt#L1bN zu9WR5)n@k!!=!tUi5AI}5Ti!}PDec)+YlHwcD|R23Ge^7BhoFtfk)}&^tGaFMZ9$< zl(+iV^9>ijW9Z40K{fg^qW}Ho^X5b+A!Lul`)Qam#mmg!ZWohkS5U_MV;<5_n$miA zzRgUA4CCt8K_W^qg})*~u+Tw5&

jwYyQxE0c<0kzc;FwQ2NZOB>#73c)W>L-{xR zzq2~f&S+?Ox++N}tdGl^>B#+yUUP+=zH`>ETO4(L_75(Dt1s&Kdh^MnlaO>g{;%+X zYN-yfKl5KWl$606#(3Yv{vh?e=h?EyEh!<7{cV8Wi~f@p|L-gKt0VtWmj54S*LAJ$ zK^Qb{fBM=qK%+P!PZYaley7@VN{7Rzj#t(hmSPFtW*C@U=Q~C1woeQ5E-^MiPbK3i z?U_^VUIcbBb`W`wp?uy-XMtLa@G-p5{W4O=!l4a~fb{-&`JIZx$3OkqSQ~h}{6+;} zw9y^o5ir-74KQ+Gex?2+*BrV(Th(Q&)Wft^3s{{lPk%8OR>%8>>tV_)dRZQS3^VX_ zF*7p*zN)LoT*p<{QuHz|Upu*8oqA~36hai}V-tZjIy7qVffvX0QX$Rro z`;94!z5lSXvhs89>YsqZ3Al3-)eCpTUmVKHBftD*X*| z!T5|pHhK^lQ)2NRSPXBF*)>j(|GuNgxZ&|?EL?E>;eWoWE_)W{!x}6y?*?ryZ4&V~ z7Jt!Ay#pQtIf(UHG{0KwSsE!{gH7MKv*-!P!_ki6 z_vi6wXrL=81xkFi^Gaf%I}j&T{1jV~^NywvM~{4^JM26%Z{QEcaN7(P&H(p4_;Tzm zyN?ntpkYKm(!xBB&sIN88LM9X`{$C-lL35V9dCeWh9%Yk*A`AR&SNt|{t3)*Cia(v zgoN#A#RiB`S`C++KYlrnBb#SP@pG89t(v35JvbH6u4{iL2y`F=uY=-e*iHmUp$}jJ zsB%zWdn_z*8sV|7M3`}gZ57R4m#lQ3vEaV5mX*EjNNcBR9@yj*__aOyp;S^Sw9{=nbZ*w{5eh1DF?uavom z=^aB8!=HlMGgz7I^Mk!d#HtUHyfR$v8(E={Yo@PQfxw)rfogSQAV;GzQrl5870yNZ- zeh2MLTF>o?bhQ0dn*OwsdcQ<$cLfRR?fiUMPE3*t+)e$&6cvP^Yfq>^@fo;_DItf} zC$$n!R&9;BxtwIn*R=#f)lOR91B>RZFRz_iFv5WAgV~-_@r~xjDo!@^FksSOGkV@h zx}Z%^(F1+E5-8PFDcucisScg5Y7BSB)d-+oTg2JC!%n{P70Mr2vYO5H!dG7?8wy~T@U#FT;BijG}RSS#o9YOIK# zqQ>fMl&yFU+l4^6_SlPmedYK8X1k;-<4fkr@R->QKhEoV73;vo?rC7vV5@4vYHaWu zVbY^j4XbHrY1O3#HI`I-vrsTK%#k}Z4GE+ikG7K{8f2WvMQUp5n{hyh3+zF;KAveI zGx)2gr@e<2Q8!qF#7gqUL4R}qR8NDX*n!~~=Qi|QsJq1f6&fsMw>JH~8f|0Q=*LmR zbbm8^k<1R>t2@|<>S02s@dq%k?Ok6Cv>=Nycp~Om;B})9R9dI5TPVC zygms@KWJmF489!0O%0;wU52p%HR@ z5D@Uz&DNOTxU_CyG^_k25FS0eq@8|73zJ0V6EK;fJM9#xPY;imADcUf{rgBc+ffeL zxJytB0yWUjy}2zdcT&*6I$m@K9MJ=%k`d+@aHkoQ>UjxEoPV|R332!cCRb@*`{;8n zO10jIBXP^6k2UeC5>P-(;Mg z06c=38qvWbwnYX^*^eYX4}EVCb*UXwtenBaCWd{5Ipepfv{!n~>MaS3;2HSe-bSi8_QS zaZJDL(N(QZ?)KMKYDCl|k1trSr%oz~y6ex3A00l?;cX;S`apUmSAsRj3Ys_QHSjo6NDoQL{E4Pe47KGCE|0awoK zVSL7Qm}1Fe*03-pAt6B^+5byP$7?y}M?z;Gfr<9o?T-7=6I_9v=c%;zAm>S*++CtJ z=XbJ|HyW6&he7##xp?4AOhoP8=(5n>kDJ3bN`X{Qcv@A$mi@}0=ZiV_QU>=jbgtPo z^uyf&OASwXx>9ig|3OLfH%&Mv>`BE_lZItstv_~5!9UoK$Hc8aJ&?cu`^QpZ_xio* t@h7bD{6DYy+lT(HB*FH7oG1=v-(XR!yKyg5>^k;Wq)_r=xuS;8{y$A90Ga>* diff --git "a/en/device-dev/quick-start/figures/3516\346\255\243\351\235\242-17.png" "b/en/device-dev/quick-start/figures/3516\346\255\243\351\235\242-17.png" new file mode 100644 index 0000000000000000000000000000000000000000..1ccb47f20022261cc291e8b435f263c00e8d4a27 GIT binary patch literal 206035 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≀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 LwdY7VqmTa!DGgA3 literal 0 HcmV?d00001 diff --git a/en/device-dev/quick-start/figures/allowing-the-visual-studio-code-application-to-access-the-network-17.png b/en/device-dev/quick-start/figures/allowing-the-visual-studio-code-application-to-access-the-network-17.png deleted file mode 100644 index 13d77ce93c78ac07039c8f09741db1db1d05a124..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35003 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 diff --git a/en/device-dev/quick-start/figures/changjian1-12.png b/en/device-dev/quick-start/figures/changjian1-12.png deleted file mode 100644 index 208a4fbace342514f59f0000c4d50f5dc9321f0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61011 zcmZsib8seG(C}lM8z&oWY}*@aW81cE?QU$_cw*arV%s*~+fbfGZRXz>*62E*90+)&_}8 zg0ger$(5Y=x!MK+6O6Xv7gF7p4dT^S&(f9ZVRz8M!7|+8_1N3nYd$ZA`ZR^!?Dy#_ zEZkfEZKc6NnqAEQyC7-~OnZo6rmelJYY~bf#1AkG&`1!m z?w|g00XZ-V|Lu2MLHt-3WP|-W@y`|RnIMIDCG0|9m;NJ=V4Jh@--)kVMS-x{xnq-@ zxcw`8wMlxFdkh8B;`4f+1$_LTOVRmw(BhcuIg}~n0c>u zq_|le8FpxT`s6-+#^0@eJ&0IAa(>wWTw~4O80lgXX$^zmS!Q*^4E5h&gp;1ZEA6RQ z|9#{fSctSLJVE^LFuglBy4u=EQ5a`1!e&k$#4Mlw-K*#tB>U_UP$=7p02Aqt`qodnm*`}*50Dks!uXczKAM48po7E<}&03SbDIzzO zQq~kf!`qRvbpe?>l@f(rvaQ4x(f5j+KU#b8o|P*tVs}kezNt$<-KyEeu8nU>!sWf1 z$Vlfinr%)!4YAwjtyx{(Z7(Mm%RVb{dQPk@q58zE(>kFXn<<;Dj`89mFbKf>lv;C! z+hubX+$_a0E6XygJ?bVdP_a6WqCeO%;oNz_fCexUWN2`ZV1&sb=rEa+JFtk@Yuh!) zoJhCeDNgn+v{>?j8wU=Y)=*&#JGH6bBEQRIZM*P?4S0X4ij>Eour z@(CrK(A2CgeI1Vrm`H~hI%2o?SgZ*#65%i5p0r)pvqPIwwMCwXqoznGmG`{inMHm3 z-LId$`*cWQ>*g8HdmU~FM=JSG_tpg%v0sT-NfIr-#^u(gSdN94DGKN07A()?t4-d1 z&?V)EGx88jP0Ow|OZn2&qRgGJU_;*z?Km_U?LQt~mwSb3V8YN7&sEhia#Q+-`y+>b zAI>Hw_F<{nGTX^|?qp|+n~9ZFT@I%`Esl>KL3}WLv{QqM7{yKi$e{;2J-{bD%!yhs zA82n@)Yi)H3v`M*nD!d8-JbGNZHl6qqq}cqimeZ?clGYYeRvC5E%5^e=$by=B~wFg zh;IA(&b2i=M}b7Ho4!hN!LnN1bfZ&&F*~#d_Y`L&CZKaxB4&0ez|lZTM%2WNGj^9ux#GT|YHsvADP|XB##{lu_=6RG zL4V32+W zHKZmL8dPDmEN|zX-gOAW9bCq(s7q+|ANw%y<#L^khw<4{kq~QsYU#O-B46R+?GoL5 zr5zNivxKnCfn9?hF0L;Pz4=mWFm9$7BmfhFb4Ciw7WS@tql;)~+Pvp$nw}Q%I z8-2B?;J6j>!8;<3+utjchFkrnmW5J7PS>}Qb?GbpH2J_9xE=-5?KG<3X8 z4w}x^#d6?9)|@X_Dgz*F{uU}&xtT?kD^B_kTjt8Ove~tIXDdGX``84++N_#)0BT{N z=VmVI-|-kdglJ15E`xJ&T2EmK9)t!IT$y&vsBw(^32x$$D_H=S5ePf2fYT9nqZ?Yo2lkH3hvI$E6g~{L=z24%Jik? z*h~%(u2&z?unQ5&i;A1edP7adiE&;_N9^~I>>chwm-AV#e(Z7vrO0i+E@UP00+=^E zSXNmMf5rkM%lkwzqp)hp?}0^UOHdo3IF(DZ6yUUM+BMU}&J;si1)+X*m;=w0elPbW z^J8-w-B`wa47pAovHIr*vjtOj*=udjP`M)LmnJ_^p)5=c;}=N6L7CepLdf)XA=uOE zv?P)cF1|6j^+ixyY(Hcl_KQj&q&jhvpr5H#^NsJ^vOL)8x>fz8xU+Yw8m*#M$!nBJ z64X-Gu({yx?*XJ%Rss@X!-SxB(KE?^v~j)<;jw8B&Uv+9LiEAPaNo;Cg`R*$j)33( z3L-+?&o^r0lHr#9xLUF$+{2@^KU;BwXW!%EUeVCfFyk9nc6!=CcmYw9*3eyWAPgG# z*{KII2b2B{t0|6-=K3Wqy^1i2)?lTI5&)LW9xPY+>y%boWN=wS+PZ?wkp3M}?B32= z^jFqb9t`;80+XFb+*8Ndqacu|_T}U3yzEA`%7*O|SZ~kilCnWSEV~uL8-It8-P`a! zV}O46d^l~55tw+bs7Ea7v4=3&ij4fbQ}CPYiKYJEr|*2!5oaSXiiitP z`8>_;vsn4)lfD7Kq(}=n;DhuP5C+C|tR=iR;#{n53y_#}!hBkvta0M4Pn z82l}u(&4Qjw_JW=1T}37?49m$q-oRLqs5OWE4o@HtQnHRX*=)zRW7TNK6G}f-|jn1d!RGg32g`ZlmsMH$wL@SOZaju=kN4l z>$Ke;@mcpK$s~a4y1R<2Aja6Db{YV0AZLEwwA|C6wP^pUq?KP=t#&KESogX+19n`7 zPhs0)r-vKwhX}}qpQCYjp9ETm5fU*F?pOL>(dCdcHr3TJqF<-}hR>&mqKsAm5u9Eny@K_v)hnjh zh!D(#wdgSjv%18@M1Uv)Z*(Ek!AJ^6U`eUsj-yFLd04T;Wyr4gGG|a993he6&D(rI zgb}5D7PHeuBsyDFQSiw@B0_K5s=RWh^_kALqeBA#h1j_>q%t!;sx7^|Fh(V@K}l6J zzYsk|ZVR9B?NDT>(U+qzEWVdfxz8E5)~(#3JeF{i)z7#hbJiXmST-SISoG<6_7uv+ zx2jo+(207I_irJ3Deqsa-vj1uH4uq;>7G1+iSX?Cp3u3)bg{Uy!p!_Uv%yV(AAb?(I4L|=RU@_05sF0F94_eY!D$5%k>m}skTxF!Bd zd(;%jg?WS^s;fXlQw)6X<^eF)vB0B@$p;AQX%5K8bLI&Hx%D<)-sF{| zpd7X24C&?ya%&FCF{c+?OF+?&c(g`GSoJmFAEF&;Ry@yc@=t*qKCf}7Kyvmfr^6CPGt-a!zX#dXPlgKG zGR5>W=V|atQ|DQatKiBc@MaNYNV*?MY3&JnVUKf`phV{4v8jOkw&E6M9x5s(DlMcx z?GT|3bOf21I{kGGuMs1qkWyIgA|+A(fd@xG(LfDu*vS@^7>O(3Liigk%o)cUI0Pnw z27oi>4fTv@s{v>+&)wHG60X3FP_?X$l?ODpsDVj)Piw+i$T@Dn<%4+ZbE0L(TZ4;9 z1`m`p_$z$jY~ZZE>zS!qJ+wt<#14ZSGzR%uDOWDS^u&5hn!C-){Y1e?z-!(>+=Cwu zdjZEyuvo_St(WvOQjitnEePr3U=d6mu{sAg5sUx!CXWRYLAw-M0ty?P+QrY17nI1* zvS;6*`AA#P|lk0awXwp)(E z)_^}Il6W_xyuv9g6d6dASoFxEk&!=mXkS@dMBj@Ifv6qRvb|#DcE>CDJ=j-R)hC-a zUKa#?1&2V8J{1)?{J`q#db+MNvQ}R-MPoA(!dp&6W$_DObMhmWJi+{rwm49}kVFq2 zr|1_gRQ}^yjKhU96sM$lN!`&#?udYP1EUY$+e7sPOd|Jx9EbeHZtlqHerJj`gBCzI zjOwOA5(M_Mz3ZXbyp8|nlpj2(6vrD~N@?7`EEs?s34%FzBcy_zsPUi9rhjy92ByBi z{Cm%*FD7i=4l1LkuK$77XCZw|BnYO#N#hH z$zzuOmrp;izKnd*VpJx|{a2m{uNb4Vi?0RH;g8xI-FF&kb{VxYRNjrn%|E*XoK};4e7x_#IRQP|ozDfuVuuB(; z9~s^ii)Gt;Mi9BEthkwzdyeYWW{?=*(&i@{W%*s-7RxNhBAM+d_iHuAA4i!(PwszA z>es1{cZqs+3?q~Qk6@v~`U*r+Ke{2gQ6Mq)#LR9v5pacaxMPs=asG-NS<|P>ZFHkj zyd@ftg`*-6#)$-(358iQ;${kcs6M)E70+4P2lp5|sr%V%e+qh(s{LEtKm`-a6Us~hTAJwQ2TXD-P zAfQoZgUFBFj8jhCVEAQvcHeP7s%G+XJ#!H4|6p5sErb4*Kl>tqj8MZi?BcQk=tHK~ z@XVB5)kT%_4(?V|k-a#dLsrQ`otcoC4|!zZE8DtJ_uXEvI2tgUBA<4E$|S;{o6Ay7 z`#kbgB99s&X8hH+l@{iFWLP*h=9_U<@#4}dTl|wx^1oNi89;#~W6&POcqB*g5{<`G z0?5qlh>wrY56Ucr2_qWrsUCF?fR&UlW^raSSzMUZYj^D1=VdFB7_orzK;jl}vD33#i3=4_VkI;9JF-{knA zn?~?L;Rmlc5zY+GkVcLGX{{12oMph#0=9tlK^elO43R||5@<`hgrO^vZ)<%5E(*;} zx#TdFE~mEd6h5rffx+8*^RD`vNWmLLHdBh|VWF$5JT0waF{w-*`mZ43ZMoUrtR^y3 z#D%eg1|dk9Y)<3NgqA5fA+C5#hI=*J$`nY)=EWh_hCk9t&4E69;fkcOkRT6k!NCXm?CaIE? zwq{X~)+o+kl$)USop7VeTn5XqfBb_^Qoh4KvNQE8SmRbzO3KT%e-!*2FDivdk|R0K z%M^t`BuRku05T(P^3{pe>kG8)B=8`!V0fq9IT#umdRp``v4)=X6Xph};?k{;kB_4@iFnY3kRMCZolE6%dZ@HQm-H z1rI!2ADU!#rBbM&TdPcN!y~Kc?+f{?xZXGRz{%@LFXXCs*m@;02b6b++kKWoclu3m zSj80v!H(1~mekx*C8c9GNxxe>s1-Xdulf5*V@2Qm#B-cDF}D(rWOdn3h}r*h>q{_1 zWi~C4?Q7osD56Yj-x!t?0g=XO_f;EDFIhwNVlIabv;=xYOzJzd&_)mJH=ME=+~xepRoFROFqjYC zo|%vp%IbXZz@NJ%SIvZqCYsL2j5FKEn|HZO;ip^YVyrWRQ1?=oE?2R+q;^Ehc@T+mSc+~jMwyA z*GR$*@v3qAmX`++pU=a-0y6tzu5&6SLfK5_==8$+eBI)z-{HD3wvplh4K!WI>_&EC zoE$A8r1ZBOv`NGXz~)8%)%l{oN*k&Ex)l7!*zZn)it>v}J-;%+A84?UZ*S;4$egZL zMv9((W2xWKYyHPYcmVGjElYTdr*}6Q#{Eu$G?{ME1=eP*fi{!#=u1EXfogu;ZVpde zK^Ep^+{~S~MwRp_O!#gmA)Wtn0TJmm>pBRjnRd00qx0jo^vTiGp$q|!tNJH>Zjllf z2}Y>Pg~_e)b$j*URQBiG0eZ<)bHI6b-F%H8V-(6tYlFpNU^A27MPSHnr=}aLEZQ1n z5n#A>qUOQ|pBb4>^XB~KGMQe_?PJsOP8KXnnkMU%W?6;J%c4*3ZJjQMvAg7|k6c zi`!i)Ol(6Za}_!31(rpk2hqEC?O{V^Xrf_C5(jBV!kMZ3Tc@zz9_zNDcN zrhQ*(RXO!tb*da3WcOZ@h!1;=MIt}TJA3B-BN4`M;LB_v!()Y%Zmt zHIH|p>d-I#&Kjpx&{8D^jHnS1@~`$HN-sH@J>rEqMb!Jz-hxZHs}5-K&)rtg$S`4& zuSRz{cDr2b*(pO{C<$w3TPn;P`txEIlQ*TN3V!=osTkm^dAWbvf(Rrifu@g>pZNB% ztMiwdUu;WHC?}#7^agGx8j+d%bZ;<`##g(=;Z;O;eCZF9CuJ7O9%VcvSYr92g)RPy z+Zn|nU|2On941AEl7vX&2qmWP0PYtsLJPu!i&+Y#5}%9->;;;{1vI8-8@4+ev=dSjv4X9}zIHL! zGeo$Gd5}s7!KS{sC!gXjZmVWv$IjpRf>2s*g#&MqPZah!v~FeS{yfW#Uj7t~wIV+T zVRn{l5DA`f@R8j)0aY{+mI0@7_mpklDxfW)&PQ0i6#MM7m_1p&6yKt z&ZN0Ce}(S9YVQ@65sOwGL{F#IaNyDh4+ETb-BQ5VbE+h%QnSexeWOuU#%lF%Wjc~E z|Ag@K2EmYv6W}pA@?@HycS)sST+RJ1n~}3sMZKo0sUtNaGe5pw&_jSE=n?~si*uoG znX=4is6=(+VEk`?gLY=Ag#Fl4qit-~`HBRqlm01;&MEAkBQ-$F*guhke+v=|e1kF5N0*iog`@?8!X0?4t$^1=8J+ zTV{Ly44bKHpoN&MX2h?g@4)-)w=r%CTI<$G~-v<)KUl@lXs%JR}Gr=+8l43rE$?m9Q^ z($wmPsQLERkJ?>6pQIsUrL5zwE-MASuYP6mKmAIO?~I{ZZSJtBm2%aKeZScsHwIY3 zstRjT>!K-_l^{@O8K1<8Riwt?Z^}94E|S74xKBski@6dJ(sVU-e&4-m*oyyw%e_XG zf!=kNwGq>hbX9fmkW;M?#8)Zbya{LL|fNUT2{ z9S|Uy?{`fW4;c%~T>-gp+~5Km)NfM1yvL8jd6ouB9o#S)6d&0Byt0II#yII?I(c#7 zX}CTLuBPl!a|s#d4Hqq5GmWS^_D6a{9}x zfR-#*9wy7IuX0aA?*%gCAIGr;)ndljvi71-u6G{Ff(Ezk3dlzsS4pG~QARSq_te_sK4AcbK4{)2HUyWaI z8sJA1fUL#=B3&~nsE!`rK*q+kak8lf`78E6677oZhNe?CIL1pJD#YmPs!~zJ`G=YL zox%K8+d;J_YhbCHgPse(+dcxXh?j_gTf;^5T=*BKct+kw?w?&Zc1z`|AtcsF%|)B0 zyx@;~#88iX0n=Q9@qy2uA)kI+1WU?9SoFDj&)?_M-nu&Swo^dD|3W`pdZ@zpF9`Pk z=nX_9L)hlHY$tB`B~c^vgq!rrer#E1%UI!~oCBjZ9HwlcAEpc=rexr35RYUEGBXHp zwZKF-Q}lLv3^C)~ZME3??sy*;O@v~Z7sd(na&eBHA+*+j zoY5%&Ax#N=5NGE%kE&^bjhm`mO!%B)M!KWbM(Ng0wi%|Fev6V%^HkgaEqW6Bx2*4> zieuxNM-V+_RrDTbyG&l5*KJGl`g82)4AT`RzK=W~oCFso)}O3AnHafe$MNXfPY%AG zKrw+D6|i7I%Z6`fKTTm4Lw^c5HsLmc7~<*uWUd?NsWrq0J#(5izJADi5_d!aJlU-* zedFYM3X=dhk9?UvIEM>UVy)>CXn19@$@6_2*~|NCt>es)?UvviZ7@2wgQ5Y0ch&8s z_E!M=AHA=+_uFcdbFEpie#hqscEm%0%{o9bSrL6_&2CfDR``yu1+lzCZG3B6NObTT z&jR0deLeuB9L4%v7F#kcBD*5D;=H{i8X8O!tS`4-UkNp$B$v{{uTkTgrZX@$Y zx!T(ERrV&@)+AaZmUM0y>-O#%s+grgk1NV3o;Cv&x3~>jn>ugLucdxDz1n*_0rRzn zk81}VqqGRivZy(yF|vug*H~PE28rUMl%IO0x^h(;q_#)HLN;Rih5G|0iJ-M2;s~dj z8k)a!G=C(rpYq!t_)aF}+YHZ~Hm?Fz?!$pR5&Z#n#J{cpLzS6pI|oPyX42Tf)JP-hf-_NcgP zfFW}E2_t)sTxU1>OM9S=-qY0kdj!o}gh*DM!_B_mcuKbUdCL{7m?)&Rbin!&;}+vsOA`W!k<|07IV>5YvlqceJIW@4QgImSx?0DVULzUj6l9u`@WSV2j*?)&<>yP%c z`+>;PJz@N>Frt@Fi7}fBd%!t&=rVYv=B`ekAsVi1ao`X}+6(Dl+yJ31>POIeY?*K0 za$3L_JG{)>Ps7-e<3sk82#X7ikntzo@am+akUOB6EFtrFN8TN9! zxt)Sf=z{9!UX-ttt7M96vT^ap%kmNq`~o2Z8HXR4O_#zl^^vggD)DP+Rzjh_sEM^* zs4e-TIjbG>ptDr2Upk5MK{OK9@EpBPa|*d*T+QRzxB1-7r`(>O6Y=neEU2gKMuYbc zkv2q2MMl*}?50WHg}gOl>c#XO`QrmWL*x%7HxW)}zrsLXOjv|J?70*}we5!8K~oS< zsB3hTxe!B<2JVEd|ZGM?LgH zH60c@0wJc#oAS9P+k3Ixu+WQsTpn+|q*J#*mw1hoFdQ+|Ca5;N9l>tJyb8NzmP zsoo+hU=hKtwM-nZNz6F2$DhynGGOp@1<-%yPb(e{RuB&-O5|uoL3uf{07lABGP)u9 zqkZ8pIg%+a_xI@q3H!VfT`S8&e(Q^}2P6cI?e%hOH@#6t^jglEEd=)X9H3ola4DvD z-1H>hOXzCvF)v_wNIs+Gt$A8hFs)8k`^uqw;hHqBx368t-EgHF_SP^I1~wbG}AEv`XyFLTxT$v_cMh3b{n+E_NwEx#k2A)^ixOT~ix+0LV}J?rIZ_K^5X zD9+vuoj>+qL$~1>iXeFe|7DU8&62c$w3+?zWD&3WO1)F$px=;^C><%v#Y9+byrso_ z)rRB{(F8u#-$S*#N z5v;Nw6QR=A z^>}vKDbCoC@Hjned+0JIO5fFPhPg98T~oTL(b4vRI!}dn84O-@whlPa8hxZaMfbT@ zB;r;dm3E)GCYRx@yoKi5Pd|cz=!cy`owE5Xwp+n8xSr-OkL?*zp$; z|6P0|;mcvUn+^p~lXMKK2Nz?#Uhi@1?`7w@D_1ST$*qt>3?AWPn>@trPO_F9f2ncp z-_iB8gS%J?`jdMxu6?ww*r!5D)N@fP4mfgl)1nTFdnY>X8ji}oJ#{2?SQrHCRm}&& zjS1?JE-{(BYzvxNT8e4!Zx`;i)~O_`ABdC_0g7hw`z%<1=`?gx)BK;r~gNzUJVB^0IVZ4=QDsGA>) zyD+rcd3HcRFfQM?x?+azm8)>97gT5}=@u#=J9jk)^#9L8P+B*V69!X;U=3 z(&(}Yo2esc$#ge+h)n}8S1UNC6*WLF_3q zip0GwG3dw_&Ilo%86$jeKlc`^6sBy7#M>0;T?`e|U&u;ocictWEYg)t=U~mkL0K_<(ZTKJVw@tWi5%%NBH;4U+i|$OGyLJ>zzvWHhq3CS-R0MI^1+Q@e{?h9g8ecz1+i{Ic?#QuC&%lNRs3 zE9__+qN?&I&G~RNktP|95Oe=F9}0aP+si0TsWU-on$x zs?FA0*6i3Tu{FZ@V%M8q`RtYt&Jc7i_xb)RSI&57(h4DPiN~8+ZO;U1+jSm_#`>}{ zTAJR@3mfke$J#_?qaS|61w0xzsh(2oeE*@in))z6Y#MS)JOlgNi5<2F#F%S4~oWM)m%YPwAiO zaEX&-fp*nbA*U>TqVqy<6E+MffpnSYMU+Qs_g6PkJ}!i_}0+a6E$`FuWC zTral46kq&M$9lN@65Me4dY$a^#zMGB&3Jptt6v~U9L(g)*Mw!a3pK~Q$u3lcIfYE7 zB9s7{td;3Z3)fnXa~Ke6(ZV==MKVXu!2|3LYXidIB_saQBXm<;p+iThbnIVpS; zn3gfu=6cSbh)`6(4bBuaLM1QI;4;+dWTD?_P5d$Puu!BN*XcmljrOpx>m|hIJ`}n# zzlT54s!j~BMLmR+c%M~}Ju48)-{mW-)^34&e>})EQ-S#rJgJO@80Gq-&Hj4SC52(b zPj>*@X_r#|bVr28=|FRbMYTUiQF-Uwq0{2&io}L)f9PxR()C_k*wB-S09Ace3<(G2 zM+vtplI=$OD{DDEK9wCSOG@JMGXw%5OLvxr=gr-6|DlFsG~^s_^0X?ccz^oQO)Qag z0(`G{+{Nr{-^w`s58s=oClJk%b5U}E=Ao;H3tdwHSLq`|=2Q+(gC)_0IY~d$QjPFJ zyTm6`hgO0KWfphp$YWGC8~0jdKGFq?wM@I-!>y{m_OoG*Q|4o95HsRh!crr3<^In%lR4 zDA;5Lr?$pi{U5d|IvBtfkC!m5g$;rCiAYijb_PBNwnf?+jht%2Mpe)KJQj`7-a8&_ zIo?rP;18+nwJyh#`OZ%_h&)7N^6;Y$;0oKCSj;!Cai)hw6vQv{WXH(XTJ@@p&E3 z-a4#{6#65q)`cBh7V^L)9&7~ajEn+2tgSJ|$LztBRTkIu-cSG3b4>E}$#|1G&(<~I z6;E!qLz{9eg=J(kFr}2Rem<0*m;3Q}?{y!nAJXsD>#Tcg*EC(KzDg~RFfqk4Dcttr5QGy?A|VCSb8|LtfJtMA}wl&1HPN`a=_jY|Z~6YO<>OC)@RT z{Cb|5O*7r$_GF;mY$~hu147OzaKdDHZ43{4JoWmVzp!;i5}Zp&Vl9MMST|kEYzgX- zIK2-kJ{)7el#S7g%qfhqe6EabN03Gtv8>%yZx@fJik!pEjWBF1IH%Ff4Q)1I@8^bl z&jy`l$lLMyYie0C$L0oP_pMmk4niYm%2S^!m7PaYw{wYP{YE~vt@`I_82~TY4-NAS zjMS8`cQ;YH&DUvh(uR@{i?PE4O(JES)LRJj$Md^aW5&;lotN32Q0J4&5-yLE-p<`* z`m-lnEi}Gn#LZp=ineft6oA>~zEKzlkzXixLr4uDCqw`6c|N(9zgB*b-Zz1!29$E@ zEVcS$Mw-CP;AOT_Oes(>Y3~M4i-GF$#w-D^kKR_YR1q013e-jZP~X>hJ0yJm=GUvD zeT%nA9YY0$hP1T5-bMm^&gC*kYptnris>$=<1JQAO6B)8B%M9Pg6swzMO)9eh^LK2 z0#5g9ESVuTg3wy8Da2E6d$%<5gq%L-YaL24ghitTI5$A}!DlS(ByvPL2^Xa#gE=4W zr98gzel#7E#8xTrovgDaF@O>PpkPQRe8EpUv+Q!ZW0a;|G@{1Tau&E37U2O$cg_3& zWxebX;f4+m_;&8%_B{j6-eWFr${){zY*Fi>5%hTveX+Nd+eaR${6=53P~~R^vXlsz z`28ss1rNaZwB`12yX&x;uWGL*J>~@aRL#M9Cg~QNA%n+ldp3qr3bo709q$~V5%oZ{ z-1UCd2zV~a+~Fp+F7i?Lk7#W-+{{{sj?D_~i%CVuiWsJ!9}-Q|YxkR~dY71@C}?*L zXNnkQthhbJzYOAUd)pmUKAhU{`AgB)?YOnSUJ=uL^-^l5M#$Cbz|^0v&hdEbuxNoQ z<8yyj=+pLi$?wS{W^!qBU`#nBC)aGhBQ9lI2uB_lC903ty0Gog$rk2{uhn!voD0m( z9BV|jr9&V<-&`#AoVtLAj?Lirp{_)5ee}R97<}!1J%VD4Y5#_`_zp=8f%LAZw$DGT z;FwBlkr=2y&1LT^R9VuOV3OWstI=eAv4jQoE9^EG-RNX=Hn2E^8?|Z{b6?6un}l@$ z>N$`qzc6!pVPb>BdAOIT$xf@yS?N&~X@Rv0)&k$g9mmynC(t&uGF*L6KXNSOyqcgw z%vwd$GgW2`1(wa@c|Q@CVp6};R~HOHKhtKwUB%E66X(5G&Dc0`%v?MCBY6H7BrKJR zF@{WlOx0l;N1fH57M_Zh7W!m5!vI{E!_SL=T>!2!KI#c%;0#hydwWZZ$_s7zkFzOhapwo+#MS=#m?+&d^Wq?>c{CD6<73~dp9)giHFLuTL6oA9C)OlEU3BC^`N(YI$fswqls1vpHKH& zavufNMYZtkhVu!9{GFaVd!;PJa@s$K=@J7o3}>jbwPo9r^Nnj9t8G7QkNbvjP+lcz z{OlhT4I{E9ehSok_PCW&S8}O6vsP*s8o@!9ovqziCWuWNpzC7kx}Q(?VIXG4@vq&V zw-c3H?b%P}{82>kAxRp=!8EzAWxaSKpeDj-s>K&G=0U5*xs-nHV;DOY@3+p`old4UEd!24*%;AHR1HRT%6n4M5OxM2X_L8GAn8 zOBkF5BhKGiHec}GA?$@h7%0k0|;B36#lRw@6o-Fwf{W zS}3@)zA{frXq2@z^my9BOy|+rOHiqy*3iPbR}`Ye@^9pBDnWg3{TX|tVakb95oB|9 zVXW1_Qb{lG*Wn3mbQ1WXNrRKMz+UmDjG!SzCu~lIypIwt^D5dRkmA~$fbX1^6T837 z7`pO+x`M>n#t{k`LXBn!0BrwgQaqmaA^#E{$UyTRk0Af|70qrlD(2YiW~BS@X^W+Z z_*Ptmda@z0y?6!I8%CJE^lA=;-5(uCGeF>`rHvTxA7b09@MEW7Xrvwdq6$ur&s^w( z?-a-A^C~LISMK;X?eHpqj6N(QYLAWGJ#Fr&fnXn9y;5#QC(fr(ge>M2A}>$h%@${; zO|06PN*u-w-|SJ2j5>%GC}gzAAeyv-9w^&_M`XW|nECfnT%6y*gk|GC-jwMh#(zTb zpRkPg?jz8~!Fy^T3C`)RSp@ST#8AzW<)kK5_^KSO+=o|Y*gt|`w(XQft!iZ zom91^nvWLG%BSR34un{c^>)vbiivKsqGNUVHFg*HQ2B?-zA|>;pfqZZ5VKn}w8wa-jGAjHBZaoAZ0lI3 zWt0SJyEzhsf{KP|J_$M?V_JY%QAUwG=$za@J%8BK9Uh5{wM>PS<47#VDF|KGR`r)G zoWs4UL8`G-$>=IDR7-kPzwQwSmjrY}5DeceoGz}i+}ro+ia?npMYEd$rk)IGsNO(; z9Pecn7r_G!>rUBmRsZ*#{kY_xipCs_Q(V3qo>$IsU12X@pU076YWh}<%rUhluPyBf zQA57;lT6TaEfQgb=tHE@=dabt?Y^y~(L|{B6e1#~zhAk{goY`yR8_;ZY#%`iABr`wXE1{DMW<$BUyl;;mjocuivLKT>U z8~*7dUBt`)UWwUEZs+W)frG@0hDZcu(Sv#2;ca6) zRaM3Ba6E!uS=@!We#A~Gk~q%>WJA!JGrj)M&U?d&%!SjS!#@TGB_hVKGC)bz%NZ`; zYgsLKehxz>GN!_L{jDxgT{+^0XS z-?$|rvl0)^gxBTduGA^{g2MEV6LFmYt}94DC~O_r_dZ2BoDPs;Y6CL$L1^=*U6pDZ9})JG$AV<{ZW3zl&K;O>9+&HL95sk>+0IMbF2hci4{>@ zFC<-BaO_zCB>q~(zddakSIFguSQ;dTQPO3l;BhN|6`OHGc$_kJRABL2gewP{@G9OPENg9r1v?s^jg(yfS8G$3L#W|qJ4=iU);n0W#_Wm>GpB=dO-l|saKc{~l_9UjCO z;|xpi!Lipmyr{_S#cB7z`ol=fMRP#_h^9p0RElM+#$>P-B!TwCf5Fy*=L&EwmIPH9 z%14{M?r#96i`6=9-nY7*zV}+rB065=y9^Ci0?eG7jBh3A$)OIQ(PlBPgI$r~kk>Ga z(&dF%x!~aL6y_QsI#a4bv1P_-nx-gwdry@}6hqBpc6?1=OL$uOxl%CTr5o8AHhA0? z4IKF7(Z(ol3ntB1j*d?e!`DQ>vq zR4M}=g_U!SZd?;X(u}fFpM)@_hzkLZ18T|(C0$NzhZ`D5)>M0&^ug>_ld{Rlf%24Q zI*BDZS&BLI)wyxMnx4s)H_gSGK;0Q!M{86YO3gH8Qxahbwx`W#ey&mahQh|Dsi|UQ zo+j0T>-Sfirmp_68<{B37mksEoOfKG88)@yWCj>t{FQU;XoD^lpV}j_(IKH#GAv_@UiHqId#ZD1_LXyejF}Z> zGvES@P4r?k&+PQB`{au)Eh|YX`tv60i1>Qy4|WFH-Xl~gl1vz5c&}rJko5ge@%Q5DKH*4uN6^))5M#d2AkzI>R%$-3wX_MP}s zHpBDPd0}M)YvXnDXFPwLn;7Y&?O2-TC231Dhu_T z70|1(#ZPgBx99R5F5lW-KH60z%B%{%ovgL%guzt)4|(VK9BH)0>xu1&olKI6ZQHip zv29zE^u(Unwr$(C?d0a1Q}=(kRky!%?b_Y_et5gOYp>sWp7j|Al<-wG)xV{=V<|y?Ny%xy-I-ALiHz39vhbLzDun>pQL#}ZI^#pf4xm3P$S_xVul zzh!TrUFERVVvrF{ltXIW)+k)0A&NL3$p2T-$?dF>mw^nm+mk;fZ(&Ucf!c5Try%-q zcx(E$@Sp6h>xTWkD$faBl%itv=e4oL3jTOymAPnnHq==b>CR73#BzAD7SYohLSJs< zV{to2=C-Kdbs-$eQ>GZz)Ay(VDLX1E9++k_L`sM8+fA7@j zSkgJ4#x^QK{{RSORBsKoPMzS7i?$zF3a1X?+?jGyWs~DD9-(Ye&7{$iXS~?N0qY$; zEa>eN-dH$5`QCPo-xxWGtk~$cDe?Fe(rE#X!pFfZ2d6K_Lsx3-#|Z{!0_ab1AC{I( z6;s;-TSJFxbu!>&OKuliKISg*59iG#W7_a^2OOyw_-kE7<1W@i49Xm6S@YF24AR13 z`=|A`8x-Hk(XNT%k)hq->BBRsoWj-o2a zdRoH;a>x$99p~C_c7>x4?H7kJSG-QIx?beb*!pro9$*M^`aeFdu<0p?y{N_~8H2EJ~ zx($E#{DpM5E4i(2=2i%ngafP_LAWZ7{lz0%Y0p=qPreiwZTS~z-*4*nZ;smNRO z)!fvjqCK)uSloPA{%-8`b|<((J_Ic$op|4WfzK?J!`emBy43Vs7nK-G_k~>gSg|lzm`?qw}qg!eNLS} z_}E=$1)pqp{1+(}Zezz*I!^mkt9dnC#0J>LxW+XmsH!SDxv3gVh?*P$YW=&W9H+;; ze+V$Wq>-gU1aPu@^cxh7U_6cJ5|>5V#Smd*VJ;Tw&NF50#KcsTQx$%xQi@8RK{29Z(|#R%2S(2UrzCbtT{c?Xp@kZy$5{WsQh?$IOI>}gz%R02 zL6idMfRVQm$!_*_d15B z`VJt%2Yl*45voh05oi!#t(NB33vr~v3{|YZR}3_>kku_??QfaS1=TcH$ir!)B^i;UgcG%&3X4$UT# z07vSU20c^K9M`M~=`eIYk6!EW%R(12@I~q7WlU&w`#f@Q9&2VAJfDC)2rT`a(#UZN zPFM!zo#qlRW_G9AyadCi)6?~Np~CbgbhR6rHh38YJU9wBWnEJ>>a&838fz=l451!lmuTtCmzNx$DSiDS1UrnG%>|fAbX#<&FnXlWa&`eN z6?t{c8c>D=IdoIBG;}2jX)9dZT+47hfuYpWvrKTug>JS9gX7xmo0*btbnp*|7w2RgDVj_BzswexunsQ; z=?aktOpc32OWVhpvea`(w~!N|882pUd(Ai-0I1yRcHA7taQ_0j!<99)QuH+DhMAnO zu5M&#&UMy%4*mg?s0}RRwrBsnD~+!&_N=TVXj9ymIyzD_bT-6DsA;LFRSj)J^RPfU5&bsM_dy^jQ>_o4fH|%Pe94phPU1f04U1 zG0SO+iP{PfcQNER+3DrD68<@zId3~IdpJR4@Bj}Jzh7TkPuwe<*aisx8A}H}%WXMf zOIxH+zZgP-)eUT+DHr)A5G@RdKql~7;b^vqu7I$+Y$?O2+1M`i%eW`<@JzF^x2yt4(}BXtf=Uo)6= zD+r2Nr5J|%9Dj^|_3Ly|G1}I9qINeQiAQM(MbKki57st83v`Lzw+q!4(?M4KA=a48 z5YuyceWRX+%h?cg`))X3Fpj|@(|kI39mM*zl-x|A-9ND$h1qs1SR(SDo&*}s1h8|oVw zxR+raWU@C`%sN@oI{xWxw6b#rDCg({Xh96h>eVmPybZs%SoM?lvY$Oea0yp2J?bWq zi)b&pDAgVT$LjO~#2!(exmfsT^;DLYhhK0xB1X*gC+mk#Z9Ki087SbCw|qxpWd?s@ zt)f{AD5=LkR8$M< zwzjFwee!l3+C+ZKe+O0$YRhT2)x<|B%&(`b2(L>|{*I2x;dE^Mm7+%&gJr9gsw$XwM++{oI48_+ z!=pxfq)3tag+Bg;Z=uw>v*7t7hNjx7>8P~sZp?4!_w7}2D}M^yZ_>5(#mT>LM=t7P z3k+&+K`@F{A9djHv0(8XVFrY&*&ZnVb%ug=R{D~pt-D`EE zt&yww)L;oTXzb(%e$JB5v(i&AnbdC@*`PpCv+#d3G9$=n&NU`jVM5XWXk()P(8m6W zVy3D8qm2jtLl6J|v>(uQxz5f}g)FQXC|1Or3Lh*+Iz=DMoPrRI%mpU5VGT=nJ1!iZ z!;BT(wf!u0`!0`%*j>;w(q>=2OUUn->`&^Vm@#O;n66S>`13uE&zPefB{l-w=*w>S zltWN-_KPErUn{3;m$y$bZJI4tv-c!P;dgC3b{a^AGtBztQ95|NW3i|ESqz5dbHwvj z&m*5ku^GQR=+z7YbY8vR0|~cE9%kt2L`Hk(y6;W*YK!m&Iu&gxS}S<0rrYa!$#>s_ z-Ltnzuuh2w1y82d2`012LRHkOxJC(!dES&Ty|^UIS7S!|1F2_2uU&7g4OAQU5!CZ0ss>|2Tb^*TrLrk?=Y0NPE0%XXWvB%u+ z14dx7HNUUrf&eD2UWe<~(I|8fywYKB$)+Czl4s0piDv)5%w)Mt9>34|;2PoOO&fp> zpU>lb$(@%P{M9VHmK9KWvFxXu51>M~jf13Hugq#%Xoup-@Q(dLn{~eLa?8JB#PlCQ zJ~S3Iiz>T7n29|^W+%7%?edKAzRUY^PbPICM7yX--=6(8M^xWIwWdr;IuU#l)7456 z<&7|(u6Ji3g#qJsgqs=&4_F@u`8fBn%U$}C-c0F!1=Pf5v!$zve~DOF2Xl`)p@Abr zN%~RD$(qe)fi-$hAc%u8S8_diG$fJ^LxbXVDxjwJ&QNdLt?koiV<2075|CW#`_;CvJC= zY!XLC3l}OG*3+)=6#;37tIPu5xg~RZAiJ0IPK%KYY0C1Wn4ayEsVqiLE84D;X`jLl zD+TMSYnbW(s$HtfBO#{GRK7Kio}G5EsTPr>G00* zMz`={f>t%?B&J?#q2rw-p6eW8H6VVijA0~u%X@Yi1((Uv8}jMjya5ng^ZnmQ$IGMk z5dO7~RW3ug@Gr~*ogd1`mccL=-TtZN-O03fiS0}5ed;aPRI|&G2s|-yOYB%oshF}= zl{LytVI?zlq7V99I{2i>Z^};*#GYSt>Ezp^yA{`w* zAJHr~g(^<|ILD&g)6)DhFTkg})UWN{y%asO-8swW`;$faM&H`gc8TuU(up)TES`@j zg2&*jl2QIvyR*19yK3`T8!v=x7TQJF1tVv+y3@rZ+H^O4szaw#`tCr{VM^cGe8Z1G zS;mf;pCV>3rV)3^Ra`C$4|`WbE>Yj&G!!;oyQyS;e7SKIdyN>mcm*uADIIqH>f^mC z_Md9QSk4me-MhSC>5>8`GpVmd)Z+A=|5Qp`a`kP~=d^ms5iU=M_!0G;(efb{JuhSB zg$MH8e+U-4*Ly$j2D3-M6ESh{>?{)^IXBMvr-+$)EcvEf3x@`c{SD#w`fJNGntkhl ztgQ<4ahiHA7!viK9BT|Zd0^wCC7(*G?7F!~PM;I?Zq>6wops3fqy8M&OD>YfFQ@HL zH|MqggDIcpVzTr~mi&hp2#|@Z5j?&f$6sTsT662mTPtQX9;^rEw0eqwnvT+2Ene{C z;;~qLqlmH;UELZ z%;O0&{6eTtgHvogZjwj+)Va-%n4ai&%eC@D9;Kn&)A_!Sqw~PjQR-BXlQGnEx3ngU z1WYA$JbNUA+l*k|JWQPj#EeFF~wx;Opo0;O- zsItyYcl=c{mEVCmS`98DT_vQgNf~R`cb#5Be8LsgG5CzO_rvxuv5Y6Cm}+**zUNwe zhbv~M{lwh}eON*svk6z~c$MaF7nmsHO1(XkgEIrs`YvXV2{A}Yk(?|Q>u$I5`b~>; zx{aTbYArJ-V!A&AkU|BNZKPZvn4I%5F%c--QGwSHw0B2t;W30vpLu;!Q;5c94do*v z%j|hxU6f9Um^I*bZd0cXo>Oc+#zReGn{7F|{eN1z4jKp;%pEbk;))ydprAHZIM{22 zhditv_bnjoMqM!EH5@IDj==Jg&)alWo!^pQjN4q!7A^LZlhMHUFyf96AI(pqd+@o& zmwm$)zV2o&eIHXgDKRKy%3#y$OzjO8CSm&CT+UjrOXsZyk@l8p#MWMdz`eu}2&UW2 z;;t@F(q%te@uRiHzj!Fh51sX!Umv(LmyV~A`%$9kPZ|82SoV4YCpTVWu-Y1CYxc(N z!j4(Eg3WetxGKdb7AJ!S35pw^VqdYA%JgkG{``X-h;*T;iGYh?IP8k$9hUEB$`_9M z{kagr3!w3&iFUN%tlzziAQbD5)oK5fLkJtoXXbd1TpQ}d#$k5b8<|bWw;7}OZWeF2 ztDcI}le%QFn4bO(+}M(fiB73LjWvJ0&zk8;T4j%Rr0Hbvx~i4*F)}0c)u|+v^)kVL z#=9{$eldRy*{7-^aE+LoDxy4h#_E`8?@3^09zr}t*>c%Au$;QNTMc4$=tt@RwW@?C zTy7egZF9t7zM7Y~MsMF=d@3q(?Qr$kND??kxg&?fz`xwA!<@$BI4|=-KnK%wr0v>8pWll*2r%{HJ3;2QKh01cpT67!xGk|bn;Yh+ zck~T@xqhCeLCmdBgxElNJG|T`eppdFzyP~;3|y$l+ji!_WZ+p`*u>@uoHC^Z4eE=jPu zBHt%AQf6mxX9=JWws+T-Ac;74YGT(xkF-K{v?H7{gVUCMFvlHfc6;C11jo2~h(G5} zfXEg;dh9fOKd)dP%Nh&rJxYJvl9<&d6=K9<-^?V-B*0x|Uaon4ti{FQ95mc|v;F9h z!nNZH^YS~%u&cCG#2Z&{qAwbIF+w7FKQn(?2WDHpbeQxU{`gE%-1wM2O73bK+c$6= zh$&cOQkeQtZ8n3V>vB2avW4frP5Yw=Ej=NgsY=Iys%+*sVYCzlui?R};hQX!e}l4c z!4S$y@K5>eX)~LsOyQk^f-F?FwX1BaHdr#@u%Tv=Htj& zKC6XSLoMx^OM(*;&dU=Jr$ugNJSBHEJA8nAFt9`R$>BEhf)heeF6UNRs9qOL2X5o+ zkIT<*N-fv-XH9)}Kc&D27so~>$LqVxRXeJ3AGU)#VUDgEt>rb&(vtkt2^Iq{BGq1^ z-dJ-sMpaTLm#gY{HEoZK#f=c$P5}=xid5RK+QR!NcCJeksGHaBV_+d8bDvXk7RO`G zpvnAeeE(L8j!?U4XMaH{{!eD2R+?6M57p9Pu6tvbA_4wi|FSqZayfO zT#K4^>5fLdb)2Xc^B8q-rL&MEX{iM?S~AALPjX%}IFW@odD`^Xvr=Ip#lEGpT8(UF zW55H}p-nHEHbh+J$Hxh9NIsMI>%`w4uCQ>D;mKAaCJ89Ong*EjTj{*I&J`Ay&q%{G z>;pl9qU{hXba^D45J;(S#P1M2t(RuMw)cYTEukJsXh(E)A(6f3@b%fLRu0+xh$ZB9 zG}s#CG|VZ)t#B_!H-sQCJb5EnH4=vzn4nYhE ziH$0!w{7-Qa(s{u+b+|0e=cR24vfOPo;rCFq{>X0uGVi3%i89o!Dnlz-{k~CJ#KPC z+nk$zL05ETPE}{;{VIq)Ahjq!QY!)%sTi8*TJnL_vylg00TPL7`VbX&4-3 zzR>j^Bzl zi)}kI=W6N=CP(wG=Stnq7RAzmACnvZ94l6-JdZYmhWM-oWVD)|$!R*fQGOB9IP53y zoNg3dg_Ct7y*J~UIbUtoUHJ=Q&fD;>eTquk7y|^%e-6?JoVv7b{YdFUYYTXS8yzuY z)E&@qj1Whg;ILzwD{1KIFor^cmDqZoIF41sr>I(g5*aj^v(O1R-id#hgLFMc=Cl*{ zJf_HwJ)R!dS^73;a(Lf_s4|;z#x%Fh^msfk^4;ic~i9+TrI&?_OJQ$(g~np-8PbG;Ted4 z8P`XXG?Ha_&Vc)tg!9%2wi_0Gy-VHGx11vJPw-zzgJWtxyT-0L)Yo<$_7T$^!5r^U z=o(~-#eD$UTJW;^`n;61A>Z^LC`x+6R3M{3(m3vW=2+pC+$2qt`J2bDt-nDty+^M1 zg4qNV3>w;kRWvO~4!P0cFF@gb6ARm;M1yJ*FjNDv$+gXe)bsZ$GgQLCB?bU;~i+-xJe@kG$dQi8{@{eVaYjuOF(QA zKVNo{u=(ih7QAr_7H0^v}`CEA{o{ z=od@LjMMo>Lc~M&@eH=={q@@eD5qea-#Fl_8jZ1pd@p$%()h@OD3IdC6RWi^O|%q* zM8!_)#f+q(A==Z(olK?!rw!cl!%*HlHX2(P0PslW=J8!)X|>CaoBYr|U)3O-zQ2I} zCfCDUuD)8k*y8=(={F3gHAeag&2gNT_O^l4I81x9_tlT&72pLF-FtpV8zoe)H1icd zxQJWmq~?;qv859gnk zL&xn(k8kz`2Fs;Qpu2KXs_FUncj1MJ5uA09QupybyVYIzZz7K9J!>5O<@@syb0LWy zDZWJ2TyuzPDwnDI$$>tmO$*uX?0mvETT1Tp)68^R%-CLJwS3}CJ-ht-PMbP%OXCFm z1souguO{evRax?q4kB5}iVe=BdRy%7W-n$o3q|YQtJbe+hiBi*?!2!g7kk);M)4enpCRy-~Exr?)CyPLQ#I$W?9XO*K_YjkBB8(mf%0pmj{Ofu{CgzdwBg-<>#AKb_*_g z8L+~{N3Iq7EaSOELN{25+Fab=tAO5H>vte}Ea$J+wUas9G+f7Mzq@i{&%T0NLJWIC zZWO^tRN@+StKX>GxIX~43Kq`W$FUmCS7V2HuZROg=I0A4hKK|C9pKjHbY0YvxGY>) zV?Yz4BF{dmM7PUfqy2kSpS<E9a5#ZyiN;{&}1(F%ep|{ayJoAa)#Rn zzl#PH_P6*_WSjTfocWjZl=%x6{9bD!X8pfvO``@g?Hj0ITPvP#fG7-+Oo2ge!cihhqqd5ORdK3Qtnm2=S9uWVhKH4Imp2u4JvVm1O z`LE#QTUo67-{B5m|K0x{?jZMlb(Qr0I~GEUUBTvm10)o{H%0x^*xRF!AGrVbSy%tD zeEL;QmY^#C*W&5+pLH9wV%PtcUj+ZLiawoYP%-}Z_3oJeDZ~H2^Y&-VgCkUi)oF)|mh=b01=#kiOt>=zadB%XcTw7rVHTO^s_^f6804*VD- zJNEbU2s?cs(Y9oU7{!)XoZ~w%ZWjv{*+PcA+si4(;5kuXSRa@6MnB~{wue?h0OItr zNTm@CFG{~Pk&@*236s7#ebk@GPE6-nnB;}nzVhAXpJYGF^Q@?B7@U_>Wqe4_g51(z zoJ~1^c66gjpJ(bem(C{q>y<(X&m}K_Hi|O4I5#n)6;k*qejmC1zH8ZnBccP;W9I{p z&}e#H;H|8UiHi%9kgThqTV@W8^s}+QXKpc}Y;>Gb zt=QSGSY+B#;ScPCR%65pWD0}AkCa211{Qu+{YT%0)&45)<+z^Zf#pq(Vj6xj`Nyxq zj@&ZgyCH+{K7&t>3YkY`Y6@{~ZARfZqiOj&*r+ngt#37YN1;7llfzTfPomMlqm~Aj zk9$*66Q$9ABQ)vxxDqu(23npFZIR~9hQ&gNbDA<8Y7fVXsK62H+oMfyg(Aflk;jaN zXNsxwhcn-I*CXW`|GE7Adz?g@d4E2K_#RutZmev=g^faZp?P}Y%q)kcBPsy zE;i+SdQ{as|TXK~%d z$t3XdNkND~ZJphJIPzL0zluq3jGuUA*4WI0_uEzc?K{3t1{{16I-L5vye|mjxhy+h zfYqF$XOkn?&SElMj103NyV55?W-?OuQ&*0yWTLDH&&Xn}u>zGr)aP*dSg8c0CSxM% zxrYtC0FD3f3!dn|Qbot4j#FAqJvo-Pe#mBjlMP?vs=1?B-ti4l$*jU!dKroeFmpHj z5I+`*tx4VFKP_Hn?f7uFs`Qs^9XvY-$Q!>k z%x3Kdf1n`=@GiTz9m_?bp9u=TDk|Du z3Zt2Qwab)-52z3te_E}^h4UK_MOLb5YF{g7koatSs(7sUbr6WFU7?CKMU z`zD9FLDu1HL(@Z-cKog*1A5_7a2k||fz&$>?AtvEDrIWJ=v1i9#0WnCztfU_ne|8H zUQfOHvHZqBG!oq5w7zs3Qy;&Cn3KC@oxe`XrENE7+?W0%5R@K@U8+W@{#ym-Hx>db zhP0jct*BF(mA&l6punx^91{^}+K)dn3P=<2{nq9>`$vA+>G6d%vOT}opqKrNF9CTT zOpk%B6af%|Wo0+5Yc9bE6JHR9ecX1am3DTpA+zBUcEg}Vpkjk`Ce6bh=_skWPK!O2 zUbhW8y-{4~%DdAqcdGn;yoK5dF)BBf*}gON@U&Mp$u-zZO+q;7>aJ(QNONJ{jR*64 zOo@+)zOMoZP zza8+8N3%al@vhE4-fsC;N*ZemL|ZJd`=&VR4WXyX>${Z#8TLkzNHO`5Z)L%~!E2z+ z_iRTCNrUASRntE6{Q;NTS7yRM=`l-=%PjH~p;9Fki{)5yczmk;xkSr~EC67Tin5X_ zc~(ngd1gV9qG^3WqKujo9vn?;nUhnCk>T$k3(5_&iei$shKdR~dy|usgA22vpjWO% z>0BM$nB`xcP6?X*+SD#%)qaKf9*S-`{{qwfk-r95Aelt=NVhbjG%gQr)of(7wi%vs z$0kw@v4|rKEubhuM|It5FSVu&9zrO<2{Ts1RYZh@*z1o~k(FEMOfk*Wo8Q`#|4>l7 z7PA0&keSnE`3Kl>bt*cpeLO+oM)uE*pP!B074>O*JEnourVFN;Q+M@3H9=;7qQWJG z?PXmQ1zlVJo^9`)3|3N(N>9yct+qCMT~oo{F)^VhJ#G?g9^%ceLSfXjudiqP)2d7i zN{?z|B@6{gspa4;D*mSwB6+@%k(uEUygId#COuS7KYxh30n!h@F+(40S7bt}A$v$# zp_$WCq5#bPt0@`jnHgi2k|%mP_Y1kS$`TV98NgT3E8`tptfVNN(i9aQoa^7pLQJV% zkP%hl2Td^v}Tq0*#m(44t!-rwDjXd!>=@(>s;HmwsxTJE8xbF*y=8+Cwz zYDh|?s|;S5m~8gTbb)OE8D>$sGopWFAXV60p*58_ znxq8OXAU&XYC(;!LZ>{~nu|qBNcVBuqH}SvEhJNcY$;VjW_g-vChfahDxD$XPvx-O zcsYovSPr6Z#f1zi8ey-=X@xJH`!|2At<5(%y)G|7vZhT<&rG+nIX`<_ZU&*2i$cz# zX$o+x42-B=##`zp0*OzVH<(2tG=`PI1Jw$B)ij*d!k?NYWn&8!1|}ZsieXY#1XK5ejMrXa+G;wHwO zXUGjrHO@sQz1XoK( z+72#@>STN-ELaV;QzEb$8v2RlX4e88meU9Y8ym(_R5RiFS5pb|@>jK|d4lZ^KL3OX z%$jDM+&>TqppbLkH4@!>Ojv9^_)zkh*aMz_wG4Ny>Af2*9$&?GW9yP)ejf61`lVwK z0L*NvsK;7>6K80XdWM}_pbVB6QteR?D^cbrlF>L&Tecfn2PtVekF6`M(AGy zJ2(H8hn@8b3m5kTI6gr*wO)p3%YVJsqWcn;jqaekZe8a(q1V}zgTpdFP1$1|VFp0^ zpkn97+~2uLtW(DjdBkD1wEx4$sc&pERMB#K_Fh)%A0dsgrn~h#SDqb7(klN6h&a1p zJyZXg_=Lll>x2vN@QjF^O5){oDgP~QNw99UUQG8HSc+E>(IolO&{4LiPlq-T^IYr( zr)?_PDR=%mC-1Zg36v3GBX?_i`4krIo7J3HsfyE%#zDQT;%0IgY%C%>V7jA2!;C>p z=PXp-=aixG_b-TGGj;nU<1nhqc>lyf~3pIQ3NtL2)v^)8gjdg_{F>NCyJyUZRQqL$iEDK}1GZzEB6rb&9l#}5Vk zm0b@qpRK9g)4N7(5Gh(7Y)(LExVQmXt%{|U#?#rcp~2AaSfcsqoH8^(eCJ_JG6(ll zhyM$yeM2Q($@n*P#vrRhT=t`f`0i(;2kFqnvypy8zG&46FN;*FPUVrK2V#GOX?BHl zfBACkj%9sgIniFvYMyCuY3uc8XkQ2i+=%4r!@+S}m%baNe#Kn3bv&NMHdn=W_M2>) zsm*ECleSSJlZ{b$NgT^Jn$~Y~2Z@Nw>2gq6mx##A#Z`aP<9wAx(EBW>S5`h_;GH?$ z$4~RG04eTFK$ww^-{~tZTOOzGT}Vn1Aw?FxvV(uifCxgT+q>C!w;r3Hr+Am+DQl!5 zD)YvLhu`Iky>CeF!`+FEz51%?;~rQ@y|LsCH3T;v!v-;^+09jtL&jO7H)&QF-X|K|D*cjR!FirlITt*|!(`4j3{~wZ1 zxjkt$Vd98@N8i(cLU?tz{Xu(hn-r5>S?3&%#mycrA-jC@P>qr|DEo2Wwt?-f2NdHF zz*;&pJd{vL+}OHbSr+ZWtEjOvookJfQ>9I;$+(za71#EAIgmiyiUQznRbB~fCpB9T z+rL@Jw|YHQ5)jv*bgb3ekq&dbkG-Gtg(2ZTygUZ)GhOMSk!Zg$XPm=52e70sCR+`vjab4+>+M#`^QYNw3+ApfHhx7o zxjBxiChg3i;^^A#a<7V$(6_+G?9o=B)fbga`O9O3+Sl1$=& z0dB>+OdUbnSUy#g;dVYx_)m4=~0=_lhgaMR{I3;+2MD4BO?!=q`y?V8d}S$GtDeMq+) z^sUI}@|YhsG(IF88K%&R%j9N~NoY8_voIE$Au`BR?rzErNJ|2crl$-No-9Y2r)v*UNUfuoW{0R-MnaPX{wc#fq?EgWO{xNgONw8UkCI-Az9+?6X%y4>qPfJ z$iH%1!RMPPl2IL{zeH-qroKKrNf*}N)Ev$z;K)I_6={r{340%MD_h)xF`S9s*_F5a z#)x8a9A(I`5k^9)nf*Oa)nQ9v?7l~_!Z?`p%GF;)Po0O4%w$GvEgdy#@BqzfsbxBH+SZbZTS{si13_|rBv20K$iT#$#|dh1 zZD>7Ar)HxfO&amVU2%Cz)xT-BHLujj6oXyAOv*4xZjXI2LHn|1;vgu9<(t&zB-&sN zBBs*3^TXFWYn<=#rr_jENBUf@Z89OtA>!$|Ni)jn+zgg>grT>BVOI4M49x^!kjrI} z*%w+hkC7qR%xXIL*MS~ojuFL ztHFs@pDLz`ZWSXs3^EafC+39Bj7!PIQzsA_B` z#XS}SyoPI>^WlvalooV~yJQGotMn5{;h{ASodakONX%Z$*z_*E>?H&xhDQ{X;t>l@ z-!!x+3CPkl$%*!iWzNX4{+YDw<=NLB(kINu50h;h5Dmj+a>QKSJ+1~=#1cOg^uh@W-_MI# zyTS*n1FL_+3^+rh6vZ}8w!FIF%X`#j7OJpTAcR4~%nIq-t`&E3T^%{j7;(a3S0mj( z*<+2~^K|vvDD=aLwN{tYZ6d)@dL2pSl5UZEav7$d3-*}SJ^R1>$LspL`tGZ`zO0SH z5b;;t?2&OYIyti1ZRT>LmMRM^xnka}cXlE4Wnx`PKBTU3brqFjXH{4sbfCyfm4^v! zH|(z+d-sgwwkY-K^?2L{r`gzWrlE-DGK9DXMe1Rl53GFUdH*~rU;xMR17sBb;RHiY zYKL>q6_?hx;wZZue&9LPYQ&mHPpmrV0Re;UeX2E_Cybrh3ZgZe3AOW;!T}3-FvY zY$LX)2?NJwh$Hz-F4z0(3G1T84>P}yiza;pD`V5K5H$fbk9vf-)A@q9>eH1NIQDr< zSs=yBpSk3iYC3U~735x$YTdBnN1OL?qU+m^x0kO^xbOcRfdb2i=R7=0xH3=I=d~JR z3c1Y38w&l;+c7;pLKbF@vtuH~9NwOJf$k&LLDcATt{APnxp)U+6PiG+JU`~hA9E!Y z+Aaujm%~1vYmrkFQyU(n!ZG$aoy7TqWgtUroKj#EiE?F&?VA)mEiy$%KbIs9nuSwv z%Xa58of9RCV^Zh~&~V(f^B`M5m7==quaUwb10>LI3k3~!vEZp$3~Xlm!hiZgEMcTh zw5Hpg;qODMA>ctK7NyuGHKt5^LPuln=UeJFgzO#t>F2%hukKc4s>}gb4zW#*IQ>gtLbgI zDXu(ECEE>jt$`->ZRx$i;nvMw2IF4gWD29tU?9-!@=QU9s5XE@F`})1QfwSF?&!)H z5li3VuVbzmvp6nH#ZRMTr`Rm_ByHnWPm{lKXl2{SpFd;pSi>8a=#QUGweSLeHuE^e zBn1}_1P=P51JvG}ul`ahW7v$T1=KS}@0d%bA5MJU12yL`GshK=vFPG;iRGZh3R_Q) z%wqHF-rMLhSJtNFB#-~z2D3T=yx&KTvMZW(WU6H|*7~hR691nid=TU;0J}u~(3s{(orW zKABfN)04BmEGOsX)z>Li{t*S>79g^w)*KmFk^#^dJA16f1@}Y1n|23VqeBjXIi1nlUMwsp%ZGi86d^BOBnN&JD;eGk=)+?NrR2 zRi!GO!qfYu^Z!zgOd^b#;M^rq2PoZl)5>2>ZW0_iD+G_XPEiq9HOb*c?O)-`L4MA3%*=ZziQE4<*J z4j1+}c^vDoUX>C9_mFW`xu(U1*bp(W6S);^xOfuzoy?b16 zQgh6+;r?=ytehtv(M0mZS@-2styUuTbpn2V+?8Ts_9+cAR`D@*&f0pb9o+0_H93nY z7i$p-mwe?4j6pnP%~{t`)&zK`#$z)ZEty3J8ck8==olFLmnKrl7AuVjN(DlCW#-k7 zKg4!nuZD*)1o;Y0&3sq%&o)Pwwp0~-wk0~XoxU(8gtbDTmeZZ8acHMRGvduwNvP^Q z1n$&qz^n&oR7wxLR!mGHwA^5=4%gaUwEd|0z!FcJH(fO~Lk1UYAJ&H%nKB6$ja7c^ z*J5Bo^vfP!s(4#&?S!!_YqAm3k_f-6vM5T}-wF81v6XtiUYwKT!P-Ch&9C;Y)M1R((6X))3{+u&{w06aLf*y3!+MZ(XIURKcm zEkC=`27+d8fco%Si_XrEK~3djqQvH2Xsv3kq-k(9n$J*m*R;zNVrqu5+R62a7%FaV zc4nc*UM^0orE-#$L(Xw306S4OgnjTiV95X*mdo8qyWgfiItrep(=01q5^Xj(M+`$G zq|byuv&9Oc!`F76hp!9nes=c8w3qn2sp-AG0n!o^RqdE)?ZtipF2j$980sZzFt{HV@OhrvM+jb*)`tJEXMpY&gZ^#+8L=q_4;QyE_F`V0 zxcpHPB~E3@5BmeIG$C{JS(@Q>m0omhD7L41g)s<#+^5ZIs38A?JzK$810J`er;-H> z6?AN*qv>^U0wO*)M#q0>&9|k{6~T&b{v<DcAogkY>7bUl`8lq4qRvya=kZOm-WnYK=oR zUGMhZUItlW-@?5HL6^70ihH<(T9k~>wQ|PRSDN`z8i`pd&F-+fgd;i*D$F4905hts ze|%_p!`C#m#FoH} zbOe4&2KbZx`t*}-nMwaH*`glFJms`y?HcyU`KH*{o^>z(1O)lz+rwx1PSxR=B z)yeJCu#FZ8c>B|=iqY`c++OEKQ3VAl((#9c#C-l`MCPF6{E7*RT7c{8r!A`VcJ#J6 zbuw*@+;EL>)JBYss=GUu!MKGsetY=6{G8i`Wst-aUd>lc`X@pQ0ep2`?Z+_rwi)0BIvrC2MjW0W?|n6Si=XQiA=6jSA>Qq_nZtAnuc1d8SYbfRWhJG!2CZ=3fh*+ z#jEhCq#{YRYdgeH22RMLfl)$Nq5+)lmf~1bqzs}PG`2%qxTH?mg=EO)6ZZaItRbSYj(%YlCYD>?4GJw2ozG$k#SLy=BNmPpy5Ly+`V?Y zYxJAy1mBmAI=4y7$0cYesTb|I2n(a8W&TiMxUMvJk92t^AnP3$q5h1mNcObdxuAfr zy~phB-(21FFB$9TbQ`<5=Nt>6w)6+q#6JJ2Ij~y#{^rj7b4q!ir;TP{nRITWXL7R# zXSKTI(aSDMJkL4=Bn4FX$@1cAv|?0DMuujFm5oic&WeyTkd6Pa!z`*oYsl6%2y|6r zB~pY9f&I6fZz?@`T^7+F&J40I&#EH*<;7^q?~<(4sL#fMl%bg=vQ%YAQ(+_ z$IWU2KFq#~tzaA=fZm3@7F|jLmm@$}1=AzV*37|xMiv!l_z0);5PL2-(Gsh>+Fd$` zOevWrl7Ly^XQC7+JqS=3>_Lm|{anKOhEG>f|4(`+Sm!GM|lr~?U2wHaz>j6#)z>(xM2>rzjsx=4+7rd16 zu+m-8xnEs{bWPA*Scv2XpH`>CFFLb$vz1j6W3Ee6x@GFoou7%5L4;!Ch%jkg-#ooy zfk}C$7Z%`9pz$=zAMGO_JM=4C^8}K;o-ssUmZBaZA@KTTTv;@(B61A)C;m~4G-9T2 z1-{GDBQC4=uN=Ae!VVA^IBGm>63>reSW0dJOvw zOsrv>V_8PLpwOsbD5VD%L8EVSj_BzcZWABDXz?TiVNhMgCa-DbhmV+r_Y;$pXd(lE zRN?^HeBo5AO+d2hYm`qHs?8AOfZe3R9NsdRKf9ji-cEzQguoP1(=Mz!Q}yJb#&IE63l-J^gwvXEj=+a*Mt+q4soonzb&AG1M^XT>JS_?&kq}##NIMjT)|$)ND89 zxLmUTrOVOCqfTuX57rc&%?=Ll+j`N($5^@HYqV&V>i4 znhpQQ7*rz;U_j$1S-wlt$#DB z{VQ9isr*T9{y%2czw`Ho;C%QW3pfq&-?8n1tZLrBy7w=HzX^T<+a*)~v3Psa{T+u> z1dn3=mmnDYmsJ}VNXGMjEZpIc-(zhJHigCi$kliR|7JQOxSalvMqK+}=Hu>YPOb2N zO5**c=??Ce&-#xB{7die7+o1Ik?B8nH~7C9hddyeum7X*Mo0c0cQxA;m;e5kk?0-r zmscF`dfxay9`de~zvF>K0mI1uD)j~aR_eq17IFWNM|=R}Q+djB&RjtaTU`In^(XP( z)X%23qBA%+=Xvr2H@}{JNSE;^X}BTTNbx|1<)7Ti51ZCs8#KoXP*mdIQBRyRPq;cl zhz_-!o>RLqo$%*BJSp}+`|8PwMs;GDWb%HT=sKXKkL}TZ>ZHw^e`np|`*wYY_h&BI z8^ptB5b|V+O}e~?-?Db1&KNN((DZ!>b?DAGx}@{077bN`mAG5g*P=JZsDIa`c)NK8 zl%krU6xH!sbOg@>4|MNe>j{s;ASD$2{CF^74u0T9f)aQzg3HVRgR7wyZ*Jck*T+fz zFxL4PxH@%QZ4}_PIwLM`t~c|}RSRc=MES*keBX^|58hnI+fe-Qy2~-vr0uPmE;Ypz zlta82Wh*e)mc-LiXE-HrQZg7ilc8xJ!tzLP561r@hh(bd`h+1U?l=4+lV)fiHYx4&;@L+ z?YpWnB&pK~<1v%XS75tEuP!^}xY74=(XHM~XJfwVYhtSB*9K9srGg~G5GFCUH9H{& z7XlGHb!L}K%X*1r@FQYRrFZox0J_L8I1_ZNA3wKCMIKluk<-DOuBK=EerrVOU0I!_ zXq71x*S|iM7j~sGJg|Ky_VR6Sd=yZlXJZ^&NFP53LJ!uLl_xEQ@37oLOwlz16`}pM z6!^nx`1Xj)ZM(aC0u3qF(kx9CPoaRx<%d8!r#x(6)&TYybvn{Dwtvm@tZ00m#9Atk zb%|+J=2(p5Rv}q9f2vCxcFHK;A_@6b6oX_0_i35i_c5T6RxeyCo0E;sNE)QQ_Odrl z2W)KVkx63MBdb~Un|xn9Q7(rz9|BUBm2BJ5jA%Uui>7(2Sk{lsUvl&T2G$xK@jO2u zVB0g2@174$OGDiM6xcA^H)3&15fg@}SgQTK8;ReVC-CJxxz zkJnMHnK3&_3}0L)K;JD9D9(30rU1}JEmElp=$B0_B&K()c|+?UCZc4cf?XsF*b#_Qz4W~Nof6Nm~?f4b%3%Aab0Z07TEuEeT*Gd4^DjILiSv(&Dq9&xWJ>RiAqF=#;wznj*OPGm{ zV_`B$-^Vm1@Ev8M|8TWlz4^1D5x=uQgZYbec8E;TD8bXY+Zo*jSVxC~SiqpNy$nXB zpiN9kG`rp`efMabAOMp(k$Zifd~JC1RC74vpvqYUzfl^S#Z%SYc-Dh&`*n36TLKDCGQo_XkY(rSao*#h^+nPP+aQ%x`#T*r`e*tKH0W-8Y53Qx#yvO2rQ zCIo<{KgeZp+~vhHH5ic)Y6#PMOT6&V`NU)mywQIASG2EV5G+Ew&gqlI3*XI7p`5$z z(P*kLK7=Id#$i->q2b|5o+*FpLlN#-H z>Q0*F)c&}c_7tiUEAe|3ootD$7C&H=l1_Qr8NNJ%#1@p8Hi_N!mYZ_oERC*2#(KQ< zmsc@EKI{1|4{pryYi4F8DUW#QI(X!*@Pk5e3UEZF(6x7P>@8aJeAT|FHN;4$W`B10 zg^#XiOJ|SVfr0cqoX%%RbUu@h<$8bVG8{&SK6jk>>q124(QYo7K9E)xla5G>&4WCg zV&T%&N1NW|#IwKI5siva19A;cVb8>A#@F7g#^Yb%=z|N3v{rMe-T(Yr$v#}2HRf=- z-1Od_pGeRM@;4VvXXbNC0?LrKIGZik3|{0n{0syx!ZA|F(P%&2tO$31I%l`7(@;xE zbg}(v1PL52lhP2(PE85VbDJNXU}?78%9(MBw)!)ivjXyjv79kvx@bI@{i*4(pDcah z?Z?Ut4c|a!H1klk!rx7(;P!OC1Kboo&l*WR#qG9#-Qy2VL+HDH%G1=gKfEJgbD$m& z;EeP5n=^9Jqjy(#X7f+}#T)!jc8BNVlePjF|6Jb{lyGcDtC^7Hm|q<4*M^w!eA6qO zM~fNkLxPR>bPHV@>w*XvQ@yJ_{k6~c4?}2{Zce5P?0zH;)(cGBtrbj<=ffE&PGj63 z`0fukaMoMBgY#<9^&#fw=2k++O!f|Ud^1ajgxT#ai`1PxRC*#ZA+_bQCkt^&9dDu* zeis|*4VEXy#71Y1Na$H;mTRDpE|Zg56F%w@0&-kUT7`vrc1qL3LPZP)s$x%8Bt}1i zE_jDGdCC>jjjUkU{r02*zZs`ZPbBi#z#A>FXN-BxLAnpr0t6p_@}$v9?rL>F{2AbL z8-KO6Nhl&UT-uRG7wp+^d&pw&q0)Iu{mEys(RkPYV%|_mr@7}26OJD4KB=}!qu|H0 z?DjmKh=hHNN>62@pDnJsnb-Ct@2yPdlap|UgT%9Q7p<0V^k?(^z#4tFK|?9teNcN- zqy+xk3xoucx&WjVAfbf;t5~Y4QoUWlYmqtf(ogbYo)*e8cesT$^Ch!0=g^y~#7<|n z)~a){BN_R~BZ0SW3vzY%$-Y15l`}ktW$fKnd3(HEkl1j))1XN~ZQ0>*rqEDQ73kgG zr2bTC*>C84mAP!ournE%{v;n>IuD^@#5=MLVgS;Q6^1yvTb{obO&@-M0iA4^PpH-9 z^Jq*zQ+UI*RUYZTWt{LKl~$SVgxa<#z%UZ4R%)LG%?#`HIKs@7qZ7 zLi8zSfFX+7cm^bE8C#<3sH>cl!z7eHgN#WD44$ zd(7EuAt2y9+-0Y3h#)||?M6doY?i3+VqOxDwm#6oPYXCKZYUJ7b6I0y7DzwdxP2az zm_jWPQCyFv*To8TcR2|Y{;TCBe$PbhN7$$GyV}*rHk&<{j*Y+S2sk zq$+Ojo%c}a{sX)rJ|z|($hOw6KwoLOsJ~P%pZ-eZ;u!5(b^J~2Y3tc);OCELWUP7W1e0Q?^8qK0gWCq z4Ai=a>*kY%o@~9pf!1l;xmn;F30bPBd za)4m3*UGeR^Fm@BF-S0$ib`ZT1S$C}sXc{w3*w1Md^TeWYC;m`p`rn!naC+{2~*}o z_@Fqc^ki2U`^v+Vcy0&sZ_P4`k=KC#lYqzi#Jp zW3`}SB0(@D1(`piBGMAZ!r=@>Uw*Q0_dm4W&IiLIWfh{5Vpt~&>5vZ9*J7G_F$Iqa zi;hhE3Z%hSTv8YtGYCP7M;)bO&kzWf1x(Z`!MiJ*En{??#|+;Fg=bS%w4-UN)%bir ztpuGb-11I=`93oy-{I({YD1|y8YEond3#R9GR2AUD`jlJ;3k!+P(Wt9JcEKc4fbV( zZ!9WvgfguJ>W%q9MAXn7TQLy2n++J=WU({EfP{X^5|JT76;U<&JILzNVBT z?{$i2Wn`W$UVdop@jd;Lvr+gR>v`tX+ri>3dA>d(aQZMPmERRjlJpH4~y5WX>} zPL0paC5OKRuRkq_;Hd>W&714oXUh#$iWtu&O=9UV%9f6FP%fqx2nnr6 zA|s;i1PK-HMnOTO-PvMA`XWyW{ku4VqNzw{I-BR~(bnZ;0;4tRVxh#$c7+wP?jqnA3T(5bq9cD6T>^muZ_+$WqwMZ=*}GEu3_C> znY{9j!1v~0!CO1wsAbA97H0&aTdWu96DO*wpfH2#dk=iKIhf6&S->EZDXVL6X>`;H zH}Cg3OdO?}9Pkkr*2!8Av<-v3gGhO%Q(0{;AFmJTp)Ib;39TfkYFB7f6~G+@ii!xb zc>y+9%;T#4deGQ7*n10w9l^5Tv(WpFQT)mUGim892p~<3jY^Sv2r~l0bbNxyfPAtD zX@v5*%UD4)3eimFXS(J@?(GI2X@)!#ne2L}y<^d(Bfm0)_i=#va1_mTCJn4kz;!tg zH1hBWy(TD^Yu_oBDmCZo9~%q(ZGglI=TNvh?C%yM&z2go-7E8J#< zn#V_JDxdOC=oZwleQWyTqOz(sns3)ufH&r?p%vZSp@Ec})C#xVR6v~I5tSIsBto|o z!L12FS_3I5dv&T+s^ualau`gEjGXMGj`*n5o>lGf;>t#9S|bmTMkfwyjsyC8%aj)P z>R6p0Df()T zw-@uPD}dkoS96byt%-vRUjpOuu%F4PHbHZ#Z{K!moveg3ZbilHrG*W&t;h@0#9I4;d$ z;-VevISVQ<8>`?kCH2%eGp*BZ&xd=HwT?B@#$2wkVt#;~8nnZc0&>KSQD`XY@VzhxxlEWUq!V;W)wgwZ za>#Rz!btL1BovBT(jFeAu{Dty@ra@4C^{i>hDL=%g$Dis)wMO~ISTtNq7qWyRPc*Q zN{f2pRg+`#b$s^+h6RR4`*Z9yEfs++sXhR6!PGp|d}OroDe2eu2rs}vXx9QZ3N&NTi6cTz)M$emC!WEJ_QCf~(rWGWj7(e-ig{lVHB$Wq!BRdvqYR&Y>@eS* zj2Q5G0<24Gvj&M%*;@q~bc%8fPky+`%gf;)7nLcECD4=T8XJX`c^>d+yl$D#B+eiy` zN}mg{lG5Q}0y`TKmvSki;JKf>n#GBUt{LTaO@b<$T4zjdJTi(NG=Y5Qsi9tJ!Vd9{ z`QBc950p|3(Ns4K1|WkUk<3)K)VND+u`xE<`Ppfbm*L>74K0SLVJd>4AW|cB2o}f> zA0uIA$|UJeM)D}b{bM5%{22CG^1Io*T?Spl<`(~SNKkv6Z{Fw0y%dO(Kh6D=$ib(~ zKq<*4inp9UM0)2A`@1L?ZkpbsV!twIYU-KMM{4Eg?&_<4u4Xj=bZ7K|Xt9{l!~D$1 z$k>X4sO_yn&vo2H>i4}()B+l3rTq;71H$h20(!nmx(jgvr(&h#Q9Nm|%^Rdw5}}LT z8xIu+L($vq*SowH8`)kAKpHcmtal6_8UsnjQXCc9w-;|Qv z-=`du6A=|*tBP(1*bbP&1mzU7UNf(BGk@s`Gd;CY{ZUq?99>KM#{R<|6ZX`b zvV^1BADYwn$I_vl7%F@hlHfZ@eo+JiKJ2Q`N9L%&@g+W}@^QXAr+~E&5Z%Sb#~8(& zg!>2 zLY_3Kbv}hVmh|ny1I=iJpI8GrE*BUtt)p{$36Z?{qQ01ma~aj7<54?Q7@k3=WoaxrOVdFE z`)D{pPX1+5)6?daPAZod4 z5E1)8D)@A-oeQ9n=AIhy4W{m*Gx!!mq3?MDw23Xq!$hQpnz}1)N34ZFdbEIC%iNE7 zJ~khv0DM2!9tE%n`@GQ&LJKGffJ`a{a0d1+tpoJ$n$CvL*56;hFZwnicHadxA@*+R z|Gjp7fY{x-GvIiyn0 zyJOFv=});SD{UKoa!#ppa}IvsF6Te1dia5qCRoXi6m0tTC10?kc^&VMTt8O4kE;j0 zcM_f3Jjcebd0Agxlq;B$N2uh*xJ77Hn-3_6n1@P(L-%ainKGSz+B;wH)VoUqh;{o; zpemADQ=or;4!`HuO(N=(H=`h!i5YavS#uMBD#HJCUx+XcpzUg!MrX}M-Z z)%ugip6G5ps-&kvxC+KQZi+}dP$N;^y+ul|lq~gyDLUjgD5!h_P={>DvChd&YJQ|$`q(G`sU<56&I-pkg~*CS$gXHv_Zy%c-z>) zt!@W%xi1wZ@`qvbFY}Yp-=Q%o)17`wv& zE3=OZ&WuzN3VZgc*2INN684RnKQ5xdzc;(@HQnYycA4`MmkE26_d{e*{$+JH*IG4R z`N8J#35zo#lxLDzq8N;;6j?E%bOJM>XYcqjMQw@8b`%ioe035I#&M=#5ki|5D-dGl7Q?i2@Y2xcF@UcyR$g5&ffLpyg&}yRM+BR`2LxJm2}=tjwVMGz$Gf* zAh%dO^nBB^iI|>r#rh)4ix_dEU6!B-o%!mCUi49>ET|EgOe^zHZI_vV3EThBw(xYxWxFUg)nhaqr?4zp%W-r$>%fkcGo(DP$J} zlOQ^Ro#}{~c=dEv^r|Wc5}oYQ{KjJ5?JEPX?J-PoRasEfq~gfIIm$I1PSdu~@%6K_ z`e7=)v!rhh&oRk<@2bb1I$lqI?>Dq_LzAB?YPx{UifKs=9v(8bImndSjiO_RcvU=! z#u}5|Bo2=0?(wGQ;BJpJW?<&D(FRAIA&=s%rHT&ZbNWe!mTl z5)Th^o#k6MH5a(Y zopQ4#75LUBwR4yGYOUth%vRuxR>f=djlwWWegDQ#UEW^9)++4RC1+Dj=(ObxK-Wyy z=N%){&2yTq<*MWH^wHS@I6*iCm`STNQPcg|>&IaTa#sWdBSRw=?adPbA_?=yW{#L+ zfw+39wOU}|WeA*fD37J2qSvm<(QMyHj&HBB)?t2f8n{t9xC6V&;9$-{Jutr(jI zwR)NT<*aa%^KEwb72NtBOX?!Oj^xS7EP*4n*v9)=nU*GyciW%JSz3EA#=dM*W9yrn zOK^P!&odeX$NLKK@_KoE1Zg91K8w+KoigsS0Ep75Ih(Wmk?rx!52-V&2 z>6SZ|K~*);dAp4bj?nz&;UDE(AQWFG4S5{OnQ~)H&Xk%CbQGGE<3Qyoe!9}kut&<=WcVul5k4(T1D#+IkT zs2k50KO=Qe^u-9Ctnsrq5T5fnSl-^cF2jU?a7M!05%N&P%rSxH z_Z;{s-X1x%s<|BRmj4J89tJ45dkPt3iai*)RfzWymuH*?T)SFu3&m=rEP6&X0WF1o zZ@Jp+zEG!Nj7o<#&Gq75cEUDAI3Gdfp1NyphleX22T=YL=`~4M+{Y$r`^VfiCppzz z9L`tjUr*K>7xhrsDYGs0j8t@Zw|Lr=qtTu99<%RTO(6rlxoum&K!0z5h}r$v8Q<~C zCXPiSqv-ExtB_kfW-y#N?09p!goVvoYpVgyGLqjFDJ!~!3AcT>?fHWH38{&)Yed7` z-;IwI-2;A0BMl`mp|_56O>+u{(udse<@waZ)%IPl(rI|70xu_FZu+WQDW_7g36UxK z%j(B=u9Tb03H#2`zR3>9_I1uj+vB-vorP}|sd|Yb;Q-Eu{iu}fTNOTBu;r`qq7Hl_ z=1QSBYjgPK@~+ku3yIeW4cjHpUk`-A7wRmCe`gBphZIEu`q$>Q$`D zn8*CgA@yUQ*C|bNqbon}*&`mZF^(kuvn1Cr3h)o;d@{@stOO{_>oYW{HYn%ZW(P(O zrICb-&da3=FSSWhK$y;RSBYDPc9;6u8z~89Imx`Gw!S6!Zkl!ztS}*zHr6z zN@Y}3^f|*zLwmNquh&AQ$(1a2r_=S0DIe761`RkVd#fS?q+U!uaHqmV`-SZ(EbWSKPX2=*aod=j4^xN@w?Ak=llP%P zJi+bC`gRdufVE~ig2scy zqP40NN>9e`!HJEM4zay{Xhs+9$r{9uL`q#=UM{p5cg4iu=^I(PS@kTD(PVm)U7vG$ zH;3$F<&BAczB4h z%awN5Z;G|EWSZmAj#|@cnm0jy@zg}e%d3eRB|wI!iTTy#?{(^>+5OQ zI^x$O&9*-|GbcL2ISRvk4rom)_O1r66>lVqnFb9QoLAkQALfT}F!u>$qich}R&%EF zcC>n?j>QlVvbClg-h-!}!H16zEQlO1Z&sT-j$KR@PuI&6@??j|-fAc~H%0I?1YA3Y zl^Tb$Z*4DSjr?a#SKPF1Wj7h7_R&Mc5{~2r{GdJ3ChU3gzI7U)L51|6U}|NLm`yqp zhZh{g^LU1b6HC_1^%v268WrNi%4Vt-4L~1bMm=5hT;_Y5=4{j%-P!d{2LP|HferFEnEH&sy7)}iP|J0nxnLTneJEQ;Fs5P3o_j(98^zE|VXt2Cn zyjWA7`sx%r4Xt2UnOjPD z?EPT3o&MJ$3MZ1S!BFx?6ev@oi~R_KrhL%ZCB>kgV{cG1e~y|U(($OEddCu@dd5x3 zZMLYNjDqewm4kw;4^qmbLxFWB(B^-c@)uq)x#slg0XgvLYN#%3DVB0W3mzg^k*v*O zq}A~~4vtY*D+>fg3exMr6o@5Uu4WYV>BSyi0^nDavd7B z&MD0G@@>l(gn~j7rYg*l0Z4(h>Go5Yh6PJkn&JZl5DH~KE*6GPK`gLqKh3&IkJ4A+ z*)k4ye?){(aM=XFkI#P|sN^5;5u}|(4%GI2NuR+2^_I7}=~n9pWt;GiEE0* z@QG8#)DyK%2LGW<=m#FrJlC!#1|F9YBFuI&p&nC`Id;)Ar=XCa0C!(|wEV-CIx}rL zojf3Jh>$2orXYmCBXk2>8JL^g?*sd)fse=tL*#?wr5mgd3K9OgA z!>hz8jHSO=D}`5)z{gQQ(Os{(;~x}K;Qkguo<&y)_#gNZ1~>~UeeAb!r~3=4iamf- zSQNPRHGuyiHO0tpQHmF#JCAyQ!K&;FNVQe5$6zzqzZaEaev2wyMee&8`0KuB-$H&X z{t{se``?S0{)%cK30e#Pr^f+ucWch=k3G!qTfbjq_E(gd3``UHKRrfCzO_7H7-aen zF)sYI!9pg670o|A5@o)%95s&k4-ICQeq-jGQZBmn|7XIoWUYKvMGa=C_9aYenu_{< z|EbWOEWMrK0L=cPQo#t}>Ay|`o|Rb$>HE83&~mN8bfZ)?&&_J_i=S(ny+W;G@$^3N z!@~iyLA)X`>SHVn%JJ9sG_AO7)e>s4P!NJ~(VMHLWReY~gSG zZYoyYSM5fat)RcN?(QP#W)2ZDHa^-lF5s}^|2S-Oo+iJqPsSP(c ze5oS7zVD9R^_fBl0ZN%q`{Tax&Y6&>jr9|q$X;Y&yL@!C_(60HX(JE}K+MT~!(6h& zn2|eP3IL+2s+H<>I9m}H!uc9p_8h)nCHoLY$Qv%9RsF`Jr; zz^dNK;RD1D5R=kn>DV?aWlo%_-YmOi;4|R8?tTcy`UKQ;4UgnaHPvxuSz|NNjEf4M zFlyw43TSFOGsG1r9}Nw0cHB{FiqZUdmSp@Wn3CyqVRzp3=#BS|eCG9`e+G;etZBT>GVzq9TcJ8nW_yqz#*zEn z3nqZ}IX`r0)g|#5{60MN!}%y`D`v~&@YY(2-l3FiuhIF%-r?v^+l;{-SgwTq5Ou47 zSOoU_n#{!l`I%{MaZUPZ|CYQm4;nC@hhhjoCW`_D@?-#{LIiIh722;~6B94A?%NzJ zj`*w^aUzh<`B7tenDtn6H|f6Iuxa&X*z~&Z0Jto_Rpr^F%*hDGe5~?>qc7#R+Dvtl zd-R1J%1kAO#R$TEHU)$uG3Gam_z1d)AIw`@I9e91)utwX^M+n%c6_A2vOH8A=@8AF zh^s=@n-#QJ5Ap4hNTx40$*&o0as@}GVXSY4($|zA-Y=x|WNP0)d3_f_7oy-f-9O$u+})Y0ZAFUsxk7LP0SXv@ zJ}xC_0fmunp#qN98i{het)H16T}IHwiAD(K8m}c+HJ$v>$?$M|xMW2}rppT3Z1~h_ zHKpPj=d;tty)g@N`EKS-#n7}hMNskV27UJC{`u}G5s{*21V&4@7j7Cl^MLLB(Ln-t zqT!+YFV;B&p&-eE5kVgdE-@uok{1q z`rW1FYrWpyynmC2glff>l8EB-e6x#K>eXphMnYyYqrKN z$9xXflfgUBM~kb|>NL*7;RSwoxbf$jqMLib9K6cMWYP&?z__^+G*0WV^HoalBtQ!ruQrY zvco|IKtj0W^yIX5NA5};^tLDBGgWqvvnm@b)4#3NAEA?t`I%n-{W6qf&NsQ(* z?z{Il9qP>GV~wXe5{4x!3tgBD`R>XriD5!23xMeSkmYV_GAkh#>1ow=&x4uTk(XQK z-C9!ely!wn6Q?YwB3T_y^z>7+>+|1dqzDkCohtZ9vKny7L+E1LK>jGIpR{QLvb96* z1o*h$NBCI>hlHdm<;1X-7EJKb+>>LwYU;)r9q-#E3cPn97R=G<_LdiiAwNM$-W~@8 zf}RtIStLSwgXOBN+ZtxTGTiCN(nFHrAQ86ho`JStadt;y^< z+cZ}=mGXG!HyzSPzE}rSS(dJ;dG_A!!M2_Uqzwx0F)N$iy_`UwYamy`{}P0XWWwf) zWYt(=d34HKc!t}NP$qfy%!&c&$i{{r-MV1mnrhJibAm<9$BTiSEsP9`7{)hScl+R0 z8CpRkNW*s_&Xh;+D`jM(N?&%W@uBBUv$G4(2$@BOOPSTxbD=hgzvq6TR4hH|_YpFq zwBsuyWAdoZsP0C7bg=6owk(R75Yl+76P0T1SrB3S|2#MxXxHiraKec&Zi$e;jIR*Ejxh0 zKtlo-Be7T>E40`6%0-hn8qOAKLYtbJjIlWo`F^CX%7+Cz$5EQGJf2+|lh>G^A1w{f zEd+>q{)y>td@ws+8J!cf*xNgkp9`BeA}JhGbkje>gvDGeH!?Ol`#lwy7fW1ll>Bqp zf0nLfp;&iAEeSuTp+kKt$I_xUQ~1xaEf>{XtCy@Mg|Rz$Q4+yw+kiHk%k8@5QDIMH z`RtTNYgSSPwNezdjPX`>K^Mo?aHWx@HOt-+&39#ef!d7z>!_Fj7Q$LzRid?$AL~+t zdn&u_g^~bPjq0FJf0<&DTPbq7)d`h{-|NzL3>^2v+JhxISFL6Aa-E3fLIIa?d?0_= z*dbJZ!#fa`7F5?vj`kAqrq<>|N5+5#92s*XgVZQO6EvK~?!m!@;*?fD5hzkk!?vm< z(r+`!k>r=s&Wa`0pa;u<>!*}%4us+qD_(s|zw(8ADMyJ|6+H{e-T2fenZQc8HZfa! z9O2Gvs)|zev=BTU5kWIMBt3d5PjwenJI9kLoPk1fi*X?}*WClGSi0XQ`2_`ap!D-iDdG>`X8ma;KJL%agfq|=7H+2rXF*MK`S`*Z z`D1EiTmdLEZoRB+aflr0N<-9m?OQ`J!QS<^p{8=KGy`)=$%xK3T58-w=;3D2Lqbn2 zJ;_FEb6oSV^pEq+zGlkI1~PR5_g9TGEZMENY=+!RE~)V&_4L^=%I7qX$hHIQ%sccL z)UzO(ZM;2dFIFH_^(}x4KJ(dqxr$B`P)rDsSRdo%Jw7sJU;RZLm!mk8tbEieIhE@1 z$X~Af+~q&O>Jl&wsMZ7PVFP;PG*te;lwc;94U7IJJO)7csD1(=6d+H|CAD!($j|*P zn&B>;iKK8b9Y)kP#fip?22pBwAFLE;Auo%G@zI0L*VC+?7gK^~69PXOEN6b~K+Z;g zPWwBb@VWcPL{8AT8X6v&oV6AutY}IHZA#Rg5D?03sS+=yJY@QIIBBIE-kk4IOZQEL zO$n-*xG0&yD8C6Q!}4kNZQQyF0zK&D3;Ywi!a>^gYf$O?z0DdA8xZOuY?j8@!tJ}6 zXV+Iw(Oc|-gmacF{=R=^?-IJ?H&Uc|-r1|{@&-bE6zcja{n8KJ1{iU-<2vW*9~zRS3u5@FoA;|BDYPPjyy5=IMnP~P(PjkM zF-fFHt-}NBcSZ7mSpGs0>viR_l455pz9{#^u>HgntWI(U0r}IZgFankNrlB-F?%3* z#pT2xQy7pqn>d3<>;@@B!B@T5MTYCtph%V&k><}zi^N~MT@1b~@)M{$#kl9-=2x=> zI7OXfwF|cAgrI8)9umxAZJ!x8EW3%Q%r)M6*)cCfJ$#E=A3k2}cIVm%>Q^Crq8I$5 zkTScTMo+R}_HHYnAB}Eeo%!}KFAHG!B1IiC&d&`m<}noove|ncE?^-qtLgCtWU%_* zRycI_V+%uU2N`|alClU}{_W2H>AY0wn31<;^vFUk!+$lvQMy6_~*pR(L0Os_l zREnaL{JR?}_}!y=VpyjFzz@V7ujD{3A&w@oM-N!#3RFP5MWaxb!tlkWrx2<1RvLu~ zA*k+$EVF}qrvhAC4t?k^!c@ToBUU9qC1Ku3a!^V(zwj1cX?Q@y^f+LGQz!A4*CBOKkXMk>Ci?~U1XtG7jQDz*do%uVI! zP<^rZ2cwQc7CTO(su5Ef92O^IzD#s?w$UXVzsgfi;t~66{hOKW*EV;LCI^dCWA3&} z{?ygNAXo3VANs}n7m_0AY4~QZG&k)1UrXm09>>>)@y50qqp=&?HXEx!V>@YVG-~X| zNn_hKHpT{xHn#I_`+xV_eAqd2=9+8foag@C_megK!nS)}aU@loll@Hrt+rFxOw9AZ z*ywhWr=HATuakoR?d^}^FiB)=Y>YK5s{O7)t(E5D{D=#`(op--rQP0Xo>z|DN>^7A zGs}_E9-v<0N{ReBtK;gxJ2J^n_mxes8c5rQDbky_yWnojzSvqKW$;2| z0+Y*jHZ<4S{J_|{&^%2kj0eFXQ!(O8&_zuFkeO)##anv~Phk=JEMd|W@v@x#_Bj*a zts(fcKR-eFel`e~4y~6->Te3@vY{l$Bz$%|Jt*|TZGBx9+_&sd!>iOp%ogy8d#@C9 z+rRJDGW1I`JvlkF*w$QXkSaj9W#fLUHNO88o8%C8x#cNmp?g+1fPeXU;BgZDD(~&A%zDB^#y! z^1a{YhHgFT0429iy~pms7GA@0^8-UzE9FvU5zXz+-4B~|YE1MR7M9c4N!BYM(gq*$ zM>aD{7E&cw-L9eT=b9X15IRM{l(-ZOS3^{kl4`x6HwtL0vX*J9#eU|Z8uk{!QInD` z!g~Yu&T?}`zmgf8oyQhiL1mvq9NgZfS68rONZF|%JDob-fGAx}4Fw0M#l9r$MbYT$ zApF&Fjqff*((PP{e7Bo;btQ@>Ne_UEd~|+%k~bo&{KKc$*=Dgqi{_g=!bx4ZW?2@W z+o^W+jK$!ffa#Jgi9kbcTx-aJ=AniOI5Wd9uro}7Xswq5h3mW&VBK>8F}XsY%4{li zhs3HVCnu-Gh60bz)mAM$A?V8&c0Qd8U0Efm4T!b(b1 zQ)4e;mCU!2Gh3iHyNL%bx&aFpoDJ!g!xkr2*SjO-b@$5bQgcctCSrJX%I-}KDLp+` zsW!TOnB}ajddIv;h`kgOXqNy8TuDJVxKF*V7>|#%z@%o#q`CYHAoV$jM z!D;0(eD_L+O(+a0)%vwpac-$>`WYM?Y`DFxm^fsSQ&lQ-+8p;Y#cq1dVD0J9xyf`1 z_vuR~>@9|{UX3-F>eXwi)J4zHtM>nvX4LCPtlK3yHssIcuvYt~QC?_&a2PSU=5ZD| zI)5N6+-S19&$Q-2!gG!O7{UwIU%n&xgDv=*HbHYVc%M&$m~>4XTs(xhSH*5Y5fRyIw7EbCnCDf^{}WtGozyDvE; zp=g$ITyYkWsn=Wm-rRkQtB$8}=r0}|alzH@2X1KkLc%;_!K_P#c_L;~A=XQSXtaLe zP=+TZNbk^Vq*7N?w!wD`Tr zar9TZ0Z0danIdEG`?aC$pi`e0YO8X8Rq+*V*P+#yCMnDOYP}5!68|G_zAUMMgA$`S zg_O(Kgis}AdD9=Z0(ewA*NHzWbvtZRMHmAGW(as9W#IAlq%%I;T|`qLksdaWs>DS@(&M+=B(EnYk zZ;`6TBS;XIN7lcfn@xhMy~_tLYvsPv`5c!cCB4<#ph!7 z5r3sY4MI#0m(c6j?CV$WOVgl_kOW1245jZE+kr}6WwrMXTT!y9K`c)O1zfx}I3y5E zT4nihBV)zkrESs|cnCZrU(tf}lakVUrB#cc1{j9>m_M!tH=!+9$xSBSFtU0E zetO`{F}?uyr=zA*PLD13tpWd(^d6?fC*5oJ*RnM=e#v(U=D_?kw>gm(Psb@|{}%j= z$Hk)EbwAZFL4p@Wz15hBx3xBKevmg{+A`T7W~(>zcCQ5XHd0<5 z+!8H&V{?6-oSZbjT!DB6WgdR5E-%={`5I|>X*L<9Nyu%tT4VR#Dj&D)*c7!LGQX-# zH%&^q(P+Psp@`93RCW9PJ9M74Gt7QR3EEVpVWY)v$|Ru&ksod<;$>c*1Mt0+kSGHC zk2o@YRLIzPQdxsBFmR?&z^Y5kpnt2LkK5|J3mm1IGZhxEMlzz%gsPwxj}?@X2Zw(6 zlSZ?{1cshXaQUh9Cmez9@V;45XM}+NnW}zq z0FXixw%1^;Lx4^qv=>864#rijK-ETr7GtMCWg5r%XDQR^L)mhF-(Ok*culENdrde~ zyxJhd$w^hMG_zFMDfq(IV1GQ=-Qu{SN_V{*&$S#8sud?E&AZh2$FsWlW3Lj76${6(Fv=NwbX|DLI|_f@1ybe!NhggTuhL zGjQY@nC(yk0nv54=4!W3_TBkn0;wxv1uLRC)qIf2%pih|W=Cj6fgm$Zl?ppD8nn82(@$z#nR zhUkh9_cbfcvN5xXO;MSXa;`<%LK)N4cR!F7rnIrO>SQM@cqx02Pw&l( zXuWo6MNHsb!A2?+6{R?}KLg2t=MlGh_Z5{7E~7x9;~iM5uiaUUav*7I>s%a_Fz9$3 zT-eqe9^Hw6_vLkt5t9+LI>Es0z@TWe=+wlGBT{_wlcOqR1T5~XjgD{hYV^#N0y|(x zCa8XneybLybD1G5t&p1MR;o^Jv!9017S30v+~RfNPLiInE~;>NK2D*1P%lx6c;%-zCYI|a>KZGWSB_5#CS+Fr&N>p|?K*r4Lr6AEPDXzQeo@FtZ%uC3`b3DK;J;U<8h2K5{2SD^W=10rDFs>v z>Z=E4R}k{t_2Qqat_79^%Fq&L0uf{Yo&1;HpIq*bzZ8-u6henwO=ZJH(&;4E-kb-& zMmZvb;KXAYo-pAx^tnGSK-o4JFSkLQ@Hm>GZY}URKK+`~(es&Froz1Xgc4EX01X0#SV4Qnrv@gZCU6)ed@Irws=aKY2iC>-x_*TmMCC3M0_I+iFg3k8%A;jPx z69tAMlVAHCiJ4jrwg@|Cb7({hn_is+^+FwQF^E1$AIAJw@Qz`!Y>*Hzz=m+ZF|uHt ztWuk+82V!$J1mv|MuC81#2Lh1h{U622G$9{12AEp#b9$INsVVW&f3_$iOUxFWF2B!GGWd`d{#3 zroT_|A9w+T`s*Qp3LFCb2Tz3lg(pHuaP8^;8!X~4ZV%5<1^aJ0^b$ZtpHo348T7Um z_;M8oNA+%F$eJZXhS0BGQemkD1y-R-kncez+f}BJ4xd!I>;q24=ra87uFTnpvaXvb z{+4u0L_RbX;>@}dq=HU?#y{NpOD<#_3Cr06m!=4TNFK4pLDG$y=8!F?xo8k7Xlh*i zXKp19{zAlqg1yl6*&>f^5apq{_(D{5bC1A8f?J`B@sFZ}~nz?caKc=8wgfq(B4*mvOuhkZ36@1HY>Cu8BxRg57;BmcYnF* zHcE|?dkXBh%-!_-g($QKy7{B@l|dZVoReh@T52V#Wp00A=nm+^?;S%eG0L$bgGC50 zUjTBFvqc)^joum5u}tkO$btm8-p0dE-PGTVG(S%)nJ|LzRkzU>RLWPToquFkC z>6U5KiKwXx^p;X>!}a%}hE^H0YfvY3r-lWhI$JHD#Zg^{H`FK7ahw-{^C~R?^hI*w z^XPyV2WHEBwW84GgGp{ejS@9G_^hz*mY;dI(}diw%j)^w2llhNjU#1uz(j5{UXZhgRB-nvD})3D-mI?Y zi+|Ml%>OVnKCaOC5pr5Qv0$uF<6;WEa$#K5KI^UAe###*MR_Waj@@(Vm;OP-?{$Ud zxX@sz968$C?cNm2D`Yux@tNIX0t0bt+K{qTC=pYB0FtDc4ai_V$7Q--mCj$&mMu~d zoIcZTkf-(Z)@I(X3?cB#I868Kbp{DF^&_9d!Pq&0<%};9rt#1q79nBugM%i6d9*~c z3qoMRXX7$t`Wc~&J*3#!5X#<1yi*_U2p(?gi_d>w-~p2|w3yDAKTwEx9zYKMJaSxw zO-CgpY^`ePx!FmXG)sAbzMl`!=XFK|$LEi-xZWSu=37v(ZcmEpGKn4gRmPzmfRM7qby=05uES*9Vw z;H0Re>7Vs`0h|x1ta&k=ZJTl{*g=D*fR&X;-quzxTU)7<1u`!zTMOliGloWFp0_kRX8Zm_IbhN3Nf#l?1fn<3`Vc&o@K>ycT%q2Wq0Db(0 zPM8PmCbT%qt@i?azmJ(r(9azf1uwMXLr$~9WKSe3&xVOzn5>iH!YjZpHKi7b;^vCjRb+o>d$4-;q5N2jG9lerh3J%E`1RWN5=rWIR|oP?;^w8 z=Zod8WTg9n_$I^2;O@7sb}ae+9fn=B(~S;G5PpjIH8Xj^ut&}A%z8%&Xwh!j`=(1m ze@vuWRff1-iD*@%3dpzG^5m1|G+#Ao*mCp&2rq9k^}{DxnEO#}>U6Xmo8&*=@Jc-* z=sg=19A`KpD^?P}n9<<+)T`MowYBp@kE^mX9B0t{8dDiHry4a zHlsA~r-O&fcoDZq4T_>0+l@64Ijy}p91ez>GMf+dv?YG9u{Wp7B^s;iUK8x=1LP*8 zOANSVkgp(@q&CGnwM^`)1^uj~5E|UR8maq%k1p*?c%Y=78slhMcJtJ6poPkk)tWnB zeqQ5;0?^t$>9Rg39FOHEZrW|WE%9{U^aIZ?P<&$4t_xB_xEi#fG-DO6l^5MHd;T{i0go>W=pj=k>X=QyV?C8hD-8Lw}=b z;q;#b96s`Riz&Amn-PSgv4RT>3+_kSq=e)O_}XL%qCe_d5ioky7lYmD5=+7m#O8G} zseKT%iPH1~yqAKFQv^{7?|iOKPNk20}0u@I~y_tC{ zrrX>c4>EA_YeNc*O5O^(k1XXYR({_g5pq{;I1W&oz0`b&F2QH}wDjXN3;M_ddENSk zh`Y|;QQW0dNg2^=H2ht=>GfrUF>3g`zp$)6CiR6ZI(V6zpI1537{$D-Do&+2&lm*P z-=g+9bL6_O)YShC62;~Wo_uSv5Id9b+D^t$gJb#M7r)k;lZ*Zutq#TU%R z$}Dd~&0T!Y@v(YzxSMvvyJR-T>+g-Vo1FD_z3kFI!m($Yr^7YUi4gPQ@cO@LBasHN z`VY}jhHh=;$mYtiH!Oaf@5c-HtfmPG9^`!E)O-3K5Q;HM)iTtj?tkUUdkZp&b~w2mn8zjbwwu%074>GTxBFLE zj;+|5m3G%Bp|8>k%em%&n$x`}-&)7zYSWXP(_;()*Q?*^ zzfz!5d=0d8a|&P@(nmID2RBZhCX}$gRciuJY`Hj=Co48uBAd{fe7B0$S{^~Ufa6(i z+Li>#UGJ{VsCo9Fw!5r4SFI?m>N}=2errtvAlFPavm;@>tCoFimqn9dY!E-Ht%Hy2 zAj?LZ+w%eNk1JCQ(nTnOZw~aPB6q;=d^cb^rQ{xv_muJKEVQ(E(;uFBy$`#zyy*(XM-GzpOyt%2&MSb6)l)>4*QS?)=<%XZenRNpAnPQIKFMB%UH5Scq*Zew_yMAw3p1dTv} z*Sg_`U?x6|tq`6+gHCn#ZTBhOFNBhIM1vn{m1=v9*)5jyM&y9sHb|a`xEmE+c+Ybu znh45<^o1qga=i!27K4BY#$@t!xz*W?Tr{6RCr2NP2EryG^#55e5e*MAO+G1q*gQ-w|?I zU-k8i`O(=k!e6TucOk!n?u)bl~ML8v};sC?C)N)U~W ze{TK#Xgzj1>K!Ik>jhB8GclG!!Di{ZmhH#Ku_*PYAI1i5E# z2;(5egQZbwjAn6RhmOiP*>Rq%a_k0><$Qhq(QYO;_a>m$$gsuFdDyM7r$A}H5sNU@ zZuwfIGI6sL%LCNfC-?O$Qav8f-9(wz(dUYilS{Jbnq-lzhk?d+`ZXd`j6K>-}7!0cN4kvJL)U>_1>hd5fUHGXwQ_N3x4gTe3P@pQ+g)?>Eh*;PU z>{$5(!hJussalwo%kT8*4tpihR5E;c0@$>`vmAup5}2+3QXux19}PK6r7ne z#4s8}4tSvguyVD%dCg?pj89kcaTeyK|H1H+GDn}+%k^+q8kdWCv%g!<@#L^JiAG5Q z&B}yjPF+g5d1{65ZsF*8kWeX?x6Rj)Nje{MRsU{otlj|jt>Npp!~B|vB%1vOkL376 zrl6>W&~?uQq`*uLBh{%>bB|u1x{DNytn?UQw0M^`60Az(GYa%T+QfmWh>%xz{D1~ZGL(6o1ZmqiHoJJ#td1VtA0f~4 z2m=sec1cc-Rv23R-+Mn%vvf+L%djOk+|(FnjTha_rMcKZ1$(0$ZV49}IXaF^Y)x}k zz27z%Z%$^jx4WM49f!9{t0O>oS|aQ`#?IG=xgE~AJ^g~B&X$fNCDc$acqx!? z20}o=hTI?=e|Em_9j7pPM1n;0FB&1P&>9t$13i4@N2P;gDgIGRJm8BZ#KOkQnQOCF z5?FE3ryg3^8Rw(;Bdg%sWlUYQLJn)W!E8mbFIh&Fe8#|uhp#&Q`W=q5Iww_gO=Z>^O#s-pRdm=I3kEG;_)2Fkoe zgPyoI|K>QR;Q`63kKj%*%+=kbES@sZ>7zFDo|=wY6{GARM)aIv;f5Tm{d~TCyq3Fn zlRk5>3IEGaLvAi9ajQy3Ws-|ze?3yw80&+g0h*Upqeq>#Xy+@N9~U-vjdfnTzNIz`W zbo^#K1W&mu6gda8q4MzFPlL_+n0c}FQd0>$gmN1`I|!6}pfr`+9txyRDkagKSx4|S zp-x^=x~;~R;BPVY zpjl*-3CTwd{8|h;f&TogP|jAiQvMk_2V%bNvQ8yMF2Bo}6R_O=I#I=&eqo;{pFh|2 zw((&Sfm{U>jp1F?t<{T0c~9Cb=}qYN8Jwnl zan+mVH)ctqZCykH9dj)9gz$8mKBw@2b5OGvI_33fASQm3)hQ;NuYaElA|8(W{c-<@ zUJ6S9SN;>+fbfgMQtbuRYt)WECt~{Wi16YWFJ@a_MKXfteEJ8LqIH*-Iwqg~`^i&d zN=jq`H~~|XF1=10qr)m*2=p1_8T^Zo7r*5OhpjgzVJ;@SKQGPa#9e4uo+yEcV{HBH zqx;USBX@>8JW}#oj6t|z*~`s-fATV<+!dv>`P&>;8Ulu!J>Kp%L`@FLz&tsUAT~*p z3m`5ST2*$9#hmj{@N{SJyGxhVXp|pqiIqB9cWnh4DH58X@5w-lSAl`U$wv3pGC(h! zn_1`n_h3l(R5lL*0k~h>P`Y4-PV%K>0qQJ4Si6x|9lX2)4-V5k4{M`|)I-k-o^dE+Kf*qV<+2Xz zZ^i&Ew%XrKCg03tn{(uTZ~n=2IY486EMvbPHJ}pxRR&Lw!a00_Oe=)%!)vh?hL>Zy zzX|_Jwaf;Z>*CRsNtrixMM}#{d&A}kSA>^vg2QD2CttGPEa8;=AVEM8_Vc`zVUeEh zsl9FvCl;@p74Nn0=J({R{`-Ro(=PL6~{U5|9|>M%7tiKPOfVj(OGOP*%2~2RZh~jPA3~A~CS`FHZL1r?HDJbbeGunt}7JD|^r(rjV z{o)ZOZfBp5+U+@&>~)E~KkJHM&`u;iVtiJlxBbKcJC}x?_9u80GVCBMj`qAFYoZ0Y zk;rY%7}~480^?OpREr?Sx-_^4Cf&<$x{RlTZMuQB;vvctfJ)p*fJ1cm)29t zT`cBd{3(2xq(XAN-yckBnU zc8pG0>BY`65GmLMZA_9y$Qpy=PV?UIw!JTsb&<~dG|HYO8{UEF+K_dK+c!X!Dtefu z?E&#PY^VQlryEo!E+UbHL0eRdn`XTwl}Xo`^>thZtB}z9FZ=qs9F`2nEP->@ofejLkbjRIekz+`mCq!b(wGjP&IHhHt%5BToeBzvWy)Ub(3WtQ` zYuY|0Fmtu%7pYKfqSBVqN26M|JGgIZzN*uaveYSNZcSI+vjdZCY3D^L*AVCRY=jay z##QTy@J{s&W^=0fb>VN-JriDIrr6B$4~kY9sgmkb1zJ%@2~2ZxQti4=^pa-B#8ta$ zIXt!c(bwn_?Dx73_mr*aB{D|USqA(!SS1Hv!Y!FniQ%z(w^S|9*0{=bIE|*ezAO5> zy)hqQ!)ufU-|@`HwxNzzpCW*6`g+k;%g$3CUZxhI5 zg}j~XFgbg8W|F^}0$9IJB3HTe>Zh4ETSx!Dq9F&a&5Kh(4GsRwIZ}c7YYv4WC9r4v zCrTv$<#gp>W1@%uSw|5u!H!NuA&zykfB&XW|7&4I{)qR_i7tXe`Bx3`wQL#vr-o>- z{k5>-v;H@DAiWIuRP+xsj!FMnSk3e%zNmPj$2mKGk%eiC# diff --git a/en/device-dev/quick-start/figures/checking-whether-the-serial-port-is-used-10.png b/en/device-dev/quick-start/figures/checking-whether-the-serial-port-is-used-10.png deleted file mode 100644 index cfa0ceb21f5a11d459b93721f512309c9d6da2ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20832 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 diff --git a/en/device-dev/quick-start/figures/chuankou1-7.png b/en/device-dev/quick-start/figures/chuankou1-7.png deleted file mode 100644 index 8eb26425f53028a08eb40e3037ecd302f3082270..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87233 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 diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001113969536.png b/en/device-dev/quick-start/figures/en-us_image_0000001113969536.png deleted file mode 100644 index baac7b26450b8bc195a0db0bb3bb41119c0d9828..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85763 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 JRq_^L{~t15_CNpt diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001114129426.png b/en/device-dev/quick-start/figures/en-us_image_0000001114129426.png deleted file mode 100644 index c5548cb227bd024b49aa3adba0a20869581448e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 113968 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%0AM&kYJncedKVMDBEkhKai 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 DJ;XhJ diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001117621400.png b/en/device-dev/quick-start/figures/en-us_image_0000001117621400.png new file mode 100644 index 0000000000000000000000000000000000000000..bfb378217e99536cf076deecfb0f0677cb51eef8 GIT binary patch literal 25708 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 z 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 z%0A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 z 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

Y? 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

vpddXCQvS3fMexO(x4s`Ia7+h6^}u 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 diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001105524466.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311066.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001105524466.png rename to en/device-dev/quick-start/figures/en-us_image_0000001128311066.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001105216304.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311070.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001105216304.png rename to en/device-dev/quick-start/figures/en-us_image_0000001128311070.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001152176131.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311072.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001152176131.png rename to en/device-dev/quick-start/figures/en-us_image_0000001128311072.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001096963405.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311090.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001096963405.png rename to en/device-dev/quick-start/figures/en-us_image_0000001128311090.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001078089378.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311092.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001078089378.png rename to en/device-dev/quick-start/figures/en-us_image_0000001128311092.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001073835952.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311094.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001073835952.png rename to en/device-dev/quick-start/figures/en-us_image_0000001128311094.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001128311096.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311096.png new file mode 100644 index 0000000000000000000000000000000000000000..0cd7b0a67ce7110774979284e69c462058723756 GIT binary patch literal 1455 zcmV;g1yK5lP)sI8wpZ`|sm~%Y#Tge4!)Wy+fW(Zmrk8>iQ!(jU@**gF0>+5Oud4GRD%|0I=AE(*p z?d|P!#Pj+2d2-K8uej&XD;_%6Uol=o$KJYbl!&2 zhYlNL;m{#N8qY-<)pwo)o)ze9$DFWj#I8O|@z`fpa$bBkV6(Yak;c*{S_t?%oH5p2 z%#yug%7^`0y360gLK?@A2KvVmeSzej0xQWlbV&H|nswM!vQO!}ZtclA*q?RyFvhyG z18d2OcMtqEzpml8B(FjmwW&MM66Wmu0i0biT`$G6opsF<(l~}RxCfG3*LWAp z80&~-jP>50u&tGDpP5`gNTUKPA)Z#EB|GBW;SdW6U)|f;oe$#S&k{CBwn2x@$?^dn z(%4QKRZG;JYum!rm)FqIAFN9PLtaSuz>YOyAYo^zz9TtZKFxzQ_QDzx_@1(IZ^?H- z8e5XN*sTY2Igi9}{*cBpX&l*??B##reMDVC8uE)!EqX}f|KGK2{TaE|HtXNJ_*-g! zb<)^!xWwM)P^E8=-M5g&!kb1ez++#4^mo3$A&rp6rvDVnrJKKW_g=Hrq=A3yYXJ)9 zNA08QYv#xKM$Zzz=ero`dAsM+q=5_PF7+tZYseA#vA;VnY?1AuNo}6HHq)emfpHgZ z6hn@l9L?qYT6vwX!&>pdpZl_;|Nr_Q(%ASzmkd&fHbJz4cAp!nJ^- zexq@mk9CcAYv=DU7aJ_(kQp#<8hU|r%|+|k;5Xs}UzNSsvi0nm3u_nSF!)D?C^7?= zGjM*>sN(1a(lr;bXLGqYc0_OGXPou5IcIZ>>=U2MK}$^@rzSs0qZ*4#1lekK&)&1O z@+t0ejAEJ#>#gy~6Ztq7AibRL+J{8koER-0mB|QN0Oigfv1LnSrSp2x(+srUvGyZ?o)kyKgih zjgUr2BQr2H10jtJ%+$c-4d8a)0FLU-nKVktlNw|OG6N$s@E6aB;XFD#>eB!K002ov JPDHLkV1l{2@jCzj literal 0 HcmV?d00001 diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001160649343.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311098.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001160649343.png rename to en/device-dev/quick-start/figures/en-us_image_0000001128311098.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001128311100.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311100.png new file mode 100644 index 0000000000000000000000000000000000000000..61aec8202ac830a3598ef2c8a413be30c5a742f0 GIT binary patch literal 20063 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 VcFXWHD2{s}=TPqFJ)g0f{{mA}?Fs+@ literal 0 HcmV?d00001 diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001128311104.png b/en/device-dev/quick-start/figures/en-us_image_0000001128311104.png new file mode 100644 index 0000000000000000000000000000000000000000..773abcd91a0c0ee1d3f5f87218216fc337d8f62f GIT binary patch literal 96167 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 literal 0 HcmV?d00001 diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001160529355.png b/en/device-dev/quick-start/figures/en-us_image_0000001128470904.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001160529355.png rename to en/device-dev/quick-start/figures/en-us_image_0000001128470904.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001128470906.png b/en/device-dev/quick-start/figures/en-us_image_0000001128470906.png new file mode 100644 index 0000000000000000000000000000000000000000..281958fe76a787acc5d0b98f5ea248fa5abf2405 GIT binary patch literal 103804 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

Vtg*jbt8t_rb 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%0Dq^ya?*KWprui&l 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

mGr7G zx3#0-)lw`3eTynABsRitGhV*oFa6Tc@i(9Yd?hd)KrsySN^QXH<8#}^WMw2*yUvZY zVqLwc7hUa`>-z>eqtN%i8GG6vsc&iJLh|xr@t1Mj^6X#?4ffvL-XDNF`bqTTgT1g* zr&@%U=d~VUD)3$umQ0;(Zq24cQT+I=5Een%+b5YGcMla-u;s(jk+$x^v<80(uy18t za1{c$u_7Zuc*5J;x@w-}?mmjf)~w;CFx&g~S#Z!(;q&-b$b_xe32w0xjxmp3zz!Q6 zf`qBuk@oG>s|Jk61oo;)*f5}4wc8+HgV&@mJ4+M)#xs)R z-z{{KOxBS*#|7>vIyPPb`SZba>coQj{>%vZq>ojOEwQC}G`pCcZZCcjLWaz~ESXXM=>K7P>%&lLewfRi}Bk?G?Ni-I;F zR4@!NcgFe*gSdA>uU;-RC#WHtN3i^U@q`E2_~op{&%1CK1Ym!D5H24JFU&JM(y}=y$Vl%N)~o$|eSk>mGw-ln@9i!50WR56Txah3~KDG_YD`*MkQeSfb{PB=El2Rpap<;yBH9)Gh#EFi-s2^Yj-R)glDQrnZd#v zxOE+I?oL#hwpc%lh5J`*yO{EEfeF1-)_!s=yul0f+W-4VOtJ6ylP~!K2iJpqObU*R z+0eTbgVuK5D0ImB-J28xmhFWx$ zgnF~eCb!FU`pOYK2W6UAblOh>pOy+mgAju^=Kc&6bMwhSbkB59Sazz0=mP<%UjvD4 zF?biyl(zvB`~WZ8sOE)l!v{l2_5->8QI-u{c1o8!U$~s`zMY)V`32hj%`IuNLM@C! zk&8g?(aTr0+|t+glO6rC5h!FBt-SOlD}~%N>Cmd7fh$i6Vp(Hs2MFQ_;(XmRi}aF)&Pg)AVu$9*@7XIYEp-($A@MgezRNVEX1C6eh!<02 zc-&IAf|(*(d86aLJ^?jE7c4?k;j8QMinsL@cXxvuS*@K-Pl zdA}{f>02cIe1^hFzC6j0NM{qPC*)3B#A@>(W%=WrCX0^q6LODW*ye8@hKvu22dTsp zWXXgXoNB&K>F;!3V57L=zd@3YNI36%0s9~&fp$IC` zbZizWf{V7ps}z)7gCDgIqUhEmp8^&kwZfC z(DuP$e&*Cc)&VeuiJK1n6Iy{h2f|{z5SRj7RK)O&P1iT$lE)#(G4LwiEk@-~>S&N@iIsos??Ho<>pMMYLr8##WN*MgP@B;9S5-D> zivCugXmXX^=)2C)Q|I2yUW62ZZ?hN8>3Bj>Cc7X2571 z&%M9CVg2L|1ooXy+4ry5Gjj?WtvBkxSaw}|&Hw&i<&1ar#L(zK%xQ48-Ke7Y$W+p& zZs64E+Z^APh}9fS+T3|8`+Pr7s~)g^)iS0fL=ez1i4!+&v*Yu1%$YNng>$DfEVMTX z%P#P!cs+CG%x3lJO8%v)nB=Gt44*KaMGNLKD>H|K$FFdBTN)-!20%q%?png?HxdasGnN!ZM2e7i7y z>s|ix?IjYr1YtDSWYBB8?2d73sC-jXb}HTdhLN)P8c*);V#<_kPMj{_=+;#1R`Ul- zC6zrmQR6AAxWc%I4$5bV>|`drFN0!NQ1P^wdGqEncisXP&WtC>XAoO&R8e$z3h7ff za{5dm$F`2aq>5$7i94J>y_P9c)^YdYT^1#U5I%C3!pZ)G9)#vx;m2>w*pU@W@X%~3 zp42USJe_^jEI#{|2m7M&6b7f!Iu{y5t`X;R}4S!=pJ

8$$(@) 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򯷯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 <`)SU!IDur< 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 M{fHaQHRPM00bT_|^8f$< diff --git a/en/device-dev/quick-start/hi3516-development-board.md b/en/device-dev/quick-start/hi3516-development-board.md index 39c132f0a83..53148cbe9a1 100644 --- a/en/device-dev/quick-start/hi3516-development-board.md +++ b/en/device-dev/quick-start/hi3516-development-board.md @@ -1,4 +1,4 @@ -# Hi3516 Development Board +# Hi3516 Development Board - [Introduction](#section26131214194212) - [Development Board Specifications](#section15192203316533) diff --git a/en/device-dev/quick-start/hi3516.md b/en/device-dev/quick-start/hi3516.md index 17987269923..e33aa899315 100644 --- a/en/device-dev/quick-start/hi3516.md +++ b/en/device-dev/quick-start/hi3516.md @@ -1,4 +1,4 @@ -# Hi3516 +# Hi3516 - **[Setting Up the Environment](setting-up-the-environment-2.md)** diff --git a/en/device-dev/quick-start/hi3518-development-board.md b/en/device-dev/quick-start/hi3518-development-board.md index 1ba46e856f9..262d456b50b 100644 --- a/en/device-dev/quick-start/hi3518-development-board.md +++ b/en/device-dev/quick-start/hi3518-development-board.md @@ -1,4 +1,4 @@ -# Hi3518 Development Board +# Hi3518 Development Board - [Introduction](#section14815247616) - [Development Board Specifications](#section765112478446) diff --git a/en/device-dev/quick-start/hi3518.md b/en/device-dev/quick-start/hi3518.md index 3f7e2e5dcd0..817d4c82616 100644 --- a/en/device-dev/quick-start/hi3518.md +++ b/en/device-dev/quick-start/hi3518.md @@ -1,4 +1,4 @@ -# Hi3518 +# Hi3518 - **[Setting Up the Environment](setting-up-the-environment-4.md)** diff --git a/en/device-dev/quick-start/hi3861-development-board.md b/en/device-dev/quick-start/hi3861-development-board.md index 4e9d3ce1665..6790ab0fe64 100644 --- a/en/device-dev/quick-start/hi3861-development-board.md +++ b/en/device-dev/quick-start/hi3861-development-board.md @@ -1,4 +1,4 @@ -# Hi3861 Development Board +# Hi3861 Development Board - [Introduction](#section19352114194115) - [Resources and Constraints](#section82610215014) @@ -19,7 +19,7 @@ The Hi3861 WLAN module can also be connected to the Hi3861 mother board to expan **Figure 2** Appearance of the Hi3861 mother board -![](figures/en-us_image_0000001119945810.png) +![](figures/en-us_image_0000001174350615.png) - The RF circuit includes modules such as the power amplifier \(PA\), low noise amplifier \(LNA\), RF Balun, antenna switch, and power management. It supports a standard bandwidth of 20 MHz and a narrow bandwidth of 5 MHz or 10 MHz, and provides a maximum rate of 72.2 Mbit/s at the physical layer. - The Hi3861 WLAN baseband supports the orthogonal frequency division multiplexing \(OFDM\) technology and is backward compatible with the direct sequence spread spectrum \(DSSS\) and complementary code keying \(CCK\) technologies. In addition, the Hi3861 WLAN baseband supports various data rates specified in the IEEE 802.11 b/g/n protocol. @@ -29,7 +29,7 @@ The Hi3861 WLAN module can also be connected to the Hi3861 mother board to expan **Figure 3** Hi3861 functions - ![](figures/en-us_image_0000001105524466.png) + ![](figures/en-us_image_0000001128311066.png) ## Resources and Constraints diff --git a/en/device-dev/quick-start/hi3861.md b/en/device-dev/quick-start/hi3861.md index 8032fdd2ab4..100cdfcabc2 100644 --- a/en/device-dev/quick-start/hi3861.md +++ b/en/device-dev/quick-start/hi3861.md @@ -1,4 +1,4 @@ -# Hi3861 +# Hi3861 - **[Setting Up the Environment](setting-up-the-environment.md)** diff --git a/en/device-dev/quick-start/how-to-develop-12.md b/en/device-dev/quick-start/how-to-develop-12.md deleted file mode 100644 index f6fe9c7a06d..00000000000 --- a/en/device-dev/quick-start/how-to-develop-12.md +++ /dev/null @@ -1,246 +0,0 @@ -# How to Develop - -- [Environment Setup](#section1246439101710) -- [Build](#section375234715135) -- [Burning](#section111671738101213) - - [Prerequisites](#section1458192114718) - - [Programming Flash Memory Through the USB Port](#section18423113662120) - -- [Development Example](#section5600113114323) - -## Environment Setup - -For details about setting up the standard OpenHarmony environment, see [Setting Up the Environment](overview-9.md). - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->For details about the environment requirements of the third-party development board, refer to the official guide of the development board. - -## Build - -If you are using the Docker environment, refer to the Docker usage guide to build the system. If you are using the installation package, perform the following operations in the Linux environment. - -1. Go to the root directory of the source code and run the following command to build the distribution. - - ``` - ./build.sh --product-name Hi3516DV300 - ``` - - **product\_name** indicates the platform supported by the current distribution, - -2. Check the build result. After the build is complete, the following information is displayed in the log: - - ``` - build system image successful. - =====build Hi3516DV300 successful. - ``` - - Files generated during the build are stored in the **out/ohos-arm-release/** directory, and the generated image is stored in the **out/ohos-arm-release/packages/phone/images/** directory. - - >![](public_sys-resources/icon-note.gif) **NOTE:** - >For details about module-specific build operations, see [Compilation and Building Overview](../subsystems/building-guidelines-for-the-standard-system.md). - - -## Burning - -Programming flash memory of a regular system requires DevEco Device Tool v2.2 Beta1 or later. - -The Hi3516DV300 of the Hi3516 series development boards supports programming flash memory of a regular system through the USB port, network port, or serial port, where: - -- **Windows system: Supports programming through the USB port, serial port, or network port** -- **Linux system: Supports programming through the serial port or network port \(Linux+Windows dual system: Also supports programming through the USB port\)** - -Except for environment setup, the burning operations are the same for Windows and Linux. - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->Currently, the Hi3516D V300 development board supports system burning over the USB port, network port, or serial port. This document uses the USB port as an example. For details about system burning over other ports, see [Programming Flash Memory on the Hi3516](https://device.harmonyos.com/en/docs/ide/user-guides/hi3516_upload-0000001052148681). - -### Prerequisites - -[Open a project](https://device.harmonyos.com/en/docs/ide/user-guides/open_project-0000001071680043) in DevEco Device Tool and select the folder where the file to be programmed is located. Select **Hi3516DV300** for the development board type and **Hb** for **Framework**. - -### Programming Flash Memory Through the USB Port - -The Hi3516DV300 supports programming through the USB port in Windows or Linux+Windows environment. - -1. Connect the PC and the target development board through the serial port and USB port. In this section, the Hi3516DV300 is used as an example. For details, please refer to [Introduction to the Hi3516 Development Board](https://device.harmonyos.com/en/docs/start/introduce/oem_camera_start_3516-0000001052670587). -2. Open Device Manager, then check and record the serial port number corresponding to the development board. - - >![](public_sys-resources/icon-note.gif) **NOTE:** - >If the serial port number is not displayed correctly, follow the steps described in [Installing the Serial Port Driver on the Hi3516 or Hi3518 Series Development Boards](https://device.harmonyos.com/en/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695). - - ![](figures/en-us_image_0000001160529359.png) - -3. Open DevEco Device Tool and go to **Projects** \> **Settings**. - - ![](figures/2021-01-27_170334-17.png) - -4. On the **Partition Configuration** tab page, enter the information about the files to be programmed, including the following. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Name

-

Binary

-

Memory

-

System

-

Address

-

Length

-

Board

-

Type

-

fastboot

-

Select u-boot-hi3516dv300_emmc.bin.

-

emmc

-

none

-

0x000000

-

0x100000

-

Select hi3516dv300.

-

NA

-

boot

-

Select uImage.

-

emmc

-

none

-

0x100000

-

0xf00000

-

NA

-

updater

-

Select updater.img.

-

emmc

-

ext3/4

-

0x1000000

-

0x1400000

-

NA

-

misc

-

Leave it blank.

-

emmc

-

none

-

0x2400000

-

0x100000

-

NA

-

system

-

Select system.img.

-

emmc

-

ext3/4

-

0x2500000

-

0xceb00000

-

NA

-

vendor

-

Select vendor.img.

-

emmc

-

ext3/4

-

0xd1000000

-

0x10000000

-

NA

-

userdata

-

Select userdata.img.

-

emmc

-

ext3/4

-

0xe1000000

-

0x5b800000

-

NA

-
- - ![](figures/en-us_image_0000001160527611.png) - -5. On the **hi3516dv300** tab page, configure the programming options. - - - **upload\_port**: Select the serial port number obtained in step 2. - - **upload\_protocol**: Select the programming protocol **hiburn-usb**. - - **upload\_partitions**: Select the file to be programmed, including the following: fastboot, boot, updater, misc, system, vendor, and userdata. - - ![](figures/en-us_image_0000001160528243.png) - -6. When you finish modifying, click **Save** in the upper right corner. -7. Open the project file, go to ![](figures/2021-01-27_170334-18.png) \> **PROJECT TASKS** \> **fastboot** \> **Erase** to erase U-boot. - - ![](figures/en-us_image_0000001163045527.png) - -8. When the following message is displayed, power off the development board and then power it on. - - ![](figures/en-us_image_0000001114129426.png) - -9. If the following message is displayed, it indicates that U-Boot is erased successfully. - - ![](figures/en-us_image_0000001113969536.png) - -10. Go to **hi3516dv300** \> **Upload** to start programming. - - >![](public_sys-resources/icon-note.gif) **NOTE:** - >If this is the first time you program flash memory on the Hi3516 or Hi3518 board, the message "not find the Devices" may be displayed. In this case, follow the steps in [Installing the USB Driver on the Hi3516 or Hi3518 Series Development Boards](https://device.harmonyos.com/en/docs/ide/user-guides/usb_driver-0000001058690393) and start programming again. - - ![](figures/1-19.png) - -11. If the following message is displayed, it indicates that the programming is successful. - - ![](figures/en-us_image_0000001160649343.png) - - -## Development Example - -You have completed the quick start for the standard system. Get yourself familiar with OpenHarmony by a [Development Example for Platform Drivers](../guide/overview-10.md). - diff --git a/en/device-dev/quick-start/how-to-develop.md b/en/device-dev/quick-start/how-to-develop.md index 1d961ebf4b5..3e5f705cb56 100644 --- a/en/device-dev/quick-start/how-to-develop.md +++ b/en/device-dev/quick-start/how-to-develop.md @@ -1,4 +1,4 @@ -# How to Develop +# How to Develop - **[Hi3861](hi3861.md)** diff --git a/en/device-dev/quick-start/introduction-to-the-development-boards.md b/en/device-dev/quick-start/introduction-to-the-development-boards.md index 6703a78fe6d..3848dad5841 100644 --- a/en/device-dev/quick-start/introduction-to-the-development-boards.md +++ b/en/device-dev/quick-start/introduction-to-the-development-boards.md @@ -1,4 +1,4 @@ -# Introduction to the Development Boards +# Introduction to the Development Boards - **[Hi3861 Development Board](hi3861-development-board.md)** diff --git a/en/device-dev/quick-start/introduction.md b/en/device-dev/quick-start/introduction.md new file mode 100644 index 00000000000..7209c5c0f18 --- /dev/null +++ b/en/device-dev/quick-start/introduction.md @@ -0,0 +1,54 @@ +# Introduction + +- [Quick Start Process](#section7825218111517) +- [Introduction to the Development Board](#en-us_topic_0000001053666242_section047719215429) +- [Development Board Specifications](#en-us_topic_0000001053666242_section15192203316533) + +This document helps you quickly understand how to set up a standard OpenHarmony system, and how to build, burn, and start the system. You can develop the standard system in Windows and build source code in Linux. + +This document uses the recommended Hi3516D V300 development board as an example. + +## Quick Start Process + +The following figure shows the process of getting started for the standard system, during which, you can set up the Ubuntu development environment in Docker mode or by using the installation package. + +**Figure 1** Getting started for the standard system +![](figures/getting-started-for-the-standard-system.png "getting-started-for-the-standard-system") + +## Introduction to the Development Board + +Hi3516D V300 is a next-generation system on chip \(SoC\) designed for the industry-dedicated smart HD IP camera. It introduces a next-generation image signal processor \(ISP\), the H.265 video compression encoder, and a high-performance NNIE engine, leading the industry in terms of low bit rate, high image quality, intelligent processing and analysis, and low power consumption. + +**Figure 2** Hi3516D V300 front view + + +![](figures/3516正面-17.png) + +## Development Board Specifications + +**Table 1** Specifications of the Hi3516 development board + + + + + + + + + + + + + +

Item

+

Description

+

Processor and internal memory

+
  • Hi3516D V300
  • 1 GB DDR3
  • 8 GB eMMC4.5
+

External components

+
  • Ethernet port
  • Audio and video
    • One voice input
    • One mono (AC_L) output, connected to a 3 W power amplifier (LM4871)
    • Micro-HDMI (one HDMI 1.4)
    +
  • Cameras
    • Sensor IMX335
    • M12 lens with a focal length of 4 mm and an aperture of 1.8
    +
  • Display
    • 2.35-inch LCD connector
    • 5.5-inch LCD connector
    +
  • External components and interfaces
    • microSD card interface
    • JTAG/I2S interface
    • ADC interface
    • Steer gear interface
    • Grove connector
    • USB 2.0 (Type C)
    • Three function keys: two custom keys and one update key
    • LED indicator (including green and red)
    +
+
+ diff --git a/en/device-dev/quick-start/overview-0.md b/en/device-dev/quick-start/overview-0.md index 9a732413694..8a7a6ba8fdb 100644 --- a/en/device-dev/quick-start/overview-0.md +++ b/en/device-dev/quick-start/overview-0.md @@ -1,4 +1,4 @@ -# Overview +# Overview The mini and small OpenHarmony systems are suitable for IoT devices with limited memory. This document describes the system development with three typical development boards: Hi3861 WLAN module, Hi3516D V300, and Hi3518E V300. diff --git a/en/device-dev/quick-start/overview-1.md b/en/device-dev/quick-start/overview-1.md index d490f51d2eb..5b5feef48c5 100644 --- a/en/device-dev/quick-start/overview-1.md +++ b/en/device-dev/quick-start/overview-1.md @@ -1,4 +1,4 @@ -# Overview +# Overview Use the DevEco Device Tool for development, build, burning, and debugging of OpenHarmony. diff --git a/en/device-dev/quick-start/overview-6.md b/en/device-dev/quick-start/overview-6.md deleted file mode 100644 index c4f01181922..00000000000 --- a/en/device-dev/quick-start/overview-6.md +++ /dev/null @@ -1,4 +0,0 @@ -# Overview - -This document helps you quickly understand how to set up a standard OpenHarmony system, and how to build, burn, and start the system. This document uses the recommended Hi3516D V300 development board as an example. - diff --git a/en/device-dev/quick-start/overview-7.md b/en/device-dev/quick-start/overview-7.md deleted file mode 100644 index c4f01181922..00000000000 --- a/en/device-dev/quick-start/overview-7.md +++ /dev/null @@ -1,4 +0,0 @@ -# Overview - -This document helps you quickly understand how to set up a standard OpenHarmony system, and how to build, burn, and start the system. This document uses the recommended Hi3516D V300 development board as an example. - diff --git a/en/device-dev/quick-start/overview-8.md b/en/device-dev/quick-start/overview-8.md deleted file mode 100644 index 050e338e9d4..00000000000 --- a/en/device-dev/quick-start/overview-8.md +++ /dev/null @@ -1,58 +0,0 @@ -# Overview - -- [Introduction](#section18217135811916) -- [Environment Requirements](#section466851916410) - - [Hardware](#section19682305453) - - [Software](#section1595725202314) - - -## Introduction - -In a standard system, you can use the DevEco Device Tool for development and burning in Windows, and for build in Linux. This document describes how to set up the environment. - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->The procedure for setting up a Windows standard-system environment is basically the same as that for setting up a Windows mini- or small-system environment. Therefore, you can skip section [Windows Development Environment](windows-development-environment-9.md) if you have set up a Windows mini- or small-system environment. - -## Environment Requirements - -### Hardware - -- Linux compile server -- Windows workstation \(host computer\) - -### Software - -**Table 1** Development platform requirements - - - - - - - - - - - - - - - - - - -

Platform

-

Software

-

Description

-

Remarks

-

Linux compile server

-

Operating system

-

Ubuntu 18.04 64-bit or later is used for the Linux OS, and bash is used as the shell. The server hardware specifications are as follows:

-
  • Hard disk: at least 400 GB
  • CPU: at least 8 cores
  • Memory: at least 32 GB
-

Common software such as samba and vim is installed in the OS by default. Adaptation is required to support Linux file sharing.

-

You can develop programs on the Windows workstation or Linux server via a remote login.

-

Windows workstation

-

Operating system

-

Windows XP/Windows7/Windows10

-
- diff --git a/en/device-dev/quick-start/overview-9.md b/en/device-dev/quick-start/overview-9.md deleted file mode 100644 index 2afccc92c3a..00000000000 --- a/en/device-dev/quick-start/overview-9.md +++ /dev/null @@ -1,58 +0,0 @@ -# Overview - -- [Introduction](#section18217135811916) -- [Environment Requirements](#section466851916410) - - [Hardware](#section19682305453) - - [Software](#section1595725202314) - - -## Introduction - -In a standard OpenHarmony system, you can use the DevEco Device Tool for development and burning in Windows, and for build in Linux. This document describes how to set up the environment. - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->The procedure for setting up a Windows standard-system environment is basically the same as that for setting up a Windows mini- or small-system environment. Therefore, you can skip section [Windows Development Environment](windows-development-environment-10.md) if you have set up a Windows mini- or small-system environment. - -## Environment Requirements - -### Hardware - -- Linux compile server -- Windows workstation \(host computer\) - -### Software - -**Table 1** Development platform requirements - - - - - - - - - - - - - - - - - - -

Platform

-

Software

-

Description

-

Remarks

-

Linux compile server

-

Operating system

-

Ubuntu 18.04 64-bit or later is used for the Linux OS, and bash is used as the shell. The server hardware specifications are as follows:

-
  • Hard disk: at least 400 GB
  • CPU: at least 8 cores
  • Memory: at least 32 GB
-

Common software such as samba and vim is installed in the OS by default. Adaptation is required to support Linux file sharing.

-

You can develop programs on the Windows workstation or Linux server via a remote login.

-

Windows workstation

-

Operating system

-

Windows XP/Windows7/Windows10

-
- diff --git a/en/device-dev/quick-start/preparing-the-ubuntu-build-environment.md b/en/device-dev/quick-start/preparing-the-ubuntu-build-environment.md deleted file mode 100644 index e1f0774daad..00000000000 --- a/en/device-dev/quick-start/preparing-the-ubuntu-build-environment.md +++ /dev/null @@ -1,69 +0,0 @@ -# Preparing the Ubuntu Build Environment - -- [Method 1: Setting up an Ubuntu Build Environment Using a Docker Environment](#section1643363843714) - - [Obtaining Standard-System Source Code](#section58448331029) - - [Installing and Using the Docker Environment](#section22916211916) - -- [Method 2: Setting up an Ubuntu Build Environment Using an Installation Package](#section25961010189) - - [Installing Dependent Tools](#section109262032104819) - - [Obtaining Standard-System Source Code](#section6325556113718) - - [Obtaining prebuilts](#section16453104219209) - - -You can use either the Docker environment or installation package provided by OpenHarmony to set up an Ubuntu build environment. This section describes the two methods. - -## Method 1: Setting up an Ubuntu Build Environment Using a Docker Environment - -The standard OpenHarmony system provides a Docker environment which encapsulates build tools. To use the Docker environment, perform the following steps: - -1. Obtain the standard-system source code. -2. Install and use the Docker environment. - -### Obtaining Standard-System Source Code - -Obtain the [standard-system source code](https://repo.huaweicloud.com/harmonyos/os/2.0/code-2.0-canary.tar.gz). The obtained source code is the static code. If you want to obtain the latest source code from Gitee, use [repo](../get-code/source-code-acquisition.md). - -### Installing and Using the Docker Environment - -For details, see [Installing and Using Docker](../get-code/tool-acquisition.md). - -## Method 2: Setting up an Ubuntu Build Environment Using an Installation Package - -The procedure is as follows: - -1. Install dependent tools. -2. Obtain the standard-system source code. -3. Obtain prebuilts. - -### Installing Dependent Tools - -The installation command is as follows: - -``` -sudo apt-get install binutils git-core git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 -``` - ->![](public_sys-resources/icon-caution.gif) **CAUTION:** ->The preceding command is applicable to Ubuntu 18.04. For other Ubuntu versions, use the corresponding installation commands based on the installation package name. If the Ubuntu version is later than 18.04, Python 2.7 and python-minimal must be installed. - -### Obtaining Standard-System Source Code - -Obtain the [standard-system source code](https://repo.huaweicloud.com/harmonyos/os/2.0/code-2.0-canary.tar.gz). The obtained source code is the static code. If you want to obtain the latest source code from Gitee, use [repo](../get-code/source-code-acquisition.md). - -### Obtaining prebuilts - -1. Go to the OpenHarmony working directory. - - ``` - cd OpenHarmony - ``` - -2. Execute the following script: - - ``` - build/prebuilts_download.sh - ``` - - By default, the downloaded prebuilts binary file is stored in **OpenHarmony\_2.0\_canary\_prebuilts** \(which is in the same directory as **OpenHarmony**\). - - diff --git a/en/device-dev/quick-start/running-a-hello-ohos-program-4.md b/en/device-dev/quick-start/running-a-hello-ohos-program-4.md deleted file mode 100644 index 62c15169618..00000000000 --- a/en/device-dev/quick-start/running-a-hello-ohos-program-4.md +++ /dev/null @@ -1,268 +0,0 @@ -# Running a Hello OHOS Program - -- [Creating a Program](#section1550972416485) -- [Building](#section234175193114) -- [Burning](#section7609155824819) -- [Running an Image](#section17612105814480) -- [Follow-up Learning](#section9712145420182) - -This section describes how to create, compile, burn, and run the first program, and finally print **Hello OHOS!** on the develop board. - -## Creating a Program - -1. Create a directory and the program source code. - - Create the **applications/sample/camera/apps/src/helloworld.c** directory and file whose code is shown in the following example. You can customize the content to be printed. For example, you can change **OHOS** to **World**. You can use either C or C++ to develop a program. - - ``` - #include - - int main(int argc, char **argv) - { - printf("\n************************************************\n"); - printf("\n\t\tHello OHOS!\n"); - printf("\n************************************************\n\n"); - - return 0; - } - ``` - -2. Create a build file. - - Create the **applications/sample/camera/apps/BUILD.gn** file. The file content is as follows: - - ``` - import("//build/lite/config/component/lite_component.gni") - lite_component("hello-OHOS") { - features = [ ":helloworld" ] - } - executable("helloworld") { - output_name = "helloworld" - sources = [ "src/helloworld.c" ] - include_dirs = [] - defines = [] - cflags_c = [] - ldflags = [] - } - ``` - -3. Add a new component. - - Add the configuration of the **hello\_world\_app** component to the **build/lite/components/applications.json** file. The sample code below shows some configurations defined in the **applications.json** file, and the code between **\#\#start\#\#** and **\#\#end\#\#** is the new configuration \(Delete the rows where **\#\#start\#\#** and **\#\#end\#\#** are located after the configurations are added.\) - - ``` - { - "components": [ - { - "component": "camera_sample_communication", - "description": "Communication related samples.", - "optional": "true", - "dirs": [ - "applications/sample/camera/communication" - ], - "targets": [ - "//applications/sample/camera/communication:sample" - ], - "rom": "", - "ram": "", - "output": [], - "adapted_kernel": [ "liteos_a" ], - "features": [], - "deps": { - "components": [], - "third_party": [] - } - }, - ##start## - { - "component": "hello_world_app", - "description": "Communication related samples.", - "optional": "true", - "dirs": [ - "applications/sample/camera/apps" - ], - "targets": [ - "//applications/sample/camera/apps:hello-OHOS" - ], - "rom": "", - "ram": "", - "output": [], - "adapted_kernel": [ "liteos_a" ], - "features": [], - "deps": { - "components": [], - "third_party": [] - } - }, - ##end## - { - "component": "camera_sample_app", - "description": "Camera related samples.", - "optional": "true", - "dirs": [ - "applications/sample/camera/launcher", - "applications/sample/camera/cameraApp", - "applications/sample/camera/setting", - "applications/sample/camera/gallery", - "applications/sample/camera/media" - ], - ``` - -4. Modify the board configuration file. - - Add the **hello\_world\_app** component to the **vendor/hisilicon/hispark\_aries/config.json** file. The sample code below shows the configurations of the **applications** subsystem, and the code between **\#\#start\#\#** and **\#\#end\#\#** is the new configuration \(Delete the rows where **\#\#start\#\#** and **\#\#end\#\#** are located after the configurations are added.\) - - ``` - { - "subsystem": "applications", - "components": [ - ##start## - { "component": "hello_world_app", "features":[] }, - ##end## - { "component": "camera_sample_app", "features":[] } - - ] - }, - ``` - - -## Building - -If the Linux environment is installed using Docker, perform the compilation by referring to [Using Docker to Prepare the Build Environment](../get-code/tool-acquisition.md). If the Linux compilation environment is installed using a software package, execute the following commands to compile source code in the root directory of the source code package. - -``` -hb set (Set the building path.) -. (Select the current path.) -Select ipcamera_hispark_aries@hisilicon and press Enter. -hb build -f (Start building.) -``` - -The result files are generated in the **out/hispark\_aries/ipcamera\_hispark\_aries** directory. - -**Figure 1** Settings -![](figures/settings-4.png "settings-4") - ->![](public_sys-resources/icon-notice.gif) **NOTICE:** ->The U-boot file of the Hi3518E V300 development board can be obtained from the following path: device/hisilicon/hispark\_aries/sdk\_liteos/uboot/out/boot/u-boot-hi3518ev300.bin - -## Burning - -The USB port is the only burning mode supported by the Hi3518 development board. - -1. Connect the PC and the target development board through the serial port and USB port. In this section, the Hi3518EV300 is used as an example. For details, please refer to [Introduction to the Hi3518 Development Board](https://device.harmonyos.com/en/docs/start/introduce/oem_camera_start_hi3518-0000001050170473). -2. Open Device Manager, then check and record the serial port number corresponding to the development board. - - >![](public_sys-resources/icon-note.gif) **NOTE:** - >If the serial port number is not displayed correctly, follow the steps described in [Installing the Serial Port Driver on the Hi3516 or Hi3518 Series Development Boards](https://device.harmonyos.com/en/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695). - - ![](figures/en-us_image_0000001073057176.png) - -3. Open DevEco Device Tool and go to **Projects** \> **Settings**. - - ![](figures/en-us_image_0000001077956808.png) - -4. On the **hi3518ev300** tab page, set the programming options. - - - **upload\_port**: Select the serial port number obtained in step [2](#en-us_topic_0000001057313128_li46411811196). - - **upload\_protocol**: Select the programming protocol **hiburn-usb**. - - **upload\_partitions**: Select the file to be programmed. By default, the **fastboot**, **kernel**, **rootfs**, and **userfs** files are programmed at the same time. - - ![](figures/en-us_image_0000001096963405.png) - -5. Switch between the **hi3518ev300\_fastboot**, **hi3518ev300\_kernel**, **hi3518ev300\_rootfs**, and **hi3518ev300\_userfs** tab pages, and modify the settings. In general cases, you can leave the fields at their default settings. To change the default settings, select the target item in the **New Option** field first. - - ![](figures/2021-01-28_112953.png) - -6. When you finish modifying, click **Save** in the upper right corner. - - ![](figures/2021-01-27_170334-5.png) - -7. Open the project file, go to ![](figures/2021-01-27_170334-6.png) \> **PROJECT TASKS** \> **partition:hi3518ev300\_fastboot** \> **Erase** to erase U-boot. - - ![](figures/2021-01-27_181047.png) - -8. When the following message is displayed, power off the development board and then power it on. - - ![](figures/en-us_image_0000001078089378.png) - -9. If the following message is displayed, it indicates that U-Boot is erased successfully. - - ![](figures/en-us_image_0000001073835952.png) - -10. Go to **env:hi3518ev300** \> **Upload** to start programming. - - ![](figures/en-us_image_0000001121061169.png) - -11. If the following message is displayed, it indicates that the programming is successful. - - ![](figures/en-us_image_0000001073242197.png) - - -## Running an Image - -1. Connect to a serial port. - - >![](public_sys-resources/icon-notice.gif) **NOTICE:** - >If the connection fails, rectify the fault by referring to [FAQs](../quick-start/faqs-2.md). - - **Figure 2** Serial port connection - - - ![](figures/chuankou1-7.png) - - 1. Click **Monitor** to enable the serial port. The **TERMINAL** window is displayed. - 2. Press **Enter** repeatedly until **hisilicon** displays. - 3. Go to [step 2](#li9441185382314) if the board is started for the first time or the startup parameters need to be modified; go to [step 3](#li6442853122312) otherwise. - -2. \(Mandatory for the first burning\) Modify the **bootcmd** and **bootargs** parameters of U-boot. This step is a fixed operation and the result can be saved. However, you need to perform the following steps again if U-boot needs to be reburnt. - - **Table 1** Parameters of the U-boot - - - - - - - - - - - - - - - - - - - - - - -

Command

-

Description

-

setenv bootcmd "sf probe 0;sf read 0x40000000 0x100000 0x600000;go 0x40000000";

-

Run this command to set the content of bootcmd. Select the flash whose number is 0, and read content that has a size of 0x600000 (6 MB) and a start address of 0x100000 to memory address 0x40000000. The size must be the same as that of the OHOS_Image.bin file in the IDE.

-

setenv bootargs "console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7 M rootsize=8 M";

-

In this command, bootargs is set to the serial port output, the baud rate is 115200, the data bit is 8, and the rootfs is mounted to the flash memory. The file system type is set to jffs2 rw, which provides the read-write attribute for the JFFS2 file system. rootaddr=7 M rootsize=8 M indicates the actual start address and length of the rootfs.img file to be burnt, respectively. The file size must be the same as that of the rootfs.img file in the IDE.

-

saveenv

-

saveenv means to save the current configuration.

-

reset

-

reset means to reset the board.

-

pri

-

pri means to view the displayed parameters.

-
- - >![](public_sys-resources/icon-notice.gif) **NOTICE:** - >**go 0x40000000** \(optional\) indicates that the command is fixed in the startup parameters by default and the board automatically starts after it is reset. If you want to manually start the board, press **Enter** in the countdown phase of the U-boot startup to interrupt the automatic startup. - -3. If **hisilicon \#** is displayed during the startup, run the **reset** command. After the system automatically starts and **OHOS** is displayed, run the **./bin/helloworld** command and then press **Enter**. The system is started successfully if information shown in the following figure is displayed. - - **Figure 3** Successful system startup and program execution - ![](figures/successful-system-startup-and-program-execution-8.png "successful-system-startup-and-program-execution-8") - - -## Follow-up Learning - -Congratulations! You have finished all steps! You are advised to go on learning how to develop [Cameras with a Screen](../guide/cameras-with-a-screen.md). - diff --git a/en/device-dev/quick-start/running-a-hello-ohos-program-5.md b/en/device-dev/quick-start/running-a-hello-ohos-program-5.md index 713bd45a6bd..e3f5d5e2955 100644 --- a/en/device-dev/quick-start/running-a-hello-ohos-program-5.md +++ b/en/device-dev/quick-start/running-a-hello-ohos-program-5.md @@ -1,4 +1,4 @@ -# Running a Hello OHOS Program +# Running a Hello OHOS Program - [Creating a Program](#section1550972416485) - [Building](#section234175193114) @@ -46,9 +46,9 @@ This section describes how to create, compile, burn, and run the first program, } ``` -3. Add a new component. +3. Add a component. - Add the configuration of the **hello\_world\_app** component to the **build/lite/components/applications.json** file. The sample code below shows some configurations defined in the **applications.json** file, and the code between **\#\#start\#\#** and **\#\#end\#\#** is the new configuration \(Delete the rows where **\#\#start\#\#** and **\#\#end\#\#** are located after the configurations are added.\) + Add the configuration of the **hello\_world\_app** component to the **build/lite/components/applications.json** file. The sample code below shows some configurations defined in the **applications.json** file, and the code between **"\#\#start\#\#"** and **"\#\#end\#\#"** is the new configuration \(Delete the rows where **"\#\#start\#\#"** and **"\#\#end\#\#"** are located after the configurations are added.\) ``` { @@ -128,7 +128,7 @@ This section describes how to create, compile, burn, and run the first program, ## Building -If the Linux environment is installed using Docker, perform the building by referring to [Using Docker to Prepare the Build Environment](../get-code/tool-acquisition.md). If the Linux environment is installed using a software package, go to the root directory of the source code and run the following commands for source code compilation: +If the Linux environment is installed using Docker, perform the building by referring to [Using Docker to Prepare the Build Environment](../get-code/docker-environment.md). If the Linux environment is installed using a software package, go to the root directory of the source code and run the following commands for source code compilation: ``` hb set (Set the building path.) @@ -143,53 +143,53 @@ The result files are generated in the **out/hispark\_aries/ipcamera\_hispark\_a ![](figures/settings-4.png "settings-4") >![](public_sys-resources/icon-notice.gif) **NOTICE:** ->The U-boot file of the Hi3518E V300 development board can be obtained from the following path: device/hisilicon/hispark\_aries/sdk\_liteos/uboot/out/boot/u-boot-hi3518ev300.bin +>The U-Boot file of the Hi3518E V300 development board can be obtained from the following path: device/hisilicon/hispark\_aries/sdk\_liteos/uboot/out/boot/u-boot-hi3518ev300.bin ## Burning The USB port is the only burning mode supported by the Hi3518 development board. -1. Connect the PC and the target development board through the serial port and USB port. In this section, the Hi3518EV300 is used as an example. For details, please refer to [Introduction to the Hi3518 Development Board](https://device.harmonyos.com/en/docs/start/introduce/oem_camera_start_hi3518-0000001050170473). +1. Connect the PC and the target development board through the serial port and USB port. In this section, the Hi3518EV300 is used as an example. For details, see [Introduction to the Hi3518 Development Board](https://device.harmonyos.com/en/docs/start/introduce/oem_minitinier_des_3518-0000001105201138). 2. Open Device Manager, then check and record the serial port number corresponding to the development board. >![](public_sys-resources/icon-note.gif) **NOTE:** >If the serial port number is not displayed correctly, follow the steps described in [Installing the Serial Port Driver on the Hi3516 or Hi3518 Series Development Boards](https://device.harmonyos.com/en/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695). - ![](figures/en-us_image_0000001073057176.png) + ![](figures/en-us_image_0000001128470900.png) 3. Open DevEco Device Tool and go to **Projects** \> **Settings**. - ![](figures/en-us_image_0000001077956808.png) + ![](figures/en-us_image_0000001174350649.png) 4. On the **Partition Configuration** tab page, modify the settings. In general cases, you can leave the fields at their default settings. 5. On the **hi3518ev300** tab page, set the programming options. - - **upload\_port**: Select the serial port number obtained in step [2](#en-us_topic_0000001057313128_li46411811196). + - **upload\_port**: Select the serial port number obtained in [2](#en-us_topic_0000001057313128_li46411811196). - **upload\_protocol**: Select the programming protocol **hiburn-usb**. - **upload\_partitions**: Select the file to be programmed. By default, the **fastboot**, **kernel**, **rootfs**, and **userfs** files are programmed at the same time. - ![](figures/en-us_image_0000001096963405.png) + ![](figures/en-us_image_0000001128311090.png) 6. When you finish modifying, click **Save** in the upper right corner. -7. Open the project file, go to ![](figures/2021-01-27_170334-5.png) \> **PROJECT TASKS** \> **hi3518ev300\_fastboot** \> **Erase** to erase U-boot. +7. Open the project file and click ![](figures/2021-01-27_170334-5.png). In the DevEco Device Tool window, choose **PROJECT TASKS** \> **hi3518ev300\_fastboot** \> **Erase** to erase U-Boot. - ![](figures/en-us_image_0000001163529159.png) + ![](figures/en-us_image_0000001174270731.png) 8. When the following message is displayed, power off the development board and then power it on. - ![](figures/en-us_image_0000001078089378.png) + ![](figures/en-us_image_0000001128311092.png) 9. If the following message is displayed, it indicates that U-Boot is erased successfully. - ![](figures/en-us_image_0000001073835952.png) + ![](figures/en-us_image_0000001128311094.png) 10. Go to **hi3518ev300** \> **Upload** to start programming. - ![](figures/en-us_image_0000001163568181.png) + ![](figures/en-us_image_0000001174350641.png) 11. If the following message is displayed, it indicates that the programming is successful. - ![](figures/en-us_image_0000001073242197.png) + ![](figures/en-us_image_0000001174350643.png) ## Running an Image @@ -208,9 +208,9 @@ The USB port is the only burning mode supported by the Hi3518 development board. 2. Press **Enter** repeatedly until **hisilicon** displays. 3. Go to [step 2](#li9441185382314) if the board is started for the first time or the startup parameters need to be modified; go to [step 3](#li6442853122312) otherwise. -2. \(Mandatory for the first burning\) Modify the **bootcmd** and **bootargs** parameters of U-boot. This step is a fixed operation and the result can be saved. However, you need to perform the following steps again if U-boot needs to be reburnt. +2. \(Mandatory for first-time burning\) Modify the **bootcmd** and **bootargs** parameters of U-Boot. This step is a fixed operation and the result can be saved. However, you need to perform the following steps again if U-Boot needs to be reburnt. - **Table 1** Parameters of the U-boot + **Table 1** Parameters of the U-Boot

Command

@@ -248,7 +248,7 @@ The USB port is the only burning mode supported by the Hi3518 development board.
>![](public_sys-resources/icon-notice.gif) **NOTICE:** - >**go 0x40000000** \(optional\) indicates that the command is fixed in the startup parameters by default and the board automatically starts after it is reset. If you want to manually start the board, press **Enter** in the countdown phase of the U-boot startup to interrupt the automatic startup. + >**go 0x40000000** \(optional\) indicates that the command is fixed in the startup parameters by default and the board automatically starts after it is reset. If you want to manually start the board, press **Enter** in the countdown phase of the U-Boot startup to interrupt the automatic startup. 3. If **hisilicon \#** is displayed during the startup, run the **reset** command. After the system automatically starts and **OHOS** is displayed, run the **./bin/helloworld** command and then press **Enter**. The system is started successfully if information shown in the following figure is displayed. diff --git a/en/device-dev/quick-start/running-a-hello-ohos-program.md b/en/device-dev/quick-start/running-a-hello-ohos-program.md index 5f38a61c19e..19bf8bf16ab 100644 --- a/en/device-dev/quick-start/running-a-hello-ohos-program.md +++ b/en/device-dev/quick-start/running-a-hello-ohos-program.md @@ -1,4 +1,4 @@ -# Running a Hello OHOS Program +# Running a Hello OHOS Program - [Creating a Program](#section204672145202) - [Building](#section1077671315253) @@ -129,7 +129,7 @@ This section describes how to create, compile, burn, and run the first program, ## Building -If the Linux environment is installed using Docker, perform the building by referring to [Using Docker to Prepare the Build Environment](../get-code/tool-acquisition.md). If the Linux environment is installed using a software package, go to the root directory of the source code and run the following commands for source code compilation: +If the Linux environment is installed using Docker, perform the building by referring to [Using Docker to Prepare the Build Environment](../get-code/docker-environment.md). If the Linux environment is installed using a software package, go to the root directory of the source code and run the following commands for source code compilation: ``` hb set (Set the building path.) @@ -150,49 +150,49 @@ The result files are generated in the **out/hispark\_taurus/ipcamera\_hispark\_ The Hi3516 development board allows you to burn flash memory over the USB port, serial port, or network port. The following uses the network port burning as an example. -1. Connect the PC and the target development board through the power port, serial port, and network port. In this section, the Hi3516DV300 is used as an example. For details, please refer to [Introduction to the Hi3516 Development Board](https://device.harmonyos.com/en/docs/start/introduce/oem_camera_start_3516-0000001052670587). +1. Connect the PC and the target development board through the power port, serial port, and network port. In this section, the Hi3516DV300 is used as an example. For details, please refer to [Introduction to the Hi3516 Development Board](https://device.harmonyos.com/en/docs/start/introduce/oem_minitinier_des_3516-0000001152041033). 2. Open Device Manager, then check and record the serial port number corresponding to the development board. >![](public_sys-resources/icon-note.gif) **NOTE:** >If the serial port number is not displayed correctly, follow the steps described in [Installing the Serial Port Driver on the Hi3516 or Hi3518 Series Development Boards](https://device.harmonyos.com/en/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695). - ![](figures/en-us_image_0000001114129428.png) + ![](figures/en-us_image_0000001174350647.png) 3. Open DevEco Device Tool and go to **Projects** \> **Settings**. ![](figures/2021-01-27_170334.png) 4. On the **Partition Configuration** tab page, modify the settings. In general cases, you can leave the fields at their default settings. -5. On the **hi3516dv300** tab page, configure the programming options. +5. On the **hi3516dv300** tab page, set the programming options. - - **upload\_port**: Select the serial port number obtained in step [2](#en-us_topic_0000001056443961_li142386399535). + - **upload\_port**: Select the serial port number obtained in [2](#en-us_topic_0000001056443961_li142386399535). - **upload\_protocol**: Select the programming protocol **hiburn-net**. - **upload\_partitions**: Select the file to be programmed. By default, the **fastboot**, **kernel**, **rootfs**, and **userfs** files are programmed at the same time. - ![](figures/en-us_image_0000001160529355.png) + ![](figures/en-us_image_0000001128470904.png) 6. Check and set the IP address of the network adapter connected to the development board. For details, see [Setting the IP Address of the Network Port for Programming on Hi3516](https://device.harmonyos.com/en/docs/ide/user-guides/set_ipaddress-0000001141825075). 7. Set the IP address of the network port for programming: - - **upload\_net\_server\_ip**: Select the IP address set in [6](#en-us_topic_0000001056443961_li1558813168234), such as 192.168.1.2. - - **upload\_net\_client\_mask**: Set the subnet mask of the development board, such as 255.255.255.0. Once the **upload\_net\_server\_ip** field is set, this field will be automatically populated. - - **upload\_net\_client\_gw**: Set the gateway of the development board, such as 192.168.1.1. Once the **upload\_net\_server\_ip** field is set, this field will be automatically populated. - - **upload\_net\_client\_ip**: Set the IP address of the development board, such as 192.168.1.3. Once the **upload\_net\_server\_ip** field is set, this field will be automatically populated. + - **upload\_net\_server\_ip**: Select the IP address set in [6](#en-us_topic_0000001056443961_li1558813168234). Example: 192.168.1.2. + - **upload\_net\_client\_mask**: Set the subnet mask of the development board, such as 255.255.255.0. Once the **upload\_net\_server\_ip** field is set, this field will be automatically populated. Example: 255.255.255.0. + - **upload\_net\_client\_gw**: Set the gateway of the development board, such as 192.168.1.1. Once the **upload\_net\_server\_ip** field is set, this field will be automatically populated. Example: 192.168.1.1. + - **upload\_net\_client\_ip**: Set the IP address of the development board, such as 192.168.1.3. Once the **upload\_net\_server\_ip** field is set, this field will be automatically populated. Example: 192.168.1.3. - ![](figures/en-us_image_0000001117463460.png) + ![](figures/en-us_image_0000001174270733.png) 8. When you finish modifying, click **Save** in the upper right corner. -9. Open the project file and go to ![](figures/2021-01-27_170334-2.png) \> **PROJECT TASKS** \> **hi3516dv300** \> **Upload** to start programming. +9. Open the project file and click ![](figures/2021-01-27_170334-2.png). In the DevEco Device Tool window, choose **PROJECT TASKS** \> **hi3516dv300** \> **Upload** to start programming. - ![](figures/en-us_image_0000001116405268.png) + ![](figures/en-us_image_0000001174270729.png) 10. When the following message is displayed, power off the development board and then power it on. - ![](figures/en-us_image_0000001114129432.png) + ![](figures/en-us_image_0000001128470906.png) -11. Start programming. When the following message is displayed, it indicates that the programming is successful. +11. Start burning. When the following message is displayed, the burning is successful. - ![](figures/en-us_image_0000001113969542.png) + ![](figures/en-us_image_0000001128311098.png) ## Running an Image diff --git a/en/device-dev/quick-start/running-a-hello-world-program.md b/en/device-dev/quick-start/running-a-hello-world-program.md index 8cb794b97c3..033f919351f 100644 --- a/en/device-dev/quick-start/running-a-hello-world-program.md +++ b/en/device-dev/quick-start/running-a-hello-world-program.md @@ -1,4 +1,4 @@ -# Running a Hello World Program +# Running a Hello World Program - [Modifying Source Code](#section79601457101015) - [Debugging and Verification](#section1621064881419) @@ -135,7 +135,7 @@ To parse the call stack information, the **Hi3861\_wifiiot\_app.asm** file is 3. Determine that an exception occurs in the **WadRecvCB** function based on the call stack information. - ![](figures/en-us_image_0000001152256221.png) + ![](figures/en-us_image_0000001174270737.png) 4. Check and modify the code. diff --git a/en/device-dev/quick-start/setting-up-the-environment-1.md b/en/device-dev/quick-start/setting-up-the-environment-1.md deleted file mode 100644 index 49586bc1993..00000000000 --- a/en/device-dev/quick-start/setting-up-the-environment-1.md +++ /dev/null @@ -1,151 +0,0 @@ -# Setting Up the Environment - -- [Environment Requirements](#section179175261196) - - [Hardware](#section5840424125014) - - [Software](#section965634210501) - -- [Installing Linux Build Tools](#section182916865219) - - [Changing Linux Shell to Bash](#section1715027152617) - - [Installing Basic Software Used for Compilation and Building \(Required Only for Ubuntu 20+\)](#section45512412251) - - [Installing a File Packing Tool](#section1969111820270) - - [Installing the JVM](#section1692618112713) - - -## Environment Requirements - -### Hardware - -- Hi3516D V300 IoT camera development board -- USB-to-serial cable and network cable \(The Windows workstation is connected to the Hi3516D V300 development board through the USB-to-serial cable and network cable.\) - -The following figure shows the hardware connections. - -**Figure 1** Hardware connections - - -![](figures/矩形备份-292.png) - -### Software - ->![](public_sys-resources/icon-notice.gif) **NOTICE:** ->This section describes how to use an installation package to set up the compilation and development environment. If you are going to use Docker to set up the environment, skip this section and [Installing Linux Build Tools](#section182916865219). - -The following table describes the tools required for setting up the general environment for a Linux server of the Hi3516 development board and how to obtain these tools. - -**Table 1** Development tools and obtaining methods - - - - - - - - - - - - - - - - - - - - - - - - -

Development Tool

-

Description

-

How to Obtain

-

bash

-

Processes CLI commands.

-

System configuration

-

Basic software package for compilation and building (required only for Ubuntu 20+)

-

Provides a basic software package for compilation and building.

-

Internet

-

dosfstools, mtools, and mtd-utils

-

Pack files.

-

apt-get install

-

Java virtual machine (JVM)

-

Compiles, debugs, and runs Java programs.

-

apt-get install

-
- -## Installing Linux Build Tools - ->![](public_sys-resources/icon-notice.gif) **NOTICE:** ->- If you acquire the source code using an HPM component or HPM CLI tool, you do not need to install compilation tools like **LLVM** and **hc-gen**. ->- \(Recommended\) If you obtain the source code through an image site or a code repository, you should install **hc-gen**. When installing the compilation tool, ensure that its environment variable path is unique. - -### Changing Linux Shell to Bash - -Check whether bash is used as the shell. - -``` -ls -l /bin/sh -``` - -If **/bin/sh -\> bash** is not displayed, do as follows to change shell to bash. - -**Method 1:** Run the following command on the device and then click **No**. - -``` -sudo dpkg-reconfigure dash -``` - -**Method 2:** Run the first command to delete **sh** and then run the second command to create a new soft link. - -``` -sudo rm -rf /bin/sh -sudo ln -s /bin/bash /bin/sh -``` - -### Installing Basic Software Used for Compilation and Building \(Required Only for Ubuntu 20+\) - -Install the software. - -``` -sudo apt-get install build-essential && sudo apt-get install gcc && sudo apt-get install g++ && sudo apt-get install make && sudo apt-get install zlib* && sudo apt-get install libffi-dev -``` - -### Installing a File Packing Tool - -1. Start a Linux server. -2. Install **dosfstools**. - - ``` - sudo apt-get install dosfstools - ``` - -3. Install **mtools**. - - ``` - sudo apt-get install mtools - ``` - -4. Install **mtd-utils**. - - ``` - sudo apt-get install mtd-utils - ``` - - -### Installing the JVM - -1. Start a Linux server. -2. Install the Java Runtime Environment \(JRE\). - - ``` - sudo apt-get install default-jre - ``` - -3. Install the Java Development Kit \(JDK\). - - ``` - sudo apt-get install default-jdk - ``` - - diff --git a/en/device-dev/quick-start/setting-up-the-environment-2.md b/en/device-dev/quick-start/setting-up-the-environment-2.md index 1c3604b02e1..0e8430d75a7 100644 --- a/en/device-dev/quick-start/setting-up-the-environment-2.md +++ b/en/device-dev/quick-start/setting-up-the-environment-2.md @@ -1,4 +1,4 @@ -# Setting Up the Environment +# Setting Up the Environment - [Environment Requirements](#section179175261196) - [Hardware](#section5840424125014) diff --git a/en/device-dev/quick-start/setting-up-the-environment-3.md b/en/device-dev/quick-start/setting-up-the-environment-3.md deleted file mode 100644 index 7f27e367398..00000000000 --- a/en/device-dev/quick-start/setting-up-the-environment-3.md +++ /dev/null @@ -1,156 +0,0 @@ -# Setting Up the Environment - -- [Environment Requirements](#section1724111409282) - - [Hardware](#section487353718276) - - [Software Requirements](#section17315193935817) - -- [Installing Linux Build Tools](#section8831868501) - - [Changing Linux Shell to Bash](#section1715027152617) - - [Installing Basic Software Used for Compilation and Building \(Required Only for Ubuntu 20+\)](#section45512412251) - - [Installing a File Packing Tool](#section1686964015274) - - [Installing hc-gen](#section18706403274) - - -## Environment Requirements - -### Hardware - -- Hi3518E V300 IoT camera development board -- USB-to-serial cable and network cable \(The Windows workstation is connected to the Hi3518E V300 development board through the USB-to-serial cable and network cable.\) - - The following figure shows the hardware connections. - - -**Figure 1** Hardware connections -![](figures/hardware-connections-3.png "hardware-connections-3") - -### Software Requirements - ->![](public_sys-resources/icon-notice.gif) **NOTICE:** ->This section describes how to use an installation package to set up the compilation and development environment. If you are going to use Docker to set up the environment, skip this section and [Installing Linux Build Tools](#section8831868501). - -The following table describes the tools required for setting up the general environment for a Linux server of the Hi3518 development board and how to obtain these tools. - -**Table 1** Development tools and obtaining methods - - - - - - - - - - - - - - - - - - - - -

Development Tool

-

Description

-

How to Obtain

-

bash

-

Processes CLI commands.

-

System configuration

-

Basic software package for compilation and building (required only for Ubuntu 20+)

-

Provides a basic software package for compilation and building.

-

Internet

-

dosfstools, mtools, and mtd-utils

-

Pack files.

-

apt-get install

-
- -## Installing Linux Build Tools - ->![](public_sys-resources/icon-notice.gif) **NOTICE:** ->- If you acquire the source code using an HPM component or HPM CLI tool, you do not need to install **hc-gen**. ->- \(Recommended\) If you obtain the source code through an image site or a code repository, you should install the compilation tool **hc-gen**. When installing the compilation tool, ensure that its environment variable path is unique. - -### Changing Linux Shell to Bash - -Check whether bash is used as the shell. - -``` -ls -l /bin/sh -``` - -If **/bin/sh -\> bash** is not displayed, do as follows to change shell to bash. - -**Method 1:** Run the following command on the device and then click **No**. - -``` -sudo dpkg-reconfigure dash -``` - -**Method 2:** Run the first command to delete **sh** and then run the second command to create a new soft link. - -``` -sudo rm -rf /bin/sh -sudo ln -s /bin/bash /bin/sh -``` - -### Installing Basic Software Used for Compilation and Building \(Required Only for Ubuntu 20+\) - -Install the software. - -``` -sudo apt-get install build-essential && sudo apt-get install gcc && sudo apt-get install g++ && sudo apt-get install make && sudo apt-get install zlib* && sudo apt-get install libffi-dev -``` - -### Installing a File Packing Tool - -1. Start a Linux server. -2. Install **dosfstools**. - - ``` - sudo apt-get install dosfstools - ``` - -3. Install **mtools**. - - ``` - sudo apt-get install mtools - ``` - -4. Install **mtd-utils**. - - ``` - sudo apt-get install mtd-utils - ``` - - -### Installing hc-gen - -1. Start a Linux server. -2. Download [hc-gen](https://repo.huaweicloud.com/harmonyos/compiler/hc-gen/0.65/linux/hc-gen-0.65-linux.tar). -3. Decompress the hc-gen installation package to **\~/hc-gen** on the Linux server. - - ``` - tar -xvf hc-gen-0.65-linux.tar -C ~/ - ``` - -4. Set an environment variable. - - ``` - vim ~/.bashrc - ``` - - Copy the following command to the last line of the **.bashrc** file, save the file, and exit. - - ``` - export PATH=~/hc-gen:$PATH - ``` - -5. Validate the environment variable. - - ``` - source ~/.bashrc - ``` - - diff --git a/en/device-dev/quick-start/setting-up-the-environment-4.md b/en/device-dev/quick-start/setting-up-the-environment-4.md index e8938baf915..606871622b0 100644 --- a/en/device-dev/quick-start/setting-up-the-environment-4.md +++ b/en/device-dev/quick-start/setting-up-the-environment-4.md @@ -1,4 +1,4 @@ -# Setting Up the Environment +# Setting Up the Environment - [Environment Requirements](#section1724111409282) - [Hardware](#section487353718276) diff --git a/en/device-dev/quick-start/setting-up-the-environment.md b/en/device-dev/quick-start/setting-up-the-environment.md index 382dc5ac66d..9eb8b040c63 100644 --- a/en/device-dev/quick-start/setting-up-the-environment.md +++ b/en/device-dev/quick-start/setting-up-the-environment.md @@ -1,4 +1,4 @@ -# Setting Up the Environment +# Setting Up the Environment - [Environment Requirements](#section466851916410) - [Hardware](#section19202111020215) @@ -362,6 +362,6 @@ Perform the following operations on the Windows station. 2. Install the driver. 3. After the driver is installed, remove and then insert the USB cable. The serial port entry should be displayed as shown in the following figure. - ![](figures/en-us_image_0000001057235392.png) + ![](figures/en-us_image_0000001174350633.png) diff --git a/en/device-dev/quick-start/setting-up-ubuntu-development-environment-in-docker-mode-and-building-source-code.md b/en/device-dev/quick-start/setting-up-ubuntu-development-environment-in-docker-mode-and-building-source-code.md new file mode 100644 index 00000000000..0a3ca86c329 --- /dev/null +++ b/en/device-dev/quick-start/setting-up-ubuntu-development-environment-in-docker-mode-and-building-source-code.md @@ -0,0 +1,118 @@ +# Setting Up Ubuntu Development Environment in Docker Mode and Building Source Code + +- [Obtaining Standard-System Source Code](#section8761819202511) + - [Prerequisites](#section102871547153314) + - [Procedure](#section429012478331) + +- [Obtaining the Docker Environment](#section181431248132513) +- [Building Source Code](#section92391739152318) + +The standard OpenHarmony system provides a Docker environment which encapsulates build tools. + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>- Before using Docker, install it by following instructions in [Install Docker Engine on Ubuntu](https://docs.docker.com/engine/install/ubuntu/). +>- You can also use the [installation package](setting-up-ubuntu-development-environment-with-installation-package-and-building-source-code.md) to set up the Ubuntu development environment. + +## Obtaining Standard-System Source Code + +### Prerequisites + +1. Register your account with Gitee. +2. Register an SSH public key for access to Gitee. +3. Install the [git client](http://git-scm.com/book/en/v2/Getting-Started-Installing-Git) and [git-lfs](https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading)), and configure basic user information. + + ``` + git config --global user.name "yourname" + git config --global user.email "your-email-address" + git config --global credential.helper store + ``` + +4. Run the following commands to install the **repo** tool: + + ``` + curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo # If you do not have the access permission to this directory, download the tool to any other accessible directory and configure the directory to the environment variable. + chmod a+x /usr/local/bin/repo + pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests + ``` + + +### Procedure + +Method 1 \(recommended\): Use the **repo** tool to download the source code over SSH. \(You must have registered an SSH public key for access to Gitee.\) + +``` +repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify +repo sync -c +repo forall -c 'git lfs pull' +``` + +Method 2: Use the **repo** tool to download the source code over HTTPS. + +``` +repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify +repo sync -c +repo forall -c 'git lfs pull' +``` + +## Obtaining the Docker Environment + +**Method 1: Obtaining the Docker image from HUAWEI CLOUD SWR** + +1. Obtain the Docker image. + + ``` + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 + ``` + +2. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: + + ``` + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 + ``` + + +**Method 2: Using the Dockerfile to build a local docker image** + +1. Obtain the Dockerfile script for a local Docker image. + + ``` + git clone https://gitee.com/openharmony/docs.git + ``` + +2. Go to the directory of the Dockerfile code and run the following command to build the Docker image: + + ``` + cd docs/docker/standard + ./build.sh + ``` + +3. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: + + ``` + docker run -it -v $(pwd):/home/openharmony openharmony-docker-standard:0.0.1 + ``` + + +## Building Source Code + +1. Run the preprocessing script in the root directory of the source code. + + ``` + ../scripts/prepare.sh + ``` + +2. Run the following script to start building for Standard-System Devices \(reference memory ≥ 128 MB\): + + ``` + ./build.sh --product-name {product_name} + ``` + + **product\_name** indicates the product supported by the current distribution, for example, **Hi3516DV300**. + + Files generated during the build are stored in the **out/ohos-arm-release/** directory, and the generated image is stored in the **out/ohos-arm-release/packages/phone/images/** directory. + +3. Burn the image. For details, see [Burning Images](burning-images.md). + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>You can exit Docker by simply running the **exit** command. + diff --git a/en/device-dev/quick-start/setting-up-ubuntu-development-environment-with-installation-package-and-building-source-code.md b/en/device-dev/quick-start/setting-up-ubuntu-development-environment-with-installation-package-and-building-source-code.md new file mode 100644 index 00000000000..0aaa9188a03 --- /dev/null +++ b/en/device-dev/quick-start/setting-up-ubuntu-development-environment-with-installation-package-and-building-source-code.md @@ -0,0 +1,98 @@ +# Setting Up Ubuntu Development Environment with Installation Package and Building Source Code + +- [Installing Dependent Tools](#section18431165519244) +- [Obtaining Standard-System Source Code](#section113751052102517) + - [Prerequisites](#section102871547153314) + - [Procedure](#section429012478331) + +- [Running prebuilts](#section0495320152619) +- [Building Source Code](#section1664835963517) + +## Installing Dependent Tools + +The installation command is as follows: + +``` +sudo apt-get update && sudo apt-get install binutils git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8 python3-pip +``` + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>The preceding command is applicable to Ubuntu 18.04. For other Ubuntu versions, modify the preceding installation command based on the installation package name. + +## Obtaining Standard-System Source Code + +### Prerequisites + +1. Register your account with Gitee. +2. Register an SSH public key for access to Gitee. +3. Install the [git client](http://git-scm.com/book/en/v2/Getting-Started-Installing-Git) and [git-lfs](https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading)), and configure basic user information. + + ``` + git config --global user.name "yourname" + git config --global user.email "your-email-address" + git config --global credential.helper store + ``` + +4. Run the following commands to install the **repo** tool: + + ``` + curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo # If you do not have the access permission to this directory, download the tool to any other accessible directory and configure the directory to the environment variable. + chmod a+x /usr/local/bin/repo + pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests + ``` + + +### Procedure + +Method 1 \(recommended\): Use the **repo** tool to download the source code over SSH. \(You must have registered an SSH public key for access to Gitee.\) + +``` +repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify +repo sync -c +repo forall -c 'git lfs pull' +``` + +Method 2: Use the **repo** tool to download the source code over HTTPS. + +``` +repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify +repo sync -c +repo forall -c 'git lfs pull' +``` + +## Running prebuilts + +Go to the root directory of the source code and run the following script to install the compiler and binary tool: + +``` +bash build/prebuilts_download.sh +``` + +By default, the downloaded prebuilts binary file is stored in **OpenHarmony\_2.0\_canary\_prebuilts** \(which is in the same directory as **OpenHarmony**\). + +## Building Source Code + +Perform the following operations in the Linux environment: + +1. Go to the root directory of the source code and run the following command to build the distribution. + + ``` + ./build.sh --product-name {product_name} + ``` + + **product\_name** indicates the product supported by the current distribution, for example, **Hi3516DV300**. + +2. Check the build result. After the build is complete, the following information is displayed in the log: + + ``` + build system image successful. + =====build Hi3516DV300 successful. + ``` + + Files generated during the build are stored in the **out/ohos-arm-release/** directory, and the generated image is stored in the **out/ohos-arm-release/packages/phone/images/** directory. + + >![](public_sys-resources/icon-note.gif) **NOTE:** + >For details about module-specific build operations, see [Compilation and Building Overview](../subsystems/building-guidelines-for-the-standard-system.md). + +3. Burn the image. For details, see [Burning Images](burning-images.md). + diff --git a/en/device-dev/quick-start/windows-development-environment-9.md b/en/device-dev/quick-start/setting-up-windows-development-environment.md similarity index 99% rename from en/device-dev/quick-start/windows-development-environment-9.md rename to en/device-dev/quick-start/setting-up-windows-development-environment.md index 91c42c4f088..4308389e169 100644 --- a/en/device-dev/quick-start/windows-development-environment-9.md +++ b/en/device-dev/quick-start/setting-up-windows-development-environment.md @@ -1,4 +1,4 @@ -# Windows Development Environment +# Setting Up Windows Development Environment - [Obtaining the Software](#en-us_topic_0000001058091994_section1483143015558) - [Installing Visual Studio Code](#en-us_topic_0000001058091994_section71401018163318) diff --git a/en/device-dev/quick-start/standard-system.md b/en/device-dev/quick-start/standard-system.md index 33f6ed2a876..f0aa95fdac2 100644 --- a/en/device-dev/quick-start/standard-system.md +++ b/en/device-dev/quick-start/standard-system.md @@ -1,9 +1,15 @@ # Standard System -- **[Overview](overview-7.md)** +- **[Introduction](introduction.md)** -- **[Environment Setup](environment-setup-8.md)** +- **[Setting Up Windows Development Environment](setting-up-windows-development-environment.md)** -- **[How to Develop](how-to-develop-12.md)** +- **[Setting Up Ubuntu Development Environment in Docker Mode and Building Source Code](setting-up-ubuntu-development-environment-in-docker-mode-and-building-source-code.md)** + +- **[Setting Up Ubuntu Development Environment with Installation Package and Building Source Code](setting-up-ubuntu-development-environment-with-installation-package-and-building-source-code.md)** + +- **[Burning Images](burning-images.md)** + +- **[FAQs](faqs-7.md)** diff --git a/en/device-dev/quick-start/ubuntu-build-environment-10.md b/en/device-dev/quick-start/ubuntu-build-environment-10.md deleted file mode 100644 index 6b44c27dfc7..00000000000 --- a/en/device-dev/quick-start/ubuntu-build-environment-10.md +++ /dev/null @@ -1,149 +0,0 @@ -# Ubuntu Build Environment - -- [Setting up a Ubuntu Build Environment Using a Docker Environment](#section1643363843714) - - [Obtaining System Source Code](#section58448331029) - - [Installing and Using the Docker Environment](#section22916211916) - -- [Setting up a Ubuntu Build Environment Using an Installation Package](#section25961010189) - - [Obtaining Standard-System Source Code](#section15424183111912) - - [Installing Dependent Tools](#section109262032104819) - - [Obtaining prebuilts](#section16453104219209) - - [Configuring the Node.js Environment and Obtaining the Node\_modules Dependency Package](#section133741330192119) - - [Installing the hc-gen Tool](#section149281248182116) - - -You can use either the Docker environment or installation package provided by OpenHarmony to set up a Ubuntu build environment. This section describes the two methods. - -## Setting up a Ubuntu Build Environment Using a Docker Environment - -The standard OpenHarmony system provides a Docker environment which encapsulates build tools. To use the Docker environment, perform the following steps: - -1. Obtain the system source code. -2. Install and use the Docker environment. - -### Obtaining System Source Code - -For details, see [Source Code Acquisition](../get-code/source-code-acquisition.md). - -### Installing and Using the Docker Environment - -For details, see [Installing and Using Docker](../get-code/tool-acquisition.md). - -## Setting up a Ubuntu Build Environment Using an Installation Package - -The procedure is as follows: - -1. Obtain the system source code. -2. Install dependent tools. -3. Obtain prebuilts. -4. Configure the Node.js environment and obtain the Node\_modules dependency package. -5. Install the hc-gen tool. - -### Obtaining Standard-System Source Code - -For details, see [Source Code Acquisition](../get-code/source-code-acquisition.md). - -### Installing Dependent Tools - -The installation command is as follows: - -``` -sudo apt-get install binutils git-core git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 python2.7 python-minimal -``` - -### Obtaining prebuilts - -1. Go to the OpenHarmony working directory. - - ``` - cd OpenHarmony - ``` - -2. Download the script. - - ``` - curl https://gitee.com/landwind/script-tools/raw/master/Shell/OpenHarmony/OpenHarmony_2.0_canary_prebuilts_download.sh >./prebuilts_download.sh - ``` - -3. Download and decompress the prebuilts package in a specified directory. - - ``` - bash ./prebuilts_download.sh - ``` - - By default, binary files are stored in the **OpenHarmony\_2.0\_canary\_prebuilts** directory, which is in the same directory as **OpenHarmony**. To change the storage path, change the value of **bin\_dir** in **prebuilts\_download.sh**. - -4. Return to the previous directory. - - ``` - cd - - ``` - - -### Configuring the Node.js Environment and Obtaining the Node\_modules Dependency Package - -To build the JS framework, you need to download and configure Node.js on a Linux server. The procedure is as follows: - -1. Download Node.js on a Linux server. - - ``` - mkdir -p OpenHarmony/prebuilts/build-tools/common/nodejs # Create the nodejs directory. - cd OpenHarmony/prebuilts/build-tools/common/nodejs # Go to the nodejs directory. - wget --no-check-certificate https://nodejs.org/download/release/v12.18.4/node-v12.18.4-linux-x64.tar.gz # Download the Node.js package. - ``` - -2. Decompress the Node.js package and configure the Node.js environment. - - ``` - tar -zxvf node-v12.18.4-linux-x64.tar.gz # Decompress the Node.js package. - echo "export PATH=`pwd`/node-v12.18.4-linux-x64/bin:${PATH}" >> ~/.bashrc;source ~/.bashrc # Set a Node.js environment variable. - cd - # Return to the previous directory. - ``` - -3. Go to the **third\_party/jsframework** directory of the OpenHarmony code and download the **node\_modules** package. - - ``` - cd OpenHarmony/third_party/jsframework # Go to the jsframework directory. - npm install # Download the node_modules package. - cd - # Return to the previous directory. - ``` - -4. Store the **node\_modules** package in the **prebuilts/build-tools/common/js-framework** directory of the OpenHarmony code. - - ``` - mkdir -p OpenHarmony/prebuilts/build-tools/common/js-framework # Create the js-framework directory. - cp -rp OpenHarmony/third_party/jsframework/node_modules OpenHarmony/prebuilts/build-tools/common/js-framework/ - ``` - - -### Installing the hc-gen Tool - -hc-gen is used to compile the driver. To install hc-gen, perform the following steps: - -1. Start a Linux server. -2. Download [hc-gen](https://repo.huaweicloud.com/harmonyos/compiler/hc-gen/0.65/linux/hc-gen-0.65-linux.tar). -3. Decompress the hc-gen installation package to **\~/hc-gen** on the Linux server. - - ``` - tar -xvf hc-gen-0.65-linux.tar -C ~/ - ``` - -4. Set an environment variable. - - ``` - vim ~/.bashrc - ``` - - Copy the following command to the last line of the **.bashrc** file, save the file, and exit. - - ``` - export PATH=~/hc-gen:$PATH - ``` - -5. Validate the environment variable. - - ``` - source ~/.bashrc - ``` - - diff --git a/en/device-dev/quick-start/ubuntu-build-environment.md b/en/device-dev/quick-start/ubuntu-build-environment.md index 9c141637b5a..57782ef1846 100644 --- a/en/device-dev/quick-start/ubuntu-build-environment.md +++ b/en/device-dev/quick-start/ubuntu-build-environment.md @@ -1,4 +1,4 @@ -# Ubuntu Build Environment +# Ubuntu Build Environment - [Obtaining Source Code and Tools](#section1897711811517) - [Obtaining Source Code](#section1545225464016) @@ -24,9 +24,9 @@ Perform the following steps to set up the build environment: 6. Install hb. >![](public_sys-resources/icon-notice.gif) **NOTICE:** ->- Docker is provided for the Ubuntu build environment, which encapsulates related build tools. If you use Docker to prepare the build environment, you do not need to perform the following steps in this section. Instead, refer to [Using Docker to Prepare the Build Environment](../get-code/tool-acquisition.md). +>- Docker is provided for the Ubuntu build environment, which encapsulates related build tools. If you use Docker to prepare the build environment, you do not need to perform the following steps in this section. Instead, refer to [Using Docker to Prepare the Build Environment](../get-code/docker-environment.md). >- By default, basic software, such as Samba and Vim, is installed in the system. Adaptation on the software is required to support file sharing between the Linux server and the Windows workstation. ->- For details about the compilation and building subsystem of OpenHarmony, see the [Compilation and Building Overview](../subsystems/compilation-and-building-overview.md). +>- For details about the compilation and building subsystem of OpenHarmony, see the [Compilation and Building Overview](../subsystems/compilation-and-building.md). ## Obtaining Source Code and Tools diff --git a/en/device-dev/quick-start/windows-development-environment-10.md b/en/device-dev/quick-start/windows-development-environment-10.md deleted file mode 100644 index 91c42c4f088..00000000000 --- a/en/device-dev/quick-start/windows-development-environment-10.md +++ /dev/null @@ -1,183 +0,0 @@ -# Windows Development Environment - -- [Obtaining the Software](#en-us_topic_0000001058091994_section1483143015558) -- [Installing Visual Studio Code](#en-us_topic_0000001058091994_section71401018163318) -- [Installing Python](#en-us_topic_0000001058091994_section16266553175320) -- [Installing Node.js](#en-us_topic_0000001058091994_section5353233124511) -- [Installing hpm](#en-us_topic_0000001058091994_section173054793610) -- [Installing the DevEco Device Tool Plug-in](#en-us_topic_0000001058091994_section4336315185716) - -Operating system: 64-bit version of Windows 10. - -DevEco Device Tool is a plug-in for Visual Studio Code. The installation procedure includes five parts: - -1. Installing Visual Studio Code -2. Installing Python -3. Installing Node.js -4. Installing hpm -5. Installing the DevEco Device Tool Plug-in - -## Obtaining the Software - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Tool

-

Description

-

Version

-

Obtaining Channel

-

Visual Studio Code

-

Code editing tool

-

V1.53 or later (64-bit)

-

https://code.visualstudio.com/Download

-

Python

-

Programming tool

-

v3.7.4–3.8.x (64-bit)

-

https://www.python.org/downloads/

-

Node.js

-

The npm environment provider

-

v12.0.0 or later (64-bit)

-

https://nodejs.org/en/download/

-

hpm

-

Package manager

-

Latest version

-

Run the following command:

-
npm install -g @ohos/hpm-cli
-

DevEco Device Tool

-

Plug-in for the OpenHarmony source code compilation, programming, and debugging

-

v2.2 Beta1

-

https://device.harmonyos.com/en/ide#download

-

Log in with your HUAWEI ID to download it. You can register an account here.

-
- -## Installing Visual Studio Code - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->If you have installed Visual Studio Code, open the CLT and run **code --version** to check whether the version is 1.53 or later. If the version number is returned, it indicates that the environment variables are set correctly. - -1. Double-click the Visual Studio Code package to install it. During the installation, select **Add to PATH \(requires shell restart\)**. - - ![](figures/en-us_image_0000001057335403.png) - -2. After the installation is complete, restart the computer for the environment variables of Visual Studio Code to take effect. -3. Open the CLT and run **code --version**. If the version number can be displayed, it indicates that the installation is successful. - -## Installing Python - -1. Double-click the Python software package, select **Add Python xx to PATH**, and click **Install Now**. - - ![](figures/en-us_image_0000001096154076.png) - -2. After the installation is complete, click **Close**. - - ![](figures/en-us_image_0000001142794291.png) - -3. Open the CLT, and run **python --version** to check the installation result. - - ![](figures/en-us_image_0000001143154485.png) - -4. In the CLT, run the following commands to set the pip source for downloading the dependencies required for later installation: - - ``` - pip config set global.trusted-host repo.huaweicloud.com - pip config set global.index-url https://repo.huaweicloud.com/repository/pypi/simple - pip config set global.timeout 120 - ``` - - -## Installing Node.js - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->If you have installed Node.js, open the CLT and run **node -v** to check whether the version is 12.0.0 or later. - -1. Run the downloaded software package to install. Use the default settings when following the installation wizard, and click **Next** until **Finish** is displayed. During the installation, Node.js will automatically set the system Path environment variable to the installation directory of **node.exe**. -2. Open the CLT and run **node -v**. If the version number of Node.js is displayed, it indicates that Node.js has been successfully installed. - - ![](figures/en-us_image_0000001056814287.png) - - -## Installing hpm - -Before installing hpm, ensure that Node.js has been installed - -and that your network can access the Internet. If your network requires a proxy to access the Internet, [set up the npm proxy](https://device.harmonyos.com/cn/docs/ide/user-guides/npm_proxy-0000001054491032) first. - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->If hpm has been installed, run **npm update -g @ohos/hpm-cli** to update it to the latest version. - -1. You are advised to set the npm source to an image in China, for example, a HUAWEI CLOUD image source. - - ``` - npm config set registry https://repo.huaweicloud.com/repository/npm/ - ``` - -2. Open the CLT and run the following command to install the latest version of hpm: - - ``` - npm install -g @ohos/hpm-cli - ``` - - ![](figures/en-us_image_0000001073840162.png) - -3. After the installation is complete, run the following command to obtain the installation result: - - ``` - hpm -V - ``` - - ![](figures/en-us_image_0000001100641602.png) - - -## Installing the DevEco Device Tool Plug-in - -To install the DevEco Device Tool plug-in, ensure that the **user name of the host cannot contain Chinese characters**; otherwise, the plug-in may fail to run. - -DevEco Device Tool will automatically download and install the C/C++ and CodeLLDB plug-ins from the Visual Studio Code Marketplace during the installation process. Therefore, make sure Visual Studio Code can access the Internet. If your network requires a proxy to access the Internet, [set up the Visual Studio Code proxy](https://device.harmonyos.com/cn/docs/ide/user-guides/vscode_proxy-0000001074231144) first. - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->Before installing DevEco Device Tool, ensure that Visual Studio Code is closed. - -1. Decompress the DevEco Device Tool plug-in package and double-click the installer to install. -2. During the installation, the dependency files \(such as C/C++ and CodeLLDB plug-ins\) and execution programs required by DevEco Device Tool are automatically installed. - - ![](figures/en-us_image_0000001072468991.png) - -3. After the installation is complete, the CLT is automatically closed. -4. Open Visual Studio Code, click the ![](figures/en-us_image_0000001072757874.png) button on the left, and check whether C/C++, CodeLLDB, and DevEco Device Tool are listed in **INSTALLED**. - - >![](public_sys-resources/icon-note.gif) **NOTE:** - >If the C/C++ and CodeLLDB plug-ins fail to be installed, DevEco Device Tool cannot run properly. To solve the issue, see [Installing the C/C++ and CodeLLDB Plug-ins Offline](https://device.harmonyos.com/en/docs/ide/user-guides/offline_plugin_install-0000001074376846). - - ![](figures/en-us_image_0000001142802505.png) - - diff --git a/en/device-dev/quick-start/windows-development-environment.md b/en/device-dev/quick-start/windows-development-environment.md index 9480f387cd1..d0824ce00ea 100644 --- a/en/device-dev/quick-start/windows-development-environment.md +++ b/en/device-dev/quick-start/windows-development-environment.md @@ -1,4 +1,4 @@ -# Windows Development Environment +# Windows Development Environment - [Obtaining the Software](#en-us_topic_0000001058091994_section1483143015558) - [Installing Visual Studio Code](#en-us_topic_0000001058091994_section71401018163318) @@ -87,7 +87,7 @@ DevEco Device Tool is a plug-in for Visual Studio Code. The installation procedu 1. Double-click the Visual Studio Code package to install it. During the installation, select **Add to PATH \(requires shell restart\)**. - ![](figures/en-us_image_0000001057335403.png) + ![](figures/en-us_image_0000001174350653.png) 2. After the installation is complete, restart the computer for the environment variables of Visual Studio Code to take effect. 3. Open the CLT and run **code --version**. If the version number can be displayed, it indicates that the installation is successful. @@ -96,15 +96,15 @@ DevEco Device Tool is a plug-in for Visual Studio Code. The installation procedu 1. Double-click the Python software package, select **Add Python xx to PATH**, and click **Install Now**. - ![](figures/en-us_image_0000001096154076.png) + ![](figures/en-us_image_0000001128471042.png) 2. After the installation is complete, click **Close**. - ![](figures/en-us_image_0000001142794291.png) + ![](figures/en-us_image_0000001128311104.png) 3. Open the CLT, and run **python --version** to check the installation result. - ![](figures/en-us_image_0000001143154485.png) + ![](figures/en-us_image_0000001174350781.png) 4. In the CLT, run the following commands to set the pip source for downloading the dependencies required for later installation: @@ -123,7 +123,7 @@ DevEco Device Tool is a plug-in for Visual Studio Code. The installation procedu 1. Run the downloaded software package to install. Use the default settings when following the installation wizard, and click **Next** until **Finish** is displayed. During the installation, Node.js will automatically set the system Path environment variable to the installation directory of **node.exe**. 2. Open the CLT and run **node -v**. If the version number of Node.js is displayed, it indicates that Node.js has been successfully installed. - ![](figures/en-us_image_0000001056814287.png) + ![](figures/en-us_image_0000001128311096.png) ## Installing hpm @@ -147,7 +147,7 @@ and that your network can access the Internet. If your network requires a proxy npm install -g @ohos/hpm-cli ``` - ![](figures/en-us_image_0000001073840162.png) + ![](figures/en-us_image_0000001128311100.png) 3. After the installation is complete, run the following command to obtain the installation result: @@ -155,7 +155,7 @@ and that your network can access the Internet. If your network requires a proxy hpm -V ``` - ![](figures/en-us_image_0000001100641602.png) + ![](figures/en-us_image_0000001174270735.png) ## Installing the DevEco Device Tool Plug-in @@ -170,14 +170,14 @@ DevEco Device Tool will automatically download and install the C/C++ and CodeLLD 1. Decompress the DevEco Device Tool plug-in package and double-click the installer to install. 2. During the installation, the dependency files \(such as C/C++ and CodeLLDB plug-ins\) and execution programs required by DevEco Device Tool are automatically installed. - ![](figures/en-us_image_0000001072468991.png) + ![](figures/en-us_image_0000001128470902.png) 3. After the installation is complete, the CLT is automatically closed. -4. Open Visual Studio Code, click the ![](figures/en-us_image_0000001072757874.png) button on the left, and check whether C/C++, CodeLLDB, and DevEco Device Tool are listed in **INSTALLED**. +4. Open Visual Studio Code, click the ![](figures/en-us_image_0000001174350651.png) button on the left, and check whether C/C++, CodeLLDB, and DevEco Device Tool are listed in **INSTALLED**. >![](public_sys-resources/icon-note.gif) **NOTE:** >If the C/C++ and CodeLLDB plug-ins fail to be installed, DevEco Device Tool cannot run properly. To solve the issue, see [Installing the C/C++ and CodeLLDB Plug-ins Offline](https://device.harmonyos.com/en/docs/ide/user-guides/offline_plugin_install-0000001074376846). - ![](figures/en-us_image_0000001142802505.png) + ![](figures/en-us_image_0000001174270727.png) diff --git a/en/device-dev/quick-start/wlan-connection.md b/en/device-dev/quick-start/wlan-connection.md index cc0192a6873..6869012b733 100644 --- a/en/device-dev/quick-start/wlan-connection.md +++ b/en/device-dev/quick-start/wlan-connection.md @@ -1,4 +1,4 @@ -# WLAN Connection +# WLAN Connection - [Building](#section191121332125319) - [Burning Images](#section19458165166) @@ -10,7 +10,7 @@ This example shows how to connect the WLAN module to the gateway using attention This section describes how to perform the WLAN module building on a Linux server. -If the Linux environment is installed using Docker, perform the building by referring to [Using Docker to Prepare the Build Environment](../get-code/tool-acquisition.md). If the Linux environment is installed using a software package, perform the following steps: +If the Linux environment is installed using Docker, perform the building by referring to [Using Docker to Prepare the Build Environment](../get-code/docker-environment.md). If the Linux environment is installed using a software package, perform the following steps: 1. Open the HUAWEI DevEco Device Tool and choose **View** \> **Terminal**. @@ -63,39 +63,39 @@ If the Linux environment is installed using Docker, perform the building by refe You can use the DevEco tool to perform the image burning of the Hi3861 WLAN module. For details about how to use the tool, see [HUAWEI DevEco Device Tool User Guide](https://device.harmonyos.com/en/docs/ide/user-guides/service_introduction-0000001050166905). -1. Connect the PC and the target development board through the USB port. For details, please refer to [Introduction to the Hi3861 Development Board](https://device.harmonyos.com/en/docs/start/introduce/oem_wifi_start_des-0000001050168548). +1. Connect the PC and the target development board through the USB port. For details, please refer to [Introduction to the Hi3861 Development Board](https://device.harmonyos.com/en/docs/start/introduce/oem_minitinier_des_3861-0000001105041324). 2. Open Device Manager, then check and record the serial port number corresponding to the development board. >![](public_sys-resources/icon-note.gif) **NOTE:** - >If the serial port number is not displayed correctly, follow the steps described in [Installing the Serial Port Driver on the Hi3861 Series Development Boards](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3861-drivers-0000001058153433). + >If the serial port number is not displayed correctly, follow the steps described in [Installing the Serial Port Driver on the Hi3861 Series Development Boards](https://device.harmonyos.com/en/docs/ide/user-guides/hi3861-drivers-0000001058153433). - ![](figures/en-us_image_0000001073388838.png) + ![](figures/en-us_image_0000001128311118.png) 3. Open DevEco Device Tool and go to **Projects** \> **Settings**. - ![](figures/en-us_image_0000001078404538.png) + ![](figures/en-us_image_0000001128311116.png) 4. On the **Partition Configuration** tab page, modify the settings. In general cases, you can leave the fields at their default settings. 5. On the **hi3861** tab page, set the programming options. - - **upload\_port**: Select the serial port number obtained in step [2](#en-us_topic_0000001056563976_li848662117291). - - **upload\_protocol**: Select the programming protocol **burn-serial**. - - **upload\_partitions**: Select the file to be programmed. **hi3861\_app** is selected by default. + - **upload\_port**: Select the serial port number obtained in [2](#en-us_topic_0000001056563976_li848662117291). + - **upload\_protocol**: Select the burning protocol **burn-serial**. + - **upload\_partitions**: Select the file to be burned. **hi3861\_app** is selected by default. - ![](figures/en-us_image_0000001078244328.png) + ![](figures/en-us_image_0000001128470922.png) 6. When you finish modifying, click **Save** in the upper right corner. 7. Open the project file. In the DevEco Device Tool window, go to **PROJECT TASKS** \> **hi3861** \> **Upload** to start programming. - ![](figures/en-us_image_0000001163569275.png) + ![](figures/en-us_image_0000001174270749.png) 8. When the following information is displayed, press the RST button on the development board to restart it. - ![](figures/en-us_image_0000001074285712.png) + ![](figures/en-us_image_0000001174270751.png) -9. Start programming. When the following message is displayed, it indicates that the programming is successful. +9. Start burning. When the following message is displayed, the burning is successful. - ![](figures/en-us_image_0000001074445364.png) + ![](figures/en-us_image_0000001174350669.png) ## Connecting WLAN Module to the Internet. diff --git a/en/device-dev/subsystems/Readme-EN.md b/en/device-dev/subsystems/Readme-EN.md index 9c21a040f36..88e792a0474 100644 --- a/en/device-dev/subsystems/Readme-EN.md +++ b/en/device-dev/subsystems/Readme-EN.md @@ -2,17 +2,15 @@ - [Compilation and Building](compilation-and-building.md) - [Building Guidelines for Mini and Small Systems](building-guidelines-for-mini-and-small-systems.md) - - [Compilation and Building Overview](compilation-and-building-overview.md) - - [Compilation and Building Guidelines](compilation-and-building-guidelines.md) - - [Compilation and Building FAQ](compilation-and-building-faq.md) + - [Compilation and Building](compilation-and-building-0.md) - [Building Guidelines for the Standard System](building-guidelines-for-the-standard-system.md) - - [Compilation and Building Overview](compilation-and-building-overview-0.md) - - [Compilation and Building Guidelines](compilation-and-building-guidelines-1.md) + - [Compilation and Building Overview](compilation-and-building-overview.md) + - [Compilation and Building Guidelines](compilation-and-building-guidelines.md) - [Distributed Remote Startup](distributed-remote-startup.md) - [Graphics](graphics.md) - - [Graphics](graphics-2.md) + - [Graphics](graphics-1.md) - [Development Guidelines on Container Components](development-guidelines-on-container-components.md) - [Development Guidelines on Layout Container Components](development-guidelines-on-layout-container-components.md) - [Development Guidelines on Common Components](development-guidelines-on-common-components.md) @@ -26,7 +24,7 @@ - [Development Guidelines on Previewing](development-guidelines-on-previewing.md) - [Audio/Video](audio-video.md) - - [Overview](overview-3.md) + - [Overview](overview-2.md) - [Development Guidelines on Media Playback](development-guidelines-on-media-playback.md) - [Development Guidelines on Media Recording](development-guidelines-on-media-recording.md) @@ -59,21 +57,20 @@ - [Sensors Usage Example](sensors-usage-example.md) - [Application Framework](application-framework.md) - - [Overview](overview-4.md) + - [Overview](overview-3.md) - [Setting Up a Development Environment](setting-up-a-development-environment.md) - - [Development Guidelines](development-guidelines-5.md) + - [Development Guidelines](development-guidelines-4.md) - [Development Example](development-example.md) - [OTA Upgrade](ota-upgrade.md) - [Security](security.md) - - [Overview](overview-9.md) + - [Overview](overview-5.md) - [Development Guidelines on Application Signature Verification](development-guidelines-on-application-signature-verification.md) - [Development Guidelines on Application Permission Management](development-guidelines-on-application-permission-management.md) - [Development Guidelines on IPC Authentication](development-guidelines-on-ipc-authentication.md) - - [Development Guidelines on Trusted Device Group Management](development-guidelines-on-trusted-device-group-management.md) - [Startup](startup.md) - - [Startup](startup-10.md) + - [Startup](startup-6.md) - [init Module](init-module.md) - [appspawn Module](appspawn-module.md) - [bootstrap Module](bootstrap-module.md) @@ -83,7 +80,7 @@ - [Testing](testing.md) - [DFX](dfx.md) - - [DFX](dfx-11.md) + - [DFX](dfx-7.md) - [Development Guidelines on HiLog ](development-guidelines-on-hilog.md) - [Development Guidelines on HiLog\_Lite](development-guidelines-on-hilog_lite.md) - [Development Guidelines on HiSysEvent](development-guidelines-on-hisysevent.md) @@ -91,6 +88,7 @@ - [R&D Tools](r-d-tools.md) - [bytrace Usage Guidelines](bytrace-usage-guidelines.md) - [hdc\_std Usage Guidelines](hdc_std-usage-guidelines.md) + - [hdc\_std FAQs](hdc_std-faqs.md) - [XTS](xts.md) diff --git a/en/device-dev/subsystems/application-framework.md b/en/device-dev/subsystems/application-framework.md index d58ed3003a0..c4973fc34d4 100644 --- a/en/device-dev/subsystems/application-framework.md +++ b/en/device-dev/subsystems/application-framework.md @@ -1,10 +1,10 @@ # Application Framework -- **[Overview](overview-4.md)** +- **[Overview](overview-3.md)** - **[Setting Up a Development Environment](setting-up-a-development-environment.md)** -- **[Development Guidelines](development-guidelines-5.md)** +- **[Development Guidelines](development-guidelines-4.md)** - **[Development Example](development-example.md)** diff --git a/en/device-dev/subsystems/audio-video.md b/en/device-dev/subsystems/audio-video.md index 16e2f5b0835..7942eeb78eb 100644 --- a/en/device-dev/subsystems/audio-video.md +++ b/en/device-dev/subsystems/audio-video.md @@ -1,6 +1,6 @@ # Audio/Video -- **[Overview](overview-3.md)** +- **[Overview](overview-2.md)** - **[Development Guidelines on Media Playback](development-guidelines-on-media-playback.md)** diff --git a/en/device-dev/subsystems/building-guidelines-for-mini-and-small-systems.md b/en/device-dev/subsystems/building-guidelines-for-mini-and-small-systems.md index d19baae1474..cd4f2e3ca87 100644 --- a/en/device-dev/subsystems/building-guidelines-for-mini-and-small-systems.md +++ b/en/device-dev/subsystems/building-guidelines-for-mini-and-small-systems.md @@ -1,9 +1,5 @@ # Building Guidelines for Mini and Small Systems -- **[Compilation and Building Overview](compilation-and-building-overview.md)** - -- **[Compilation and Building Guidelines](compilation-and-building-guidelines.md)** - -- **[Compilation and Building FAQ](compilation-and-building-faq.md)** +- **[Compilation and Building](compilation-and-building-0.md)** diff --git a/en/device-dev/subsystems/building-guidelines-for-the-standard-system.md b/en/device-dev/subsystems/building-guidelines-for-the-standard-system.md index bbc92d83896..9e40510e3ec 100644 --- a/en/device-dev/subsystems/building-guidelines-for-the-standard-system.md +++ b/en/device-dev/subsystems/building-guidelines-for-the-standard-system.md @@ -1,7 +1,7 @@ # Building Guidelines for the Standard System -- **[Compilation and Building Overview](compilation-and-building-overview-0.md)** +- **[Compilation and Building Overview](compilation-and-building-overview.md)** -- **[Compilation and Building Guidelines](compilation-and-building-guidelines-1.md)** +- **[Compilation and Building Guidelines](compilation-and-building-guidelines.md)** diff --git a/en/device-dev/subsystems/compilation-and-building-0.md b/en/device-dev/subsystems/compilation-and-building-0.md new file mode 100644 index 00000000000..b5236f69f98 --- /dev/null +++ b/en/device-dev/subsystems/compilation-and-building-0.md @@ -0,0 +1,998 @@ +# Compilation and Building + +- [Overview](#section10958256161119) + - [Basic Concepts](#section1732301411128) + - [Directory Structure](#section1588744014121) + - [Build Process](#section15761735134) + +- [Configuration Rules](#section2345183962710) + - [Module](#section142532518308) + - [Chipset](#section121501451143710) + - [Product](#section134549283435) + +- [Usage Guidelines](#section13754457192211) + - [Prerequisites](#section31651120233) + - [Using hb](#section1133304172313) + - [Adding a Module](#section167110415315) + - [Adding a Chipset Solution](#section1474718565412) + - [Adding a Product Solution](#section1097623294220) + +- [Troubleshooting](#section19909721104319) + - [Invalid -- w Option](#section138233464318) + - [Library ncurses Not Found](#section151033911442) + - [mcopy not Found](#section19811838104418) + - [No riscv File or Directory](#section03111118451) + - [No Crypto](#section69981127125013) + - [Unexpected Operator](#section967617530505) + + +## Overview + +The Compilation and Building subsystem is a build framework that supports module-based OpenHarmony development using Generate Ninja \(GN\) and Ninja. You can use this subsystem to: + +- Assemble modules for a product and build the product. + +- Build chipset source code independently. +- Build a single module independently. + +### Basic Concepts + +Learn the following concepts before you start compilation and building: + +- Subsystem + + A subsystem is a logical concept. It consists of one or more modules. OpenHarmony is designed with a layered architecture, which consists of the kernel layer, system service layer, framework layer, and application layer from bottom to top. System functions are developed by the level of system, subsystem, and module. In a multi-device deployment scenario, you can customize subsystems and modules as required. + + +- Module + + A module is a reusable, configurable, and tailorable function unit. Each module has an independent directory, and multiple modules can be developed concurrently and built and tested independently. + +- **GN** + + Generate Ninja \(GN\) is used to generate Ninja files. + +- **Ninja** + + Ninja is a small high-speed build system. + +- **hb** + + hb is a command line tool for OpenHarmony to execute build commands. + + +### Directory Structure + +``` +build/lite +├── components # Module description file +├── figures # Figures in the readme file +├── hb # hb pip installation package +├── make_rootfs # Script used to create the file system image +├── config # Build configuration +│ ├── component # Module-related template definition +│ ├── kernel # Kernel-related build configuration +│ └── subsystem # Subsystem build configuration +├── platform # ld script +├── testfwk # Test build framework +└── toolchain # Build toolchain configuration, which contains the compiler directories, build options, and linking options +``` + +### **Build Process** + +[Figure 1](#fig9744112715161) shows the build process. + +**Figure 1** Build process +![](figures/build-process.jpg "build-process") + +1. Use **hb set **to set the OpenHarmony source code directory and the product to build. +2. Use **hb build** to build the product, development board, or module. The procedure is as follows: + - Read the **config.gni** file of the development board selected. The file contains the build toolchain, linking commands, and build options. + - Run the **gn gen** command to read the product configuration and generate the **out** directory and **ninja** files for the solution. + - Run **ninja -C out/board/product** to start the build. + - Package the build result, set the file attributes and permissions, and create a file system image. + + +## Configuration Rules + +To ensure that the chipset and product solutions are pluggable and decoupled from OpenHarmony, the paths, directory trees, and configuration of modules, chipset solutions, and product solutions must comply with the following rules: + +### **Module** + +The source code directory for a module is named in the _\{Domain\}/\{Subsystem\}/\{Module\}_ format. The module directory tree is as follows: + +>![](public_sys-resources/icon-caution.gif) **CAUTION:** +>Define module attributes, such as the name, source code directory, function description, mandatory or not, build targets, RAM, ROM, build outputs, adapted kernels, configurable features, and dependencies, in the JSON file of the subsystem in the **build/lite/components** directory. When adding a module, add its definition to the JSON file of the corresponding subsystem. The module configured for a product must have been defined in a subsystem. Otherwise, the verification will fail. + +``` +component +├── interfaces +│ ├── innerkits # APIs exposed internally among modules +│ └── kits # App APIs provided for app developers +├── frameworks # Framework implementation +├── services # Service implementation +└── BUILD.gn # Build script +``` + +The following example shows how to define attributes of the sensor module of the pan-sensor subsystem: + +``` +{ + "components": [ + { + "component": "sensor_lite", # Module name + "description": "Sensor services", # Brief description of the module + "optional": "true", # Whether the module is mandatory for the system + "dirs": [ # Source code directory of the module + "base/sensors/sensor_lite" + ], + "targets": [ # Build entry of the module + "//base/sensors/sensor_lite/services:sensor_service" + ], + "rom": "92KB", # Module ROM + "ram": "~200KB", # Module RAM (estimated) + "output": [ "libsensor_frameworks.so" ], # Module build outputs + "adapted_kernel": [ "liteos_a" ], # Adapted kernel for the module + "features": [], # Configurable features of the module + "deps": { + "components": [ # Other modules on which the module depends + "samgr_lite", + "ipc_lite" + + ], + "third_party": [ # Open-source third-party software on which the module depends + "bounds_checking_function" + ] + } + } + ] +} +``` + +Observe the following rules when building the **BUILD.gn** module: + +- The build target name must be the same as the module name. +- Define the configurable features in the **BUILD.gn** file of the module. Name the configurable features in the **ohos\_**\{_subsystem_\}**\_**\{_module_\}**\_**\{_feature_\} format. Define the features in module description and configure them in the **config.json** file. +- Define macros in the **OHOS\_**\{_SUBSYSTEM_\}**\_**\{_MODULE_\}**\_**\{_FEATURE_\} format. + + >![](public_sys-resources/icon-note.gif) **NOTE:** + >GN is used as the build script language for modules. For details about how to use GN, see the [GN Quick Start Guide](https://gn.googlesource.com/gn/+/master/docs/quick_start.md). In GN, a module is a build target, which can be a static library, a dynamic library, an executable file, or a group. + + +The following example shows how to build the **foundation/graphic/ui/BUILD.gn** file for a graphics UI module: + +``` + # Declare the configurable features of the module + declare_args() { + enable_ohos_graphic_ui_animator = false # Animation switch + ohos_ohos_graphic_ui_font = "vector" # Configurable font type, which can be vector or bitmap + } + + # Basic module functions + shared_library("base") { + sources = [ + ...... + ] + include_dirs = [ + ...... + ] + } + + # Build only when the animator is enabled + if(enable_ohos_graphic_ui_animator ) { + shared_library("animator") { + sources = [ + ...... + ] + include_dirs = [ + ...... + ] + deps = [ :base ] + } + } + ...... + # It is recommended that the target name be the same as the module name, which can be an executable .bin file, shared_library (.so file), static_library (.a file), or a group. + executable("ui") { + deps = [ + ":base" + ] + + # The animator feature is configured by the product. + if(enable_ohos_graphic_ui_animator ) { + deps += [ + "animator" + ] + } + } +``` + +### **Chipset** + +- The chipset solution is a complete solution based on a development board. The solution includes the drivers, API adaptation, and SDK. +- The chipset solution is a special module, whose source code directory is named in the _**device**/\{Chipset solution vendor\}/\{Development board\}_ format. +- The chipset solution module is built by default based on the development board selected by the product. + +The chipset solution directory tree is as follows: + +``` +device +└── company # Chipset solution vendor + └── board # Name of the development board + ├── BUILD.gn # Build script + ├── hals # Southbound APIs for OS adaptation + ├── linux # Linux kernel version (optional) + │ └── config.gni # Build options for the Linux version + └── liteos_a # LiteOS kernel version (optional) + └── config.gni # Build options for the LiteOS Cortex-A version +``` + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>The **config.gni** file contains build-related configurations of the development board. The parameters in the file are globally visible to the system and can be used to build all OS modules during the build process. + +The **config.gni** file contains the following key parameters: + +``` +kernel_type: kernel used by the development board, for example, liteos_a, liteos_m, or linux. +kernel_version: kernel version used by the development board, for example, 4.19. +board_cpu: CPU of the development board, for example, cortex-a7 or riscv32. +board_arch: chipset architecture of the development board, for example, armv7-a or rv32imac. +board_toolchain: name of the customized build toolchain used by the development board, for example, gcc-arm-none-eabi. If this field is not specified, ohos-clang will be used by default. +board_toolchain_prefix: prefix of the build toolchain, for example, gcc-arm-none-eabi. +board_toolchain_type: build toolchain type, for example, gcc or clang. Currently, only GCC and clang are supported. +board_cflags: build options of the .c file configured for the development board. +board_cxx_flags: build options of the .cpp file configured for the development board. +board_ld_flags: link options configured for the development board. +``` + +### **Product** + +The product solution is a complete product based on a development board. It includes the OS adaptation, module assembly configuration, startup configuration, and file system configuration. The source code directory of a product solution is named in the **vendor**/\{_Product solution vendor_\}/\{_Product name_\} format. A product solution is also a special module. + +The product solution directory tree is as follows: + +``` +vendor +└── company # Product solution vendor + ├── product # Product name + │ ├── init_configs + │ │ ├── etc # Startup configuration of the init process (only required for the Linux kernel) + │ │ └── init.cfg # System service startup configuration + │ ├── hals # OS adaptation + │ ├── BUILD.gn # Product build script + │ └── config.json # Product configuration file + │ └── fs.yml # File system packaging configuration + └── ...... +``` + +>![](public_sys-resources/icon-caution.gif) **CAUTION:** +>Create directories and files based on the preceding rules for new products. The Compilation and Building subsystem scans the configured products based on the rules. + +The key directories and files are described as follows: + +1. **vendor/company/product/init\_configs/etc** + + This folder contains the **rcS**, **S**_xxx_, and **fstab** scripts. The **init** process runs the **rcS**, **fstab**, and **S**_00_-_xxx_ scripts in sequence before starting system services. The **S**_xxx_ script contains content related to the development board and product. It is used to create device nodes and directories, scan device nodes, and change file permissions. These scripts are copied from the **BUILD.gn** file to the **out** directory of the product as required and packaged into the **rootfs** image. + +2. **vendor/company/product/init\_configs/init.cfg** + + This file is the configuration file for the **init** process to start services. Currently, the following commands are supported: + + - **start**: starts a service. + - **mkdir**: creates a folder. + - **chmod**: changes the permission on a specified directory or file. + - **chown**: changes the owner group of a specified directory or file. + - **mount**: mounts a device. + + The fields in the file are described as follows: + + ``` + { + "jobs" : [{ # Job array. A job corresponds to a command set. Jobs are executed in the following sequence: pre-init > init > post-init. + "name" : "pre-init", + "cmds" : [ + "mkdir /storage/data", # Create a directory. + "chmod 0755 /storage/data", # Change the permission, which is in 0xxx format, for example, 0755. + "mkdir /storage/data/log", + "chmod 0755 /storage/data/log", + "chown 4 4 /storage/data/log", # Change the owner group. The first number indicates the UID, and the second indicates the GID. + ...... + "mount vfat /dev/mmcblock0 /sdcard rw, umask=000" # The command is in the mount [File system type][source] [target] [flags] [data] format. + # Currently, flags can only be nodev, noexec, nosuid, or rdonly. + ] + }, { + "name" : "init", + "cmds" : [ # Start services based on the sequence of the cmds array. + "start shell", # Note that there is only one space between start and the service name. + ...... + "start service1" + ] + }, { + "name" : "post-init", # Job that is finally executed. Operations performed after the init process is started, for example, mounting a device after the driver initialization. + "cmds" : [] + } + ], + "services" : [{ # Service array. A service corresponds to a process. + "name" : "shell", # Service name + "path" : ["/sbin/getty", "-n", "-l", "/bin/sh", "-L", "115200", "ttyS000", "vt100"], # Full path of the executable file. It must start with "path". + "uid" : 0, # Process UID, which must be the same as that in the binary file. + "gid" : 0, # Process GID, which must be the same as that in the binary file. + "once" : 0, # Whether the process is a one-off process. 1: The proces is a one-off process. The init process does not restart it after the process exits. 0: The process is not a one-off process. The init process restarts it if the process exits. + "importance" : 0, # Whether the process is a key process. 1: The process is a key process. If it exits, the init process restarts the board. 0: The process is not a key process. If it exits, the init process does not restart the board. + "caps" : [4294967295] + }, + ...... + ] + } + ``` + +3. **vendor/company/product/init\_configs/hals** + + This file stores the content related to OS adaptation of the product. For details about APIs for implementing OS adaptation, see the readme file of each module. + +4. **vendor/company/product/config.json** + + The **config.json** file is the main entry for the build and contains configurations of the development board, OS modules, and kernel. + + The following example shows the **config.json** file of the IP camera developed based on the hispark\_taurus development board: + + ``` + { + "product_name": "ipcamera", # Product name + "ohos_version": "OpenHarmony 1.0", # OS version + "device_company": "hisilicon", # Chipset vendor + "board": "hispark_taurus", # Name of the development board + "kernel_type": "liteos_a", # Kernel type + "kernel_version": "3.0.0", # Kernel version + "subsystems": [ + { + "subsystem": "aafwk", # Subsystem + "components": [ + { "component": "ability", "features":[ "enable_ohos_appexecfwk_feature_ability = true" ] } # Module and its features + ] + }, + { + ...... + } + ...... + More subsystems and modules + } + } + ``` + +5. **vendor/company/product/fs.yml** + + This file packages the build result to create a configuration file system image, for example, **rootfs.img** \(user-space root file system\) and **userfs.img** \(readable and writable file\). It consists of multiple lists, and each list corresponds to a file system. The fields are described as follows: + + ``` + fs_dir_name: (Mandatory) declares the name of the file system, for example, rootfs or userfs. + fs_dirs: (Optional) configures the mapping between the file directory in the out directory and the system file directory. Each file directory corresponds to a list. + source_dir: (Optional) specifies the target file directory in the out directory. If this field is missing, an empty directory will be created in the file system based on target_dir. + target_dir: (Mandatory) specifies the corresponding file directory in the file system. + ignore_files: (Optional) declares ignored files during the copy operation. + dir_mode: (Optional) specifies the file directory permission, which is set to 755 by default. + file_mode: (Optional) declares permissions of all files in the directory, which is set to 555 by default. + fs_filemode: (Optional) configures files that require special permissions. Each file corresponds to a list. + file_dir: (Mandatory) specifies the detailed file path in the file system. + file_mode: (Mandatory) declares file permissions. + fs_symlink: (Optional) configures the soft link of the file system. + fs_make_cmd: (Mandatory) creates the file system script. The script provided by the OS is stored in the build/lite/make_rootfs directory. Linux, LiteOS, ext4, jffs2, and vfat are supported. Chipset vendors can also customize the script as required. + fs_attr: (Optional) dynamically adjusts the file system based on configuration items. + ``` + + The **fs\_symlink** and **fs\_make\_cmd** fields support the following variables: + + - $\{root\_path\} + + Code root directory, which corresponds to **$\{ohos\_root\_path\}** of GN + + - $\{out\_path\} + + **out** directory of the product, which corresponds to **$\{root\_out\_dir\}** of GN + + - $\{fs\_dir\} + + File system directory, which consists of the following variables + + - $\{root\_path\} + - $\{fs\_dir\_name\} + + + >![](public_sys-resources/icon-note.gif) **NOTE:** + >**fs.yml** is optional and does not need to be configured for devices without a file system. + +6. **vendor/company/product/BUILD.gn** + + This file is the entry for building the source code of the solution vendor and copying the startup configuration file. The **BUILD.gn** file in the corresponding product directory will be built by default if a product is selected. The following example shows how to build the **BUILD.gn** file of a product: + + ``` + group("product") { # The target name must be the same as the product name (level-3 directory name under the product directory). + deps = [] + # Copy the init configuration. + deps += [ "init_configs" ] + # Others + ...... + } + ``` + + +## Usage Guidelines + +### Prerequisites + +The development environment has GN, Ninja, Python 3.7.4 or later, and hb available. For details about installation methods, see [Basic OS Environment Setup](../quick-start/environment-setup.md). + +### Using hb + +**hb** is a command line tool for OpenHarmony to execute build commands. Common hb commands are described as follows: + +**hb set** + +``` +hb set -h +usage: hb set [-h] [-root [ROOT_PATH]] [-p] + +optional arguments: + -h, --help show this help message and exit + -root [ROOT_PATH], --root_path [ROOT_PATH] + Set OHOS root path + -p, --product Set OHOS board and kernel +``` + +- **hb set** \(without argument\): starts the default setting process. +- **hb set -root** _dir_: sets the root directory of the code. +- **hb set -p**: sets the product to build. + +**hb env** + +Displays the current configuration. + +``` +hb env +[OHOS INFO] root path: xxx +[OHOS INFO] board: hispark_taurus +[OHOS INFO] kernel: liteos +[OHOS INFO] product: ipcamera +[OHOS INFO] product path: xxx/vendor/hisilicon/ipcamera +[OHOS INFO] device path: xxx/device/hisilicon/hispark_taurus/sdk_linux_4.19 +``` + +**hb build** + +``` +hb build -h +usage: hb build [-h] [-b BUILD_TYPE] [-c COMPILER] [-t [TEST [TEST ...]]] + [--dmverity] [--tee] [-p PRODUCT] [-f] [-n] + [-T [TARGET [TARGET ...]]] [-v] [-shs] [--patch] + [component [component ...]] + +positional arguments: + component name of the component + +optional arguments: + -h, --help show this help message and exit + -b BUILD_TYPE, --build_type BUILD_TYPE + release or debug version + -c COMPILER, --compiler COMPILER + specify compiler + -t [TEST [TEST ...]], --test [TEST [TEST ...]] + compile test suit + --dmverity Enable dmverity + --tee Enable tee + -p PRODUCT, --product PRODUCT + build a specified product with + {product_name}@{company}, eg: camera@huawei + -f, --full full code compilation + -n, --ndk compile ndk + -T [TARGET [TARGET ...]], --target [TARGET [TARGET ...]] + Compile single target + -v, --verbose show all command lines while building + -shs, --sign_haps_by_server + sign haps by server + --patch apply product patch before compiling + + --dmverity Enable dmverity + -p PRODUCT, --product PRODUCT + build a specified product with + {product_name}@{company}, eg: ipcamera@hisilcon + -f, --full full code compilation + -T [TARGET [TARGET ...]], --target [TARGET [TARGET ...]] + Compile single target +``` + +- **hb build** \(without argument\): builds the code based on the configured code directory, product, and options. The **-f** option deletes all products to be built, which is equivalent to running **hb clean** and **hb build**. +- **hb build** _\{module\_name\}_: builds a product module separately based on the development board and kernel set for the product, for example, **hb build kv\_store**. +- **hb build -p ipcamera@hisilicon**: skips the **set** step and builds the product directly. +- You can run **hb build** in **device/device\_company/board** to select the kernel and start the build based on the current development board and the selected kernel to generate an image that contains the kernel and driver only. + +**hb clean** + +You can run **hb clean** to clear the build result of the product in the **out** directory and retain the **args.gn** and **build.log** files only. To clear files in a specified directory, add the directory parameter to the command, for example, **hb clean out/xxx/xxx**. + +``` +hb clean +usage: hb clean [-h] [out_path] + +positional arguments: + out_path clean a specified path. + +optional arguments: + -h, --help show this help message and exit +``` + +### Adding a Module + +To add a module, determine the subsystem to which the module belongs and the module name, and then perform the following steps: + +1. Add the module build script after the source code development is complete. + + The following example adds the **BUILD.gn** script \(stored in the **applications/sample/hello\_world** directory\) to build the **hello\_world** module \(as an executable file\). + + ``` + executable("hello_world") { + include_dirs = [ + "include", + ] + sources = [ + "src/hello_world.c" + ] + } + ``` + + The above script is used to build **hello\_world** that can run on OpenHarmony. + + To build the preceding module separately, select a product via the **hb set** command and run the **-T** command. + + ``` + hb build -f -T //applications/sample/hello_world + ``` + + After the module functions are verified on the development board, perform steps [2 to 4](#li11471037297) to configure the module to the product. + +2. Add module description. + + The module description is stored in the **build/lite/components** directory. New modules must be added to the JSON file of the corresponding subsystem. The module description must contain the following fields: + + - **module**: name of the module + - **description**: brief description of the module + - **optional**: whether the module is optional + - **dirs**: source code directory of the module + - **targets**: module build entry + + For example, to add the **hello\_world** module to the application subsystem, add the **hello\_world** object to the **applications.json** file. + + ``` + { + "components": [ + { + "component": "hello_world", + "description": "Hello world.", + "optional": "true", + "dirs": [ + "applications/sample/hello_world" + ], + "targets": [ + "//applications/sample/hello_world" + ] + }, + ... + ] + } + ``` + +3. Configure the module for the product. + + The **config.json** file is stored in the **vendor/company/product/** directory. The file must contain the product name, OpenHarmony version, device vendor, development board, kernel type, kernel version, and the subsystem and module to configure. The following example adds the **hello\_world** module to the **my\_product.json** configuration file: + + ``` + { + "product_name": "hello_world_test", + "ohos_version": "OpenHarmony 1.0", + "device_company": "hisilicon", + "board": "hispark_taurus", + "kernel_type": "liteos_a", + "kernel_version": "1.0.0", + "subsystems": [ + { + "subsystem": "applications", + "components": [ + { "component": "hello_world", "features":[] } + ] + }, + ... + ] + } + ``` + +4. Build the product. + + 1. Run the **hb set** command in the root code directory and select the product. + + 2. Run the **hb build** command. + + +### Adding a Chipset Solution + +The following uses the RTL8720 development board provided by Realtek as an example. To a chipset solution, perform the following steps: + +1. Create a directory for the chipset solution. + + To create a directory based on [1-Configuration Rules for Modules, Chipset Solutions, and Product Solutions](#section1625463413327), run the following command in the root code directory: + + ``` + mkdir -p device/realtek/rtl8720 + ``` + +2. Create a directory for kernel adaptation and build the **config.gni** file of the development board. + + For example, to adapt the LiteOS Cortex-M kernel to the RTL8720 development board, configure the **device/realtek/rtl8720/liteos\_a/config.gni** file as follows: + + ``` + # Kernel type, e.g. "linux", "liteos_a", "liteos_m". + kernel_type = "liteos_a" + + # Kernel version. + kernel_version = "3.0.0" + + # Board CPU type, e.g. "cortex-a7", "riscv32". + board_cpu = "real-m300" + + # Board arch, e.g. "armv7-a", "rv32imac". + board_arch = "" + + # Toolchain name used for system compiling. + # E.g. gcc-arm-none-eabi, arm-linux-harmonyeabi-gcc, ohos-clang, riscv32-unknown-elf. + # Note: The default toolchain is "ohos-clang". It's not mandatory if you use the default toochain. + board_toolchain = "gcc-arm-none-eabi" + + # The toolchain path instatlled, it's not mandatory if you have added toolchian path to your ~/.bashrc. + board_toolchain_path = + rebase_path("//prebuilts/gcc/linux-x86/arm/gcc-arm-none-eabi/bin", + root_build_dir) + + # Compiler prefix. + board_toolchain_prefix = "gcc-arm-none-eabi-" + + # Compiler type, "gcc" or "clang". + board_toolchain_type = "gcc" + + # Board related common compile flags. + board_cflags = [] + board_cxx_flags = [] + board_ld_flags = [] + ``` + +3. Build the script. + + Create the **BUILD.gn** file in the development board directory. The target name must be the same as that of the development board. The content in the **device/realtek/rtl8720/BUILD.gn** file is configured as follows: + + ``` + group("rtl8720") { # The target can be shared_library, static_library, or an executable file. + # Content + ...... + } + ``` + +4. Build the chipset solution. + + Run the **hb build** command in the development board directory to start the build. + + +### Adding a Product Solution + +You can use the Compilation and Building subsystem to customize product solutions by assembling chipset solutions and modules. The procedure is as follows: + +1. Create a product directory. + + The following uses the Wi-Fi IoT module on the RTL8720 development board as an example. Run the following command in the root code directory to create a product directory based on [1-Configuration Rules for Modules, Chipset Solutions, and Product Solutions](#section1625463413327): + + ``` + mkdir -p vendor/my_company/wifiiot + ``` + +2. Assemble the product. + + Create the **config.json** file in the product directory. The **vendor/my\_company/wifiiot/config.json** file is as follows: + + ``` + { + "product_name": "wifiiot", # Product name + "ohos_version": "OpenHarmony 1.0", # OS version + "device_company": "realtek", # Name of the chipset solution vendor + "board": "rtl8720", # Name of the development board + "kernel_type": "liteos_m", # Kernel type + "kernel_version": "3.0.0", # Kernel version + "subsystems": [ + { + "subsystem": "kernel", # Subsystem + "components": [ + { "component": "liteos_m", "features":[] } # Module and its features + ] + }, + ... + { + More subsystems and modules + } + ] + } + ``` + + Before the build, the Compilation and Building subsystem checks the validity of fields, including **device\_company**, **board**, **kernel\_type**, **kernel\_version**, **subsystem**, and **component**. The **device\_company**, **board**, **kernel\_type**, and **kernel\_version** fields must match the current chipset solution, and **subsystem** and **component** must match the module description in the **build/lite/components** file. + +3. Implement adaptation to OS APIs. + + Create the **hals** directory in the product directory and store the source code as well as the build script for OS adaptation in this directory. + +4. Configure the system service. + + Create the **init\_configs** directory in the product directory and then the **init.cfg** file in the newly created directory. Configure the system service to be started. + +5. \(Optional\) Configure the init process only for the Linux kernel. + + Create the **etc** directory in the **init\_configs** directory, and then the **init.d** folder and the **fstab** file in the newly created directory. Then, create the **rcS** and **S**_xxx_ files in the **init.d** file and edit them based on product requirements. + +6. \(Optional\) Configure the file system image only for the development board that supports the file system. + + Create the **fs.yml** file in the product directory and configure it as required. A typical **fs.yml** file is as follows: + + ``` + - + fs_dir_name: rootfs # Image name + fs_dirs: + - + # Copy the files in the out/my_board/my_product/bin directory to the rootfs/bin directory and ignore the .bin files related to testing. + source_dir: bin + target_dir: bin + ignore_files: + - Test.bin + - TestSuite.bin + - + # Copy the files in the out/my_board/my_product/libs directory to the rootfs/lib directory, ignore all .a files, and set the file permissions to 644 and folder permissions 755. + source_dir: libs + target_dir: lib + ignore_files: + - .a + dir_mode: 755 + file_mode: 644 + - + source_dir: usr/lib + target_dir: usr/lib + ignore_files: + - .a + dir_mode: 755 + file_mode: 644 + - + source_dir: config + target_dir: etc + - + source_dir: system + target_dir: system + - + source_dir: sbin + target_dir: sbin + - + source_dir: usr/bin + target_dir: usr/bin + - + source_dir: usr/sbin + target_dir: usr/sbin + - + # Create an empty proc directory. + target_dir: proc + - + target_dir: mnt + - + target_dir: opt + - + target_dir: tmp + - + target_dir: var + - + target_dir: sys + - + source_dir: etc + target_dir: etc + - + source_dir: vendor + target_dir: vendor + - + target_dir: storage + + fs_filemode: + - + file_dir: lib/ld-uClibc-0.9.33.2.so + file_mode: 555 + - + file_dir: lib/ld-2.24.so + file_mode: 555 + - + file_dir: etc/init.cfg + file_mode: 400 + fs_symlink: + - + # Create the soft link ld-musl-arm.so.1 -> libc.so in the rootfs/lib directory. + source: libc.so + link_name: ${fs_dir}/lib/ld-musl-arm.so.1 + - + source: mksh + link_name: ${fs_dir}/bin/sh + - + source: mksh + link_name: ${fs_dir}/bin/shell + fs_make_cmd: + # Create an ext4 image for the rootfs directory using the script. + - ${root_path}/build/lite/make_rootfs/rootfsimg_linux.sh ${fs_dir} ext4 + - + fs_dir_name: userfs + fs_dirs: + - + source_dir: storage/etc + target_dir: etc + - + source_dir: data + target_dir: data + fs_make_cmd: + - ${root_path}/build/lite/make_rootfs/rootfsimg_linux.sh ${fs_dir} ext4 + + ``` + +7. \(Optional\) Configure patches if the product and modules need to be patched. + + Create the **patch.yml** file in the product directory and configure it as required. A typical **patch.yml** file is as follows: + + ``` + # Directory in which the patch is to be installed + foundation/communication/dsoftbus: + # Directory in which the patch is stored + - foundation/communication/dsoftbus/1.patch + - foundation/communication/dsoftbus/2.patch + third_party/wpa_supplicant: + - third_party/wpa_supplicant/1.patch + - third_party/wpa_supplicant/2.patch + - third_party/wpa_supplicant/3.patch + ... + ``` + + If you add **--patch** when running the **hb build** command, the patch file can be added to the specified directory before the build. + + ``` + hb build -f --patch + ``` + +8. Build the script. + + Create the **BUILD.gn** file in the product directory and write the script. The following **BUILD.gn** file uses the Wi-Fi IoT module in [1](#li1970321162111) as an example: + + ``` + group("wifiiot") { # The target name must be the same as the product name. + deps = [] + # Copy the init configuration. + deps += [ "init_configs" ] + # Build the hals directory. + deps += [ "hals" ] + # Others + ...... + } + ``` + +9. Build the product. + + Run the **hb set** command in the code root directory, select the new product as prompted, and run the **hb build** command. + + +## Troubleshooting + +### Invalid -- w Option + +- **Symptom** + + The build fails, and "usr/sbin/ninja: invalid option -- w" is displayed. + +- **Cause** + + The Ninja version in the build environment is outdated and does not support the **--w** option. + +- **Solution** + + Uninstall Ninja and GN and follow the instructions provided in [Acquiring Tools](../get-code/tool-acquisition.md) to install Ninja and GN of the required version. + + +### Library ncurses Not Found + +- **Symptom** + + The build fails, and "/usr/bin/ld: cannot find -lncurses" is displayed. + +- **Cause** + + The ncurses library is not installed. + +- **Solution** + + ``` + sudo apt-get install lib32ncurses5-dev + ``` + + +### mcopy not Found + +- **Symptom** + + The build fails, and "line 77: mcopy: command not found" is displayed. + +- **Cause** + + mcopy is not installed. + +- **Solution** + + ``` + ​sudo apt-get install dosfstools mtools + ``` + + +### No riscv File or Directory + +- **Symptom** + + The build fails, and the following information is displayed: + + riscv32-unknown-elf-gcc: error trying to exec 'cc1': execvp: No such file or directory. + +- **Cause** + + Permission is required to access files in the **riscv** compiler directory. + +- **Solution** + + Run the following command to query the directory where **gcc\_riscv32** is located: + + ``` + which riscv32-unknown-elf-gcc + ``` + + Run the **chmod** command to change the directory permission to **755**. + + +### No Crypto + +- **Symptom** + + The build fails, and "No module named 'Crypto'" is displayed. + +- **Cause** + + Crypto is not installed in Python 3. + +- **Solution** + 1. Run the following command to query the Python version: + + ``` + python3 --version + ``` + + 2. Ensure that Python 3.7 or later is installed, and then run the following command to install pycryptodome: + + ``` + sudo pip3 install pycryptodome + ``` + + + +### Unexpected Operator + +- **Symptom** + + The build fails, and "xx.sh \[: xx unexpected operator" is displayed. + +- **Cause** + + The build environment is shell, not bash. + +- **Solution** + + ``` + sudo rm -rf /bin/sh + sudo ln -s /bin/bash /bin/sh + ``` + + diff --git a/en/device-dev/subsystems/compilation-and-building-faq.md b/en/device-dev/subsystems/compilation-and-building-faq.md deleted file mode 100644 index 7c90a77cafe..00000000000 --- a/en/device-dev/subsystems/compilation-and-building-faq.md +++ /dev/null @@ -1,121 +0,0 @@ -# Compilation and Building FAQ - -- [Invalid -- w option](#section1019152312222) -- [Ncurses library not found](#section21449422618) -- [Mcopy not found](#section12477184992615) -- [No riscv file or directory](#section178451337202716) -- [No Crypto](#section1241481172819) -- [Unexpected operator](#section3691222152919) - -## Invalid -- w option - -- **Problem** - - The compilation fails, and **usr/sbin/ninja: invalid option -- w** is displayed. - -- **Cause** - - The Ninja version in the compilation environment is outdated and does not support the **--w** option. - -- **Solution** - - Uninstall Ninja and GN and follow the instructions provided in [Acquiring Tools](../get-code/tool-acquisition.md) to obtain the provided compilation toolchain. - - -## Ncurses library not found - -- **Problem** - - The compilation fails, and **/usr/bin/ld: cannot find -lncurses** is displayed. - -- **Cause** - - The ncurses library is not installed. - -- **Solution** - - ``` - sudo apt-get install lib32ncurses5-dev - ``` - - -## Mcopy not found - -- **Problem** - - The compilation fails, and **line 77: mcopy: command not found** is displayed. - -- **Cause** - - Mcopy is not installed. - -- **Solution** - - ``` - ​sudo apt-get install dosfstools mtools - ``` - - -## No riscv file or directory - -- **Problem** - - The compilation fails, and the following information is displayed: **riscv32-unknown-elf-gcc: error trying to exec 'cc1': execvp: No such file or directory**. - -- **Cause** - - Permission is required to access files in the **riscv** compiler path. - -- **Solution** - 1. Run the following command to query the directory where **gcc\_riscv32** is located: - - ``` - which riscv32-unknown-elf-gcc - ``` - - 2. Run the **chmod** command to change the directory permission to **755**. - - -## No Crypto - -- **Problem** - - The compilation fails, and **No module named'Crypto loaded** is displayed. - -- **Cause** - - Crypto is not installed in Python 3. - -- **Solution** - 1. Run the following command to query the Python version: - - ``` - python3 --version - ``` - - 2. Ensure that Python 3.7 or later is installed, and then run the following command to install pycryptodome: - - ``` - sudo pip3 install pycryptodome - ``` - - - -## Unexpected operator - -- **Problem** - - The compilation fails, and **xx.sh \[: xx unexpected operator** is displayed. - -- **Cause** - - The compilation environment is shell instead of bash. - -- **Solution** - - ``` - sudo rm -rf /bin/sh - sudo ln -s /bin/bash /bin/sh - ``` - - diff --git a/en/device-dev/subsystems/compilation-and-building-guidelines-1.md b/en/device-dev/subsystems/compilation-and-building-guidelines-1.md deleted file mode 100644 index eddc2c96aae..00000000000 --- a/en/device-dev/subsystems/compilation-and-building-guidelines-1.md +++ /dev/null @@ -1,174 +0,0 @@ -# Compilation and Building Guidelines - -- [Directory Structure](#section56731811102915) -- [Building](#section1069873833818) - - [Build Command](#section2740182614395) - -- [How to Develop](#section4207112818418) - -## Directory Structure - -``` -/build # Primary directory -├── config # Build configuration items -├── core -│ └── gn # Build entry configuration -├── loader # Loader of module configuration, which also generates a template for the module -├── ohos # Configuration of the process for building and packaging OpenHarmony -│ ├── kits # Build and packaging templates and processing flow for kits -│ ├── ndk # NDK template and processing flow -│ ├── notice # Notice template and processing flow -│ ├── packages # Distribution packaging template and processing flow -│ ├── sa_profile # SA template and processing flow -│ ├── sdk # SDK template and processing flow, which contains the module configuration in the SDK -│ └── testfwk # Processing flow related to the test -├── scripts # Build-related Python script -├── templates # C/C++ build templates -└── toolchain # Toolchain configuration -``` - -## Building - -### Build Command - -- Run the following command in the root directory of the source code to build the full distribution: - - ``` - ./build.sh --product-name {product_name} - ``` - - **product\_name** indicates the product supported by the current distribution, for example, Hi3516D V300. - - The image generated after build is stored in the **out/ohos-arm-release/packages/phone/images/** directory. - -- The build command supports the following options: - - ``` - --product-name # (Mandatory) Name of the product to build, for example, Hi3516D V300 - --build-target # (Optional) One or more build targets - --gn-args # (Optional) One or more gn parameters - --ccache # (Optional) Use of Ccache for build. This option takes effect only when Ccache is installed on the local PC. - ``` - - -## How to Develop - -1. Add a module. - - The following steps use a custom module as an example to describe how to build the module, including build a library, an executable file, and a configuration file. - - The example module **partA** consists of **feature1**, **feature2**, and **feature3**. The target of **feature1** is a dynamic library, that of **feature2** is an executable file, and that of **feature3** is an etc configuration file. - - Add **partA** to a subsystem, for example, **subsystem\_examples** \(defined in the **test/examples/** directory\). - - The complete directory structure of **partA** is as follows: - - ``` - test/examples/partA - ├── feature1 - │ ├── BUILD.gn - │ ├── include - │ │ └── helloworld1.h - │ └── src - │ └── helloworld1.cpp - ├── feature2 - │ ├── BUILD.gn - │ ├── include - │ │ └── helloworld2.h - │ └── src - │ └── helloworld2.cpp - └── feature3 - ├── BUILD.gn - └── src - └── config.conf - ``` - - Example 1: GN script \(**test/examples/partA/feature1/BUILD.gn**\) for building a dynamic library - - ``` - config("helloworld_lib_config") { - include_dirs = [ "include" ] - } - - ohos_shared_library("helloworld_lib") { - sources = [ - "include/helloworld1.h", - "src/helloworld1.cpp", - ] - public_configs = [ ":helloworld_lib_config" ] - part_name = "partA" - } - ``` - - Example 2: GN script \(**test/examples/partA/feature2/BUILD.gn**\) for building an executable file - - ``` - ohos_executable("helloworld_bin") { - sources = [ - "src/helloworld2.cpp" - ] - include_dirs = [ "include" ] - deps = [ # Dependent submodule - "../feature1:helloworld_lib" - ] - external_deps = [ "partB:module1" ] # (Optional) If there is a cross-module dependency, the format is "module name: submodule name" - install_enable = true # By default, the executable file is not installed. You need to set this parameter to true for installation. - part_name = "partA" - } - ``` - - Example 3: GN script \(**test/examples/partA/feature3/BUILD.gn**\) for building the etc configuration file \(submodule\). - - ``` - ohos_prebuilt_etc("feature3_etc") { - source = "src/config.conf" - relative_install_dir = "init" # (Optional) Directory for installing the submodule, which is relative to the default installation directory (/system/etc) - part_name = "partA" - } - ``` - - Example 4: Adding the module configuration file **test/examples/ohos.build** to the **ohos.build** file of this subsystem. Each subsystem has an **ohos.build** file in its root directory. - - ``` - "partA": { - "module_list": [ - "//test/examples/partA/feature1:helloworld_lib", - "//test/examples/partA/feature2:helloworld_bin", - "//test/examples/partA/feature3:feature3_etc", - ], - "inner_kits": [ - - ], - "system_kits": [ - - ], - "test_list": [ - - ] - } - ``` - - The declaration of a module contains the following parts: - - - **module\_list**: submodule list of the module - - **inner\_kits**: APIs for other modules that depend on this module through **external\_deps** - - **system\_kits**: APIs for developers - - **test\_list**: test cases for the submodules of the module - -2. Add the module to the product configuration file. - - Add **"subsystem\_examples:partA"** to the configuration file **productdefine/common/products/\{product-name\}.json** to build and package **partA** into the distribution. - -3. Build the module, including the library, executable file, and etc configuration file. - - For example, run the following command to build Hi3516D V300: - - ``` - ./build.sh --product-name Hi3516DV300 --ccache - ``` - -4. Obtain the build result. - - Files generated during the build are stored in the **out/ohos-arm-release/** directory, and the generated image is stored in the **out/ohos-arm-release/packages/phone/images/** directory. - - diff --git a/en/device-dev/subsystems/compilation-and-building-guidelines.md b/en/device-dev/subsystems/compilation-and-building-guidelines.md index e89b07bebaa..eddc2c96aae 100644 --- a/en/device-dev/subsystems/compilation-and-building-guidelines.md +++ b/en/device-dev/subsystems/compilation-and-building-guidelines.md @@ -1,430 +1,174 @@ -# Compilation and Building Guidelines +# Compilation and Building Guidelines -- [Prerequisites](#section13333171022312) -- [How to Use the hb Command Line Tool](#section477242204612) -- [Adding a Module](#section4207112818418) -- [Adding a Chipset Solution](#section2737141421917) -- [Adding a Product Solution](#section720881917199) +- [Directory Structure](#section56731811102915) +- [Building](#section1069873833818) + - [Build Command](#section2740182614395) -## Prerequisites +- [How to Develop](#section4207112818418) -Ensure that the development environment has GN, Ninja, Python 3.7.4 or later, and hb commands. For details about installation methods, see [Basic OS Environment Setup](../quick-start/environment-setup.md). +## Directory Structure -## How to Use the hb Command Line Tool +``` +/build # Primary directory +├── config # Build configuration items +├── core +│ └── gn # Build entry configuration +├── loader # Loader of module configuration, which also generates a template for the module +├── ohos # Configuration of the process for building and packaging OpenHarmony +│ ├── kits # Build and packaging templates and processing flow for kits +│ ├── ndk # NDK template and processing flow +│ ├── notice # Notice template and processing flow +│ ├── packages # Distribution packaging template and processing flow +│ ├── sa_profile # SA template and processing flow +│ ├── sdk # SDK template and processing flow, which contains the module configuration in the SDK +│ └── testfwk # Processing flow related to the test +├── scripts # Build-related Python script +├── templates # C/C++ build templates +└── toolchain # Toolchain configuration +``` -hb is a command line tool for OpenHarmony to execute build commands. Common hb commands are described as follows: +## Building -1. **hb set** +### Build Command - ``` - hb set -h - usage: hb set [-h] [-root [ROOT_PATH]] [-p] - - optional arguments: - -h, --help show this help message and exit - -root [ROOT_PATH], --root_path [ROOT_PATH] - Set OHOS root path - -p, --product Set OHOS board and kernel - ``` - - - If you run **hb set** with no argument, the default setting process starts. - - You can run **hb set -root** _dir_ to set the root directory of the source code. - - **hb set -p** is used to set the product to build. - -2. **hb env** - - View the current configuration. - - ``` - hb env - [OHOS INFO] root path: xxx - [OHOS INFO] board: hispark_taurus - [OHOS INFO] kernel: liteos - [OHOS INFO] product: ipcamera - [OHOS INFO] product path: xxx/vendor/hisilicon/ipcamera - [OHOS INFO] device path: xxx/device/hisilicon/hispark_taurus/sdk_linux_4.19 - ``` - -3. **hb build** +- Run the following command in the root directory of the source code to build the full distribution: ``` - hb build -h - usage: hb build [-h] [-b BUILD_TYPE] [-c COMPILER] [-t [TEST [TEST ...]]] - [--dmverity] [-p PRODUCT] [-f] [-n] - [component [component ...]] - - positional arguments: - component name of the component - - optional arguments: - -h, --help show this help message and exit - -b BUILD_TYPE, --build_type BUILD_TYPE - release or debug version - -t [TEST [TEST ...]], --test [TEST [TEST ...]] - compile test suit - --dmverity Enable dmverity - -p PRODUCT, --product PRODUCT - build a specified product with - {product_name}@{company}, eg: ipcamera@hisilcon - -f, --full full code compilation - -T [TARGET [TARGET ...]], --target [TARGET [TARGET ...]] - Compile single target + ./build.sh --product-name {product_name} ``` - - If you run **hb build** with no argument, the previously configured code directory, product, and options are used for the build. The **-f** option will delete all products to be built, which is equivalent to running **hb clean** and **hb build**. - - You can run **hb build** _\{module\_name\}_ to build product modules separately based on the development board and kernel set for the product, for example, **hb build kv\_store**. - - You can run **hb build -p ipcamera@hisilicon** to skip the setting step and compile the product directly. - - You can run **hb build** in **device/device\_company/board** to select the kernel and start the build based on the current development board and the selected kernel to generate an image that contains the kernel and driver only. + **product\_name** indicates the product supported by the current distribution, for example, Hi3516D V300. -4. **hb clean** + The image generated after build is stored in the **out/ohos-arm-release/packages/phone/images/** directory. - Clear the build result of the product in the **out** directory, and retain the **args.gn** and **build.log** files only. To clear files in a specified directory, add the directory parameter to the command, for example, **hb clean out/xxx/xxx**. +- The build command supports the following options: ``` - hb clean - usage: hb clean [-h] [out_path] - - positional arguments: - out_path clean a specified path. - - optional arguments: - -h, --help show this help message and exit + --product-name # (Mandatory) Name of the product to build, for example, Hi3516D V300 + --build-target # (Optional) One or more build targets + --gn-args # (Optional) One or more gn parameters + --ccache # (Optional) Use of Ccache for build. This option takes effect only when Ccache is installed on the local PC. ``` -## Adding a Module - -To add a module, determine the subsystem to which the module belongs and the module name, and then perform the following steps: +## How to Develop -1. Add the module build script after the source code development is complete. +1. Add a module. - The following example adds the **BUILD.gn** script \(stored in the **applications/sample/hello\_world** directory\) to build the **hello\_world** module \(as an executable file\). + The following steps use a custom module as an example to describe how to build the module, including build a library, an executable file, and a configuration file. - ``` - executable("hello_world") { - include_dirs = [ - "include", - ] - sources = [ - "src/hello_world.c" - ] - } - ``` + The example module **partA** consists of **feature1**, **feature2**, and **feature3**. The target of **feature1** is a dynamic library, that of **feature2** is an executable file, and that of **feature3** is an etc configuration file. - The added script is used to build **hello\_world** that can run on OpenHarmony. + Add **partA** to a subsystem, for example, **subsystem\_examples** \(defined in the **test/examples/** directory\). - To build the preceding module separately, select a product via the **hb set** command and run the **-T** command. + The complete directory structure of **partA** is as follows: ``` - hb build -f -T //applications/sample/hello_world + test/examples/partA + ├── feature1 + │ ├── BUILD.gn + │ ├── include + │ │ └── helloworld1.h + │ └── src + │ └── helloworld1.cpp + ├── feature2 + │ ├── BUILD.gn + │ ├── include + │ │ └── helloworld2.h + │ └── src + │ └── helloworld2.cpp + └── feature3 + ├── BUILD.gn + └── src + └── config.conf ``` - After the module functions are verified based on the development board, perform steps 2 to 5 to configure the module for the product. - -2. Add the module description. - - The module description is stored in the **build/lite/components** directory. New modules must be added to the JSON file of the corresponding subsystem. A module description must contain the following fields: - - - **module**: name of the module - - **description**: brief description of the module - - **optional**: whether the module is optional - - **dirs**: source code directory of the module - - **targets**: module build entry - - For example, to add the **hello\_world** module to the application subsystem, add the **hello\_world** object to the **applications.json** file. + Example 1: GN script \(**test/examples/partA/feature1/BUILD.gn**\) for building a dynamic library ``` - { - "components": [ - { - "component": "hello_world", - "description": "Hello world.", - "optional": "true", - "dirs": [ - "applications/sample/hello_world" - ], - "targets": [ - "//applications/sample/hello_world" - ] - }, - ... - ] + config("helloworld_lib_config") { + include_dirs = [ "include" ] + } + + ohos_shared_library("helloworld_lib") { + sources = [ + "include/helloworld1.h", + "src/helloworld1.cpp", + ] + public_configs = [ ":helloworld_lib_config" ] + part_name = "partA" } ``` -3. Configure the module for the product. - - The **config.json** file is stored in the **vendor/company/product/** directory. The file must contain the product name, OpenHarmony version, device vendor, development board, kernel type, kernel version, and the subsystem and module to configure. The following example adds the **hello\_world** module to the **my\_product.json** configuration file: + Example 2: GN script \(**test/examples/partA/feature2/BUILD.gn**\) for building an executable file ``` - { - "product_name": "hello_world_test", - "ohos_version": "OpenHarmony 1.0", - "device_company": "hisilicon", - "board": "hispark_taurus", - "kernel_type": "liteos_a", - "kernel_version": "1.0.0", - "subsystems": [ - { - "subsystem": "applications", - "components": [ - { "component": "hello_world", "features":[] } - ] - }, - ... - ] + ohos_executable("helloworld_bin") { + sources = [ + "src/helloworld2.cpp" + ] + include_dirs = [ "include" ] + deps = [ # Dependent submodule + "../feature1:helloworld_lib" + ] + external_deps = [ "partB:module1" ] # (Optional) If there is a cross-module dependency, the format is "module name: submodule name" + install_enable = true # By default, the executable file is not installed. You need to set this parameter to true for installation. + part_name = "partA" } ``` -4. Build the product. - - 1. Run the **hb set** command in the root code directory to select the corresponding product. - - 2. Run the **hb build** command. - - -## Adding a Chipset Solution - -The Compilation and Building subsystem allows you to add a chipset solution. Detailed operations are as follows: - -1. Create a directory for the chipset solution. - - Taking the RTL8720 development board of chipset provider Realtek for example, you need to run the following command in the root code directory to create a directory for the chipset solution based on [1-Configuration Rules for Modules, Chipset Solutions, and Product Solutions](compilation-and-building-overview.md#section1625463413327). + Example 3: GN script \(**test/examples/partA/feature3/BUILD.gn**\) for building the etc configuration file \(submodule\). ``` - mkdir -p device/realtek/rtl8720 + ohos_prebuilt_etc("feature3_etc") { + source = "src/config.conf" + relative_install_dir = "init" # (Optional) Directory for installing the submodule, which is relative to the default installation directory (/system/etc) + part_name = "partA" + } ``` -2. Create a directory for kernel adaptation and build the **config.gni** file of the development board. - - The following example adapts the LiteOS Cortex-M kernel to the RTL8720 development board of Realtek. The **device/realtek/rtl8720/liteos\_a/config.gni** file is configured as follows: + Example 4: Adding the module configuration file **test/examples/ohos.build** to the **ohos.build** file of this subsystem. Each subsystem has an **ohos.build** file in its root directory. ``` - # Kernel type, e.g. "linux", "liteos_a", "liteos_m". - kernel_type = "liteos_a" - - # Kernel version. - kernel_version = "3.0.0" - - # Board CPU type, e.g. "cortex-a7", "riscv32". - board_cpu = "real-m300" - - # Board arch, e.g. "armv7-a", "rv32imac". - board_arch = "" + "partA": { + "module_list": [ + "//test/examples/partA/feature1:helloworld_lib", + "//test/examples/partA/feature2:helloworld_bin", + "//test/examples/partA/feature3:feature3_etc", + ], + "inner_kits": [ - # Toolchain name used for system compiling. - # E.g. gcc-arm-none-eabi, arm-linux-harmonyeabi-gcc, ohos-clang, riscv32-unknown-elf. - # Note: The default toolchain is "ohos-clang". It's not mandatory if you use the default toochain. - board_toolchain = "gcc-arm-none-eabi" + ], + "system_kits": [ - # The toolchain path instatlled, it's not mandatory if you have added toolchian path to your ~/.bashrc. - board_toolchain_path = - rebase_path("//prebuilts/gcc/linux-x86/arm/gcc-arm-none-eabi/bin", - root_build_dir) + ], + "test_list": [ - # Compiler prefix. - board_toolchain_prefix = "gcc-arm-none-eabi-" - - # Compiler type, "gcc" or "clang". - board_toolchain_type = "gcc" - - # Board related common compile flags. - board_cflags = [] - board_cxx_flags = [] - board_ld_flags = [] - ``` - -3. Build the script. - - Create the **BUILD.gn** file in the development board directory. The target name must be the same as that of the development board. Taking the RTL8720 development board of Realtek as an example, the content in the **device/realtek/rtl8720/BUILD.gn** file is configured as follows: - - ``` - group("rtl8720") { # The target can be shared_library, static_library, or an executable file. - # Content - ...... - } - ``` - -4. Build the chipset solution. - - Run the **hb build** command in the development board directory to start the build. - - -## Adding a Product Solution - -The Compilation and Building subsystem supports flexible assembly of chipset solutions and modules to customize desired product solutions. The operation procedure is as follows: - -1. Create a product directory. - - Taking the Wi-Fi IoT module based on the RTL8720 development board as an example, you need to run the following command in the root code directory to create a product directory based on [1-Configuration Rules for Modules, Chipset Solutions, and Product Solutions](compilation-and-building-overview.md#section1625463413327). - - ``` - mkdir -p vendor/my_company/wifiiot - ``` - -2. Assemble the product. - - Create the **config.json** file in the product directory. Taking the Wi-Fi IoT module as an example, the **vendor/my\_company/wifiiot/config.json** file is as follows: - - ``` - { - "product_name": "wifiiot", # Product name - "ohos_version": "OpenHarmony 1.0", # In-use OS version - "device_company": "realtek", # Name of the chipset solution vendor - "board": "rtl8720", # Name of the development board - "kernel_type": "liteos_m", # Selected kernel type - "kernel_version": "3.0.0", # Selected kernel version - "subsystems": [ - { - "subsystem": "kernel", # Selected subsystem - "components": [ - { "component": "liteos_m", "features":[] } # Selected module and its features - ] - }, - ... - { - More subsystems and modules - } ] - } + } ``` - Before the build, the Compilation and Building subsystem will check the validity of fields, including **device\_company**, **board**, **kernel\_type**, **kernel\_version**, **subsystem**, and **component**. The first four fields and the latter two fields must match the current chipset solution and the module description in the **build/lite/components** file, respectively. - -3. Implement adaptation of OS APIs. + The declaration of a module contains the following parts: - Create the **hals** directory in the product directory and store the source code as well as the build script for OS adaptation in this directory. + - **module\_list**: submodule list of the module + - **inner\_kits**: APIs for other modules that depend on this module through **external\_deps** + - **system\_kits**: APIs for developers + - **test\_list**: test cases for the submodules of the module -4. Configure the system service. +2. Add the module to the product configuration file. - Create the **init\_configs** directory in the product directory and then the **init.cfg** file in the newly created directory. You can configure the system service to be started on demand. + Add **"subsystem\_examples:partA"** to the configuration file **productdefine/common/products/\{product-name\}.json** to build and package **partA** into the distribution. -5. Configure the init process \(only for the Linux kernel\). +3. Build the module, including the library, executable file, and etc configuration file. - You need to create the **etc** directory in the **init\_configs** directory, and then the **init.d** folder as well as the **fstab** file in the newly created directory. In addition, you need to create the **rcS** and **Sxxx** files in the **init.d** file and edit them based on product requirements. - -6. Configure the file system image \(required only for the development board that supports the file system\). - - Create the **fs.yml** file in the product directory and configure it as required. A typical **fs.yml** file is configured as follows: + For example, run the following command to build Hi3516D V300: ``` - - - fs_dir_name: rootfs # Image name - fs_dirs: - - - # Copy the files in the out/my_board/my_product/bin directory to the rootfs/bin directory and ignore the .bin files related to testing. - source_dir: bin - target_dir: bin - ignore_files: - - Test.bin - - TestSuite.bin - - - # Copy the files in the out/my_board/my_product/libs directory to the rootfs/lib directory, ignore all .a files, and set the permissions on the files and folders to 644 and 755, respectively. - source_dir: libs - target_dir: lib - ignore_files: - - .a - dir_mode: 755 - file_mode: 644 - - - source_dir: usr/lib - target_dir: usr/lib - ignore_files: - - .a - dir_mode: 755 - file_mode: 644 - - - source_dir: config - target_dir: etc - - - source_dir: system - target_dir: system - - - source_dir: sbin - target_dir: sbin - - - source_dir: usr/bin - target_dir: usr/bin - - - source_dir: usr/sbin - target_dir: usr/sbin - - - # Create an empty proc directory. - target_dir: proc - - - target_dir: mnt - - - target_dir: opt - - - target_dir: tmp - - - target_dir: var - - - target_dir: sys - - - source_dir: etc - target_dir: etc - - - source_dir: vendor - target_dir: vendor - - - target_dir: storage - - fs_filemode: - - - file_dir: lib/ld-uClibc-0.9.33.2.so - file_mode: 555 - - - file_dir: lib/ld-2.24.so - file_mode: 555 - - - file_dir: etc/init.cfg - file_mode: 400 - fs_symlink: - - - # Create the soft link ld-musl-arm.so.1 -> libc.so in the rootfs/lib directory. - source: libc.so - link_name: ${fs_dir}/lib/ld-musl-arm.so.1 - - - source: mksh - link_name: ${fs_dir}/bin/sh - - - source: mksh - link_name: ${fs_dir}/bin/shell - fs_make_cmd: - # Create an ext4 image for the rootfs directory using the script. - - ${root_path}/build/lite/make_rootfs/rootfsimg_linux.sh ${fs_dir} ext4 - - - fs_dir_name: userfs - fs_dirs: - - - source_dir: storage/etc - target_dir: etc - - - source_dir: data - target_dir: data - fs_make_cmd: - - ${root_path}/build/lite/make_rootfs/rootfsimg_linux.sh ${fs_dir} ext4 - ``` - -7. Build the script. - - Create the **BUILD.gn** file in the product directory and build the script based on your requirements. Taking the Wi-Fi IoT module in step 1 as an example, the **BUILD.gn** is configured as follows: - - ``` - group("wifiiot") { # The target name must be the same as the product name. - deps = [] - # Copy the init configuration. - deps += [ "init_configs" ] - # Build the hals directory. - deps += [ "hals" ] - # Others - ...... - } + ./build.sh --product-name Hi3516DV300 --ccache ``` -8. Build the product. +4. Obtain the build result. - Run the **hb set** command in the root code directory to select the new product as prompted, and then run the **hb build** command to start the build. + Files generated during the build are stored in the **out/ohos-arm-release/** directory, and the generated image is stored in the **out/ohos-arm-release/packages/phone/images/** directory. diff --git a/en/device-dev/subsystems/compilation-and-building-overview-0.md b/en/device-dev/subsystems/compilation-and-building-overview-0.md deleted file mode 100644 index de4d2beab9d..00000000000 --- a/en/device-dev/subsystems/compilation-and-building-overview-0.md +++ /dev/null @@ -1,60 +0,0 @@ -# Compilation and Building Overview - -- [Basic Concepts](#section175012297491) -- [Working Principles](#section193961322175011) -- [Limitations and Constraints](#section2029921310472) - -The compilation and building subsystem provides a framework based on Generate Ninja \(GN\) and Ninja. This subsystem allows you to: - -- Build products based on different chipset platforms, for example, Hi3516D V300. - -- Package capabilities required by a product by assembling modules based on the product configuration. - -## Basic Concepts - -It is considered best practice to learn the following basic concepts before you start building: - -- **Platform** - - A platform is a combination of development boards and kernels. - - Supported subsystems and modules vary according to the platform. - -- **Subsystems** - - OpenHarmony is designed with a layered architecture, which from bottom to top consists of the kernel layer, system service layer, framework layer, and application layer. System functions are expanded by levels, from system to subsystem, and further to module. In a multi-device deployment scenario, unnecessary subsystems and modules can be excluded from the system as required. A subsystem is a logical concept and is a flexible combination of functions. - -- **Module** - - A module is a reusable software binary unit that contains source code, configuration files, resource files, and build scripts. A module can be built independently, integrated in binary mode, and then tested independently. - -- **GN** - - GN is short for Generate Ninja, which is used to generate Ninja files. - -- **Ninja** - - Ninja is a small high-speed build system. - - -## Working Principles - -The process to build OpenHarmony is as follows: - -- Parsing commands: Parse the name of the product to build and load related configurations. -- Running GN: Configure toolchains and global options based on the parsed product name and compilation type. -- Running Ninja: Start building and generate a product distribution. - -## Limitations and Constraints - -- You must download the source code using method 3 described in [Source Code Acquisition](../get-code/source-code-acquisition.md). -- The build environment must be Ubuntu 18.04 or later. -- You must install the software package required for build. - - The installation command is as follows: - - ``` - sudo apt-get install binutils git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 - ``` - - diff --git a/en/device-dev/subsystems/compilation-and-building-overview.md b/en/device-dev/subsystems/compilation-and-building-overview.md index 8cf7a6a1c14..de4d2beab9d 100644 --- a/en/device-dev/subsystems/compilation-and-building-overview.md +++ b/en/device-dev/subsystems/compilation-and-building-overview.md @@ -1,132 +1,60 @@ -# Compilation and Building Overview +# Compilation and Building Overview - [Basic Concepts](#section175012297491) -- [Usage Guidelines](#section193961322175011) +- [Working Principles](#section193961322175011) - [Limitations and Constraints](#section2029921310472) -The compilation and building subsystem is a building framework based on Generate Ninja \(GN\) and Ninja, which supports component-based OpenHarmony development. This subsystem can be used to: +The compilation and building subsystem provides a framework based on Generate Ninja \(GN\) and Ninja. This subsystem allows you to: -- Build existing products. +- Build products based on different chipset platforms, for example, Hi3516D V300. -- Build chipset source code independently. -- Build a single component independently. +- Package capabilities required by a product by assembling modules based on the product configuration. ## Basic Concepts -It is considered best practice to learn the following basic concepts before you start development and building: +It is considered best practice to learn the following basic concepts before you start building: -- **Component** +- **Platform** - A component is a reusable software unit that can contain source code, configuration files, resource files, and compilation scripts. + A platform is a combination of development boards and kernels. -- **GN** - - GN is short for Generate Ninja, which is used to generate Ninja files. - -- **Ninja** - - Ninja is a small high-speed building system. - - -## Usage Guidelines - -1. **Building Process** + Supported subsystems and modules vary according to the platform. - [Figure 1](#fig9744112715161) shows the building process. +- **Subsystems** - **Figure 1** Building process - ![](figures/building-process.jpg "building-process") + OpenHarmony is designed with a layered architecture, which from bottom to top consists of the kernel layer, system service layer, framework layer, and application layer. System functions are expanded by levels, from system to subsystem, and further to module. In a multi-device deployment scenario, unnecessary subsystems and modules can be excluded from the system as required. A subsystem is a logical concept and is a flexible combination of functions. - 1. **hb set**: Set the OpenHarmony source code directory and the product to build. - 2. **hb build**: Build the product, development board, or component. The process to build the solution is as follows: - - **Reading configuration**: Read the development board configuration, which covers the toolchain, linking commands, and compilation options. - - **Running gn**: Run the **gn gen** command to read the product configuration \(related to the development board, kernel, and system components\) and generate the **out** directory and **ninja** files for the solution. - - **Running Ninja**: Run **ninja -C out/company/product** to start compilation. - - **Packaging**: Package the compilation result to create a file system image. +- **Module** + A module is a reusable software binary unit that contains source code, configuration files, resource files, and build scripts. A module can be built independently, integrated in binary mode, and then tested independently. -2. **Building Commands** - - 1. **hb set** - - ``` - hb set -h - usage: hb set [-h] [-root [ROOT_PATH]] [-p] - - optional arguments: - -h, --help show this help message and exit - -root [ROOT_PATH], --root_path [ROOT_PATH] - Set OHOS root path - -p, --product Set OHOS board and kernel - ``` +- **GN** - - If you run **hb set** with no argument, the default setting process starts. - - You can run **hb set -root** _dir_ to set the root directory of the source code. - - **hb set -p** is used to set the product to compile. + GN is short for Generate Ninja, which is used to generate Ninja files. - 2. **hb env** +- **Ninja** - View the current configuration. + Ninja is a small high-speed build system. - ``` - hb env - [OHOS INFO] root path: xxx - [OHOS INFO] board: hispark_taurus - [OHOS INFO] kernel: liteos - [OHOS INFO] product: ipcamera - [OHOS INFO] product path: xxx/vendor/hisilicon/ipcamera - [OHOS INFO] device path: xxx/device/hisilicon/hispark_taurus/sdk_linux_4.19 - ``` - 3. **hb build** +## Working Principles - ``` - hb build -h - usage: hb build [-h] [-b BUILD_TYPE] [-c COMPILER] [-t [TEST [TEST ...]]] - [--dmverity] [-p PRODUCT] [-f] [-n] - [component [component ...]] - - positional arguments: - component name of the component - - optional arguments: - -h, --help show this help message and exit - -b BUILD_TYPE, --build_type BUILD_TYPE - release or debug version - -c COMPILER, --compiler COMPILER - specify compiler - -t [TEST [TEST ...]], --test [TEST [TEST ...]] - compile test suite - --dmverity Enable dmverity - -p PRODUCT, --product PRODUCT - build a specified product with - {product_name}@{company}, eg: ipcamera@hisilcon - -f, --full full code compilation - ``` +The process to build OpenHarmony is as follows: - - If you run **hb build** with no argument, the previously configured code directory, product, and options are used for the compilation. The **-f** option will delete all products to be compiled, which is equivalent to running **hb clean** and **hb build**. - - You can run **hb build** _\{component\_name\}_ to compile product components separately based on the development board and kernel set for the product, for example, **hb build kv\_store**. - - You can run **hb build -p ipcamera@hisilicon** to skip the setting step and compile the product directly. - - You can run **hb build** in **device/device\_company/board** to select the kernel and start compilation based on the current development board and the selected kernel to generate an image that contains the kernel and driver only. +- Parsing commands: Parse the name of the product to build and load related configurations. +- Running GN: Configure toolchains and global options based on the parsed product name and compilation type. +- Running Ninja: Start building and generate a product distribution. - 4. **hb clean** +## Limitations and Constraints - Clear the compilation result of the product in the **out** directory, and retain the **args.gn** and **build.log** files only. To clear files in a specified directory, add the directory parameter to the command, for example, **hb clean** _xxx_**/out/**_xxx_. +- You must download the source code using method 3 described in [Source Code Acquisition](../get-code/source-code-acquisition.md). +- The build environment must be Ubuntu 18.04 or later. +- You must install the software package required for build. + The installation command is as follows: ``` - hb clean - usage: hb clean [-h] [out_path] - - positional arguments: - out_path clean a specified path. - - optional arguments: - -h, --help show this help message and exit + sudo apt-get install binutils git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 ``` -## Limitations and Constraints - -Ensure that the development environment has GN and Ninja, Python 3.7.4 and later, and hb commands. You must download the complete code before you start. - diff --git a/en/device-dev/subsystems/development-guidelines-5.md b/en/device-dev/subsystems/development-guidelines-4.md similarity index 100% rename from en/device-dev/subsystems/development-guidelines-5.md rename to en/device-dev/subsystems/development-guidelines-4.md diff --git a/en/device-dev/subsystems/development-guidelines-on-photographing.md b/en/device-dev/subsystems/development-guidelines-on-photographing.md index 23f92734097..d35bed7457c 100644 --- a/en/device-dev/subsystems/development-guidelines-on-photographing.md +++ b/en/device-dev/subsystems/development-guidelines-on-photographing.md @@ -385,6 +385,7 @@ None Surface *surface = Surface::CreateSurface(); if (surface == nullptr) { delete fc; + return; } surface->SetWidthAndHeight(1920, 1080); /* 1920:width,1080:height */ fc->AddSurface(*surface); diff --git a/en/device-dev/subsystems/development-guidelines-on-trusted-device-group-management.md b/en/device-dev/subsystems/development-guidelines-on-trusted-device-group-management.md deleted file mode 100644 index 91c4013935b..00000000000 --- a/en/device-dev/subsystems/development-guidelines-on-trusted-device-group-management.md +++ /dev/null @@ -1,264 +0,0 @@ -# Development Guidelines on Trusted Device Group Management - -- [When to Use](#section18502174174019) -- [Available APIs](#section1633115419401) -- [How to Develop](#section17516229192313) -- [Debugging and Verification](#section427316292411) - -## When to Use - -When a distributed service needs to exploit the secure communication channel provided by the distributed virtual bus for different devices, it can use the trusted device group management component to create groups of trusted devices. Distributed applications can establish and use secure, trusted relationships between devices based on the authentication capabilities for devices using different HUAWEI IDs, such as PIN code, QR code, and OneHop, and the capabilities for grouped devices using the same HUAWEI ID. For a device on which you have not logged in using your HUAWEI ID, you can enter the PIN code or scan the QR code to obtain the connection and PIN code information of the device. Then you can create a group of trusted devices and add this device to the group. If other applications have created and shared their groups of trusted devices, or have logged in using the same HUAWEI ID as yours, you can call APIs to query and use the groups. - -## Available APIs - -The following tables list the innerkits APIs provided by trusted device group management. These APIs are intended for system applications only. - -**Table 1** Java APIs provided by trusted device group management - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Function

-

Description

-

public static DeviceGroupManager getInstance(Abilityability, StringappID, IHichainGroupCallbackcallbackHandler)

-

Obtains a DeviceGroupManager instance and registers a listener.

-

int createGroup(String appId, String groupName, int groupType, String groupInfo)

-

Creates a group of trusted devices.

-

public int deleteGroup(String gourpId)

-

Deletes a group of trusted devices.

-

public String getLocalConnectInfo()

-

Obtains the network connection information of the local device.

-

int addMemberToGroup(String appId, long requestId, String addParams, String connectParams, int groupType)

-

Adds a member to a specified group.

-

int deleteMemberFromGroup(String appId, long requestId, String deleteParams, String connectParams)

-

Deletes a member from a specified group.

-

int cancelRequest(long requestId)

-

Cancels an ongoing request, for example, adding or deleting a member.

-

List<String> listJoinedGroups(int groupType)

-

Obtains a list of groups of a specified type to which the current device has been added.

-

List<String> listTrustedDevices(String groupId)

-

Obtains a list of devices in a specified group.

-

boolean isDeviceInGroup(String groupId, String deviceId)

-

Checks whether a specified device has been added to the given group.

-

List<String> getGroupInfo(String queryParams)

-

Obtains a list of information about the groups that match the input parameters.

-

int setFriendsList(String groupId, List<String> friendsList)

-

Adds a friend list to a specified group.

-

List<String> getFriendsList(String groupId)

-

Obtains the friend list of a specified group.

-

int registerGroupNotice(String groupId, IHichainGroupChangeListener groupChangeListener)

-

Registers a listener for changes to a specified group.

-

int revokeGroupNotice(String groupId)

-

Revokes the listener for changes to a specified group.

-
- -**Table 2** C++ APIs provided by trusted device group management for internal applications to query group information using SA - - - - - - - - - - - - - - - - - - - - - - -

Function

-

Description

-

DeviceAuthProxy()

-

Obtains a DeviceAuthProxy instance.

-

~DeviceAuthProxy()

-

A destructor used to delete the DeviceAuthProxy instance.

-

static int CheckAccessToGroup(const std::string &groupId, const std::string &pkgName);

-

Checks whether an application with a specified bundle name can access a specified group.

-

static int CheckAccessToDevice(const std::string &connDeviceId, const std::string &pkgName);

-

Checks whether an application with a specified bundle name can access the group that contains a specified device.

-

static std::vector<std::string> GetRelatedGroupInfo(const std::string &connDeviceId);

-

Obtains information about all the groups that contain both the local device and the device with a specified ID.

-
- -## How to Develop - -To develop trusted device group management, first obtain a management instance \(a callback to obtain group operation results is registered during the process\). Then you can use the instance to add or delete members, set a friend list for a group, and perform related query operations. - -**Scenario 1**: Create a group. - -``` -private HwDeviceGroupManager hwDeviceGroupManager; -... -private HichainGroupCallback groupCallbackByA = new HichainGroupCallback() { - @Override public void onFinish(long requestId, GroupOperation operationCode, String returnData) { - - } - @Override public void onError(long requestId, GroupOperation operationCode, int errorCode, String errorReturn) { - - } - @Override public String onRequest(long requestId, GroupOperation operationCode, String reqParams) { - JSONObject onRequestJson = generateConfirmation(REQUEST_ACCEPTED); - return onRequestJson.toString(); - } -}; -... -Optional context = convertAbilityToContext(mAbility); -Context ctxt = context.get(); -hwDeviceGroupManager = HwDeviceGroupManager.getInstance(ctxt, APP_ID, groupCallbackByA); -int ret = hwDeviceGroupManager.createGroup(APP_ID, GROUP_NAME, GROUP_TYPE, GROUP_INFO); -``` - -1. Declare the private member variable of the **HwDeviceGroupManager** instance. - - ``` - private HwDeviceGroupManager hwDeviceGroupManager; - ``` - -2. Create a callback for group management operations. - - ``` - private HichainGroupCallback groupCallbackByA = new HichainGroupCallback(); - ``` - -3. Obtain a **HwDeviceGroupManager** instance. \(In distributed scenarios, the same application on different devices must use the same **APP\_ID**.\) - - ``` - hwDeviceGroupManager = HwDeviceGroupManager.getInstance(ctxt, APP_ID, groupCallbackByA); - ``` - -4. Call the **createGroup** function to create a group. If **0** is returned, the creation request is submitted successfully. - - ``` - int ret = hwDeviceGroupManager.createGroup(APP_ID, GROUP_NAME, GROUP_TYPE, GROUP_INFO); - ``` - -5. After the group is created, **onFinish** is called. In this callback, the value of **operationCode** is **OperationCode.CREATE**, indicating a group creation operation. **returnData** is in JSON format and contains the **groupId** field, indicating the ID of the created group. - -**Scenario 2**: Add an authenticated device \(member\) to a group so that you can initiate trusted, encrypted connections to the device through the distributed virtual bus. - -``` -deviceGroupManager = DeviceGroupManager.getInstance(mAbility, APP_ID, hichainGroupCallback); -private static final String CONN_PARAM ="{\"DEVICE_ID\":\"11111111\",\"WIFI_IP\":\"192.168.43.149\",\"WIFI_PORT\":\"30000\",\"BLE_MAC\":\"\"}"; -private static final String ADD_PARAM ="{\"groupId\":\"344C1C8B149\",\"groupName\":\"myGroup\",\"addId\":\"11111111\",\"isAdmin\":\"false\"}"; -private static final int GROUP_TYPE = 256; -int result = deviceGroupManager.addMemberToGroup(APP_ID, reqId, ADD_PARAM, CONN_PARAM, GROUP_TYPE); -``` - -1. Obtain an **HwDeviceGroupManager** instance. - - ``` - deviceGroupManager = HwDeviceGroupManager.getInstance(mAbility, APP_ID, hichainGroupCallback); - ``` - -2. Set network connection parameters for the member to add \(in JSON format\), which are network parameters supported by the distributed virtual bus, such as **WIFI\_IP**, **WIFI\_PORT**, **BLR\_MAC**, and **DEVICE\_ID**. For details about the parameters, see the distributed virtual bus development guidelines. - - ``` - String CONN_PARAM ="{\"DEVICE_ID\":\"11111111\",\"WIFI_IP\":\"192.168.43.149\",\"WIFI_PORT\":\"30000\",\"BLE_MAC\":\"\"}"; - ``` - -3. Set parameters for the member to add \(in JSON format\), including the group ID, name, and whether the member is an administrator. If the member is invited to add a group, the value of **isAdmin** is **true**; otherwise, the value of **isAdmin** is **false**. - - ``` - String ADD_PARAM ="{\"groupId\":\"344C1C8B149\",\"groupName\":\"myGroup\",\"addId\":\"11111111\",\"isAdmin\":\"false\"}"; - ``` - -4. Set the type of the target group to **256**, indicating a P2P group. - - ``` - private static final int GROUP_TYPE = 256; - ``` - -5. Set **generateConfirmation** of the **onRequest** function in **HichainGroupCallback**. **PIN\_CODE** indicates the PIN code, which is input by users on the UI of the service. \(In a distributed communication, two devices must use the same PIN code.\) - - ``` - private JSONObject generateConfirmation(int confirmation) { - JSONObject jsonObject = new JSONObject(); - try { jsonObject.put("pinCode", PIN_CODE); - jsonObject.put("confirmation", confirmation); - } catch (JSONException e) { - LogUtil.error(TAG, "" + e.getMessage()); - } - return jsonObject; - } - ``` - -6. Call the **addMemberToGroup** function to add the member to the group. - - ``` - result = deviceGroupManager.addMemberToGroup(APP_ID, reqId, ADD_PARAM, CONN_PARAM, GROUP_TYPE); - ``` - -7. Check whether **HichainGroupCallback.onFinish** is called \(**operationCode** is **OperationCode.JOIN**\). If it is called, the member is added successfully. -8. Call APIs of the distributed virtual bus to create secure sessions between devices. - -## Debugging and Verification - -1. Develop an application with OpenHarmony. - -2. Develop an application by following the development guidelines. - -3. Create a group. If the **onFinish** callback is invoked, the group is created successfully. - -4. Deploy the same application on two devices, A and B. - -5. Transmit the connection parameters of device B to device A through a QR code. - -6. In the application on device A, create group1 and call the API to add device B to group1. If **HichainGroupCallback.onFinish** is called, device B is successfully added to group1. - diff --git a/en/device-dev/subsystems/dfx-11.md b/en/device-dev/subsystems/dfx-7.md similarity index 92% rename from en/device-dev/subsystems/dfx-11.md rename to en/device-dev/subsystems/dfx-7.md index faf8b0d8fa8..b7bfac023a5 100644 --- a/en/device-dev/subsystems/dfx-11.md +++ b/en/device-dev/subsystems/dfx-7.md @@ -6,7 +6,7 @@ The DFX subsystem provides the following functions: -- HiLog: Implements the logging function. It is applicable to Mini-System Devices \(reference memory ≥ 128 KB\), Small-System Devices \(reference memory ≥ 1 MB\), and Standard-System Devices \(reference memory ≥ 128 MB\). +- HiLog: Implements the logging function. It is applicable to Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\) as well as Standard-System Devices \(reference memory ≥ 128 MB\). - HiSysEvent: Implements system event logging. It is applicable to Standard-System Devices \(reference memory ≥ 128 MB\). diff --git a/en/device-dev/subsystems/dfx.md b/en/device-dev/subsystems/dfx.md index 241303cae97..c4ffcc54fdf 100644 --- a/en/device-dev/subsystems/dfx.md +++ b/en/device-dev/subsystems/dfx.md @@ -1,6 +1,6 @@ # DFX -- **[DFX](dfx-11.md)** +- **[DFX](dfx-7.md)** - **[Development Guidelines on HiLog](development-guidelines-on-hilog.md)** diff --git a/en/device-dev/subsystems/figures/build-process.jpg b/en/device-dev/subsystems/figures/build-process.jpg index c8d58bc3d172524c78e3c45455622d081429529c..a48ea734509526b3ed0fe85b7c4a98b0a2a9c4f0 100644 GIT binary patch literal 59879 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

1Ni&55SyIW^h#}9bGMt+tRnDiWH8) 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 diff --git a/en/device-dev/subsystems/figures/building-process.jpg b/en/device-dev/subsystems/figures/building-process.jpg deleted file mode 100644 index c8d58bc3d172524c78e3c45455622d081429529c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63193 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 diff --git a/en/device-dev/subsystems/figures/ril-adapter.png b/en/device-dev/subsystems/figures/ril-adapter.png deleted file mode 100644 index 51d8a0668a19b26071873247a5cf1f483d9044e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33317 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 -- **[Graphics](graphics-2.md)** +- **[Graphics](graphics-1.md)** - **[Development Guidelines on Container Components](development-guidelines-on-container-components.md)** diff --git a/en/device-dev/subsystems/overview-2.md b/en/device-dev/subsystems/overview-2.md new file mode 100644 index 00000000000..98b5b4ad048 --- /dev/null +++ b/en/device-dev/subsystems/overview-2.md @@ -0,0 +1,81 @@ +# Overview + +- [Basic Concepts](#section967213571204) +- [Encoding and Decoding](#section1582020483111) + +OpenHarmony multimedia services help you to develop for audio and video playback and recording. + +- The media playback module facilitates the development of audio and video playback, including media file and stream playback, volume control, and playback progress control. +- The media recording module supports the development of audio and video recording and provides functions to set the size of captured video, encoding bit rate, encoder type, video frame rate, audio sampling rate, and output file format. + +## Basic Concepts + +It is considered good practice that you understand the following concepts before starting development: + +- Streaming media technology + + The streaming media technology refers to a process to encode continuous video and audio data and store the data on a network server. A viewer can watch and listen to the video and audio during download with no need to wait for the completion of download. + + +- Video frame rate + + The frame rate is used to measure the number of displayed frames, which is the number of images transmitted per second. The more frames per second \(FPS\), the smoother the video. + +- Bit rate + + Bit rate is the number of bits transmitted per unit of time. The commonly used unit is kbit/s. + +- Sampling rate + + The sampling rate is the number of samples per second taken from continuous signals to form discrete signals. The unit is hertz \(Hz\). + + +## Encoding and Decoding + +Available audio and video encoding and decoding capabilities vary depending on device types. The following table lists supported specifications for available development boards. + +**Table 1** Encoding and decoding specifications for different development boards + + + + + + + + + + + + + + + + + + + + + + + + +

Device Type

+

Development Board

+

Decoding

+

Encoding

+

Cameras with a screen

+

Hi3516

+
  • Audio: The MPEG-4 AAC Profile (AAC LC), mono and dual channels, and the MPEG-4 (.mp4 and .m4a) container format are supported.
  • Video: The H.265 (HEVC) and H.264 (AVC) (for streams encoded using a chip of the same type) and the MPEG-4 (.mp4) container format are supported.
+
  • Audio: AAC-LC encoding, mono and dual channels, and the MPEG-4 (.mp4) container format are supported.
  • Video: H.264 and H.265 encoding and the MPEG-4 (.mp4) container format are supported.
+

Cameras without a screen

+

Hi3518

+
  • Audio: The MPEG-4 AAC Profile (AAC LC), mono and dual channels, and the MPEG-4 (.mp4 and .m4a) container format are supported.
  • Video: none
+
  • Audio: AAC-LC encoding, mono and dual channels, and the MPEG-4 (.mp4) container format are supported.
  • Video: H.264 and H.265 encoding and the MPEG-4 (.mp4) container format are supported.
+

WLAN connecting devices

+

Hi3861

+

N/A

+

N/A

+
+ +For details about the encoding and decoding specifications of Hi3516 and Hi3518, refer to their documentation. + diff --git a/en/device-dev/subsystems/overview-3.md b/en/device-dev/subsystems/overview-3.md index 98b5b4ad048..be32c8ebf46 100644 --- a/en/device-dev/subsystems/overview-3.md +++ b/en/device-dev/subsystems/overview-3.md @@ -1,81 +1,148 @@ -# Overview +# Overview -- [Basic Concepts](#section967213571204) -- [Encoding and Decoding](#section1582020483111) +- [Basic Concepts](#section72601941194812) +- [Ability Management Framework](#section14633111813374) +- [Bundle Management Framework](#section1341146154412) +- [Working Principles](#section94302021112717) +- [Limitations and Constraints](#section89534912527) -OpenHarmony multimedia services help you to develop for audio and video playback and recording. +The application framework is provided by OpenHarmony for you to develop OpenHarmony applications. It consists of two modules: ability management framework \(also called the ability framework\) and bundle management framework. -- The media playback module facilitates the development of audio and video playback, including media file and stream playback, volume control, and playback progress control. -- The media recording module supports the development of audio and video recording and provides functions to set the size of captured video, encoding bit rate, encoder type, video frame rate, audio sampling rate, and output file format. +## Basic Concepts -## Basic Concepts +This section describes some basic concepts for you to better understand the OpenHarmony application framework before you start development. -It is considered good practice that you understand the following concepts before starting development: +## Ability Management Framework -- Streaming media technology +The ability management framework manages running status of OpenHarmony applications. - The streaming media technology refers to a process to encode continuous video and audio data and store the data on a network server. A viewer can watch and listen to the video and audio during download with no need to wait for the completion of download. +**Figure 1** Architecture of the ability management framework +![](figures/architecture-of-the-ability-management-framework.png "architecture-of-the-ability-management-framework") +- **Ability** is the minimum unit for the system to schedule applications. It is a component that can implement an independent functionality. An application can contain one or more **Ability** instances. There are two types of templates that you can use to create an **Ability** instance: Page and Service. + - An **Ability using the Page template** \(Page ability for short\) provides a UI for interacting with users. -- Video frame rate + - An **Ability using the Service template** does not have a UI and is used for running background tasks. - The frame rate is used to measure the number of displayed frames, which is the number of images transmitted per second. The more frames per second \(FPS\), the smoother the video. -- Bit rate - Bit rate is the number of bits transmitted per unit of time. The commonly used unit is kbit/s. +- An **AbilitySlice** represents a single screen and its control logic. It is specific to Page abilities. A Page ability may contain one ability slice or multiple ability slices that provide highly relevant capabilities. -- Sampling rate + **Figure 2** Relationship between a Page ability and its ability slices + ![](figures/relationship-between-a-page-ability-and-its-ability-slices.png "relationship-between-a-page-ability-and-its-ability-slices") - The sampling rate is the number of samples per second taken from continuous signals to form discrete signals. The unit is hertz \(Hz\). +- **Lifecycle** is a general term for all states of an ability, including **INITIAL**, **INACTIVE**, **ACTIVE**, and **BACKGROUND**. + **Figure 3** Lifecycle state transition of a Page ability + -## Encoding and Decoding + ![](figures/图片1.png) -Available audio and video encoding and decoding capabilities vary depending on device types. The following table lists supported specifications for available development boards. + - **OnStart\(\)** + + This callback is invoked when the system first creates the Page ability. After this callback is executed, the Page ability enters the **INACTIVE** state. This callback is triggered only once in the entire lifecycle of each Page ability. You must override this callback and set the default ability slice to be displayed. + + - **OnActive\(\)** + + This callback is invoked when the Page ability in the **INACTIVE** state enters the foreground. After this callback is executed, the Page ability enters the **ACTIVE** state, in which it becomes interactive. The Page ability will stay in this state unless it loses focus upon a certain event, for example, when the user touches the Back button or navigates to another Page ability. + + When such an event occurs, the Page ability returns to the **INACTIVE** state, and the system invokes the **OnInactive\(\)** callback. The Page ability may move to the **ACTIVE** state again, and the system will then invoke the **OnActive\(\)** callback again. You should implement both **OnActive\(\)** and **OnInactive\(\)** for a Page ability and use **OnActive\(\)** to obtain the resources released in **OnInactive\(\)**. + + - **OnInactive\(\)** + + This callback is invoked when the Page ability loses focus, and the Page ability then becomes **INACTIVE**. You can implement the behavior to perform after the Page ability loses focus. + + - **OnBackground\(\)** + + This callback is invoked based on the system resource status when the Page ability becomes invisible to the user. After this callback is executed, the Page ability enters the **BACKGROUND** state. You should release the resources that are no longer needed after the Page ability becomes invisible or perform time-consuming save operations in this callback. + + - **OnForeground\(\)** + + A Page ability in the **BACKGROUND** state still resides in memory. When the Page ability returns to the foreground \(for example, when the user navigates to this Page ability again\), the system first calls **OnForeground\(\)** to switch the Page ability to the **INACTIVE** state, and then calls **OnActive\(\)** to make it **ACTIVE**. You should use the **OnForeground\(\)** callback to reclaim the resources released in **OnBackground\(\)**. Currently, the **OnForeground\(\)** callback is unavailable to lite devices. + + - **OnStop\(\)** + + This callback is invoked when the system is destroying a Page ability due to one of the following possible causes: + + - The user explicitly closes the Page ability using a system management feature, for example, the task manager. + - The user behavior, for example, exiting an application, triggers the **TerminateAbility\(\)** function on the Page ability. + - The system needs to temporarily destroy the Page ability and re-create it due to configuration changes. + - The system automatically destroys a Page ability in the **BACKGROUND** state due to resource management purposes. + + +- **AbilityKit** is a development kit provided by the ability management framework. You can use this kit to develop applications based on the **Ability** component. There are two types of applications developed based on the **Ability** component: JS Ability developed using the JavaScript language and Native Ability developed using the C/C++ language. The JS application development framework encapsulates JavaScript UI components on the basis of the AbilityKit and is used to help you quickly develop JS Ability-based applications. +- **AbilityLoader** is used to register and load **Ability** classes. After creating an **Ability** class, you should first call the registration API defined in **AbilityLoader** to register the **Ability** class name with the ability management framework so that this **Ability** can be instantiated when being started. + +- **AbilityManager** enables inter-process communication \(IPC\) between the AbilityKit and the Ability Manager Service. + +- **EventHandler** is provided by the AbilityKit to enable inter-thread communication between abilities. + +- The **Ability Manager Service** is a system service used to coordinate the running relationships and lifecycle states of **Ability** instances. It consists of the following modules: + + - The service startup module starts and registers the Ability Manager Service. + - The service interface management module manages external capabilities provided by the Ability Manager Service. + - The process management module starts and destroys processes where **Ability** instances are running, and maintains the process information. + - The ability stack management module maintains the presentation sequence of abilities in the stack. + - The lifecycle scheduling module changes an ability to a particular state based on the current operation of the system. + - The connection management module manages connections to Service abilities. + +- **AppSpawn** is a system service used to create the process for running an ability. This service has high permissions. It sets permissions for **Ability** instances and pre-loads some common modules to accelerate application startup. + + +## Bundle Management Framework + +The bundle management framework is provided by OpenHarmony for you to manage application bundles. + +**Figure 4** Architecture of the bundle management framework +![](figures/architecture-of-the-bundle-management-framework.png "architecture-of-the-bundle-management-framework") + +- **BundleKit** includes external APIs provided by the Bundle Manager Service, including the APIs for application installation and uninstallation, bundle information query, and bundle state change listeners. +- The **bundle scanning sub-module** parses pre-installed or installed bundles on the local device and extracts information from them for the bundle management module to manage and make the information persistent for storage. +- The **bundle installation sub-module** installs, uninstalls, and updates a bundle. The **bundle installation service** is an independent process that communicates with the Bundle Manager Service through IPC. It is used to create or delete installation directories and has high permissions. + +- The **bundle management sub-module** manages information related to application bundles and stores persistent bundle information. + +- The **bundle security management sub-module** verifies signatures, and grants and manages permissions. + + +## Working Principles + +The Ability Manager Service and Bundle Manager Service are the core modules of the ability management framework and bundle management framework, respectively. The two system-level services are registered and discovered by using the system service framework SAMgr, and they are used by manage abilities and bundles for other processes. The Ability Manager Service and Bundle Manager Service are provided as open APIs in the AbilityKit and BundleKit. + +**Figure 5** Startup of the Ability Manager Service and Bundle Manager Service +![](figures/startup-of-the-ability-manager-service-and-bundle-manager-service.png "startup-of-the-ability-manager-service-and-bundle-manager-service") + +OpenHarmony applications can be installed and started after the two services are started. + +**Figure 6** Application startup process +![](figures/application-startup-process.png "application-startup-process") + +The home screen is the first OpenHarmony application started by the Ability Manager Service. After the home screen is started, the user can touch any installed OpenHarmony application on the home screen to start the particular application. The figure above shows the interaction process of starting an installed application from the home screen. + +As shown in the figure, the Ability Manager Service is responsible for displaying or hiding an ability, and the Bundle Manager Service is responsible for storing and querying ability information. + +## Limitations and Constraints + +- Language version + + - C++ 11 or later + + +- The specifications of the application framework vary depending on the System-on-a-Chip \(SoC\) and underlying OS capabilities. + + - Cortex-M RAM and ROM + + - RAM: greater than 20 KB \(recommended\) + + - ROM: greater than 300 KB \(for the JS application development framework and related subsystems, such as UIKit and engine\) + + + - Cortex-A RAM and ROM + + - RAM: greater than 2 MB \(recommended\) + + - ROM: greater than 2 MB \(for the JS application development framework and related subsystems, such as UIKit and engine\) -**Table 1** Encoding and decoding specifications for different development boards - - - - - - - - - - - - - - - - - - - - - - - -

Device Type

-

Development Board

-

Decoding

-

Encoding

-

Cameras with a screen

-

Hi3516

-
  • Audio: The MPEG-4 AAC Profile (AAC LC), mono and dual channels, and the MPEG-4 (.mp4 and .m4a) container format are supported.
  • Video: The H.265 (HEVC) and H.264 (AVC) (for streams encoded using a chip of the same type) and the MPEG-4 (.mp4) container format are supported.
-
  • Audio: AAC-LC encoding, mono and dual channels, and the MPEG-4 (.mp4) container format are supported.
  • Video: H.264 and H.265 encoding and the MPEG-4 (.mp4) container format are supported.
-

Cameras without a screen

-

Hi3518

-
  • Audio: The MPEG-4 AAC Profile (AAC LC), mono and dual channels, and the MPEG-4 (.mp4 and .m4a) container format are supported.
  • Video: none
-
  • Audio: AAC-LC encoding, mono and dual channels, and the MPEG-4 (.mp4) container format are supported.
  • Video: H.264 and H.265 encoding and the MPEG-4 (.mp4) container format are supported.
-

WLAN connecting devices

-

Hi3861

-

N/A

-

N/A

-
-For details about the encoding and decoding specifications of Hi3516 and Hi3518, refer to their documentation. diff --git a/en/device-dev/subsystems/overview-4.md b/en/device-dev/subsystems/overview-4.md deleted file mode 100644 index be32c8ebf46..00000000000 --- a/en/device-dev/subsystems/overview-4.md +++ /dev/null @@ -1,148 +0,0 @@ -# Overview - -- [Basic Concepts](#section72601941194812) -- [Ability Management Framework](#section14633111813374) -- [Bundle Management Framework](#section1341146154412) -- [Working Principles](#section94302021112717) -- [Limitations and Constraints](#section89534912527) - -The application framework is provided by OpenHarmony for you to develop OpenHarmony applications. It consists of two modules: ability management framework \(also called the ability framework\) and bundle management framework. - -## Basic Concepts - -This section describes some basic concepts for you to better understand the OpenHarmony application framework before you start development. - -## Ability Management Framework - -The ability management framework manages running status of OpenHarmony applications. - -**Figure 1** Architecture of the ability management framework -![](figures/architecture-of-the-ability-management-framework.png "architecture-of-the-ability-management-framework") - -- **Ability** is the minimum unit for the system to schedule applications. It is a component that can implement an independent functionality. An application can contain one or more **Ability** instances. There are two types of templates that you can use to create an **Ability** instance: Page and Service. - - An **Ability using the Page template** \(Page ability for short\) provides a UI for interacting with users. - - - An **Ability using the Service template** does not have a UI and is used for running background tasks. - - - -- An **AbilitySlice** represents a single screen and its control logic. It is specific to Page abilities. A Page ability may contain one ability slice or multiple ability slices that provide highly relevant capabilities. - - **Figure 2** Relationship between a Page ability and its ability slices - ![](figures/relationship-between-a-page-ability-and-its-ability-slices.png "relationship-between-a-page-ability-and-its-ability-slices") - -- **Lifecycle** is a general term for all states of an ability, including **INITIAL**, **INACTIVE**, **ACTIVE**, and **BACKGROUND**. - - **Figure 3** Lifecycle state transition of a Page ability - - - ![](figures/图片1.png) - - - **OnStart\(\)** - - This callback is invoked when the system first creates the Page ability. After this callback is executed, the Page ability enters the **INACTIVE** state. This callback is triggered only once in the entire lifecycle of each Page ability. You must override this callback and set the default ability slice to be displayed. - - - **OnActive\(\)** - - This callback is invoked when the Page ability in the **INACTIVE** state enters the foreground. After this callback is executed, the Page ability enters the **ACTIVE** state, in which it becomes interactive. The Page ability will stay in this state unless it loses focus upon a certain event, for example, when the user touches the Back button or navigates to another Page ability. - - When such an event occurs, the Page ability returns to the **INACTIVE** state, and the system invokes the **OnInactive\(\)** callback. The Page ability may move to the **ACTIVE** state again, and the system will then invoke the **OnActive\(\)** callback again. You should implement both **OnActive\(\)** and **OnInactive\(\)** for a Page ability and use **OnActive\(\)** to obtain the resources released in **OnInactive\(\)**. - - - **OnInactive\(\)** - - This callback is invoked when the Page ability loses focus, and the Page ability then becomes **INACTIVE**. You can implement the behavior to perform after the Page ability loses focus. - - - **OnBackground\(\)** - - This callback is invoked based on the system resource status when the Page ability becomes invisible to the user. After this callback is executed, the Page ability enters the **BACKGROUND** state. You should release the resources that are no longer needed after the Page ability becomes invisible or perform time-consuming save operations in this callback. - - - **OnForeground\(\)** - - A Page ability in the **BACKGROUND** state still resides in memory. When the Page ability returns to the foreground \(for example, when the user navigates to this Page ability again\), the system first calls **OnForeground\(\)** to switch the Page ability to the **INACTIVE** state, and then calls **OnActive\(\)** to make it **ACTIVE**. You should use the **OnForeground\(\)** callback to reclaim the resources released in **OnBackground\(\)**. Currently, the **OnForeground\(\)** callback is unavailable to lite devices. - - - **OnStop\(\)** - - This callback is invoked when the system is destroying a Page ability due to one of the following possible causes: - - - The user explicitly closes the Page ability using a system management feature, for example, the task manager. - - The user behavior, for example, exiting an application, triggers the **TerminateAbility\(\)** function on the Page ability. - - The system needs to temporarily destroy the Page ability and re-create it due to configuration changes. - - The system automatically destroys a Page ability in the **BACKGROUND** state due to resource management purposes. - - -- **AbilityKit** is a development kit provided by the ability management framework. You can use this kit to develop applications based on the **Ability** component. There are two types of applications developed based on the **Ability** component: JS Ability developed using the JavaScript language and Native Ability developed using the C/C++ language. The JS application development framework encapsulates JavaScript UI components on the basis of the AbilityKit and is used to help you quickly develop JS Ability-based applications. -- **AbilityLoader** is used to register and load **Ability** classes. After creating an **Ability** class, you should first call the registration API defined in **AbilityLoader** to register the **Ability** class name with the ability management framework so that this **Ability** can be instantiated when being started. - -- **AbilityManager** enables inter-process communication \(IPC\) between the AbilityKit and the Ability Manager Service. - -- **EventHandler** is provided by the AbilityKit to enable inter-thread communication between abilities. - -- The **Ability Manager Service** is a system service used to coordinate the running relationships and lifecycle states of **Ability** instances. It consists of the following modules: - - - The service startup module starts and registers the Ability Manager Service. - - The service interface management module manages external capabilities provided by the Ability Manager Service. - - The process management module starts and destroys processes where **Ability** instances are running, and maintains the process information. - - The ability stack management module maintains the presentation sequence of abilities in the stack. - - The lifecycle scheduling module changes an ability to a particular state based on the current operation of the system. - - The connection management module manages connections to Service abilities. - -- **AppSpawn** is a system service used to create the process for running an ability. This service has high permissions. It sets permissions for **Ability** instances and pre-loads some common modules to accelerate application startup. - - -## Bundle Management Framework - -The bundle management framework is provided by OpenHarmony for you to manage application bundles. - -**Figure 4** Architecture of the bundle management framework -![](figures/architecture-of-the-bundle-management-framework.png "architecture-of-the-bundle-management-framework") - -- **BundleKit** includes external APIs provided by the Bundle Manager Service, including the APIs for application installation and uninstallation, bundle information query, and bundle state change listeners. -- The **bundle scanning sub-module** parses pre-installed or installed bundles on the local device and extracts information from them for the bundle management module to manage and make the information persistent for storage. -- The **bundle installation sub-module** installs, uninstalls, and updates a bundle. The **bundle installation service** is an independent process that communicates with the Bundle Manager Service through IPC. It is used to create or delete installation directories and has high permissions. - -- The **bundle management sub-module** manages information related to application bundles and stores persistent bundle information. - -- The **bundle security management sub-module** verifies signatures, and grants and manages permissions. - - -## Working Principles - -The Ability Manager Service and Bundle Manager Service are the core modules of the ability management framework and bundle management framework, respectively. The two system-level services are registered and discovered by using the system service framework SAMgr, and they are used by manage abilities and bundles for other processes. The Ability Manager Service and Bundle Manager Service are provided as open APIs in the AbilityKit and BundleKit. - -**Figure 5** Startup of the Ability Manager Service and Bundle Manager Service -![](figures/startup-of-the-ability-manager-service-and-bundle-manager-service.png "startup-of-the-ability-manager-service-and-bundle-manager-service") - -OpenHarmony applications can be installed and started after the two services are started. - -**Figure 6** Application startup process -![](figures/application-startup-process.png "application-startup-process") - -The home screen is the first OpenHarmony application started by the Ability Manager Service. After the home screen is started, the user can touch any installed OpenHarmony application on the home screen to start the particular application. The figure above shows the interaction process of starting an installed application from the home screen. - -As shown in the figure, the Ability Manager Service is responsible for displaying or hiding an ability, and the Bundle Manager Service is responsible for storing and querying ability information. - -## Limitations and Constraints - -- Language version - - - C++ 11 or later - - -- The specifications of the application framework vary depending on the System-on-a-Chip \(SoC\) and underlying OS capabilities. - - - Cortex-M RAM and ROM - - - RAM: greater than 20 KB \(recommended\) - - - ROM: greater than 300 KB \(for the JS application development framework and related subsystems, such as UIKit and engine\) - - - - Cortex-A RAM and ROM - - - RAM: greater than 2 MB \(recommended\) - - - ROM: greater than 2 MB \(for the JS application development framework and related subsystems, such as UIKit and engine\) - - - - diff --git a/en/device-dev/subsystems/overview-9.md b/en/device-dev/subsystems/overview-5.md similarity index 100% rename from en/device-dev/subsystems/overview-9.md rename to en/device-dev/subsystems/overview-5.md diff --git a/en/device-dev/subsystems/overview.md b/en/device-dev/subsystems/overview.md index af871180f30..dd3d44a6a41 100644 --- a/en/device-dev/subsystems/overview.md +++ b/en/device-dev/subsystems/overview.md @@ -90,7 +90,7 @@ It is considered good practice that you understand the following concepts before Similarly, you can create a surface, implement consumer logic for it, and transfer it to the **Camera** instance. For example, transmit video streams over the network or save captured frame data as an image file. - The graphics module also obtains stream resources from the camera module through surfaces. For details, see development guidelines on [Graphic](graphics-2.md). + The graphics module also obtains stream resources from the camera module through surfaces. For details, see development guidelines on [Graphic](graphics-1.md). - Camera running process 1. Creating a camera diff --git a/en/device-dev/subsystems/plug-in.md b/en/device-dev/subsystems/plug-in.md index 2a743f9dc69..70c27a3f371 100644 --- a/en/device-dev/subsystems/plug-in.md +++ b/en/device-dev/subsystems/plug-in.md @@ -117,6 +117,8 @@ Algorithm plug-in APIs including **Prepare**, **SyncProcess**, **AsyncProcess +For the data structure of **ConfigInfo**, **ClientInfo**, **AlgorithmInfo**, and **DataInfo**, see [Table 2](sdk.md#table22154317482) in the SDK development guidelines. + The **Request** and **Response** classes define the requests and responses used for communication between the AI engine server and algorithm plug-ins. A request encapsulates the request content and input data of the caller. The plug-in returns the calculation result to the AI engine server through a response. [Table 3](#table16273647125120) describes the attributes of the **Request** class. diff --git a/en/device-dev/subsystems/sdk.md b/en/device-dev/subsystems/sdk.md index 5cc0b855635..119cbc1e84f 100644 --- a/en/device-dev/subsystems/sdk.md +++ b/en/device-dev/subsystems/sdk.md @@ -126,8 +126,6 @@ The function of the SDK header file is implemented by mapping SDK API calls to c

long long clientVersion: Indicates client version number. This parameter is not used currently.

int clientId: Indicates the client ID.

int sessionId: Indicates the session ID.

-

uid_t serverUid: Indicates the server UID.

-

uid_t clientUid: Indicates the client UID.

int extendLen: Indicates the length of the extended information (extendMsg).

unsigned char *extendMsg: Indicates the body of the extended information.

diff --git a/en/device-dev/subsystems/security.md b/en/device-dev/subsystems/security.md index e69ec0072cf..adc524ff7a0 100644 --- a/en/device-dev/subsystems/security.md +++ b/en/device-dev/subsystems/security.md @@ -1,6 +1,6 @@ # Security -- **[Overview](overview-9.md)** +- **[Overview](overview-5.md)** - **[Development Guidelines on Application Signature Verification](development-guidelines-on-application-signature-verification.md)** @@ -8,6 +8,4 @@ - **[Development Guidelines on IPC Authentication](development-guidelines-on-ipc-authentication.md)** -- **[Development Guidelines on Trusted Device Group Management](development-guidelines-on-trusted-device-group-management.md)** - diff --git a/en/device-dev/subsystems/startup-10.md b/en/device-dev/subsystems/startup-6.md similarity index 100% rename from en/device-dev/subsystems/startup-10.md rename to en/device-dev/subsystems/startup-6.md diff --git a/en/device-dev/subsystems/startup.md b/en/device-dev/subsystems/startup.md index 5a2025350a8..7f8f4f3e5e9 100644 --- a/en/device-dev/subsystems/startup.md +++ b/en/device-dev/subsystems/startup.md @@ -1,6 +1,6 @@ # Startup -- **[Startup](startup-10.md)** +- **[Startup](startup-6.md)** - **[init Module](init-module.md)** diff --git a/en/device-dev/subsystems/xts.md b/en/device-dev/subsystems/xts.md index 24396f880e0..c4957d70f0e 100644 --- a/en/device-dev/subsystems/xts.md +++ b/en/device-dev/subsystems/xts.md @@ -456,6 +456,7 @@ The HCPPTest framework is enhanced and adapted based on the open-source framewor ] cflags = [ "-Wno-error" ] } + ``` 4. Add build options to the **BUILD.gn** file in the **acts** directory. diff --git a/en/readme.md b/en/readme.md index 6f5507767fb..ef5b8c15a23 100644 --- a/en/readme.md +++ b/en/readme.md @@ -1,77 +1,81 @@ -# WELCOME TO OPENHARMONY +# Overview + This project stores OpenHarmony documentation, including the quick start guide, development guides, and API reference. We appreciate your contribution to the OpenHarmony documentation. -## Motivation -Traditional OSs are limited to a specific type of device, while OpenHarmony provides distributed features that are compatible with a wide range of different devices. The first version supports devices with 128 KB to 128 MB of memory. Join us as we keep updating OpenHarmony versions. -For device developers, OpenHarmony utilizes a component-based design to tailor its features to better suit specific devices, based on each device's capabilities and service characteristics. OpenHarmony can run on devices with limited resources and wearables with hundreds of KB of memory, as well as more powerful devices, such as smart home cameras and dashcams with hundreds of MB of memory. - -[中文版本](../zh-cn/readme.md) - -## Device Development - Documentation Directory Structure -- [Overview](device-dev/quick-start/overview.md) -- [Getting Started](device-dev/quick-start/Readme-EN.md) -- [Source Code Acquisition/Tool Acquisition](device-dev/get-code/Readme-EN.md) -- [Kernel Usage Guidelines](device-dev/kernel/Readme-EN.md) -- [Driver Usage Guidelines](device-dev/driver/Readme-EN.md) -- [Subsystem Development Guidelines](device-dev/subsystems/Readme-EN.md) - - [Compilation and Building](device-dev/subsystems/compilation-and-building.md) - - [Distributed Remote Startup](device-dev/subsystems/distributed-remote-startup.md) - - [Graphics](device-dev/subsystems/graphics.md) - - [Multimedia](device-dev/subsystems/multimedia.md) - - [Utils](device-dev/subsystems/utils.md) - - [AI Framework](device-dev/subsystems/ai-framework.md) - - [Sensors](device-dev/subsystems/sensors.md) - - [Application Framework](device-dev/subsystems/application-framework.md) - - [OTA Upgrade](device-dev/subsystems/ota-upgrade.md) - - [Security](device-dev/subsystems/security.md) - - [Startup](device-dev/subsystems/startup.md) - - [Testing](device-dev/subsystems/testing.md) - - [DFX](device-dev/subsystems/dfx.md) - - [R&D Tools](device-dev/subsystems/r-d-tools.md) - - [X Test Suite](device-dev/subsystems/xts.md) -- [Bundle Development Guidelines](device-dev/bundles/Readme-EN.md) -- [Third-Party Library Porting Guide](device-dev/porting/Readme-EN.md) -- [Device Development Guidelines](device-dev/guide/Readme-EN.md) - - [WLAN-connected Products](device-dev/guide/wlan-connected-products.md) - - [Cameras Without a Screen](device-dev/guide/cameras-without-a-screen.md) - - [Cameras with a Screen](device-dev/guide/cameras-with-a-screen.md) - - [Visual Application Development](device-dev/guide/visual-application-development.md) - - [Development Example for Clock Apps](device-dev/guide/development-example-for-clock-apps.md) - - [Development Example for Platform Drivers](device-dev/guide/development-example-for-platform-drivers.md) - - [Development Example for Peripheral Drivers](device-dev/guide/development-example-for-peripheral-drivers.md) -- [Privacy and Security](device-dev/security/Readme-EN.md) -- [Glossary](device-dev/glossary/glossary.md) - -# Application Development - Documentation Directory Structure - -- [Getting Started](application-dev/quick-start/getting-started.md) -- [UI](application-dev/ui/Readme-EN.md) -- [Media](application-dev/media/Readme-EN.md) -- [Connectivity](application-dev/connectivity/Readme-EN.md) -- [JS Reference](application-dev/js-reference/Readme-EN.md) - -## Start Contributing - -OpenHarmony is an open-source community and encourages everyone in the community to submit patches directly to the project. You can contribute either to the code or documentation. -- [Contributing to the Code](contribute/contributing-code.md) -- [Contributing to the Documentation](contribute/documentation-contribution.md) - -For more details on how to contribute, see [Contributing Documents](contribute). -## Get Source Code and Tools -To download the source code and tools required for the project, click the following links: -- [Source Code Acquisition](device-dev/get-code/source-code-acquisition.md) -- [Tool Acquisition](device-dev/get-code/tool-acquisition.md) - -## Where to Turn for Help -You can subscribe to the mailing list to get constant updates on new features, released road maps, and community activities. For how to subscribe to the mailing list or get any other support, see [Communication in Community](https://gitee.com/openharmony/docs/tree/master/contribute/communication-in-community.md). - -## Code of Conduct -OpenHarmony is committed to providing a welcoming and inspiring community for all. In order to maintain a collaborative environment, we recommend you read and follow the community [Code of Conduct](https://gitee.com/openharmony/docs/blob/master/contribute/code-of-conduct.md). - -## Contributors & Acknowledgements -A great open-source project wouldn't be possible without the hard work of many contributors. We'd like to invite anyone from around the world to participate in this exciting journey, and we're grateful for your time, passion, and efforts! - -## Release -In order to provide new features and bug fixes, the community constantly updates code and provides new releases. - -See [OpenHarmony Release Notes](release-notes/OpenHarmony-Release-Notes.md). \ No newline at end of file +## Contents + +- [OpenHarmony Overview](OpenHarmony-Overview.md) +- Mini and Small System Development Guidelines \(Reference Memory < 128 MB\) + - Device development + - **overview**: [device development overview](device-dev/overview.md) + - **quick-start**: [quick start guide](device-dev/quick-start/Readme-EN.md) \(covering environment setup, source code acquisition, build, and burning\) + - Basic development capabilities + - **Kernel**: [lite kernel](device-dev/kernel/kernel-for-mini-and-small-systems.md) + - **Drivers**: [drivers](device-dev/driver/Readme-EN.md) + - **Subsystems**: [subsystems](device-dev/subsystems/Readme-EN.md) \(such as compilation and building, graphics, DFX, and XTS\) + - **Security**: [privacy and security](device-dev/security/Readme-EN.md) + + - **guide**: [guidelines](device-dev/guide/Readme-EN.md) + - [WLAN-connected products](device-dev/guide/wlan-connected-products.md) \(LED peripheral control and third-party SDK integration\) + - [Screenless cameras](device-dev/guide/cameras-without-a-screen.md) \(camera control\) + - [Cameras with a screen](device-dev/guide/cameras-with-a-screen.md) \(screen and camera control, visual application development\) + + - **porting**: [porting adaptation](device-dev/porting/Readme-EN.md) + - [Third-Party SoC Porting Guide](device-dev/porting/third-party-soc-porting-guide.md) + - [Third-Party Library Porting Guide](device-dev/porting/third-party-library-porting-guide.md) + + - **bundles**: [bundle development](device-dev/bundles/Readme-EN.md) + - [Development Specifications](device-dev/bundles/development-specifications.md) + - [Development Guidelines](device-dev/bundles/development-guidelines.md) + - [HPM User Guide](device-dev/bundles/hpm-user-guide.md) + +- Standard System Development Guidelines \(Reference Memory ≥ 128 MB\) + - Device development + - **overview**: [device development overview](device-dev/overview.md) + - **quick-start**: [quick start guide](device-dev/quick-start/Readme-EN.md) \(covering environment setup, source code acquisition, build, and burning\) + - Basic development capabilities + - **Kernel**: [Linux kernel](device-dev/kernel/Readme-EN.md) + - **Drivers**: [drivers](device-dev/driver/Readme-EN.md) + - **Subsystems**: [subsystems](device-dev/subsystems/Readme-EN.md) \(such as compilation and building, graphics, DFX, and XTS\) + - **Security**: [privacy and security](device-dev/security/Readme-EN.md) + + - **guide**: [guidelines](device-dev/guide/Readme-EN.md) + - [Clock apps](device-dev/guide/development-example-for-clock-apps.md) + - [Platform drivers](device-dev/guide/development-example-for-platform-drivers.md) + - [Peripheral drivers](device-dev/guide/development-example-for-peripheral-drivers.md) + + - **porting**: [porting adaptation](device-dev/porting/Readme-EN.md) + - [Third-Party SoC Porting Guide](device-dev/porting/third-party-soc-porting-guide.md) + - [Third-Party Library Porting Guide](device-dev/porting/third-party-library-porting-guide.md) + + - **bundles**: [bundle development](device-dev/bundles/Readme-EN.md) + - [Development Specifications](device-dev/bundles/development-specifications.md) + - [Development Guidelines](device-dev/bundles/development-guidelines.md) + - [HPM User Guide](device-dev/bundles/hpm-user-guide.md) + + +- App development + - **Overview**: [app development overview](application-dev/application-dev-guide.md) + - **quick-start**: [quick start guide](application-dev/quick-start/Readme-EN.md) + - **ui**: [UI](application-dev/ui/Readme-EN.md) + - **media**: [media](application-dev/media/Readme-EN.md) + - **connectivity**: [networks and connectivity](application-dev/connectivity/Readme-EN.md) + - **js-reference**: [JS reference](application-dev/js-reference/Readme-EN.md) +- **glossary**: [glossary](device-dev/glossary/glossary.md) + +## Version Change History + +For details, see [Release Notes](release-notes/OpenHarmony-Release-Notes.md). + +## Third-Party Open-Source Software and License Notice + +None. + +## How to Contribute + +A great open-source project wouldn't be possible without the hard work of many contributors. We'd like to invite anyone from around the world to [participate](contribute/contribution.md) in this exciting journey, and we're grateful for your time, passion, and efforts! + +You can evaluate available documents, make simple modifications, provide feedback on document quality, and contribute your original content. For details, see [Documentation Contribution](contribute/documentation-contribution.md). + +Excellent contributors will be awarded and the contributions will be publicized in the developer community. + diff --git a/zh-cn/device-dev/driver/GPIO.md b/zh-cn/device-dev/driver/GPIO.md index afffef57ab6..a5ce55f5d68 100755 --- a/zh-cn/device-dev/driver/GPIO.md +++ b/zh-cn/device-dev/driver/GPIO.md @@ -1,9 +1,560 @@ -# GPIO +# GPIO -- **[GPIO概述](GPIO概述.md)** +- [概述](#section1635911016188) + - [接口说明](#section17715915181611) -- **[GPIO使用指导](GPIO使用指导.md)** +- [使用指导](#section259614242196) + - [使用流程](#section103477714216) + - [确定GPIO管脚号](#section370083272117) + - [使用API操作GPIO管脚](#section13604050132118) -- **[GPIO使用实例](GPIO使用实例.md)** +- [使用实例](#section25941262111) +## 概述 + +GPIO(General-purpose input/output)即通用型输入输出。通常,GPIO控制器通过分组的方式管理所有GPIO管脚,每组GPIO有一个或多个寄存器与之关联,通过读写寄存器完成对GPIO管脚的操作。 + +GPIO接口定义了操作GPIO管脚的标准方法集合,包括: + +- 设置管脚方向: 方向可以是输入或者输出\(暂不支持高阻态\) + +- 读写管脚电平值: 电平值可以是低电平或高电平 +- 设置管脚中断服务函数:设置一个管脚的中断响应函数,以及中断触发方式 +- 使能和禁止管脚中断:禁止或使能管脚中断 + +### 接口说明 + +**表 1** GPIO驱动API接口功能介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

描述

+

GPIO读写

+

GpioRead

+

读管脚电平值

+

GpioWrite

+

写管脚电平值

+

GPIO配置

+

GpioSetDir

+

设置管脚方向

+

GpioGetDir

+

获取管脚方向

+

GPIO中断设置

+

GpioSetIrq

+

设置管脚对应的中断服务函数

+

GpioUnSetIrq

+

取消管脚对应的中断服务函数

+

GpioEnableIrq

+

使能管脚中断

+

GpioDisableIrq

+

禁止管脚中断

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 + +## 使用指导 + +### 使用流程 + +GPIO标准API通过GPIO管脚号来操作指定管脚,使用GPIO的一般流程如[图1](#fig1399416053717)所示。 + +**图 1** GPIO使用流程图 + + +![](figures/zh-cn_image_0000001170187071.png) + +### 确定GPIO管脚号 + +不同SOC芯片由于其GPIO控制器型号、参数、以及控制器驱动的不同,GPIO管脚号的换算方式不一样。 + +- Hi3516DV300 + + 控制器管理12组GPIO管脚,每组8个。 + + GPIO号 = GPIO组索引 \(0\~11\) \* 每组GPIO管脚数\(8\) + 组内偏移 + + 举例:GPIO10\_3的GPIO号 = 10 \* 8 + 3 = 83 + +- Hi3518EV300 + + 控制器管理10组GPIO管脚,每组10个。 + + GPIO号 = GPIO组索引 \(0\~9\) \* 每组GPIO管脚数\(10\) + 组内偏移 + + 举例:GPIO7\_3的GPIO管脚号 = 7 \* 10 + 3 = 73 + + +### 使用API操作GPIO管脚 + +- 设置GPIO管脚方向 + + 在进行GPIO管脚读写前,需要先通过如下函数设置GPIO管脚方向: + + int32\_t GpioSetDir\(uint16\_t gpio, uint16\_t dir\); + + **表 2** GpioSetDir参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

gpio

+

待设置的GPIO管脚号

+

dir

+

待设置的方向值

+

返回值

+

返回值描述

+

0

+

设置成功

+

负数

+

设置失败

+
+ + +- 读写GPIO管脚 + + 如果要读取一个GPIO管脚电平,通过以下函数完成: + + int32\_t GpioRead\(uint16\_t gpio, uint16\_t \*val\); + + **表 3** GpioRead参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

gpio

+

待读取的GPIO管脚号

+

val

+

接收读取电平值的指针

+

返回值

+

返回值描述

+

0

+

读取成功

+

负数

+

读取失败

+
+ + 如果要向GPIO管脚写入电平值,通过以下函数完成: + + int32\_t GpioWrite\(uint16\_t gpio, uint16\_t val\); + + **表 4** GpioWrite参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

gpio

+

待写入的GPIO管脚号

+

val

+

待写入的电平值

+

返回值

+

返回值描述

+

0

+

写入成功

+

负数

+

写入失败

+
+ + 示例代码: + + ``` + int32_t ret; + uint16_t val; + /* 将3号GPIO管脚配置为输出 */ + ret = GpioSetDir(3, GPIO_DIR_OUT); + if (ret != 0) { + HDF_LOGE("GpioSerDir: failed, ret %d\n", ret); + return; + } + /* 向3号GPIO管脚写入低电平GPIO_VAL_LOW */ + ret = GpioWrite(3, GPIO_VAL_LOW); + if (ret != 0) { + HDF_LOGE("GpioWrite: failed, ret %d\n", ret); + return; + } + /* 将6号GPIO管脚配置为输入 */ + ret = GpioSetDir(6, GPIO_DIR_IN); + if (ret != 0) { + HDF_LOGE("GpioSetDir: failed, ret %d\n", ret); + return; + } + /* 读取6号GPIO管脚的电平值 */ + ret = GpioRead(6, &val); + ``` + + +- 设置GPIO中断 + + 如果要为一个GPIO管脚设置中断响应程序,使用如下函数: + + int32\_t GpioSetIrq\(uint16\_t gpio, uint16\_t mode, GpioIrqFunc func, void \*arg\); + + **表 5** GpioSetIrq参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

gpio

+

GPIO管脚号

+

mode

+

中断触发模式

+

func

+

中断服务程序

+

arg

+

传递给中断服务程序的入参

+

返回值

+

返回值描述

+

0

+

设置成功

+

负数

+

设置失败

+
+ + >![](public_sys-resources/icon-caution.gif) **注意:** + >同一时间,只能为某个GPIO管脚设置一个中断服务函数,如果重复调用GpioSetIrq函数,则之前设置的中断服务函数会被取代。 + + 当不再需要响应中断服务函数时,使用如下函数取消中断设置: + + int32\_t GpioUnSetIrq\(uint16\_t gpio\); + + **表 6** GpioUnSetIrq参数和返回值描述 + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

gpio

+

GPIO管脚号

+

返回值

+

返回值描述

+

0

+

取消成功

+

负数

+

取消失败

+
+ + 在中断服务程序设置完成后,还需要先通过如下函数使能GPIO管脚的中断: + + int32\_t GpioEnableIrq\(uint16\_t gpio\); + + **表 7** GpioEnableIrq参数和返回值描述 + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

gpio

+

GPIO管脚号

+

返回值

+

返回值描述

+

0

+

使能成功

+

负数

+

使能失败

+
+ + >![](public_sys-resources/icon-caution.gif) **注意:** + >必须通过此函数使能管脚中断,之前设置的中断服务函数才能被正确响应。 + + 如果要临时屏蔽此中断,可以通过如下函数禁止GPIO管脚中断: + + int32\_t GpioDisableIrq\(uint16\_t gpio\); + + **表 8** GpioDisableIrq参数和返回值描述 + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

gpio

+

GPIO管脚号

+

返回值

+

返回值描述

+

0

+

禁止成功

+

负数

+

禁止失败

+
+ + 示例代码: + + ``` + /* 中断服务函数 + */ + int32_t MyCallBackFunc(uint16_t gpio, void *data) + { + HDF_LOGI("%s: gpio:%u interrupt service in! data=%p\n", __func__, gpio, data); + return 0; + } + + int32_t ret; + /* 设置中断服务程序为MyCallBackFunc,入参为NULL,中断触发模式为上升沿触发 */ + ret = GpioSetIrq(3, OSAL_IRQF_TRIGGER_RISING, MyCallBackFunc, NULL); + if (ret != 0) { + HDF_LOGE("GpioSetIrq: failed, ret %d\n", ret); + return; + } + + /* 使能3号GPIO管脚中断 */ + ret = GpioEnableIrq(3); + if (ret != 0) { + HDF_LOGE("GpioEnableIrq: failed, ret %d\n", ret); + return; + } + + /* 禁止3号GPIO管脚中断 */ + ret = GpioDisableIrq(3); + if (ret != 0) { + HDF_LOGE("GpioDisableIrq: failed, ret %d\n", ret); + return; + } + + /* 取消3号GPIO管脚中断服务程序 */ + ret = GpioUnSetIrq(3); + if (ret != 0) { + HDF_LOGE("GpioUnSetIrq: failed, ret %d\n", ret); + return; + } + ``` + + +## 使用实例 + +本实例程序中,我们将测试一个GPIO管脚的中断触发:为管脚设置中断服务函数,触发方式为边沿触发,然后通过交替写高低电平到管脚,产生电平波动,制造触发条件,观察中断服务函数的执行。 + +首先需要选取一个空闲的GPIO管脚,本例程基于Hi3516DV300某开发板,GPIO管脚选择GPIO10\_3,换算成GPIO号为83。 + +读者可以根据自己使用的开发板,参考其原理图,选择一个空闲的GPIO管脚即可。 + +``` +#include "gpio_if.h" +#include "hdf_log.h" +#include "osal_irq.h" +#include "osal_time.h" + +static uint32_t g_irqCnt; + +/* 中断服务函数*/ +static int32_t TestCaseGpioIrqHandler(uint16_t gpio, void *data) +{ + HDF_LOGE("%s: irq triggered! on gpio:%u, data=%p", __func__, gpio, data); + g_irqCnt++; /* 如果中断服务函数触发执行,则将全局中断计数加1 */ + return GpioDisableIrq(gpio); +} + +/* 测试用例函数 */ +static int32_t TestCaseGpioIrqEdge(void) +{ + int32_t ret; + uint16_t valRead; + uint16_t mode; + uint16_t gpio = 83; /* 待测试的GPIO管脚号 */ + uint32_t timeout; + + /* 将管脚方向设置为输出 */ + ret = GpioSetDir(gpio, GPIO_DIR_OUT); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set dir fail! ret:%d\n", __func__, ret); + return ret; + } + + /* 先禁止该管脚中断 */ + ret = GpioDisableIrq(gpio); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: disable irq fail! ret:%d\n", __func__, ret); + return ret; + } + + /* 为管脚设置中断服务函数,触发模式为上升沿和下降沿共同触发 */ + mode = OSAL_IRQF_TRIGGER_RISING | OSAL_IRQF_TRIGGER_FALLING; + HDF_LOGE("%s: mode:%0x\n", __func__, mode); + ret = GpioSetIrq(gpio, mode, TestCaseGpioIrqHandler, NULL); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set irq fail! ret:%d\n", __func__, ret); + return ret; + } + + /* 使能此管脚中断 */ + ret = GpioEnableIrq(gpio); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: enable irq fail! ret:%d\n", __func__, ret); + (void)GpioUnSetIrq(gpio); + return ret; + } + + g_irqCnt = 0; /* 清除全局计数器 */ + timeout = 0; /* 等待时间清零 */ + /* 等待此管脚中断服务函数触发,等待超时时间为1000毫秒 */ + while (g_irqCnt <= 0 && timeout < 1000) { + (void)GpioRead(gpio, &valRead); + (void)GpioWrite(gpio, (valRead == GPIO_VAL_LOW) ? GPIO_VAL_HIGH : GPIO_VAL_LOW); + HDF_LOGE("%s: wait irq timeout:%u\n", __func__, timeout); + OsalMDelay(200); /* wait for irq trigger */ + timeout += 200; + } + (void)GpioUnSetIrq(gpio); + return (g_irqCnt > 0) ? HDF_SUCCESS : HDF_FAILURE; +} +``` diff --git "a/zh-cn/device-dev/driver/GPIO\344\275\277\347\224\250\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/GPIO\344\275\277\347\224\250\345\256\236\344\276\213.md" deleted file mode 100755 index 86231b7af28..00000000000 --- "a/zh-cn/device-dev/driver/GPIO\344\275\277\347\224\250\345\256\236\344\276\213.md" +++ /dev/null @@ -1,79 +0,0 @@ -# GPIO使用实例 - -本实例程序中,我们将测试一个GPIO管脚的中断触发:为管脚设置中断服务函数,触发方式为边沿触发,然后通过交替写高低电平到管脚,产生电平波动,制造触发条件,观察中断服务函数的执行。 - -首先需要选取一个空闲的GPIO管脚,本例程基于Hi3516DV300某开发板,GPIO管脚选择GPIO10\_3,换算成GPIO号为83。 - -读者可以根据自己使用的开发板,参考其原理图,选择一个空闲的GPIO管脚即可。 - -``` -#include "gpio_if.h" -#include "hdf_log.h" -#include "osal_irq.h" -#include "osal_time.h" - -static uint32_t g_irqCnt; - -/* 中断服务函数*/ -static int32_t TestCaseGpioIrqHandler(uint16_t gpio, void *data) -{ - HDF_LOGE("%s: irq triggered! on gpio:%u, data=%p", __func__, gpio, data); - g_irqCnt++; /* 如果中断服务函数触发执行,则将全局中断计数加1 */ - return GpioDisableIrq(gpio); -} - -/* 测试用例函数 */ -static int32_t TestCaseGpioIrqEdge(void) -{ - int32_t ret; - uint16_t valRead; - uint16_t mode; - uint16_t gpio = 83; /* 待测试的GPIO管脚号 */ - uint32_t timeout; - - /* 将管脚方向设置为输出 */ - ret = GpioSetDir(gpio, GPIO_DIR_OUT); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set dir fail! ret:%d\n", __func__, ret); - return ret; - } - - /* 先禁止该管脚中断 */ - ret = GpioDisableIrq(gpio); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: disable irq fail! ret:%d\n", __func__, ret); - return ret; - } - - /* 为管脚设置中断服务函数,触发模式为上升沿和下降沿共同触发 */ - mode = OSAL_IRQF_TRIGGER_RISING | OSAL_IRQF_TRIGGER_FALLING; - HDF_LOGE("%s: mode:%0x\n", __func__, mode); - ret = GpioSetIrq(gpio, mode, TestCaseGpioIrqHandler, NULL); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set irq fail! ret:%d\n", __func__, ret); - return ret; - } - - /* 使能此管脚中断 */ - ret = GpioEnableIrq(gpio); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: enable irq fail! ret:%d\n", __func__, ret); - (void)GpioUnSetIrq(gpio); - return ret; - } - - g_irqCnt = 0; /* 清除全局计数器 */ - timeout = 0; /* 等待时间清零 */ - /* 等待此管脚中断服务函数触发,等待超时时间为1000毫秒 */ - while (g_irqCnt <= 0 && timeout < 1000) { - (void)GpioRead(gpio, &valRead); - (void)GpioWrite(gpio, (valRead == GPIO_VAL_LOW) ? GPIO_VAL_HIGH : GPIO_VAL_LOW); - HDF_LOGE("%s: wait irq timeout:%u\n", __func__, timeout); - OsalMDelay(200); /* wait for irq trigger */ - timeout += 200; - } - (void)GpioUnSetIrq(gpio); - return (g_irqCnt > 0) ? HDF_SUCCESS : HDF_FAILURE; -} -``` - diff --git "a/zh-cn/device-dev/driver/GPIO\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/GPIO\344\275\277\347\224\250\346\214\207\345\257\274.md" deleted file mode 100755 index 1bc136ee211..00000000000 --- "a/zh-cn/device-dev/driver/GPIO\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ /dev/null @@ -1,395 +0,0 @@ -# GPIO使用指导 - -- [使用流程](#section1583613406410) -- [确定GPIO管脚号](#section135943361443) -- [使用API操作GPIO管脚](#section69151114115315) - -## 使用流程 - -GPIO标准API通过GPIO管脚号来操作指定管脚,使用GPIO的一般流程如[图1](#fig1399416053717)所示。 - -**图 1** GPIO使用流程图 - - -![](figures/zh-cn_image_0000001057342245.png) - -## 确定GPIO管脚号 - -不同SOC芯片由于其GPIO控制器型号、参数、以及控制器驱动的不同,GPIO管脚号的换算方式不一样。 - -- Hi3516DV300 - - 控制器管理12组GPIO管脚,每组8个。 - - GPIO号 = GPIO组索引 \(0\~11\) \* 每组GPIO管脚数\(8\) + 组内偏移 - - 举例:GPIO10\_3的GPIO号 = 10 \* 8 + 3 = 83 - -- Hi3518EV300 - - 控制器管理10组GPIO管脚,每组10个。 - - GPIO号 = GPIO组索引 \(0\~9\) \* 每组GPIO管脚数\(10\) + 组内偏移 - - 举例:GPIO7\_3的GPIO管脚号 = 7 \* 10 + 3 = 73 - - -## 使用API操作GPIO管脚 - -- 设置GPIO管脚方向 - - 在进行GPIO管脚读写前,需要先通过如下函数设置GPIO管脚方向: - - int32\_t GpioSetDir\(uint16\_t gpio, uint16\_t dir\); - - **表 1** GpioSetDir参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

gpio

-

待设置的GPIO管脚号

-

dir

-

待设置的方向值

-

返回值

-

返回值描述

-

0

-

设置成功

-

负数

-

设置失败

-
- -- 读写GPIO管脚 - - 如果要读取一个GPIO管脚电平,通过以下函数完成: - - int32\_t GpioRead\(uint16\_t gpio, uint16\_t \*val\); - - **表 2** GpioRead参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

gpio

-

待读取的GPIO管脚号

-

val

-

接收读取电平值的指针

-

返回值

-

返回值描述

-

0

-

读取成功

-

负数

-

读取失败

-
- - 如果要向GPIO管脚写入电平值,通过以下函数完成: - - int32\_t GpioWrite\(uint16\_t gpio, uint16\_t val\); - - **表 3** GpioWrite参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

gpio

-

待写入的GPIO管脚号

-

val

-

待写入的电平值

-

返回值

-

返回值描述

-

0

-

写入成功

-

负数

-

写入失败

-
- - 示例代码: - - ``` - int32_t ret; - uint16_t val; - /* 将3号GPIO管脚配置为输出 */ - ret = GpioSetDir(3, GPIO_DIR_OUT); - if (ret != 0) { - HDF_LOGE("GpioSerDir: failed, ret %d\n", ret); - return; - } - /* 向3号GPIO管脚写入低电平GPIO_VAL_LOW */ - ret = GpioWrite(3, GPIO_VAL_LOW); - if (ret != 0) { - HDF_LOGE("GpioWrite: failed, ret %d\n", ret); - return; - } - /* 将6号GPIO管脚配置为输入 */ - ret = GpioSetDir(6, GPIO_DIR_IN); - if (ret != 0) { - HDF_LOGE("GpioSetDir: failed, ret %d\n", ret); - return; - } - /* 读取6号GPIO管脚的电平值 */ - ret = GpioRead(6, &val); - ``` - - -- 设置GPIO中断 - - 如果要为一个GPIO管脚设置中断响应程序,使用如下函数: - - int32\_t GpioSetIrq\(uint16\_t gpio, uint16\_t mode, GpioIrqFunc func, void \*arg\); - - **表 4** GpioSetIrq参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

gpio

-

GPIO管脚号

-

mode

-

中断触发模式

-

func

-

中断服务程序

-

arg

-

传递给中断服务程序的入参

-

返回值

-

返回值描述

-

0

-

设置成功

-

负数

-

设置失败

-
- - >![](public_sys-resources/icon-caution.gif) **注意:** - >同一时间,只能为某个GPIO管脚设置一个中断服务函数,如果重复调用GpioSetIrq函数,则之前设置的中断服务函数会被取代。 - - 当不再需要响应中断服务函数时,使用如下函数取消中断设置: - - int32\_t GpioUnSetIrq\(uint16\_t gpio\); - - **表 5** GpioUnSetIrq参数和返回值描述 - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

gpio

-

GPIO管脚号

-

返回值

-

返回值描述

-

0

-

取消成功

-

负数

-

取消失败

-
- - 在中断服务程序设置完成后,还需要先通过如下函数使能GPIO管脚的中断: - - int32\_t GpioEnableIrq\(uint16\_t gpio\); - - **表 6** GpioEnableIrq参数和返回值描述 - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

gpio

-

GPIO管脚号

-

返回值

-

返回值描述

-

0

-

使能成功

-

负数

-

使能失败

-
- - >![](public_sys-resources/icon-caution.gif) **注意:** - >必须通过此函数使能管脚中断,之前设置的中断服务函数才能被正确响应。 - - 如果要临时屏蔽此中断,可以通过如下函数禁止GPIO管脚中断: - - int32\_t GpioDisableIrq\(uint16\_t gpio\); - - **表 7** GpioDisableIrq参数和返回值描述 - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

gpio

-

GPIO管脚号

-

返回值

-

返回值描述

-

0

-

禁止成功

-

负数

-

禁止失败

-
- - 示例代码: - - ``` - /* 中断服务函数 - */ - int32_t MyCallBackFunc(uint16_t gpio, void *data) - { - HDF_LOGI("%s: gpio:%u interrupt service in! data=%p\n", __func__, gpio, data); - return 0; - } - - int32_t ret; - /* 设置中断服务程序为MyCallBackFunc,入参为NULL,中断触发模式为上升沿触发 */ - ret = GpioSetIrq(3, OSAL_IRQF_TRIGGER_RISING, MyCallBackFunc, NULL); - if (ret != 0) { - HDF_LOGE("GpioSetIrq: failed, ret %d\n", ret); - return; - } - - /* 使能3号GPIO管脚中断 */ - ret = GpioEnableIrq(3); - if (ret != 0) { - HDF_LOGE("GpioEnableIrq: failed, ret %d\n", ret); - return; - } - - /* 禁止3号GPIO管脚中断 */ - ret = GpioDisableIrq(3); - if (ret != 0) { - HDF_LOGE("GpioDisableIrq: failed, ret %d\n", ret); - return; - } - - /* 取消3号GPIO管脚中断服务程序 */ - ret = GpioUnSetIrq(3); - if (ret != 0) { - HDF_LOGE("GpioUnSetIrq: failed, ret %d\n", ret); - return; - } - ``` - - diff --git "a/zh-cn/device-dev/driver/GPIO\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/GPIO\346\246\202\350\277\260.md" deleted file mode 100755 index 1c4bcfc9c06..00000000000 --- "a/zh-cn/device-dev/driver/GPIO\346\246\202\350\277\260.md" +++ /dev/null @@ -1,82 +0,0 @@ -# GPIO概述 - -- [简介](#section15318165672215) -- [接口说明](#section18977142162418) - -## 简介 - -GPIO(General-purpose input/output)即通用型输入输出。通常,GPIO控制器通过分组的方式管理所有GPIO管脚,每组GPIO有一个或多个寄存器与之关联,通过读写寄存器完成对GPIO管脚的操作。 - -GPIO接口定义了操作GPIO管脚的标准方法集合,包括: - -- 设置管脚方向: 方向可以是输入或者输出\(暂不支持高阻态\) - -- 读写管脚电平值: 电平值可以是低电平或高电平 -- 设置管脚中断服务函数:设置一个管脚的中断响应函数,以及中断触发方式 -- 使能和禁止管脚中断:禁止或使能管脚中断 - -## 接口说明 - -**表 1** GPIO驱动API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

描述

-

GPIO读写

-

GpioRead

-

读管脚电平值

-

GpioWrite

-

写管脚电平值

-

GPIO配置

-

GpioSetDir

-

设置管脚方向

-

GpioGetDir

-

获取管脚方向

-

GPIO中断设置

-

GpioSetIrq

-

设置管脚对应的中断服务函数

-

GpioUnSetIrq

-

取消管脚对应的中断服务函数

-

GpioEnableIrq

-

使能管脚中断

-

GpioDisableIrq

-

禁止管脚中断

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 - diff --git a/zh-cn/device-dev/driver/I2C.md b/zh-cn/device-dev/driver/I2C.md index 5bc8c5bf3ce..6655c1e6f2e 100755 --- a/zh-cn/device-dev/driver/I2C.md +++ b/zh-cn/device-dev/driver/I2C.md @@ -1,9 +1,426 @@ -# I2C +# I2C -- **[I2C概述](I2C概述.md)** +- [概述](#section5361140416) + - [接口说明](#section459052019177) -- **[I2C使用指导](I2C使用指导.md)** +- [使用指导](#section1695201514281) + - [使用流程](#section1338373417288) + - [打开I2C控制器](#section13751110132914) + - [进行I2C通信](#section9202183372916) + - [关闭I2C控制器](#section19481164133018) -- **[I2C使用实例](I2C使用实例.md)** +- [使用实例](#section5302202015300) +## 概述 + +- I2C\(Inter Integrated Circuit\)总线是由Philips公司开发的一种简单、双向二线制同步串行总线。 +- I2C以主从方式工作,通常有一个主设备和一个或者多个从设备,主从设备通过SDA\(SerialData\)串行数据线以及SCL\(SerialClock\)串行时钟线两根线相连,如[图1 ](#fig1135561232714)所示。 + +- I2C数据的传输必须以一个起始信号作为开始条件,以一个结束信号作为传输的停止条件。数据传输以字节为单位,高位在前,逐个bit进行传输。 +- I2C总线上的每一个设备都可以作为主设备或者从设备,而且每一个设备都会对应一个唯一的地址,当主设备需要和某一个从设备通信时,通过广播的方式,将从设备地址写到总线上,如果某个从设备符合此地址,将会发出应答信号,建立传输。 + +- I2C接口定义了完成I2C传输的通用方法集合,包括: + + - I2C控制器管理: 打开或关闭I2C控制器 + - I2C消息传输:通过消息传输结构体数组进行自定义传输 + + **图 1** I2C物理连线示意图 + ![](figures/I2C物理连线示意图.png "I2C物理连线示意图") + + +### 接口说明 + +**表 1** I2C驱动API接口功能介绍 + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

描述

+

I2C控制器管理接口

+

I2cOpen

+

打开I2C控制器

+

I2cClose

+

关闭I2C控制器

+

I2c消息传输接口

+

I2cTransfer

+

自定义传输

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 + +## 使用指导 + +### 使用流程 + +使用I2C设备的一般流程如[图2](#fig166181128151112)所示。 + +**图 2** I2C设备使用流程图 + + +![](figures/zh-cn_image_0000001123509750.png) + +### 打开I2C控制器 + +在进行I2C通信前,首先要调用I2cOpen打开I2C控制器。 + +DevHandle I2cOpen\(int16\_t number\); + +**表 2** I2cOpen参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

number

+

I2C控制器号

+

返回值

+

返回值描述

+

NULL

+

打开I2C控制器失败

+

设备句柄

+

打开的I2C控制器设备句柄

+
+ +假设系统中存在8个I2C控制器,编号从0到7,那么我们现在获取3号控制器 + +``` +DevHandle i2cHandle = NULL; /* I2C控制器句柄 / + +/* 打开I2C控制器 */ +i2cHandle = I2cOpen(3); +if (i2cHandle == NULL) { + HDF_LOGE("I2cOpen: failed\n"); + return; +} +``` + +### 进行I2C通信 + +消息传输 + +int32\_t I2cTransfer\(DevHandle handle, struct I2cMsg \*msgs, int16\_t count\); + +**表 3** I2cTransfer参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

I2C控制器设备句柄

+

msgs

+

待传输数据的消息结构体数组

+

count

+

消息数组长度

+

返回值

+

返回值描述

+

正整数

+

成功传输的消息结构体数目

+

负数

+

执行失败

+
+ +I2C传输消息类型为I2cMsg,每个传输消息结构体表示一次读或写,通过一个消息数组,可以执行若干次的读写组合操作。 + +``` +int32_t ret; +uint8_t wbuff[2] = { 0x12, 0x13 }; +uint8_t rbuff[2] = { 0 }; +struct I2cMsg msgs[2]; /* 自定义传输的消息结构体数组 */ +msgs[0].buf = wbuff; /* 写入的数据 */ +msgs[0].len = 2; /* 写入数据长度为2 */ +msgs[0].addr = 0x5A; /* 写入设备地址为0x5A */ +msgs[0].flags = 0; /* 传输标记为0,默认为写 */ +msgs[1].buf = rbuff; /* 要读取的数据 */ +msgs[1].len = 2; /* 读取数据长度为2 */ +msgs[1].addr = 0x5A; /* 读取设备地址为0x5A */ +msgs[1].flags = I2C_FLAG_READ /* I2C_FLAG_READ置位 */ +/* 进行一次自定义传输,传输的消息个数为2 */ +ret = I2cTransfer(i2cHandle, msgs, 2); +if (ret != 2) { + HDF_LOGE("I2cTransfer: failed, ret %d\n", ret); + return; +} +``` + +>![](public_sys-resources/icon-caution.gif) **注意:** +>- I2cMsg结构体中的设备地址不包含读写标志位,读写信息由flags成员变量的读写控制位传递。 +>- 本函数不对消息结构体个数count做限制,其最大个数度由具体I2C控制器决定。 +>- 本函数也不对每个消息结构体中的数据长度做限制,同样由具体I2C控制器决定。 +>- 本函数可能会引起系统休眠,不允许在中断上下文调用 + +### 关闭I2C控制器 + +I2C通信完成之后,需要关闭I2C控制器,关闭函数如下所示: + +void I2cClose\(DevHandle handle\); + +**表 4** I2cClose参数和返回值描述 + + + + + + + + + + +

参数

+

参数描述

+

handle

+

I2C控制器设备句柄

+
+ +``` +I2cClose(i2cHandle); /* 关闭I2C控制器 */ +``` + +## 使用实例 + +本例程以操作开发板上的I2C设备为例,详细展示I2C接口的完整使用流程。 + +本例拟对Hi3516DV300某开发板上TouchPad设备进行简单的寄存器读写访问,基本硬件信息如下: + +- SOC:hi3516dv300。 + +- Touch IC:I2C地址为0x38, IC内部寄存器位宽为1字节。 + +- 原理图信息:TouchPad设备挂接在3号I2C控制器下;IC的复位管脚为3号GPIO。 + +本例程首先对Touch IC进行复位操作(开发板上电默认会给TouchIC供电,本例程不考虑供电),然后对其内部寄存器进行随机读写,测试I2C通路是否正常。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>本例程重点在于展示I2C设备访问流程,并验证I2C通路,所以对于设备寄存器读写值不做关注,读写寄存器导致的行为由设备自身决定。 + +示例如下: + +``` +#include "i2c_if.h" /* I2C标准接口头文件 */ +#include "gpio_if.h" /* GPIO标准接口头文件 */ +#include "hdf_log.h" /* 标准日志打印头文件 */ +#include "osal_io.h" /* 标准IO读写接口头文件 */ +#include "osal_time.h" /* 标准延迟&睡眠接口头文件 */ + +/* 定义一个表示TP设备的结构体,存储i2c及gpio相关硬件信息 */ +struct TpI2cDevice { + uint16_t rstGpio; /* 复位管脚 */ + uint16_t busId; /* I2C总线号 */ + uint16_t addr; /* I2C设备地址 */ + uint16_t regLen; /* 寄存器字节宽度 */ + DevHandle i2cHandle; /* I2C控制器句柄 */ +}; + +/* I2C管脚io配置,需要查阅SOC寄存器手册 */ +#define I2C3_DATA_REG_ADDR 0x112f008c /* 3号I2C控制器SDA管脚配置寄存器地址 */ +#define I2C3_CLK_REG_ADDR 0x112f0090 /* 3号I2C控制器SCL管脚配置寄存器地址 */ +#define I2C_REG_CFG 0x5f1 /* 3号I2C控制器SDA及SCL管脚配置值 */ + +static void TpSocIoCfg(void) +{ + /* 将3号I2C控制器对应两个管脚的IO功能设置为I2C */ + OSAL_WRITEL(I2C_REG_CFG, IO_DEVICE_ADDR(I2C3_DATA_REG_ADDR)); + OSAL_WRITEL(I2C_REG_CFG, IO_DEVICE_ADDR(I2C3_CLK_REG_ADDR)); +} + +/* 对TP的复位管脚进行初始化, 拉高维持20ms, 再拉底维持50ms,最后再拉高维持20ms, 完成复位动作 */ +static int32_t TestCaseGpioInit(struct TpI2cDevice *tpDevice) +{ + int32_t ret; + + /* 设置复位管脚方向为输出 */ + ret = GpioSetDir(tpDevice->rstGpio, GPIO_DIR_OUT); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set rst dir fail!:%d", __func__, ret); + return ret; + } + + ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_HIGH); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set rst hight fail!:%d", __func__, ret); + return ret; + } + OsalMSleep(20); + + ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_LOW); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set rst low fail!:%d", __func__, ret); + return ret; + } + OsalMSleep(50); + + ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_HIGH); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set rst high fail!:%d", __func__, ret); + return ret; + } + OsalMSleep(20); + + return HDF_SUCCESS; +} + +/* 基于I2cTransfer方法封装一个寄存器读写的辅助函数, 通过flag表示读或写 */ +static int TpI2cReadWrite(struct TpI2cDevice *tpDevice, unsigned int regAddr, + unsigned char *regData, unsigned int dataLen, uint8_t flag) +{ + int index = 0; + unsigned char regBuf[4] = {0}; + struct I2cMsg msgs[2] = {0}; + + /* 单双字节寄存器长度适配 */ + if (tpDevice->regLen == 1) { + regBuf[index++] = regAddr & 0xFF; + } else { + regBuf[index++] = (regAddr >> 8) & 0xFF; + regBuf[index++] = regAddr & 0xFF; + } + + /* 填充I2cMsg消息结构 */ + msgs[0].addr = tpDevice->addr; + msgs[0].flags = 0; /* 标记为0,表示写入 */ + msgs[0].len = tpDevice->regLen; + msgs[0].buf = regBuf; + + msgs[1].addr = tpDevice->addr; + msgs[1].flags = (flag == 1) ? I2C_FLAG_READ : 0; /* 添加读标记位,表示读取 */ + msgs[1].len = dataLen; + msgs[1].buf = regData; + + if (I2cTransfer(tpDevice->i2cHandle, msgs, 2) != 2) { + HDF_LOGE("%s: i2c read err", __func__); + return HDF_FAILURE; + } + return HDF_SUCCESS; +} + +/* TP寄存器读函数 */ +static inline int TpI2cReadReg(struct TpI2cDevice *tpDevice, unsigned int regAddr, + unsigned char *regData, unsigned int dataLen) +{ + return TpI2cReadWrite(tpDevice, regAddr, regData, dataLen, 1); +} + +/* TP寄存器写函数 */ +static inline int TpI2cWriteReg(struct TpI2cDevice *tpDevice, unsigned int regAddr, + unsigned char *regData, unsigned int dataLen) +{ + return TpI2cReadWrite(tpDevice, regAddr, regData, dataLen, 0); +} + +/* I2C例程总入口 */ +static int32_t TestCaseI2c(void) +{ + int32_t i; + int32_t ret; + unsigned char bufWrite[7] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xA, 0xB, 0xC }; + unsigned char bufRead[7] = {0}; + static struct TpI2cDevice tpDevice; + + /* IO管脚功能配置 */ + TpSocIoCfg(); + + /* TP设备信息初始化 */ + tpDevice.rstGpio = 3; + tpDevice.busId = 3; + tpDevice.addr = 0x38; + tpDevice.regLen = 1; + tpDevice.i2cHandle = NULL; + + /* GPIO管脚初始化 */ + ret = TestCaseGpioInit(&tpDevice); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: gpio init fail!:%d", __func__, ret); + return ret; + } + + /* 打开I2C控制器 */ + tpDevice.i2cHandle = I2cOpen(tpDevice.busId); + if (tpDevice.i2cHandle == NULL) { + HDF_LOGE("%s: Open I2c:%u fail!", __func__, tpDevice.busId); + return -1; + } + + /* 向TP-IC的0xD5寄存器连续写7字节数据 */ + ret = TpI2cWriteReg(&tpDevice, 0xD5, bufWrite, 7); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: tp i2c write reg fail!:%d", __func__, ret); + I2cClose(tpDevice.i2cHandle); + return -1; + } + OsalMSleep(10); + + /* 从TP-IC的0xDO寄存器连续读7字节数据 */ + ret = TpI2cReadReg(&tpDevice, 0xD5, bufRead, 7); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: tp i2c read reg fail!:%d", __func__, ret); + I2cClose(tpDevice.i2cHandle); + return -1; + } + + HDF_LOGE("%s: tp i2c write&read reg success!", __func__); + for (i = 0; i < 7; i++) { + HDF_LOGE("%s: bufRead[%d] = 0x%x", __func__, i, bufRead[i]); + } + + /* 访问完毕关闭I2C控制器 */ + I2cClose(tpDevice.i2cHandle); + return ret; +} +``` diff --git "a/zh-cn/device-dev/driver/I2C\344\275\277\347\224\250\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/I2C\344\275\277\347\224\250\345\256\236\344\276\213.md" deleted file mode 100755 index a75da59b1b8..00000000000 --- "a/zh-cn/device-dev/driver/I2C\344\275\277\347\224\250\345\256\236\344\276\213.md" +++ /dev/null @@ -1,192 +0,0 @@ -# I2C使用实例 - -本例程以操作开发板上的I2C设备为例,详细展示I2C接口的完整使用流程。 - -本例拟对Hi3516DV300某开发板上TouchPad设备进行简单的寄存器读写访问,基本硬件信息如下: - -- SOC:hi3516dv300。 - -- Touch IC:I2C地址为0x38, IC内部寄存器位宽为1字节。 - -- 原理图信息:TouchPad设备挂接在3号I2C控制器下;IC的复位管脚为3号GPIO。 - -本例程首先对Touch IC进行复位操作(开发板上电默认会给TouchIC供电,本例程不考虑供电),然后对其内部寄存器进行随机读写,测试I2C通路是否正常。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->本例程重点在于展示I2C设备访问流程,并验证I2C通路,所以对于设备寄存器读写值不做关注,读写寄存器导致的行为由设备自身决定。 - -示例如下: - -``` -#include "i2c_if.h" /* I2C标准接口头文件 */ -#include "gpio_if.h" /* GPIO标准接口头文件 */ -#include "hdf_log.h" /* 标准日志打印头文件 */ -#include "osal_io.h" /* 标准IO读写接口头文件 */ -#include "osal_time.h" /* 标准延迟&睡眠接口头文件 */ - -/* 定义一个表示TP设备的结构体,存储i2c及gpio相关硬件信息 */ -struct TpI2cDevice { - uint16_t rstGpio; /* 复位管脚 */ - uint16_t busId; /* I2C总线号 */ - uint16_t addr; /* I2C设备地址 */ - uint16_t regLen; /* 寄存器字节宽度 */ - DevHandle i2cHandle; /* I2C控制器句柄 */ -}; - -/* I2C管脚io配置,需要查阅SOC寄存器手册 */ -#define I2C3_DATA_REG_ADDR 0x112f008c /* 3号I2C控制器SDA管脚配置寄存器地址 */ -#define I2C3_CLK_REG_ADDR 0x112f0090 /* 3号I2C控制器SCL管脚配置寄存器地址 */ -#define I2C_REG_CFG 0x5f1 /* 3号I2C控制器SDA及SCL管脚配置值 */ - -static void TpSocIoCfg(void) -{ - /* 将3号I2C控制器对应两个管脚的IO功能设置为I2C */ - OSAL_WRITEL(I2C_REG_CFG, IO_DEVICE_ADDR(I2C3_DATA_REG_ADDR)); - OSAL_WRITEL(I2C_REG_CFG, IO_DEVICE_ADDR(I2C3_CLK_REG_ADDR)); -} - -/* 对TP的复位管脚进行初始化, 拉高维持20ms, 再拉底维持50ms,最后再拉高维持20ms, 完成复位动作 */ -static int32_t TestCaseGpioInit(struct TpI2cDevice *tpDevice) -{ - int32_t ret; - - /* 设置复位管脚方向为输出 */ - ret = GpioSetDir(tpDevice->rstGpio, GPIO_DIR_OUT); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set rst dir fail!:%d", __func__, ret); - return ret; - } - - ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_HIGH); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set rst hight fail!:%d", __func__, ret); - return ret; - } - OsalMSleep(20); - - ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_LOW); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set rst low fail!:%d", __func__, ret); - return ret; - } - OsalMSleep(50); - - ret = GpioWrite(tpDevice->rstGpio, GPIO_VAL_HIGH); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set rst high fail!:%d", __func__, ret); - return ret; - } - OsalMSleep(20); - - return HDF_SUCCESS; -} - -/* 基于I2cTransfer方法封装一个寄存器读写的辅助函数, 通过flag表示读或写 */ -static int TpI2cReadWrite(struct TpI2cDevice *tpDevice, unsigned int regAddr, - unsigned char *regData, unsigned int dataLen, uint8_t flag) -{ - int index = 0; - unsigned char regBuf[4] = {0}; - struct I2cMsg msgs[2] = {0}; - - /* 单双字节寄存器长度适配 */ - if (tpDevice->regLen == 1) { - regBuf[index++] = regAddr & 0xFF; - } else { - regBuf[index++] = (regAddr >> 8) & 0xFF; - regBuf[index++] = regAddr & 0xFF; - } - - /* 填充I2cMsg消息结构 */ - msgs[0].addr = tpDevice->addr; - msgs[0].flags = 0; /* 标记为0,表示写入 */ - msgs[0].len = tpDevice->regLen; - msgs[0].buf = regBuf; - - msgs[1].addr = tpDevice->addr; - msgs[1].flags = (flag == 1) ? I2C_FLAG_READ : 0; /* 添加读标记位,表示读取 */ - msgs[1].len = dataLen; - msgs[1].buf = regData; - - if (I2cTransfer(tpDevice->i2cHandle, msgs, 2) != 2) { - HDF_LOGE("%s: i2c read err", __func__); - return HDF_FAILURE; - } - return HDF_SUCCESS; -} - -/* TP寄存器读函数 */ -static inline int TpI2cReadReg(struct TpI2cDevice *tpDevice, unsigned int regAddr, - unsigned char *regData, unsigned int dataLen) -{ - return TpI2cReadWrite(tpDevice, regAddr, regData, dataLen, 1); -} - -/* TP寄存器写函数 */ -static inline int TpI2cWriteReg(struct TpI2cDevice *tpDevice, unsigned int regAddr, - unsigned char *regData, unsigned int dataLen) -{ - return TpI2cReadWrite(tpDevice, regAddr, regData, dataLen, 0); -} - -/* I2C例程总入口 */ -static int32_t TestCaseI2c(void) -{ - int32_t i; - int32_t ret; - unsigned char bufWrite[7] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xA, 0xB, 0xC }; - unsigned char bufRead[7] = {0}; - static struct TpI2cDevice tpDevice; - - /* IO管脚功能配置 */ - TpSocIoCfg(); - - /* TP设备信息初始化 */ - tpDevice.rstGpio = 3; - tpDevice.busId = 3; - tpDevice.addr = 0x38; - tpDevice.regLen = 1; - tpDevice.i2cHandle = NULL; - - /* GPIO管脚初始化 */ - ret = TestCaseGpioInit(&tpDevice); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: gpio init fail!:%d", __func__, ret); - return ret; - } - - /* 打开I2C控制器 */ - tpDevice.i2cHandle = I2cOpen(tpDevice.busId); - if (tpDevice.i2cHandle == NULL) { - HDF_LOGE("%s: Open I2c:%u fail!", __func__, tpDevice.busId); - return -1; - } - - /* 向TP-IC的0xD5寄存器连续写7字节数据 */ - ret = TpI2cWriteReg(&tpDevice, 0xD5, bufWrite, 7); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: tp i2c write reg fail!:%d", __func__, ret); - I2cClose(tpDevice.i2cHandle); - return -1; - } - OsalMSleep(10); - - /* 从TP-IC的0xDO寄存器连续读7字节数据 */ - ret = TpI2cReadReg(&tpDevice, 0xD5, bufRead, 7); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: tp i2c read reg fail!:%d", __func__, ret); - I2cClose(tpDevice.i2cHandle); - return -1; - } - - HDF_LOGE("%s: tp i2c write&read reg success!", __func__); - for (i = 0; i < 7; i++) { - HDF_LOGE("%s: bufRead[%d] = 0x%x", __func__, i, bufRead[i]); - } - - /* 访问完毕关闭I2C控制器 */ - I2cClose(tpDevice.i2cHandle); - return ret; -} -``` - diff --git "a/zh-cn/device-dev/driver/I2C\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/I2C\344\275\277\347\224\250\346\214\207\345\257\274.md" deleted file mode 100755 index 38341ca1d40..00000000000 --- "a/zh-cn/device-dev/driver/I2C\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ /dev/null @@ -1,171 +0,0 @@ -# I2C使用指导 - -- [使用流程](#section333203315215) -- [打开I2C控制器](#section123631358135713) -- [进行I2C通信](#section11091522125812) -- [关闭I2C控制器](#section13519505589) - -## 使用流程 - -使用I2C设备的一般流程如[图1](#fig166181128151112)所示。 - -**图 1** I2C设备使用流程图 - - -![](figures/zh-cn_image_0000001057902344.png) - -## 打开I2C控制器 - -在进行I2C通信前,首先要调用I2cOpen打开I2C控制器。 - -DevHandle I2cOpen\(int16\_t number\); - -**表 1** I2cOpen参数和返回值描述 - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

number

-

I2C控制器号

-

返回值

-

返回值描述

-

NULL

-

打开I2C控制器失败

-

设备句柄

-

打开的I2C控制器设备句柄

-
- -假设系统中存在8个I2C控制器,编号从0到7,那么我们现在获取3号控制器 - -``` -DevHandle i2cHandle = NULL; /* I2C控制器句柄 / - -/* 打开I2C控制器 */ -i2cHandle = I2cOpen(3); -if (i2cHandle == NULL) { - HDF_LOGE("I2cOpen: failed\n"); - return; -} -``` - -## 进行I2C通信 - -消息传输 - -int32\_t I2cTransfer\(DevHandle handle, struct I2cMsg \*msgs, int16\_t count\); - -**表 2** I2cTransfer参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

I2C控制器设备句柄

-

msgs

-

待传输数据的消息结构体数组

-

count

-

消息数组长度

-

返回值

-

返回值描述

-

正整数

-

成功传输的消息结构体数目

-

负数

-

执行失败

-
- -I2C传输消息类型为I2cMsg,每个传输消息结构体表示一次读或写,通过一个消息数组,可以执行若干次的读写组合操作。 - -``` -int32_t ret; -uint8_t wbuff[2] = { 0x12, 0x13 }; -uint8_t rbuff[2] = { 0 }; -struct I2cMsg msgs[2]; /* 自定义传输的消息结构体数组 */ -msgs[0].buf = wbuff; /* 写入的数据 */ -msgs[0].len = 2; /* 写入数据长度为2 */ -msgs[0].addr = 0x5A; /* 写入设备地址为0x5A */ -msgs[0].flags = 0; /* 传输标记为0,默认为写 */ -msgs[1].buf = rbuff; /* 要读取的数据 */ -msgs[1].len = 2; /* 读取数据长度为2 */ -msgs[1].addr = 0x5A; /* 读取设备地址为0x5A */ -msgs[1].flags = I2C_FLAG_READ /* I2C_FLAG_READ置位 */ -/* 进行一次自定义传输,传输的消息个数为2 */ -ret = I2cTransfer(i2cHandle, msgs, 2); -if (ret != 2) { - HDF_LOGE("I2cTransfer: failed, ret %d\n", ret); - return; -} -``` - ->![](public_sys-resources/icon-caution.gif) **注意:** ->- I2cMsg结构体中的设备地址不包含读写标志位,读写信息由flags成员变量的读写控制位传递。 ->- 本函数不对消息结构体个数count做限制,其最大个数度由具体I2C控制器决定。 ->- 本函数也不对每个消息结构体中的数据长度做限制,同样由具体I2C控制器决定。 ->- 本函数可能会引起系统休眠,不允许在中断上下文调用 - -## 关闭I2C控制器 - -I2C通信完成之后,需要关闭2C控制器,关闭函数如下所示: - -void I2cClose\(DevHandle handle\); - -**表 3** I2cClose参数和返回值描述 - - - - - - - - - - -

参数

-

参数描述

-

handle

-

I2C控制器设备句柄

-
- -``` -I2cClose(i2cHandle); /* 关闭I2C控制器 */ -``` - diff --git "a/zh-cn/device-dev/driver/I2C\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/I2C\346\246\202\350\277\260.md" deleted file mode 100755 index 7961b58a828..00000000000 --- "a/zh-cn/device-dev/driver/I2C\346\246\202\350\277\260.md" +++ /dev/null @@ -1,60 +0,0 @@ -# I2C概述 - -- [简介](#section5361140416) -- [接口说明](#section7606310210) - -## 简介 - -- I2C\(Inter Integrated Circuit\)总线是由Philips公司开发的一种简单、双向二线制同步串行总线。 -- I2C以主从方式工作,通常有一个主设备和一个或者多个从设备,主从设备通过SDA\(SerialData\)串行数据线以及SCL\(SerialClock\)串行时钟线两根线相连,如[图1 ](#fig1135561232714)所示。 - -- I2C数据的传输必须以一个起始信号作为开始条件,以一个结束信号作为传输的停止条件。数据传输以字节为单位,高位在前,逐个bit进行传输。 -- I2C总线上的每一个设备都可以作为主设备或者从设备,而且每一个设备都会对应一个唯一的地址,当主设备需要和某一个从设备通信时,通过广播的方式,将从设备地址写到总线上,如果某个从设备符合此地址,将会发出应答信号,建立传输。 - -- I2C接口定义了完成I2C传输的通用方法集合,包括: - - - I2C控制器管理: 打开或关闭I2C控制器 - - I2C消息传输:通过消息传输结构体数组进行自定义传输 - - **图 1** I2C物理连线示意图 - ![](figures/I2C物理连线示意图.png "I2C物理连线示意图") - - -## 接口说明 - -**表 1** I2C驱动API接口功能介绍 - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

描述

-

I2C控制器管理接口

-

I2cOpen

-

打开I2C控制器

-

I2cClose

-

关闭I2C控制器

-

I2c消息传输接口

-

I2cTransfer

-

自定义传输

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 - diff --git a/zh-cn/device-dev/driver/LCD.md b/zh-cn/device-dev/driver/LCD.md index b6352ca8331..97075a5a0d8 100755 --- a/zh-cn/device-dev/driver/LCD.md +++ b/zh-cn/device-dev/driver/LCD.md @@ -1,9 +1,363 @@ -# LCD +# LCD -- **[LCD开发概述](LCD开发概述.md)** +- [概述](#section141575391542) + - [接口说明](#section14711163785519) -- **[LCD开发指导](LCD开发指导.md)** +- [开发指导](#section12394223125615) + - [开发步骤](#section515923045814) -- **[LCD开发实例](LCD开发实例.md)** +- [开发实例](#section7441155155813) +## 概述 + +LCD(Liquid Crystal Display)液晶显示驱动,对LCD进行上电,并通过接口初始化LCD内部寄存器,使LCD正常工作。Display驱动模型基于HDF( Hardware Driver Foundation)[驱动框架](HDF开发概述.md)开发,实现跨OS、跨平台,为LCD硬件提供上下电功能、发送初始化序列功能,使LCD进入正常的工作模式,显示芯片平台侧的图像数据,基于HDF驱动框架的Display驱动模型如[图1](#fig69138814229)。 + +**图 1** 基于HDF驱动框架的Display驱动模型 +![](figures/基于HDF驱动框架的Display驱动模型.png "基于HDF驱动框架的Display驱动模型") + +- **Display驱动模型介绍** + + Display驱动模型主要由平台驱动层、芯片平台适配层、LCD器件驱动层三部分组成。驱动模型基于HDF驱动框架开发,通过Platform层和OSAL层提供的接口,屏蔽内核形态的差异,使得器件驱动可以便利的迁移到不同OS及芯片平台。模型向上对接Display公共hal层,支撑HDI接口的实现,通过Display-HDI(Hardware Display Interface)对图形服务提供各类驱动能力接口。 + + (1)Display平台驱动层:通过HDF提供的IOService数据通道,与公共Hal层对接,集中接收并处理各类上层调用指令; + + (2)SOC平台驱动适配层:借助此SOC适配层,实现Display驱动和SOC侧驱动解耦,主要完成芯片平台相关的参数配置,并传递平台驱动层的调用到器件驱动层; + + (3)LCD器件驱动层:在器件驱动层中,主要实现和器件自身强相关的驱动适配接口,例如发送初始化序列、上下电、背光设置等。 + + 基于Display驱动模型开发LCD驱动,可以借助平台提供的各种能力及接口,较大程度的降低器件驱动的开发周期和难度,提升开发效率。 + + +### 接口说明 + +LCD接口通常可分为MIPI DSI接口、TTL接口和LVDS接口,常用的是MIPI DSI接口和TTL接口,下面对常用的MIPI DSI接口和TTL接口作简要介绍。 + +- MIPI DSI接口 + + **图 2** MIPI DSI接口 + ![](figures/MIPI-DSI接口.png "MIPI-DSI接口") + + MIPI DSI接口是MIPI(移动行业处理器接口)联盟定义的显示接口,主要用于移动终端显示屏接口,接口数据传输遵循MIPI协议,MIPI DSI接口为数据接口,传输图像数据,通常情况下MIPI DSI接口的控制信息以MIPI包形式通过MIPI DSI接口发送到对端IC,不需要额外的外设接口。 + +- TTL接口 + + **图 3** TTL接口 + ![](figures/TTL接口.png "TTL接口") + + TTL(Transistor Transistor Logic)即晶体管-晶体管逻辑,TTL电平信号由TTL器件产生,TTL器件是数字集成电路的一大门类,它采用双极型工艺制造,具有高速度、低功耗和品种多等特点。 + + TTL接口是并行方式传输数据的接口,有数据信号、时钟信号和控制信号(行同步、帧同步、数据有效信号等),在控制信号控制下完成数据传输。通常TTL接口的LCD,内部寄存器读写需要额外的外设接口,比如SPI接口、I2C接口等。 + + +## 开发指导 + +Display驱动模型基于HDF驱动框架、Platform接口及OSAL接口开发,可以做到不区分OS(LiteOS、Linux)和芯片平台(Hi35xx、Hi38xx、V3S等),为LCD器件提供统一的驱动模型。 + +### 开发步骤 + +1. 添加LCD驱动相关的设备描述配置。 +2. 在SOC平台驱动适配层中适配对应的芯片平台驱动。 +3. 添加器件驱动,并在驱动入口函数Init中注册Panel驱动数据,驱动数据接口主要包括如下接口: + - LCD上下电 + + 根据LCD硬件连接,使用Platform接口层提供的GPIO操作接口操作对应LCD管脚,例如复位管脚、IOVCC管脚,上电时序参考LCD供应商提供的SPEC。 + + - 发送初始化序列 + + 根据LCD硬件接口,使用Platform接口层提供的I2C、SPI、MIPI等接口,下载LCD初始化序列,初始化参数序列可以参考LCD供应商提供的SPEC。 + + +4. 根据需求实现HDF框架其他接口,比如Release接口。 +5. 根据需求使用HDF框架可创建其他设备节点,用于业务逻辑或者调试功能。 + +## 开发实例 + +添加设备描述配置: + +``` +/* Display驱动相关的设备描述配置 */ +display :: host { + hostName = "display_host"; + /* Display平台驱动设备描述 */ + device_hdf_disp :: device { + device0 :: deviceNode { + policy = 2; + priority = 200; + permission = 0660; + moduleName = "HDF_DISP"; + serviceName = "hdf_disp"; + } + } + /* SOC适配层驱动设备描述 */ + device_hi35xx_disp :: device { + device0 :: deviceNode { + policy = 0; + priority = 199; + moduleName = "HI351XX_DISP"; + } + } + /* LCD器件驱动设备描述 */ + device_lcd :: device { + device0 :: deviceNode { + policy = 0; + priority = 100; + preload = 0; + moduleName = "LCD_Sample"; + } + device1 :: deviceNode { + policy = 0; + priority = 100; + preload = 2; + moduleName = "LCD_SampleXX"; + } + } +} +``` + +SOC适配层驱动,以Hi35xx系列芯片为例,需要在本层驱动中适配MIPI等和芯片平台相关的配置,示例如下: + +``` +static int32_t MipiDsiInit(struct PanelInfo *info) +{ + int32_t ret; + struct DevHandle *mipiHandle = NULL; + struct MipiCfg cfg; + + mipiHandle = MipiDsiOpen(0); + if (mipiHandle == NULL) { + HDF_LOGE("%s: MipiDsiOpen failure", __func__); + return HDF_FAILURE; + } + cfg.lane = info->mipi.lane; + cfg.mode = info->mipi.mode; + cfg.format = info->mipi.format; + cfg.burstMode = info->mipi.burstMode; + cfg.timing.xPixels = info->width; + cfg.timing.hsaPixels = info->hsw; + cfg.timing.hbpPixels = info->hbp; + cfg.timing.hlinePixels = info->width + info->hbp + info->hfp + info->hsw; + cfg.timing.vsaLines = info->vsw; + cfg.timing.vbpLines = info->vbp; + cfg.timing.vfpLines = info->vfp; + cfg.timing.ylines = info->height; + /* 0 : no care */ + cfg.timing.edpiCmdSize = 0; + cfg.pixelClk = CalcPixelClk(info); + cfg.phyDataRate = CalcDataRate(info); + /* config mipi device */ + ret = MipiDsiSetCfg(mipiHandle, &cfg); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s:MipiDsiSetCfg failure", __func__); + } + MipiDsiClose(mipiHandle); + HDF_LOGI("%s:pixelClk = %d, phyDataRate = %d\n", __func__, + cfg.pixelClk, cfg.phyDataRate); + return ret; +} +``` + +LCD器件驱动示例如下: + +``` +#define RESET_GPIO 5 +#define MIPI_DSI0 0 +#define BLK_PWM1 1 +#define PWM_MAX_PERIOD 100000 +/* backlight setting */ +#define MIN_LEVEL 0 +#define MAX_LEVEL 255 +#define DEFAULT_LEVEL 100 + +#define WIDTH 480 +#define HEIGHT 960 +#define HORIZONTAL_BACK_PORCH 20 +#define HORIZONTAL_FRONT_PORCH 20 +#define HORIZONTAL_SYNC_WIDTH 10 +#define VERTIACL_BACK_PORCH 14 +#define VERTIACL_FRONT_PORCH 16 +#define VERTIACL_SYNC_WIDTH 2 +#define FRAME_RATE 60 + +/* Panel Info结构体结构体 */ +struct PanelInfo { + uint32_t width; + uint32_t height; + uint32_t hbp; + uint32_t hfp; + uint32_t hsw; + uint32_t vbp; + uint32_t vfp; + uint32_t vsw; + uint32_t frameRate; + enum LcdIntfType intfType; + enum IntfSync intfSync; + struct MipiDsiDesc mipi; + struct BlkDesc blk; + struct PwmCfg pwm; +}; + +/* LCD屏的初始化序列 */ +static uint8_t g_payLoad0[] = { 0xF0, 0x5A, 0x5A }; +static uint8_t g_payLoad1[] = { 0xF1, 0xA5, 0xA5 }; +static uint8_t g_payLoad2[] = { 0xB3, 0x03, 0x03, 0x03, 0x07, 0x05, 0x0D, 0x0F, 0x11, 0x13, 0x09, 0x0B }; +static uint8_t g_payLoad3[] = { 0xB4, 0x03, 0x03, 0x03, 0x06, 0x04, 0x0C, 0x0E, 0x10, 0x12, 0x08, 0x0A }; +static uint8_t g_payLoad4[] = { 0xB0, 0x54, 0x32, 0x23, 0x45, 0x44, 0x44, 0x44, 0x44, 0x60, 0x00, 0x60, 0x1C }; +static uint8_t g_payLoad5[] = { 0xB1, 0x32, 0x84, 0x02, 0x87, 0x12, 0x00, 0x50, 0x1C }; +static uint8_t g_payLoad6[] = { 0xB2, 0x73, 0x09, 0x08 }; +static uint8_t g_payLoad7[] = { 0xB6, 0x5C, 0x5C, 0x05 }; +static uint8_t g_payLoad8[] = { 0xB8, 0x23, 0x41, 0x32, 0x30, 0x03 }; +static uint8_t g_payLoad9[] = { 0xBC, 0xD2, 0x0E, 0x63, 0x63, 0x5A, 0x32, 0x22, 0x14, 0x22, 0x03 }; +static uint8_t g_payLoad10[] = { 0xb7, 0x41 }; +static uint8_t g_payLoad11[] = { 0xC1, 0x0c, 0x10, 0x04, 0x0c, 0x10, 0x04 }; +static uint8_t g_payLoad12[] = { 0xC2, 0x10, 0xE0 }; +static uint8_t g_payLoad13[] = { 0xC3, 0x22, 0x11 }; +static uint8_t g_payLoad14[] = { 0xD0, 0x07, 0xFF }; +static uint8_t g_payLoad15[] = { 0xD2, 0x63, 0x0B, 0x08, 0x88 }; +static uint8_t g_payLoad16[] = { 0xC6, 0x08, 0x15, 0xFF, 0x10, 0x16, 0x80, 0x60 }; +static uint8_t g_payLoad17[] = { 0xc7, 0x04 }; +static uint8_t g_payLoad18[] = { + 0xC8, 0x7C, 0x50, 0x3B, 0x2C, 0x25, 0x16, 0x1C, 0x08, 0x27, 0x2B, 0x2F, 0x52, 0x43, 0x4C, 0x40, + 0x3D, 0x30, 0x1E, 0x06, 0x7C, 0x50, 0x3B, 0x2C, 0x25, 0x16, 0x1C, 0x08, 0x27, 0x2B, 0x2F, 0x52, + 0x43, 0x4C, 0x40, 0x3D, 0x30, 0x1E, 0x06 +}; +static uint8_t g_payLoad19[] = { 0x11 }; +static uint8_t g_payLoad20[] = { 0x29 }; + +struct DsiCmdDesc g_OnCmd[] = { + { 0x29, 0, sizeof(g_payLoad0), g_payLoad0 }, + { 0x29, 0, sizeof(g_payLoad1), g_payLoad1 }, + { 0x29, 0, sizeof(g_payLoad2), g_payLoad2 }, + { 0x29, 0, sizeof(g_payLoad3), g_payLoad3 }, + { 0x29, 0, sizeof(g_payLoad4), g_payLoad4 }, + { 0x29, 0, sizeof(g_payLoad5), g_payLoad5 }, + { 0x29, 0, sizeof(g_payLoad6), g_payLoad6 }, + { 0x29, 0, sizeof(g_payLoad7), g_payLoad7 }, + { 0x29, 0, sizeof(g_payLoad8), g_payLoad8 }, + { 0x29, 0, sizeof(g_payLoad9), g_payLoad9 }, + { 0x23, 0, sizeof(g_payLoad10), g_payLoad10 }, + { 0x29, 0, sizeof(g_payLoad11), g_payLoad11 }, + { 0x29, 0, sizeof(g_payLoad12), g_payLoad12 }, + { 0x29, 0, sizeof(g_payLoad13), g_payLoad13 }, + { 0x29, 0, sizeof(g_payLoad14), g_payLoad14 }, + { 0x29, 0, sizeof(g_payLoad15), g_payLoad15 }, + { 0x29, 0, sizeof(g_payLoad16), g_payLoad16 }, + { 0x23, 0, sizeof(g_payLoad17), g_payLoad17 }, + { 0x29, 1, sizeof(g_payLoad18), g_payLoad18 }, + { 0x05, 120, sizeof(g_payLoad19), g_payLoad19 }, + { 0x05, 120, sizeof(g_payLoad20), g_payLoad20 }, +}; +static DevHandle g_mipiHandle = NULL; +static DevHandle g_pwmHandle = NULL; + +/* 设置Reset Pin脚状态 */ +static int32_t LcdResetOn(void) +{ + int32_t ret; + ret = GpioSetDir(RESET_GPIO, GPIO_DIR_OUT); + if (ret != HDF_SUCCESS) { + HDF_LOGE("GpioSetDir failure, ret:%d", ret); + return HDF_FAILURE; + } + ret = GpioWrite(RESET_GPIO, GPIO_VAL_HIGH); + if (ret != HDF_SUCCESS) { + HDF_LOGE("GpioWrite failure, ret:%d", ret); + return HDF_FAILURE; + } + /* delay 20ms */ + OsalMSleep(20); + return HDF_SUCCESS; +} + +static int32_t SampleInit(void) +{ + /* 获取MIPI DSI设备操作句柄 */ + g_mipiHandle = MipiDsiOpen(MIPI_DSI0); + if (g_mipiHandle == NULL) { + HDF_LOGE("%s: MipiDsiOpen failure", __func__); + return HDF_FAILURE; + } + return HDF_SUCCESS; +} + +static int32_t SampleOn(void) +{ + int32_t ret; + /* LCD上电序列 */ + ret = LcdResetOn(); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: LcdResetOn failure", __func__); + return HDF_FAILURE; + } + if (g_mipiHandle == NULL) { + HDF_LOGE("%s: g_mipiHandle is null", __func__); + return HDF_FAILURE; + } + /* 使用mipi下发初始化序列 */ + int32_t count = sizeof(g_OnCmd) / sizeof(g_OnCmd[0]); + int32_t i; + for (i = 0; i < count; i++) { + ret = MipiDsiTx(g_mipiHandle, &(g_OnCmd[i])); + if (ret != HDF_SUCCESS) { + HDF_LOGE("MipiDsiTx failure"); + return HDF_FAILURE; + } + } + /* 将mipi切换到HS模式 */ + MipiDsiSetHsMode(g_mipiHandle); + return HDF_SUCCESS; +} + +/* PanelInfo结构体变量 */ +static struct PanelInfo g_panelInfo = { + .width = WIDTH, /* width */ + .height = HEIGHT, /* height */ + .hbp = HORIZONTAL_BACK_PORCH, /* horizontal back porch */ + .hfp = HORIZONTAL_FRONT_PORCH, /* horizontal front porch */ + .hsw = HORIZONTAL_SYNC_WIDTH, /* horizontal sync width */ + .vbp = VERTIACL_BACK_PORCH, /* vertiacl back porch */ + .vfp = VERTIACL_FRONT_PORCH, /* vertiacl front porch */ + .vsw = VERTIACL_SYNC_WIDTH, /* vertiacl sync width */ + .frameRate = FRAME_RATE, /* frame rate */ + .intfType = MIPI_DSI, /* panel interface type */ + .intfSync = OUTPUT_USER, /* output timming type */ + /* mipi config info */ + .mipi = { DSI_2_LANES, DSI_VIDEO_MODE, VIDEO_BURST_MODE, FORMAT_RGB_24_BIT }, + /* backlight config info */ + .blk = { BLK_PWM, MIN_LEVEL, MAX_LEVEL, DEFAULT_LEVEL }, + .pwm = { BLK_PWM1, PWM_MAX_PERIOD }, +}; + +/* 器件驱动需要适配的基础接口 */ +static struct PanelData g_panelData = { + .info = &g_panelInfo, + .init = SampleInit, + .on = SampleOn, + .off = SampleOff, + .setBacklight = SampleSetBacklight, +}; + +/* 器件驱动入口函数 */ +int32_t SampleEntryInit(struct HdfDeviceObject *object) +{ + HDF_LOGI("%s: enter", __func__); + if (object == NULL) { + HDF_LOGE("%s: param is null!", __func__); + return HDF_FAILURE; + } + /* 器件驱动接口注册,ops提供给平台驱动调用 */ + if (PanelDataRegister(&g_panelData) != HDF_SUCCESS) { + HDF_LOGE("%s: PanelDataRegister error!", __func__); + return HDF_FAILURE; + } + return HDF_SUCCESS; +} + +struct HdfDriverEntry g_sampleDevEntry = { + .moduleVersion = 1, + .moduleName = "LCD_SAMPLE", + .Init = SampleEntryInit, +}; + +HDF_INIT(g_sampleDevEntry); +``` diff --git "a/zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\345\256\236\344\276\213.md" deleted file mode 100755 index 6de19704008..00000000000 --- "a/zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\345\256\236\344\276\213.md" +++ /dev/null @@ -1,291 +0,0 @@ -# LCD开发实例 - -添加设备描述配置: - -``` -/* Display驱动相关的设备描述配置 */ -display :: host { - hostName = "display_host"; - /* Display平台驱动设备描述 */ - device_hdf_disp :: device { - device0 :: deviceNode { - policy = 2; - priority = 200; - permission = 0660; - moduleName = "HDF_DISP"; - serviceName = "hdf_disp"; - } - } - /* SOC适配层驱动设备描述 */ - device_hi35xx_disp :: device { - device0 :: deviceNode { - policy = 0; - priority = 199; - moduleName = "HI351XX_DISP"; - } - } - /* LCD器件驱动设备描述 */ - device_lcd :: device { - device0 :: deviceNode { - policy = 0; - priority = 100; - preload = 0; - moduleName = "LCD_Sample"; - } - device1 :: deviceNode { - policy = 0; - priority = 100; - preload = 2; - moduleName = "LCD_SampleXX"; - } - } -} -``` - -SOC适配层驱动,以Hi35xx系列芯片为例,需要在本层驱动中适配MIPI等和芯片平台相关的配置,示例如下: - -``` -static int32_t MipiDsiInit(struct PanelInfo *info) -{ - int32_t ret; - struct DevHandle *mipiHandle = NULL; - struct MipiCfg cfg; - - mipiHandle = MipiDsiOpen(0); - if (mipiHandle == NULL) { - HDF_LOGE("%s: MipiDsiOpen failure", __func__); - return HDF_FAILURE; - } - cfg.lane = info->mipi.lane; - cfg.mode = info->mipi.mode; - cfg.format = info->mipi.format; - cfg.burstMode = info->mipi.burstMode; - cfg.timing.xPixels = info->width; - cfg.timing.hsaPixels = info->hsw; - cfg.timing.hbpPixels = info->hbp; - cfg.timing.hlinePixels = info->width + info->hbp + info->hfp + info->hsw; - cfg.timing.vsaLines = info->vsw; - cfg.timing.vbpLines = info->vbp; - cfg.timing.vfpLines = info->vfp; - cfg.timing.ylines = info->height; - /* 0 : no care */ - cfg.timing.edpiCmdSize = 0; - cfg.pixelClk = CalcPixelClk(info); - cfg.phyDataRate = CalcDataRate(info); - /* config mipi device */ - ret = MipiDsiSetCfg(mipiHandle, &cfg); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s:MipiDsiSetCfg failure", __func__); - } - MipiDsiClose(mipiHandle); - HDF_LOGI("%s:pixelClk = %d, phyDataRate = %d\n", __func__, - cfg.pixelClk, cfg.phyDataRate); - return ret; -} -``` - -LCD器件驱动示例如下: - -``` -#define RESET_GPIO 5 -#define MIPI_DSI0 0 -#define BLK_PWM1 1 -#define PWM_MAX_PERIOD 100000 -/* backlight setting */ -#define MIN_LEVEL 0 -#define MAX_LEVEL 255 -#define DEFAULT_LEVEL 100 - -#define WIDTH 480 -#define HEIGHT 960 -#define HORIZONTAL_BACK_PORCH 20 -#define HORIZONTAL_FRONT_PORCH 20 -#define HORIZONTAL_SYNC_WIDTH 10 -#define VERTIACL_BACK_PORCH 14 -#define VERTIACL_FRONT_PORCH 16 -#define VERTIACL_SYNC_WIDTH 2 -#define FRAME_RATE 60 - -/* Panel Info结构体结构体 */ -struct PanelInfo { - uint32_t width; - uint32_t height; - uint32_t hbp; - uint32_t hfp; - uint32_t hsw; - uint32_t vbp; - uint32_t vfp; - uint32_t vsw; - uint32_t frameRate; - enum LcdIntfType intfType; - enum IntfSync intfSync; - struct MipiDsiDesc mipi; - struct BlkDesc blk; - struct PwmCfg pwm; -}; - -/* LCD屏的初始化序列 */ -static uint8_t g_payLoad0[] = { 0xF0, 0x5A, 0x5A }; -static uint8_t g_payLoad1[] = { 0xF1, 0xA5, 0xA5 }; -static uint8_t g_payLoad2[] = { 0xB3, 0x03, 0x03, 0x03, 0x07, 0x05, 0x0D, 0x0F, 0x11, 0x13, 0x09, 0x0B }; -static uint8_t g_payLoad3[] = { 0xB4, 0x03, 0x03, 0x03, 0x06, 0x04, 0x0C, 0x0E, 0x10, 0x12, 0x08, 0x0A }; -static uint8_t g_payLoad4[] = { 0xB0, 0x54, 0x32, 0x23, 0x45, 0x44, 0x44, 0x44, 0x44, 0x60, 0x00, 0x60, 0x1C }; -static uint8_t g_payLoad5[] = { 0xB1, 0x32, 0x84, 0x02, 0x87, 0x12, 0x00, 0x50, 0x1C }; -static uint8_t g_payLoad6[] = { 0xB2, 0x73, 0x09, 0x08 }; -static uint8_t g_payLoad7[] = { 0xB6, 0x5C, 0x5C, 0x05 }; -static uint8_t g_payLoad8[] = { 0xB8, 0x23, 0x41, 0x32, 0x30, 0x03 }; -static uint8_t g_payLoad9[] = { 0xBC, 0xD2, 0x0E, 0x63, 0x63, 0x5A, 0x32, 0x22, 0x14, 0x22, 0x03 }; -static uint8_t g_payLoad10[] = { 0xb7, 0x41 }; -static uint8_t g_payLoad11[] = { 0xC1, 0x0c, 0x10, 0x04, 0x0c, 0x10, 0x04 }; -static uint8_t g_payLoad12[] = { 0xC2, 0x10, 0xE0 }; -static uint8_t g_payLoad13[] = { 0xC3, 0x22, 0x11 }; -static uint8_t g_payLoad14[] = { 0xD0, 0x07, 0xFF }; -static uint8_t g_payLoad15[] = { 0xD2, 0x63, 0x0B, 0x08, 0x88 }; -static uint8_t g_payLoad16[] = { 0xC6, 0x08, 0x15, 0xFF, 0x10, 0x16, 0x80, 0x60 }; -static uint8_t g_payLoad17[] = { 0xc7, 0x04 }; -static uint8_t g_payLoad18[] = { - 0xC8, 0x7C, 0x50, 0x3B, 0x2C, 0x25, 0x16, 0x1C, 0x08, 0x27, 0x2B, 0x2F, 0x52, 0x43, 0x4C, 0x40, - 0x3D, 0x30, 0x1E, 0x06, 0x7C, 0x50, 0x3B, 0x2C, 0x25, 0x16, 0x1C, 0x08, 0x27, 0x2B, 0x2F, 0x52, - 0x43, 0x4C, 0x40, 0x3D, 0x30, 0x1E, 0x06 -}; -static uint8_t g_payLoad19[] = { 0x11 }; -static uint8_t g_payLoad20[] = { 0x29 }; - -struct DsiCmdDesc g_OnCmd[] = { - { 0x29, 0, sizeof(g_payLoad0), g_payLoad0 }, - { 0x29, 0, sizeof(g_payLoad1), g_payLoad1 }, - { 0x29, 0, sizeof(g_payLoad2), g_payLoad2 }, - { 0x29, 0, sizeof(g_payLoad3), g_payLoad3 }, - { 0x29, 0, sizeof(g_payLoad4), g_payLoad4 }, - { 0x29, 0, sizeof(g_payLoad5), g_payLoad5 }, - { 0x29, 0, sizeof(g_payLoad6), g_payLoad6 }, - { 0x29, 0, sizeof(g_payLoad7), g_payLoad7 }, - { 0x29, 0, sizeof(g_payLoad8), g_payLoad8 }, - { 0x29, 0, sizeof(g_payLoad9), g_payLoad9 }, - { 0x23, 0, sizeof(g_payLoad10), g_payLoad10 }, - { 0x29, 0, sizeof(g_payLoad11), g_payLoad11 }, - { 0x29, 0, sizeof(g_payLoad12), g_payLoad12 }, - { 0x29, 0, sizeof(g_payLoad13), g_payLoad13 }, - { 0x29, 0, sizeof(g_payLoad14), g_payLoad14 }, - { 0x29, 0, sizeof(g_payLoad15), g_payLoad15 }, - { 0x29, 0, sizeof(g_payLoad16), g_payLoad16 }, - { 0x23, 0, sizeof(g_payLoad17), g_payLoad17 }, - { 0x29, 1, sizeof(g_payLoad18), g_payLoad18 }, - { 0x05, 120, sizeof(g_payLoad19), g_payLoad19 }, - { 0x05, 120, sizeof(g_payLoad20), g_payLoad20 }, -}; -static DevHandle g_mipiHandle = NULL; -static DevHandle g_pwmHandle = NULL; - -/* 设置Reset Pin脚状态 */ -static int32_t LcdResetOn(void) -{ - int32_t ret; - ret = GpioSetDir(RESET_GPIO, GPIO_DIR_OUT); - if (ret != HDF_SUCCESS) { - HDF_LOGE("GpioSetDir failure, ret:%d", ret); - return HDF_FAILURE; - } - ret = GpioWrite(RESET_GPIO, GPIO_VAL_HIGH); - if (ret != HDF_SUCCESS) { - HDF_LOGE("GpioWrite failure, ret:%d", ret); - return HDF_FAILURE; - } - /* delay 20ms */ - OsalMSleep(20); - return HDF_SUCCESS; -} - -static int32_t SampleInit(void) -{ - /* 获取MIPI DSI设备操作句柄 */ - g_mipiHandle = MipiDsiOpen(MIPI_DSI0); - if (g_mipiHandle == NULL) { - HDF_LOGE("%s: MipiDsiOpen failure", __func__); - return HDF_FAILURE; - } - return HDF_SUCCESS; -} - -static int32_t SampleOn(void) -{ - int32_t ret; - /* LCD上电序列 */ - ret = LcdResetOn(); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: LcdResetOn failure", __func__); - return HDF_FAILURE; - } - if (g_mipiHandle == NULL) { - HDF_LOGE("%s: g_mipiHandle is null", __func__); - return HDF_FAILURE; - } - /* 使用mipi下发初始化序列 */ - int32_t count = sizeof(g_OnCmd) / sizeof(g_OnCmd[0]); - int32_t i; - for (i = 0; i < count; i++) { - ret = MipiDsiTx(g_mipiHandle, &(g_OnCmd[i])); - if (ret != HDF_SUCCESS) { - HDF_LOGE("MipiDsiTx failure"); - return HDF_FAILURE; - } - } - /* 将mipi切换到HS模式 */ - MipiDsiSetHsMode(g_mipiHandle); - return HDF_SUCCESS; -} - -/* PanelInfo结构体变量 */ -static struct PanelInfo g_panelInfo = { - .width = WIDTH, /* width */ - .height = HEIGHT, /* height */ - .hbp = HORIZONTAL_BACK_PORCH, /* horizontal back porch */ - .hfp = HORIZONTAL_FRONT_PORCH, /* horizontal front porch */ - .hsw = HORIZONTAL_SYNC_WIDTH, /* horizontal sync width */ - .vbp = VERTIACL_BACK_PORCH, /* vertiacl back porch */ - .vfp = VERTIACL_FRONT_PORCH, /* vertiacl front porch */ - .vsw = VERTIACL_SYNC_WIDTH, /* vertiacl sync width */ - .frameRate = FRAME_RATE, /* frame rate */ - .intfType = MIPI_DSI, /* panel interface type */ - .intfSync = OUTPUT_USER, /* output timming type */ - /* mipi config info */ - .mipi = { DSI_2_LANES, DSI_VIDEO_MODE, VIDEO_BURST_MODE, FORMAT_RGB_24_BIT }, - /* backlight config info */ - .blk = { BLK_PWM, MIN_LEVEL, MAX_LEVEL, DEFAULT_LEVEL }, - .pwm = { BLK_PWM1, PWM_MAX_PERIOD }, -}; - -/* 器件驱动需要适配的基础接口 */ -static struct PanelData g_panelData = { - .info = &g_panelInfo, - .init = SampleInit, - .on = SampleOn, - .off = SampleOff, - .setBacklight = SampleSetBacklight, -}; - -/* 器件驱动入口函数 */ -int32_t SampleEntryInit(struct HdfDeviceObject *object) -{ - HDF_LOGI("%s: enter", __func__); - if (object == NULL) { - HDF_LOGE("%s: param is null!", __func__); - return HDF_FAILURE; - } - /* 器件驱动接口注册,ops提供给平台驱动调用 */ - if (PanelDataRegister(&g_panelData) != HDF_SUCCESS) { - HDF_LOGE("%s: PanelDataRegister error!", __func__); - return HDF_FAILURE; - } - return HDF_SUCCESS; -} - -struct HdfDriverEntry g_sampleDevEntry = { - .moduleVersion = 1, - .moduleName = "LCD_SAMPLE", - .Init = SampleEntryInit, -}; - -HDF_INIT(g_sampleDevEntry); -``` - diff --git "a/zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\346\214\207\345\257\274.md" deleted file mode 100755 index 12161e4cef9..00000000000 --- "a/zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ /dev/null @@ -1,23 +0,0 @@ -# LCD开发指导 - -- [开发步骤](#section3904154911218) - -Display驱动模型基于HDF驱动框架、Platform接口及OSAL接口开发,可以做到不区分OS(LiteOS、Linux)和芯片平台(Hi35xx、Hi38xx、V3S等),为LCD器件提供统一的驱动模型。 - -## 开发步骤 - -1. 添加LCD驱动相关的设备描述配置。 -2. 在SOC平台驱动适配层中适配对应的芯片平台驱动。 -3. 添加器件驱动,并在驱动入口函数Init中注册Panel驱动数据,驱动数据接口主要包括如下接口: - - LCD上下电 - - 根据LCD硬件连接,使用Platform接口层提供的GPIO操作接口操作对应LCD管脚,例如复位管脚、IOVCC管脚,上电时序参考LCD供应商提供的SPEC。 - - - 发送初始化序列 - - 根据LCD硬件接口,使用Platform接口层提供的I2C、SPI、MIPI等接口,下载LCD初始化序列,初始化参数序列可以参考LCD供应商提供的SPEC。 - - -4. 根据需求实现HDF框架其他接口,比如Release接口。 -5. 根据需求使用HDF框架可创建其他设备节点,用于业务逻辑或者调试功能。 - diff --git "a/zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\346\246\202\350\277\260.md" deleted file mode 100755 index ab5e824934e..00000000000 --- "a/zh-cn/device-dev/driver/LCD\345\274\200\345\217\221\346\246\202\350\277\260.md" +++ /dev/null @@ -1,46 +0,0 @@ -# LCD开发概述 - -- [简介](#section3781515122118) -- [接口说明](#section20280192712120) - -## 简介 - -LCD(Liquid Crystal Display)液晶显示驱动,对LCD进行上电,并通过接口初始化LCD内部寄存器,使LCD正常工作。Display驱动模型基于HDF( Hardware Driver Foundation)[驱动框架](HDF开发概述.md)开发,实现跨OS、跨平台,为LCD硬件提供上下电功能、发送初始化序列功能,使LCD进入正常的工作模式,显示芯片平台侧的图像数据,基于HDF驱动框架的Display驱动模型如[图1](#fig69138814229)。 - -**图 1** 基于HDF驱动框架的Display驱动模型 -![](figures/基于HDF驱动框架的Display驱动模型.png "基于HDF驱动框架的Display驱动模型") - -- **Display驱动模型介绍** - - Display驱动模型主要由平台驱动层、芯片平台适配层、LCD器件驱动层三部分组成。驱动模型基于HDF驱动框架开发,通过Platform层和OSAL层提供的接口,屏蔽内核形态的差异,使得器件驱动可以便利的迁移到不同OS及芯片平台。模型向上对接Display公共hal层,支撑HDI接口的实现,通过Display-HDI(Hardware Display Interface)对图形服务提供各类驱动能力接口。 - - (1)Display平台驱动层:通过HDF提供的IOService数据通道,与公共Hal层对接,集中接收并处理各类上层调用指令; - - (2)SOC平台驱动适配层:借助此SOC适配层,实现Display驱动和SOC侧驱动解耦,主要完成芯片平台相关的参数配置,并传递平台驱动层的调用到器件驱动层; - - (3)LCD器件驱动层:在器件驱动层中,主要实现和器件自身强相关的驱动适配接口,例如发送初始化序列、上下电、背光设置等。 - - 基于Display驱动模型开发LCD驱动,可以借助平台提供的各种能力及接口,较大程度的降低器件驱动的开发周期和难度,提升开发效率。 - - -## 接口说明 - -LCD接口通常可分为MIPI DSI接口、TTL接口和LVDS接口,常用的是MIPI DSI接口和TTL接口,下面对常用的MIPI DSI接口和TTL接口作简要介绍。 - -- MIPI DSI接口 - - **图 2** MIPI DSI接口 - ![](figures/MIPI-DSI接口.png "MIPI-DSI接口") - - MIPI DSI接口是MIPI(移动行业处理器接口)联盟定义的显示接口,主要用于移动终端显示屏接口,接口数据传输遵循MIPI协议,MIPI DSI接口为数据接口,传输图像数据,通常情况下MIPI DSI接口的控制信息以MIPI包形式通过MIPI DSI接口发送到对端IC,不需要额外的外设接口。 - -- TTL接口 - - **图 3** TTL接口 - ![](figures/TTL接口.png "TTL接口") - - TTL(Transistor Transistor Logic)即晶体管-晶体管逻辑,TTL电平信号由TTL器件产生,TTL器件是数字集成电路的一大门类,它采用双极型工艺制造,具有高速度、低功耗和品种多等特点。 - - TTL接口是并行方式传输数据的接口,有数据信号、时钟信号和控制信号(行同步、帧同步、数据有效信号等),在控制信号控制下完成数据传输。通常TTL接口的LCD,内部寄存器读写需要额外的外设接口,比如SPI接口、I2C接口等。 - - diff --git a/zh-cn/device-dev/driver/MIPI-DSI.md b/zh-cn/device-dev/driver/MIPI-DSI.md index 2dcbddcdd05..ae9363290a0 100755 --- a/zh-cn/device-dev/driver/MIPI-DSI.md +++ b/zh-cn/device-dev/driver/MIPI-DSI.md @@ -1,9 +1,554 @@ -# MIPI DSI +# MIPI DSI -- **[MIPI DSI概述](MIPI-DSI概述.md)** +- [概述](#section16806142183217) + - [接口说明](#section129611916132011) -- **[MIPI DSI使用指导](MIPI-DSI使用指导.md)** +- [使用指导](#section037231715335) + - [使用流程](#section49299119344) + - [获取MIPI-DSI操作句柄](#section5126155683811) + - [MIPI-DSI相应配置](#section201164274344) + - [发送/回读控制指令](#section199401342173415) + - [释放MIPI-DSI操作句柄](#section161011610357) -- **[MIPI DSI使用实例](MIPI-DSI使用实例.md)** +- [使用实例](#section17470126123520) +## 概述 + +- DSI(Display Serial Interface)是由移动行业处理器接口联盟(Mobile Industry Processor Interface \(MIPI\) Alliance)制定的规范,旨在降低移动设备中显示控制器的成本。它以串行的方式发送像素数据或指令给外设\(通常是LCD或者类似的显示设备\),或从外设中读取状态信息或像素信息;它定义了主机、图像数据源和目标设备之间的串行总线和通信协议。 + +- MIPI-DSI具备高速模式和低速模式两种工作模式,全部数据通道都可以用于单向的高速传输,但只有第一个数据通道才可用于低速双向传输,从属端的状态信息、像素等是通过该数据通道返回。时钟通道专用于在高速传输数据的过程中传输同步时钟信号。 +- 图1显示了简化的DSI接口。从概念上看,符合DSI的接口与基于DBI-2和DPI-2标准的接口具有相同的功能。它向外围设备传输像素或命令数据,并且可以从外围设备读取状态或像素信息。主要区别在于,DSI对所有像素数据、命令和事件进行序列化,而在传统接口中,这些像素数据、命令和事件通常需要附加控制信号才能在并行数据总线上传输。 + + **图 1** DSI发送、接收接口 + ![](figures/DSI发送-接收接口.png "DSI发送-接收接口") + + +### 接口说明 + +**表 1** MIPI-DSI API接口功能介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

描述

+

设置/获取当前MIPI-DSI相关配置

+

MipiDsiSetCfg

+

设置MIPI-DSI相关配置

+

MipiDsiGetCfg

+

获取当前MIPI-DSI相关配置

+

获取/释放MIPI-DSI操作句柄

+

MipiDsiOpen

+

获取MIPI-DSI操作句柄

+

MipiDsiClose

+

释放MIPI-DSI操作句柄

+

设置MIPI-DSI进入Low power模式/High speed模式

+

MipiDsiSetLpMode

+

设置MIPI-DSI进入Low power模式

+

MipiDsiSetHsMode

+

设置MIPI-DSI进入High speed模式

+

MIPI-DSI发送/回读指令

+

MipiDsiTx

+

MIPI-DSI发送相应指令的接口

+

MipiDsiRx

+

MIPI-DSI按期望长度回读的接口

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>本文涉及的所有接口,仅限内核态使用,不支持在用户态使用 + +## 使用指导 + +### 使用流程 + +使用MIPI-DSI的一般流程如[图2](#fig99821771782)所示。 + +**图 2** MIPI-DSI使用流程图 + + +![](figures/zh-cn_image_0000001123514210.png) + +### 获取MIPI-DSI操作句柄 + +在进行MIPI-DSI进行通信前,首先要调用MipiDsiOpen获取操作句柄,该函数会返回指定通道ID的操作句柄。 + +DevHandle MipiDsiOpen\(uint8\_t id\); + +**表 2** MipiDsiOpen的参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

id

+

MIPI DSI通道ID

+

返回值

+

返回值描述

+

NULL

+

获取失败

+

设备句柄

+

获取到指令通道的操作句柄, 类型为DevHandle

+
+ +假设系统中的MIPI-DSI通道为0,获取该通道操作句柄的示例如下: + +``` +DevHandle mipiDsiHandle = NULL; /* 设备句柄 */ +chnId = 0; /* MIPI-DSI通道ID */ + +/* 获取操作句柄 */ +mipiDsiHandle = MipiDsiOpen(chnId); +if (mipiDsiHandle == NULL) { + HDF_LOGE("MipiDsiOpen: failed\n"); + return; +} +``` + +### MIPI-DSI相应配置 + +- 写入MIPI-DSI配置 + +int32\_t MipiDsiSetCfg\(DevHandle handle, struct MipiCfg \*cfg\); + +**表 3** MipiDsiSetCfg的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

操作句柄

+

cfg

+

MIPI-DSI相应配置buf 指针

+

返回值

+

返回值描述

+

0

+

设置成功

+

负数

+

设置失败

+
+ +``` +int32_t ret; +struct MipiCfg cfg = {0}; + +/* 当前对接的屏幕配置如下 */ +cfg.lane = DSI_4_LANES; +cfg.mode = DSI_CMD_MODE; +cfg.burstMode = VIDEO_NON_BURST_MODE_SYNC_EVENTS; +cfg.format = FORMAT_RGB_24_BIT; +cfg.pixelClk = 174; +cfg.phyDataRate = 384; +cfg.timingInfo.hsaPixels = 50; +cfg.timingInfo.hbpPixels = 55; +cfg.timingInfo.hlinePixels = 1200; +cfg.timingInfo.yResLines = 1800; +cfg.timingInfo.vbpLines = 33; +cfg.timingInfo.vsaLines = 76; +cfg.timingInfo.vfpLines = 120; +cfg.timingInfo.xResPixels = 1342; +/* 写入配置数据 */ +ret = MipiDsiSetCfg(g_handle, &cfg); +if (ret != 0) { + HDF_LOGE("%s: SetMipiCfg fail! ret=%d\n", __func__, ret); + return -1; +} +``` + +- 获取当前MIPI-DSI的配置 + +int32\_t MipiDsiGetCfg\(DevHandle handle, struct MipiCfg \*cfg\); + +**表 4** MipiDsiGetCfg的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

操作句柄

+

cfg

+

MIPI-DSI相应配置buf 指针

+

返回值

+

返回值描述

+

0

+

获取成功

+

负数

+

获取失败

+
+ +``` +int32_t ret; +struct MipiCfg cfg; +memset(&cfg, 0, sizeof(struct MipiCfg)); +ret = MipiDsiGetCfg(g_handle, &cfg); +if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: GetMipiCfg fail!\n", __func__); + return HDF_FAILURE; +} +``` + +### 发送/回读控制指令 + +- 发送指令 + +int32\_t MipiDsiTx\(PalHandle handle, struct DsiCmdDesc \*cmd\); + +**表 5** MipiDsiTx的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

操作句柄

+

cmd

+

需要发送的指令数据指针

+

返回值

+

返回值描述

+

0

+

发送成功

+

负数

+

发送失败

+
+ +``` +int32_t ret; +struct DsiCmdDesc *cmd = OsalMemCalloc(sizeof(struct DsiCmdDesc)); +if (cmd == NULL) { + return HDF_FAILURE; +} +cmd->dtype = DTYPE_DCS_WRITE; +cmd->dlen = 1; +cmd->payload = OsalMemCalloc(sizeof(uint8_t)); +if (cmd->payload == NULL) { + HdfFree(cmd); + return HDF_FAILURE; +} +*(cmd->payload) = DTYPE_GEN_LWRITE; +MipiDsiSetLpMode(mipiHandle); +ret = MipiDsiTx(mipiHandle, cmd); +MipiDsiSetHsMode(mipiHandle); +if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: PalMipiDsiTx fail! ret=%d\n", __func__, ret); + HdfFree(cmd->payload); + HdfFree(cmd); + return HDF_FAILURE; +} +HdfFree(cmd->payload); +HdfFree(cmd); +``` + +- 回读指令 + +int32\_t MipiDsiRx\(DevHandle handle, struct DsiCmdDesc \*cmd, uint32\_t readLen, uint8\_t \*out\); + +**表 6** MipiDsiRx的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

操作句柄

+

cmd

+

需要回读的指令数据指针

+

readLen

+

期望回读的数据长度

+

out

+

回读的数据buf指针

+

返回值

+

返回值描述

+

0

+

获取成功

+

负数

+

获取失败

+
+ +``` +int32_t ret; +uint8_t readVal = 0; + +struct DsiCmdDesc *cmdRead = OsalMemCalloc(sizeof(struct DsiCmdDesc)); +if (cmdRead == NULL) { + return HDF_FAILURE; +} +cmdRead->dtype = DTYPE_DCS_READ; +cmdRead->dlen = 1; +cmdRead->payload = OsalMemCalloc(sizeof(uint8_t)); +if (cmdRead->payload == NULL) { + HdfFree(cmdRead); + return HDF_FAILURE; +} +*(cmdRead->payload) = DDIC_REG_STATUS; +MipiDsiSetLpMode(g_handle); +ret = MipiDsiRx(g_handle, cmdRead, sizeof(readVal), &readVal); +MipiDsiSetHsMode(g_handle); +if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: MipiDsiRx fail! ret=%d\n", __func__, ret); + HdfFree(cmdRead->payload); + HdfFree(cmdRead); + return HDF_FAILURE; +} +HdfFree(cmdRead->payload); +HdfFree(cmdRead); +``` + +### 释放MIPI-DSI操作句柄 + +MIPI-DSI使用完成之后,需要释放操作句柄,释放句柄的函数如下所示: + +void MipiDsiClose\(DevHandle handle\); + +该函数会释放掉由MipiDsiOpen申请的资源。 + +**表 7** MipiDsiClose的参数和返回值描述 + + + + + + + + + + +

参数

+

参数描述

+

handle

+

MIPI-DSI操作句柄

+
+ +``` +MipiDsiClose(mipiHandle); /* 释放掉MIPI-DSI操作句柄 */ +``` + +## 使用实例 + +MIPI-DSI完整的使用示例如下所示: + +``` +#include "hdf.h" +#include "mipi_dsi_if.h" + +void PalMipiDsiTestSample(void) +{ + uint8_t chnId; + int32_t ret; + DevHandle handle = NULL; + + /* 设备通道编号 */ + chnId = 0; + /* 获取操作句柄 */ + handle = MipiDsiOpen(chnId); + if (handle == NULL) { + HDF_LOGE("MipiDsiOpen: failed!\n"); + return; + } + /* 配置相应参数 */ + struct MipiCfg cfg = {0}; + cfg.lane = DSI_4_LANES; + cfg.mode = DSI_CMD_MODE; + cfg.burstMode = VIDEO_NON_BURST_MODE_SYNC_EVENTS; + cfg.format = FORMAT_RGB_24_BIT; + cfg.pixelClk = 174; + cfg.phyDataRate = 384; + cfg.timingInfo.hsaPixels = 50; + cfg.timingInfo.hbpPixels = 55; + cfg.timingInfo.hlinePixels = 1200; + cfg.timingInfo.yResLines = 1800; + cfg.timingInfo.vbpLines = 33; + cfg.timingInfo.vsaLines = 76; + cfg.timingInfo.vfpLines = 120; + cfg.timingInfo.xResPixels = 1342; + /* 写入配置数据 */ + ret = MipiDsiSetCfg(g_handle, &cfg); + if (ret != 0) { + HDF_LOGE("%s: SetMipiCfg fail! ret=%d\n", __func__, ret); + return; + } + /* 发送PANEL初始化指令 */ + struct DsiCmdDesc *cmd = OsalMemCalloc(sizeof(struct DsiCmdDesc)); + if (cmd == NULL) { + return; + } + cmd->dtype = DTYPE_DCS_WRITE; + cmd->dlen = 1; + cmd->payload = OsalMemCalloc(sizeof(uint8_t)); + if (cmd->payload == NULL) { + HdfFree(cmd); + return; + } + *(cmd->payload) = DTYPE_GEN_LWRITE; + MipiDsiSetLpMode(mipiHandle); + ret = MipiDsiTx(mipiHandle, cmd); + MipiDsiSetHsMode(mipiHandle); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: MipiDsiTx fail! ret=%d\n", __func__, ret); + HdfFree(cmd->payload); + HdfFree(cmd); + return; + } + HdfFree(cmd->payload); + HdfFree(cmd); + /* 回读panel状态寄存器 */ + uint8_t readVal = 0; + struct DsiCmdDesc *cmdRead = OsalMemCalloc(sizeof(struct DsiCmdDesc)); + if (cmdRead == NULL) { + return; + } + cmdRead->dtype = DTYPE_DCS_READ; + cmdRead->dlen = 1; + cmdRead->payload = OsalMemCalloc(sizeof(uint8_t)); + if (cmdRead->payload == NULL) { + HdfFree(cmdRead); + return; + } + *(cmdRead->payload) = DDIC_REG_STATUS; + MipiDsiSetLpMode(g_handle); + ret = MipiDsiRx(g_handle, cmdRead, sizeof(readVal), &readVal); + MipiDsiSetHsMode(g_handle); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: MipiDsiRx fail! ret=%d\n", __func__, ret); + HdfFree(cmdRead->payload); + HdfFree(cmdRead); + return; + } + HdfFree(cmdRead->payload); + HdfFree(cmdRead); + /* 释放MIPI DSI设备句柄 */ + MipiDsiClose(handle); +} +``` diff --git "a/zh-cn/device-dev/driver/MIPI-DSI\344\275\277\347\224\250\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/MIPI-DSI\344\275\277\347\224\250\345\256\236\344\276\213.md" deleted file mode 100755 index 77e9242f30b..00000000000 --- "a/zh-cn/device-dev/driver/MIPI-DSI\344\275\277\347\224\250\345\256\236\344\276\213.md" +++ /dev/null @@ -1,98 +0,0 @@ -# MIPI DSI使用实例 - -MIPI-DSI完整的使用示例如下所示: - -``` -#include "hdf.h" -#include "mipi_dsi_if.h" - -void PalMipiDsiTestSample(void) -{ - uint8_t chnId; - int32_t ret; - DevHandle handle = NULL; - - /* 设备通道编号 */ - chnId = 0; - /* 获取操作句柄 */ - handle = MipiDsiOpen(chnId); - if (handle == NULL) { - HDF_LOGE("MipiDsiOpen: failed!\n"); - return; - } - /* 配置相应参数 */ - struct MipiCfg cfg = {0}; - cfg.lane = DSI_4_LANES; - cfg.mode = DSI_CMD_MODE; - cfg.burstMode = VIDEO_NON_BURST_MODE_SYNC_EVENTS; - cfg.format = FORMAT_RGB_24_BIT; - cfg.pixelClk = 174; - cfg.phyDataRate = 384; - cfg.timingInfo.hsaPixels = 50; - cfg.timingInfo.hbpPixels = 55; - cfg.timingInfo.hlinePixels = 1200; - cfg.timingInfo.yResLines = 1800; - cfg.timingInfo.vbpLines = 33; - cfg.timingInfo.vsaLines = 76; - cfg.timingInfo.vfpLines = 120; - cfg.timingInfo.xResPixels = 1342; - /* 写入配置数据 */ - ret = MipiDsiSetCfg(g_handle, &cfg); - if (ret != 0) { - HDF_LOGE("%s: SetMipiCfg fail! ret=%d\n", __func__, ret); - return; - } - /* 发送PANEL初始化指令 */ - struct DsiCmdDesc *cmd = OsalMemCalloc(sizeof(struct DsiCmdDesc)); - if (cmd == NULL) { - return; - } - cmd->dtype = DTYPE_DCS_WRITE; - cmd->dlen = 1; - cmd->payload = OsalMemCalloc(sizeof(uint8_t)); - if (cmd->payload == NULL) { - HdfFree(cmd); - return; - } - *(cmd->payload) = DTYPE_GEN_LWRITE; - MipiDsiSetLpMode(mipiHandle); - ret = MipiDsiTx(mipiHandle, cmd); - MipiDsiSetHsMode(mipiHandle); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: MipiDsiTx fail! ret=%d\n", __func__, ret); - HdfFree(cmd->payload); - HdfFree(cmd); - return; - } - HdfFree(cmd->payload); - HdfFree(cmd); - /* 回读panel状态寄存器 */ - uint8_t readVal = 0; - struct DsiCmdDesc *cmdRead = OsalMemCalloc(sizeof(struct DsiCmdDesc)); - if (cmdRead == NULL) { - return; - } - cmdRead->dtype = DTYPE_DCS_READ; - cmdRead->dlen = 1; - cmdRead->payload = OsalMemCalloc(sizeof(uint8_t)); - if (cmdRead->payload == NULL) { - HdfFree(cmdRead); - return; - } - *(cmdRead->payload) = DDIC_REG_STATUS; - MipiDsiSetLpMode(g_handle); - ret = MipiDsiRx(g_handle, cmdRead, sizeof(readVal), &readVal); - MipiDsiSetHsMode(g_handle); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: MipiDsiRx fail! ret=%d\n", __func__, ret); - HdfFree(cmdRead->payload); - HdfFree(cmdRead); - return; - } - HdfFree(cmdRead->payload); - HdfFree(cmdRead); - /* 释放MIPI DSI设备句柄 */ - MipiDsiClose(handle); -} -``` - diff --git "a/zh-cn/device-dev/driver/MIPI-DSI\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/MIPI-DSI\344\275\277\347\224\250\346\214\207\345\257\274.md" deleted file mode 100755 index 58603da99a1..00000000000 --- "a/zh-cn/device-dev/driver/MIPI-DSI\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ /dev/null @@ -1,365 +0,0 @@ -# MIPI DSI使用指导 - -- [使用流程](#section8982671284) -- [获取MIPI-DSI操作句柄](#section57982569176) -- [MIPI-DSI相应配置](#section5935410201815) -- [发送/回读控制指令](#section611661316194) -- [释放MIPI-DSI操作句柄](#section217313211199) - -## 使用流程 - -使用MIPI-DSI的一般流程如[图1](#fig99821771782)所示。 - -**图 1** MIPI-DSI使用流程图 - - -![](figures/zh-cn_image_0000001072553354.png) - -## 获取MIPI-DSI操作句柄 - -在进行MIPI-DSI进行通信前,首先要调用MipiDsiOpen获取操作句柄,该函数会返回指定通道ID的操作句柄。 - -DevHandle MipiDsiOpen\(uint8\_t id\); - -**表 1** MipiDsiOpen的参数和返回值描述 - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

id

-

MIPI DSI通道ID

-

返回值

-

返回值描述

-

NULL

-

获取失败

-

设备句柄

-

获取到指令通道的操作句柄, 类型为DevHandle

-
- -假设系统中的MIPI-DSI通道为0,获取该通道操作句柄的示例如下: - -``` -DevHandle mipiDsiHandle = NULL; /* 设备句柄 */ -chnId = 0; /* MIPI-DSI通道ID */ - -/* 获取操作句柄 */ -mipiDsiHandle = MipiDsiOpen(chnId); -if (mipiDsiHandle == NULL) { - HDF_LOGE("MipiDsiOpen: failed\n"); - return; -} -``` - -## MIPI-DSI相应配置 - -- 写入MIPI-DSI配置 - -int32\_t MipiDsiSetCfg\(DevHandle handle, struct MipiCfg \*cfg\); - -**表 2** MipiDsiSetCfg的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

操作句柄

-

cfg

-

MIPI-DSI相应配置buf 指针

-

返回值

-

返回值描述

-

0

-

设置成功

-

负数

-

设置失败

-
- -``` -int32_t ret; -struct MipiCfg cfg = {0}; - -/* 当前对接的屏幕配置如下 */ -cfg.lane = DSI_4_LANES; -cfg.mode = DSI_CMD_MODE; -cfg.burstMode = VIDEO_NON_BURST_MODE_SYNC_EVENTS; -cfg.format = FORMAT_RGB_24_BIT; -cfg.pixelClk = 174; -cfg.phyDataRate = 384; -cfg.timingInfo.hsaPixels = 50; -cfg.timingInfo.hbpPixels = 55; -cfg.timingInfo.hlinePixels = 1200; -cfg.timingInfo.yResLines = 1800; -cfg.timingInfo.vbpLines = 33; -cfg.timingInfo.vsaLines = 76; -cfg.timingInfo.vfpLines = 120; -cfg.timingInfo.xResPixels = 1342; -/* 写入配置数据 */ -ret = MipiDsiSetCfg(g_handle, &cfg); -if (ret != 0) { - HDF_LOGE("%s: SetMipiCfg fail! ret=%d\n", __func__, ret); - return -1; -} -``` - -- 获取当前MIPI-DSI的配置 - -int32\_t MipiDsiGetCfg\(DevHandle handle, struct MipiCfg \*cfg\); - -**表 3** MipiDsiGetCfg的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

操作句柄

-

cfg

-

MIPI-DSI相应配置buf 指针

-

返回值

-

返回值描述

-

0

-

获取成功

-

负数

-

获取失败

-
- -``` -int32_t ret; -struct MipiCfg cfg; -memset(&cfg, 0, sizeof(struct MipiCfg)); -ret = MipiDsiGetCfg(g_handle, &cfg); -if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: GetMipiCfg fail!\n", __func__); - return HDF_FAILURE; -} -``` - -## 发送/回读控制指令 - -- 发送指令 - -int32\_t MipiDsiTx\(PalHandle handle, struct DsiCmdDesc \*cmd\); - -**表 4** MipiDsiTx的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

操作句柄

-

cmd

-

需要发送的指令数据指针

-

返回值

-

返回值描述

-

0

-

发送成功

-

负数

-

发送失败

-
- -``` -int32_t ret; -struct DsiCmdDesc *cmd = OsalMemCalloc(sizeof(struct DsiCmdDesc)); -if (cmd == NULL) { - return HDF_FAILURE; -} -cmd->dtype = DTYPE_DCS_WRITE; -cmd->dlen = 1; -cmd->payload = OsalMemCalloc(sizeof(uint8_t)); -if (cmd->payload == NULL) { - HdfFree(cmd); - return HDF_FAILURE; -} -*(cmd->payload) = DTYPE_GEN_LWRITE; -MipiDsiSetLpMode(mipiHandle); -ret = MipiDsiTx(mipiHandle, cmd); -MipiDsiSetHsMode(mipiHandle); -if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: PalMipiDsiTx fail! ret=%d\n", __func__, ret); - HdfFree(cmd->payload); - HdfFree(cmd); - return HDF_FAILURE; -} -HdfFree(cmd->payload); -HdfFree(cmd); -``` - -- 回读指令 - -int32\_t MipiDsiRx\(DevHandle handle, struct DsiCmdDesc \*cmd, uint32\_t readLen, uint8\_t \*out\); - -**表 5** MipiDsiRx的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

操作句柄

-

cmd

-

需要回读的指令数据指针

-

readLen

-

期望回读的数据长度

-

out

-

回读的数据buf指针

-

返回值

-

返回值描述

-

0

-

获取成功

-

负数

-

获取失败

-
- -``` -int32_t ret; -uint8_t readVal = 0; - -struct DsiCmdDesc *cmdRead = OsalMemCalloc(sizeof(struct DsiCmdDesc)); -if (cmdRead == NULL) { - return HDF_FAILURE; -} -cmdRead->dtype = DTYPE_DCS_READ; -cmdRead->dlen = 1; -cmdRead->payload = OsalMemCalloc(sizeof(uint8_t)); -if (cmdRead->payload == NULL) { - HdfFree(cmdRead); - return HDF_FAILURE; -} -*(cmdRead->payload) = DDIC_REG_STATUS; -MipiDsiSetLpMode(g_handle); -ret = MipiDsiRx(g_handle, cmdRead, sizeof(readVal), &readVal); -MipiDsiSetHsMode(g_handle); -if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: MipiDsiRx fail! ret=%d\n", __func__, ret); - HdfFree(cmdRead->payload); - HdfFree(cmdRead); - return HDF_FAILURE; -} -HdfFree(cmdRead->payload); -HdfFree(cmdRead); -``` - -## 释放MIPI-DSI操作句柄 - -MIPI-DSI使用完成之后,需要释放操作句柄,释放句柄的函数如下所示: - -void MipiDsiClose\(DevHandle handle\); - -该函数会释放掉由MipiDsiOpen申请的资源。 - -**表 6** MipiDsiClose的参数和返回值描述 - - - - - - - - - - -

参数

-

参数描述

-

handle

-

MIPI-DSI操作句柄

-
- -``` -MipiDsiClose(mipiHandle); /* 释放掉MIPI-DSI操作句柄 */ -``` - diff --git "a/zh-cn/device-dev/driver/MIPI-DSI\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/MIPI-DSI\346\246\202\350\277\260.md" deleted file mode 100755 index 5af73287eb9..00000000000 --- "a/zh-cn/device-dev/driver/MIPI-DSI\346\246\202\350\277\260.md" +++ /dev/null @@ -1,84 +0,0 @@ -# MIPI DSI概述 - -- [简介](#section1369320102013) -- [接口说明](#section6577545192317) - -## 简介 - -- DSI(Display Serial Interface)是由移动行业处理器接口联盟(Mobile Industry Processor Interface \(MIPI\) Alliance)制定的规范,旨在降低移动设备中显示控制器的成本。它以串行的方式发送像素数据或指令给外设\(通常是LCD或者类似的显示设备\),或从外设中读取状态信息或像素信息;它定义了主机、图像数据源和目标设备之间的串行总线和通信协议。 - -- MIPI-DSI具备高速模式和低速模式两种工作模式,全部数据通道都可以用于单向的高速传输,但只有第一个数据通道才可用于低速双向传输,从属端的状态信息、像素等是通过该数据通道返回。时钟通道专用于在高速传输数据的过程中传输同步时钟信号。 - - 图1显示了简化的DSI接口。从概念上看,符合DSI的接口与基于DBI-2和DPI-2标准的接口具有相同的功能。它向外围设备传输像素或命令数据,并且可以从外围设备读取状态或像素信息。主要区别在于,DSI对所有像素数据、命令和事件进行序列化,而在传统接口中,这些像素数据、命令和事件通常需要附加控制信号才能在并行数据总线上传输。 - - **图 1** DSI发送、接收接口 - ![](figures/DSI发送-接收接口.png "DSI发送-接收接口") - - - -## 接口说明 - -**表 1** MIPI-DSI API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

描述

-

设置/获取当前MIPI-DSI相关配置

-

MipiDsiSetCfg

-

设置MIPI-DSI相关配置

-

MipiDsiGetCfg

-

获取当前MIPI-DSI相关配置

-

获取/释放MIPI-DSI操作句柄

-

MipiDsiOpen

-

获取MIPI-DSI操作句柄

-

MipiDsiClose

-

释放MIPI-DSI操作句柄

-

设置MIPI-DSI进入Low power模式/High speed模式

-

MipiDsiSetLpMode

-

设置MIPI-DSI进入Low power模式

-

MipiDsiSetHsMode

-

设置MIPI-DSI进入High speed模式

-

MIPI-DSI发送/回读指令

-

MipiDsiTx

-

MIPI-DSI发送相应指令的接口

-

MipiDsiRx

-

MIPI-DSI按期望长度回读的接口

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->本文涉及的所有接口,仅限内核态使用,不支持在用户态使用 - diff --git a/zh-cn/device-dev/driver/RTC.md b/zh-cn/device-dev/driver/RTC.md index de745a39f9b..ea85e741844 100755 --- a/zh-cn/device-dev/driver/RTC.md +++ b/zh-cn/device-dev/driver/RTC.md @@ -1,9 +1,944 @@ -# RTC +# RTC -- **[RTC概述](RTC概述.md)** +- [概述](#section104842041574) + - [接口说明](#section3373340142215) -- **[RTC使用指导](RTC使用指导.md)** +- [使用指导](#section20636145604113) + - [使用流程](#section16919828134215) + - [创建RTC设备句柄](#section1131212144310) + - [销毁RTC设备句柄](#section10744117144314) + - [注册RTC定时报警回调函数](#section14839440184320) + - [操作RTC](#section161927578433) -- **[RTC使用实例](RTC使用实例.md)** +- [使用实例](#section1186111020456) +## 概述 + +RTC\(real-time clock\)为操作系统中的实时时钟设备,为操作系统提供精准的实时时间和定时报警功能。当设备下电后,通过外置电池供电,RTC继续记录操作系统时间;设备上电后,RTC提供实时时钟给操作系统,确保断电后系统时间的连续性。 + +### 接口说明 + +**表 1** RTC设备API接口功能介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

描述

+

RTC句柄操作

+

RtcOpen

+

获取RTC设备驱动句柄

+

RtcClose

+

释放RTC设备驱动句柄

+

RTC时间操作接口

+

RtcReadTime

+

读RTC时间信息,包括年、月、星期、日、时、分、秒、毫秒

+

RtcWriteTime

+

写RTC时间信息,包括年、月、星期、日、时、分、秒、毫秒

+

RTC报警操作接口

+

RtcReadAlarm

+

读RTC报警时间信息

+

RtcWriteAlarm

+

写RTC报警时间信息

+

RtcRegisterAlarmCallback

+

注册报警超时回调函数

+

RtcAlarmInterruptEnable

+

使能/去使能RTC报警中断

+

RTC配置操作

+

RtcGetFreq

+

读RTC外接晶振频率

+

RtcSetFreq

+

配置RTC外接晶振频率

+

RtcReset

+

RTC复位

+

读写用户定义寄存器

+

RtcReadReg

+

读用户自定义寄存器

+

RtcWriteReg

+

写用户自定义寄存器

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 + +## 使用指导 + +### 使用流程 + +在操作系统启动过程中,驱动管理模块根据配置文件加载RTC驱动,RTC驱动会检测RTC器件并初始化驱动。 + +使用RTC设备的一般流程如[图1](#fig166181128151112)所示。 + +**图 1** RTC设备使用流程图 + + +![](figures/zh-cn_image_0000001123675706.png) + +### 创建RTC设备句柄 + +RTC驱动加载成功后,驱动开发者使用驱动框架提供的查询接口并调用RTC设备驱动接口。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>当前操作系统支持一个RTC设备。 + +DevHandle RtcOpen\(void\); + +**表 2** RtcOpen参数和返回值描述 + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

void

+

NA

+

返回值

+

返回值描述

+

handle

+

操作成功返回 指针类型

+

NULL

+

操作失败

+
+ +``` +DevHandle handle = NULL; + +/* 获取RTC句柄 */ +handle = RtcOpen(); +if (handle == NULL) { + /* 错误处理 */ +} +``` + +### 销毁RTC设备句柄 + +销毁RTC设备句柄,系统释放对应的资源。 + +void RtcClose\(DevHandle handle\); + +**表 3** RtcClose参数描述 + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+
+ +``` +/* 销毁RTC句柄 */ +RtcClose(handle); +``` + +### 注册RTC定时报警回调函数 + +系统启动后需要注册RTC定时报警回调函数,报警超时后触发回调函数。 + +int32\_t RtcRegisterAlarmCallback\(DevHandle handle, enum RtcAlarmIndex alarmIndex, RtcAlarmCallback cb\); + +**表 4** RtcRegisterAlarmCallback参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

alarmIndex

+

报警索引

+

cb

+

定时报警回调函数

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +注册RTC\_ALARM\_INDEX\_A的定时报警处理函数, 示例如下: + +``` +/* 用户注册RTC定时报警回调函数的方法 */ +int32_t RtcAlarmACallback(enum RtcAlarmIndex alarmIndex) +{ + if (alarmIndex == RTC_ALARM_INDEX_A) { + /* 报警A的处理 */ + } else if (alarmIndex == RTC_ALARM_INDEX_B) { + /* 报警B的处理 */ + } else { + /* 错误处理 */ + } + return 0; +} +int32_t ret; +/* 注册报警A的定时回调函数 */ +ret = RtcRegisterAlarmCallback(handle, RTC_ALARM_INDEX_A, RtcAlarmACallback); +if (ret != 0) { + /* 错误处理 */ +} +``` + +### 操作RTC + +- 读取RTC时间。 + +系统从RTC读取时间信息,包括年、月、星期、日、时、分、秒、毫秒,则可以通过以下函数完成: + +int32\_t RtcReadTime\(DevHandle handle, struct RtcTime \*time\); + +**表 5** RtcReadTime参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

time

+

RTC读取时间信息,包括年、月、星期、日、时、分、秒、毫秒

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +``` +int32_t ret; +struct RtcTime tm; + +/* 系统从RTC读取时间信息 */ +ret = RtcReadTime(handle, &tm); +if (ret != 0) { + /* 错误处理 */ +} +``` + +- 设置RTC时间 + +设置RTC时间,则可以通过以下函数完成: + +int32\_t RtcWriteTime\(DevHandle handle, struct RtcTime \*time\); + +**表 6** RtcWriteTime参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

time

+

写RTC时间信息,包括年、月、星期、日、时、分、秒、毫秒

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>RTC起始时间为UTC 1970/01/01 Thursday 00:00:00,年的最大取值按照用户器件手册要求计算配置,星期不用配置。 + +``` +int32_t ret; +struct RtcTime tm; + +/* 设置RTC时间为 UTC 2020/01/01 00:59:00 .000 */ +tm.year = 2020; +tm.month = 01; +tm.day = 01; +tm.hour= 00; +tm.minute = 59; +tm.second = 00; +tm.millisecond = 0; +/* 写RTC时间信息 */ +ret = RtcWriteTime(handle, &tm); +if (ret != 0) { + /* 错误处理 */ +} +``` + +- 读取RTC报警时间 + +如果需要读取定时报警时间,则可以通过以下函数完成: + +int32\_t RtcReadAlarm\(DevHandle handle, enum RtcAlarmIndex alarmIndex, struct RtcTime \*time\); + +**表 7** RtcReadAlarm参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

alarmIndex

+

报警索引

+

time

+

RTC报警时间信息,包括年、月、星期、日、时、分、秒、毫秒

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +``` +int32_t ret; +struct RtcTime alarmTime; + +/* 读RTC_ALARM_INDEX_A索引的RTC定时报警时间信息 */ +ret = RtcReadAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); +if (ret != 0) { + /* 错误处理 */ +} +``` + +- 设置RTC报警时间 + +根据报警索引设置RTC报警时间,通过以下函数完成: + +int32\_t RtcWriteAlarm\(DevHandle handle, enum RtcAlarmIndex alarmIndex, struct RtcTime \*time\); + +**表 8** RtcWriteAlarm参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

alarmIndex

+

报警索引

+

time

+

RTC报警时间信息,包括年、月、星期、日、时、分、秒、毫秒

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>RTC起始时间为UTC 1970/01/01 Thursday 00:00:00,年的最大取值按照用户器件手册要求计算配置,星期不用配置。 + +``` +int32_t ret; +struct RtcTime alarmTime; + +/* 设置RTC报警时间为2020/01/01 00:59:59 .000 */ +alarmTime.year = 2020; +alarmTime.month = 01; +alarmTime.day = 01; +alarmTime.hour = 00; +alarmTime.minute = 59; +alarmTime.second = 59; +alarmTime.millisecond = 0; +/* 设置RTC_ALARM_INDEX_A索引的定时报警时间 */ +ret = RtcWriteAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); +if (ret != 0) { + /* 错误处理 */ +} +``` + +- 设置定时报警中断使能或去使能 + +在启动报警操作前,需要先设置报警中断使能,报警超时后会触发告警回调函数,可以通过以下函数完成: + +int32\_t RtcAlarmInterruptEnable\(DevHandle handle, enum RtcAlarmIndex alarmIndex, uint8\_t enable\); + +**表 9** RtcAlarmInterruptEnable参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

alarmIndex

+

报警索引

+

enable

+

RTC报警中断配置,1:使能,0:去使能

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +``` +int32_t ret; + +/* 设置RTC报警中断使能 */ +ret = RtcAlarmInterruptEnable(handle, RTC_ALARM_INDEX_A, 1); +if (ret != 0) { + /* 错误处理 */ +} +``` + +- 读取RTC外频 + +读取RTC外接晶体振荡频率,可以通过以下函数完成: + +int32\_t RtcGetFreq\(DevHandle handle, uint32\_t \*freq\); + +**表 10** RtcGetFreq参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

freq

+

RTC的外接晶体振荡频率,单位(HZ)

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +``` +int32_t ret; +uint32_t freq = 0; + +/* 读取RTC外接晶体振荡频率 */ +ret = RtcGetFreq(handle, &freq); +if (ret != 0) { + /* 错误处理 */ +} +``` + +- 配置RTC外频 + +配置RTC外接晶体振荡频率,可以通过以下函数完成: + +int32\_t RtcSetFreq\(DevHandle handle, uint32\_t freq\); + +**表 11** RtcSetFreq参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

freq

+

RTC的外接晶体振荡频率,单位(HZ)

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +``` +int32_t ret; +uint32_t freq = 32768; /* 32768 Hz */ + +/* 设置RTC外接晶体振荡频率,注意按照器件手册要求配置RTC外频 */ +ret = RtcSetFreq(handle, freq); +if (ret != 0) { + /* 错误处理 */ +} +``` + +- 复位RTC + +复位RTC,复位RTC后各配置寄存器恢复默认值,可以通过以下函数完成: + +int32\_t RtcReset\(DevHandle handle\); + +**表 12** RtcReset参数和返回值描述 + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +``` +int32_t ret; + +/* 复位RTC,复位RTC后各配置寄存器恢复默认值 */ +ret = RtcReset(handle); +if (ret != 0) { + /* 错误处理 */ +} +``` + +- 读取RTC自定义寄存器配置 + +按照用户定义的寄存器索引,读取对应的寄存器配置,一个索引对应一字节的配置值,通过以下函数完成: + +int32\_t RtcReadReg\(DevHandle handle, uint8\_t usrDefIndex, uint8\_t \*value\); + +**表 13** RtcReadReg参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

usrDefIndex

+

用户定义的寄存器对应索引

+

value

+

寄存器值

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +``` +int32_t ret; +uint8_t usrDefIndex = 0; /* 定义0索引对应用户定义的第一个寄存器*/ +uint8_t value = 0; + +/* 按照用户定义的寄存器索引,读取对应的寄存器配置,一个索引对应一字节的配置值 */ +ret = RtcReadReg(handle, usrDefIndex, &value); +if (ret != 0) { + /* 错误处理 */ +} +``` + +- 设置RTC自定义寄存器配置 + +按照用户定义的寄存器索引,设置对应的寄存器配置,一个索引对应一字节的配置值,通过以下函数完成: + +int32\_t RtcWriteReg\(DevHandle handle, uint8\_t usrDefIndex, uint8\_t value\); + +**表 14** RtcWriteReg参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

RTC设备句柄

+

usrDefIndex

+

用户定义的寄存器对应索引

+

value

+

寄存器值

+

返回值

+

返回值描述

+

0

+

操作成功

+

负数

+

操作失败

+
+ +``` +int32_t ret; +uint8_t usrDefIndex = 0; /* 定义0索引对应用户定义第一个寄存器*/ +uint8_t value = 0x10; + +/* 按照用户的定义的寄存器索引,设置对应的寄存器配置,一个索引对应一字节的配置值 */ +ret = RtcWriteReg(handle, usrDefIndex, value); +if (ret != 0) { + /* 错误处理 */ +} +``` + +## 使用实例 + +本实例提供RTC接口的完整使用流程: + +1. 系统启动,驱动管理模块会识别系统当前的RTC器件; +2. 驱动管理模块完成RTC设备的初始化和设备创建; +3. 用户通过不同API,对该RTC设备进行对应的操作; +4. 关闭RTC设备,释放设备资源。 + +示例如下: + +``` +#include "rtc_if.h" +int32_t RtcAlarmACallback(enum RtcAlarmIndex alarmIndex) +{ + if (alarmIndex == RTC_ALARM_INDEX_A) { + /* 报警A的处理 */ + printf("RTC Alarm A callback function\n\r"); + } else if (alarmIndex == RTC_ALARM_INDEX_B) { + /* 报警B的处理 */ + printf("RTC Alarm B callback function\n\r"); + } else { + /* 错误处理 */ + } + return 0; +} + +void RtcTestSample(void) +{ + int32_t ret; + struct RtcTime tm; + struct RtcTime alarmTime; + uint32_t freq; + DevHandle handle = NULL; + + /* 获取RTC设备句柄 */ + handle = RtcOpen(); + if (handle == NULL) { + /* 错误处理 */ + } + /* 注册报警A的定时回调函数 */ + ret = RtcRegisterAlarmCallback(handle, RTC_ALARM_INDEX_A, RtcAlarmACallback); + if (ret != 0) { + /* 错误处理 */ + } + /* 设置RTC外接晶体振荡频率,注意按照器件手册要求配置RTC外频 */ + freq = 32768; /* 32768 Hz */ + ret = RtcSetFreq(handle, freq); + if (ret != 0) { + /* 错误处理 */ + } + /* 设置RTC报警中断使能 */ + ret = RtcAlarmInterruptEnable(handle, RTC_ALARM_INDEX_A, 1); + if (ret != 0) { + /* 错误处理 */ + } + /* 设置RTC时间为2020/01/01 00:00:10 .990 */ + tm.year = 2020; + tm.month = 01; + tm.day = 01; + tm.hour= 0; + tm.minute = 0; + tm.second = 10; + tm.millisecond = 990; + /* 写RTC时间信息 */ + ret = RtcWriteTime(handle, &tm); + if (ret != 0) { + /* 错误处理 */ + } + /* 设置RTC报警时间为2020/01/01 00:00:30 .100 */ + alarmTime.year = 2020; + alarmTime.month = 01; + alarmTime.day = 01; + alarmTime.hour = 0; + alarmTime.minute = 0; + alarmTime.second = 30; + alarmTime.millisecond = 100; + /* 设置RTC_ALARM_INDEX_A索引定时报警时间信息, 定时时间到后会打印"RTC Alarm A callback function" */ + ret = RtcWriteAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); + if (ret != 0) { + /* 错误处理 */ + } + + /* 读取RTC实时时间 */ + ret = RtcReadTime(handle, &tm); + if (ret != 0) { + /* 错误处理 */ + } + sleep(5) + printf("RTC read time:\n\r"); + printf("year-month-date-weekday hour:minute:second .millisecond %04u-%02u-%02u-%u %02u:%02u:%02u .%03u", + tm.year, tm.month, tm.day, tm.weekday, tm.hour, tm.minute, tm.second, tm.millisecond); + /* 销毁RTC设备句柄 */ + RtcClose(handle); +} +``` diff --git "a/zh-cn/device-dev/driver/RTC\344\275\277\347\224\250\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/RTC\344\275\277\347\224\250\345\256\236\344\276\213.md" deleted file mode 100755 index d413efda41b..00000000000 --- "a/zh-cn/device-dev/driver/RTC\344\275\277\347\224\250\345\256\236\344\276\213.md" +++ /dev/null @@ -1,97 +0,0 @@ -# RTC使用实例 - -本实例提供RTC接口的完整使用流程: - -1. 系统启动,驱动管理模块会识别系统当前的RTC器件; -2. 驱动管理模块完成RTC设备的初始化和设备创建; -3. 用户通过不同API,对该RTC设备进行对应的操作; -4. 关闭RTC设备,释放设备资源。 - -示例如下: - -``` -#include "rtc_if.h" -int32_t RtcAlarmACallback(enum RtcAlarmIndex alarmIndex) -{ - if (alarmIndex == RTC_ALARM_INDEX_A) { - /* 报警A的处理 */ - printf("RTC Alarm A callback function\n\r"); - } else if (alarmIndex == RTC_ALARM_INDEX_B) { - /* 报警B的处理 */ - printf("RTC Alarm B callback function\n\r"); - } else { - /* 错误处理 */ - } - return 0; -} - -void RtcTestSample(void) -{ - int32_t ret; - struct RtcTime tm; - struct RtcTime alarmTime; - uint32_t freq; - DevHandle handle = NULL; - - /* 获取RTC设备句柄 */ - handle = RtcOpen(); - if (handle == NULL) { - /* 错误处理 */ - } - /* 注册报警A的定时回调函数 */ - ret = RtcRegisterAlarmCallback(handle, RTC_ALARM_INDEX_A, RtcAlarmACallback); - if (ret != 0) { - /* 错误处理 */ - } - /* 设置RTC外接晶体振荡频率,注意按照器件手册要求配置RTC外频 */ - freq = 32768; /* 32768 Hz */ - ret = RtcSetFreq(handle, freq); - if (ret != 0) { - /* 错误处理 */ - } - /* 设置RTC报警中断使能 */ - ret = RtcAlarmInterruptEnable(handle, RTC_ALARM_INDEX_A, 1); - if (ret != 0) { - /* 错误处理 */ - } - /* 设置RTC时间为2020/01/01 00:00:10 .990 */ - tm.year = 2020; - tm.month = 01; - tm.day = 01; - tm.hour= 0; - tm.minute = 0; - tm.second = 10; - tm.millisecond = 990; - /* 写RTC时间信息 */ - ret = RtcWriteTime(handle, &tm); - if (ret != 0) { - /* 错误处理 */ - } - /* 设置RTC报警时间为2020/01/01 00:00:30 .100 */ - alarmTime.year = 2020; - alarmTime.month = 01; - alarmTime.day = 01; - alarmTime.hour = 0; - alarmTime.minute = 0; - alarmTime.second = 30; - alarmTime.millisecond = 100; - /* 设置RTC_ALARM_INDEX_A索引定时报警时间信息, 定时时间到后会打印"RTC Alarm A callback function" */ - ret = RtcWriteAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); - if (ret != 0) { - /* 错误处理 */ - } - - /* 读取RTC实时时间 */ - ret = RtcReadTime(handle, &tm); - if (ret != 0) { - /* 错误处理 */ - } - sleep(5) - printf("RTC read time:\n\r"); - printf("year-month-date-weekday hour:minute:second .millisecond %04u-%02u-%02u-%u %02u:%02u:%02u .%03u", - tm.year, tm.month, tm.day, tm.weekday, tm.hour, tm.minute, tm.second, tm.millisecond); - /* 销毁RTC设备句柄 */ - RtcClose(handle); -} -``` - diff --git "a/zh-cn/device-dev/driver/RTC\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/RTC\344\275\277\347\224\250\346\214\207\345\257\274.md" deleted file mode 100755 index 45065165bd2..00000000000 --- "a/zh-cn/device-dev/driver/RTC\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ /dev/null @@ -1,741 +0,0 @@ -# RTC使用指导 - -- [使用流程](#section620515765714) -- [创建RTC设备句柄](#section0702183665711) -- [销毁RTC设备句柄](#section639962619542) -- [注册RTC定时报警回调函数](#section123631358135713) -- [操作RTC](#section11091522125812) - -## 使用流程 - -在操作系统启动过程中,驱动管理模块根据配置文件加载RTC驱动,RTC驱动会检测RTC器件并初始化驱动。 - -使用RTC设备的一般流程如[图1](#fig166181128151112)所示。 - -**图 1** RTC设备使用流程图 - - -![](figures/zh-cn_image_0000001054728498.png) - -## 创建RTC设备句柄 - -RTC驱动加载成功后,驱动开发者使用驱动框架提供的查询接口并调用RTC设备驱动接口。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->当前操作系统支持一个RTC设备。 - -DevHandle RtcOpen\(void\); - -**表 1** RtcOpen参数和返回值描述 - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

void

-

NA

-

返回值

-

返回值描述

-

handle

-

操作成功返回 指针类型

-

NULL

-

操作失败

-
- -``` -DevHandle handle = NULL; - -/* 获取RTC句柄 */ -handle = RtcOpen(); -if (handle == NULL) { - /* 错误处理 */ -} -``` - -## 销毁RTC设备句柄 - -销毁RTC设备句柄,系统释放对应的资源。 - -void RtcClose\(DevHandle handle\); - -**表 2** RtcClose参数描述 - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-
- -``` -/* 销毁RTC句柄 */ -RtcClose(handle); -``` - -## 注册RTC定时报警回调函数 - -系统启动后需要注册RTC定时报警回调函数,报警超时后触发回调函数。 - -int32\_t RtcRegisterAlarmCallback\(DevHandle handle, enum RtcAlarmIndex alarmIndex, RtcAlarmCallback cb\); - -**表 3** RtcRegisterAlarmCallback参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

alarmIndex

-

报警索引

-

cb

-

定时报警回调函数

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- -注册RTC\_ALARM\_INDEX\_A的定时报警处理函数, 示例如下: - -``` -/* 用户注册RTC定时报警回调函数的方法 */ -int32_t RtcAlarmACallback(enum RtcAlarmIndex alarmIndex) -{ - if (alarmIndex == RTC_ALARM_INDEX_A) { - /* 报警A的处理 */ - } else if (alarmIndex == RTC_ALARM_INDEX_B) { - /* 报警B的处理 */ - } else { - /* 错误处理 */ - } - return 0; -} -int32_t ret; -/* 注册报警A的定时回调函数 */ -ret = RtcRegisterAlarmCallback(handle, RTC_ALARM_INDEX_A, RtcAlarmACallback); -if (ret != 0) { - /* 错误处理 */ -} -``` - -## 操作RTC - -- 读取RTC时间。 - -系统从RTC读取时间信息,包括年、月、星期、日、时、分、秒、毫秒,则可以通过以下函数完成: - -int32\_t RtcReadTime\(DevHandle handle, struct RtcTime \*time\); - -**表 4** RtcReadTime参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

time

-

RTC读取时间信息,包括年、月、星期、日、时、分、秒、毫秒

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- -``` -int32_t ret; -struct RtcTime tm; - -/* 系统从RTC读取时间信息 */ -ret = RtcReadTime(handle, &tm); -if (ret != 0) { - /* 错误处理 */ -} -``` - -- 设置RTC时间 - -设置RTC时间,则可以通过以下函数完成: - -int32\_t RtcWriteTime\(DevHandle handle, struct RtcTime \*time\); - -**表 5** RtcWriteTime参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

time

-

写RTC时间信息,包括年、月、星期、日、时、分、秒、毫秒

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->RTC起始时间为UTC 1970/01/01 Thursday 00:00:00,年的最大取值按照用户器件手册要求计算配置,星期不用配置。 - -``` -int32_t ret; -struct RtcTime tm; - -/* 设置RTC时间为 UTC 2020/01/01 00:59:00 .000 */ -tm.year = 2020; -tm.month = 01; -tm.day = 01; -tm.hour= 00; -tm.minute = 59; -tm.second = 00; -tm.millisecond = 0; -/* 写RTC时间信息 */ -ret = RtcWriteTime(handle, &tm); -if (ret != 0) { - /* 错误处理 */ -} -``` - -- 读取RTC报警时间 - -如果需要读取定时报警时间,则可以通过以下函数完成: - -int32\_t RtcReadAlarm\(DevHandle handle, enum RtcAlarmIndex alarmIndex, struct RtcTime \*time\); - -**表 6** RtcReadAlarm参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

alarmIndex

-

报警索引

-

time

-

RTC报警时间信息,包括年、月、星期、日、时、分、秒、毫秒

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- -``` -int32_t ret; -struct RtcTime alarmTime; - -/* 读RTC_ALARM_INDEX_A索引的RTC定时报警时间信息 */ -ret = RtcReadAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); -if (ret != 0) { - /* 错误处理 */ -} -``` - -- 设置RTC报警时间 - -根据报警索引设置RTC报警时间,通过以下函数完成: - -int32\_t RtcWriteAlarm\(DevHandle handle, enum RtcAlarmIndex alarmIndex, struct RtcTime \*time\); - -**表 7** RtcWriteAlarm参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

alarmIndex

-

报警索引

-

time

-

RTC报警时间信息,包括年、月、星期、日、时、分、秒、毫秒

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->RTC起始时间为UTC 1970/01/01 Thursday 00:00:00,年的最大取值按照用户器件手册要求计算配置,星期不用配置。 - -``` -int32_t ret; -struct RtcTime alarmTime; - -/* 设置RTC报警时间为2020/01/01 00:59:59 .000 */ -alarmTime.year = 2020; -alarmTime.month = 01; -alarmTime.day = 01; -alarmTime.hour = 00; -alarmTime.minute = 59; -alarmTime.second = 59; -alarmTime.millisecond = 0; -/* 设置RTC_ALARM_INDEX_A索引的定时报警时间 */ -ret = RtcWriteAlarm(handle, RTC_ALARM_INDEX_A, &alarmTime); -if (ret != 0) { - /* 错误处理 */ -} -``` - -- 设置定时报警中断使能或去使能 - -在启动报警操作前,需要先设置报警中断使能,报警超时后会触发告警回调函数,可以通过以下函数完成: - -int32\_t RtcAlarmInterruptEnable\(DevHandle handle, enum RtcAlarmIndex alarmIndex, uint8\_t enable\); - -**表 8** RtcAlarmInterruptEnable参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

alarmIndex

-

报警索引

-

enable

-

RTC报警中断配置,1:使能,0:去使能

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- -``` -int32_t ret; - -/* 设置RTC报警中断使能 */ -ret = RtcAlarmInterruptEnable(handle, RTC_ALARM_INDEX_A, 1); -if (ret != 0) { - /* 错误处理 */ -} -``` - -- 读取RTC外频 - -读取RTC外接晶体振荡频率,可以通过以下函数完成: - -int32\_t RtcGetFreq\(DevHandle handle, uint32\_t \*freq\); - -**表 9** RtcGetFreq参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

freq

-

RTC的外接晶体振荡频率,单位(HZ)

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- -``` -int32_t ret; -uint32_t freq = 0; - -/* 读取RTC外接晶体振荡频率 */ -ret = RtcGetFreq(handle, &freq); -if (ret != 0) { - /* 错误处理 */ -} -``` - -- 配置RTC外频 - -配置RTC外接晶体振荡频率,可以通过以下函数完成: - -int32\_t RtcSetFreq\(DevHandle handle, uint32\_t freq\); - -**表 10** RtcSetFreq参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

freq

-

RTC的外接晶体振荡频率,单位(HZ)

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- -``` -int32_t ret; -uint32_t freq = 32768; /* 32768 Hz */ - -/* 设置RTC外接晶体振荡频率,注意按照器件手册要求配置RTC外频 */ -ret = RtcSetFreq(handle, freq); -if (ret != 0) { - /* 错误处理 */ -} -``` - -- 复位RTC - -复位RTC,复位RTC后各配置寄存器恢复默认值,可以通过以下函数完成: - -int32\_t RtcReset\(DevHandle handle\); - -**表 11** RtcReset参数和返回值描述 - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- -``` -int32_t ret; - -/* 复位RTC,复位RTC后各配置寄存器恢复默认值 */ -ret = RtcReset(handle); -if (ret != 0) { - /* 错误处理 */ -} -``` - -- 读取RTC自定义寄存器配置 - -按照用户定义的寄存器索引,读取对应的寄存器配置,一个索引对应一字节的配置值,通过以下函数完成: - -int32\_t RtcReadReg\(DevHandle handle, uint8\_t usrDefIndex, uint8\_t \*value\); - -**表 12** RtcReadReg参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

usrDefIndex

-

用户定义的寄存器对应索引

-

value

-

寄存器值

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- -``` -int32_t ret; -uint8_t usrDefIndex = 0; /* 定义0索引对应用户定义的第一个寄存器*/ -uint8_t value = 0; - -/* 按照用户定义的寄存器索引,读取对应的寄存器配置,一个索引对应一字节的配置值 */ -ret = RtcReadReg(handle, usrDefIndex, &value); -if (ret != 0) { - /* 错误处理 */ -} -``` - -- 设置RTC自定义寄存器配置 - -按照用户定义的寄存器索引,设置对应的寄存器配置,一个索引对应一字节的配置值,通过以下函数完成: - -int32\_t RtcWriteReg\(DevHandle handle, uint8\_t usrDefIndex, uint8\_t value\); - -**表 13** RtcWriteReg参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

RTC设备句柄

-

usrDefIndex

-

用户定义的寄存器对应索引

-

value

-

寄存器值

-

返回值

-

返回值描述

-

0

-

操作成功

-

负数

-

操作失败

-
- -``` -int32_t ret; -uint8_t usrDefIndex = 0; /* 定义0索引对应用户定义第一个寄存器*/ -uint8_t value = 0x10; - -/* 按照用户的定义的寄存器索引,设置对应的寄存器配置,一个索引对应一字节的配置值 */ -ret = RtcWriteReg(handle, usrDefIndex, value); -if (ret != 0) { - /* 错误处理 */ -} -``` - diff --git "a/zh-cn/device-dev/driver/RTC\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/RTC\346\246\202\350\277\260.md" deleted file mode 100755 index 19b903394cd..00000000000 --- "a/zh-cn/device-dev/driver/RTC\346\246\202\350\277\260.md" +++ /dev/null @@ -1,103 +0,0 @@ -# RTC概述 - -- [简介](#section104842041574) -- [接口说明](#section16892932155715) - -## 简介 - -RTC\(real-time clock\)为操作系统中的实时时钟设备,为操作系统提供精准的实时时间和定时报警功能。当设备下电后,通过外置电池供电,RTC继续记录操作系统时间;设备上电后,RTC提供实时时钟给操作系统,确保断电后系统时间的连续性。 - -## 接口说明 - -**表 1** RTC设备API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

描述

-

RTC句柄操作

-

RtcOpen

-

获取RTC设备驱动句柄

-

RtcClose

-

释放RTC设备驱动句柄

-

RTC时间操作接口

-

RtcReadTime

-

读RTC时间信息,包括年、月、星期、日、时、分、秒、毫秒

-

RtcWriteTime

-

写RTC时间信息,包括年、月、星期、日、时、分、秒、毫秒

-

RTC报警操作接口

-

RtcReadAlarm

-

读RTC报警时间信息

-

RtcWriteAlarm

-

写RTC报警时间信息

-

RtcRegisterAlarmCallback

-

注册报警超时回调函数

-

RtcAlarmInterruptEnable

-

使能/去使能RTC报警中断

-

RTC配置操作

-

RtcGetFreq

-

读RTC外接晶振频率

-

RtcSetFreq

-

配置RTC外接晶振频率

-

RtcReset

-

RTC复位

-

读写用户定义寄存器

-

RtcReadReg

-

读用户自定义寄存器

-

RtcWriteReg

-

写用户自定义寄存器

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 - diff --git a/zh-cn/device-dev/driver/Readme-CN.md b/zh-cn/device-dev/driver/Readme-CN.md index f86ff0362eb..c4960d522fa 100755 --- a/zh-cn/device-dev/driver/Readme-CN.md +++ b/zh-cn/device-dev/driver/Readme-CN.md @@ -8,66 +8,19 @@ - [配置管理](配置管理.md) - [HDF开发实例](HDF开发实例.md) -- [驱动平台](驱动平台.md) +- [平台驱动](平台驱动.md) - [GPIO](GPIO.md) - - [GPIO概述](GPIO概述.md) - - [GPIO使用指导](GPIO使用指导.md) - - [GPIO使用实例](GPIO使用实例.md) - - [I2C](I2C.md) - - [I2C概述](I2C概述.md) - - [I2C使用指导](I2C使用指导.md) - - [I2C使用实例](I2C使用实例.md) - - [RTC](RTC.md) - - [RTC概述](RTC概述.md) - - [RTC使用指导](RTC使用指导.md) - - [RTC使用实例](RTC使用实例.md) - - [SDIO](SDIO.md) - - [SDIO概述](SDIO概述.md) - - [SDIO使用指导](SDIO使用指导.md) - - [SDIO使用实例](SDIO使用实例.md) - - [SPI](SPI.md) - - [SPI概述](SPI概述.md) - - [SPI使用指导](SPI使用指导.md) - - [SPI使用实例](SPI使用实例.md) - - [UART](UART.md) - - [UART概述](UART概述.md) - - [UART使用指导](UART使用指导.md) - - [UART使用实例](UART使用实例.md) - - [WATCHDOG](WATCHDOG.md) - - [看门狗概述](看门狗概述.md) - - [看门狗使用指导](看门狗使用指导.md) - - [看门狗使用实例](看门狗使用实例.md) - - [MIPI DSI](MIPI-DSI.md) - - [MIPI DSI概述](MIPI-DSI概述.md) - - [MIPI DSI使用指导](MIPI-DSI使用指导.md) - - [MIPI DSI使用实例](MIPI-DSI使用实例.md) - [外设](外设.md) - [LCD](LCD.md) - - [LCD开发概述](LCD开发概述.md) - - [LCD开发指导](LCD开发指导.md) - - [LCD开发实例](LCD开发实例.md) - - [TOUCHSCREEN](TOUCHSCREEN.md) - - [Touchscreen开发概述](Touchscreen开发概述.md) - - [Touchscreen开发指导](Touchscreen开发指导.md) - - [Touchscreen开发实例](Touchscreen开发实例.md) - - [SENSOR](SENSOR.md) - - [传感器驱动开发概述](传感器驱动开发概述.md) - - [传感器驱动开发指导](传感器驱动开发指导.md) - - [传感器驱动开发实例](传感器驱动开发实例.md) - - [传感器驱动测试指导](传感器驱动测试指导.md) - - [WLAN](WLAN.md) - - [WLAN开发概述](WLAN开发概述.md) - - [WLAN开发指导](WLAN开发指导.md) - - [WLAN开发实例](WLAN开发实例.md) diff --git a/zh-cn/device-dev/driver/SDIO.md b/zh-cn/device-dev/driver/SDIO.md index 192dd216b5d..482037c6ff6 100755 --- a/zh-cn/device-dev/driver/SDIO.md +++ b/zh-cn/device-dev/driver/SDIO.md @@ -1,9 +1,1068 @@ -# SDIO +# SDIO -- **[SDIO概述](SDIO概述.md)** +- [概述](#section1155271783811) + - [接口说明](#section08064247248) -- **[SDIO使用指导](SDIO使用指导.md)** +- [使用指导](#section1878939192515) + - [使用流程](#section1490685512255) + - [打开SDIO控制器](#section10782428132616) + - [独占HOST](#section11263172312715) + - [使能SDIO设备](#section17861486271) + - [注册SDIO中断](#section521213262286) + - [进行SDIO通信](#section85661522153420) + - [释放SDIO中断](#section1683449352) + - [去使能SDIO设备](#section15379324143611) + - [释放HOST](#section536018263713) + - [关闭SDIO控制器](#section4752739183716) -- **[SDIO使用实例](SDIO使用实例.md)** +- [使用实例](#section376910122382) +## 概述 + +- SDIO是安全数字输入输出接口(Secure Digital Input and Output)的缩写,是从SD内存卡接口的基础上演化出来的一种外设接口。SDIO接口兼容以前的SD内存卡,并且可以连接支持SDIO接口的设备。 +- SDIO的应用比较广泛,目前,有许多手机都支持SDIO功能,并且很多SDIO外设也被开发出来,使得手机外接外设更加容易。常见的SDIO外设有WLAN、GPS、CAMERA、蓝牙等。 +- SDIO总线有两端,其中一端是主机端(HOST),另一端是设备端(DEVICE)。所有的通信都是由HOST端发出命令开始的,在DEVICE端只要能解析HOST的命令,就可以同HOST进行通信了。SDIO的HOST可以连接多个DEVICE,如下图所示: + + - CLK信号:HOST给DEVICE的时钟信号。 + - VDD信号:电源信号。 + - VSS信号:Ground信号。 + - D0-3信号:4条数据线,其中,DAT1信号线复用为中断线,在1BIT模式下DAT0用来传输数据,在4BIT模式下DAT0-DAT3用来传输数据。 + - CMD信号:用于HOST发送命令和DEVICE回复响应。 + + **图 1** SDIO的HOST-DEVICE连接示意图 + + + ![](figures/zh-cn_image_0000001054280608.png) + +- SDIO接口定义了操作SDIO的通用方法集合,包括打开/关闭SDIO控制器、独占/释放HOST、使能/去使能设备、申请/释放中断、读写、获取/设置公共信息等。 + +### 接口说明 + +**表 1** SDIO驱动API接口功能介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

描述

+

SDIO设备打开/关闭接口

+

SdioOpen

+

打开指定总线号的SDIO控制器

+

SdioClose

+

关闭SDIO控制器

+

SDIO读写接口

+

SdioReadBytes

+

从指定地址开始,增量读取指定长度的数据

+

SdioWriteBytes

+

从指定地址开始,增量写入指定长度的数据

+

SdioReadBytesFromFixedAddr

+

从固定地址读取指定长度的数据

+

SdioWriteBytesToFixedAddr

+

向固定地址写入指定长度的数据

+

SdioReadBytesFromFunc0

+

从SDIO function 0的指定地址空间读取指定长度的数据

+

SdioWriteBytesToFunc0

+

向SDIO function 0的指定地址空间写入指定长度的数据

+

SDIO设置块大小接口

+

SdioSetBlockSize

+

设置块的大小

+

SDIO获取/设置公共信息接口

+

SdioGetCommonInfo

+

获取公共信息

+

SdioSetCommonInfo

+

设置公共信息

+

SDIO刷新数据接口

+

SdioFlushData

+

刷新数据

+

SDIO独占/释放HOST接口

+

SdioClaimHost

+

独占Host

+

SdioReleaseHost

+

释放Host

+

SDIO使能/去使能功能设备接口

+

SdioEnableFunc

+

使能SDIO功能设备

+

SdioDisableFunc

+

去使能SDIO功能设备

+

SDIO申请/释放中断接口

+

SdioClaimIrq

+

申请中断

+

SdioReleaseIrq

+

释放中断

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>本文涉及的所有接口,目前只支持在内核态使用,不支持在用户态使用。 + +## 使用指导 + +### 使用流程 + +使用SDIO的一般流程如[图2](#fig1343742311264)所示。 + +**图 2** SDIO使用流程图 + + +![](figures/zh-cn_image_0000001123540984.png) + +### 打开SDIO控制器 + +在使用SDIO进行通信前,首先要调用SdioOpen获取SDIO控制器的设备句柄,该函数会返回指定总线号的SDIO控制器的设备句柄。 + +DevHandle SdioOpen\(int16\_t mmcBusNum, struct SdioFunctionConfig \*config\); + +**表 2** SdioOpen函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

mmcBusNum

+

总线号

+

config

+

SDIO功能配置信息

+

返回值

+

返回值描述

+

NULL

+

获取SDIO控制器的设备句柄失败

+

设备句柄

+

SDIO控制器的设备句柄

+
+ +打开SDIO控制器的示例如下: + +``` +DevHandle handle = NULL; +struct SdioFunctionConfig config; +config.funcNr = 1; +config.vendorId = 0x123; +config.deviceId = 0x456; +/* 打开总线号为1的SDIO控制器 */ +handle = SdioOpen(1, &config); +if (handle == NULL) { + HDF_LOGE("SdioOpen: failed!\n"); +} +``` + +### 独占HOST + +获取到SDIO控制器的设备句柄之后,需要先独占HOST才能进行SDIO后续的一系列操作,独占HOST函数如下所示: + +void SdioClaimHost\(DevHandle handle\); + +**表 3** SdioClaimHost函数的参数描述 + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+
+ +独占HOST示例如下: + +``` +SdioClaimHost(handle); /* 独占HOST */ +``` + +### 使能SDIO设备 + +在访问寄存器之前,需要先使能SDIO设备,使能SDIO设备的函数如下所示: + +int32\_t SdioEnableFunc\(DevHandle handle\); + +**表 4** SdioEnableFunc函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

返回值

+

返回值描述

+

0

+

SDIO使能成功

+

负数

+

SDIO使能失败

+
+ +使能SDIO设备的示例如下: + +``` +int32_t ret; +/* 使能SDIO设备 */ +ret = SdioEnableFunc(handle); +if (ret != 0) { + HDF_LOGE("SdioEnableFunc: failed, ret %d\n", ret); +} +``` + +### 注册SDIO中断 + +在通信之前,还需要注册SDIO中断,注册SDIO中断函数如下图所示: + +int32\_t SdioClaimIrq\(DevHandle handle, SdioIrqHandler \*handler\); + +**表 5** SdioClaimIrq函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

handler

+

中断服务函数指针

+

返回值

+

返回值描述

+

0

+

注册中断成功

+

负数

+

注册中断失败

+
+ +注册SDIO中的示例如下: + +``` +/* 中断服务函数需要根据各自平台的情况去实现 */ +static void SdioIrqFunc(void *data) +{ + if (data == NULL) { + HDF_LOGE("SdioIrqFunc: data is NULL.\n"); + return; + } + /* 需要开发者自行添加具体实现 */ +} + +int32_t ret; +/* 注册SDIO中断 */ +ret = SdioClaimIrq(handle, SdioIrqFunc); +if (ret != 0) { + HDF_LOGE("SdioClaimIrq: failed, ret %d\n", ret); +} +``` + +### 进行SDIO通信 + +- 向SDIO设备增量写入指定长度的数据 + +对应的接口函数如下所示: + +int32\_t SdioWriteBytes\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); + +**表 6** SdioWriteBytes函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

data

+

待写入数据的指针

+

addr

+

待写入数据的起始地址

+

size

+

待写入数据的长度

+

返回值

+

返回值描述

+

0

+

SDIO写数据成功

+

负数

+

SDIO写数据失败

+
+ +向SDIO设备增量写入指定长度的数据的示例如下: + +``` +int32_t ret; +uint8_t wbuff[] = {1,2,3,4,5}; +uint32_t addr = 0x100 + 0x09; +/* 向SDIO设备起始地址0x109,增量写入5个字节的数据 */ +ret = SdioWriteBytes(handle, wbuff, addr, sizeof(wbuff) / sizeof(wbuff[0])); +if (ret != 0) { + HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); +} +``` + +- 从SDIO设备增量读取指定长度的数据 + +对应的接口函数如下所示: + +int32\_t SdioReadBytes\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); + +**表 7** SdioReadBytes函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

data

+

接收读取数据的指针

+

addr

+

待读取数据的起始地址

+

size

+

待读取数据的长度

+

返回值

+

返回值描述

+

0

+

SDIO读数据成功

+

负数

+

SDIO读数据失败

+
+ +从SDIO设备增量读取指定长度的数据的示例如下: + +``` +int32_t ret; +uint8_t rbuff[5] = {0}; +uint32_t addr = 0x100 + 0x09; +/* 从SDIO设备起始地址0x109,增量读取5个字节的数据 */ +ret = SdioReadBytes(handle, rbuff, addr, 5); +if (ret != 0) { + HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); +} +``` + +- 向SDIO设备的固定地址写入指定长度的数据 + + 对应的接口函数如下所示: + + int32\_t SdioWriteBytesToFixedAddr\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size, uint32\_t scatterLen\); + + **表 8** SdioWriteBytesToFixedAddr函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

data

+

待写入数据的指针

+

addr

+

待写入数据的固定地址

+

size

+

待写入数据的长度

+

scatterLen

+

集散表的长度。如果该字段不为0,则data为集散表类型。

+

返回值

+

返回值描述

+

0

+

SDIO写数据成功

+

负数

+

SDIO写数据失败

+
+ + 向SDIO设备的固定地址写入指定长度的数据的示例如下: + + ``` + int32_t ret; + uint8_t wbuff[] = {1,2,3,4,5}; + uint32_t addr = 0x100 + 0x09; + /* 向SDIO设备固定地址0x109写入5个字节的数据 */ + ret = SdioWriteBytesToFixedAddr(handle, wbuff, addr, sizeof(wbuff) / sizeof(wbuff[0]), 0); + if (ret != 0) { + HDF_LOGE("SdioWriteBytesToFixedAddr: failed, ret %d\n", ret); + } + ``` + +- 从SDIO设备的固定地址读取指定长度的数据 + + 对应的接口函数如下所示: + + int32\_t SdioReadBytesFromFixedAddr\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size, uint32\_t scatterLen\); + + **表 9** SdioReadBytesFromFixedAddr函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

data

+

接收读取数据的指针

+

addr

+

待读取数据的起始地址

+

size

+

待读取数据的长度

+

scatterLen

+

集散表的长度。如果该字段不为0,则data为集散表类型。

+

返回值

+

返回值描述

+

0

+

SDIO读数据成功

+

负数

+

SDIO读数据失败

+
+ + 从SDIO设备的固定地址读取指定长度的数据的示例如下: + + ``` + int32_t ret; + uint8_t rbuff[5] = {0}; + uint32_t addr = 0x100 + 0x09; + /* 从SDIO设备固定地址0x109中读取5个字节的数据 */ + ret = SdioReadBytesFromFixedAddr(handle, rbuff, addr, 5, 0); + if (ret != 0) { + HDF_LOGE("SdioReadBytesFromFixedAddr: failed, ret %d\n", ret); + } + ``` + + +- 向SDIO function 0的指定地址空间写入指定长度的数据 + +当前只支持写入一个字节的数据,对应的接口函数如下所示: + +int32\_t SdioWriteBytesToFunc0\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); + +**表 10** SdioWriteBytesToFunc0函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

data

+

待写入数据的指针

+

addr

+

待写入数据的起始地址

+

size

+

待写入数据的长度

+

返回值

+

返回值描述

+

0

+

SDIO写数据成功

+

负数

+

SDIO写数据失败

+
+ +向SDIO function 0的指定地址空间写入指定长度的数据的示例如下: + +``` +int32_t ret; +uint8_t wbuff = 1; +/* 向SDIO function 0地址0x2中写入1字节的数据 */ +ret = SdioWriteBytesToFunc0(handle, &wbuff, 0x2, 1); +if (ret != 0) { + HDF_LOGE("SdioWriteBytesToFunc0: failed, ret %d\n", ret); +} +``` + +- 从SDIO function 0的指定地址空间读取指定长度的数据 + +当前只支持读取一个字节的数据,对应的接口函数如下所示: + +int32\_t SdioReadBytesFromFunc0\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); + +**表 11** SdioReadBytesFromFunc0函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

data

+

接收读取数据的指针

+

addr

+

待读取数据的起始地址

+

size

+

待读取数据的长度

+

返回值

+

返回值描述

+

0

+

SDIO读数据成功

+

负数

+

SDIO读数据失败

+
+ +从SDIO function 0的指定地址空间读取指定长度的数据的示例如下: + +``` +int32_t ret; +uint8_t rbuff; +/* 从SDIO function 0设备地址0x2中读取1字节的数据 */ +ret = SdioReadBytesFromFunc0(handle, &rbuff, 0x2, 1); +if (ret != 0) { + HDF_LOGE("SdioReadBytesFromFunc0: failed, ret %d\n", ret); +} +``` + +### 释放SDIO中断 + +通信完成之后,需要释放SDIO中断,函数如下所示: + +int32\_t SdioReleaseIrq\(DevHandle handle\); + +**表 12** SdioReleaseIrq函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

返回值

+

返回值描述

+

0

+

释放SDIO中断成功

+

负数

+

释放SDIO中断失败

+
+ +释放SDIO中断的示例如下: + +``` +int32_t ret; +/* 释放SDIO中断 */ +ret = SdioReleaseIrq(handle); +if (ret != 0) { + HDF_LOGE("SdioReleaseIrq: failed, ret %d\n", ret); +} +``` + +### 去使能SDIO设备 + +通信完成之后,还需要去使能SDIO设备,函数如下所示: + +int32\_t SdioDisableFunc\(DevHandle handle\); + +**表 13** SdioDisableFunc函数的参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+

返回值

+

返回值描述

+

0

+

去使能SDIO设备成功

+

负数

+

去使能SDIO设备失败

+
+ +去使能SDIO设备的示例如下: + +``` +int32_t ret; +/* 去使能SDIO设备 */ +ret = SdioDisableFunc(handle); +if (ret != 0) { + HDF_LOGE("SdioDisableFunc: failed, ret %d\n", ret); +} +``` + +### 释放HOST + +通信完成之后,还需要释放去HOST,函数如下所示: + +void SdioReleaseHost\(DevHandle handle\); + +**表 14** SdioReleaseHost函数的参数描述 + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+
+ +释放HOST的示例如下: + +``` +SdioReleaseHost(handle); /* 释放HOST */ +``` + +### 关闭SDIO控制器 + +SDIO通信完成之后,最后需要关闭SDIO控制器,函数如下所示: + +void SdioClose\(DevHandle handle\); + +该函数会释放掉申请的资源。 + +**表 15** SdioClose函数的参数描述 + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SDIO控制器的设备句柄

+
+ +关闭SDIO控制器的示例如下: + +``` +SdioClose(handle); /* 关闭SDIO控制器 */ +``` + +## 使用实例 + +SDIO设备完整的使用示例如下所示,首先打开总线号为1的SDIO控制器,然后独占HOST、使能设备、注册中断,接着进行SDIO通信(读写等),通信完成之后,释放中断、去使能设备、释放HOST,最后关闭SDIO控制器。 + +``` +#include "hdf_log.h" +#include "sdio_if.h" + +#define TEST_FUNC_NUM 1 /* 本测试用例中,使用编号为1的I/O function */ +#define TEST_FBR_BASE_ADDR 0x100 /* 编号为1的I/O function的FBR基地址 */ +#define TEST_ADDR_OFFSET 9 /* 本测试用例中,需要读写的寄存器的地址偏移 */ +#define TEST_DATA_LEN 3 /* 本测试用例中,读写数据的长度 */ +#define TEST_BLOCKSIZE 2 /* 本测试用例中,数据块的大小,单位字节 */ + +/* 中断服务函数,需要根据各自平台的情况去实现 */ +static void SdioIrqFunc(void *data) +{ + if (data == NULL) { + HDF_LOGE("SdioIrqFunc: data is NULL.\n"); + return; + } + /* 需要开发者自行添加具体的实现 */ +} + +void SdioTestSample(void) +{ + int32_t ret; + DevHandle handle = NULL; + uint8_t data[TEST_DATA_LEN] = {0}; + struct SdioFunctionConfig config = {1, 0x123, 0x456}; + uint8_t val; + uint32_t addr; + + /* 打开总线号为1的SDIO设备 */ + handle = SdioOpen(1, &config); + if (handle == NULL) { + HDF_LOGE("SdioOpen: failed!\n"); + return; + } + /* 独占HOST */ + SdioClaimHost(handle); + /* 使能SDIO设备 */ + ret = SdioEnableFunc(handle); + if (ret != 0) { + HDF_LOGE("SdioEnableFunc: failed, ret %d\n", ret); + goto ENABLE_ERR; + } + /* 注册中断 */ + ret = SdioClaimIrq(handle, SdioIrqFunc); + if (ret != 0) { + HDF_LOGE("SdioClaimIrq: failed, ret %d\n", ret); + goto CLAIM_IRQ_ERR; + } + /* 设置块大小为2字节 */ + ret = SdioSetBlockSize(handle, TEST_BLOCKSIZE); + if (ret != 0) { + HDF_LOGE("SdioSetBlockSize: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* 从SDIO设备增量地址读取3字节的数据 */ + addr = TEST_FBR_BASE_ADDR * TEST_FUNC_NUM + TEST_ADDR_OFFSET; + ret = SdioReadBytes(handle, data, addr, TEST_DATA_LEN); + if (ret != 0) { + HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* 向SDIO设备增量地址写入3字节的数据 */ + ret = SdioWriteBytes(handle, data, addr, TEST_DATA_LEN); + if (ret != 0) { + HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* 从SDIO设备读取1字节的数据 */ + ret = SdioReadBytes(handle, &val, addr, 1); + if (ret != 0) { + HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* 向SDIO设备写入1字节的数据 */ + ret = SdioWriteBytes(handle, &val, addr, 1); + if (ret != 0) { + HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* 从SDIO设备固定地址读取3字节的数据 */ + ret = SdioReadBytesFromFixedAddr(handle, data, addr, TEST_DATA_LEN, 0); + if (ret != 0) { + HDF_LOGE("SdioReadBytesFromFixedAddr: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* 向SDIO设备固定地址写入1字节的数据 */ + ret = SdioWriteBytesToFixedAddr(handle, data, addr, 1, 0); + if (ret != 0) { + HDF_LOGE("SdioWriteBytesToFixedAddr: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* 从SDIO function 0读取1字节的数据 */ + addr = 0x02; + ret = SdioReadBytesFromFunc0(handle, &val, addr, 1); + if (ret != 0) { + HDF_LOGE("SdioReadBytesFromFunc0: failed, ret %d\n", ret); + goto COMM_ERR; + } + /* 向SDIO function 0写入1字节的数据 */ + ret = SdioWriteBytesToFunc0(handle, &val, addr, 1); + if (ret != 0) { + HDF_LOGE("SdioWriteBytesToFunc0: failed, ret %d\n", ret); + goto COMM_ERR; + } +COMM_ERR: + /* 释放中断 */ + ret = SdioReleaseIrq(handle); + if (ret != 0) { + HDF_LOGE("SdioReleaseIrq: failed, ret %d\n", ret); + } +CLAIM_IRQ_ERR: + /* 去使能SDIO设备 */ + ret = SdioDisableFunc(handle); + if (ret != 0) { + HDF_LOGE("SdioDisableFunc: failed, ret %d\n", ret); + } +ENABLE_ERR: + /* 释放HOST */ + SdioReleaseHost(handle); + /* 关闭SDIO设备 */ + SdioClose(handle); +} +``` diff --git "a/zh-cn/device-dev/driver/SDIO\344\275\277\347\224\250\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/SDIO\344\275\277\347\224\250\345\256\236\344\276\213.md" deleted file mode 100755 index 18ddb74593b..00000000000 --- "a/zh-cn/device-dev/driver/SDIO\344\275\277\347\224\250\345\256\236\344\276\213.md" +++ /dev/null @@ -1,129 +0,0 @@ -# SDIO使用实例 - -SDIO设备完整的使用示例如下所示,首先打开总线号为1的SDIO控制器,然后独占HOST、使能设备、注册中断,接着进行SDIO通信(读写等),通信完成之后,释放中断、去使能设备、释放HOST,最后关闭SDIO控制器。 - -``` -#include "hdf_log.h" -#include "sdio_if.h" - -#define TEST_FUNC_NUM 1 /* 本测试用例中,使用编号为1的I/O function */ -#define TEST_FBR_BASE_ADDR 0x100 /* 编号为1的I/O function的FBR基地址 */ -#define TEST_ADDR_OFFSET 9 /* 本测试用例中,需要读写的寄存器的地址偏移 */ -#define TEST_DATA_LEN 3 /* 本测试用例中,读写数据的长度 */ -#define TEST_BLOCKSIZE 2 /* 本测试用例中,数据块的大小,单位字节 */ - -/* 中断服务函数,需要根据各自平台的情况去实现 */ -static void SdioIrqFunc(void *data) -{ - if (data == NULL) { - HDF_LOGE("SdioIrqFunc: data is NULL.\n"); - return; - } - /* 需要开发者自行添加具体的实现 */ -} - -void SdioTestSample(void) -{ - int32_t ret; - DevHandle handle = NULL; - uint8_t data[TEST_DATA_LEN] = {0}; - struct SdioFunctionConfig config = {1, 0x123, 0x456}; - uint8_t val; - uint32_t addr; - - /* 打开总线号为1的SDIO设备 */ - handle = SdioOpen(1, &config); - if (handle == NULL) { - HDF_LOGE("SdioOpen: failed!\n"); - return; - } - /* 独占HOST */ - SdioClaimHost(handle); - /* 使能SDIO设备 */ - ret = SdioEnableFunc(handle); - if (ret != 0) { - HDF_LOGE("SdioEnableFunc: failed, ret %d\n", ret); - goto ENABLE_ERR; - } - /* 注册中断 */ - ret = SdioClaimIrq(handle, SdioIrqFunc); - if (ret != 0) { - HDF_LOGE("SdioClaimIrq: failed, ret %d\n", ret); - goto CLAIM_IRQ_ERR; - } - /* 设置块大小为2字节 */ - ret = SdioSetBlockSize(handle, TEST_BLOCKSIZE); - if (ret != 0) { - HDF_LOGE("SdioSetBlockSize: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* 从SDIO设备增量地址读取3字节的数据 */ - addr = TEST_FBR_BASE_ADDR * TEST_FUNC_NUM + TEST_ADDR_OFFSET; - ret = SdioReadBytes(handle, data, addr, TEST_DATA_LEN); - if (ret != 0) { - HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* 向SDIO设备增量地址写入3字节的数据 */ - ret = SdioWriteBytes(handle, data, addr, TEST_DATA_LEN); - if (ret != 0) { - HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* 从SDIO设备读取1字节的数据 */ - ret = SdioReadBytes(handle, &val, addr, 1); - if (ret != 0) { - HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* 向SDIO设备写入1字节的数据 */ - ret = SdioWriteBytes(handle, &val, addr, 1); - if (ret != 0) { - HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* 从SDIO设备固定地址读取3字节的数据 */ - ret = SdioReadBytesFromFixedAddr(handle, data, addr, TEST_DATA_LEN, 0); - if (ret != 0) { - HDF_LOGE("SdioReadBytesFromFixedAddr: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* 向SDIO设备固定地址写入1字节的数据 */ - ret = SdioWriteBytesToFixedAddr(handle, data, addr, 1, 0); - if (ret != 0) { - HDF_LOGE("SdioWriteBytesToFixedAddr: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* 从SDIO function 0读取1字节的数据 */ - addr = 0x02; - ret = SdioReadBytesFromFunc0(handle, &val, addr, 1); - if (ret != 0) { - HDF_LOGE("SdioReadBytesFromFunc0: failed, ret %d\n", ret); - goto COMM_ERR; - } - /* 向SDIO function 0写入1字节的数据 */ - ret = SdioWriteBytesToFunc0(handle, &val, addr, 1); - if (ret != 0) { - HDF_LOGE("SdioWriteBytesToFunc0: failed, ret %d\n", ret); - goto COMM_ERR; - } -COMM_ERR: - /* 释放中断 */ - ret = SdioReleaseIrq(handle); - if (ret != 0) { - HDF_LOGE("SdioReleaseIrq: failed, ret %d\n", ret); - } -CLAIM_IRQ_ERR: - /* 去使能SDIO设备 */ - ret = SdioDisableFunc(handle); - if (ret != 0) { - HDF_LOGE("SdioDisableFunc: failed, ret %d\n", ret); - } -ENABLE_ERR: - /* 释放HOST */ - SdioReleaseHost(handle); - /* 关闭SDIO设备 */ - SdioClose(handle); -} -``` - diff --git "a/zh-cn/device-dev/driver/SDIO\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/SDIO\344\275\277\347\224\250\346\214\207\345\257\274.md" deleted file mode 100755 index fd65e6de6ad..00000000000 --- "a/zh-cn/device-dev/driver/SDIO\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ /dev/null @@ -1,787 +0,0 @@ -# SDIO使用指导 - -- [使用流程](#section1962415610383) -- [打开SDIO控制器](#section814751015461) -- [独占HOST](#section49274582455) -- [使能SDIO设备](#section1431520410489) -- [注册SDIO中断](#section3662781537) -- [进行SDIO通信](#section391941913484) -- [释放SDIO中断](#section56205204481) -- [去使能SDIO设备](#section181181621124815) -- [释放HOST](#section657117215486) -- [关闭SDIO控制器](#section1898172114818) - -## 使用流程 - -使用SDIO的一般流程如[图1](SPI使用指导.md#fig23885455594)所示。 - -**图 1** SDIO使用流程图 - - -![](figures/zh-cn_image_0000001054440624.png) - -## 打开SDIO控制器 - -在使用SDIO进行通信前,首先要调用SdioOpen获取SDIO控制器的设备句柄,该函数会返回指定总线号的SDIO控制器的设备句柄。 - -DevHandle SdioOpen\(int16\_t mmcBusNum, struct SdioFunctionConfig \*config\); - -**表 1** SdioOpen函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

mmcBusNum

-

总线号

-

config

-

SDIO功能配置信息

-

返回值

-

返回值描述

-

NULL

-

获取SDIO控制器的设备句柄失败

-

设备句柄

-

SDIO控制器的设备句柄

-
- -打开SDIO控制器的示例如下: - -``` -DevHandle handle = NULL; -struct SdioFunctionConfig config; -config.funcNr = 1; -config.vendorId = 0x123; -config.deviceId = 0x456; -/* 打开总线号为1的SDIO控制器 */ -handle = SdioOpen(1, &config); -if (handle == NULL) { - HDF_LOGE("SdioOpen: failed!\n"); -} -``` - -## 独占HOST - -获取到SDIO控制器的设备句柄之后,需要先独占HOST才能进行SDIO后续的一系列操作,独占HOST函数如下所示: - -void SdioClaimHost\(DevHandle handle\); - -**表 2** SdioClaimHost函数的参数描述 - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-
- -独占HOST示例如下: - -``` -SdioClaimHost(handle); /* 独占HOST */ -``` - -## 使能SDIO设备 - -在访问寄存器之前,需要先使能SDIO设备,使能SDIO设备的函数如下所示: - -int32\_t SdioEnableFunc\(DevHandle handle\); - -**表 3** SdioEnableFunc函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

返回值

-

返回值描述

-

0

-

SDIO使能成功

-

负数

-

SDIO使能失败

-
- -使能SDIO设备的示例如下: - -``` -int32_t ret; -/* 使能SDIO设备 */ -ret = SdioEnableFunc(handle); -if (ret != 0) { - HDF_LOGE("SdioEnableFunc: failed, ret %d\n", ret); -} -``` - -## 注册SDIO中断 - -在通信之前,还需要注册SDIO中断,注册SDIO中断函数如下图所示: - -int32\_t SdioClaimIrq\(DevHandle handle, SdioIrqHandler \*handler\); - -**表 4** SdioClaimIrq函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

handler

-

中断服务函数指针

-

返回值

-

返回值描述

-

0

-

注册中断成功

-

负数

-

注册中断失败

-
- -注册SDIO中的示例如下: - -``` -/* 中断服务函数需要根据各自平台的情况去实现 */ -static void SdioIrqFunc(void *data) -{ - if (data == NULL) { - HDF_LOGE("SdioIrqFunc: data is NULL.\n"); - return; - } - /* 需要开发者自行添加具体实现 */ -} - -int32_t ret; -/* 注册SDIO中断 */ -ret = SdioClaimIrq(handle, SdioIrqFunc); -if (ret != 0) { - HDF_LOGE("SdioClaimIrq: failed, ret %d\n", ret); -} -``` - -## 进行SDIO通信 - -- 向SDIO设备增量写入指定长度的数据 - -对应的接口函数如下所示: - -int32\_t SdioWriteBytes\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); - -**表 5** SdioWriteBytes函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

data

-

待写入数据的指针

-

addr

-

待写入数据的起始地址

-

size

-

待写入数据的长度

-

返回值

-

返回值描述

-

0

-

SDIO写数据成功

-

负数

-

SDIO写数据失败

-
- -向SDIO设备增量写入指定长度的数据的示例如下: - -``` -int32_t ret; -uint8_t wbuff[] = {1,2,3,4,5}; -uint32_t addr = 0x100 + 0x09; -/* 向SDIO设备起始地址0x109,增量写入5个字节的数据 */ -ret = SdioWriteBytes(handle, wbuff, addr, sizeof(wbuff) / sizeof(wbuff[0])); -if (ret != 0) { - HDF_LOGE("SdioWriteBytes: failed, ret %d\n", ret); -} -``` - -- 从SDIO设备增量读取指定长度的数据 - -对应的接口函数如下所示: - -int32\_t SdioReadBytes\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); - -**表 6** SdioReadBytes函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

data

-

接收读取数据的指针

-

addr

-

待读取数据的起始地址

-

size

-

待读取数据的长度

-

返回值

-

返回值描述

-

0

-

SDIO读数据成功

-

负数

-

SDIO读数据失败

-
- -从SDIO设备增量读取指定长度的数据的示例如下: - -``` -int32_t ret; -uint8_t rbuff[5] = {0}; -uint32_t addr = 0x100 + 0x09; -/* 从SDIO设备起始地址0x109,增量读取5个字节的数据 */ -ret = SdioReadBytes(handle, rbuff, addr, 5); -if (ret != 0) { - HDF_LOGE("SdioReadBytes: failed, ret %d\n", ret); -} -``` - -- 向SDIO设备的固定地址写入指定长度的数据 - - 对应的接口函数如下所示: - - int32\_t SdioWriteBytesToFixedAddr\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size, uint32\_t scatterLen\); - - **表 7** SdioWriteBytesToFixedAddr函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

data

-

待写入数据的指针

-

addr

-

待写入数据的固定地址

-

size

-

待写入数据的长度

-

scatterLen

-

集散表的长度。如果该字段不为0,则data为集散表类型。

-

返回值

-

返回值描述

-

0

-

SDIO写数据成功

-

负数

-

SDIO写数据失败

-
- - 向SDIO设备的固定地址写入指定长度的数据的示例如下: - - ``` - int32_t ret; - uint8_t wbuff[] = {1,2,3,4,5}; - uint32_t addr = 0x100 + 0x09; - /* 向SDIO设备固定地址0x109写入5个字节的数据 */ - ret = SdioWriteBytesToFixedAddr(handle, wbuff, addr, sizeof(wbuff) / sizeof(wbuff[0]), 0); - if (ret != 0) { - HDF_LOGE("SdioWriteBytesToFixedAddr: failed, ret %d\n", ret); - } - ``` - -- 从SDIO设备的固定地址读取指定长度的数据 - - 对应的接口函数如下所示: - - int32\_t SdioReadBytesFromFixedAddr\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size, uint32\_t scatterLen\); - - **表 8** SdioReadBytesFromFixedAddr函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

data

-

接收读取数据的指针

-

addr

-

待读取数据的起始地址

-

size

-

待读取数据的长度

-

scatterLen

-

集散表的长度。如果该字段不为0,则data为集散表类型。

-

返回值

-

返回值描述

-

0

-

SDIO读数据成功

-

负数

-

SDIO读数据失败

-
- - 从SDIO设备的固定地址读取指定长度的数据的示例如下: - - ``` - int32_t ret; - uint8_t rbuff[5] = {0}; - uint32_t addr = 0x100 + 0x09; - /* 从SDIO设备固定地址0x109中读取5个字节的数据 */ - ret = SdioReadBytesFromFixedAddr(handle, rbuff, addr, 5, 0); - if (ret != 0) { - HDF_LOGE("SdioReadBytesFromFixedAddr: failed, ret %d\n", ret); - } - ``` - - -- 向SDIO function 0的指定地址空间写入指定长度的数据 - -当前只支持写入一个字节的数据,对应的接口函数如下所示: - -int32\_t SdioWriteBytesToFunc0\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); - -**表 9** SdioWriteBytesToFunc0函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

data

-

待写入数据的指针

-

addr

-

待写入数据的起始地址

-

size

-

待写入数据的长度

-

返回值

-

返回值描述

-

0

-

SDIO写数据成功

-

负数

-

SDIO写数据失败

-
- -向SDIO function 0的指定地址空间写入指定长度的数据的示例如下: - -``` -int32_t ret; -uint8_t wbuff = 1; -/* 向SDIO function 0地址0x2中写入1字节的数据 */ -ret = SdioWriteBytesToFunc0(handle, &wbuff, 0x2, 1); -if (ret != 0) { - HDF_LOGE("SdioWriteBytesToFunc0: failed, ret %d\n", ret); -} -``` - -- 从SDIO function 0的指定地址空间读取指定长度的数据 - -当前只支持读取一个字节的数据,对应的接口函数如下所示: - -int32\_t SdioReadBytesFromFunc0\(DevHandle handle, uint8\_t \*data, uint32\_t addr, uint32\_t size\); - -**表 10** SdioReadBytesFromFunc0函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

data

-

接收读取数据的指针

-

addr

-

待读取数据的起始地址

-

size

-

待读取数据的长度

-

返回值

-

返回值描述

-

0

-

SDIO读数据成功

-

负数

-

SDIO读数据失败

-
- -从SDIO function 0的指定地址空间读取指定长度的数据的示例如下: - -``` -int32_t ret; -uint8_t rbuff; -/* 从SDIO function 0设备地址0x2中读取1字节的数据 */ -ret = SdioReadBytesFromFunc0(handle, &rbuff, 0x2, 1); -if (ret != 0) { - HDF_LOGE("SdioReadBytesFromFunc0: failed, ret %d\n", ret); -} -``` - -## 释放SDIO中断 - -通信完成之后,需要释放SDIO中断,函数如下所示: - -int32\_t SdioReleaseIrq\(DevHandle handle\); - -**表 11** SdioReleaseIrq函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

返回值

-

返回值描述

-

0

-

释放SDIO中断成功

-

负数

-

释放SDIO中断失败

-
- -释放SDIO中断的示例如下: - -``` -int32_t ret; -/* 释放SDIO中断 */ -ret = SdioReleaseIrq(handle); -if (ret != 0) { - HDF_LOGE("SdioReleaseIrq: failed, ret %d\n", ret); -} -``` - -## 去使能SDIO设备 - -通信完成之后,还需要去使能SDIO设备,函数如下所示: - -int32\_t SdioDisableFunc\(DevHandle handle\); - -**表 12** SdioDisableFunc函数的参数和返回值描述 - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-

返回值

-

返回值描述

-

0

-

去使能SDIO设备成功

-

负数

-

去使能SDIO设备失败

-
- -去使能SDIO设备的示例如下: - -``` -int32_t ret; -/* 去使能SDIO设备 */ -ret = SdioDisableFunc(handle); -if (ret != 0) { - HDF_LOGE("SdioDisableFunc: failed, ret %d\n", ret); -} -``` - -## 释放HOST - -通信完成之后,还需要释放去HOST,函数如下所示: - -void SdioReleaseHost\(DevHandle handle\); - -**表 13** SdioReleaseHost函数的参数描述 - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-
- -释放HOST的示例如下: - -``` -SdioReleaseHost(handle); /* 释放HOST */ -``` - -## 关闭SDIO控制器 - -SDIO通信完成之后,最后需要关闭SDIO控制器,函数如下所示: - -void SdioClose\(DevHandle handle\); - -该函数会释放掉申请的资源。 - -**表 14** SdioClose函数的参数描述 - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SDIO控制器的设备句柄

-
- -关闭SDIO控制器的示例如下: - -``` -SdioClose(handle); /* 关闭SDIO控制器 */ -``` - diff --git "a/zh-cn/device-dev/driver/SDIO\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/SDIO\346\246\202\350\277\260.md" deleted file mode 100755 index 69b74874472..00000000000 --- "a/zh-cn/device-dev/driver/SDIO\346\246\202\350\277\260.md" +++ /dev/null @@ -1,149 +0,0 @@ -# SDIO概述 - -- [简介](#section1155271783811) -- [接口说明](#section10204143763819) - -## 简介 - -- SDIO是安全数字输入输出接口(Secure Digital Input and Output)的缩写,是从SD内存卡接口的基础上演化出来的一种外设接口。SDIO接口兼容以前的SD内存卡,并且可以连接支持SDIO接口的设备。 -- SDIO的应用比较广泛,目前,有许多手机都支持SDIO功能,并且很多SDIO外设也被开发出来,使得手机外接外设更加容易。常见的SDIO外设有WLAN、GPS、CAMERA、蓝牙等。 -- SDIO总线有两端,其中一端是主机端(HOST),另一端是设备端(DEVICE)。所有的通信都是由HOST端发出命令开始的,在DEVICE端只要能解析HOST的命令,就可以同HOST进行通信了。SDIO的HOST可以连接多个DEVICE,如下图所示: - - - CLK信号:HOST给DEVICE的时钟信号。 - - VDD信号:电源信号。 - - VSS信号:Ground信号。 - - D0-3信号:4条数据线,其中,DAT1信号线复用为中断线,在1BIT模式下DAT0用来传输数据,在4BIT模式下DAT0-DAT3用来传输数据。 - - CMD信号:用于HOST发送命令和DEVICE回复响应。 - - **图 1** SDIO的HOST-DEVICE连接示意图 - - - ![](figures/zh-cn_image_0000001054280608.png) - -- SDIO接口定义了操作SDIO的通用方法集合,包括打开/关闭SDIO控制器、独占/释放HOST、使能/去使能设备、申请/释放中断、读写、获取/设置公共信息等。 - -## 接口说明 - -**表 1** SDIO驱动API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

描述

-

SDIO设备打开/关闭接口

-

SdioOpen

-

打开指定总线号的SDIO控制器

-

SdioClose

-

关闭SDIO控制器

-

SDIO读写接口

-

SdioReadBytes

-

从指定地址开始,增量读取指定长度的数据

-

SdioWriteBytes

-

从指定地址开始,增量写入指定长度的数据

-

SdioReadBytesFromFixedAddr

-

从固定地址读取指定长度的数据

-

SdioWriteBytesToFixedAddr

-

向固定地址写入指定长度的数据

-

SdioReadBytesFromFunc0

-

从SDIO function 0的指定地址空间读取指定长度的数据

-

SdioWriteBytesToFunc0

-

向SDIO function 0的指定地址空间写入指定长度的数据

-

SDIO设置块大小接口

-

SdioSetBlockSize

-

设置块的大小

-

SDIO获取/设置公共信息接口

-

SdioGetCommonInfo

-

获取公共信息

-

SdioSetCommonInfo

-

设置公共信息

-

SDIO刷新数据接口

-

SdioFlushData

-

刷新数据

-

SDIO独占/释放HOST接口

-

SdioClaimHost

-

独占Host

-

SdioReleaseHost

-

释放Host

-

SDIO使能/去使能功能设备接口

-

SdioEnableFunc

-

使能SDIO功能设备

-

SdioDisableFunc

-

去使能SDIO功能设备

-

SDIO申请/释放中断接口

-

SdioClaimIrq

-

申请中断

-

SdioReleaseIrq

-

释放中断

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->本文涉及的所有接口,目前只支持在内核态使用,不支持在用户态使用。 - diff --git a/zh-cn/device-dev/driver/SENSOR.md b/zh-cn/device-dev/driver/SENSOR.md index 5907809028c..956f7307bbb 100755 --- a/zh-cn/device-dev/driver/SENSOR.md +++ b/zh-cn/device-dev/driver/SENSOR.md @@ -1,11 +1,929 @@ -# SENSOR +# SENSOR -- **[传感器驱动开发概述](传感器驱动开发概述.md)** +- [概述](#section3634112111) + - [接口说明](#section188213414114) -- **[传感器驱动开发指导](传感器驱动开发指导.md)** +- [开发指导](#section1140943382) + - [开发步骤](#section7893102915819) -- **[传感器驱动开发实例](传感器驱动开发实例.md)** +- [开发实例](#section257750691) +- [测试指导](#section106021256121219) -- **[传感器驱动测试指导](传感器驱动测试指导.md)** +## 概述 +Sensor(传感器)驱动模块为上层Sensor服务系统提供稳定的Sensor基础能力API,包括Sensor列表查询、Sensor启停、Sensor订阅及去订阅,Sensor参数配置等功能;基于HDF(**H**ardware **D**river **F**oundation)驱动框架开发的Sensor驱动模型,实现跨操作系统迁移,器件差异配置等功能。Sensor驱动模型如下图1所示: + +**图 1** Sensor驱动模型图 +![](figures/Sensor驱动模型图.png "Sensor驱动模型图") + +Sensor驱动模型对外开放的API接口能力如下: + +- 提供Sensor HDI(**H**ardware **D**river **I**nterface)能力接口,简化服务开发。 +- 提供Sensor驱动模型能力接口:依赖HDF驱动框架实现Sensor器件驱动的注册,加载,去注册,器件探测等能力,提供同一类型Sensor器件驱动归一接口, 寄存器配置解析操作接口,总线访问抽象接口,平台抽象接口。 +- 提供开发者实现的能力接口:依赖HDF驱动框架的HCS\(**H**DF **C**onfiguration **S**ource\)配置管理,根据同类型Sensor差异化配置,实现Sensor器件参数序列化配置和器件部分操作接口,简化Sensor器件驱动开发。 + +### 接口说明 + +Sensor驱动模型对HDI开放的API接口功能,参考表1。 + +**表 1** Sensor驱动模型对外API接口功能介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

功能描述

+

查询操作

+

int32_t GetAllSensors(struct SensorInformation **sensorInfo, int32_t *count)

+

获取系统中注册的所有传感器信息,一种类型传感器信息包括传感器名字、设备厂商、固件版本号、硬件版本号、传感器类型编号、传感器标识、最大量程、精度、功耗。

+

配置操作

+

int32_t Enable(int32_t sensorId)

+

使能一种传感器设备,只有数据订阅者使能传感器后,才能获取订阅的传感器数据。

+

int32_t Disable(int32_t sensorId)

+

去使能一种传感器设备。

+

int32_t SetBatch(iint32_t sensorId, int64_t samplingInterval, int64_t reportInterval)

+

设置一种传感器的数据采样间隔和数据上报间隔。

+

int32_t SetMode(int32_t sensorTypeId, SensorUser *user, int32_t mode)

+

设置一种传感器的工作模式,不同的工作模式,上报数据方式不同。

+

int32_t SetOption(int32_t sensorId, uint32_t option)

+

设置一种传感器量程,精度等可选配置。

+

数据订阅操作

+

int32_t Register(RecordDataCallback cb)

+

订阅者注册传感器数据回调函数,系统会将获取到的传感器数据上报给订阅者。

+

int32_t Unregister(void)

+

订阅者去注册传感器数据回调函数。

+

接口实例

+

const struct SensorInterface *NewSensorInterfaceInstance(void)

+

创建传感器接口实例。

+

int32_t FreeSensorInterfaceInstance(void)

+

释放传感器接口实例。

+
+ +Sensor驱动模型对驱动开发者开放的功能接口,驱动开发者无需实现,直接使用,参考表2: + +**表 2** Sensor驱动模型对驱动开发者开放的功能接口列表 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

功能描述

+

设备管理操作接口

+

int32_t AddSensorDevice(const struct SensorDeviceInfo *deviceInfo)

+

添加当前类型的传感器设备到传感器设备管理。

+

int32_t DeleteSensorDevice(int32_t sensorId)

+

删除传感器设备管理里指定的传感器设备。

+

int32_t ReportSensorEvent(const struct SensorReportEvent *events)

+

上报指定类型传感器的数据到用户侧。

+

Sensor抽象总线和平台操作接口

+

int32_t ReadSensor(struct SensorBusCfg *busCfg, uint16_t regAddr, uint8_t *data, uint16_t dataLen)

+

按照配置的总线方式,读取传感器寄存器配置数据。

+

int32_t WriteSensor(struct SensorBusCfg *busCfg, uint8_t *writeData, uint16_t len)

+

按照配置的总线方式,传感器配置数据写入寄存器。

+

int32_t CreateSensorThread(struct OsalThread *thread, OsalThreadEntry threadEntry, char *name, void *entryPara)

+

创建指定传感器的定时线程,用于传感器数据上报处理。

+

void DestroySensorThread(struct OsalThread *thread, uint8_t *status);

+

销毁传感器创建的定时线程。

+

通用配置操作接口

+

int32_t SetSensorRegCfgArray(struct SensorBusCfg *busCfg, const struct SensorRegCfgGroupNode *group);

+

根据传感器总线类型信息,下发寄存器分组配置。

+

配置解析操作接口

+

+

int32_t GetSensorBaseConfigData(const struct DeviceResourceNode *node, struct SensorCfgData *config)

+

根据传感器设备HCS资源配置,获取传感器信息,总线配置信息,属性配置等基本配置信息,并初始化对应的基本配置数据结构体。

+

int32_t ParseSensorRegConfig(struct SensorCfgData *config)

+

根据传感器设备HCS资源配置,解析寄存器分组信息,并初始化配置数据结构体。

+

void ReleaseSensorAllRegConfig(struct SensorCfgData *config)

+

释放传感器配置数据结构体里分配的资源。

+

int32_t GetSensorBusHandle(struct SensorBusCfg *busCfg)

+

获取传感器总线句柄信息。

+

int32_t ReleaseSensorBusHandle(struct SensorBusCfg *busCfg)

+

释放传感器句柄信息。

+
+ +Sensor驱动模型要求驱动开发者实现的接口功能,参考表3 + +**表 3** Sensor驱动模型要求驱动开发者实现的接口列表 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

功能描述

+

基本功能操作

+

int32_t init(void)

+

传感器器设备探测成功后,需要对传感器器设备初始化配置。

+

int32_t GetInfo(struct SensorBasicInfo *info)

+

从传感器器设备的HCS配置里,获取当前传感器设备的基本信息。

+

int32_t Enable(void)

+

根据当前传感器器设备的HCS配置,下发传感器设备使能操作组的寄存器配置。

+

int32_t Disable(void)

+

根据当前传感器器设备的HCS配置,下发传感器设备去使能操作组的寄存器配置。

+

int32_t SetBatch(int64_t samplingInterval, int64_t reportInterval)

+

根据数据采样率和数据上报间隔,配置当前传感器设备的数据上报线程处理时间。

+

int32_t SetMode(int32_t mode)

+

配置当前传感器设备数据上报方式。

+

int32_t SetOption(uint32_t option)

+

根据可选配置,下发量程,精度等寄存器配置。

+

void ReadSensorData(void)

+

实现传感器的数据读取函数。

+
+ +接口实现参考[SENSOR](#section257750691)章节。 + +## 开发指导 + +Sensor驱动是基于HDF框架、PLATFORM和OSAL基础接口进行开发,不区分操作系统和芯片平台,为不同Sensor器件提供统一的驱动模型。本篇开发指导以加速度计传感器为例,介绍传感器驱动开发。 + +### 开发步骤 + +1. 加速度计传感器驱动注册。HDF驱动框架会提供统一的驱动管理模型,通过加速计传感器模块配置信息,识别并加载对应模块驱动。 +2. 加速度计传感器驱动初始化和去初始化。HDF驱动框架通过init入口函数,依次启动传感器设备驱动加载和分配传感器设备数据配置资源。HDF驱动框架通过release函数,释放驱动加载的资源和配置。 +3. 加速度计传感器寄存器组配置解析。不同类型传感器需要在hcs里配置器件对应的HCS配置文件,然后再设备驱动启动过程中探测器件是否在位,然后加载对应的配置文件,生成配置的结构体对象。 +4. 加速度计传感器驱动操作接口实现。实现各个类型传感器归一化驱动接口,如init,GetInfo,Enable,Disable,SetBatch,SetMode,SetOption,ReadSensorData等函数,完成传感器驱动配置下发和数据上报功能。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>传感器驱动模型已经提供一部分能力集,包括驱动设备管理能力,抽象总线和平台操作接口能力,通用配置操作接口能力,配置解析操作接口能力,接口参考[表2](#table1156812588320)。需要开发人员实现部分有:1、传感器部分操作接口([表3](#table1083014911336));2、传感器HCS差异化数据配置;3、驱动基本功能验证。 + +## 开发实例 + +基于HDF驱动模型,加载启动加速度计传感器驱动,代码形式如下,具体原理可参考[HDF驱动开发指南](驱动开发.md)。加速度传感器选择通讯接口方式为I2C,厂家选择博世BMI160加速度传感器。 + +1. 加速度计传感器驱动入口注册 + +- 加速度计传感器驱动入口函数实现 + +``` +/* 注册加速度计传感器入口数据结构体对象 */ +struct HdfDriverEntry g_sensorAccelDevEntry = { + .moduleVersion = 1, /* 加速度计传感器模块版本号 */ + .moduleName = "HDF_SENSOR_ACCEL", /* 加速度计传感器模块名,要与device_info.hcs文件里的加速度计moduleName字段值一样*/ + .Bind = BindAccelDriver, /* 加速度计传感器绑定函数 */ + .Init = InitAccelDriver, /* 加速度计传感器初始化函数 */ + .Release = ReleaseAccelDriver, /* 加速度计传感器资源释放函数 */ +}; + +/* 调用HDF_INIT将驱动入口注册到HDF框架中,在加载驱动时HDF框架会先调用Bind函数,再调用Init函数加载该驱动,当Init调用异常时,HDF框架会调用Release释放驱动资源并退出 */ +HDF_INIT(g_sensorAccelDevEntry); +``` + +- 加速度计传感器设备配置描述 + +加速度传感器模型使用HCS作为配置描述源码,HCS配置字段详细介绍参考[配置管理](配置管理.md)介绍。 + +``` +/* 加速度计传感器设备HCS配置 */ +device_sensor_accel :: device { + device0 :: deviceNode { + policy = 1; /* policy字段是驱动服务发布的策略 */ + priority = 105; /* 驱动启动优先级(0-200),值越大优先级越低,建议默认配100,优先级相同则不保证device的加载顺序 */ + preload = 2; /* 驱动按需加载字段,0表示加载,2表示不加载 */ + permission = 0664; /* 驱动创建设备节点权限 */ + moduleName = "HDF_SENSOR_ACCEL"; /* 驱动名称,该字段的值必须和驱动入口结构的moduleName值一致 */ + serviceName = "sensor_accel"; /* 驱动对外发布服务的名称,必须唯一 */ + deviceMatchAttr = "hdf_sensor_accel_driver"; /* 驱动私有数据匹配的关键字,必须和驱动私有数据配置表中的match_attr值相等 */ + } +} +``` + +1. 加速度计传感器驱动初始化和去初始化 + +- 初始化入口函数init + +``` +/* 加速度计传感器驱动对外提供的服务绑定到HDF框架 */ +int32_t BindAccelDriver(struct HdfDeviceObject *device) +{ + CHECK_NULL_PTR_RETURN_VALUE(device, HDF_ERR_INVALID_PARAM); + + static struct IDeviceIoService service = { + .object = {0}, + .Dispatch = DispatchAccel, + }; + device->service = &service; + + return HDF_SUCCESS; +} +/*在探测到器件在位后,需要调用RegisterAccelChipOps注册差异化适配函数*/ +int32_t RegisterAccelChipOps(struct AccelOpsCall *ops) +{ + struct AccelDrvData *drvData = NULL; + + CHECK_NULL_PTR_RETURN_VALUE(ops, HDF_ERR_INVALID_PARAM); + + drvData = AccelGetDrvData(); + drvData->ops.Init = ops->Init; + drvData->ops.ReadData = ops->ReadData; + return HDF_SUCCESS; +} +/* 挂载加速度计传感器驱动归一化的接口函数 */ +static int32_t InitAccelOps(struct SensorDeviceInfo *deviceInfo) +{ + struct AccelDrvData *drvData = AccelGetDrvData(); + + (void)memset_s((void *)deviceInfo, sizeof(*deviceInfo), 0, sizeof(*deviceInfo)); + deviceInfo->ops.GetInfo = SetAccelInfo; + deviceInfo->ops.Enable = SetAccelEnable; + deviceInfo->ops.Disable = SetAccelDisable; + deviceInfo->ops.SetBatch = SetAccelBatch; + deviceInfo->ops.SetMode = SetAccelMode; + deviceInfo->ops.SetOption = SetAccelOption; + + if (memcpy_s(&deviceInfo->sensorInfo, sizeof(deviceInfo->sensorInfo), + &drvData->accelCfg->sensorInfo, sizeof(drvData->accelCfg->sensorInfo)) != EOK) { + HDF_LOGE("%s: copy sensor info failed", __func__); + return HDF_FAILURE; + } + /* 传感器类型标识可以在数据HCS配置文件里面配置,也可以在此处 */ + drvData->accelCfg->sensorInfo.sensorTypeId = SENSOR_TAG_ACCELEROMETER; + drvData->accelCfg->sensorInfo.sensorId = SENSOR_TAG_ACCELEROMETER; + + return HDF_SUCCESS; +} +/* 传感器寄存器初始化操作 */ +static int32_t InitAccelAfterConfig(void) +{ + struct SensorDeviceInfo deviceInfo; + + if (InitAccelConfig() != HDF_SUCCESS) { + HDF_LOGE("%s: init accel config failed", __func__); + return HDF_FAILURE; + } + + if (InitAccelOps(&deviceInfo) != HDF_SUCCESS) { + HDF_LOGE("%s: init accel ops failed", __func__); + return HDF_FAILURE; + } + + if (AddSensorDevice(&deviceInfo) != HDF_SUCCESS) { + HDF_LOGE("%s: add accel device failed", __func__); + return HDF_FAILURE; + } + + return HDF_SUCCESS; +} +/*通过器件探测函数,挂载器件差异化函数接口*/ +static int32_t DetectAccelChip(void) +{ + int32_t num; + int32_t ret; + int32_t loop; + struct AccelDrvData *drvData = AccelGetDrvData(); + CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); + + num = sizeof(g_accelDetectIfList) / sizeof(g_accelDetectIfList[0]); + for (loop = 0; loop < num; ++loop) { + if (g_accelDetectIfList[loop].DetectChip != NULL) { + ret = g_accelDetectIfList[loop].DetectChip(drvData->accelCfg); + if (ret == HDF_SUCCESS) { + drvData->detectFlag = true; + break; + } + } + } + + if (loop == num) { + HDF_LOGE("%s: detect accel device failed", __func__); + drvData->detectFlag = false; + return HDF_FAILURE; + } + return HDF_SUCCESS; +} +/* 加速度计传感器驱动初始化入口函数,主要功能为对传感器私有数据的结构体对象进行初始化,传感器HCS数据配置对象空间分配,传感器HCS数据配置初始化入口函数调用,传感器设备探测是否在位功能,传感器数据上报定时器创建,传感器归一化接口挂载,传感器设备注册功能 */ +int32_t InitAccelDriver(struct HdfDeviceObject *device) +{ + /* 获取传感器私有数据结构体对象 */ + struct AccelDrvData *drvData = AccelGetDrvData(); + + /* 同类型传感器不同厂家设备探测时,判断此类型传感器是否已经在位,若已经在位,无需再继续探测,直接返回 */ + if (drvData->detectFlag) { + HDF_LOGE("%s: accel sensor have detected", __func__); + return HDF_SUCCESS; + } + + CHECK_NULL_PTR_RETURN_VALUE(device, HDF_ERR_INVALID_PARAM); + /* 分配存放传感器数据配置的私有结构体数据对象,需要在驱动释放时释放分配的资源空间 */ + drvData->accelCfg = (struct SensorCfgData *)OsalMemCalloc(sizeof(*cfg)); + if (drvData->accelCfg == NULL) { + HDF_LOGE("%s: malloc sensor config data failed", __func__); + return HDF_FAILURE; + } + + drvData->accelCfg->regCfgGroup = &g_regCfgGroup[0]; + /* 初始化传感器配置数据主要是解析传感器通讯总线配置类型信息,传感器基本信息,传感器属性信息,传感器是否在位信息,寄存器分组信息 */ + if (GetSensorBaseConfigData(device->property, drvData->accelCfg) != HDF_SUCCESS) { + HDF_LOGE("%s: get sensor base config failed", __func__); + goto Base_CONFIG_EXIT; + } + + if (DetectAccelChip() != HDF_SUCCESS) { + HDF_LOGE("%s: accel sensor detect device no exist", __func__); + goto DETECT_CHIP_EXIT; + } + drvData->detectFlag = true; + if (ParseSensorRegConfig(drvData->accelCfg) != HDF_SUCCESS) { + HDF_LOGE("%s: detect sensor device failed", __func__); + goto REG_CONFIG_EXIT; + } + + if (InitAccelAfterConfig() != HDF_SUCCESS) { + HDF_LOGE("%s: init accel after config failed", __func__); + goto INIT_EXIT; + } + + HDF_LOGI("%s: init accel driver success", __func__); + return HDF_SUCCESS; + +INIT_EXIT: + DestroySensorThread(&drvData->thread, &drvData->threadStatus); + (void)DeleteSensorDevice(SENSOR_TAG_ACCELEROMETER); +REG_CONFIG_EXIT: + ReleaseSensorAllRegConfig(drvData->accelCfg); + (void)ReleaseSensorBusHandle(&drvData->accelCfg->busCfg); +DETECT_CHIP_EXIT: + drvData->detectFlag = false; +BASE_CONFIG_EXIT: + drvData->accelCfg->root = NULL; + drvData->accelCfg->regCfgGroup = NULL; + OsalMemFree(drvData->accelCfg); + drvData->accelCfg = NULL; + return HDF_FAILURE; +} + +/* 释放驱动初始化时分配的资源 */ +void ReleaseAccelDriver(struct HdfDeviceObject *device) +{ + (void)device; + struct AccelDrvData *drvData = NULL; + + drvData = AccelGetDrvData(); + (void)DestroySensorThread(&drvData->thread, &drvData->threadStatus); + (void)DeleteSensorDevice(SENSOR_TAG_ACCELEROMETER); + drvData->detectFlag = false; + + if (drvData->accelCfg != NULL) { + drvData->accelCfg->root = NULL; + drvData->accelCfg->regCfgGroup = NULL; + ReleaseSensorAllRegConfig(drvData->accelCfg); + (void)ReleaseSensorBusHandle(&drvData->accelCfg->busCfg); + OsalMemFree(drvData->accelCfg); + drvData->accelCfg = NULL; + } + + drvData->initStatus = false; +} +``` + +1. 加速度计传感器寄存器组配置信息 + +加速度计传感器数据配置只需要按照模板配置即可,基于模板配置的解析功能已经在**InitSensorConfigData**函数完成,只需初始化时调用即可。如果有新增配置项,需要同步修改此函数。 + +``` +加速度传感器数据配置模板(accel_config.hcs) +root { + sensorAccelConfig { + accelChipConfig { + /* 传感器设备信息模板 */ + template sensorInfo { + sensorName = "accelerometer"; /* 加速度计名字,字符最大长度16字节 */ + vendorName = "borsh_bmi160"; /* 传感器设备厂商,字符最大长度16字节 */ + firmwareVersion = "1.0"; /* 传感器固件版本号,默认1.0,字符最大长度16字节 */ + hardwareVersion = "1.0"; /* 传感器硬件版本号,默认1.0,字符最大长度16字节 */ + sensorTypeId = 1; /* 传感器类型编号,详见{@link SensorTypeTag} */ + sensorId = 1; /* 传感器的标识号,有传感器驱动开发者定义,推荐用{@link SensorTypeTag}枚举 */ + maxRange = 8; /* 传感器的最大量程,根据开发者需要配置 */ + precision = 0; /* 传感器的精度,与上报数据配合使用,上报数据结构体{@link SensorEvents } */ + power = 230; /* 传感器的功耗 */ + } + /* 传感器使用的总线类型和配置信息模板 */ + template sensorBusConfig { + busType = 0; /* 0:i2c 1:spi */ + busNum = 6; /* 芯片上分配给传感器的器件号 */ + busAddr = 0; /* 芯片上分配给传感器的地址 */ + regWidth = 1; /* 传感器寄存器地址宽度 */ + regBigEndian = 0; /* 传感器寄存器大小端 */ + } + /* 传感器设备属性模板 */ + template sensorAttr { + chipName = ""; /* 传感器芯片名字 */ + chipIdRegister = 0xf; /* 传感器在位检测寄存器地址 */ + chipIdValue = 0xd1; /* 校验传感器在位检测寄存器值 */ + } + } + } +} + +/* 根据不同器件硬件差异,修改模板配置,不修改的就会默认采用模板配置 */ +root { + sensorAccelConfig { + accel_bmi160_chip_config : accelChipConfig { + match_attr = "hdf_sensor_accel_driver"; /* 需要和加速度传感器设备配置match_attr字段保持一致 */ + accelInfo :: sensorInfo { + vendorName = "borsh_bmi160"; + sensorTypeId = 1; + sensorId = 1; + } + accelBusConfig :: sensorBusConfig { + busType = 0; /* i2c通讯方式 */ + busNum = 6; + busAddr = 0x68; + regWidth = 1; /* 1字节位宽 */ + } + accelAttr :: sensorAttr { + chipName = "bmi160"; + chipIdRegister = 0x00; + chipIdValue = 0xd1; + } + accelRegConfig { + /* regAddr: 寄存器地址 + value: 寄存器值 + mask: 寄存器值的掩码 + len: 寄存器值的数据长度(字节) + delay: 配置寄存器延时(ms) + opsType:操作类型 0-无 1-读 2-写 3-读并检查 4-位更新 + calType: 计算类型 0-无 1-写 2-取反 3-异或 4-左移 5-右移 + shiftNum: 移动位数 + debug: 调试开关,0-调试关闭 1-调试打开 + save: 保存数据开关,0-不保存数据 1-保存数据 + */ + /* 传感器寄存器操作分组,按照分组进行有序配置 */ + /* 寄存器地址, 寄存器值, 寄存器值的掩码, 寄存器值的数据长度, 配置寄存器延时, 操作类型, 计算类型, 移动位数, 调试开关, 保存开关 */ + /* 初始化寄存器组 */ + initSeqConfig = [ + 0x7e, 0xb6, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + /* 使能寄存器组 */ + enableSeqConfig = [ + 0x7e, 0x11, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x41, 0x03, 0xff, 1, 0, 2, 0, 0, 0, 0, + 0x40, 0x08, 0xff, 1, 0, 2, 0, 0, 0, 0 + ]; + /* 去使能寄存器组 */ + disableSeqConfig = [ + 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + } + } + } +} +``` + +1. 加速度计传感器驱动操作接口实现 + +开发者需要根据每种类型的传感器实现归一化接口。 + +``` +/* 不使用函数暂时置空 */ +static int32_t SetAccelInfo(struct SensorBasicInfo *info) +{ + (void)info; + + return HDF_ERR_NOT_SUPPORT; +} +/* 下发使能寄存器组的配置 */ +static int32_t SetAccelEnable(void) +{ + int32_t ret; + struct AccelDrvData *drvData = AccelGetDrvData(); + + CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); + ret = SetSensorRegCfgArray(&drvData->accelCfg->busCfg, drvData->accelCfg->regCfgGroup[SENSOR_ENABLE_GROUP]); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: accel sensor disable config failed", __func__); + return HDF_FAILURE; + } + + drvData->threadStatus = SENSOR_THREAD_RUNNING; + + return HDF_SUCCESS; +} +/* 下发去使能寄存器组的配置 */ +static int32_t SetAccelDisable(void) +{ + int32_t ret; + struct AccelDrvData *drvData = AccelGetDrvData(); + + CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); + + ret = SetSensorRegCfgArray(&drvData->accelCfg->busCfg, drvData->accelCfg->regCfgGroup[SENSOR_DISABLE_GROUP]); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: accel sensor disable config failed", __func__); + return HDF_FAILURE; + } + + drvData->threadStatus = SENSOR_THREAD_STOPPED; + + return HDF_SUCCESS; +} +/* 配置传感器采样率和数据上报间隔 */ +static int32_t SetAccelBatch(int64_t samplingInterval, int64_t interval) +{ + (void)interval; + + struct AccelDrvData *drvData = AccelGetDrvData(); + drvData->interval = samplingInterval; + + return HDF_SUCCESS; +} +/* 设置传感器工作模式,当前支持实时模式 */ +static int32_t SetAccelMode(int32_t mode) +{ + return (mode == SENSOR_WORK_MODE_REALTIME) ? HDF_SUCCESS : HDF_FAILURE; +} +/* 设置传感器可选配置 */ +static int32_t SetAccelOption(uint32_t option) +{ + (void)option; + return HDF_ERR_NOT_SUPPORT; +} +``` + +- 差异化处理接口 + + ``` + /* 器件探测时,如果探测成功,则注册差异化处理函数到accel驱动模型里 */ + int32_t DetectAccelBim160Chip(struct SensorCfgData *data) + { + int32_t ret; + struct AccelOpsCall ops; + CHECK_NULL_PTR_RETURN_VALUE(data, HDF_ERR_INVALID_PARAM); + + if (strcmp(ACCEL_CHIP_NAME_BMI160, data->sensorAttr.chipName) != 0) { + return HDF_SUCCESS; + } + ret = InitAccelPreConfig(); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: init BMI160 bus mux config", __func__); + return HDF_FAILURE; + } + if (DetectSensorDevice(data) != HDF_SUCCESS) { + return HDF_FAILURE; + } + + /* 差异化处理函数 */ + ops.Init = InitBmi160; + ops.ReadData = ReadBmi160Data; + ret = RegisterAccelChipOps(&ops); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: register BMI160 accel failed", __func__); + (void)ReleaseSensorBusHandle(&data->busCfg); + return HDF_FAILURE; + } + return HDF_SUCCESS; + } + /* 初始化处理函数 */ + static int32_t InitBmi160(struct SensorCfgData *data) + { + int32_t ret; + + CHECK_NULL_PTR_RETURN_VALUE(data, HDF_ERR_INVALID_PARAM); + ret = SetSensorRegCfgArray(&data->busCfg, data->regCfgGroup[SENSOR_INIT_GROUP]); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: bmi160 sensor init config failed", __func__); + return HDF_FAILURE; + } + return HDF_SUCCESS; + } + /* 数据处理函数 */ + int32_t ReadBmi160Data(struct SensorCfgData *data) + { + int32_t ret; + struct AccelData rawData = { 0, 0, 0 }; + int32_t tmp[ACCEL_AXIS_NUM]; + struct SensorReportEvent event; + + (void)memset_s(&event, sizeof(event), 0, sizeof(event)); + + ret = ReadBmi160RawData(data, &rawData, &event.timestamp); + if (ret != HDF_SUCCESS) { + return HDF_FAILURE; + } + + event.sensorId = SENSOR_TAG_ACCELEROMETER; + event.option = 0; + event.mode = SENSOR_WORK_MODE_REALTIME; + + rawData.x = rawData.x * BMI160_ACC_SENSITIVITY_2G; + rawData.y = rawData.y * BMI160_ACC_SENSITIVITY_2G; + rawData.z = rawData.z * BMI160_ACC_SENSITIVITY_2G; + + tmp[ACCEL_X_AXIS] = (rawData.x * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; + tmp[ACCEL_Y_AXIS] = (rawData.y * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; + tmp[ACCEL_Z_AXIS] = (rawData.z * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; + + event.dataLen = sizeof(tmp); + event.data = (uint8_t *)&tmp; + ret = ReportSensorEvent(&event); + return ret; + } + ``` + +- 数据处理函数 + +创建传感器定时器,按照配置的采样率定时采样,并上报给数据订阅者。 + +``` +/* 传感器定时工作线程 */ +static int32_t ReadAccelDataThreadWorker(void *arg) +{ + (void)arg; + int64_t interval; + struct AccelDrvData *drvData = AccelGetDrvData(); + + drvData->threadStatus = SENSOR_THREAD_START; + while (true) { + if (drvData->threadStatus == SENSOR_THREAD_RUNNING) { + if (drvData->ops.ReadData != NULL) { + (void)drvData->ops.ReadData(drvData->accelCfg); + } + interval = OsalDivS64(drvData->interval, (SENSOR_CONVERT_UNIT * SENSOR_CONVERT_UNIT)); + OsalMSleep(interval); + } else if (drvData->threadStatus == SENSOR_THREAD_DESTROY) { + break; + } else { + OsalMSleep(ACC_DEFAULT_SAMPLING_200_MS / SENSOR_CONVERT_UNIT / SENSOR_CONVERT_UNIT); + } + + if ((!drvData->initStatus) || (drvData->interval < 0) || drvData->threadStatus != SENSOR_THREAD_RUNNING) { + continue; + } + } + + return HDF_SUCCESS; +} +/* 创建传感器定时器和器件初始化 */ +static int32_t InitAccelConfig(void) +{ + int32_t ret; + struct AccelDrvData *drvData = AccelGetDrvData(); + + if (drvData->threadStatus != SENSOR_THREAD_NONE && drvData->threadStatus != SENSOR_THREAD_DESTROY) { + HDF_LOGE("%s: accel thread have created", __func__); + return HDF_SUCCESS; + } + + ret = CreateSensorThread(&drvData->thread, ReadAccelDataThreadWorker, "hdf_sensor_accel", drvData); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: accel create thread failed", __func__); + drvData->threadStatus = SENSOR_THREAD_NONE; + return HDF_FAILURE; + } + + CHECK_NULL_PTR_RETURN_VALUE(drvData->ops.Init, HDF_ERR_INVALID_PARAM); + + ret = drvData->ops.Init(drvData->accelCfg); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: accel create thread failed", __func__); + drvData->threadStatus = SENSOR_THREAD_NONE; + return HDF_FAILURE; + } + drvData->initStatus = true; + return HDF_SUCCESS; +} +``` + +- 主要的数据结构 + +``` +/* 传感器转换单位*/ +#define SENSOR_CONVERT_UNIT 1000 +#define SENSOR_1K_UNIT 1024 +/* 传感器2g对应灵敏度转换值 */ +#define BMI160_ACC_SENSITIVITY_2G 61 +/* 传感器数据采样寄存器地址 */ +#define BMI160_ACCEL_X_LSB_ADDR 0X12 +#define BMI160_ACCEL_X_MSB_ADDR 0X13 +#define BMI160_ACCEL_Y_LSB_ADDR 0X14 +#define BMI160_ACCEL_Y_MSB_ADDR 0X15 +#define BMI160_ACCEL_Z_LSB_ADDR 0X16 +#define BMI160_ACCEL_Z_MSB_ADDR 0X17 +/* 传感器数据维度 */ +enum AccelAxisNum { + ACCEL_X_AXIS = 0, + ACCEL_Y_AXIS = 1, + ACCEL_Z_AXIS = 2, + ACCEL_AXIS_NUM = 3, +}; +/* 传感器每个维度值 */ +struct AccelData { + int32_t x; + int32_t y; + int32_t z; +}; +/* 传感器私有数据结构体 */ +struct AccelDrvData { + bool detectFlag; + uint8_t threadStatus; + uint8_t initStatus; + int64_t interval; + struct SensorCfgData *accelCfg; + struct OsalThread thread; + struct AccelOpsCall ops; +}; +/* 差异化适配函数 */ +struct AccelOpsCall { + int32_t (*Init)(struct SensorCfgData *data); + int32_t (*ReadData)(struct SensorCfgData *data); +}; +``` + +## 测试指导 + +驱动开发完成后,在传感器单元测试里面开发自测试用例,验证驱动基本功能。测试环境采用开发者自测试平台。 + +``` +/* 标识是否上报传感器数据 */ +static int32_t g_sensorDataFlag = 0; +/* 保持获取的传感器接口实例地址 */ +static const struct SensorInterface *g_sensorDev = nullptr; + +/* 订阅者注册数据上报函数 */ +static int SensorTestDataCallback(struct SensorEvents *event) +{ + if (event == nullptr) { + return -1; + } + float *data = (float*)event->data; + printf("time [%lld] sensor id [%d] x-[%f] y-[%f] z-[%f]\n\r", event->timestamp, + event->sensorId, (*data), *(data + 1), *(data + g_axisZ)); + if (*data > 1e-5) { + g_sensorDataFlag = 1; + } + return 0; +} +/* 用例执行前,初始化传感器接口实例 */ +void HdfSensorTest::SetUpTestCase() +{ + g_sensorDev = NewSensorInterfaceInstance(); + if (g_sensorDev == nullptr) { + printf("test sensorHdi get Module instace failed\n\r"); + } +} +/* 用例资源释放 */ +void HdfSensorTest::TearDownTestCase() +{ + if (g_sensorDev != nullptr) { + FreeSensorInterfaceInstance(); + g_sensorDev = nullptr; + } +} +/* 传感器驱动测试验证 */ +HWTEST_F(HdfSensorTest,TestAccelDriver_001, TestSize.Level0) +{ + int32_t sensorInterval = 1000000000; /* 数据采样率单位纳秒 */ + int32_t pollTime = 5; /* 数据采样时间单位秒 */ + int32_t accelSensorId = 1; /* 加速度传感器类型标识为1 */ + int32_t count = 0; + int ret; + struct SensorInformation *sensorInfo = nullptr; + + ret = g_sensorDev->Register(SensorTestDataCallback) + EXPECT_EQ(SENSOR_NULL_PTR, ret); + + ret = g_sensorDev->GetAllSensors(&sensorInfo, &count); + EXPECT_EQ(0, ret); + if (sensorInfo == nullptr) { + EXPECT_NE(nullptr, sensorInfo); + return; + } + /* 打印获取的传感器列表 */ + for (int i = 0; i < count; i++) { + printf("get sensoriId[%d], info name[%s]\n\r", sensorInfo[i]->sensorId, sensorInfo[i]->sensorName); + } + ret = g_sensorDev->Enable(accelSensorId); + EXPECT_EQ(0, ret); + g_sensorDataFlag = 0; + + ret = g_sensorDev->SetBatch(accelSensorId, sensorInterval, pollTime); + EXPECT_EQ(0, ret); + /* 在时间pollTime内,观察输出打印数据 */ + OsalSleep(pollTime); + EXPECT_EQ(1, g_sensorDataFlag); + + ret = g_sensorDev->Disable(accelSensorId); + g_sensorDataFlag = 0; + EXPECT_EQ(0, ret); + + ret = g_sensorDev->Unregister(); + EXPECT_EQ(0, ret); +} +``` diff --git a/zh-cn/device-dev/driver/SPI.md b/zh-cn/device-dev/driver/SPI.md index 394692a7839..52ef61ad5b6 100755 --- a/zh-cn/device-dev/driver/SPI.md +++ b/zh-cn/device-dev/driver/SPI.md @@ -1,9 +1,566 @@ -# SPI +# SPI -- **[SPI概述](SPI概述.md)** +- [概述](#section193356154511) + - [接口说明](#section232141411476) -- **[SPI使用指导](SPI使用指导.md)** +- [使用指导](#section71363452477) + - [使用流程](#section32846814820) + - [获取SPI设备句柄](#section1927265711481) + - [获取SPI设备属性](#section541133418493) + - [配置SPI设备属性](#section7870106145010) + - [进行SPI通信](#section13324155195013) + - [销毁SPI设备句柄](#section19661632135117) -- **[SPI使用实例](SPI使用实例.md)** +- [使用实例](#section06541058155120) +## 概述 + +- SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线。 +- SPI是由Motorola公司开发,用于在主设备和从设备之间进行通信,常用于与闪存、实时时钟、传感器以及模数转换器等进行通信。 +- SPI以主从方式工作,通常有一个主设备和一个或者多个从设备。主设备和从设备之间一般用4根线相连,它们分别是: + - SCLK – 时钟信号,由主设备产生; + - MOSI – 主设备数据输出,从设备数据输入; + - MISO – 主设备数据输入,从设备数据输出; + - CS – 片选,从设备使能信号,由主设备控制。 + + +- 一个主设备和两个从设备的连接示意图如[图1](#fig15227181812587)所示,Device A和Device B共享主设备的SCLK、MISO和MOSI三根引脚,Device A的片选CS0连接主设备的CS0,Device B的片选CS1连接主设备的CS1。 + +**图 1** SPI主从设备连接示意图。 + + +![](figures/zh-cn_image_0000001123742254.png) + +- SPI通信通常由主设备发起,通过以下步骤完成一次通信: + +1. 通过CS选中要通信的从设备,在任意时刻,一个主设备上最多只能有一个从设备被选中。 +2. 通过SCLK给选中的从设备提供时钟信号。 +3. 基于SCLK时钟信号,主设备数据通过MOSI发送给从设备,同时通过MISO接收从设备发送的数据,完成通信。 + +- 根据SCLK时钟信号的CPOL(Clock Polarity,时钟极性)和CPHA(Clock Phase,时钟相位)的不同组合,SPI有以下四种工作模式: + - CPOL=0,CPHA=0 时钟信号idle状态为低电平,第一个时钟边沿采样数据。 + - CPOL=0,CPHA=1 时钟信号idle状态为低电平,第二个时钟边沿采样数据。 + - CPOL=1,CPHA=0 时钟信号idle状态为高电平,第一个时钟边沿采样数据。 + - CPOL=1,CPHA=1 时钟信号idle状态为高电平,第二个时钟边沿采样数据。 + + +- SPI接口定义了操作SPI设备的通用方法集合,包括: + - SPI设备句柄获取和释放。 + - SPI读写: 从SPI设备读取或写入指定长度数据。 + - SPI自定义传输:通过消息传输结构体执行任意读写组合过程。 + - SPI设备配置:获取和设置SPI设备属性。 + + +>![](public_sys-resources/icon-note.gif) **说明:** +>当前只支持主机模式,不支持从机模式。 + +### 接口说明 + +**表 1** SPI驱动API接口功能介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

描述

+

SPI设备句柄获取释放接口

+

SpiOpen

+

获取SPI设备句柄

+

SpiClose

+

释放SPI设备句柄

+

SPI读写接口

+

SpiRead

+

读取指定长度的数据

+

SpiWrite

+

写入指定长度的数据

+

SpiTransfer

+

SPI数据传输接口

+

SPI设备配置接口

+

+

SpiSetCfg

+

根据指定参数,配置SPI设备

+

SpiGetCfg

+

获取SPI设备配置参数

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 + +## 使用指导 + +### 使用流程 + +使用SPI的一般流程如[图2](#fig23885455594)所示。 + +**图 2** SPI使用流程图 + + +![](figures/zh-cn_image_0000001123703482.png) + +### 获取SPI设备句柄 + +在使用SPI进行通信时,首先要调用SpiOpen获取SPI设备句柄,该函数会返回指定总线号和片选号的SPI设备句柄。 + +DevHandle SpiOpen\(const struct SpiDevInfo \*info\); + +**表 2** SpiOpen参数和返回值描述 + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

info

+

SPI设备描述符

+

返回值

+

返回值描述

+

NULL

+

获取SPI设备句柄失败

+

设备句柄

+

对应的SPI设备句柄

+
+ +假设系统中的SPI设备总线号为0,片选号为0,获取该SPI设备句柄的示例如下: + +``` +struct SpiDevInfo spiDevinfo; /* SPI设备描述符 */ +DevHandle spiHandle = NULL; /* SPI设备句柄 */ +spiDevinfo.busNum = 0; /* SPI设备总线号 */ +spiDevinfo.csNum = 0; /* SPI设备片选号 */ + +/* 获取SPI设备句柄 */ +spiHandle = SpiOpen(&spiDevinfo); +if (spiHandle == NULL) { + HDF_LOGE("SpiOpen: failed\n"); + return; +} +``` + +### 获取SPI设备属性 + +在获取到SPI设备句柄之后,需要配置SPI设备属性。配置SPI设备属性之前,可以先获取SPI设备属性,获取SPI设备属性的函数如下所示: + +int32\_t SpiGetCfg\(DevHandle handle, struct SpiCfg \*cfg\); + +**表 3** SpiGetCfg参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SPI设备句柄

+

cfg

+

SPI设备配置参数

+

返回值

+

返回值描述

+

0

+

获取配置成功

+

负数

+

获取配置失败

+
+ +``` +int32_t ret; +struct SpiCfg cfg = {0}; /* SPI配置信息*/ +ret = SpiGetCfg(spiHandle, &cfg); /* 配置SPI设备属性 */ +if (ret != 0) { + HDF_LOGE("SpiGetCfg: failed, ret %d\n", ret); +} +``` + +### 配置SPI设备属性 + +在获取到SPI设备句柄之后,需要配置SPI设备属性,配置SPI设备属性的函数如下所示: + +int32\_t SpiSetCfg\(DevHandle handle, struct SpiCfg \*cfg\); + +**表 4** SpiSetCfg参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SPI设备句柄

+

cfg

+

SPI设备配置参数

+

返回值

+

返回值描述

+

0

+

配置成功

+

负数

+

配置失败

+
+ +``` +int32_t ret; +struct SpiCfg cfg = {0}; /* SPI配置信息*/ +cfg.mode = SPI_MODE_LOOP; /* 以回环模式进行通信 */ +cfg.transferMode = PAL_SPI_POLLING_TRANSFER; /* 以轮询的方式进行通信 */ +cfg.maxSpeedHz = 115200; /* 最大传输频率 */ +cfg.bitsPerWord = 8; /* 读写位宽为8个比特 */ +ret = SpiSetCfg(spiHandle, &cfg); /* 配置SPI设备属性 */ +if (ret != 0) { + HDF_LOGE("SpiSetCfg: failed, ret %d\n", ret); +} +``` + +### 进行SPI通信 + +- 向SPI设备写入指定长度的数据 + +如果只向SPI设备写一次数据,则可以通过以下函数完成: + +int32\_t SpiWrite\(DevHandle handle, uint8\_t \*buf, uint32\_t len\); + +**表 5** SpiWrite参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SPI设备句柄

+

buf

+

待写入数据的指针

+

len

+

待写入的数据长度

+

返回值

+

返回值描述

+

0

+

写入成功

+

负数

+

写入失败

+
+ +``` +int32_t ret; +uint8_t wbuff[4] = {0x12, 0x34, 0x56, 0x78}; +/* 向SPI设备写入指定长度的数据 */ +ret = SpiWrite(spiHandle, wbuff, 4); +if (ret != 0) { + HDF_LOGE("SpiWrite: failed, ret %d\n", ret); +} +``` + +- 从SPI设备读取指定长度的数据 + +如果只读取一次数据,则可以通过以下函数完成: + +int32\_t SpiRead\(DevHandle handle, uint8\_t \*buf, uint32\_t len\); + +**表 6** SpiRead参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SPI设备句柄

+

buf

+

待读取数据的指针

+

len

+

待读取的数据长度

+

返回值

+

返回值描述

+

0

+

读取成功

+

负数

+

读取失败

+
+ +``` +int32_t ret; +uint8_t rbuff[4] = {0}; +/* 从SPI设备读取指定长度的数据 */ +ret = SpiRead(spiHandle, rbuff, 4); +if (ret != 0) { + HDF_LOGE("SpiRead: failed, ret %d\n", ret); +} +``` + +- 自定义传输 + +如果需要发起一次自定义传输,则可以通过以下函数完成: + +int32\_t SpiTransfer\(DevHandle handle, struct SpiMsg \*msgs, uint32\_t count\); + +**表 7** SpiTransfer参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

SPI设备句柄

+

msgs

+

待传输数据的数组

+

count

+

msgs数组长度

+

返回值

+

返回值描述

+

0

+

执行成功

+

负数

+

执行失败

+
+ +``` +int32_t ret; +uint8_t wbuff[1] = {0x12}; +uint8_t rbuff[1] = {0}; +struct SpiMsg msg; /* 自定义传输的消息*/ +msg.wbuf = wbuff; /* 写入的数据 */ +msg.rbuf = rbuff; /* 读取的数据 */ +msg.len = 1; /* 读取、写入数据的长度都是1 */ +msg.csChange = 1; /* 进行下一次传输前关闭片选 */ +msg.delayUs = 0; /* 进行下一次传输前不进行延时 */ +msg.speed = 115200; /* 本次传输的速度 */ +/* 进行一次自定义传输,传输的msg个数为1 */ +ret = SpiTransfer(spiHandle, &msg, 1); +if (ret != 0) { + HDF_LOGE("SpiTransfer: failed, ret %d\n", ret); +} +``` + +### 销毁SPI设备句柄 + +SPI通信完成之后,需要销毁SPI设备句柄,销毁SPI设备句柄的函数如下所示: + +void SpiClose\(DevHandle handle\); + +该函数会释放掉申请的资源。 + +**表 8** SpiClose参数描述 + + + + + + + + + +

参数

+

参数描述

+

handle

+

SPI设备句柄

+
+ +``` +SpiClose(spiHandle); /* 销毁SPI设备句柄 */ +``` + +## 使用实例 + +SPI设备完整的使用示例如下所示,首先获取SPI设备句柄,然后配置SPI设备属性,接着调用读写接口进行数据传输,最后销毁SPI设备句柄。 + +``` +#include "hdf_log.h" +#include "spi_if.h" + +void SpiTestSample(void) +{ + int32_t ret; + struct SpiCfg cfg; /* SPI配置信息 */ + struct SpiDevInfo spiDevinfo; /* SPI设备描述符 */ + DevHandle spiHandle = NULL; /* SPI设备句柄 */ + struct SpiMsg msg; /* 自定义传输的消息 */ + uint8_t rbuff[4] = { 0 }; + uint8_t wbuff[4] = { 0x12, 0x34, 0x56, 0x78 }; + uint8_t wbuff2[4] = { 0xa1, 0xb2, 0xc3, 0xd4 }; + + spiDevinfo.busNum = 0; /* SPI设备总线号 */ + spiDevinfo.csNum = 0; /* SPI设备片选号 */ + spiHandle = SpiOpen(&spiDevinfo); /* 根据spiDevinfo获取SPI设备句柄 */ + if (spiHandle == NULL) { + HDF_LOGE("SpiOpen: failed\n"); + return; + } + /* 获取SPI设备属性 */ + ret = SpiGetCfg(spiHandle, &cfg); + if (ret != 0) { + HDF_LOGE("SpiGetCfg: failed, ret %d\n", ret); + goto err; + } + cfg.maxSpeedHz = 115200; /* 将最大时钟频率改为115200 */ + cfg.bitsPerWord = 8; /* 传输位宽改为8比特 */ + /* 配置SPI设备属性 */ + ret = SpiSetCfg(spiHandle, &cfg); + if (ret != 0) { + HDF_LOGE("SpiSetCfg: failed, ret %d\n", ret); + goto err; + } + /* 向SPI设备写入指定长度的数据 */ + ret = SpiWrite(spiHandle, wbuff, 4); + if (ret != 0) { + HDF_LOGE("SpiWrite: failed, ret %d\n", ret); + goto err; + } + /* 从SPI设备读取指定长度的数据 */ + ret = SpiRead(spiHandle, rbuff, 4); + if (ret != 0) { + HDF_LOGE("SpiRead: failed, ret %d\n", ret); + goto err; + } + msg.wbuf = wbuff2; /* 写入的数据 */ + msg.rbuf = rbuff; /* 读取的数据 */ + msg.len = 4; /* 读取写入数据的长度为4 */ + msg.csChange = 1; /* 进行下一次传输前关闭片选 */ + msg.delayUs = 0; /* 进行下一次传输前不进行延时 */ + msg.speed = 115200; /* 本次传输的速度 */ + /* 进行一次自定义传输,传输的msg个数为1 */ + ret = SpiTransfer(spiHandle, &msg, 1); + if (ret != 0) { + HDF_LOGE("SpiTransfer: failed, ret %d\n", ret); + goto err; + } +err: + /* 销毁SPI设备句柄 */ + SpiClose(spiHandle); +} +``` diff --git "a/zh-cn/device-dev/driver/SPI\344\275\277\347\224\250\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/SPI\344\275\277\347\224\250\345\256\236\344\276\213.md" deleted file mode 100755 index 4c3a6280301..00000000000 --- "a/zh-cn/device-dev/driver/SPI\344\275\277\347\224\250\345\256\236\344\276\213.md" +++ /dev/null @@ -1,70 +0,0 @@ -# SPI使用实例 - -SPI设备完整的使用示例如下所示,首先获取SPI设备句柄,然后配置SPI设备属性,接着调用读写接口进行数据传输,最后销毁SPI设备句柄。 - -``` -#include "hdf_log.h" -#include "spi_if.h" - -void SpiTestSample(void) -{ - int32_t ret; - struct SpiCfg cfg; /* SPI配置信息 */ - struct SpiDevInfo spiDevinfo; /* SPI设备描述符 */ - DevHandle spiHandle = NULL; /* SPI设备句柄 */ - struct SpiMsg msg; /* 自定义传输的消息 */ - uint8_t rbuff[4] = { 0 }; - uint8_t wbuff[4] = { 0x12, 0x34, 0x56, 0x78 }; - uint8_t wbuff2[4] = { 0xa1, 0xb2, 0xc3, 0xd4 }; - - spiDevinfo.busNum = 0; /* SPI设备总线号 */ - spiDevinfo.csNum = 0; /* SPI设备片选号 */ - spiHandle = SpiOpen(&spiDevinfo); /* 根据spiDevinfo获取SPI设备句柄 */ - if (spiHandle == NULL) { - HDF_LOGE("SpiOpen: failed\n"); - return; - } - /* 获取SPI设备属性 */ - ret = SpiGetCfg(spiHandle, &cfg); - if (ret != 0) { - HDF_LOGE("SpiGetCfg: failed, ret %d\n", ret); - goto err; - } - cfg.maxSpeedHz = 115200; /* 将最大时钟频率改为115200 */ - cfg.bitsPerWord = 8; /* 传输位宽改为8比特 */ - /* 配置SPI设备属性 */ - ret = SpiSetCfg(spiHandle, &cfg); - if (ret != 0) { - HDF_LOGE("SpiSetCfg: failed, ret %d\n", ret); - goto err; - } - /* 向SPI设备写入指定长度的数据 */ - ret = SpiWrite(spiHandle, wbuff, 4); - if (ret != 0) { - HDF_LOGE("SpiWrite: failed, ret %d\n", ret); - goto err; - } - /* 从SPI设备读取指定长度的数据 */ - ret = SpiRead(spiHandle, rbuff, 4); - if (ret != 0) { - HDF_LOGE("SpiRead: failed, ret %d\n", ret); - goto err; - } - msg.wbuf = wbuff2; /* 写入的数据 */ - msg.rbuf = rbuff; /* 读取的数据 */ - msg.len = 4; /* 读取写入数据的长度为4 */ - msg.csChange = 1; /* 进行下一次传输前关闭片选 */ - msg.delayUs = 0; /* 进行下一次传输前不进行延时 */ - msg.speed = 115200; /* 本次传输的速度 */ - /* 进行一次自定义传输,传输的msg个数为1 */ - ret = SpiTransfer(spiHandle, &msg, 1); - if (ret != 0) { - HDF_LOGE("SpiTransfer: failed, ret %d\n", ret); - goto err; - } -err: - /* 销毁SPI设备句柄 */ - SpiClose(spiHandle); -} -``` - diff --git "a/zh-cn/device-dev/driver/SPI\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/SPI\344\275\277\347\224\250\346\214\207\345\257\274.md" deleted file mode 100755 index 58698a9460c..00000000000 --- "a/zh-cn/device-dev/driver/SPI\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ /dev/null @@ -1,386 +0,0 @@ -# SPI使用指导 - -- [使用流程](#section691514116412) -- [获取SPI设备句柄](#section12372204616215) -- [获取SPI设备属性](#section17121446171311) -- [配置SPI设备属性](#section97691946634) -- [进行SPI通信](#section197116254416) -- [销毁SPI设备句柄](#section117661819108) - -## 使用流程 - -使用SPI的一般流程如[图1](#fig23885455594)所示。 - -**图 1** SPI使用流程图 - - -![](figures/zh-cn_image_0000001054726248.png) - -## 获取SPI设备句柄 - -在使用SPI进行通信时,首先要调用SpiOpen获取SPI设备句柄,该函数会返回指定总线号和片选号的SPI设备句柄。 - -DevHandle SpiOpen\(const struct SpiDevInfo \*info\); - -**表 1** SpiOpen参数和返回值描述 - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

info

-

SPI设备描述符

-

返回值

-

返回值描述

-

NULL

-

获取SPI设备句柄失败

-

设备句柄

-

对应的SPI设备句柄

-
- -假设系统中的SPI设备总线号为0,片选号为0,获取该SPI设备句柄的示例如下: - -``` -struct SpiDevInfo spiDevinfo; /* SPI设备描述符 */ -DevHandle spiHandle = NULL; /* SPI设备句柄 */ -spiDevinfo.busNum = 0; /* SPI设备总线号 */ -spiDevinfo.csNum = 0; /* SPI设备片选号 */ - -/* 获取SPI设备句柄 */ -spiHandle = SpiOpen(&spiDevinfo); -if (spiHandle == NULL) { - HDF_LOGE("SpiOpen: failed\n"); - return; -} -``` - -## 获取SPI设备属性 - -在获取到SPI设备句柄之后,需要配置SPI设备属性。配置SPI设备属性之前,可以先获取SPI设备属性,获取SPI设备属性的函数如下所示: - -int32\_t SpiGetCfg\(DevHandle handle, struct SpiCfg \*cfg\); - -**表 2** SpiGetCfg参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SPI设备句柄

-

cfg

-

SPI设备配置参数

-

返回值

-

返回值描述

-

0

-

获取配置成功

-

负数

-

获取配置失败

-
- -``` -int32_t ret; -struct SpiCfg cfg = {0}; /* SPI配置信息*/ -ret = SpiGetCfg(spiHandle, &cfg); /* 配置SPI设备属性 */ -if (ret != 0) { - HDF_LOGE("SpiGetCfg: failed, ret %d\n", ret); -} -``` - -## 配置SPI设备属性 - -在获取到SPI设备句柄之后,需要配置SPI设备属性,配置SPI设备属性的函数如下所示: - -int32\_t SpiSetCfg\(DevHandle handle, struct SpiCfg \*cfg\); - -**表 3** SpiSetCfg参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SPI设备句柄

-

cfg

-

SPI设备配置参数

-

返回值

-

返回值描述

-

0

-

配置成功

-

负数

-

配置失败

-
- -``` -int32_t ret; -struct SpiCfg cfg = {0}; /* SPI配置信息*/ -cfg.mode = SPI_MODE_LOOP; /* 以回环模式进行通信 */ -cfg.transferMode = PAL_SPI_POLLING_TRANSFER; /* 以轮询的方式进行通信 */ -cfg.maxSpeedHz = 115200; /* 最大传输频率 */ -cfg.bitsPerWord = 8; /* 读写位宽为8个比特 */ -ret = SpiSetCfg(spiHandle, &cfg); /* 配置SPI设备属性 */ -if (ret != 0) { - HDF_LOGE("SpiSetCfg: failed, ret %d\n", ret); -} -``` - -## 进行SPI通信 - -- 向SPI设备写入指定长度的数据 - -如果只向SPI设备写一次数据,则可以通过以下函数完成: - -int32\_t SpiWrite\(DevHandle handle, uint8\_t \*buf, uint32\_t len\); - -**表 4** SpiWrite参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SPI设备句柄

-

buf

-

待写入数据的指针

-

len

-

待写入的数据长度

-

返回值

-

返回值描述

-

0

-

写入成功

-

负数

-

写入失败

-
- -``` -int32_t ret; -uint8_t wbuff[4] = {0x12, 0x34, 0x56, 0x78}; -/* 向SPI设备写入指定长度的数据 */ -ret = SpiWrite(spiHandle, wbuff, 4); -if (ret != 0) { - HDF_LOGE("SpiWrite: failed, ret %d\n", ret); -} -``` - -- 从SPI设备读取指定长度的数据 - -如果只读取一次数据,则可以通过以下函数完成: - -int32\_t SpiRead\(DevHandle handle, uint8\_t \*buf, uint32\_t len\); - -**表 5** SpiRead参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SPI设备句柄

-

buf

-

待读取数据的指针

-

len

-

待读取的数据长度

-

返回值

-

返回值描述

-

0

-

读取成功

-

负数

-

读取失败

-
- -``` -int32_t ret; -uint8_t rbuff[4] = {0}; -/* 从SPI设备读取指定长度的数据 */ -ret = SpiRead(spiHandle, rbuff, 4); -if (ret != 0) { - HDF_LOGE("SpiRead: failed, ret %d\n", ret); -} -``` - -- 自定义传输 - -如果需要发起一次自定义传输,则可以通过以下函数完成: - -int32\_t SpiTransfer\(DevHandle handle, struct SpiMsg \*msgs, uint32\_t count\); - -**表 6** SpiTransfer参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

SPI设备句柄

-

msgs

-

待传输数据的数组

-

count

-

msgs数组长度

-

返回值

-

返回值描述

-

0

-

执行成功

-

负数

-

执行失败

-
- -``` -int32_t ret; -uint8_t wbuff[1] = {0x12}; -uint8_t rbuff[1] = {0}; -struct SpiMsg msg; /* 自定义传输的消息*/ -msg.wbuf = wbuff; /* 写入的数据 */ -msg.rbuf = rbuff; /* 读取的数据 */ -msg.len = 1; /* 读取、写入数据的长度都是1 */ -msg.csChange = 1; /* 进行下一次传输前关闭片选 */ -msg.delayUs = 0; /* 进行下一次传输前不进行延时 */ -msg.speed = 115200; /* 本次传输的速度 */ -/* 进行一次自定义传输,传输的msg个数为1 */ -ret = SpiTransfer(spiHandle, &msg, 1); -if (ret != 0) { - HDF_LOGE("SpiTransfer: failed, ret %d\n", ret); -} -``` - -## 销毁SPI设备句柄 - -SPI通信完成之后,需要销毁SPI设备句柄,销毁SPI设备句柄的函数如下所示: - -void SpiClose\(DevHandle handle\); - -该函数会释放掉申请的资源。 - -**表 7** SpiClose参数描述 - - - - - - - - - -

参数

-

参数描述

-

handle

-

SPI设备句柄

-
- -``` -SpiClose(spiHandle); /* 销毁SPI设备句柄 */ -``` - diff --git "a/zh-cn/device-dev/driver/SPI\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/SPI\346\246\202\350\277\260.md" deleted file mode 100755 index 3d3567489af..00000000000 --- "a/zh-cn/device-dev/driver/SPI\346\246\202\350\277\260.md" +++ /dev/null @@ -1,107 +0,0 @@ -# SPI概述 - -- [简介](#section9202632114011) -- [接口说明](#section1859594134119) - -## 简介 - -- SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线。 -- SPI是由Motorola公司开发,用于在主设备和从设备之间进行通信,常用于与闪存、实时时钟、传感器以及模数转换器等进行通信。 -- SPI以主从方式工作,通常有一个主设备和一个或者多个从设备。主设备和从设备之间一般用4根线相连,它们分别是: - - SCLK – 时钟信号,由主设备产生; - - MOSI – 主设备数据输出,从设备数据输入; - - MISO – 主设备数据输入,从设备数据输出; - - CS – 片选,从设备使能信号,由主设备控制。 - - -- 一个主设备和两个从设备的连接示意图如[图1](#fig15227181812587)所示,Device A和Device B共享主设备的SCLK、MISO和MOSI三根引脚,Device A的片选CS0连接主设备的CS0,Device B的片选CS1连接主设备的CS1。 - -**图 1** SPI主从设备连接示意图。 - - -![](figures/zh-cn_image_0000001054142582.png) - -- SPI通信通常由主设备发起,通过以下步骤完成一次通信: - -1. 通过CS选中要通信的从设备,在任意时刻,一个主设备上最多只能有一个从设备被选中。 -2. 通过SCLK给选中的从设备提供时钟信号。 -3. 基于SCLK时钟信号,主设备数据通过MOSI发送给从设备,同时通过MISO接收从设备发送的数据,完成通信。 - -- 根据SCLK时钟信号的CPOL(Clock Polarity,时钟极性)和CPHA(Clock Phase,时钟相位)的不同组合,SPI有以下四种工作模式: - - CPOL=0,CPHA=0 时钟信号idle状态为低电平,第一个时钟边沿采样数据。 - - CPOL=0,CPHA=1 时钟信号idle状态为低电平,第二个时钟边沿采样数据。 - - CPOL=1,CPHA=0 时钟信号idle状态为高电平,第一个时钟边沿采样数据。 - - CPOL=1,CPHA=1 时钟信号idle状态为高电平,第二个时钟边沿采样数据。 - - -- SPI接口定义了操作SPI设备的通用方法集合,包括: - - SPI设备句柄获取和释放。 - - SPI读写: 从SPI设备读取或写入指定长度数据。 - - SPI自定义传输:通过消息传输结构体执行任意读写组合过程。 - - SPI设备配置:获取和设置SPI设备属性。 - - ->![](public_sys-resources/icon-note.gif) **说明:** ->当前只支持主机模式,不支持从机模式。 - -## 接口说明 - -**表 1** SPI驱动API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

描述

-

SPI设备句柄获取释放接口

-

SpiOpen

-

获取SPI设备句柄

-

SpiClose

-

释放SPI设备句柄

-

SPI读写接口

-

SpiRead

-

读取指定长度的数据

-

SpiWrite

-

写入指定长度的数据

-

SpiTransfer

-

SPI数据传输接口

-

SPI设备配置接口

-

-

SpiSetCfg

-

根据指定参数,配置SPI设备

-

SpiGetCfg

-

获取SPI设备配置参数

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 - diff --git a/zh-cn/device-dev/driver/TOUCHSCREEN.md b/zh-cn/device-dev/driver/TOUCHSCREEN.md index ce5156c848c..f49a1fb1981 100755 --- a/zh-cn/device-dev/driver/TOUCHSCREEN.md +++ b/zh-cn/device-dev/driver/TOUCHSCREEN.md @@ -1,9 +1,410 @@ -# TOUCHSCREEN +# TOUCHSCREEN -- **[Touchscreen开发概述](Touchscreen开发概述.md)** +- [概述](#section175431838101617) + - [接口说明](#section17667171301711) -- **[Touchscreen开发指导](Touchscreen开发指导.md)** +- [开发指导](#section65745222184) + - [开发步骤](#section865734181916) -- **[Touchscreen开发实例](Touchscreen开发实例.md)** +- [开发实例](#section263714411191) + - [设备描述配置](#section18249155619195) + - [板级配置及器件私有配置](#section3571192072014) + - [添加器件驱动](#section6356758162015) +## 概述 + +- **Touchscreen驱动主要任务** + + Touchscreen驱动用于驱动触摸屏使其正常工作,该驱动主要完成如下工作:对触摸屏驱动IC进行上电、配置硬件管脚并初始化其状态、注册中断、配置通信接口(I2C或SPI)、设定input相关配置、下载及更新固件等操作。 + + +- **Touchscreen驱动层次说明** + + 本节主要介绍基于input驱动模型开发touchscreen器件驱动,其整体的框架模型如[图1](#fig6251184817261)。 + + Input驱动模型基于HDF驱动框架、PLATFORM接口、OSAL接口进行开发,向上对接规范化的驱动接口HDI(Hardware Driver Interface)层,通过Input-HDI层对外提供硬件能力,即上层input service可以通过HDI接口层获取相应的驱动能力,进而操控touchscreen等输入设备。 + + +**图 1** 基于HDF驱动框架的input驱动模型 +![](figures/基于HDF驱动框架的input驱动模型.png "基于HDF驱动框架的input驱动模型") + +- **Input驱动模型介绍** + + Input驱动模型核心部分由设备管理层、公共驱动层、器件驱动层组成。器件产生的数据借助平台数据通道能力从内核传递到用户态,驱动模型通过配置文件适配不同器件及硬件平台,提高开发者的器件驱动开发效率。如下部分为模型各部分的说明: + + (1)input设备管理:为各类输入设备驱动提供input设备的注册、注销接口,同时统一管理input设备列表; + + (2)input平台驱动:指各类input设备的公共抽象驱动(例如触摸屏的公共驱动),负责对板级硬件进行初始化、硬件中断处理、向manager注册input设备等; + + (3)input器件驱动:指各器件厂家的差异化驱动,通过适配平台驱动预留的差异化接口,实现器件驱动开发量最小化; + + (4)input数据通道:提供一套通用的数据上报通道,各类别的input设备驱动均可用此通道上报input事件; + + (5)input配置解析:负责对input设备的板级配置及器件私有配置进行解析及管理。 + + +- **基于HDF驱动框架开发器件驱动的优势** + + 在HDF(Hardware Driver Foundation)[驱动管理框架](驱动开发.md)的基础上,input驱动模型调用OSAL接口层和Platfom接口层提供的基础接口进行开发,包括bus通信接口、操作系统原生接口(memory、lock、thread、timer等)。由于OSAL接口和Platform接口屏蔽了芯片平台差异,所以基于input驱动模型实现的touchscreen驱动可以进行跨平台、跨OS迁移,以便逐步实现驱动的一次开发,多端部署。 + + +### 接口说明 + +Touchscreen器件的硬件接口相对简单,根据PIN脚的属性,可以简单分为如下三类: + +- 电源接口 +- IO控制接口 +- 通信接口 + +**图 2** Touchscreen器件常用管脚 +![](figures/Touchscreen器件常用管脚.png "Touchscreen器件常用管脚") + +如上图所示的三类接口,分别做简要说明如下: + +1. **电源接口** + - LDO\_1P8:1.8v数字电路 + - LDO\_3P3:3.3v模拟电路 + + 通常情况下,touchscreen驱动IC和LCD驱动IC是相互分离的,这种情况下,touchscreen驱动IC一般同时需要1.8v和3.3v两路供电。随着芯片演进,业内已有touchscreen驱动IC和LCD驱动IC集成在一颗IC中的芯片案例,对touchscreen而言,只需要关注1.8v供电即可,其内部需要的3.3v电源,会在驱动IC内部从LCD的VSP电源(典型值5.5V)中分出来。 + + +2. **IO控制接口** + - Reset:reset管脚,用于在系统休眠、唤醒时,由主机侧对驱动IC进行复位操作。 + - INT:中断管脚,需要在驱动初始化时,配置为输入上拉状态。在驱动IC检测到外部触摸信号后,通过操作中断管脚来触发中断,器件驱动则会在中断处理函数中进行报点数据读取等操作。 + +3. **通信接口** + - I2C:由于touchscreen的报点数据量相对较少,所以一般选用I2C方式传输数据。I2C的具体协议及对应操作接口,可以参考Platform接口层中的[“I2C”使用指南](I2C.md#section1695201514281)。 + - SPI:部分厂商,由于需要传递的数据不止报点坐标,而是需要获取基础容值,数据量较大,所以会选用SPI通信方式。SPI的具体协议及对应操作接口,可以参考Platform接口层中的[“SPI” 使用指南](SPI.md#section71363452477)。 + + +## 开发指导 + +Input驱动模型是基于HDF框架、Platform接口和OSAL接口开发,不区分操作系统和芯片平台,为touchscreen等输入器件提供统一的驱动开发架构。 + +- 如下以touchscreen器件驱动为例,说明input驱动模型的完整加载流程: + + (1)设备描述配置:由开发者参考已有模板进行设备描述配置,包括驱动加载顺序、板级硬件信息、器件私有数据信息等。 + + (2)加载input设备管理驱动:input设备管理驱动由HDF驱动加载,完成设备manager的创建并对其初始化。 + + (3)加载平台驱动:平台驱动由HDF框架加载,主要完成板级配置解析及硬件初始化,并提供器件注册接口。 + + (4)加载器件驱动:器件驱动也由HDF框架加载,完成器件设备的实例化,包括器件私有配置解析和平台预留的差异化接口适配。 + + (5)器件设备向平台驱动注册:将实例化的器件设备向平台驱动注册,实现设备和驱动的绑定,并完成中断注册、上下电等器件初始化工作。 + + (6)input设备注册:在器件初始化完成后,实例化input设备,并将其注册到input manager进行管理。 + + +### 开发步骤 + +1. 设备描述配置 + + 目前Input驱动基于HDF驱动框架编写,驱动的加载启动由HDF驱动管理框架统一处理。首先需要在对应的配置文件中,将驱动信息注册进去,如是否加载、加载优先级,此后HDF驱动框架会逐一启动注册过的驱动模块。驱动的相关配置请参考[HDF驱动框架配置指导](驱动开发.md#section1969312275533)。 + +2. 板级配置及Touchscreen器件私有配置 + + 配置对应的IO管脚功能,例如对单板上为touchscreen设计预留的I2C Pin脚,需设置对应的寄存器,使其选择I2C的通信功能。 + +3. 实现器件差异化适配接口 + + 根据硬件单板设计的通信接口,使用Platform接口层提供的管脚操作接口配置对应的复位管脚、中断管脚以及电源操作,对于GPIO的操作,可参考[GPIO操作接口指导](GPIO.md#section259614242196) + + +## 开发实例 + +本实例提供touchscreen驱动开发示例,并简要对具体关键点进行开发说明。 + +### 设备描述配置 + +如下配置主要包含input驱动模型各模块层级信息,具体原理可参考[HDF驱动开发指南](驱动开发.md),HDF框架依据该配置信息实现对Input模型各模块的依次加载等。 + +``` +input :: host { + hostName = "input_host"; + priority = 100; + device_input_manager :: device { + device0 :: deviceNode { + policy = 2; // 向外发布服务 + priority = 100; // 加载优先级,在input模块内,manager模块优先级应为最高 + preload = 0; // 加载该驱动 0:加载 1:不加载 + permission = 0660; + moduleName = "HDF_INPUT_MANAGER"; + serviceName = "input_dev_manager"; + deviceMatchAttr = ""; + } + } + device_hdf_touch :: device { + device0 :: deviceNode { + policy = 2; + priority = 120; + preload = 0; + permission = 0660; + moduleName = "HDF_TOUCH"; + serviceName = "event1"; + deviceMatchAttr = "touch_device1"; + } + } + + device_touch_chip :: device { + device0 :: deviceNode { + policy = 0; + priority = 130; + preload = 0; + permission = 0660; + moduleName = "HDF_TOUCH_SAMPLE"; + serviceName = "hdf_touch_sample_service"; + deviceMatchAttr = "zsj_sample_5p5"; + } + } +} +``` + +### 板级配置及器件私有配置 + +如下配置包含板级硬件配置及器件私有数据配置,实际业务开发时,可根据具体需求增删及修改如下配置文件信息。 + +``` +root { + input_config { + touchConfig { + touch0 { + boardConfig { + match_attr = "touch_device1"; + inputAttr { + inputType = 0; // 0代表触摸屏 + solutionX = 480; + solutionY = 960; + devName = "main_touch"; // 设备名称 + } + busConfig { + busType = 0; // 0代表I2C + busNum = 6; + clkGpio = 86; + dataGpio = 87; + i2cClkIomux = [0x114f0048, 0x403]; // i2c_clk对应pin的寄存器配置 + i2cDataIomux = [0x114f004c, 0x403]; // i2c_data对应pin的寄存器配置 + } + pinConfig { + rstGpio = 3; + intGpio = 4; + rstRegCfg = [0x112f0094, 0x400]; // reset对应pin的寄存器配置 + intRegCfg = [0x112f0098, 0x400]; // interrupt对应pin的寄存器配置 + } + powerConfig { + vccType = 2; // 1代表LDO、2代表GPIO、3代表PMIC + vccNum = 20; // GPIO号为20 + vccValue = 1800; // 电压幅值为1800mV + vciType = 1; + vciNum = 12; + vciValue = 3300; + } + featureConfig { + capacitanceTest = 0; + gestureMode = 0; + gloverMOde = 0; + coverMode = 0; + chargerMode = 0; + knuckleMode = 0; + } + } + chipConfig { + template touchChip { + match_attr = ""; + chipName = "sample"; + vendorName = "zsj"; + chipInfo = "AAAA11222"; // 1~4字符代表产品名,5~6字符代表IC型号,7~9字符代表模型型号 + busType = 0; + deviceAddr = 0x5D; + irqFlag = 2; // 1代表上升沿触发,2代表下降沿触发,4代表高电平触发,8代表低电平触发 + maxSpeed = 400; + chipVersion = 0; + powerSequence { + /* 上电时序的配置含义说明: + [类型, 状态, 方向 , 延时] + 0代表空,1代表vcc电源(1.8V),2代表VCI电源(3.3V),3代表复位管脚,4代表中断管脚 + 0代表下电或拉低,1代表上电或拉高,2代表无操作 + 0代表输入方向,1代表输出方向,2代表无操作 + 代表延时多少毫秒, 例如20代表延时20ms + */ + powerOnSeq = [4, 0, 1, 0, + 3, 0, 1, 10, + 3, 1, 2, 60, + 4, 2, 0, 0]; + suspendSeq = [3, 0, 2, 10]; + resumeSeq = [3, 1, 2, 10]; + powerOffSeq = [3, 0, 2, 10, + 1, 0, 2, 20]; + } + } + chip0 :: touchChip { + match_attr = "zsj_sample_5p5"; + chipInfo = "ZIDN45100"; + chipVersion = 0; + } + } + } + } + } +} +``` + +### 添加器件驱动 + +在器件驱动中,主要实现了平台预留的差异化接口,以器件数据获取及解析进行示例说明。具体开发过程,需要根据实际使用的单板及器件进行适配。 + +``` +/* 将从器件中读取到的报点数据解析为坐标 */ +static void ParsePointData(ChipDevice *device, FrameData *frame, uint8_t *buf, uint8_t pointNum) +{ + int32_t resX = device->driver->boardCfg->attr.resolutionX; + int32_t resY = device->driver->boardCfg->attr.resolutionY; + + for (int32_t i = 0; i < pointNum; i++) { + frame->fingers[i].y = (buf[GT_POINT_SIZE * i + GT_X_LOW] & ONE_BYTE_MASK) | + ((buf[GT_POINT_SIZE * i + GT_X_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); + frame->fingers[i].x = (buf[GT_POINT_SIZE * i + GT_Y_LOW] & ONE_BYTE_MASK) | + ((buf[GT_POINT_SIZE * i + GT_Y_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); + frame->fingers[i].valid = true; + } +} +/* 从器件中获取报点数据 */ +static int32_t ChipDataHandle(ChipDevice *device) +{ + int32_t ret; + uint8_t touchStatus = 0; + uint8_t pointNum; + uint8_t buf[GT_POINT_SIZE * MAX_SUPPORT_POINT] = {0}; + InputI2cClient *i2cClient = &device->driver->i2cClient; + uint8_t reg[GT_ADDR_LEN] = {0}; + FrameData *frame = &device->driver->frameData; + reg[0] = (GT_BUF_STATE_ADDR >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; + reg[1] = GT_BUF_STATE_ADDR & ONE_BYTE_MASK; + ret = InputI2cRead(i2cClient, reg, GT_ADDR_LEN, &touchStatus, 1); + if (ret < 0 || touchStatus == GT_EVENT_INVALID) { + return HDF_FAILURE; + } + OsalMutexLock(&device->driver->mutex); + (void)memset_s(frame, sizeof(FrameData), 0, sizeof(FrameData)); + if (touchStatus == GT_EVENT_UP) { + frame->realPointNum = 0; + frame->definedEvent = TOUCH_UP; + goto exit; + } + reg[0] = (GT_X_LOW_BYTE_BASE >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; + reg[1] = GT_X_LOW_BYTE_BASE & ONE_BYTE_MASK; + pointNum = touchStatus & GT_FINGER_NUM_MASK; + if (pointNum <= 0 || pointNum > MAX_SUPPORT_POINT) { + HDF_LOGE("%s: pointNum is invalid, %d", __func__, pointNum); + (void)ChipCleanBuffer(i2cClient); + OsalMutexUnlock(&device->driver->mutex); + return HDF_FAILURE; + } + frame->realPointNum = pointNum; + frame->definedEvent = TOUCH_DOWN; + /* 从寄存器中读取报点值 */ + (void)InputI2cRead(i2cClient, reg, GT_ADDR_LEN, buf, GT_POINT_SIZE * pointNum); + /* 解析报点值 */ + ParsePointData(device, frame, buf, pointNum); +exit: + OsalMutexUnlock(&device->driver->mutex); + if (ChipCleanBuffer(i2cClient) != HDF_SUCCESS) { + return HDF_FAILURE; + } + return HDF_SUCCESS; +} + +static struct TouchChipOps g_sampleChipOps = { + .Init = ChipInit, + .Detect = ChipDetect, + .Resume = ChipResume, + .Suspend = ChipSuspend, + .DataHandle = ChipDataHandle, +}; + +static TouchChipCfg *ChipConfigInstance(struct HdfDeviceObject *device) +{ + TouchChipCfg *chipCfg = (TouchChipCfg *)OsalMemAlloc(sizeof(TouchChipCfg)); + if (chipCfg == NULL) { + HDF_LOGE("%s: instance chip config failed", __func__); + return NULL; + } + (void)memset_s(chipCfg, sizeof(TouchChipCfg), 0, sizeof(TouchChipCfg)); + /* 解析器件私有配置 */ + if (ParseTouchChipConfig(device->property, chipCfg) != HDF_SUCCESS) { + HDF_LOGE("%s: parse chip config failed", __func__); + OsalMemFree(chipCfg); + chipCfg = NULL; + } + return chipCfg; +} + +static ChipDevice *ChipDeviceInstance(void) +{ + ChipDevice *chipDev = (ChipDevice *)OsalMemAlloc(sizeof(ChipDevice)); + if (chipDev == NULL) { + HDF_LOGE("%s: instance chip device failed", __func__); + return NULL; + } + (void)memset_s(chipDev, sizeof(ChipDevice), 0, sizeof(ChipDevice)); + return chipDev; +} + +static void FreeChipConfig(TouchChipCfg *config) +{ + if (config->pwrSeq.pwrOn.buf != NULL) { + OsalMemFree(config->pwrSeq.pwrOn.buf); + } + if (config->pwrSeq.pwrOff.buf != NULL) { + OsalMemFree(config->pwrSeq.pwrOff.buf); + } + OsalMemFree(config); +} + +static int32_t HdfSampleChipInit(struct HdfDeviceObject *device) +{ + TouchChipCfg *chipCfg = NULL; + ChipDevice *chipDev = NULL; + HDF_LOGE("%s: enter", __func__); + if (device == NULL) { + return HDF_ERR_INVALID_PARAM; + } + /* 器件私有配置解析 */ + chipCfg = ChipConfigInstance(device); + if (chipCfg == NULL) { + return HDF_ERR_MALLOC_FAIL; + } + /* 器件设备实例化 */ + chipDev = ChipDeviceInstance(); + if (chipDev == NULL) { + goto freeCfg; + } + chipDev->chipCfg = chipCfg; + chipDev->ops = &g_sampleChipOps; + chipDev->chipName = chipCfg->chipName; + chipDev->vendorName = chipCfg->vendorName; + + /* 器件设备注册到平台驱动 */ + if (RegisterChipDevice(chipDev) != HDF_SUCCESS) { + goto freeDev; + } + HDF_LOGI("%s: exit succ, chipName = %s", __func__, chipCfg->chipName); + return HDF_SUCCESS; + +freeDev: + OsalMemFree(chipDev); +freeCfg: + FreeChipConfig(chipCfg); + return HDF_FAILURE; +} + +struct HdfDriverEntry g_touchSampleChipEntry = { + .moduleVersion = 1, + .moduleName = "HDF_TOUCH_SAMPLE", + .Init = HdfSampleChipInit, +}; + +HDF_INIT(g_touchSampleChipEntry); +``` + diff --git "a/zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\345\256\236\344\276\213.md" deleted file mode 100755 index a298d618c15..00000000000 --- "a/zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\345\256\236\344\276\213.md" +++ /dev/null @@ -1,300 +0,0 @@ -# Touchscreen开发实例 - -- [设备描述配置](#section85281142102317) -- [板级配置及器件私有配置](#section189081946192410) -- [添加器件驱动](#section19856687253) - -本实例提供touchscreen驱动开发示例,并简要对具体关键点进行开发说明。 - -## 设备描述配置 - -如下配置主要包含input驱动模型各模块层级信息,具体原理可参考[HDF驱动开发指南](驱动开发.md),HDF框架依据该配置信息实现对Input模型各模块的依次加载等。 - -``` -input :: host { - hostName = "input_host"; - priority = 100; - device_input_manager :: device { - device0 :: deviceNode { - policy = 2; // 向外发布服务 - priority = 100; // 加载优先级,在input模块内,manager模块优先级应为最高 - preload = 0; // 加载该驱动 0:加载 1:不加载 - permission = 0660; - moduleName = "HDF_INPUT_MANAGER"; - serviceName = "input_dev_manager"; - deviceMatchAttr = ""; - } - } - device_hdf_touch :: device { - device0 :: deviceNode { - policy = 2; - priority = 120; - preload = 0; - permission = 0660; - moduleName = "HDF_TOUCH"; - serviceName = "event1"; - deviceMatchAttr = "touch_device1"; - } - } - - device_touch_chip :: device { - device0 :: deviceNode { - policy = 0; - priority = 130; - preload = 0; - permission = 0660; - moduleName = "HDF_TOUCH_SAMPLE"; - serviceName = "hdf_touch_sample_service"; - deviceMatchAttr = "zsj_sample_5p5"; - } - } -} -``` - -## 板级配置及器件私有配置 - -如下配置包含板级硬件配置及器件私有数据配置,实际业务开发时,可根据具体需求增删及修改如下配置文件信息。 - -``` -root { - input_config { - touchConfig { - touch0 { - boardConfig { - match_attr = "touch_device1"; - inputAttr { - inputType = 0; // 0代表触摸屏 - solutionX = 480; - solutionY = 960; - devName = "main_touch"; // 设备名称 - } - busConfig { - busType = 0; // 0代表I2C - busNum = 6; - clkGpio = 86; - dataGpio = 87; - i2cClkIomux = [0x114f0048, 0x403]; // i2c_clk对应pin的寄存器配置 - i2cDataIomux = [0x114f004c, 0x403]; // i2c_data对应pin的寄存器配置 - } - pinConfig { - rstGpio = 3; - intGpio = 4; - rstRegCfg = [0x112f0094, 0x400]; // reset对应pin的寄存器配置 - intRegCfg = [0x112f0098, 0x400]; // interrupt对应pin的寄存器配置 - } - powerConfig { - vccType = 2; // 1代表LDO、2代表GPIO、3代表PMIC - vccNum = 20; // GPIO号为20 - vccValue = 1800; // 电压幅值为1800mV - vciType = 1; - vciNum = 12; - vciValue = 3300; - } - featureConfig { - capacitanceTest = 0; - gestureMode = 0; - gloverMOde = 0; - coverMode = 0; - chargerMode = 0; - knuckleMode = 0; - } - } - chipConfig { - template touchChip { - match_attr = ""; - chipName = "sample"; - vendorName = "zsj"; - chipInfo = "AAAA11222"; // 1~4字符代表产品名,5~6字符代表IC型号,7~9字符代表模型型号 - busType = 0; - deviceAddr = 0x5D; - irqFlag = 2; // 1代表上升沿触发,2代表下降沿触发,4代表高电平触发,8代表低电平触发 - maxSpeed = 400; - chipVersion = 0; - powerSequence { - /* 上电时序的配置含义说明: - [类型, 状态, 方向 , 延时] - 0代表空,1代表vcc电源(1.8V),2代表VCI电源(3.3V),3代表复位管脚,4代表中断管脚 - 0代表下电或拉低,1代表上电或拉高,2代表无操作 - 0代表输入方向,1代表输出方向,2代表无操作 - 代表延时多少毫秒, 例如20代表延时20ms - */ - powerOnSeq = [4, 0, 1, 0, - 3, 0, 1, 10, - 3, 1, 2, 60, - 4, 2, 0, 0]; - suspendSeq = [3, 0, 2, 10]; - resumeSeq = [3, 1, 2, 10]; - powerOffSeq = [3, 0, 2, 10, - 1, 0, 2, 20]; - } - } - chip0 :: touchChip { - match_attr = "zsj_sample_5p5"; - chipInfo = "ZIDN45100"; - chipVersion = 0; - } - } - } - } - } -} -``` - -## 添加器件驱动 - -在器件驱动中,主要实现了平台预留的差异化接口,以器件数据获取及解析进行示例说明。具体开发过程,需要根据实际使用的单板及器件进行适配。 - -``` -/* 将从器件中读取到的报点数据解析为坐标 */ -static void ParsePointData(ChipDevice *device, FrameData *frame, uint8_t *buf, uint8_t pointNum) -{ - int32_t resX = device->driver->boardCfg->attr.resolutionX; - int32_t resY = device->driver->boardCfg->attr.resolutionY; - - for (int32_t i = 0; i < pointNum; i++) { - frame->fingers[i].y = (buf[GT_POINT_SIZE * i + GT_X_LOW] & ONE_BYTE_MASK) | - ((buf[GT_POINT_SIZE * i + GT_X_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); - frame->fingers[i].x = (buf[GT_POINT_SIZE * i + GT_Y_LOW] & ONE_BYTE_MASK) | - ((buf[GT_POINT_SIZE * i + GT_Y_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); - frame->fingers[i].valid = true; - } -} -/* 从器件中获取报点数据 */ -static int32_t ChipDataHandle(ChipDevice *device) -{ - int32_t ret; - uint8_t touchStatus = 0; - uint8_t pointNum; - uint8_t buf[GT_POINT_SIZE * MAX_SUPPORT_POINT] = {0}; - InputI2cClient *i2cClient = &device->driver->i2cClient; - uint8_t reg[GT_ADDR_LEN] = {0}; - FrameData *frame = &device->driver->frameData; - reg[0] = (GT_BUF_STATE_ADDR >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; - reg[1] = GT_BUF_STATE_ADDR & ONE_BYTE_MASK; - ret = InputI2cRead(i2cClient, reg, GT_ADDR_LEN, &touchStatus, 1); - if (ret < 0 || touchStatus == GT_EVENT_INVALID) { - return HDF_FAILURE; - } - OsalMutexLock(&device->driver->mutex); - (void)memset_s(frame, sizeof(FrameData), 0, sizeof(FrameData)); - if (touchStatus == GT_EVENT_UP) { - frame->realPointNum = 0; - frame->definedEvent = TOUCH_UP; - goto exit; - } - reg[0] = (GT_X_LOW_BYTE_BASE >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; - reg[1] = GT_X_LOW_BYTE_BASE & ONE_BYTE_MASK; - pointNum = touchStatus & GT_FINGER_NUM_MASK; - if (pointNum <= 0 || pointNum > MAX_SUPPORT_POINT) { - HDF_LOGE("%s: pointNum is invalid, %d", __func__, pointNum); - (void)ChipCleanBuffer(i2cClient); - OsalMutexUnlock(&device->driver->mutex); - return HDF_FAILURE; - } - frame->realPointNum = pointNum; - frame->definedEvent = TOUCH_DOWN; - /* 从寄存器中读取报点值 */ - (void)InputI2cRead(i2cClient, reg, GT_ADDR_LEN, buf, GT_POINT_SIZE * pointNum); - /* 解析报点值 */ - ParsePointData(device, frame, buf, pointNum); -exit: - OsalMutexUnlock(&device->driver->mutex); - if (ChipCleanBuffer(i2cClient) != HDF_SUCCESS) { - return HDF_FAILURE; - } - return HDF_SUCCESS; -} - -static struct TouchChipOps g_sampleChipOps = { - .Init = ChipInit, - .Detect = ChipDetect, - .Resume = ChipResume, - .Suspend = ChipSuspend, - .DataHandle = ChipDataHandle, -}; - -static TouchChipCfg *ChipConfigInstance(struct HdfDeviceObject *device) -{ - TouchChipCfg *chipCfg = (TouchChipCfg *)OsalMemAlloc(sizeof(TouchChipCfg)); - if (chipCfg == NULL) { - HDF_LOGE("%s: instance chip config failed", __func__); - return NULL; - } - (void)memset_s(chipCfg, sizeof(TouchChipCfg), 0, sizeof(TouchChipCfg)); - /* 解析器件私有配置 */ - if (ParseTouchChipConfig(device->property, chipCfg) != HDF_SUCCESS) { - HDF_LOGE("%s: parse chip config failed", __func__); - OsalMemFree(chipCfg); - chipCfg = NULL; - } - return chipCfg; -} - -static ChipDevice *ChipDeviceInstance(void) -{ - ChipDevice *chipDev = (ChipDevice *)OsalMemAlloc(sizeof(ChipDevice)); - if (chipDev == NULL) { - HDF_LOGE("%s: instance chip device failed", __func__); - return NULL; - } - (void)memset_s(chipDev, sizeof(ChipDevice), 0, sizeof(ChipDevice)); - return chipDev; -} - -static void FreeChipConfig(TouchChipCfg *config) -{ - if (config->pwrSeq.pwrOn.buf != NULL) { - OsalMemFree(config->pwrSeq.pwrOn.buf); - } - if (config->pwrSeq.pwrOff.buf != NULL) { - OsalMemFree(config->pwrSeq.pwrOff.buf); - } - OsalMemFree(config); -} - -static int32_t HdfSampleChipInit(struct HdfDeviceObject *device) -{ - TouchChipCfg *chipCfg = NULL; - ChipDevice *chipDev = NULL; - HDF_LOGE("%s: enter", __func__); - if (device == NULL) { - return HDF_ERR_INVALID_PARAM; - } - /* 器件私有配置解析 */ - chipCfg = ChipConfigInstance(device); - if (chipCfg == NULL) { - return HDF_ERR_MALLOC_FAIL; - } - /* 器件设备实例化 */ - chipDev = ChipDeviceInstance(); - if (chipDev == NULL) { - goto freeCfg; - } - chipDev->chipCfg = chipCfg; - chipDev->ops = &g_sampleChipOps; - chipDev->chipName = chipCfg->chipName; - chipDev->vendorName = chipCfg->vendorName; - - /* 器件设备注册到平台驱动 */ - if (RegisterChipDevice(chipDev) != HDF_SUCCESS) { - goto freeDev; - } - HDF_LOGI("%s: exit succ, chipName = %s", __func__, chipCfg->chipName); - return HDF_SUCCESS; - -freeDev: - OsalMemFree(chipDev); -freeCfg: - FreeChipConfig(chipCfg); - return HDF_FAILURE; -} - -struct HdfDriverEntry g_touchSampleChipEntry = { - .moduleVersion = 1, - .moduleName = "HDF_TOUCH_SAMPLE", - .Init = HdfSampleChipInit, -}; - -HDF_INIT(g_touchSampleChipEntry); -``` - diff --git "a/zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\346\214\207\345\257\274.md" deleted file mode 100755 index 09dc518533e..00000000000 --- "a/zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ /dev/null @@ -1,36 +0,0 @@ -# Touchscreen开发指导 - -- [开发步骤](#section1255740132616) - -Input驱动模型是基于HDF框架、Platform接口和OSAL接口开发,不区分操作系统和芯片平台,为touchscreen等输入器件提供统一的驱动开发架构。 - -- 如下以touchscreen器件驱动为例,说明input驱动模型的完整加载流程: - - (1)设备描述配置:由开发者参考已有模板进行设备描述配置,包括驱动加载顺序、板级硬件信息、器件私有数据信息等。 - - (2)加载input设备管理驱动:input设备管理驱动由HDF驱动加载,完成设备manager的创建并对其初始化。 - - (3)加载平台驱动:平台驱动由HDF框架加载,主要完成板级配置解析及硬件初始化,并提供器件注册接口。 - - (4)加载器件驱动:器件驱动也由HDF框架加载,完成器件设备的实例化,包括器件私有配置解析和平台预留的差异化接口适配。 - - (5)器件设备向平台驱动注册:将实例化的器件设备向平台驱动注册,实现设备和驱动的绑定,并完成中断注册、上下电等器件初始化工作。 - - (6)input设备注册:在器件初始化完成后,实例化input设备,并将其注册到input manager进行管理。 - - -## 开发步骤 - -1. 设备描述配置 - - 目前Input驱动基于HDF驱动框架编写,驱动的加载启动由HDF驱动管理框架统一处理。首先需要在对应的配置文件中,将驱动信息注册进去,如是否加载、加载优先级,此后HDF驱动框架会逐一启动注册过的驱动模块。驱动的相关配置请参考[HDF驱动框架配置指导](驱动开发.md#section1969312275533)。 - -2. 板级配置及Touchscreen器件私有配置 - - 配置对应的IO管脚功能,例如对单板上为touchscreen设计预留的I2C Pin脚,需设置对应的寄存器,使其选择I2C的通信功能。 - -3. 实现器件差异化适配接口 - - 根据硬件单板设计的通信接口,使用Platform接口层提供的管脚操作接口配置对应的复位管脚、中断管脚以及电源操作,对于GPIO的操作,可参考[GPIO操作接口指导](GPIO使用指导.md) - - diff --git "a/zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\346\246\202\350\277\260.md" deleted file mode 100755 index b6456936b01..00000000000 --- "a/zh-cn/device-dev/driver/Touchscreen\345\274\200\345\217\221\346\246\202\350\277\260.md" +++ /dev/null @@ -1,71 +0,0 @@ -# Touchscreen开发概述 - -- [简介](#section124332411260) -- [接口说明](#section10542625172618) - -## 简介 - -- **Touchscreen驱动主要任务** - - Touchscreen驱动用于驱动触摸屏使其正常工作,该驱动主要完成如下工作:对触摸屏驱动IC进行上电、配置硬件管脚并初始化其状态、注册中断、配置通信接口(I2C或SPI)、设定input相关配置、下载及更新固件等操作。 - - -- **Touchscreen驱动层次说明** - - 本节主要介绍基于input驱动模型开发touchscreen器件驱动,其整体的框架模型如[图1](#fig6251184817261)。 - - Input驱动模型基于HDF驱动框架、PLATFORM接口、OSAL接口进行开发,向上对接规范化的驱动接口HDI(Hardware Driver Interface)层,通过Input-HDI层对外提供硬件能力,即上层input service可以通过HDI接口层获取相应的驱动能力,进而操控touchscreen等输入设备。 - - -**图 1** 基于HDF驱动框架的input驱动模型 -![](figures/基于HDF驱动框架的input驱动模型.png "基于HDF驱动框架的input驱动模型") - -- **Input驱动模型介绍** - - Input驱动模型核心部分由设备管理层、公共驱动层、器件驱动层组成。器件产生的数据借助平台数据通道能力从内核传递到用户态,驱动模型通过配置文件适配不同器件及硬件平台,提高开发者的器件驱动开发效率。如下部分为模型各部分的说明: - - (1)input设备管理:为各类输入设备驱动提供input设备的注册、注销接口,同时统一管理input设备列表; - - (2)input平台驱动:指各类input设备的公共抽象驱动(例如触摸屏的公共驱动),负责对板级硬件进行初始化、硬件中断处理、向manager注册input设备等; - - (3)input器件驱动:指各器件厂家的差异化驱动,通过适配平台驱动预留的差异化接口,实现器件驱动开发量最小化; - - (4)input数据通道:提供一套通用的数据上报通道,各类别的input设备驱动均可用此通道上报input事件; - - (5)input配置解析:负责对input设备的板级配置及器件私有配置进行解析及管理。 - - -- **基于HDF驱动框架开发器件驱动的优势** - - 在HDF(Hardware Driver Foundation)[驱动管理框架](驱动开发.md)的基础上,input驱动模型调用OSAL接口层和Platfom接口层提供的基础接口进行开发,包括bus通信接口、操作系统原生接口(memory、lock、thread、timer等)。由于OSAL接口和Platform接口屏蔽了芯片平台差异,所以基于input驱动模型实现的touchscreen驱动可以进行跨平台、跨OS迁移,以便逐步实现驱动的一次开发,多端部署。 - - -## 接口说明 - -Touchscreen器件的硬件接口相对简单,根据PIN脚的属性,可以简单分为如下三类: - -- 电源接口 -- IO控制接口 -- 通信接口 - -**图 2** Touchscreen器件常用管脚 -![](figures/Touchscreen器件常用管脚.png "Touchscreen器件常用管脚") - -如上图所示的三类接口,分别做简要说明如下: - -1. **电源接口** - - LDO\_1P8:1.8v数字电路 - - LDO\_3P3:3.3v模拟电路 - - 通常情况下,touchscreen驱动IC和LCD驱动IC是相互分离的,这种情况下,touchscreen驱动IC一般同时需要1.8v和3.3v两路供电。随着芯片演进,业内已有touchscreen驱动IC和LCD驱动IC集成在一颗IC中的芯片案例,对touchscreen而言,只需要关注1.8v供电即可,其内部需要的3.3v电源,会在驱动IC内部从LCD的VSP电源(典型值5.5V)中分出来。 - - -2. **IO控制接口** - - Reset:reset管脚,用于在系统休眠、唤醒时,由主机侧对驱动IC进行复位操作。 - - INT:中断管脚,需要在驱动初始化时,配置为输入上拉状态。在驱动IC检测到外部触摸信号后,通过操作中断管脚来触发中断,器件驱动则会在中断处理函数中进行报点数据读取等操作。 - -3. **通信接口** - - I2C:由于touchscreen的报点数据量相对较少,所以一般选用I2C方式传输数据。I2C的具体协议及对应操作接口,可以参考Platform接口层中的[“I2C”使用指南](I2C使用指导.md)。 - - SPI:部分厂商,由于需要传递的数据不止报点坐标,而是需要获取基础容值,数据量较大,所以会选用SPI通信方式。SPI的具体协议及对应操作接口,可以参考Platform接口层中的[“SPI” 使用指南](SPI使用指导.md)。 - - diff --git a/zh-cn/device-dev/driver/UART.md b/zh-cn/device-dev/driver/UART.md index 5d81f12e15f..feb048b5880 100755 --- a/zh-cn/device-dev/driver/UART.md +++ b/zh-cn/device-dev/driver/UART.md @@ -1,9 +1,682 @@ -# UART +# UART -- **[UART概述](UART概述.md)** +- [概述](#section833012453535) + - [接口说明](#section1680292311549) -- **[UART使用指导](UART使用指导.md)** +- [使用指导](#section12779050105412) + - [使用流程](#section1858116395510) + - [获取UART设备句柄](#section124512065617) + - [UART设置波特率](#section86881004579) + - [UART获取波特率](#section897032965712) + - [UART设置设备属性](#section129141884588) + - [UART获取设备属性](#section18689637165812) + - [设置UART传输模式](#section72713435918) + - [向UART设备写入指定长度的数据](#section128001736155919) + - [从UART设备中读取指定长度的数据](#section92851601604) + - [销毁UART设备句柄](#section1477410521406) -- **[UART使用实例](UART使用实例.md)** +- [使用实例](#section35404241311) +## 概述 + +- UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)的缩写,是通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输。 +- UART应用比较广泛,常用于输出打印信息,也可以外接各种模块,如GPS、蓝牙等。 +- 两个UART设备的连接示意图如下,UART与其他模块一般用2线(图1)或4线(图2)相连,它们分别是: + - TX:发送数据端,和对端的RX相连; + - RX:接收数据端,和对端的TX相连; + - RTS:发送请求信号,用于指示本设备是否准备好,可接受数据,和对端CTS相连; + - CTS:允许发送信号,用于判断是否可以向对端发送数据,和对端RTS相连; + + **图 1** 2线UART设备连接示意图 + + + ![](figures/zh-cn_image_0000001170262141.png) + + **图 2** 4线UART设备连接示意图 + + + ![](figures/zh-cn_image_0000001123582482.png) + + +- UART通信之前,收发双方需要约定好一些参数:波特率、数据格式(起始位、数据位、校验位、停止位)等。通信过程中,UART通过TX发送给对端数据,通过RX接收对端发送的数据。当UART接收缓存达到预定的门限值时,RTS变为不可发送数据,对端的CTS检测到不可发送数据,则停止发送数据。 +- UART接口定义了操作UART端口的通用方法集合,包括获取、释放设备句柄、读写数据、获取和设置波特率、获取和设置设备属性。 + +### 接口说明 + +**表 1** UART驱动API接口功能介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

描述

+

UART获取/释放设备句柄

+

+

UartOpen

+

UART获取设备句柄

+

UartClose

+

UART释放设备句柄

+

UART读写接口

+

+

UartRead

+

从UART设备中读取指定长度的数据

+

UartWrite

+

向UART设备中写入指定长度的数据

+

UART获取/设置波特率接口

+

UartGetBaud

+

UART获取波特率

+

UartSetBaud

+

UART设置波特率

+

UART获取/设置设备属性

+

+

UartGetAttribute

+

UART获取设备属性

+

UartSetAttribute

+

UART设置设备属性

+

UART设置传输模式

+

UartSetTransMode

+

UART设置传输模式

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 + +## 使用指导 + +### 使用流程 + +使用UART的一般流程如[图3](#fig1852173020185)所示。 + +**图 3** UART使用流程图 + + +![](figures/zh-cn_image_0000001170227689.png) + +### 获取UART设备句柄 + +在使用UART进行通信时,首先要调用UartOpen获取UART设备句柄,该函数会返回指定端口号的UART设备句柄。 + +DevHandle UartOpen\(uint32\_t port\); + +**表 2** UartOpen参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

port

+

UART设备号

+

返回值

+

返回值描述

+

NULL

+

获取UART设备句柄失败

+

设备句柄

+

UART设备句柄

+
+ +假设系统中的UART端口号为3,获取该UART设备句柄的示例如下: + +``` +DevHandle handle = NULL; /* UART设备句柄 */ +uint32_t port = 3; /* UART设备端口号 */ +handle = UartOpen(port); +if (handle == NULL) { + HDF_LOGE("UartOpen: failed!\n"); + return; +} +``` + +### UART设置波特率 + +在通信之前,需要设置UART的波特率,设置波特率的函数如下所示: + +int32\_t UartSetBaud\(DevHandle handle, uint32\_t baudRate\); + +**表 3** UartSetBaud参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

UART设备句柄

+

baudRate

+

待设置的波特率值

+

返回值

+

返回值描述

+

0

+

UART设置波特率成功

+

负数

+

UART设置波特率失败

+
+ +假设需要设置的UART波特率为9600,设置波特率的实例如下: + +``` +int32_t ret; +/* 设置UART波特率 */ +ret = UartSetBaud(handle, 9600); +if (ret != 0) { + HDF_LOGE("UartSetBaud: failed, ret %d\n", ret); +} +``` + +### UART获取波特率 + +设置UART的波特率后,可以通过获取波特率接口来查看UART当前的波特率,获取波特率的函数如下所示: + +int32\_t UartGetBaud\(DevHandle handle, uint32\_t \*baudRate\); + +**表 4** UartGetBaud参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

UART设备句柄

+

baudRate

+

接收波特率值的指针

+

返回值

+

返回值描述

+

0

+

UART获取波特率成功

+

负数

+

UART获取波特率失败

+
+ +获取波特率的实例如下: + +``` +int32_t ret; +uint32_t baudRate; +/* 获取UART波特率 */ +ret = UartGetBaud(handle, &baudRate); +if (ret != 0) { + HDF_LOGE("UartGetBaud: failed, ret %d\n", ret); +} +``` + +### UART设置设备属性 + +在通信之前,需要设置UART的设备属性,设置设备属性的函数如下图所示: + +int32\_t UartSetAttribute\(DevHandle handle, struct UartAttribute \*attribute\); + +**表 5** UartSetAttribute参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

UART设备句柄

+

attribute

+

待设置的设备属性

+

返回值

+

返回值描述

+

0

+

UART设置设备属性成功

+

负数

+

UART设置设备属性失败

+
+ +设置UART的设备属性的实例如下: + +``` +int32_t ret; +struct UartAttribute attribute; +attribute.dataBits = UART_ATTR_DATABIT_7; /* UART传输数据位宽,一次传输7个bit */ +attribute.parity = UART_ATTR_PARITY_NONE; /* UART传输数据无校检 */ +attribute.stopBits = UART_ATTR_STOPBIT_1; /* UART传输数据停止位为1位 */ +attribute.rts = UART_ATTR_RTS_DIS; /* UART禁用RTS */ +attribute.cts = UART_ATTR_CTS_DIS; /* UART禁用CTS */ +attribute.fifoRxEn = UART_ATTR_RX_FIFO_EN; /* UART使能RX FIFO */ +attribute.fifoTxEn = UART_ATTR_TX_FIFO_EN; /* UART使能TX FIFO */ +/* 设置UART设备属性 */ +ret = UartSetAttribute(handle, &attribute); +if (ret != 0) { + HDF_LOGE("UartSetAttribute: failed, ret %d\n", ret); +} +``` + +### UART获取设备属性 + +设置UART的设备属性后,可以通过获取设备属性接口来查看UART当前的设备属性,获取设备属性的函数如下图所示: + +int32\_t UartGetAttribute\(DevHandle handle, struct UartAttribute \*attribute\); + +**表 6** UartGetAttribute参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

UART设备句柄

+

attribute

+

接收UART设备属性的指针

+

返回值

+

返回值描述

+

0

+

UART获取设备属性成功

+

负数

+

UART获取设备属性失败

+
+ +获取UART的设备属性的实例如下: + +``` +int32_t ret; +struct UartAttribute attribute; +/* 获取UART设备属性 */ +ret = UartGetAttribute(handle, &attribute); +if (ret != 0) { + HDF_LOGE("UartGetAttribute: failed, ret %d\n", ret); +} +``` + +### 设置UART传输模式 + +在通信之前,需要设置UART的传输模式,设置传输模式的函数如下图所示: + +int32\_t UartSetTransMode\(DevHandle handle, enum UartTransMode mode\); + +**表 7** UartSetTransMode参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

UART设备句柄

+

mode

+

待设置的传输模式,

+

返回值

+

返回值描述

+

0

+

UART设置传输模式成功

+

负数

+

UART设置传输模式失败

+
+ +假设需要设置的UART传输模式为UART\_MODE\_RD\_BLOCK,设置传输模式的实例如下: + +``` +int32_t ret; +/* 设置UART传输模式 */ +ret = UartSetTransMode(handle, UART_MODE_RD_BLOCK); +if (ret != 0) { + HDF_LOGE("UartSetTransMode: failed, ret %d\n", ret); +} +``` + +### 向UART设备写入指定长度的数据 + +对应的接口函数如下所示: + +int32\_t UartWrite\(DevHandle handle, uint8\_t \*data, uint32\_t size\); + +**表 8** UartWrite参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

UART设备句柄

+

data

+

待写入数据的指针

+

size

+

待写入数据的长度

+

返回值

+

返回值描述

+

0

+

UART写数据成功

+

负数

+

UART写数据失败

+
+ +写入指定长度数据的实例如下: + +``` +int32_t ret; +uint8_t wbuff[5] = {1, 2, 3, 4, 5}; +/* 向UART设备写入指定长度的数据 */ +ret = UartWrite(handle, wbuff, 5); +if (ret != 0) { + HDF_LOGE("UartWrite: failed, ret %d\n", ret); +} +``` + +### 从UART设备中读取指定长度的数据 + +对应的接口函数如下所示: + +int32\_t UartRead\(DevHandle handle, uint8\_t \*data, uint32\_t size\); + +**表 9** UartRead参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

UART设备句柄

+

data

+

接收读取数据的指针

+

size

+

待读取数据的长度

+

返回值

+

返回值描述

+

非负数

+

UART读取到的数据长度

+

负数

+

UART读取数据失败

+
+ +读取指定长度数据的实例如下: + +``` +int32_t ret; +uint8_t rbuff[5] = {0}; +/* 从UART设备读取指定长度的数据 */ +ret = UartRead(handle, rbuff, 5); +if (ret < 0) { + HDF_LOGE("UartRead: failed, ret %d\n", ret); +} +``` + +>![](public_sys-resources/icon-caution.gif) **注意:** +>UART返回值为非负值,表示UART读取成功。若返回值等于0,表示UART无有效数据可以读取。若返回值大于0,表示实际读取到的数据长度,该长度小于或等于传入的参数size的大小,并且不超过当前正在使用的UART控制器规定的最大单次读取数据长度的值。 + +### 销毁UART设备句柄 + +UART通信完成之后,需要销毁UART设备句柄,函数如下所示: + +void UartClose\(DevHandle handle\); + +该函数会释放申请的资源。 + +**表 10** UartClose参数和返回值描述 + + + + + + + + + + +

参数

+

参数描述

+

handle

+

UART设备句柄

+
+ +销毁UART设备句柄的实例如下: + +``` +UartClose(handle); /* 销毁UART设备句柄 * +``` + +## 使用实例 + +UART设备完整的使用示例如下所示,首先获取UART设备句柄,接着设置波特率、设备属性和传输模式,之后进行UART通信,最后销毁UART设备句柄。 + +``` +#include "hdf_log.h" +#include "uart_if.h" + +void UartTestSample(void) +{ + int32_t ret; + uint32_t port; + DevHandle handle = NULL; + uint8_t wbuff[5] = { 1, 2, 3, 4, 5 }; + uint8_t rbuff[5] = { 0 }; + struct UartAttribute attribute; + attribute.dataBits = UART_ATTR_DATABIT_7; /* UART传输数据位宽,一次传输7个bit */ + attribute.parity = UART_ATTR_PARITY_NONE; /* UART传输数据无校检 */ + attribute.stopBits = UART_ATTR_STOPBIT_1; /* UART传输数据停止位为1位 */ + attribute.rts = UART_ATTR_RTS_DIS; /* UART禁用RTS */ + attribute.cts = UART_ATTR_CTS_DIS; /* UART禁用CTS */ + attribute.fifoRxEn = UART_ATTR_RX_FIFO_EN; /* UART使能RX FIFO */ + attribute.fifoTxEn = UART_ATTR_TX_FIFO_EN; /* UART使能TX FIFO */ + /* UART设备端口号,要填写实际平台上的端口号 */ + port = 1; + /* 获取UART设备句柄 */ + handle = UartOpen(port); + if (handle == NULL) { + HDF_LOGE("UartOpen: failed!\n"); + return; + } + /* 设置UART波特率为9600 */ + ret = UartSetBaud(handle, 9600); + if (ret != 0) { + HDF_LOGE("UartSetBaud: failed, ret %d\n", ret); + goto _ERR; + } + /* 设置UART设备属性 */ + ret = UartSetAttribute(handle, &attribute); + if (ret != 0) { + HDF_LOGE("UartSetAttribute: failed, ret %d\n", ret); + goto _ERR; + } + /* 设置UART传输模式为非阻塞模式 */ + ret = UartSetTransMode(handle, UART_MODE_RD_NONBLOCK); + if (ret != 0) { + HDF_LOGE("UartSetTransMode: failed, ret %d\n", ret); + goto _ERR; + } + /* 向UART设备写入5字节的数据 */ + ret = UartWrite(handle, wbuff, 5); + if (ret != 0) { + HDF_LOGE("UartWrite: failed, ret %d\n", ret); + goto _ERR; + } + /* 从UART设备读取5字节的数据 */ + ret = UartRead(handle, rbuff, 5); + if (ret < 0) { + HDF_LOGE("UartRead: failed, ret %d\n", ret); + goto _ERR; + } +_ERR: + /* 销毁UART设备句柄 */ + UartClose(handle); +} +``` diff --git "a/zh-cn/device-dev/driver/UART\344\275\277\347\224\250\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/UART\344\275\277\347\224\250\345\256\236\344\276\213.md" deleted file mode 100755 index d049e3d0218..00000000000 --- "a/zh-cn/device-dev/driver/UART\344\275\277\347\224\250\345\256\236\344\276\213.md" +++ /dev/null @@ -1,67 +0,0 @@ -# UART使用实例 - -UART设备完整的使用示例如下所示,首先获取UART设备句柄,接着设置波特率、设备属性和传输模式,之后进行UART通信,最后销毁UART设备句柄。 - -``` -#include "hdf_log.h" -#include "uart_if.h" - -void UartTestSample(void) -{ - int32_t ret; - uint32_t port; - DevHandle handle = NULL; - uint8_t wbuff[5] = { 1, 2, 3, 4, 5 }; - uint8_t rbuff[5] = { 0 }; - struct UartAttribute attribute; - attribute.dataBits = UART_ATTR_DATABIT_7; /* UART传输数据位宽,一次传输7个bit */ - attribute.parity = UART_ATTR_PARITY_NONE; /* UART传输数据无校检 */ - attribute.stopBits = UART_ATTR_STOPBIT_1; /* UART传输数据停止位为1位 */ - attribute.rts = UART_ATTR_RTS_DIS; /* UART禁用RTS */ - attribute.cts = UART_ATTR_CTS_DIS; /* UART禁用CTS */ - attribute.fifoRxEn = UART_ATTR_RX_FIFO_EN; /* UART使能RX FIFO */ - attribute.fifoTxEn = UART_ATTR_TX_FIFO_EN; /* UART使能TX FIFO */ - /* UART设备端口号,要填写实际平台上的端口号 */ - port = 1; - /* 获取UART设备句柄 */ - handle = UartOpen(port); - if (handle == NULL) { - HDF_LOGE("UartOpen: failed!\n"); - return; - } - /* 设置UART波特率为9600 */ - ret = UartSetBaud(handle, 9600); - if (ret != 0) { - HDF_LOGE("UartSetBaud: failed, ret %d\n", ret); - goto _ERR; - } - /* 设置UART设备属性 */ - ret = UartSetAttribute(handle, &attribute); - if (ret != 0) { - HDF_LOGE("UartSetAttribute: failed, ret %d\n", ret); - goto _ERR; - } - /* 设置UART传输模式为非阻塞模式 */ - ret = UartSetTransMode(handle, UART_MODE_RD_NONBLOCK); - if (ret != 0) { - HDF_LOGE("UartSetTransMode: failed, ret %d\n", ret); - goto _ERR; - } - /* 向UART设备写入5字节的数据 */ - ret = UartWrite(handle, wbuff, 5); - if (ret != 0) { - HDF_LOGE("UartWrite: failed, ret %d\n", ret); - goto _ERR; - } - /* 从UART设备读取5字节的数据 */ - ret = UartRead(handle, rbuff, 5); - if (ret < 0) { - HDF_LOGE("UartRead: failed, ret %d\n", ret); - goto _ERR; - } -_ERR: - /* 销毁UART设备句柄 */ - UartClose(handle); -} -``` - diff --git "a/zh-cn/device-dev/driver/UART\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/UART\344\275\277\347\224\250\346\214\207\345\257\274.md" deleted file mode 100755 index 1d1ee50a8c1..00000000000 --- "a/zh-cn/device-dev/driver/UART\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ /dev/null @@ -1,506 +0,0 @@ -# UART使用指导 - -- [使用流程](#section47784125013) -- [获取UART设备句柄](#section146445153110) -- [UART设置波特率](#section1862705516339) -- [UART获取波特率](#section1263651563414) -- [UART设置设备属性](#section1770091483814) -- [UART获取设备属性](#section117543316384) -- [设置UART传输模式](#section187233112369) -- [向UART设备写入指定长度的数据](#section82416423368) -- [从UART设备中读取指定长度的数据](#section192177171373) -- [销毁UART设备句柄](#section63131236354) - -## 使用流程 - -使用UART的一般流程如[图1](#p58686354483)所示。 - -**图 1** UART使用流程图 - - -![](figures/zh-cn_image_0000001054006983.png) - -## 获取UART设备句柄 - -在使用UART进行通信时,首先要调用UartOpen获取UART设备句柄,该函数会返回指定端口号的UART设备句柄。 - -DevHandle UartOpen\(uint32\_t port\); - -**表 1** UartOpen参数和返回值描述 - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

port

-

UART设备号

-

返回值

-

返回值描述

-

NULL

-

获取UART设备句柄失败

-

设备句柄

-

UART设备句柄

-
- -假设系统中的UART端口号为3,获取该UART设备句柄的示例如下: - -``` -DevHandle handle = NULL; /* UART设备句柄 */ -uint32_t port = 3; /* UART设备端口号 */ -handle = UartOpen(port); -if (handle == NULL) { - HDF_LOGE("UartOpen: failed!\n"); - return; -} -``` - -## UART设置波特率 - -在通信之前,需要设置UART的波特率,设置波特率的函数如下所示: - -int32\_t UartSetBaud\(DevHandle handle, uint32\_t baudRate\); - -**表 2** UartSetBaud参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

UART设备句柄

-

baudRate

-

待设置的波特率值

-

返回值

-

返回值描述

-

0

-

UART设置波特率成功

-

负数

-

UART设置波特率失败

-
- -假设需要设置的UART波特率为9600,设置波特率的实例如下: - -``` -int32_t ret; -/* 设置UART波特率 */ -ret = UartSetBaud(handle, 9600); -if (ret != 0) { - HDF_LOGE("UartSetBaud: failed, ret %d\n", ret); -} -``` - -## UART获取波特率 - -设置UART的波特率后,可以通过获取波特率接口来查看UART当前的波特率,获取波特率的函数如下所示: - -int32\_t UartGetBaud\(DevHandle handle, uint32\_t \*baudRate\); - -**表 3** UartGetBaud参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

UART设备句柄

-

baudRate

-

接收波特率值的指针

-

返回值

-

返回值描述

-

0

-

UART获取波特率成功

-

负数

-

UART获取波特率失败

-
- -获取波特率的实例如下: - -``` -int32_t ret; -uint32_t baudRate; -/* 获取UART波特率 */ -ret = UartGetBaud(handle, &baudRate); -if (ret != 0) { - HDF_LOGE("UartGetBaud: failed, ret %d\n", ret); -} -``` - -## UART设置设备属性 - -在通信之前,需要设置UART的设备属性,设置设备属性的函数如下图所示: - -int32\_t UartSetAttribute\(DevHandle handle, struct UartAttribute \*attribute\); - -**表 4** UartSetAttribute参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

UART设备句柄

-

attribute

-

待设置的设备属性

-

返回值

-

返回值描述

-

0

-

UART设置设备属性成功

-

负数

-

UART设置设备属性失败

-
- -设置UART的设备属性的实例如下: - -``` -int32_t ret; -struct UartAttribute attribute; -attribute.dataBits = UART_ATTR_DATABIT_7; /* UART传输数据位宽,一次传输7个bit */ -attribute.parity = UART_ATTR_PARITY_NONE; /* UART传输数据无校检 */ -attribute.stopBits = UART_ATTR_STOPBIT_1; /* UART传输数据停止位为1位 */ -attribute.rts = UART_ATTR_RTS_DIS; /* UART禁用RTS */ -attribute.cts = UART_ATTR_CTS_DIS; /* UART禁用CTS */ -attribute.fifoRxEn = UART_ATTR_RX_FIFO_EN; /* UART使能RX FIFO */ -attribute.fifoTxEn = UART_ATTR_TX_FIFO_EN; /* UART使能TX FIFO */ -/* 设置UART设备属性 */ -ret = UartSetAttribute(handle, &attribute); -if (ret != 0) { - HDF_LOGE("UartSetAttribute: failed, ret %d\n", ret); -} -``` - -## UART获取设备属性 - -设置UART的设备属性后,可以通过获取设备属性接口来查看UART当前的设备属性,获取设备属性的函数如下图所示: - -int32\_t UartGetAttribute\(DevHandle handle, struct UartAttribute \*attribute\); - -**表 5** UartGetAttribute参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

UART设备句柄

-

attribute

-

接收UART设备属性的指针

-

返回值

-

返回值描述

-

0

-

UART获取设备属性成功

-

负数

-

UART获取设备属性失败

-
- -获取UART的设备属性的实例如下: - -``` -int32_t ret; -struct UartAttribute attribute; -/* 获取UART设备属性 */ -ret = UartGetAttribute(handle, &attribute); -if (ret != 0) { - HDF_LOGE("UartGetAttribute: failed, ret %d\n", ret); -} -``` - -## 设置UART传输模式 - -在通信之前,需要设置UART的传输模式,设置传输模式的函数如下图所示: - -int32\_t UartSetTransMode\(DevHandle handle, enum UartTransMode mode\); - -**表 6** UartSetTransMode参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

UART设备句柄

-

mode

-

待设置的传输模式,

-

返回值

-

返回值描述

-

0

-

UART设置传输模式成功

-

负数

-

UART设置传输模式失败

-
- -假设需要设置的UART传输模式为UART\_MODE\_RD\_BLOCK,设置传输模式的实例如下: - -``` -int32_t ret; -/* 设置UART传输模式 */ -ret = UartSetTransMode(handle, UART_MODE_RD_BLOCK); -if (ret != 0) { - HDF_LOGE("UartSetTransMode: failed, ret %d\n", ret); -} -``` - -## 向UART设备写入指定长度的数据 - -对应的接口函数如下所示: - -int32\_t UartWrite\(DevHandle handle, uint8\_t \*data, uint32\_t size\); - -**表 7** UartWrite参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

UART设备句柄

-

data

-

待写入数据的指针

-

size

-

待写入数据的长度

-

返回值

-

返回值描述

-

0

-

UART写数据成功

-

负数

-

UART写数据失败

-
- -写入指定长度数据的实例如下: - -``` -int32_t ret; -uint8_t wbuff[5] = {1, 2, 3, 4, 5}; -/* 向UART设备写入指定长度的数据 */ -ret = UartWrite(handle, wbuff, 5); -if (ret != 0) { - HDF_LOGE("UartWrite: failed, ret %d\n", ret); -} -``` - -## 从UART设备中读取指定长度的数据 - -对应的接口函数如下所示: - -int32\_t UartRead\(DevHandle handle, uint8\_t \*data, uint32\_t size\); - -**表 8** UartRead参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

UART设备句柄

-

data

-

接收读取数据的指针

-

size

-

待读取数据的长度

-

返回值

-

返回值描述

-

非负数

-

UART读取到的数据长度

-

负数

-

UART读取数据失败

-
- -读取指定长度数据的实例如下: - -``` -int32_t ret; -uint8_t rbuff[5] = {0}; -/* 从UART设备读取指定长度的数据 */ -ret = UartRead(handle, rbuff, 5); -if (ret < 0) { - HDF_LOGE("UartRead: failed, ret %d\n", ret); -} -``` - ->![](public_sys-resources/icon-caution.gif) **注意:** ->UART返回值为非负值,表示UART读取成功。若返回值等于0,表示UART无有效数据可以读取。若返回值大于0,表示实际读取到的数据长度,该长度小于或等于传入的参数size的大小,并且不超过当前正在使用的UART控制器规定的最大单次读取数据长度的值。 - -## 销毁UART设备句柄 - -UART通信完成之后,需要销毁UART设备句柄,函数如下所示: - -void UartClose\(DevHandle handle\); - -该函数会释放申请的资源。 - -**表 9** UartClose参数和返回值描述 - - - - - - - - - - -

参数

-

参数描述

-

handle

-

UART设备句柄

-
- -销毁UART设备句柄的实例如下: - -``` -UartClose(handle); /* 销毁UART设备句柄 * -``` - diff --git "a/zh-cn/device-dev/driver/UART\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/UART\346\246\202\350\277\260.md" deleted file mode 100755 index 2f295bddd98..00000000000 --- "a/zh-cn/device-dev/driver/UART\346\246\202\350\277\260.md" +++ /dev/null @@ -1,106 +0,0 @@ -# UART概述 - -- [简介](#section14770623164917) -- [接口说明](#section149505462492) - -## 简介 - -- UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)的缩写,是通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输。 -- UART应用比较广泛,常用于输出打印信息,也可以外接各种模块,如GPS、蓝牙等。 -- 两个UART设备的连接示意图如下,UART与其他模块一般用2线(图1)或4线(图2)相连,它们分别是: - - TX:发送数据端,和对端的RX相连; - - RX:接收数据端,和对端的TX相连; - - RTS:发送请求信号,用于指示本设备是否准备好,可接受数据,和对端CTS相连; - - CTS:允许发送信号,用于判断是否可以向对端发送数据,和对端RTS相连; - - **图 1** 2线UART设备连接示意图 - - - ![](figures/zh-cn_image_0000001053926237.png) - - **图 2** 4线UART设备连接示意图 - - - ![](figures/zh-cn_image_0000001054007499.png) - - -- UART通信之前,收发双方需要约定好一些参数:波特率、数据格式(起始位、数据位、校验位、停止位)等。通信过程中,UART通过TX发送给对端数据,通过RX接收对端发送的数据。当UART接收缓存达到预定的门限值时,RTS变为不可发送数据,对端的CTS检测到不可发送数据,则停止发送数据。 -- UART接口定义了操作UART端口的通用方法集合,包括获取、释放设备句柄、读写数据、获取和设置波特率、获取和设置设备属性。 - -## 接口说明 - -**表 1** UART驱动API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

描述

-

UART获取/释放设备句柄

-

-

UartOpen

-

UART获取设备句柄

-

UartClose

-

UART释放设备句柄

-

UART读写接口

-

-

UartRead

-

从UART设备中读取指定长度的数据

-

UartWrite

-

向UART设备中写入指定长度的数据

-

UART获取/设置波特率接口

-

UartGetBaud

-

UART获取波特率

-

UartSetBaud

-

UART设置波特率

-

UART获取/设置设备属性

-

-

UartGetAttribute

-

UART获取设备属性

-

UartSetAttribute

-

UART设置设备属性

-

UART设置传输模式

-

UartSetTransMode

-

UART设置传输模式

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->本文涉及的所有接口,仅限内核态使用,不支持在用户态使用。 - diff --git a/zh-cn/device-dev/driver/WATCHDOG.md b/zh-cn/device-dev/driver/WATCHDOG.md index 0d7afef9e34..f3721de176f 100755 --- a/zh-cn/device-dev/driver/WATCHDOG.md +++ b/zh-cn/device-dev/driver/WATCHDOG.md @@ -1,9 +1,557 @@ -# WATCHDOG +# WATCHDOG -- **[看门狗概述](看门狗概述.md)** +- [概述](#section14918241977) + - [接口说明](#section20177131219818) -- **[看门狗使用指导](看门狗使用指导.md)** +- [使用指导](#section10103184312813) + - [使用流程](#section10181195910815) + - [打开看门狗设备](#section66089201107) + - [获取看门狗状态](#section786624341011) + - [设置超时时间](#section182386137111) + - [获取超时时间](#section1883310371114) + - [启动看门狗](#section82501405123) + - [喂狗](#section3547530101211) + - [停止看门狗](#section944595841217) + - [关闭看门狗设备](#section96561824121311) -- **[看门狗使用实例](看门狗使用实例.md)** +- [使用实例](#section1724514523135) +## 概述 + +看门狗(watchdog),又叫看门狗计时器(watchdog timer),是一种硬件的计时设备,当系统的主程序发生某些错误时,导致未及时清除看门狗计时器的计时值,这时看门狗计时器就会对系统发出复位信号,使系统从悬停状态恢复到正常运作状态。 + +### 接口说明 + +**表 1** 看门狗 API接口功能介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

功能分类

+

接口名

+

描述

+

打开/关闭看门狗

+

WatchdogOpen

+

打开看门狗设备

+

WatchdogClose

+

关闭看门狗设备

+

启动/停止看门狗

+

WatchdogStart

+

启动看门狗

+

WatchdogStop

+

停止看门狗

+

设置/获取超时时间

+

WatchdogSetTimeout

+

设置看门狗超时时间

+

WatchdogGetTimeout

+

获取看门狗超时时间

+

获取看门狗状态

+

WatchdogGetStatus

+

获取看门狗状态

+

清除看门狗定时器

+

WatchdogFeed

+

清除看门狗定时器(喂狗)

+
+ +>![](public_sys-resources/icon-note.gif) **说明:** +>本文涉及看门狗的所有接口,仅限内核态使用,不支持在用户态使用。 + +## 使用指导 + +### 使用流程 + +使用看门狗的一般流程如[图1](#fig19134125410189)所示。 + +**图 1** 看门狗使用流程图 + + +![](figures/zh-cn_image_0000001170229891.png) + +### 打开看门狗设备 + +在操作看门狗之前,需要使用WatchdogOpen打开一个看门狗设备,一个系统可能有多个看门狗,通过ID号来打开指定的看门狗设备: + +int32\_t WatchdogOpen\(int16\_t wdtId\); + +**表 2** WatchdogOpen参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

wdtId

+

看门狗设备号

+

返回值

+

返回值描述

+

NULL

+

打开失败

+

DevHandle类型指针

+

看门狗设备句柄

+
+ +``` +DevHandle handle = NULL; +handle = WatchdogOpen(0); /* 打开0号看门狗设备 */ +if (handle == NULL) { + HDF_LOGE("WatchdogOpen: failed, ret %d\n", ret); + return; +} +``` + +### 获取看门狗状态 + +int32\_t WatchdogGetStatus\(DevHandle handle, int32\_t \*status\); + +**表 3** WatchdogGetStatus参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

看门狗设备句柄

+

status

+

获取到的启动状态指针

+

返回值

+

返回值描述

+

0

+

获取成功

+

负数

+

获取失败

+
+ +``` +int32_t ret; +int32_t status; +/* 获取Watchdog启动状态 */ +ret = WatchdogGetStatus(handle, &status); +if (ret != 0) { + HDF_LOGE("WatchdogGetStatus: failed, ret %d\n", ret); + return; +} +``` + +### 设置超时时间 + +int32\_t WatchdogSetTimeout\(PalHandle \*handle, uint32\_t seconds\); + +**表 4** WatchdogSetTimeout参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

看门狗设备句柄

+

seconds

+

超时时间,单位为秒

+

返回值

+

返回值描述

+

0

+

设置成功

+

负数

+

设置失败

+
+ +``` +int32_t ret; +uint32_t timeOut = 60; +/* 设置超时时间,单位:秒 */ +ret = WatchdogSetTimeout(handle, timeOut); +if (ret != 0) { + HDF_LOGE("WatchdogSetTimeout: failed, ret %d\n", ret); + return; +} +``` + +### 获取超时时间 + +int32\_t WatchdogGetTimeout\(PalHandle \*handle, uint32\_t \*seconds\); + +**表 5** WatchdogGetTimeout参数和返回值描述 + + + + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

看门狗设备句柄

+

seconds

+

接收超时时间的指针,单位为秒

+

返回值

+

返回值描述

+

0

+

获取成功

+

负数

+

获取失败

+
+ +``` +int32_t ret; +uint32_t timeOut; +/* 获取超时时间,单位:秒 */ +ret = WatchdogGetTimeout(handle, &timeOut); +if (ret != 0) { + HDF_LOGE("WatchdogGetTimeout: failed, ret %d\n", ret); + return; +} +``` + +### 启动看门狗 + +int32\_t WatchdogStart\(DevHandle handle\); + +**表 6** WatchdogStart参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

看门狗设备句柄

+

返回值

+

返回值描述

+

0

+

启动成功

+

负数

+

启动失败

+
+ +``` +int32_t ret; +/* 启动看门狗 */ +ret = WatchdogStart(handle); +if (ret != 0) { + HDF_LOGE("WatchdogStart: failed, ret %d\n", ret); + return; +} +``` + +### 喂狗 + +int32\_t WatchdogFeed\(DevHandle handle\); + +**表 7** WatchdogFeed参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

看门狗设备句柄

+

返回值

+

返回值描述

+

0

+

喂狗成功

+

负数

+

喂狗失败

+
+ +``` +int32_t ret; +/* 喂狗 */ +ret = WatchdogFeed(handle); +if (ret != 0) { + HDF_LOGE("WatchdogFeed: failed, ret %d\n", ret); + return; +} +``` + +### 停止看门狗 + +int32\_t WatchdogStop\(DevHandle handle\); + +**表 8** WatchdogStop参数和返回值描述 + + + + + + + + + + + + + + + + + + + +

参数

+

参数描述

+

handle

+

看门狗设备句柄

+

返回值

+

返回值描述

+

0

+

停止成功

+

负数

+

停止失败

+
+ +``` +int32_t ret; +/* 停止看门狗 */ +ret = WatchdogStop(handle); +if (ret != 0) { + HDF_LOGE("WatchdogStop: failed, ret %d\n", ret); + return; +} +``` + +### 关闭看门狗设备 + +当操作完毕时,使用WatchdogClose关闭打开的设备句柄: + +void WatchdogClose\(DevHandle handle\); + +**表 9** WatchdogClose参数和返回值描述 + + + + + + + + + + +

参数

+

参数描述

+

handle

+

看门狗设备句柄

+
+ +``` +/* 关闭看门狗 */ +ret = WatchdogClose(handle); +``` + +## 使用实例 + +本例程提供看门狗的完整使用流程。 + +在本例程中,我们打开一个看门狗设备,设置超时时间并启动计时: + +- 首先定期喂狗,即按时清除看门狗定时器,确保系统不会因定时器超时而复位。 +- 接着再停止喂狗,观察定时器到期后系统是否发生复位行为。 + +示例如下: + +``` +#include "watchdog_if.h" +#include "hdf_log.h" +#include "osal_irq.h" +#include "osal_time.h" + +#define WATCHDOG_TEST_TIMEOUT 2 +#define WATCHDOG_TEST_FEED_TIME 6 + +static int32_t TestCaseWatchdog(void) +{ + int32_t i; + int32_t ret; + uint32_t timeout; + DevHandle handle = NULL; + + /* 打开0号看门狗设备 */ + handle = WatchdogOpen(0); + if (handle == NULL) { + HDF_LOGE("Open watchdog fail!"); + return -1; + } + + /* 设置超时时间 */ + ret = WatchdogSetTimeout(handle, WATCHDOG_TEST_TIMEOUT); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: set timeout fail! ret:%d\n", __func__, ret); + WatchdogClose(handle); + return ret; + } + + /* 回读设置的超时时间值 */ + ret = WatchdogGetTimeout(handle, &timeout); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: get timeout fail! ret:%d\n", __func__, ret); + WatchdogClose(handle); + return ret; + } + HDF_LOGI("%s: read timeout back:%u\n", __func__, timeout); + + /* 启动看门狗,开始计时 */ + ret = WatchdogStart(handle); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: satrt fail! ret:%d\n", __func__, ret); + WatchdogClose(handle); + return ret; + } + + /* 每隔1S喂狗一次 */ + for (i = 0; i < WATCHDOG_TEST_FEED_TIME; i++) { + HDF_LOGE("%s: feeding watchdog %d times... \n", __func__, i); + ret = WatchdogFeed(handle); + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: feed dog fail! ret:%d\n", __func__, ret); + WatchdogClose(handle); + return ret; + } + OsalSleep(1); + } + /* 由于喂狗间隔小于超时时间,系统不会发生复位,此日志可以正常打印 */ + HDF_LOGE("%s: no reset ... feeding test OK!!!\n", __func__); + + /* 接下来持续不喂狗,使得看门狗计时器超时 */ + for (i = 0; i < WATCHDOG_TEST_FEED_TIME; i++) { + HDF_LOGE("%s: watiting dog buck %d times... \n", __func__, i); + OsalSleep(1); + } + + /* 当不喂狗时间到达之前设定的超时时间的时候,系统会发生复位,理论上观察不到此日志的打印 */ + HDF_LOGE("%s: dog has't buck!!! \n", __func__, i); + WatchdogClose(handle); + return -1; +} +``` diff --git a/zh-cn/device-dev/driver/WLAN.md b/zh-cn/device-dev/driver/WLAN.md index af39a0d3a2b..5f02b83d0f6 100755 --- a/zh-cn/device-dev/driver/WLAN.md +++ b/zh-cn/device-dev/driver/WLAN.md @@ -1,9 +1,622 @@ -# WLAN +# WLAN -- **[WLAN开发概述](WLAN开发概述.md)** +- [概述](#section729758162218) + - [WLAN驱动接口架构](#section178022416377) + - [接口说明](#section149681312202415) -- **[WLAN开发指导](WLAN开发指导.md)** +- [开发指导](#section15957746172412) + - [开发步骤](#section11776186132513) -- **[WLAN开发实例](WLAN开发实例.md)** +- [开发实例](#section1395253612512) +## 概述 + +WLAN是基于HDF(Hardware Driver Foundation)驱动框架开发的模块,该模块可实现跨操作系统迁移,自适应器件差异,模块化拼装编译等功能。各WLAN厂商驱动开发人员可根据WLAN模块提供的向下统一接口适配各自的驱动代码,实现如下能力:建立/关闭WLAN热点、扫描、关联WLAN热点等;对HDI层向上提供能力如下:设置MAC地址、设置发射功率、获取设备的MAC地址等。[WLAN模块框架图](#fig967034316227)如下: + +**图 1** WLAN框架 + + +![](figures/zh-cn_image_0000001170383063.png) + +### WLAN驱动接口架构 + +WLAN模块有三部分对外开放的API接口,如[下图2](#fig15016395217)所示: + +1. 对HDI层提供的能力接口。 + +2. 驱动直接调用WLAN模块能力接口。 + +3. 提供给各厂商实现的能力接口。 + +**图 2** WLAN模块开放能力分布图 + + +![](figures/接口分布图4.png) + +### 接口说明 + +WLAN驱动模块提供给驱动开发人员可直接调用的能力接口,主要功能有:创建/释放WifiModule、关联/取消关联、申请/释放NetBuf、lwip的pbuf和NetBuf的相互转换等。提供的部分接口说明如[表1](#table1521573319472)所示: + +**表 1** 可直接调用的接口 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

头文件

+

接口名称

+

功能描述

+

wifi_module.h

+

+

struct WifiModule *WifiModuleCreate(const struct HdfConfigWifiModuleConfig *config);

+

基于HDF开发WLAN驱动时,创建一个WifiModule。

+

void WifiModuleDelete(struct WifiModule *module);

+

基于HDF开发WLAN驱动时,删除并释放WifiModule所有数据。

+

int32_t DelFeature(struct WifiModule *module, uint16_t featureType);

+

基于HDF开发WLAN驱动时,从WifiModule删除一个功能组件。

+

int32_t AddFeature(struct WifiModule *module, uint16_t featureType, struct WifiFeature *featureData);

+

基于HDF开发WLAN驱动时,注册一个功能组件到WifiModule。

+

wifi_mac80211_ops.h

+

int32_t (*startAp)(NetDevice *netDev);

+

启动AP。

+

int32_t (*stopAp)(NetDevice *netDev);

+

停止AP。

+

int32_t (*connect)(NetDevice *netDev, WifiConnectParams *param);

+

开始关联。

+

int32_t (*disconnect)(NetDevice *netDev, uint16_t reasonCode);

+

取消关联。

+

hdf_netbuf.h

+

static inline void NetBufQueueInit(struct NetBufQueue *q);

+

初始化NetBuf队列。

+

struct NetBuf *NetBufAlloc(uint32_t size);

+

申请NetBuf。

+

void NetBufFree(struct NetBuf *nb);

+

释放NetBuf。

+

struct NetBuf *Pbuf2NetBuf(const struct NetDevice *netdev, struct pbuf *lwipBuf);

+

lwip的pbuf转换为NetBuf。

+

struct pbuf *NetBuf2Pbuf(const struct NetBuf *nb);

+

NetBuf转换为lwip的pbuf。

+
+ +同时WLAN驱动模块也提供了需要驱动开发人员实现的能力接口,主要功能有:初始化/注销NetDevice、打开/关闭NetDevice、获取NetDevice的状态等。提供的部分接口说明如[表2](#table74613501475)所示: + +**表 2** 需要开发人员实现的接口 + + + + + + + + + + + + + + + + + + + + + + + + + + + +

头文件

+

接口名称

+

功能描述

+

net_device.h

+

int32_t (*init)(struct NetDevice *netDev);

+

初始化NetDevice。

+

struct NetDevStats *(*getStats)(struct NetDevice *netDev);

+

获取NetDevice的状态。

+

int32_t (*setMacAddr)(struct NetDevice *netDev, void *addr);

+

设置Mac地址。

+

void (*deInit)(struct NetDevice *netDev);

+

注销NetDevice。

+

int32_t (*open)(struct NetDevice *netDev);

+

打开NetDevice。

+

int32_t (*stop)(struct NetDevice *netDev);

+

关闭NetDevice。

+
+ +WLAN驱动模块对HDI层提供的能力接口,主要功能有:创建/销毁 IWiFi对象、设置MAC地址等。提供的部分接口说明如[表3](#table141076311618)所示: + +**表 3** HAL层对外接口 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

头文件

+

接口名称

+

功能描述

+

wifi_hal.h

+

+

int32_t WifiConstruct(struct IWiFi **wifiInstance);

+

创建IWiFi对象,提供IWiFi基本能力。

+

int32_t WifiDestruct(struct IWiFi **wifiInstance);

+

销毁IWiFi对象。

+

int32_t (*start)(struct IWiFi *);

+

创建HAL和驱动之间的通道及获取驱动支持的网卡信息。

+

int32_t (*stop)(struct IWiFi *);

+

销毁通道。

+

wifi_hal_base_feature.h

+

int32_t (*getFeatureType)(const struct IWiFiBaseFeature *);

+

获取特性的类型。

+

int32_t (*setMacAddress)(const struct IWiFiBaseFeature *, unsigned char *, uint8_t);

+

设置MAC地址。

+

int32_t (*getDeviceMacAddress)(const struct IWiFiBaseFeature *, unsigned char *, uint8_t);

+

获取设备持久化的MAC地址。

+

int32_t (*setTxPower)(const struct IWiFiBaseFeature *, int32_t);

+

设置发射功率。

+
+ +## 开发指导 + +WLAN驱动基于HDF框架和PLATFORM框架开发,不区分OS和芯片平台,为不同厂商的WLAN模组提供统一的驱动模型,各WLAN模组厂商根据如下指导适配WLAN驱动框架。 + +### 开发步骤 + +1. 通过wifi\_config.hcs文件,配置硬件参数:module\(不同feature\),芯片等。 +2. 解析配置文件, 生成全量配置的结构体对象。 +3. Module初始化,创建Module。 +4. 挂接chip,初始化chip。 +5. 总线初始化。 +6. 上层wpa业务挂接。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>以上驱动框架适配步骤一部分已经提供(详细见开发实例),待开发人员实现的部分有:1、根据硬件,修改配置参数;2、适配挂接chip;3、测试自验证。 + +## 开发实例 + +本例程提供WLAN模块初始化过程的完整使用流程。示例如下(以hi3881WLAN芯片为例): + +1、根据硬件,修改配置参数。 + +``` +/* 根据硬件参数,通过wlan_platform.hcs配置相关参数,以下是WLAN平台配置的示例 */ +hisi :& deviceList { + device0 :: deviceInst { + deviceInstId = 0; + powers { + power0 { + powerSeqDelay = 0; /* 电源序列延时 */ + powerType = 1; /* 电源类型:0--总是打开;1--GPIO */ + gpioId = 1; /* GPIO管脚号 */ + activeLevel=1; /* 有效电平:0--低;1--高 */ + } + power1 { + powerSeqDelay = 0; /* 电源序列延时 */ + powerType = 0; /* 电源类型:0--总是打开;1--GPIO */ + } + } + reset { + resetType = 0; /* 复位类型:0--不管理;1--GPIO */ + gpioId = 2; /* GPIO管脚号 */ + activeLevel=1; /* 有效电平:0--低;1--高 */ + resetHoldTime = 30; /* 复位配置后的等待时间(ms) */ + } + bootUpTimeout = 30; /* 启动超时时间(ms) */ + bus { + busType = 0; /* 总线类型:0-sdio */ + busId = 2; /* 总线号 */ + funcNum = [1]; /* SDIO功能号 */ + timeout = 1000; /* 读/写数据的超时时间 */ + blockSize = 512; /* 读/写数据的块大小 */ + } + } +} +/* 每一块芯片添加配置文件wlan_chip_<芯片名>.hcs(如:wlan_chip_hi3881.hcs),配置相关参数。以下是hi3881的配置示例 */ +root { + wlan_config { + hi3881 :& chipList { + chipHi3881 :: chipInst { + match_attr = "hdf_wlan_chips_hi3881"; /* 配置匹配标识 */ + chipName = "hi3881"; /* WLAN芯片的名称 */ + sdio { + vendorId = 0x0296; /* 厂商Id */ + deviceId = [0x5347]; /* 设备Id */ + } + } + } + } +} +``` + +2、适配挂接WLAN芯片的初始化和去初始化、WLAN芯片驱动的初始化和去初始化 + +``` +/* WLAN初始化挂接流程 */ +#include "hdf_device_desc.h" +#include "hdf_wifi_product.h" +#include "hdf_log.h" +#include "osal_mem.h" +#include "hdf_wlan_chipdriver_manager.h" +#include "securec.h" +#include "wifi_module.h" +#include "hi_wifi_api.h" +#include "hi_types_base.h" + +#define HDF_LOG_TAG Hi3881Driver + +/* WLAN芯片的初始化和去初始化函数 */ +int32_t InitHi3881Chip(struct HdfWlanDevice *device); +int32_t DeinitHi3881Chip(struct HdfWlanDevice *device); +/* WLAN芯片驱动的初始化和去初始化函数 */ +int32_t Hi3881Deinit(struct HdfChipDriver* chipDriver, struct NetDevice *netDevice); +int32_t Hi3881Init(struct HdfChipDriver* chipDriver, struct NetDevice *netDevice); + +/* 初始化mac80211与芯片侧的函数挂接 */ +hi_void HiMac80211Init(struct HdfChipDriver *chipDriver); + +static const char* const HI3881_DRIVER_NAME = "hisi"; + +/* WLAN芯片驱动挂接以及mac80211与芯片侧的函数挂接 */ +static struct HdfChipDriver *BuildHi3881Driver(struct HdfWlanDevice *device, uint8_t ifIndex) +{ + struct HdfChipDriver *specificDriver = NULL; + if (device == NULL) { + HDF_LOGE("%s fail : channel is NULL", __func__); + return NULL; + } + (void)device; + (void)ifIndex; + specificDriver = (struct HdfChipDriver *)OsalMemCalloc(sizeof(struct HdfChipDriver)); + if (specificDriver == NULL) { + HDF_LOGE("%s fail: OsalMemCalloc fail!", __func__); + return NULL; + } + if (memset_s(specificDriver, sizeof(struct HdfChipDriver), 0, sizeof(struct HdfChipDriver)) != EOK) { + HDF_LOGE("%s fail: memset_s fail!", __func__); + OsalMemFree(specificDriver); + return NULL; + } + + if (strcpy_s(specificDriver->name, MAX_WIFI_COMPONENT_NAME_LEN, HI3881_DRIVER_NAME) != EOK) { + HDF_LOGE("%s fail : strcpy_s fail", __func__); + OsalMemFree(specificDriver); + return NULL; + } + specificDriver->init = Hi3881Init; + specificDriver->deinit = Hi3881Deinit; + + HiMac80211Init(specificDriver); + + return specificDriver; +} + +/* 释放WLAN芯片驱动 */ +static void ReleaseHi3881Driver(struct HdfChipDriver *chipDriver) +{ + if (chipDriver == NULL) { + return; + } + if (strcmp(chipDriver->name, HI3881_DRIVER_NAME) != 0) { + HDF_LOGE("%s:Not my driver!", __func__); + return; + } + OsalMemFree(chipDriver); +} + +static uint8_t GetHi3881GetMaxIFCount(struct HdfChipDriverFactory *factory) { + (void)factory; + return 1; +} + +/* WLAN芯片相关函数的注册 */ +static int32_t HDFWlanRegHisiDriverFactory(void) +{ + static struct HdfChipDriverFactory tmpFactory = { 0 }; + struct HdfChipDriverManager *driverMgr = NULL; + driverMgr = HdfWlanGetChipDriverMgr(); + if (driverMgr == NULL && driverMgr->RegChipDriver != NULL) { + HDF_LOGE("%s fail: driverMgr is NULL!", __func__); + return HDF_FAILURE; + } + tmpFactory.driverName = HI3881_DRIVER_NAME; + tmpFactory.GetMaxIFCount = GetHi3881GetMaxIFCount; + tmpFactory.InitChip = InitHi3881Chip; + tmpFactory.DeinitChip = DeinitHi3881Chip; + tmpFactory.Build = BuildHi3881Driver; + tmpFactory.Release = ReleaseHi3881Driver; + tmpFactory.ReleaseFactory = NULL; + if (driverMgr->RegChipDriver(&tmpFactory) != HDF_SUCCESS) { + HDF_LOGE("%s fail: driverMgr is NULL!", __func__); + return HDF_FAILURE; + } + + return HDF_SUCCESS; +} + +static int32_t HdfWlanHisiChipDriverInit(struct HdfDeviceObject *device) +{ + (void)device; + return HDFWlanRegHisiDriverFactory(); +} + +struct HdfDriverEntry g_hdfHisiChipEntry = { + .moduleVersion = 1, + .Init = HdfWlanHisiChipDriverInit, + .moduleName = "HDF_WLAN_CHIPS" +}; + +HDF_INIT(g_hdfHisiChipEntry); +``` + +``` +#include "hdf_wifi_product.h" +#include "hi_wifi_api.h" +#if (_PRE_OS_VERSION_LINUX == _PRE_OS_VERSION) +#include "oal_thread.h" +#include "osal_time.h" +#endif +#include "wifi_mac80211_ops.h" +#include "wal_cfg80211.h" +#include "net_adpater.h" +#include "hdf_wlan_utils.h" + +#define HDF_LOG_TAG Hi3881Driver + +/* WLAN芯片的初始化函数 */ +int32_t InitHi3881Chip(struct HdfWlanDevice *device) +{ + uint8_t maxPortCount = 1; + int32_t ret = HI_SUCCESS; + uint8_t maxRetryCount = 2; + if (device == NULL) { + HDF_LOGE("%s:NULL ptr!", __func__); + return HI_FAIL; + } + + do { + if (ret != HI_SUCCESS) { + if (device->reset != NULL && device->reset->Reset != NULL) { + device->reset->Reset(device->reset); + } + HDF_LOGE("%s:Retry init hi3881!last ret=%d", __func__, ret); + } + ret = hi_wifi_init(maxPortCount); + } while (ret != 0 && --maxRetryCount > 0); + + if (ret != 0) { + HDF_LOGE("%s:Init hi3881 driver failed!", __func__); + return ret; + } + return HI_SUCCESS; +} + +/* WLAN芯片的去初始化函数 */ +int32_t DeinitHi3881Chip(struct HdfWlanDevice *device) +{ + (void)device; + int32_t ret = hi_wifi_deinit(); + if (ret != 0) { + HDF_LOGE("%s:Deinit failed!ret=%d", __func__, ret); + } + return ret; +} + +/* WLAN芯片驱动的初始化函数 */ +int32_t Hi3881Init(struct HdfChipDriver *chipDriver, struct NetDevice *netDevice) +{ + HDF_LOGI("%s: start...", __func__); + hi_u16 mode = wal_get_vap_mode(); + int32_t ret; + nl80211_iftype_uint8 type; + (void)chipDriver; + + if (mode >= WAL_WIFI_MODE_BUTT) { + oam_error_log1(0, 0, "wal_init_drv_netdev:: invalid mode[%d]", mode); + return HI_FAIL; + } + + if (mode == WAL_WIFI_MODE_STA) { + type = NL80211_IFTYPE_STATION; + } else if (mode == WAL_WIFI_MODE_AP) { + type = NL80211_IFTYPE_AP; + } else { + oam_error_log1(0, 0, "wal_init_drv_netdev:: invalid mode[%d]", mode); + return HI_FAIL; + } + + ret = wal_init_drv_wlan_netdev(type, WAL_PHY_MODE_11N, netDevice); + if (ret != HI_SUCCESS) { + oam_error_log2(0, OAM_SF_ANY, "wal_init_drv_netdev %s failed.l_return:%d\n", netDevice->name, ret); + } + return ret; +} + +/* WLAN芯片驱动的去初始化函数 */ +int32_t Hi3881Deinit(struct HdfChipDriver *chipDriver, struct NetDevice *netDevice) +{ + (void)chipDriver; + int32_t ret = wal_deinit_drv_wlan_netdev(netDevice); + if (ret != HDF_SUCCESS) { + return ret; + } + return ReleasePlatformNetDevice(netDevice); +} +``` + +3、在芯片侧初始化过程中调用netdev的init和add接口进行初始化netdev,并挂接netdev的一些函数指针 + +``` +hi_s32 wal_init_drv_wlan_netdev(nl80211_iftype_uint8 type, wal_phy_mode mode, hi_char* ifname, hi_u32* len) +{ + oal_net_device_stru *netdev = HI_NULL; + + ...... + /* 初始化网络设备,获取对应的实例。*/ + netdev = NetDeviceInit(ifname, *len, LITE_OS); + oal_wireless_dev *wdev = (oal_wireless_dev *)oal_mem_alloc(OAL_MEM_POOL_ID_LOCAL, sizeof(oal_wireless_dev)); + ret = wal_init_netif(type, netdev, wdev); + + ...... + + return HI_SUCCESS; +} +/* 挂接netdev的一些函数指针,详细挂接函数{@link NetDeviceInterFace} */ +oal_net_device_ops_stru g_wal_net_dev_ops = +{ + .getStats = wal_netdev_get_stats, + .open = wal_netdev_open, + .stop = wal_netdev_stop, + .xmit = hmac_bridge_vap_xmit, + .ioctl = wal_net_device_ioctl, + .changeMtu = oal_net_device_change_mtu, + .init = oal_net_device_init, + .deInit = oal_net_free_netdev, +#if (defined(_PRE_WLAN_FEATURE_FLOWCTL) || defined(_PRE_WLAN_FEATURE_OFFLOAD_FLOWCTL)) + .selectQueue = wal_netdev_select_queue, +#endif + .setMacAddr = wal_netdev_set_mac_addr, +#if (_PRE_OS_VERSION_LITEOS == _PRE_OS_VERSION) + .netifNotify = HI_NULL, +#endif + .specialEtherTypeProcess = SpecialEtherTypeProcess, +}; + +hi_s32 wal_init_netif(nl80211_iftype_uint8 type, oal_net_device_stru *netdev, const oal_wireless_dev *wdev) +{ + /* 添加网络设备到协议栈 */ + hi_u32 ret = NetDeviceAdd(netdev, (Protocol80211IfType)type); + + ...... + + return HI_SUCCESS; +} +``` + +4、WifiMac80211Ops中的函数挂接实现。 + +``` +/* 挂接mac80211的一些函数指针 */ + +/* 驱动需要实现的MAC层基本能力的控制接口 */ +static struct HdfMac80211BaseOps g_baseOps = { + .SetMode = WalSetMode, + .AddKey = WalAddKey, + .DelKey = WalDelKey, + .SetDefaultKey = WalSetDefaultKey, + .GetDeviceMacAddr = WalGetDeviceMacAddr, + .SetMacAddr = WalSetMacAddr, + .SetTxPower = WalSetTxPower, + .GetValidFreqsWithBand = WalGetValidFreqsWithBand, + .GetHwCapability = WalGetHwCapability +}; + +/* 驱动需要实现的MAC层STA能力的控制接口 */ +static struct HdfMac80211STAOps g_staOps = { + .Connect = WalConnect, + .Disconnect = WalDisconnect, + .StartScan = WalStartScan, + .AbortScan = WalAbortScan, + .SetScanningMacAddress = WalSetScanningMacAddress, +}; + +/* 驱动需要实现的MAC层AP能力的控制接口 */ +static struct HdfMac80211APOps g_apOps = { + .ConfigAp = WalConfigAp, + .StartAp = WalStartAp, + .StopAp = WalStopAp, + .ConfigBeacon = WalChangeBeacon, + .DelStation = WalDelStation, + .SetCountryCode = WalSetCountryCode, + .GetAssociatedStasCount = WalGetAssociatedStasCount, + .GetAssociatedStasInfo = WalGetAssociatedStasInfo +}; + +/* 初始化mac80211与芯片侧的函数挂接 */ +hi_void HiMac80211Init(struct HdfChipDriver *chipDriver) +{ + if (chipDriver == NULL) { + oam_error_log(0, OAM_SF_ANY, "%s:input is NULL!", __func__); + return; + } + chipDriver->ops = &g_baseOps; + chipDriver->staOps = &g_staOps; + chipDriver->apOps = &g_apOps; +} +``` diff --git "a/zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\345\256\236\344\276\213.md" deleted file mode 100755 index bc558cb6533..00000000000 --- "a/zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\345\256\236\344\276\213.md" +++ /dev/null @@ -1,372 +0,0 @@ -# WLAN开发实例 - -本例程提供WLAN模块初始化过程的完整使用流程。示例如下(以hi3881WLAN芯片为例): - -1、根据硬件,修改配置参数 - -``` -/* 根据硬件参数,通过wlan_platform.hcs配置相关参数,以下是WLAN平台配置的示例 */ -hisi :& deviceList { - device0 :: deviceInst { - deviceInstId = 0; - powers { - power0 { - powerSeqDelay = 0; /* 电源序列延时 */ - powerType = 1; /* 电源类型:0--总是打开;1--GPIO */ - gpioId = 1; /* GPIO管脚号 */ - activeLevel=1; /* 有效电平:0--低;1--高 */ - } - power1 { - powerSeqDelay = 0; /* 电源序列延时 */ - powerType = 0; /* 电源类型:0--总是打开;1--GPIO */ - } - } - reset { - resetType = 0; /* 复位类型:0--不管理;1--GPIO */ - gpioId = 2; /* GPIO管脚号 */ - activeLevel=1; /* 有效电平:0--低;1--高 */ - resetHoldTime = 30; /* 复位配置后的等待时间(ms) */ - } - bootUpTimeout = 30; /* 启动超时时间(ms) */ - bus { - busType = 0; /* 总线类型:0-sdio */ - busId = 2; /* 总线号 */ - funcNum = [1]; /* SDIO功能号 */ - timeout = 1000; /* 读/写数据的超时时间 */ - blockSize = 512; /* 读/写数据的块大小 */ - } - } -} -/* 每一块芯片添加配置文件wlan_chip_<芯片名>.hcs(如:wlan_chip_hi3881.hcs),配置相关参数。以下是hi3881的配置示例 */ -root { - wlan_config { - hi3881 :& chipList { - chipHi3881 :: chipInst { - match_attr = "hdf_wlan_chips_hi3881"; /* 配置匹配标识 */ - chipName = "hi3881"; /* WLAN芯片的名称 */ - sdio { - vendorId = 0x0296; /* 厂商Id */ - deviceId = [0x5347]; /* 设备Id */ - } - } - } - } -} -``` - -2、适配挂接WLAN芯片的初始化和去初始化、WLAN芯片驱动的初始化和去初始化 - -``` -/* WLAN初始化挂接流程 */ -#include "hdf_device_desc.h" -#include "hdf_wifi_product.h" -#include "hdf_log.h" -#include "osal_mem.h" -#include "hdf_wlan_chipdriver_manager.h" -#include "securec.h" -#include "wifi_module.h" -#include "hi_wifi_api.h" -#include "hi_types_base.h" - -#define HDF_LOG_TAG Hi3881Driver - -/* WLAN芯片的初始化和去初始化函数 */ -int32_t InitHi3881Chip(struct HdfWlanDevice *device); -int32_t DeinitHi3881Chip(struct HdfWlanDevice *device); -/* WLAN芯片驱动的初始化和去初始化函数 */ -int32_t Hi3881Deinit(struct HdfChipDriver* chipDriver, struct NetDevice *netDevice); -int32_t Hi3881Init(struct HdfChipDriver* chipDriver, struct NetDevice *netDevice); - -/* 初始化mac80211与芯片侧的函数挂接 */ -hi_void HiMac80211Init(struct HdfChipDriver *chipDriver); - -static const char* const HI3881_DRIVER_NAME = "hisi"; - -/* WLAN芯片驱动挂接以及mac80211与芯片侧的函数挂接 */ -static struct HdfChipDriver *BuildHi3881Driver(struct HdfWlanDevice *device, uint8_t ifIndex) -{ - struct HdfChipDriver *specificDriver = NULL; - if (device == NULL) { - HDF_LOGE("%s fail : channel is NULL", __func__); - return NULL; - } - (void)device; - (void)ifIndex; - specificDriver = (struct HdfChipDriver *)OsalMemCalloc(sizeof(struct HdfChipDriver)); - if (specificDriver == NULL) { - HDF_LOGE("%s fail: OsalMemCalloc fail!", __func__); - return NULL; - } - if (memset_s(specificDriver, sizeof(struct HdfChipDriver), 0, sizeof(struct HdfChipDriver)) != EOK) { - HDF_LOGE("%s fail: memset_s fail!", __func__); - OsalMemFree(specificDriver); - return NULL; - } - - if (strcpy_s(specificDriver->name, MAX_WIFI_COMPONENT_NAME_LEN, HI3881_DRIVER_NAME) != EOK) { - HDF_LOGE("%s fail : strcpy_s fail", __func__); - OsalMemFree(specificDriver); - return NULL; - } - specificDriver->init = Hi3881Init; - specificDriver->deinit = Hi3881Deinit; - - HiMac80211Init(specificDriver); - - return specificDriver; -} - -/* 释放WLAN芯片驱动 */ -static void ReleaseHi3881Driver(struct HdfChipDriver *chipDriver) -{ - if (chipDriver == NULL) { - return; - } - if (strcmp(chipDriver->name, HI3881_DRIVER_NAME) != 0) { - HDF_LOGE("%s:Not my driver!", __func__); - return; - } - OsalMemFree(chipDriver); -} - -static uint8_t GetHi3881GetMaxIFCount(struct HdfChipDriverFactory *factory) { - (void)factory; - return 1; -} - -/* WLAN芯片相关函数的注册 */ -static int32_t HDFWlanRegHisiDriverFactory(void) -{ - static struct HdfChipDriverFactory tmpFactory = { 0 }; - struct HdfChipDriverManager *driverMgr = NULL; - driverMgr = HdfWlanGetChipDriverMgr(); - if (driverMgr == NULL && driverMgr->RegChipDriver != NULL) { - HDF_LOGE("%s fail: driverMgr is NULL!", __func__); - return HDF_FAILURE; - } - tmpFactory.driverName = HI3881_DRIVER_NAME; - tmpFactory.GetMaxIFCount = GetHi3881GetMaxIFCount; - tmpFactory.InitChip = InitHi3881Chip; - tmpFactory.DeinitChip = DeinitHi3881Chip; - tmpFactory.Build = BuildHi3881Driver; - tmpFactory.Release = ReleaseHi3881Driver; - tmpFactory.ReleaseFactory = NULL; - if (driverMgr->RegChipDriver(&tmpFactory) != HDF_SUCCESS) { - HDF_LOGE("%s fail: driverMgr is NULL!", __func__); - return HDF_FAILURE; - } - - return HDF_SUCCESS; -} - -static int32_t HdfWlanHisiChipDriverInit(struct HdfDeviceObject *device) -{ - (void)device; - return HDFWlanRegHisiDriverFactory(); -} - -struct HdfDriverEntry g_hdfHisiChipEntry = { - .moduleVersion = 1, - .Init = HdfWlanHisiChipDriverInit, - .moduleName = "HDF_WLAN_CHIPS" -}; - -HDF_INIT(g_hdfHisiChipEntry); -``` - -``` -#include "hdf_wifi_product.h" -#include "hi_wifi_api.h" -#if (_PRE_OS_VERSION_LINUX == _PRE_OS_VERSION) -#include "oal_thread.h" -#include "osal_time.h" -#endif -#include "wifi_mac80211_ops.h" -#include "wal_cfg80211.h" -#include "net_adpater.h" -#include "hdf_wlan_utils.h" - -#define HDF_LOG_TAG Hi3881Driver - -/* WLAN芯片的初始化函数 */ -int32_t InitHi3881Chip(struct HdfWlanDevice *device) -{ - uint8_t maxPortCount = 1; - int32_t ret = HI_SUCCESS; - uint8_t maxRetryCount = 2; - if (device == NULL) { - HDF_LOGE("%s:NULL ptr!", __func__); - return HI_FAIL; - } - - do { - if (ret != HI_SUCCESS) { - if (device->reset != NULL && device->reset->Reset != NULL) { - device->reset->Reset(device->reset); - } - HDF_LOGE("%s:Retry init hi3881!last ret=%d", __func__, ret); - } - ret = hi_wifi_init(maxPortCount); - } while (ret != 0 && --maxRetryCount > 0); - - if (ret != 0) { - HDF_LOGE("%s:Init hi3881 driver failed!", __func__); - return ret; - } - return HI_SUCCESS; -} - -/* WLAN芯片的去初始化函数 */ -int32_t DeinitHi3881Chip(struct HdfWlanDevice *device) -{ - (void)device; - int32_t ret = hi_wifi_deinit(); - if (ret != 0) { - HDF_LOGE("%s:Deinit failed!ret=%d", __func__, ret); - } - return ret; -} - -/* WLAN芯片驱动的初始化函数 */ -int32_t Hi3881Init(struct HdfChipDriver *chipDriver, struct NetDevice *netDevice) -{ - HDF_LOGI("%s: start...", __func__); - hi_u16 mode = wal_get_vap_mode(); - int32_t ret; - nl80211_iftype_uint8 type; - (void)chipDriver; - - if (mode >= WAL_WIFI_MODE_BUTT) { - oam_error_log1(0, 0, "wal_init_drv_netdev:: invalid mode[%d]", mode); - return HI_FAIL; - } - - if (mode == WAL_WIFI_MODE_STA) { - type = NL80211_IFTYPE_STATION; - } else if (mode == WAL_WIFI_MODE_AP) { - type = NL80211_IFTYPE_AP; - } else { - oam_error_log1(0, 0, "wal_init_drv_netdev:: invalid mode[%d]", mode); - return HI_FAIL; - } - - ret = wal_init_drv_wlan_netdev(type, WAL_PHY_MODE_11N, netDevice); - if (ret != HI_SUCCESS) { - oam_error_log2(0, OAM_SF_ANY, "wal_init_drv_netdev %s failed.l_return:%d\n", netDevice->name, ret); - } - return ret; -} - -/* WLAN芯片驱动的去初始化函数 */ -int32_t Hi3881Deinit(struct HdfChipDriver *chipDriver, struct NetDevice *netDevice) -{ - (void)chipDriver; - int32_t ret = wal_deinit_drv_wlan_netdev(netDevice); - if (ret != HDF_SUCCESS) { - return ret; - } - return ReleasePlatformNetDevice(netDevice); -} -``` - -3、在芯片侧初始化过程中调用netdev的init和add接口进行初始化netdev,并挂接netdev的一些函数指针 - -``` -hi_s32 wal_init_drv_wlan_netdev(nl80211_iftype_uint8 type, wal_phy_mode mode, hi_char* ifname, hi_u32* len) -{ - oal_net_device_stru *netdev = HI_NULL; - - ...... - /* 初始化网络设备,获取对应的实例。*/ - netdev = NetDeviceInit(ifname, *len, LITE_OS); - oal_wireless_dev *wdev = (oal_wireless_dev *)oal_mem_alloc(OAL_MEM_POOL_ID_LOCAL, sizeof(oal_wireless_dev)); - ret = wal_init_netif(type, netdev, wdev); - - ...... - - return HI_SUCCESS; -} -/* 挂接netdev的一些函数指针,详细挂接函数{@link NetDeviceInterFace} */ -oal_net_device_ops_stru g_wal_net_dev_ops = -{ - .getStats = wal_netdev_get_stats, - .open = wal_netdev_open, - .stop = wal_netdev_stop, - .xmit = hmac_bridge_vap_xmit, - .ioctl = wal_net_device_ioctl, - .changeMtu = oal_net_device_change_mtu, - .init = oal_net_device_init, - .deInit = oal_net_free_netdev, -#if (defined(_PRE_WLAN_FEATURE_FLOWCTL) || defined(_PRE_WLAN_FEATURE_OFFLOAD_FLOWCTL)) - .selectQueue = wal_netdev_select_queue, -#endif - .setMacAddr = wal_netdev_set_mac_addr, -#if (_PRE_OS_VERSION_LITEOS == _PRE_OS_VERSION) - .netifNotify = HI_NULL, -#endif - .specialEtherTypeProcess = SpecialEtherTypeProcess, -}; - -hi_s32 wal_init_netif(nl80211_iftype_uint8 type, oal_net_device_stru *netdev, const oal_wireless_dev *wdev) -{ - /* 添加网络设备到协议栈 */ - hi_u32 ret = NetDeviceAdd(netdev, (Protocol80211IfType)type); - - ...... - - return HI_SUCCESS; -} -``` - -4、WifiMac80211Ops中的函数挂接实现 - -``` -/* 挂接mac80211的一些函数指针 */ - -/* 驱动需要实现的MAC层基本能力的控制接口 */ -static struct HdfMac80211BaseOps g_baseOps = { - .SetMode = WalSetMode, - .AddKey = WalAddKey, - .DelKey = WalDelKey, - .SetDefaultKey = WalSetDefaultKey, - .GetDeviceMacAddr = WalGetDeviceMacAddr, - .SetMacAddr = WalSetMacAddr, - .SetTxPower = WalSetTxPower, - .GetValidFreqsWithBand = WalGetValidFreqsWithBand, - .GetHwCapability = WalGetHwCapability -}; - -/* 驱动需要实现的MAC层STA能力的控制接口 */ -static struct HdfMac80211STAOps g_staOps = { - .Connect = WalConnect, - .Disconnect = WalDisconnect, - .StartScan = WalStartScan, - .AbortScan = WalAbortScan, - .SetScanningMacAddress = WalSetScanningMacAddress, -}; - -/* 驱动需要实现的MAC层AP能力的控制接口 */ -static struct HdfMac80211APOps g_apOps = { - .ConfigAp = WalConfigAp, - .StartAp = WalStartAp, - .StopAp = WalStopAp, - .ConfigBeacon = WalChangeBeacon, - .DelStation = WalDelStation, - .SetCountryCode = WalSetCountryCode, - .GetAssociatedStasCount = WalGetAssociatedStasCount, - .GetAssociatedStasInfo = WalGetAssociatedStasInfo -}; - -/* 初始化mac80211与芯片侧的函数挂接 */ -hi_void HiMac80211Init(struct HdfChipDriver *chipDriver) -{ - if (chipDriver == NULL) { - oam_error_log(0, OAM_SF_ANY, "%s:input is NULL!", __func__); - return; - } - chipDriver->ops = &g_baseOps; - chipDriver->staOps = &g_staOps; - chipDriver->apOps = &g_apOps; -} -``` - diff --git "a/zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\346\214\207\345\257\274.md" deleted file mode 100755 index 1a5d63663ab..00000000000 --- "a/zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ /dev/null @@ -1,18 +0,0 @@ -# WLAN开发指导 - -- [开发步骤](#section96091936185820) - -WLAN驱动基于HDF框架和PLATFORM框架开发,不区分OS和芯片平台,为不同厂商的WLAN模组提供统一的驱动模型,各WLAN模组厂商根据如下指导适配WLAN驱动框架。 - -## 开发步骤 - -1. 通过wifi\_config.hcs文件,配置硬件参数:module\(不同feature\),芯片等。 -2. 解析配置文件, 生成全量配置的结构体对象。 -3. Module初始化,创建Module。 -4. 挂接chip,初始化chip。 -5. 总线初始化。 -6. 上层wpa业务挂接。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->以上驱动框架适配步骤一部分已经提供(详细见开发实例),待开发人员实现的部分有:1、根据硬件,修改配置参数;2、适配挂接chip;3、测试自验证。 - diff --git "a/zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\346\246\202\350\277\260.md" deleted file mode 100755 index 869ee1da51d..00000000000 --- "a/zh-cn/device-dev/driver/WLAN\345\274\200\345\217\221\346\246\202\350\277\260.md" +++ /dev/null @@ -1,229 +0,0 @@ -# WLAN开发概述 - -- [简介](#section23087361515) -- [WLAN驱动接口架构](#section1533192516212) -- [接口说明](#section87491484213) - -## 简介 - -WLAN是基于HDF(Hardware Driver Foundation)驱动框架开发的模块,该模块可实现跨操作系统迁移,自适应器件差异,模块化拼装编译等功能。各WLAN厂商驱动开发人员可根据WLAN模块提供的向下统一接口适配各自的驱动代码,实现如下能力:建立/关闭WLAN热点、扫描、关联WLAN热点等;对HDI层向上提供能力如下:设置MAC地址、设置发射功率、获取设备的MAC地址等。[WLAN模块框架图](#fig967034316227)如下: - -**图 1** WLAN框架 - - -![](figures/zh-cn_image_0000001055299108.png) - -## WLAN驱动接口架构 - -WLAN模块有三部分对外开放的API接口,如[下图2](#fig15016395217)所示: - -1. 对HDI层提供的能力接口。 - -2. 驱动直接调用WLAN模块能力接口。 - -3. 提供给各厂商实现的能力接口。 - -**图 2** WLAN模块开放能力分布图 - - -![](figures/接口分布图4.png) - -## 接口说明 - -WLAN驱动模块提供给驱动开发人员可直接调用的能力接口,主要功能有:创建/释放WifiModule、关联/取消关联、申请/释放NetBuf、lwip的pbuf和NetBuf的相互转换等。提供的部分接口说明如[表1](#table1521573319472)所示: - -**表 1** 可直接调用的接口 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

头文件

-

接口名称

-

功能描述

-

wifi_module.h

-

-

struct WifiModule *WifiModuleCreate(const struct HdfConfigWifiModuleConfig *config);

-

基于HDF开发WLAN驱动时,创建一个WifiModule。

-

void WifiModuleDelete(struct WifiModule *module);

-

基于HDF开发WLAN驱动时,删除并释放WifiModule所有数据。

-

int32_t DelFeature(struct WifiModule *module, uint16_t featureType);

-

基于HDF开发WLAN驱动时,从WifiModule删除一个功能组件。

-

int32_t AddFeature(struct WifiModule *module, uint16_t featureType, struct WifiFeature *featureData);

-

基于HDF开发WLAN驱动时,注册一个功能组件到WifiModule。

-

wifi_mac80211_ops.h

-

int32_t (*startAp)(NetDevice *netDev);

-

启动AP。

-

int32_t (*stopAp)(NetDevice *netDev);

-

停止AP。

-

int32_t (*connect)(NetDevice *netDev, WifiConnectParams *param);

-

开始关联。

-

int32_t (*disconnect)(NetDevice *netDev, uint16_t reasonCode);

-

取消关联。

-

hdf_netbuf.h

-

static inline void NetBufQueueInit(struct NetBufQueue *q);

-

初始化NetBuf队列。

-

struct NetBuf *NetBufAlloc(uint32_t size);

-

申请NetBuf。

-

void NetBufFree(struct NetBuf *nb);

-

释放NetBuf。

-

struct NetBuf *Pbuf2NetBuf(const struct NetDevice *netdev, struct pbuf *lwipBuf);

-

lwip的pbuf转换为NetBuf。

-

struct pbuf *NetBuf2Pbuf(const struct NetBuf *nb);

-

NetBuf转换为lwip的pbuf。

-
- -同时WLAN驱动模块也提供了需要驱动开发人员实现的能力接口,主要功能有:初始化/注销NetDevice、打开/关闭NetDevice、获取NetDevice的状态等。提供的部分接口说明如[表2](#table74613501475)所示: - -**表 2** 需要开发人员实现的接口 - - - - - - - - - - - - - - - - - - - - - - - - - - - -

头文件

-

接口名称

-

功能描述

-

net_device.h

-

int32_t (*init)(struct NetDevice *netDev);

-

初始化NetDevice。

-

struct NetDevStats *(*getStats)(struct NetDevice *netDev);

-

获取NetDevice的状态。

-

int32_t (*setMacAddr)(struct NetDevice *netDev, void *addr);

-

设置Mac地址。

-

void (*deInit)(struct NetDevice *netDev);

-

注销NetDevice。

-

int32_t (*open)(struct NetDevice *netDev);

-

打开NetDevice。

-

int32_t (*stop)(struct NetDevice *netDev);

-

关闭NetDevice。

-
- -WLAN驱动模块对HDI层提供的能力接口,主要功能有:创建/销毁 IWiFi对象、设置MAC地址等。提供的部分接口说明如[表3](#table141076311618)所示: - -**表 3** HAL层对外接口 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

头文件

-

接口名称

-

功能描述

-

wifi_hal.h

-

-

int32_t WifiConstruct(struct IWiFi **wifiInstance);

-

创建IWiFi对象,提供IWiFi基本能力。

-

int32_t WifiDestruct(struct IWiFi **wifiInstance);

-

销毁IWiFi对象。

-

int32_t (*start)(struct IWiFi *);

-

创建HAL和驱动之间的通道及获取驱动支持的网卡信息。

-

int32_t (*stop)(struct IWiFi *);

-

销毁通道。

-

wifi_hal_base_feature.h

-

int32_t (*getFeatureType)(const struct IWiFiBaseFeature *);

-

获取特性的类型。

-

int32_t (*setMacAddress)(const struct IWiFiBaseFeature *, unsigned char *, uint8_t);

-

设置MAC地址。

-

int32_t (*getDeviceMacAddress)(const struct IWiFiBaseFeature *, unsigned char *, uint8_t);

-

获取设备持久化的MAC地址。

-

int32_t (*setTxPower)(const struct IWiFiBaseFeature *, int32_t);

-

设置发射功率。

-
- diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001057902344.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001123509750.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001057902344.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001123509750.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001072553354.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001123514210.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001072553354.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001123514210.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001054440624.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001123540984.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001054440624.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001123540984.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001054007499.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001123582482.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001054007499.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001123582482.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001054728498.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001123675706.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001054728498.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001123675706.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001054726248.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001123703482.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001054726248.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001123703482.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001054142582.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001123742254.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001054142582.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001123742254.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001057342245.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001170187071.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001057342245.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001170187071.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001054006983.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001170227689.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001054006983.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001170227689.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001057622716.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001170229891.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001057622716.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001170229891.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001053926237.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001170262141.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001053926237.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001170262141.png diff --git a/zh-cn/device-dev/driver/figures/zh-cn_image_0000001055299108.png b/zh-cn/device-dev/driver/figures/zh-cn_image_0000001170383063.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/driver/figures/zh-cn_image_0000001055299108.png rename to zh-cn/device-dev/driver/figures/zh-cn_image_0000001170383063.png diff --git "a/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\345\256\236\344\276\213.md" deleted file mode 100755 index 2222c0fde7e..00000000000 --- "a/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\345\256\236\344\276\213.md" +++ /dev/null @@ -1,583 +0,0 @@ -# 传感器驱动开发实例 - -基于HDF驱动模型,加载启动加速度计传感器驱动,代码形式如下,具体原理可参考[HDF驱动开发指南](驱动开发.md)。加速度传感器选择通讯接口方式为I2C,厂家选择博世BMI160加速度传感器。 - -1. 加速度计传感器驱动入口注册 - -- 加速度计传感器驱动入口函数实现 - -``` -/* 注册加速度计传感器入口数据结构体对象 */ -struct HdfDriverEntry g_sensorAccelDevEntry = { - .moduleVersion = 1, /* 加速度计传感器模块版本号 */ - .moduleName = "HDF_SENSOR_ACCEL", /* 加速度计传感器模块名,要与device_info.hcs文件里的加速度计moduleName字段值一样*/ - .Bind = BindAccelDriver, /* 加速度计传感器绑定函数 */ - .Init = InitAccelDriver, /* 加速度计传感器初始化函数 */ - .Release = ReleaseAccelDriver, /* 加速度计传感器资源释放函数 */ -}; - -/* 调用HDF_INIT将驱动入口注册到HDF框架中,在加载驱动时HDF框架会先调用Bind函数,再调用Init函数加载该驱动,当Init调用异常时,HDF框架会调用Release释放驱动资源并退出 */ -HDF_INIT(g_sensorAccelDevEntry); -``` - -- 加速度计传感器设备配置描述 - -加速度传感器模型使用HCS作为配置描述源码,HCS配置字段详细介绍参考[配置管理](配置管理.md)介绍。 - -``` -/* 加速度计传感器设备HCS配置 */ -device_sensor_accel :: device { - device0 :: deviceNode { - policy = 1; /* policy字段是驱动服务发布的策略 */ - priority = 105; /* 驱动启动优先级(0-200),值越大优先级越低,建议默认配100,优先级相同则不保证device的加载顺序 */ - preload = 2; /* 驱动按需加载字段,0表示加载,2表示不加载 */ - permission = 0664; /* 驱动创建设备节点权限 */ - moduleName = "HDF_SENSOR_ACCEL"; /* 驱动名称,该字段的值必须和驱动入口结构的moduleName值一致 */ - serviceName = "sensor_accel"; /* 驱动对外发布服务的名称,必须唯一 */ - deviceMatchAttr = "hdf_sensor_accel_driver"; /* 驱动私有数据匹配的关键字,必须和驱动私有数据配置表中的match_attr值相等 */ - } -} -``` - -1. 加速度计传感器驱动初始化和去初始化 - -- 初始化入口函数init - -``` -/* 加速度计传感器驱动对外提供的服务绑定到HDF框架 */ -int32_t BindAccelDriver(struct HdfDeviceObject *device) -{ - CHECK_NULL_PTR_RETURN_VALUE(device, HDF_ERR_INVALID_PARAM); - - static struct IDeviceIoService service = { - .object = {0}, - .Dispatch = DispatchAccel, - }; - device->service = &service; - - return HDF_SUCCESS; -} -/*在探测到器件在位后,需要调用RegisterAccelChipOps注册差异化适配函数*/ -int32_t RegisterAccelChipOps(struct AccelOpsCall *ops) -{ - struct AccelDrvData *drvData = NULL; - - CHECK_NULL_PTR_RETURN_VALUE(ops, HDF_ERR_INVALID_PARAM); - - drvData = AccelGetDrvData(); - drvData->ops.Init = ops->Init; - drvData->ops.ReadData = ops->ReadData; - return HDF_SUCCESS; -} -/* 挂载加速度计传感器驱动归一化的接口函数 */ -static int32_t InitAccelOps(struct SensorDeviceInfo *deviceInfo) -{ - struct AccelDrvData *drvData = AccelGetDrvData(); - - (void)memset_s((void *)deviceInfo, sizeof(*deviceInfo), 0, sizeof(*deviceInfo)); - deviceInfo->ops.GetInfo = SetAccelInfo; - deviceInfo->ops.Enable = SetAccelEnable; - deviceInfo->ops.Disable = SetAccelDisable; - deviceInfo->ops.SetBatch = SetAccelBatch; - deviceInfo->ops.SetMode = SetAccelMode; - deviceInfo->ops.SetOption = SetAccelOption; - - if (memcpy_s(&deviceInfo->sensorInfo, sizeof(deviceInfo->sensorInfo), - &drvData->accelCfg->sensorInfo, sizeof(drvData->accelCfg->sensorInfo)) != EOK) { - HDF_LOGE("%s: copy sensor info failed", __func__); - return HDF_FAILURE; - } - /* 传感器类型标识可以在数据HCS配置文件里面配置,也可以在此处 */ - drvData->accelCfg->sensorInfo.sensorTypeId = SENSOR_TAG_ACCELEROMETER; - drvData->accelCfg->sensorInfo.sensorId = SENSOR_TAG_ACCELEROMETER; - - return HDF_SUCCESS; -} -/* 传感器寄存器初始化操作 */ -static int32_t InitAccelAfterConfig(void) -{ - struct SensorDeviceInfo deviceInfo; - - if (InitAccelConfig() != HDF_SUCCESS) { - HDF_LOGE("%s: init accel config failed", __func__); - return HDF_FAILURE; - } - - if (InitAccelOps(&deviceInfo) != HDF_SUCCESS) { - HDF_LOGE("%s: init accel ops failed", __func__); - return HDF_FAILURE; - } - - if (AddSensorDevice(&deviceInfo) != HDF_SUCCESS) { - HDF_LOGE("%s: add accel device failed", __func__); - return HDF_FAILURE; - } - - return HDF_SUCCESS; -} -/*通过器件探测函数,挂载器件差异化函数接口*/ -static int32_t DetectAccelChip(void) -{ - int32_t num; - int32_t ret; - int32_t loop; - struct AccelDrvData *drvData = AccelGetDrvData(); - CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); - - num = sizeof(g_accelDetectIfList) / sizeof(g_accelDetectIfList[0]); - for (loop = 0; loop < num; ++loop) { - if (g_accelDetectIfList[loop].DetectChip != NULL) { - ret = g_accelDetectIfList[loop].DetectChip(drvData->accelCfg); - if (ret == HDF_SUCCESS) { - drvData->detectFlag = true; - break; - } - } - } - - if (loop == num) { - HDF_LOGE("%s: detect accel device failed", __func__); - drvData->detectFlag = false; - return HDF_FAILURE; - } - return HDF_SUCCESS; -} -/* 加速度计传感器驱动初始化入口函数,主要功能为对传感器私有数据的结构体对象进行初始化,传感器HCS数据配置对象空间分配,传感器HCS数据配置初始化入口函数调用,传感器设备探测是否在位功能,传感器数据上报定时器创建,传感器归一化接口挂载,传感器设备注册功能 */ -int32_t InitAccelDriver(struct HdfDeviceObject *device) -{ - /* 获取传感器私有数据结构体对象 */ - struct AccelDrvData *drvData = AccelGetDrvData(); - - /* 同类型传感器不同厂家设备探测时,判断此类型传感器是否已经在位,若已经在位,无需再继续探测,直接返回 */ - if (drvData->detectFlag) { - HDF_LOGE("%s: accel sensor have detected", __func__); - return HDF_SUCCESS; - } - - CHECK_NULL_PTR_RETURN_VALUE(device, HDF_ERR_INVALID_PARAM); - /* 分配存放传感器数据配置的私有结构体数据对象,需要在驱动释放时释放分配的资源空间 */ - drvData->accelCfg = (struct SensorCfgData *)OsalMemCalloc(sizeof(*cfg)); - if (drvData->accelCfg == NULL) { - HDF_LOGE("%s: malloc sensor config data failed", __func__); - return HDF_FAILURE; - } - - drvData->accelCfg->regCfgGroup = &g_regCfgGroup[0]; - /* 初始化传感器配置数据主要是解析传感器通讯总线配置类型信息,传感器基本信息,传感器属性信息,传感器是否在位信息,寄存器分组信息 */ - if (GetSensorBaseConfigData(device->property, drvData->accelCfg) != HDF_SUCCESS) { - HDF_LOGE("%s: get sensor base config failed", __func__); - goto Base_CONFIG_EXIT; - } - - if (DetectAccelChip() != HDF_SUCCESS) { - HDF_LOGE("%s: accel sensor detect device no exist", __func__); - goto DETECT_CHIP_EXIT; - } - drvData->detectFlag = true; - if (ParseSensorRegConfig(drvData->accelCfg) != HDF_SUCCESS) { - HDF_LOGE("%s: detect sensor device failed", __func__); - goto REG_CONFIG_EXIT; - } - - if (InitAccelAfterConfig() != HDF_SUCCESS) { - HDF_LOGE("%s: init accel after config failed", __func__); - goto INIT_EXIT; - } - - HDF_LOGI("%s: init accel driver success", __func__); - return HDF_SUCCESS; - -INIT_EXIT: - DestroySensorThread(&drvData->thread, &drvData->threadStatus); - (void)DeleteSensorDevice(SENSOR_TAG_ACCELEROMETER); -REG_CONFIG_EXIT: - ReleaseSensorAllRegConfig(drvData->accelCfg); - (void)ReleaseSensorBusHandle(&drvData->accelCfg->busCfg); -DETECT_CHIP_EXIT: - drvData->detectFlag = false; -BASE_CONFIG_EXIT: - drvData->accelCfg->root = NULL; - drvData->accelCfg->regCfgGroup = NULL; - OsalMemFree(drvData->accelCfg); - drvData->accelCfg = NULL; - return HDF_FAILURE; -} - -/* 释放驱动初始化时分配的资源 */ -void ReleaseAccelDriver(struct HdfDeviceObject *device) -{ - (void)device; - struct AccelDrvData *drvData = NULL; - - drvData = AccelGetDrvData(); - (void)DestroySensorThread(&drvData->thread, &drvData->threadStatus); - (void)DeleteSensorDevice(SENSOR_TAG_ACCELEROMETER); - drvData->detectFlag = false; - - if (drvData->accelCfg != NULL) { - drvData->accelCfg->root = NULL; - drvData->accelCfg->regCfgGroup = NULL; - ReleaseSensorAllRegConfig(drvData->accelCfg); - (void)ReleaseSensorBusHandle(&drvData->accelCfg->busCfg); - OsalMemFree(drvData->accelCfg); - drvData->accelCfg = NULL; - } - - drvData->initStatus = false; -} -``` - -1. 加速度计传感器寄存器组配置信息 - -加速度计传感器数据配置只需要按照模板配置即可,基于模板配置的解析功能已经在**InitSensorConfigData**函数完成,只需初始化时调用即可。如果有新增配置项,需要同步修改此函数。 - -``` -加速度传感器数据配置模板(accel_config.hcs) -root { - sensorAccelConfig { - accelChipConfig { - /* 传感器设备信息模板 */ - template sensorInfo { - sensorName = "accelerometer"; /* 加速度计名字,字符最大长度16字节 */ - vendorName = "borsh_bmi160"; /* 传感器设备厂商,字符最大长度16字节 */ - firmwareVersion = "1.0"; /* 传感器固件版本号,默认1.0,字符最大长度16字节 */ - hardwareVersion = "1.0"; /* 传感器硬件版本号,默认1.0,字符最大长度16字节 */ - sensorTypeId = 1; /* 传感器类型编号,详见{@link SensorTypeTag} */ - sensorId = 1; /* 传感器的标识号,有传感器驱动开发者定义,推荐用{@link SensorTypeTag}枚举 */ - maxRange = 8; /* 传感器的最大量程,根据开发者需要配置 */ - precision = 0; /* 传感器的精度,与上报数据配合使用,上报数据结构体{@link SensorEvents } */ - power = 230; /* 传感器的功耗 */ - } - /* 传感器使用的总线类型和配置信息模板 */ - template sensorBusConfig { - busType = 0; /* 0:i2c 1:spi */ - busNum = 6; /* 芯片上分配给传感器的器件号 */ - busAddr = 0; /* 芯片上分配给传感器的地址 */ - regWidth = 1; /* 传感器寄存器地址宽度 */ - regBigEndian = 0; /* 传感器寄存器大小端 */ - } - /* 传感器设备属性模板 */ - template sensorAttr { - chipName = ""; /* 传感器芯片名字 */ - chipIdRegister = 0xf; /* 传感器在位检测寄存器地址 */ - chipIdValue = 0xd1; /* 校验传感器在位检测寄存器值 */ - } - } - } -} - -/* 根据不同器件硬件差异,修改模板配置,不修改的就会默认采用模板配置 */ -root { - sensorAccelConfig { - accel_bmi160_chip_config : accelChipConfig { - match_attr = "hdf_sensor_accel_driver"; /* 需要和加速度传感器设备配置match_attr字段保持一致 */ - accelInfo :: sensorInfo { - vendorName = "borsh_bmi160"; - sensorTypeId = 1; - sensorId = 1; - } - accelBusConfig :: sensorBusConfig { - busType = 0; /* i2c通讯方式 */ - busNum = 6; - busAddr = 0x68; - regWidth = 1; /* 1字节位宽 */ - } - accelAttr :: sensorAttr { - chipName = "bmi160"; - chipIdRegister = 0x00; - chipIdValue = 0xd1; - } - accelRegConfig { - /* regAddr: 寄存器地址 - value: 寄存器值 - mask: 寄存器值的掩码 - len: 寄存器值的数据长度(字节) - delay: 配置寄存器延时(ms) - opsType:操作类型 0-无 1-读 2-写 3-读并检查 4-位更新 - calType: 计算类型 0-无 1-写 2-取反 3-异或 4-左移 5-右移 - shiftNum: 移动位数 - debug: 调试开关,0-调试关闭 1-调试打开 - save: 保存数据开关,0-不保存数据 1-保存数据 - */ - /* 传感器寄存器操作分组,按照分组进行有序配置 */ - /* 寄存器地址, 寄存器值, 寄存器值的掩码, 寄存器值的数据长度, 配置寄存器延时, 操作类型, 计算类型, 移动位数, 调试开关, 保存开关 */ - /* 初始化寄存器组 */ - initSeqConfig = [ - 0x7e, 0xb6, 0xff, 1, 5, 2, 0, 0, 0, 0, - 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 - ]; - /* 使能寄存器组 */ - enableSeqConfig = [ - 0x7e, 0x11, 0xff, 1, 5, 2, 0, 0, 0, 0, - 0x41, 0x03, 0xff, 1, 0, 2, 0, 0, 0, 0, - 0x40, 0x08, 0xff, 1, 0, 2, 0, 0, 0, 0 - ]; - /* 去使能寄存器组 */ - disableSeqConfig = [ - 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 - ]; - } - } - } -} -``` - -1. 加速度计传感器驱动操作接口实现 - -开发者需要根据每种类型的传感器实现归一化接口。 - -``` -/* 不使用函数暂时置空 */ -static int32_t SetAccelInfo(struct SensorBasicInfo *info) -{ - (void)info; - - return HDF_ERR_NOT_SUPPORT; -} -/* 下发使能寄存器组的配置 */ -static int32_t SetAccelEnable(void) -{ - int32_t ret; - struct AccelDrvData *drvData = AccelGetDrvData(); - - CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); - ret = SetSensorRegCfgArray(&drvData->accelCfg->busCfg, drvData->accelCfg->regCfgGroup[SENSOR_ENABLE_GROUP]); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: accel sensor disable config failed", __func__); - return HDF_FAILURE; - } - - drvData->threadStatus = SENSOR_THREAD_RUNNING; - - return HDF_SUCCESS; -} -/* 下发去使能寄存器组的配置 */ -static int32_t SetAccelDisable(void) -{ - int32_t ret; - struct AccelDrvData *drvData = AccelGetDrvData(); - - CHECK_NULL_PTR_RETURN_VALUE(drvData->accelCfg, HDF_ERR_INVALID_PARAM); - - ret = SetSensorRegCfgArray(&drvData->accelCfg->busCfg, drvData->accelCfg->regCfgGroup[SENSOR_DISABLE_GROUP]); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: accel sensor disable config failed", __func__); - return HDF_FAILURE; - } - - drvData->threadStatus = SENSOR_THREAD_STOPPED; - - return HDF_SUCCESS; -} -/* 配置传感器采样率和数据上报间隔 */ -static int32_t SetAccelBatch(int64_t samplingInterval, int64_t interval) -{ - (void)interval; - - struct AccelDrvData *drvData = AccelGetDrvData(); - drvData->interval = samplingInterval; - - return HDF_SUCCESS; -} -/* 设置传感器工作模式,当前支持实时模式 */ -static int32_t SetAccelMode(int32_t mode) -{ - return (mode == SENSOR_WORK_MODE_REALTIME) ? HDF_SUCCESS : HDF_FAILURE; -} -/* 设置传感器可选配置 */ -static int32_t SetAccelOption(uint32_t option) -{ - (void)option; - return HDF_ERR_NOT_SUPPORT; -} -``` - -- 差异化处理接口 - - ``` - /* 器件探测时,如果探测成功,则注册差异化处理函数到accel驱动模型里 */ - int32_t DetectAccelBim160Chip(struct SensorCfgData *data) - { - int32_t ret; - struct AccelOpsCall ops; - CHECK_NULL_PTR_RETURN_VALUE(data, HDF_ERR_INVALID_PARAM); - - if (strcmp(ACCEL_CHIP_NAME_BMI160, data->sensorAttr.chipName) != 0) { - return HDF_SUCCESS; - } - ret = InitAccelPreConfig(); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: init BMI160 bus mux config", __func__); - return HDF_FAILURE; - } - if (DetectSensorDevice(data) != HDF_SUCCESS) { - return HDF_FAILURE; - } - - /* 差异化处理函数 */ - ops.Init = InitBmi160; - ops.ReadData = ReadBmi160Data; - ret = RegisterAccelChipOps(&ops); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: register BMI160 accel failed", __func__); - (void)ReleaseSensorBusHandle(&data->busCfg); - return HDF_FAILURE; - } - return HDF_SUCCESS; - } - /* 初始化处理函数 */ - static int32_t InitBmi160(struct SensorCfgData *data) - { - int32_t ret; - - CHECK_NULL_PTR_RETURN_VALUE(data, HDF_ERR_INVALID_PARAM); - ret = SetSensorRegCfgArray(&data->busCfg, data->regCfgGroup[SENSOR_INIT_GROUP]); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: bmi160 sensor init config failed", __func__); - return HDF_FAILURE; - } - return HDF_SUCCESS; - } - /* 数据处理函数 */ - int32_t ReadBmi160Data(struct SensorCfgData *data) - { - int32_t ret; - struct AccelData rawData = { 0, 0, 0 }; - int32_t tmp[ACCEL_AXIS_NUM]; - struct SensorReportEvent event; - - (void)memset_s(&event, sizeof(event), 0, sizeof(event)); - - ret = ReadBmi160RawData(data, &rawData, &event.timestamp); - if (ret != HDF_SUCCESS) { - return HDF_FAILURE; - } - - event.sensorId = SENSOR_TAG_ACCELEROMETER; - event.option = 0; - event.mode = SENSOR_WORK_MODE_REALTIME; - - rawData.x = rawData.x * BMI160_ACC_SENSITIVITY_2G; - rawData.y = rawData.y * BMI160_ACC_SENSITIVITY_2G; - rawData.z = rawData.z * BMI160_ACC_SENSITIVITY_2G; - - tmp[ACCEL_X_AXIS] = (rawData.x * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; - tmp[ACCEL_Y_AXIS] = (rawData.y * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; - tmp[ACCEL_Z_AXIS] = (rawData.z * SENSOR_1K_UNIT) / SENSOR_CONVERT_UNIT; - - event.dataLen = sizeof(tmp); - event.data = (uint8_t *)&tmp; - ret = ReportSensorEvent(&event); - return ret; - } - ``` - -- 数据处理函数 - -创建传感器定时器,按照配置的采样率定时采样,并上报给数据订阅者。 - -``` -/* 传感器定时工作线程 */ -static int32_t ReadAccelDataThreadWorker(void *arg) -{ - (void)arg; - int64_t interval; - struct AccelDrvData *drvData = AccelGetDrvData(); - - drvData->threadStatus = SENSOR_THREAD_START; - while (true) { - if (drvData->threadStatus == SENSOR_THREAD_RUNNING) { - if (drvData->ops.ReadData != NULL) { - (void)drvData->ops.ReadData(drvData->accelCfg); - } - interval = OsalDivS64(drvData->interval, (SENSOR_CONVERT_UNIT * SENSOR_CONVERT_UNIT)); - OsalMSleep(interval); - } else if (drvData->threadStatus == SENSOR_THREAD_DESTROY) { - break; - } else { - OsalMSleep(ACC_DEFAULT_SAMPLING_200_MS / SENSOR_CONVERT_UNIT / SENSOR_CONVERT_UNIT); - } - - if ((!drvData->initStatus) || (drvData->interval < 0) || drvData->threadStatus != SENSOR_THREAD_RUNNING) { - continue; - } - } - - return HDF_SUCCESS; -} -/* 创建传感器定时器和器件初始化 */ -static int32_t InitAccelConfig(void) -{ - int32_t ret; - struct AccelDrvData *drvData = AccelGetDrvData(); - - if (drvData->threadStatus != SENSOR_THREAD_NONE && drvData->threadStatus != SENSOR_THREAD_DESTROY) { - HDF_LOGE("%s: accel thread have created", __func__); - return HDF_SUCCESS; - } - - ret = CreateSensorThread(&drvData->thread, ReadAccelDataThreadWorker, "hdf_sensor_accel", drvData); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: accel create thread failed", __func__); - drvData->threadStatus = SENSOR_THREAD_NONE; - return HDF_FAILURE; - } - - CHECK_NULL_PTR_RETURN_VALUE(drvData->ops.Init, HDF_ERR_INVALID_PARAM); - - ret = drvData->ops.Init(drvData->accelCfg); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: accel create thread failed", __func__); - drvData->threadStatus = SENSOR_THREAD_NONE; - return HDF_FAILURE; - } - drvData->initStatus = true; - return HDF_SUCCESS; -} -``` - -- 主要的数据结构 - -``` -/* 传感器转换单位*/ -#define SENSOR_CONVERT_UNIT 1000 -#define SENSOR_1K_UNIT 1024 -/* 传感器2g对应灵敏度转换值 */ -#define BMI160_ACC_SENSITIVITY_2G 61 -/* 传感器数据采样寄存器地址 */ -#define BMI160_ACCEL_X_LSB_ADDR 0X12 -#define BMI160_ACCEL_X_MSB_ADDR 0X13 -#define BMI160_ACCEL_Y_LSB_ADDR 0X14 -#define BMI160_ACCEL_Y_MSB_ADDR 0X15 -#define BMI160_ACCEL_Z_LSB_ADDR 0X16 -#define BMI160_ACCEL_Z_MSB_ADDR 0X17 -/* 传感器数据维度 */ -enum AccelAxisNum { - ACCEL_X_AXIS = 0, - ACCEL_Y_AXIS = 1, - ACCEL_Z_AXIS = 2, - ACCEL_AXIS_NUM = 3, -}; -/* 传感器每个维度值 */ -struct AccelData { - int32_t x; - int32_t y; - int32_t z; -}; -/* 传感器私有数据结构体 */ -struct AccelDrvData { - bool detectFlag; - uint8_t threadStatus; - uint8_t initStatus; - int64_t interval; - struct SensorCfgData *accelCfg; - struct OsalThread thread; - struct AccelOpsCall ops; -}; -/* 差异化适配函数 */ -struct AccelOpsCall { - int32_t (*Init)(struct SensorCfgData *data); - int32_t (*ReadData)(struct SensorCfgData *data); -}; -``` - diff --git "a/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\346\214\207\345\257\274.md" deleted file mode 100755 index a544f965063..00000000000 --- "a/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ /dev/null @@ -1,16 +0,0 @@ -# 传感器驱动开发指导 - -- [开发步骤](#section18816105182315) - -Sensor驱动是基于HDF框架、PLATFORM和OSAL基础接口进行开发,不区分操作系统和芯片平台,为不同Sensor器件提供统一的驱动模型。本篇开发指导以加速度计传感器为例,介绍传感器驱动开发。 - -## 开发步骤 - -1. 加速度计传感器驱动注册。HDF驱动框架会提供统一的驱动管理模型,通过加速计传感器模块配置信息,识别并加载对应模块驱动。 -2. 加速度计传感器驱动初始化和去初始化。HDF驱动框架通过init入口函数,依次启动传感器设备驱动加载和分配传感器设备数据配置资源。HDF驱动框架通过release函数,释放驱动加载的资源和配置。 -3. 加速度计传感器寄存器组配置解析。不同类型传感器需要在hcs里配置器件对应的HCS配置文件,然后再设备驱动启动过程中探测器件是否在位,然后加载对应的配置文件,生成配置的结构体对象。 -4. 加速度计传感器驱动操作接口实现。实现各个类型传感器归一化驱动接口,如init,GetInfo,Enable,Disable,SetBatch,SetMode,SetOption,ReadSensorData等函数,完成传感器驱动配置下发和数据上报功能。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->传感器驱动模型已经提供一部分能力集,包括驱动设备管理能力,抽象总线和平台操作接口能力,通用配置操作接口能力,配置解析操作接口能力,接口参考[表2](传感器驱动开发概述.md#table1156812588320)。需要开发人员实现部分有:1、传感器部分操作接口([表3](传感器驱动开发概述.md#table1083014911336));2、传感器HCS差异化数据配置;3、驱动基本功能验证。 - diff --git "a/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\346\246\202\350\277\260.md" deleted file mode 100755 index 6319a9086c6..00000000000 --- "a/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\345\274\200\345\217\221\346\246\202\350\277\260.md" +++ /dev/null @@ -1,244 +0,0 @@ -# 传感器驱动开发概述 - -- [简介](#section667413271505) -- [接口说明](#section7255104114110) - -## 简介 - -Sensor(传感器)驱动模块为上层Sensor服务系统提供稳定的Sensor基础能力API,包括Sensor列表查询、Sensor启停、Sensor订阅及去订阅,Sensor参数配置等功能;基于HDF(**H**ardware **D**river **F**oundation)驱动框架开发的Sensor驱动模型,实现跨操作系统迁移,器件差异配置等功能。Sensor驱动模型如下图1所示: - -**图 1** Sensor驱动模型图 -![](figures/Sensor驱动模型图.png "Sensor驱动模型图") - -Sensor驱动模型对外开放的API接口能力如下: - -- 提供Sensor HDI(**H**ardware **D**river **I**nterface)能力接口,简化服务开发。 -- 提供Sensor驱动模型能力接口:依赖HDF驱动框架实现Sensor器件驱动的注册,加载,去注册,器件探测等能力,提供同一类型Sensor器件驱动归一接口, 寄存器配置解析操作接口,总线访问抽象接口,平台抽象接口。 -- 提供开发者实现的能力接口:依赖HDF驱动框架的HCS\(**H**DF **C**onfiguration **S**ource\)配置管理,根据同类型Sensor差异化配置,实现Sensor器件参数序列化配置和器件部分操作接口,简化Sensor器件驱动开发。 - -## 接口说明 - -Sensor驱动模型对HDI开放的API接口功能,参考表1。 - -**表 1** Sensor驱动模型对外API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

功能描述

-

查询操作

-

int32_t GetAllSensors(struct SensorInformation **sensorInfo, int32_t *count)

-

获取系统中注册的所有传感器信息,一种类型传感器信息包括传感器名字、设备厂商、固件版本号、硬件版本号、传感器类型编号、传感器标识、最大量程、精度、功耗。

-

配置操作

-

int32_t Enable(int32_t sensorId)

-

使能一种传感器设备,只有数据订阅者使能传感器后,才能获取订阅的传感器数据。

-

int32_t Disable(int32_t sensorId)

-

去使能一种传感器设备。

-

int32_t SetBatch(iint32_t sensorId, int64_t samplingInterval, int64_t reportInterval)

-

设置一种传感器的数据采样间隔和数据上报间隔。

-

int32_t SetMode(int32_t sensorTypeId, SensorUser *user, int32_t mode)

-

设置一种传感器的工作模式,不同的工作模式,上报数据方式不同。

-

int32_t SetOption(int32_t sensorId, uint32_t option)

-

设置一种传感器量程,精度等可选配置。

-

数据订阅操作

-

int32_t Register(RecordDataCallback cb)

-

订阅者注册传感器数据回调函数,系统会将获取到的传感器数据上报给订阅者。

-

int32_t Unregister(void)

-

订阅者去注册传感器数据回调函数。

-

接口实例

-

const struct SensorInterface *NewSensorInterfaceInstance(void)

-

创建传感器接口实例。

-

int32_t FreeSensorInterfaceInstance(void)

-

释放传感器接口实例。

-
- -Sensor驱动模型对驱动开发者开放的功能接口,驱动开发者无需实现,直接使用,参考表2: - -**表 2** Sensor驱动模型对驱动开发者开放的功能接口列表 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

功能描述

-

设备管理操作接口

-

int32_t AddSensorDevice(const struct SensorDeviceInfo *deviceInfo)

-

添加当前类型的传感器设备到传感器设备管理。

-

int32_t DeleteSensorDevice(int32_t sensorId)

-

删除传感器设备管理里指定的传感器设备。

-

int32_t ReportSensorEvent(const struct SensorReportEvent *events)

-

上报指定类型传感器的数据到用户侧。

-

Sensor抽象总线和平台操作接口

-

int32_t ReadSensor(struct SensorBusCfg *busCfg, uint16_t regAddr, uint8_t *data, uint16_t dataLen)

-

按照配置的总线方式,读取传感器寄存器配置数据。

-

int32_t WriteSensor(struct SensorBusCfg *busCfg, uint8_t *writeData, uint16_t len)

-

按照配置的总线方式,传感器配置数据写入寄存器。

-

int32_t CreateSensorThread(struct OsalThread *thread, OsalThreadEntry threadEntry, char *name, void *entryPara)

-

创建指定传感器的定时线程,用于传感器数据上报处理。

-

void DestroySensorThread(struct OsalThread *thread, uint8_t *status);

-

销毁传感器创建的定时线程。

-

通用配置操作接口

-

int32_t SetSensorRegCfgArray(struct SensorBusCfg *busCfg, const struct SensorRegCfgGroupNode *group);

-

根据传感器总线类型信息,下发寄存器分组配置。

-

配置解析操作接口

-

-

int32_t GetSensorBaseConfigData(const struct DeviceResourceNode *node, struct SensorCfgData *config)

-

根据传感器设备HCS资源配置,获取传感器信息,总线配置信息,属性配置等基本配置信息,并初始化对应的基本配置数据结构体。

-

int32_t ParseSensorRegConfig(struct SensorCfgData *config)

-

根据传感器设备HCS资源配置,解析寄存器分组信息,并初始化配置数据结构体。

-

void ReleaseSensorAllRegConfig(struct SensorCfgData *config)

-

释放传感器配置数据结构体里分配的资源。

-

int32_t GetSensorBusHandle(struct SensorBusCfg *busCfg)

-

获取传感器总线句柄信息。

-

int32_t ReleaseSensorBusHandle(struct SensorBusCfg *busCfg)

-

释放传感器句柄信息。

-
- -Sensor驱动模型要求驱动开发者实现的接口功能,参考表3 - -**表 3** Sensor驱动模型要求驱动开发者实现的接口列表 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

功能描述

-

基本功能操作

-

int32_t init(void)

-

传感器器设备探测成功后,需要对传感器器设备初始化配置。

-

int32_t GetInfo(struct SensorBasicInfo *info)

-

从传感器器设备的HCS配置里,获取当前传感器设备的基本信息。

-

int32_t Enable(void)

-

根据当前传感器器设备的HCS配置,下发传感器设备使能操作组的寄存器配置。

-

int32_t Disable(void)

-

根据当前传感器器设备的HCS配置,下发传感器设备去使能操作组的寄存器配置。

-

int32_t SetBatch(int64_t samplingInterval, int64_t reportInterval)

-

根据数据采样率和数据上报间隔,配置当前传感器设备的数据上报线程处理时间。

-

int32_t SetMode(int32_t mode)

-

配置当前传感器设备数据上报方式。

-

int32_t SetOption(uint32_t option)

-

根据可选配置,下发量程,精度等寄存器配置。

-

void ReadSensorData(void)

-

实现传感器的数据读取函数。

-
- -接口实现参考[SENSOR](传感器驱动开发实例.md)章节。 - diff --git "a/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\346\265\213\350\257\225\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\346\265\213\350\257\225\346\214\207\345\257\274.md" deleted file mode 100755 index 7bf51251601..00000000000 --- "a/zh-cn/device-dev/driver/\344\274\240\346\204\237\345\231\250\351\251\261\345\212\250\346\265\213\350\257\225\346\214\207\345\257\274.md" +++ /dev/null @@ -1,82 +0,0 @@ -# 传感器驱动测试指导 - -驱动开发完成后,在传感器单元测试里面开发自测试用例,验证驱动基本功能。测试环境采用开发者自测试平台。 - -``` -/* 标识是否上报传感器数据 */ -static int32_t g_sensorDataFlag = 0; -/* 保持获取的传感器接口实例地址 */ -static const struct SensorInterface *g_sensorDev = nullptr; - -/* 订阅者注册数据上报函数 */ -static int SensorTestDataCallback(struct SensorEvents *event) -{ - if (event == nullptr) { - return -1; - } - float *data = (float*)event->data; - printf("time [%lld] sensor id [%d] x-[%f] y-[%f] z-[%f]\n\r", event->timestamp, - event->sensorId, (*data), *(data + 1), *(data + g_axisZ)); - if (*data > 1e-5) { - g_sensorDataFlag = 1; - } - return 0; -} -/* 用例执行前,初始化传感器接口实例 */ -void HdfSensorTest::SetUpTestCase() -{ - g_sensorDev = NewSensorInterfaceInstance(); - if (g_sensorDev == nullptr) { - printf("test sensorHdi get Module instace failed\n\r"); - } -} -/* 用例资源释放 */ -void HdfSensorTest::TearDownTestCase() -{ - if (g_sensorDev != nullptr) { - FreeSensorInterfaceInstance(); - g_sensorDev = nullptr; - } -} -/* 传感器驱动测试验证 */ -HWTEST_F(HdfSensorTest,TestAccelDriver_001, TestSize.Level0) -{ - int32_t sensorInterval = 1000000000; /* 数据采样率单位纳秒 */ - int32_t pollTime = 5; /* 数据采样时间单位秒 */ - int32_t accelSensorId = 1; /* 加速度传感器类型标识为1 */ - int32_t count = 0; - int ret; - struct SensorInformation *sensorInfo = nullptr; - - ret = g_sensorDev->Register(SensorTestDataCallback) - EXPECT_EQ(SENSOR_NULL_PTR, ret); - - ret = g_sensorDev->GetAllSensors(&sensorInfo, &count); - EXPECT_EQ(0, ret); - if (sensorInfo == nullptr) { - EXPECT_NE(nullptr, sensorInfo); - return; - } - /* 打印获取的传感器列表 */ - for (int i = 0; i < count; i++) { - printf("get sensoriId[%d], info name[%s]\n\r", sensorInfo[i]->sensorId, sensorInfo[i]->sensorName); - } - ret = g_sensorDev->Enable(accelSensorId); - EXPECT_EQ(0, ret); - g_sensorDataFlag = 0; - - ret = g_sensorDev->SetBatch(accelSensorId, sensorInterval, pollTime); - EXPECT_EQ(0, ret); - /* 在时间pollTime内,观察输出打印数据 */ - OsalSleep(pollTime); - EXPECT_EQ(1, g_sensorDataFlag); - - ret = g_sensorDev->Disable(accelSensorId); - g_sensorDataFlag = 0; - EXPECT_EQ(0, ret); - - ret = g_sensorDev->Unregister(); - EXPECT_EQ(0, ret); -} -``` - diff --git "a/zh-cn/device-dev/driver/\351\251\261\345\212\250\345\271\263\345\217\260.md" "b/zh-cn/device-dev/driver/\345\271\263\345\217\260\351\251\261\345\212\250.md" old mode 100755 new mode 100644 similarity index 79% rename from "zh-cn/device-dev/driver/\351\251\261\345\212\250\345\271\263\345\217\260.md" rename to "zh-cn/device-dev/driver/\345\271\263\345\217\260\351\251\261\345\212\250.md" index 7d5a5437f75..3f7f75b5eb0 --- "a/zh-cn/device-dev/driver/\351\251\261\345\212\250\345\271\263\345\217\260.md" +++ "b/zh-cn/device-dev/driver/\345\271\263\345\217\260\351\251\261\345\212\250.md" @@ -1,4 +1,4 @@ -# 驱动平台 +# 平台驱动 - **[GPIO](GPIO.md)** diff --git "a/zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\344\275\277\347\224\250\345\256\236\344\276\213.md" "b/zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\344\275\277\347\224\250\345\256\236\344\276\213.md" deleted file mode 100755 index b8d64e53b75..00000000000 --- "a/zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\344\275\277\347\224\250\345\256\236\344\276\213.md" +++ /dev/null @@ -1,86 +0,0 @@ -# 看门狗使用实例 - -本例程提供看门狗的完整使用流程。 - -在本例程中,我们打开一个看门狗设备,设置超时时间并启动计时: - -- 首先定期喂狗,即按时清除看门狗定时器,确保系统不会因定时器超时而复位。 -- 接着再停止喂狗,观察定时器到期后系统是否发生复位行为。 - -示例如下: - -``` -#include "watchdog_if.h" -#include "hdf_log.h" -#include "osal_irq.h" -#include "osal_time.h" - -#define WATCHDOG_TEST_TIMEOUT 2 -#define WATCHDOG_TEST_FEED_TIME 6 - -static int32_t TestCaseWatchdog(void) -{ - int32_t i; - int32_t ret; - uint32_t timeout; - DevHandle handle = NULL; - - /* 打开0号看门狗设备 */ - handle = WatchdogOpen(0); - if (handle == NULL) { - HDF_LOGE("Open watchdog fail!"); - return -1; - } - - /* 设置超时时间 */ - ret = WatchdogSetTimeout(handle, WATCHDOG_TEST_TIMEOUT); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: set timeout fail! ret:%d\n", __func__, ret); - WatchdogClose(handle); - return ret; - } - - /* 回读设置的超时时间值 */ - ret = WatchdogGetTimeout(handle, &timeout); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: get timeout fail! ret:%d\n", __func__, ret); - WatchdogClose(handle); - return ret; - } - HDF_LOGI("%s: read timeout back:%u\n", __func__, timeout); - - /* 启动看门狗,开始计时 */ - ret = WatchdogStart(handle); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: satrt fail! ret:%d\n", __func__, ret); - WatchdogClose(handle); - return ret; - } - - /* 每隔1S喂狗一次 */ - for (i = 0; i < WATCHDOG_TEST_FEED_TIME; i++) { - HDF_LOGE("%s: feeding watchdog %d times... \n", __func__, i); - ret = WatchdogFeed(handle); - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: feed dog fail! ret:%d\n", __func__, ret); - WatchdogClose(handle); - return ret; - } - OsalSleep(1); - } - /* 由于喂狗间隔小于超时时间,系统不会发生复位,此日志可以正常打印 */ - HDF_LOGE("%s: no reset ... feeding test OK!!!\n", __func__); - - /* 接下来持续不喂狗,使得看门狗计时器超时 */ - for (i = 0; i < WATCHDOG_TEST_FEED_TIME; i++) { - HDF_LOGE("%s: watiting dog buck %d times... \n", __func__, i); - OsalSleep(1); - } - - /* 当不喂狗时间到达之前设定的超时时间的时候,系统会发生复位,理论上观察不到此日志的打印 */ - HDF_LOGE("%s: dog has't buck!!! \n", __func__, i); - WatchdogClose(handle); - return -1; -} -``` - diff --git "a/zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\344\275\277\347\224\250\346\214\207\345\257\274.md" deleted file mode 100755 index b8fd5753d46..00000000000 --- "a/zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ /dev/null @@ -1,391 +0,0 @@ -# 看门狗使用指导 - -- [使用流程](#section0719414187) -- [打开看门狗设备](#section198171379261) -- [获取看门狗状态](#section206592910275) -- [设置超时时间](#section19605128182714) -- [获取超时时间](#section11111516208) -- [启动看门狗](#section141174192814) -- [喂狗](#section179101435113910) -- [停止看门狗](#section15282123192816) -- [关闭看门狗设备](#section7857850173411) - -## 使用流程 - -使用看门狗的一般流程如[图1](#fig19134125410189)所示。 - -**图 1** 看门狗使用流程图 - - -![](figures/zh-cn_image_0000001057622716.png) - -## 打开看门狗设备 - -在操作看门狗之前,需要使用WatchdogOpen打开一个看门狗设备,一个系统可能有多个看门狗,通过ID号来打开指定的看门狗设备: - -int32\_t WatchdogOpen\(int16\_t wdtId\); - -**表 1** WatchdogOpen参数和返回值描述 - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

wdtId

-

看门狗设备号

-

返回值

-

返回值描述

-

NULL

-

打开失败

-

DevHandle类型指针

-

看门狗设备句柄

-
- -``` -DevHandle handle = NULL; -handle = WatchdogOpen(0); /* 打开0号看门狗设备 */ -if (handle == NULL) { - HDF_LOGE("WatchdogOpen: failed, ret %d\n", ret); - return; -} -``` - -## 获取看门狗状态 - -int32\_t WatchdogGetStatus\(DevHandle handle, int32\_t \*status\); - -**表 2** WatchdogGetStatus参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

看门狗设备句柄

-

status

-

获取到的启动状态指针

-

返回值

-

返回值描述

-

0

-

获取成功

-

负数

-

获取失败

-
- -``` -int32_t ret; -int32_t status; -/* 获取Watchdog启动状态 */ -ret = WatchdogGetStatus(handle, &status); -if (ret != 0) { - HDF_LOGE("WatchdogGetStatus: failed, ret %d\n", ret); - return; -} -``` - -## 设置超时时间 - -int32\_t WatchdogSetTimeout\(PalHandle \*handle, uint32\_t seconds\); - -**表 3** WatchdogSetTimeout参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

看门狗设备句柄

-

seconds

-

超时时间,单位为秒

-

返回值

-

返回值描述

-

0

-

设置成功

-

负数

-

设置失败

-
- -``` -int32_t ret; -uint32_t timeOut = 60; -/* 设置超时时间,单位:秒 */ -ret = WatchdogSetTimeout(handle, timeOut); -if (ret != 0) { - HDF_LOGE("WatchdogSetTimeout: failed, ret %d\n", ret); - return; -} -``` - -## 获取超时时间 - -int32\_t WatchdogGetTimeout\(PalHandle \*handle, uint32\_t \*seconds\); - -**表 4** WatchdogGetTimeout参数和返回值描述 - - - - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

看门狗设备句柄

-

seconds

-

接收超时时间的指针,单位为秒

-

返回值

-

返回值描述

-

0

-

获取成功

-

负数

-

获取失败

-
- -``` -int32_t ret; -uint32_t timeOut; -/* 获取超时时间,单位:秒 */ -ret = WatchdogGetTimeout(handle, &timeOut); -if (ret != 0) { - HDF_LOGE("WatchdogGetTimeout: failed, ret %d\n", ret); - return; -} -``` - -## 启动看门狗 - -int32\_t WatchdogStart\(DevHandle handle\); - -**表 5** WatchdogStart参数和返回值描述 - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

看门狗设备句柄

-

返回值

-

返回值描述

-

0

-

启动成功

-

负数

-

启动失败

-
- -``` -int32_t ret; -/* 启动看门狗 */ -ret = WatchdogStart(handle); -if (ret != 0) { - HDF_LOGE("WatchdogStart: failed, ret %d\n", ret); - return; -} -``` - -## 喂狗 - -int32\_t WatchdogFeed\(DevHandle handle\); - -**表 6** WatchdogFeed参数和返回值描述 - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

看门狗设备句柄

-

返回值

-

返回值描述

-

0

-

喂狗成功

-

负数

-

喂狗失败

-
- -``` -int32_t ret; -/* 喂狗 */ -ret = WatchdogFeed(handle); -if (ret != 0) { - HDF_LOGE("WatchdogFeed: failed, ret %d\n", ret); - return; -} -``` - -## 停止看门狗 - -int32\_t WatchdogStop\(DevHandle handle\); - -**表 7** WatchdogStop参数和返回值描述 - - - - - - - - - - - - - - - - - - - -

参数

-

参数描述

-

handle

-

看门狗设备句柄

-

返回值

-

返回值描述

-

0

-

停止成功

-

负数

-

停止失败

-
- -``` -int32_t ret; -/* 停止看门狗 */ -ret = WatchdogStop(handle); -if (ret != 0) { - HDF_LOGE("WatchdogStop: failed, ret %d\n", ret); - return; -} - -``` - -## 关闭看门狗设备 - -当操作完毕时,使用WatchdogClose关闭打开的设备句柄: - -void WatchdogClose\(DevHandle handle\); - -**表 8** WatchdogClose参数和返回值描述 - - - - - - - - - - -

参数

-

参数描述

-

handle

-

看门狗设备句柄

-
- -``` -/* 关闭看门狗 */ -ret = WatchdogClose(handle); -``` - diff --git "a/zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\346\246\202\350\277\260.md" "b/zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\346\246\202\350\277\260.md" deleted file mode 100755 index 467e21ba08e..00000000000 --- "a/zh-cn/device-dev/driver/\347\234\213\351\227\250\347\213\227\346\246\202\350\277\260.md" +++ /dev/null @@ -1,78 +0,0 @@ -# 看门狗概述 - -- [简介](#section3579126111816) -- [接口说明](#section17429111981812) - -## 简介 - -看门狗(watchdog),又叫看门狗计时器(watchdog timer),是一种硬件的计时设备,当系统的主程序发生某些错误时,导致未及时清除看门狗计时器的计时值,这时看门狗计时器就会对系统发出复位信号,使系统从悬停状态恢复到正常运作状态。 - -## 接口说明 - -**表 1** 看门狗 API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

功能分类

-

接口名

-

描述

-

打开/关闭看门狗

-

WatchdogOpen

-

打开看门狗设备

-

WatchdogClose

-

关闭看门狗设备

-

启动/停止看门狗

-

WatchdogStart

-

启动看门狗

-

WatchdogStop

-

停止看门狗

-

设置/获取超时时间

-

WatchdogSetTimeout

-

设置看门狗超时时间

-

WatchdogGetTimeout

-

获取看门狗超时时间

-

获取看门狗状态

-

WatchdogGetStatus

-

获取看门狗状态

-

清除看门狗定时器

-

WatchdogFeed

-

清除看门狗定时器(喂狗)

-
- ->![](public_sys-resources/icon-note.gif) **说明:** ->本文涉及看门狗的所有接口,仅限内核态使用,不支持在用户态使用。 - diff --git "a/zh-cn/device-dev/driver/\351\251\261\345\212\250\345\274\200\345\217\221.md" "b/zh-cn/device-dev/driver/\351\251\261\345\212\250\345\274\200\345\217\221.md" index e35139db59c..001ce6dd7a5 100755 --- "a/zh-cn/device-dev/driver/\351\251\261\345\212\250\345\274\200\345\217\221.md" +++ "b/zh-cn/device-dev/driver/\351\251\261\345\212\250\345\274\200\345\217\221.md" @@ -5,9 +5,9 @@ ## 驱动模型介绍 -HDF框架以组件化的驱动模型作为核心设计思路,为开发者提供更精细化的驱动管理,让驱动开发和部署更加规范。HDF框架将一类设备驱动放在同一个host里面,开发者也可以将驱动功能分层独立开发和部署,支持一个驱动多个node,HDF框架管理驱动模型如下图所示: +HDF框架以组件化的驱动模型作为核心设计思路,为开发者提供更精细化的驱动管理,让驱动开发和部署更加规范。HDF框架将一类设备驱动放在同一个host里面,开发者也可以将驱动功能分层独立开发和部署,支持一个驱动多个node,HDF驱动模型如下图所示: -**图 1** HDF框架管理驱动模型 +**图 1** HDF驱动模型 ![](figures/zh-cn_image_0000001054564784.png) diff --git "a/zh-cn/device-dev/get-code/Docker\347\274\226\350\257\221\347\216\257\345\242\203.md" "b/zh-cn/device-dev/get-code/Docker\347\274\226\350\257\221\347\216\257\345\242\203.md" new file mode 100644 index 00000000000..c15f1861f15 --- /dev/null +++ "b/zh-cn/device-dev/get-code/Docker\347\274\226\350\257\221\347\216\257\345\242\203.md" @@ -0,0 +1,313 @@ +# Docker编译环境 + +- [Docker环境介绍](#section107932281315) +- [环境准备](#section7337134183512) +- [独立Docker环境](#section2858536103611) + - [搭建Docker环境-轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB)](#section319412277287) + - [编译源码-轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB)](#section631485163615) + - [搭建Docker环境-标准系统类设备(参考内存≥128MB)](#section13585262391) + - [编译源码-标准系统类设备(参考内存≥128MB)](#section193711513406) + +- [基于HPM的Docker环境](#section485713518337) + - [搭建Docker环境](#section3295842510) + - [获取及编译源码](#section69141039143518) + + +## Docker环境介绍 + +OpenHarmony为开发者提供了两种Docker环境,以帮助开发者快速完成复杂的开发环境准备工作。两种Docker环境及适用场景如下: + +- 独立Docker环境:适用于直接基于Ubuntu、Windows操作系统平台进行版本编译的场景。 +- 基于HPM的Docker环境:适用于使用HPM工具进行发行版编译的场景。 + +**表 1** Docker镜像介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Docker环境

+

系统类型

+

运行平台

+

Docker镜像仓库

+

标签

+

独立 Docker环境

+

轻量和小型系统

+

Ubuntu/Windows

+

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker

+

0.0.5

+

标准系统

+

Ubuntu

+

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard

+

0.0.1

+

HPM Docker环境

+

轻量和小型系统

+

Ubuntu/Windows

+

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker

+

0.0.3

+
+ +## 环境准备 + +在使用docker环境前需要先完成以下操作: + +1. 安装Docker,Docker安装请参考[官方指导](https://docs.docker.com/engine/install/)。 +2. 获取OpenHarmony源码,请参考[获取源码](源码获取.md)。 + + >![](public_sys-resources/icon-note.gif) **说明:** + >HPM Docker环境无需单独获取源码。 + + +## 独立Docker环境 + +OpenHarmony的Docker镜像托管在[HuaweiCloud SWR](https://console.huaweicloud.com/swr/?region=cn-south-1#/app/warehouse/warehouseMangeDetail/goldensir/openharmony-docker/openharmony-docker?type=ownImage)上。开发者可以通过该镜像在很大程度上简化编译前的环境配置。下文将介绍具体使用步骤。 + +### 搭建Docker环境-轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB) + +**方式一:从HuaweiCloud SWR上直接获取Docker镜像进行构建:** + +1. 获取Docker镜像。 + + ``` + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + +2. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 + + ubuntu下执行: + + ``` + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + + windows下执行(假设源码目录为D:\\OpenHarmony): + + ``` + docker run -it -v D:\OpenHarmony:/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + + +**方式二:通过Dockerfile 构建本地Docker镜像进行构建** + +1. 获取Dockerfile脚本文件,用来构建本地Docker镜像。 + + ``` + git clone https://gitee.com/openharmony/docs.git + ``` + +2. 进入Dockerfile代码目录路径执行Docker镜像构建命令。 + + ``` + cd docs/docker + ./build.sh + ``` + +3. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 + + ubuntu下执行: + + ``` + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + + windows下执行(假设源码目录为D:\\OpenHarmony): + + ``` + docker run -it -v D:\OpenHarmony:/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 + ``` + + +### 编译源码-轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB) + +通过如下编译脚本启动轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB)的编译。下文以Hi3516平台为例说明具体编译步骤。 + +设置编译路径,选择当前路径。 + +``` +hb set + . +``` + +**图 1** 设置编译界面 + + +![](figures/zh-cn_image_0000001101413884.png) + +>![](public_sys-resources/icon-note.gif) **说明:** +>当前开发板平台和编译界面的对应关系如下: +>- Hi3861:wifiiot\_hispark\_pegasus@hisilicon +>- Hi3516:ipcamera\_hispark\_taurus@hisilicon +>- Hi3518:ipcamera\_hispark\_aries@hisilicon + +1. 选择ipcamera\_hispark\_taurus@hisilicon并回车。 +2. 执行编译。 + + ``` + hb build -f + ``` + +3. 查看编译结果。 + + 编译结果文件生成在out/hispark\_taurus/ipcamera\_hispark\_taurus目录下。 + + +### 搭建Docker环境-标准系统类设备(参考内存≥128MB) + +**方式一:从HuaweiCloud SWR上直接获取Docker镜像进行构建:** + +1. 获取Docker镜像。 + + ``` + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 + ``` + +2. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 + + ``` + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 + ``` + + +**方式二:通过Dockerfile 构建本地Docker镜像进行构建** + +1. 获取Dockerfile脚本文件,用来构建本地Docker镜像。 + + ``` + git clone https://gitee.com/openharmony/docs.git + ``` + +2. 进入Dockerfile代码目录路径执行Docker镜像构建命令。 + + ``` + cd docs/docker/standard + ./build.sh + ``` + +3. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 + + ``` + docker run -it -v $(pwd):/home/openharmony openharmony-docker-standard:0.0.1 + ``` + + +### 编译源码-标准系统类设备(参考内存≥128MB) + +1. 在源码的根目录执行预处理脚本。 + + ``` + ../scripts/prepare.sh + ``` + +2. 通过如下编译脚本启动标准系统类设备(参考内存≥128MB)的编译。 + + ``` + ./build.sh --product-name {product_name} + ``` + + \{product\_name\}为当前版本支持的平台。比如:Hi3516DV300等。 + + 编译所生成的文件都归档在out/ohos-arm-release/目录下,结果镜像输出在 out/ohos-arm-release/packages/phone/images/ 目录下。 + + +>![](public_sys-resources/icon-note.gif) **说明:** +>退出Docker执行exit命令即可。 + +## 基于HPM的Docker环境 + +docker\_dist是一个[HPM](https://hpm.harmonyos.com/)系统中的模板组件,能够帮助用户快速初始化HPM工程,利用docker镜像来快速编译OpenHarmony发行版,在很大程度上简化了编译前的环境配置。开发者在配置好Ubuntu和[hpm-cli](https://device.harmonyos.com/cn/docs/develop/bundles/oem_bundle_guide_prepare-0000001050129846)开发环境后,可以通过以下步骤来使用我们提供的Docker环境。 + +### 搭建Docker环境 + +1. 初始化安装模板。在任意工作目录中执行以下命令。 + + ``` + hpm init -t @ohos/docker_dist + ``` + +2. 修改publishAs。 + + 因为获取到的是模板类型的包,要把包的类型改为需要的类型。 在当前目录下打开bundle.json文件,把"publishAs"字段的值由"template"改为"distribution"。 + + +### 获取及编译源码 + +执行编译。自动安装docker只能在Ubuntu环境下执行,如果其他环境,需要用户自行安装docker,然后拉取镜像,执行编译。 + +- **自动安装docker(Ubuntu环境)** + + 以下命令可以帮助用户自动安装docker, 拉取镜像,并且在容器中开始运行对应解决方案的拉取和编译。 + + **方式一:** + + 命令后接参数指定解决方案,格式如下: + + ``` + hpm run docker solution={product} + ``` + + \{product\}为需编译的解决方案,如:@ohos/hispark\_taurus、@ohos/hispark\_aries、@ohos/hispark\_pegasus。 + + **方式二:** + + 设置环境变量来选择解决方案,再执行编译命令。 + + 1. 选择解决方案。 + + ``` + export solution={product} + ``` + + \{product\}为需编译的解决方案,如:@ohos/hispark\_taurus、@ohos/hispark\_aries、@ohos/hispark\_pegasus。 + + 2. 获取源码及执行编译。 + + ``` + hpm run docker + ``` + + + 以上两种方式以@ohos/hispark\_taurus为例,执行成功结果如下: + + ``` + ...... + ohos ipcamera_hispark_taurus build success! + @ohos/hispark_taurus: distribution building completed. + ``` + + +- **自行安装docker(非Ubuntu环境)** + + 自行安装docker相关操作如下: + + ``` + # 拉取镜像 + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.3# linux环境下的编译 + hpm run distWithDocker solution={product} + # windows下的编译,需要配置gitbash + hpm config set shellPath "gitbash路径" + hpm run distWithDocker solution={product} + ``` + + diff --git a/zh-cn/device-dev/get-code/IDE.md b/zh-cn/device-dev/get-code/IDE.md new file mode 100644 index 00000000000..144b67418be --- /dev/null +++ b/zh-cn/device-dev/get-code/IDE.md @@ -0,0 +1,17 @@ +# IDE + +- [获取设备开发工具(HUAWEI DevEco Device Tool)](#section2452141120244) +- [获取应用开发工具(HUAWEI DevEco Studio)](#section0904101019258) + +## 获取设备开发工具(HUAWEI DevEco Device Tool) + +HUAWEI DevEco Device Tool是OpenHarmony面向智能设备开发者提供的一站式集成开发环境,支持OpenHarmony的组件按需定制,支持代码编辑、编译、烧录、调试等功能,支持C/C++语言,以插件的形式部署在Visual Studio Code上。具体可参见[获取工具](https://device.harmonyos.com/cn/ide)和[工具使用指南](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905)**。** + +Huawei DevEco Device Tool支持 OpenHarmony设备开发的演进路标如下: + +![](figures/3.png) + +## 获取应用开发工具(HUAWEI DevEco Studio) + +HUAWEI DevEco Studio(以下简称DevEco Studio)是面向华为终端全场景多设备的一站式集成开发环境(IDE),为开发者提供工程模板创建、开发、编译、调试、发布等E2E的OpenHarmony应用开发服务。通过使用DevEco Studio,开发者可以更高效的开发具备OpenHarmony分布式能力的应用,进而提升创新效率。具体可参见[获取工具](https://developer.harmonyos.com/cn/develop/deveco-studio)和[工具使用指南](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/tools_overview-0000001053582387)。 + diff --git a/zh-cn/device-dev/get-code/Readme-CN.md b/zh-cn/device-dev/get-code/Readme-CN.md index c2c5315d396..a2dbbc91bbe 100755 --- a/zh-cn/device-dev/get-code/Readme-CN.md +++ b/zh-cn/device-dev/get-code/Readme-CN.md @@ -2,4 +2,6 @@ - [源码获取](源码获取.md) - [获取工具](获取工具.md) + - [Docker编译环境](Docker编译环境.md) + - [IDE](IDE.md) diff --git "a/zh-cn/device-dev/get-code/\346\272\220\347\240\201\350\216\267\345\217\226.md" "b/zh-cn/device-dev/get-code/\346\272\220\347\240\201\350\216\267\345\217\226.md" index 538997e441b..87b5557365b 100755 --- "a/zh-cn/device-dev/get-code/\346\272\220\347\240\201\350\216\267\345\217\226.md" +++ "b/zh-cn/device-dev/get-code/\346\272\220\347\240\201\350\216\267\345\217\226.md" @@ -26,11 +26,10 @@ OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及 ## 源码获取概述 -本文档将介绍如何获取OpenHarmony源码并说明OpenHarmony的源码目录结构。OpenHarmony的代码以[组件](../bundles/概述.md)的形式开放,开发者可以通过如下其中一种方式获取: +本文档将介绍如何获取OpenHarmony源码并说明OpenHarmony的源码目录结构。OpenHarmony的代码以[组件](../bundles/组件开发规范.md)的形式开放,开发者可以通过如下其中一种方式获取: - **获取方式1**:从代码仓库获取。通过repo或git工具从代码仓库中下载,此方式可获取最新代码。 - **获取方式2**:通过HPM包管理器获取。在[HPM](https://hpm.harmonyos.com)网站,查找满足需求的开源发行版,直接下载(或者定制后下载),再通过hpm-cli命令工具将所需的组件及工具链下载、安装到本地。 -- **获取方式3**:从镜像站点下载归档后的发行版压缩文件。如果要获取旧版本的源码,也可通过此方式获取,此方式下载速度较快。 ## 获取方式1:从代码仓库获取 @@ -62,7 +61,7 @@ OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及 4. 安装码云repo工具,可以执行如下命令。 ``` - curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo #如果没有权限,可下载至其他目录,并将其配置到环境变量中 + curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo #如果没有权限,可下载至其他目录,并将其配置到环境变量中 chmod a+x /usr/local/bin/repo pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests ``` @@ -107,7 +106,7 @@ OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及 repo forall -c 'git lfs pull' ``` -- **OpenHarmony** 其他版本源码获取方式请参考版本[Release-Notes](https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-Release-Notes.md)。 +- OpenHarmony其他版本源码获取方式请参考版本[Release-Notes](https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-Release-Notes.md)。 ## 获取方式2:从HPM获取 @@ -194,7 +193,7 @@ OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及 为了获得更好的下载性能,您可以选择从以下站点的镜像库获取源码或者对应的解决方案。 >![](public_sys-resources/icon-note.gif) **说明:** ->- 本部分只提供**OpenHarmony** Master最新版本和LTS最新版本的源码获取方式, 其他版本源码获取方式以及具体版本信息请参考[Release-Notes](https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-Release-Notes.md) +>- 本部分只提供OpenHarmony Master最新版本和LTS最新版本的源码获取方式, 其他版本源码获取方式以及具体版本信息请参考[Release-Notes](https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-Release-Notes.md) >- 当前Master 1.0版本已经不再维护。 **表 1** 源码获取路径 diff --git "a/zh-cn/device-dev/get-code/\350\216\267\345\217\226\345\267\245\345\205\267.md" "b/zh-cn/device-dev/get-code/\350\216\267\345\217\226\345\267\245\345\205\267.md" index 13556b48039..eeb55c71564 100755 --- "a/zh-cn/device-dev/get-code/\350\216\267\345\217\226\345\267\245\345\205\267.md" +++ "b/zh-cn/device-dev/get-code/\350\216\267\345\217\226\345\267\245\345\205\267.md" @@ -1,283 +1,7 @@ -# 获取工具 +# 获取工具 -- [Docker环境获取方式](#section107932281315) -- [基于HPM的Docker环境](#section485713518337) - - [搭建Docker环境](#section18957202218355) - - [编译源码](#section69141039143518) +- **[Docker编译环境](Docker编译环境.md)** -- [独立Docker环境](#section2858536103611) - - [搭建Docker环境-轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB)](#section319412277287) - - [编译源码-轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB)](#section631485163615) - - [搭建Docker环境-标准系统类设备(参考内存≥128MB)](#section13585262391) - - [编译源码-标准系统类设备(参考内存≥128MB)](#section193711513406) +- **[IDE](IDE.md)** -- [获取设备开发工具(HUAWEI DevEco Device Tool)](#section2452141120244) -- [获取应用开发工具(HUAWEI DevEco Studio)](#section0904101019258) - -## Docker环境获取方式 - -OpenHarmony为开发者提供了两种Docker环境,以帮助开发者快速完成复杂的开发环境准备工作。两种Docker环境及适用场景如下: - -- 基于HPM的Docker环境:适用于使用HPM工具进行发行版编译的场景。 -- 独立Docker环境:适用于直接基于Ubuntu、Windows操作系统平台进行版本编译的场景。 - - 独立Docker环境目前容器化构建选项支持情况如下: - - **表 1** Docker镜像介绍 - - - - - - - - - - - - - - - - -

Docker镜像仓库

-

标签

-

说明

-

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker

-

0.0.5

-

已经预安装OpenHarmony版本的编译环境,支持轻量系统类设备(参考内存≥128KB)小型系统类设备(参考内存≥1MB)的版本构建。

-

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard

-

0.0.1

-

已经预安装OpenHarmony版本的编译环境,支持标准系统类设备(参考内存≥128MB)的版本构建。

-
- - >![](public_sys-resources/icon-note.gif) **说明:** - >Docker安装请参考[官方指导](https://docs.docker.com/engine/install/ubuntu/)。 - - -## 基于HPM的Docker环境 - -docker\_dist是一个[HPM](https://hpm.harmonyos.com/)系统中的模板组件,能够帮助用户快速初始化HPM工程,利用docker镜像来快速编译OpenHarmony发行版,在很大程度上简化了编译前的环境配置。开发者在配置好Ubuntu和[hpm-cli](https://device.harmonyos.com/cn/docs/develop/bundles/oem_bundle_guide_prepare-0000001050129846)开发环境后,可以通过以下步骤来使用我们提供的Docker环境。 - -### 搭建Docker环境 - -1. 初始化安装模板。在任意工作目录中执行以下命令。 - - ``` - hpm init -t @ohos/docker_dist - ``` - -2. 修改publishAs。 - - 因为获取到的是模板类型的包,要把包的类型改为需要的类型。 在当前目录下打开bundle.json文件,把"publishAs"字段的值由"template"改为"distribution"。 - - -### 编译源码 - -执行编译。自动安装docker只能在Ubuntu环境下执行,如果其他环境,需要用户自行安装docker,然后拉取镜像,执行编译。 - -- **自动安装docker(Ubuntu环境)** - - 以下命令可以帮助用户自动安装docker, 拉取镜像,并且在容器中开始运行对应解决方案的拉取和编译。 - - 方式一: - - 命令后接参数指定解决方案,格式如下: - - ``` - hpm run docker solution={product} - ``` - - \{product\}为需编译的解决方案如:@ohos/hispark\_taurus、@ohos/hispark\_aries、@ohos/hispark\_pegasus - - 方式二: - - 设置环境变量来选择解决方案,再执行编译命令 - - 1、选择解决方案 - - ``` - export solution={product} - ``` - - \{product\}为需编译的解决方案如:@ohos/hispark\_taurus、@ohos/hispark\_aries、@ohos/hispark\_pegasus - - 2、执行编译 - - ``` - hpm run docker - ``` - - 以上两种方式以@ohos/hispark\_taurus为例,执行成功结果如下: - - ``` - ...... - ohos ipcamera_hispark_taurus build success! - @ohos/hispark_taurus: distribution building completed. - ``` - - -- **自行安装docker(非Ubuntu环境)** - - 自行安装docker相关操作如下: - - ``` - # 拉取镜像 - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.3# linux环境下的编译 - hpm run distWithDocker solution={product} - # windows下的编译,需要配置gitbash - hpm config set shellPath "gitbash路径" - hpm run distWithDocker solution={product} - ``` - - -## 独立Docker环境 - -OpenHarmony的Docker镜像托管在[HuaweiCloud SWR](https://console.huaweicloud.com/swr/?region=cn-south-1#/app/warehouse/warehouseMangeDetail/goldensir/openharmony-docker/openharmony-docker?type=ownImage)上。开发者可以通过该镜像在很大程度上简化编译前的环境配置。开发者在配置好开发环境后,通过以下步骤来使用Docker环境。本Docker支持Ubuntu/Windows平台,下文将以Ubuntu系统为例进行使用介绍。 - -### 搭建Docker环境-轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB) - -**方式一:从HuaweiCloud SWR上直接获取Docker镜像进行构建:** - -1. 获取Docker镜像。 - - ``` - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 - ``` - -2. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 - - ``` - docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 - ``` - - -**方式二:通过Dockerfile 构建本地Docker镜像进行构建** - -1. 获取Dockerfile脚本文件,用来构建本地Docker镜像。 - - ``` - git clone https://gitee.com/openharmony/docs.git - ``` - -2. 进入Dockerfile代码目录路径执行Docker镜像构建命令。 - - ``` - cd docs/docker - ./build.sh - ``` - -3. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 - - ``` - docker run -it -v $(pwd):/home/openharmony openharmony-docker:0.0.5 - ``` - - -### 编译源码-轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB) - -通过如下编译脚本启动轻量系统类设备(参考内存≥128KB)和小型系统类设备(参考内存≥1MB)的编译。下文以Hi3516平台为例说明具体编译步骤。 - -设置编译路径,选择当前路径。 - -``` -hb set - . -``` - -**图 1** 设置编译界面 - - -![](figures/zh-cn_image_0000001101413884.png) - ->![](public_sys-resources/icon-note.gif) **说明:** ->当前开发板平台和编译界面的对应关系如下: ->- Hi3861:wifiiot\_hispark\_pegasus@hisilicon ->- Hi3516:ipcamera\_hispark\_taurus@hisilicon ->- Hi3518:ipcamera\_hispark\_aries@hisilicon - -1. 选择ipcamera\_hispark\_taurus@hisilicon并回车。 -2. 执行编译。 - - ``` - hb build -f - ``` - -3. 查看编译结果。 - - 编译结果文件生成在out/hispark\_taurus/ipcamera\_hispark\_taurus目录下。 - - -### 搭建Docker环境-标准系统类设备(参考内存≥128MB) - -**方式一:从HuaweiCloud SWR上直接获取Docker镜像进行构建:** - -1. 获取Docker镜像。 - - ``` - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 - ``` - -2. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 - - ``` - docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 - ``` - - -**方式二:通过Dockerfile 构建本地Docker镜像进行构建** - -1. 获取Dockerfile脚本文件,用来构建本地Docker镜像。 - - ``` - git clone https://gitee.com/openharmony/docs.git - ``` - -2. 进入Dockerfile代码目录路径执行Docker镜像构建命令。 - - ``` - cd docs/docker/standard - ./build.sh - ``` - -3. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 - - ``` - docker run -it -v $(pwd):/home/openharmony openharmony-docker-standard:0.0.1 - ``` - - -### 编译源码-标准系统类设备(参考内存≥128MB) - -1. 在源码的根目录执行预处理脚本。 - - ``` - ../scripts/prepare.sh - ``` - -2. 通过如下编译脚本启动标准系统类设备(参考内存≥128MB)的编译。 - - ``` - ./build.sh --product-name {product_name} - ``` - - \{product\_name\}为当前版本支持的平台。比如:Hi3516DV300等。 - - 编译所生成的文件都归档在out/ohos-arm-release/目录下,结果镜像输出在 out/ohos-arm-release/packages/phone/images/ 目录下。 - - ->![](public_sys-resources/icon-note.gif) **说明:** ->退出Docker执行exit命令即可。 - -## 获取设备开发工具(HUAWEI DevEco Device Tool) - -HUAWEI DevEco Device Tool是OpenHarmony面向智能设备开发者提供的一站式集成开发环境,支持OpenHarmony的组件按需定制,支持代码编辑、编译、烧录、调试等功能,支持C/C++语言,以插件的形式部署在Visual Studio Code上。具体可参见[获取工具](https://device.harmonyos.com/cn/ide)和[工具使用指南](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905)**。** - -Huawei DevEco Device Tool支持 OpenHarmony设备开发的演进路标如下: - -![](figures/3.png) - -## 获取应用开发工具(HUAWEI DevEco Studio) - -HUAWEI DevEco Studio(以下简称DevEco Studio)是面向华为终端全场景多设备的一站式集成开发环境(IDE),为开发者提供工程模板创建、开发、编译、调试、发布等E2E的OpenHarmony应用开发服务。通过使用DevEco Studio,开发者可以更高效的开发具备OpenHarmony分布式能力的应用,进而提升创新效率。具体可参见[获取工具](https://developer.harmonyos.com/cn/develop/deveco-studio)和[工具使用指南](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/tools_overview-0000001053582387)。 diff --git "a/zh-cn/device-dev/guide/Input\346\250\241\345\236\213\345\267\245\344\275\234\346\265\201\347\250\213\350\247\243\346\236\220.md" "b/zh-cn/device-dev/guide/Input\346\250\241\345\236\213\345\267\245\344\275\234\346\265\201\347\250\213\350\247\243\346\236\220.md" deleted file mode 100644 index 90604006df1..00000000000 --- "a/zh-cn/device-dev/guide/Input\346\250\241\345\236\213\345\267\245\344\275\234\346\265\201\347\250\213\350\247\243\346\236\220.md" +++ /dev/null @@ -1,18 +0,0 @@ -# Input模型工作流程解析 - -为了让开发者更清晰的了解Input模型工作流程,本节将对input模型加载的关键流程代码进行说明。 - ->![](public_sys-resources/icon-notice.gif) **须知:** ->本章节为Input模型工作流程说明,开发者无需进行开发。 - -- **[私有配置信息解析](私有配置信息解析.md)** - -- **[管理驱动层初始化及注册驱动至HDF框架](管理驱动层初始化及注册驱动至HDF框架.md)** - -- **[公共驱动层初始化及注册驱动至HDF框架](公共驱动层初始化及注册驱动至HDF框架.md)** - -- **[器件驱动层初始化及注册驱动至HDF框架](器件驱动层初始化及注册驱动至HDF框架.md)** - -- **[具体调用逻辑串联函数](具体调用逻辑串联函数.md)** - - diff --git "a/zh-cn/device-dev/guide/Input\346\250\241\345\236\213\347\256\200\344\273\213.md" "b/zh-cn/device-dev/guide/Input\346\250\241\345\236\213\347\256\200\344\273\213.md" deleted file mode 100644 index 2ad32642152..00000000000 --- "a/zh-cn/device-dev/guide/Input\346\250\241\345\236\213\347\256\200\344\273\213.md" +++ /dev/null @@ -1,12 +0,0 @@ -# Input模型简介 - -Input驱动模型核心部分由设备管理层、公共驱动层、器件驱动层组成。其中: - -- 设备管理层:主要为各类输入设备驱动提供input设备的注册、注销接口,同时统一管理input设备列表; -- 公共驱动层:负责对板级硬件进行初始化、硬件中断处理、向manager注册input设备等; -- 器件驱动层:通过适配平台驱动预留的差异化接口,实现器件驱动开发量最小化; - -此外,Input模型预先实现了数据通道以及设备配置信息解析等函数。 - -关于Input模型的详细介绍请参考《[Touchscreen开发概述](../driver/Touchscreen开发概述.md)》。 - diff --git "a/zh-cn/device-dev/guide/LED\345\244\226\350\256\276\346\216\247\345\210\266.md" "b/zh-cn/device-dev/guide/LED\345\244\226\350\256\276\346\216\247\345\210\266.md" index fc94423bf4b..d75a3eb4e01 100755 --- "a/zh-cn/device-dev/guide/LED\345\244\226\350\256\276\346\216\247\345\210\266.md" +++ "b/zh-cn/device-dev/guide/LED\345\244\226\350\256\276\346\216\247\345\210\266.md" @@ -1,9 +1,110 @@ -# LED外设控制 +# LED外设控制 -- **[概述](概述.md)** +- [概述](#section14639174516337) +- [开发](#section13857170163412) +- [验证](#section1949121910344) -- **[开发](开发.md)** +## 概述 -- **[验证](验证.md)** +OpenHarmony WLAN模组基于Hi3861平台提供了丰富的外设操作能力,包含I2C、I2S、ADC、UART、SPI、SDIO、GPIO、PWM、FLASH等。本文介绍如何通过调用OpenHarmony的NDK接口,实现对GPIO控制,达到LED闪烁的效果。其他的IOT外设控制,开发者可根据API指导文档完成,此处不逐一介绍。 +## 开发 + +1. 请先完成[《Hi3861快速入门》](../quick-start/Hi3861开发板介绍.md)。 + + LED控制参考示例存放于applications/sample/wifi-iot/app/iothardware/led\_example.c文件中。 + +2. 实现IOT外设控制,首先需要通过查阅原理图明确接线关系。经过查阅,hispark pegasus的LED与芯片的9号管脚相连。 + + ``` + #define LED_TEST_GPIO 9 + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >开发板原理图,请开发者联系Hi3861购买渠道客服获取。 + +3. 使用GPIO前,需要完成GPIO管脚初始化,明确管脚用途,并创建任务,使LED周期性亮灭,达到闪烁的效果。 + + ``` + static void LedExampleEntry(void) + { + osThreadAttr_t attr; + + /* 管脚初始化 */ + IoTGpioInit(LED_TEST_GPIO); + /* 配置9号管脚为输出方向 */ + IoTGpioSetDir(LED_TEST_GPIO, IOT_GPIO_DIR_OUT); + + attr.name = "LedTask"; + attr.attr_bits = 0U; + attr.cb_mem = NULL; + attr.cb_size = 0U; + attr.stack_mem = NULL; + attr.stack_size = LED_TASK_STACK_SIZE; + attr.priority = LED_TASK_PRIO; + + /* 启动任务 */ + if (osThreadNew((osThreadFunc_t)LedTask, NULL, &attr) == NULL) { + printf("[LedExample] Falied to create LedTask!\n"); + } + } + ``` + +4. 在循环任务中通过周期性亮灭形式实现LED闪烁。 + + ``` + static void *LedTask(const char *arg) + { + (void)arg; + while (1) { + switch (g_ledState) { + case LED_ON: + IoTGpioSetOutputVal(LED_TEST_GPIO, 1); + usleep(LED_INTERVAL_TIME_US); + break; + case LED_OFF: + IoTGpioSetOutputVal(LED_TEST_GPIO, 0); + usleep(LED_INTERVAL_TIME_US); + break; + case LED_SPARK: + IoTGpioSetOutputVal(LED_TEST_GPIO, 0); + usleep(LED_INTERVAL_TIME_US); + IoTGpioSetOutputVal(LED_TEST_GPIO, 1); + usleep(LED_INTERVAL_TIME_US); + break; + default: + usleep(LED_INTERVAL_TIME_US); + break; + } + } + return NULL; + } + ``` + +5. 在代码最下方,使用OpenHarmony启动恢复模块接口SYS\_RUN\(\)启动业务。(SYS\_RUN定义在ohos\_init.h文件中) + + ``` + SYS_RUN(LedExampleEntry); + ``` + +6. 修改applications/sample/wifi-iot/app/BUILD.gn文件,使led\_example.c参与编译。 + + ``` + import("//build/lite/config/component/lite_component.gni") + lite_component("app") { + features = [ + "iothardware:led_example" + ] + } + ``` + + +## 验证 + +编译过程请参考《[Hi3861快速入门-源码编译](../quick-start/运行Hello-World.md)》,烧录过程请参考《[Hi3861快速入门-镜像烧录](../quick-start/WLAN联网.md)》。 + +完成以上两步后,按下RST键复位模组,可发现LED在周期性闪烁,与预期相符,验证完毕。 + +**图 1** LED闪烁图 +![](figures/LED闪烁图.gif "LED闪烁图") diff --git a/zh-cn/device-dev/guide/Readme-CN.md b/zh-cn/device-dev/guide/Readme-CN.md index 6afa218aca5..82ca22606a0 100755 --- a/zh-cn/device-dev/guide/Readme-CN.md +++ b/zh-cn/device-dev/guide/Readme-CN.md @@ -1,16 +1,12 @@ -# 开发示例 +# 设备开发 - [WLAN连接类产品](WLAN连接类产品.md) - [LED外设控制](LED外设控制.md) - - [概述](概述.md) - - [开发](开发.md) - - [验证](验证.md) - - [集成三方SDK](集成三方SDK.md) - [无屏摄像头类产品](无屏摄像头类产品.md) - [摄像头控制](摄像头控制.md) - - [概述](概述-0.md) + - [概述](概述.md) - [示例开发](示例开发.md) - [拍照开发指导](拍照开发指导.md) - [录像开发指导](录像开发指导.md) @@ -19,16 +15,16 @@ - [带屏摄像头类产品](带屏摄像头类产品.md) - [屏幕和摄像头控制](屏幕和摄像头控制.md) - - [概述](概述-1.md) - - [示例开发](示例开发-2.md) - - [拍照开发指导](拍照开发指导-3.md) - - [录像开发指导](录像开发指导-4.md) + - [概述](概述-0.md) + - [示例开发](示例开发-1.md) + - [拍照开发指导](拍照开发指导-2.md) + - [录像开发指导](录像开发指导-3.md) - [预览开发指导](预览开发指导.md) - - [应用实例](应用实例-5.md) + - [应用实例](应用实例-4.md) - [视觉应用开发](视觉应用开发.md) - - [概述](概述-6.md) + - [概述](概述-5.md) - [开发准备](开发准备.md) - [添加页面](添加页面.md) - [开发首页](开发首页.md) @@ -37,38 +33,7 @@ - [真机运行](真机运行.md) - [常见问题](常见问题.md) -- [时钟应用开发示例](时钟应用开发示例.md) - - [概述](概述-7.md) - - [开发准备](开发准备-8.md) - - [开发步骤](开发步骤.md) - - [签名打包](签名打包.md) - - [真机运行](真机运行-9.md) - +- [时钟应用开发指导](时钟应用开发指导.md) - [平台驱动开发示例](平台驱动开发示例.md) - - [概述](概述-10.md) - - [环境准备](环境准备.md) - - [开发](开发-11.md) - - [编译及烧录](编译及烧录.md) - - [外设驱动开发示例](外设驱动开发示例.md) - - [概述](概述-12.md) - - [硬件资源介绍](硬件资源介绍.md) - - [Input模型简介](Input模型简介.md) - - - [环境搭建](环境搭建.md) - - [TouchScreen器件驱动开发](TouchScreen器件驱动开发.md) - - [配置设备描述信息](配置设备描述信息.md) - - [配置Touchscreen器件信息](配置Touchscreen器件信息.md) - - [适配器件私有驱动](适配器件私有驱动.md) - - - [编译及烧录](编译及烧录-13.md) - - [调试验证](调试验证.md) - - [开机日志分析](开机日志分析.md) - - - [Input模型工作流程解析](Input模型工作流程解析.md) - - [私有配置信息解析](私有配置信息解析.md) - - [管理驱动层初始化及注册驱动至HDF框架](管理驱动层初始化及注册驱动至HDF框架.md) - - [公共驱动层初始化及注册驱动至HDF框架](公共驱动层初始化及注册驱动至HDF框架.md) - - [器件驱动层初始化及注册驱动至HDF框架](器件驱动层初始化及注册驱动至HDF框架.md) - - [具体调用逻辑串联函数](具体调用逻辑串联函数.md) diff --git "a/zh-cn/device-dev/guide/TouchScreen\345\231\250\344\273\266\351\251\261\345\212\250\345\274\200\345\217\221.md" "b/zh-cn/device-dev/guide/TouchScreen\345\231\250\344\273\266\351\251\261\345\212\250\345\274\200\345\217\221.md" deleted file mode 100644 index ef2d3835fa3..00000000000 --- "a/zh-cn/device-dev/guide/TouchScreen\345\231\250\344\273\266\351\251\261\345\212\250\345\274\200\345\217\221.md" +++ /dev/null @@ -1,17 +0,0 @@ -# TouchScreen器件驱动开发 - -基于Input模型适配一款触摸屏IC需要完成的工作有: - -1.配置设备描述信息。驱动注册到HDF框架所需要的设备驱动描述信息,如驱动是否加载以及加载次序等; - -2.配置器件私有信息、平台硬件信息。器件私有信息包括上下电时序等,平台硬件信息包括器件连接主板的GPIO端口信息等。 - -3.适配器件私有驱动。 Input模型对Input设备开发流程进行了抽象,开发者只需要适配器件驱动层,无需改动管理驱动层以及公共驱动层。 - -- **[配置设备描述信息](配置设备描述信息.md)** - -- **[配置Touchscreen器件信息](配置Touchscreen器件信息.md)** - -- **[适配器件私有驱动](适配器件私有驱动.md)** - - diff --git a/zh-cn/device-dev/guide/figures/zh-cn_image_0000001161922745.png b/zh-cn/device-dev/guide/figures/zh-cn_image_0000001169991055.png similarity index 100% rename from zh-cn/device-dev/guide/figures/zh-cn_image_0000001161922745.png rename to zh-cn/device-dev/guide/figures/zh-cn_image_0000001169991055.png diff --git "a/zh-cn/device-dev/guide/\345\205\254\345\205\261\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" "b/zh-cn/device-dev/guide/\345\205\254\345\205\261\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" deleted file mode 100644 index 31de19a1b13..00000000000 --- "a/zh-cn/device-dev/guide/\345\205\254\345\205\261\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" +++ /dev/null @@ -1,35 +0,0 @@ -# 公共驱动层初始化及注册驱动至HDF框架 - -示例代码路径:./drivers/framework/model/input/driver/hdf\_touch.c - -``` -static int32_t HdfTouchDriverProbe(struct HdfDeviceObject *device) -{ - ... - /* 板级信息结构体内存申请及hcs配置信息解析 */ - boardCfg = BoardConfigInstance(device); - ... - /* 公共驱动结构体内存申请 */ - touchDriver = TouchDriverInstance(); - ... - /* 依据解析出的板级信息进行公共资源初始化,如IIC初始化 */ - ret = TouchDriverInit(touchDriver, boardCfg); - if (ret == HDF_SUCCESS) { - ... - /* 添加驱动至公共驱动层驱动管理链表,当设备与驱动进行绑定时使用该链表进行查询 */ - AddTouchDriver(touchDriver); - ... - } - ... -} -struct HdfDriverEntry g_hdfTouchEntry = { - .moduleVersion = 1, - .moduleName = "HDF_TOUCH", - .Bind = HdfTouchDriverBind, - .Init = HdfTouchDriverProbe, - .Release = HdfTouchDriverRelease, -}; - -HDF_INIT(g_hdfTouchEntry); //驱动注册入口 -``` - diff --git "a/zh-cn/device-dev/guide/\345\205\267\344\275\223\350\260\203\347\224\250\351\200\273\350\276\221\344\270\262\350\201\224\345\207\275\346\225\260.md" "b/zh-cn/device-dev/guide/\345\205\267\344\275\223\350\260\203\347\224\250\351\200\273\350\276\221\344\270\262\350\201\224\345\207\275\346\225\260.md" deleted file mode 100644 index 9fc526d2109..00000000000 --- "a/zh-cn/device-dev/guide/\345\205\267\344\275\223\350\260\203\347\224\250\351\200\273\350\276\221\344\270\262\350\201\224\345\207\275\346\225\260.md" +++ /dev/null @@ -1,40 +0,0 @@ -# 具体调用逻辑串联函数 - -Input模型管理层驱动init函数初始化了设备管理链表,公共驱动层初始化函数完成了相关结构体的内存申请。器件驱动相关信息通过RegisterChipDevice函数对公共驱动层相关结构体进行信息填充,同时完成了相关硬件信息的初始化(如中断注册等),绑定设备与驱动组成inputDev通过RegisterInputDevice函数向驱动管理层进行注册,在RegisterInputDevice函数中主要实现了将inputDev向设备管理链表的添加等功能。如下所示为两个函数的实现部分: - -``` -//函数具体实现代码位置 :./drivers/framework/model/input/driver/hdf_touch.c -int32_t RegisterChipDevice(ChipDevice *chipDev) -{ - ... - /* 绑定设备与驱动,从而通过InputDeviceInstance函数创建inputDev */ - DeviceBindDriver(chipDev); - ... - /* 主要包含器件中断注册及中断处理函数,中断处理函数中有数据上报用户态的数据通道 */ - ChipDriverInit(chipDev); - ... - /* 申请内存实例化InputDev */ - inputDev = InputDeviceInstance(chipDev); - ... - /* 将InputDev设备注册至input驱动管理层 */ - RegisterInputDevice(inputDev); - ... -} - -//函数具体实现代码位置 :./drivers/framework/model/input/driver/hdf_input_device_manager.c -int32_t RegisterInputDevice(InputDevice *inputDev) -{ - ... - /* 申请ID,该ID对于不同input设备唯一 */ - ret = AllocDeviceID(inputDev); - ... - /* 该函数包含了对hid类设备的特殊处理,对于触摸屏驱动,该函数无实质操作; */ - CreateDeviceNode(inputDev); - /* 内核态数据传送至用户态需使用IOService能力,需要申请buffer */ - AllocPackageBuffer(inputDev); - /* 将input设备添加进设备全局管理链表 */ - AddInputDevice(inputDev); - ... -} -``` - diff --git "a/zh-cn/device-dev/guide/\345\231\250\344\273\266\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" "b/zh-cn/device-dev/guide/\345\231\250\344\273\266\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" deleted file mode 100644 index 4cfddfa469f..00000000000 --- "a/zh-cn/device-dev/guide/\345\231\250\344\273\266\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" +++ /dev/null @@ -1,4 +0,0 @@ -# 器件驱动层初始化及注册驱动至HDF框架 - -具体请参考[3.3章节](适配器件私有驱动.md)器件层驱动初始化及注册驱动至HDF框架部分。 - diff --git "a/zh-cn/device-dev/guide/\345\244\226\350\256\276\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" "b/zh-cn/device-dev/guide/\345\244\226\350\256\276\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" index 8b083827126..d0d50a418f6 100644 --- "a/zh-cn/device-dev/guide/\345\244\226\350\256\276\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" +++ "b/zh-cn/device-dev/guide/\345\244\226\350\256\276\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" @@ -1,15 +1,483 @@ -# 外设驱动开发示例 +# 外设驱动开发示例 -- **[概述](概述-12.md)** +- [概述](#section86753818426) + - [硬件资源简介](#section123071189431) + - [Input模型简介](#section53684425430) -- **[环境搭建](环境搭建.md)** +- [环境搭建](#section661075474418) +- [TouchScreen器件驱动开发](#section15233162984520) + - [配置设备描述信息](#section16761205604515) + - [配置Touchscreen器件信息](#section156331030144617) + - [适配器件私有驱动](#section17127331595) -- **[TouchScreen器件驱动开发](TouchScreen器件驱动开发.md)** +- [编译及烧录](#section16465031164711) +- [调试验证](#section62577313482) +- [Input模型工作流程解析](#section1578569154917) + - [私有配置信息解析](#section1310113815495) + - [管理驱动层初始化及注册驱动至HDF框架](#section614512119500) + - [公共驱动层初始化及注册驱动至HDF框架](#section16194201755019) + - [器件驱动层初始化及注册驱动至HDF框架](#section1090743312505) + - [具体调用逻辑串联函数](#section81801147529) -- **[编译及烧录](编译及烧录-13.md)** -- **[调试验证](调试验证.md)** +## 概述 -- **[Input模型工作流程解析](Input模型工作流程解析.md)** +本文档将介绍如何基于Hi3516DV300开发板完成基于HDF\_Input模型的触摸屏器件驱动开发,从而使开发者快速入门,进行基于的外设驱动开发。 +### 硬件资源简介 + +Hi3516DV300开发板套件所提供的触摸屏器件IC为GT911,该器件采用标准I2C与主机通信,通过6pin软排线与主板连接。6pin分布以及实物连接图如下图所示: + +![](figures/绘图1.png) + +### Input模型简介 + +Input驱动模型核心部分由设备管理层、公共驱动层、器件驱动层组成。其中: + +- 设备管理层:主要为各类输入设备驱动提供input设备的注册、注销接口,同时统一管理input设备列表; +- 公共驱动层:负责对板级硬件进行初始化、硬件中断处理、向manager注册input设备等; +- 器件驱动层:通过适配平台驱动预留的差异化接口,实现器件驱动开发量最小化; + +此外,Input模型预先实现了数据通道以及设备配置信息解析等函数。 + +关于Input模型的详细介绍请参考《[Touchscreen开发概述](../driver/Touchscreen.md)》。 + +## 环境搭建 + +环境准备具体操作请参考[标准系统基础环境搭建](../quick-start/标准系统入门.md)。 + +>![](public_sys-resources/icon-notice.gif) **须知:** +>本示例针对OpenHarmony轻量系统、小型系统、标准系统都适用,本文以标准系统为例。其他系统的开发者可参考对应系统的指导文档进行环境搭建。 + +## TouchScreen器件驱动开发 + +基于Input模型适配一款触摸屏IC需要完成的具体工作见下。 + +### 配置设备描述信息 + +驱动注册到HDF框架所需要的设备驱动描述信息,如驱动是否加载以及加载次序等。 + +配置文件路径:./drivers/adapter/khdf/linux/hcs/device\_info/device\_info.hcs + +device\_info.hcs中的信息主要提供给HDF框架使用,包含了Input模型各层驱动注册到HDF框架所必需的信息,开发者无特殊场景需求无需改动。各驱动层私有配置信息通过“deviceMatchAttr”字段与input\_config.hcs中的“match\_attr”相关内容进行匹配。 + +配置文件中与input模块相关的内容如下所示,相关字段的详细含义可以参考《[驱动配置](../driver/驱动开发.md)》: + +``` +input :: host { + hostName = "input_host"; + priority = 100; + device_input_manager :: device { // Input管理层设备描述信息 + device0 :: deviceNode { + policy = 2; // 向内核用户态均发布服务 + priority = 100; // input管理层驱动优先级默认为100 + preload = 0; // 加载该驱动 + permission = 0660; // 驱动创建设备节点权限 + moduleName = "HDF_INPUT_MANAGER"; // 与驱动入口的moduleName匹配 + serviceName = "hdf_input_host"; // HDF框架生成的节点名 + deviceMatchAttr = ""; // manager目前不需要私有配置,因此为空 + } + } + + device_hdf_touch :: device { // Input公共驱动层设备描述信息 + device0 :: deviceNode { + policy = 2; // 向内核用户态均发布服务 + priority = 120; // input公共驱动优先级默认为120 + preload = 0; // 加载该驱动 + permission = 0660; // 驱动创建设备节点权限 + moduleName = "HDF_TOUCH"; // 与驱动入口的moduleName匹配 + serviceName = "hdf_input_event1"; // HDF框架生成的节点名 + deviceMatchAttr = "touch_device1"; // 与私有配置信息中的“match_attr”字段保持一致 + } + } + + device_touch_chip :: device { // Input器件驱动层信息 + device0 :: deviceNode { + policy = 0; // 向内核用户态均不发布服务 + priority = 130; // input器件驱动优先级默认为130 + preload = 0; // 加载该驱动 + permission = 0660; // 驱动创建设备节点权限 + moduleName = "HDF_TOUCH_GT911"; // 与驱动入口的moduleName匹配 + serviceName = "hdf_touch_gt911_service";// HDF框架生成的节点名 + deviceMatchAttr = "zsj_gt911_5p5"; //与私有配置信息中的“match_attr”字段保持一致 + } + } + } +``` + +该配置文件中需要重点关注的字段有: + +“priority”决定驱动加载顺序; + +“preload”决定驱动是否加载; + +“moduleName ”需要与驱动注册入口处的“moduleName ”字段保持一致; + +“serviceName ”HDF框架依据该字段创建节点名; + +“deviceMatchAttr ”需要与私有配置信息中的“match\_attr”字段保持一致。 + +通过配置设备描述信息,使得HDF框架通过moduleName与注册至驱动入口的代码相匹配,保证了驱动的正常加载,通过priority字段保证了各驱动的加载顺序。 + +### 配置Touchscreen器件信息 + +器件私有信息包括上下电时序等,平台硬件信息包括器件连接主板的GPIO端口信息等。 + +配置文件路径:./drivers/adapter/khdf/linux/hcs/input/input\_config.hcs + +input\_config.hcs中的信息由驱动代码进行读取解析,主要由公共驱动层的私有配置信息及器件驱动层的私有配置信息组成。文件中的配置包含板级硬件信息及器件私有配置信息,实际业务开发时,可根据具体需求增删及修改对应内容。 + +``` +root { + input_config { + touchConfig { + touch0 { // 第一款触摸屏 + boardConfig { // 板级硬件信息 + match_attr = "touch_device1"; // 与设备描述配置信息中公共驱动层私有配置信息的“match_attr”字段保持一致 + inputAttr { + /* 0:touch 1:key 2:keyboard 3:mouse 4:button 5:crown 6:encoder */ + inputType = 0; // input类型为touch + solutionX = 480; // 分辨率X信息 + solutionY = 960; // 分辨率Y信息 + devName = "main_touch"; // 设备名称 + } + busConfig { + /* 0:i2c 1:spi */ + busType = 0; // GT911采用I2C通信 + busNum = 6; // 与主机芯片第6路I2C通信 + clkGpio = 86; // 主机芯片SCL管脚 + dataGpio = 87; // 主机芯片SDA管脚 + i2cClkIomux = [0x114f0048, 0x403]; // SCL管脚配置信息 + i2cDataIomux = [0x114f004c, 0x403]; // SDA管脚配置信息 + } + pinConfig { + rstGpio = 3; // 复位管脚连接主机芯片的3号管脚 + intGpio = 4; // 中断管脚连接主机芯片的4号管脚 + rstRegCfg = [0x112f0094, 0x400]; // 复位管脚配置信息 + intRegCfg = [0x112f0098, 0x400]; // 中断管脚配置信息 + } + powerConfig { + /* 0:unused 1:ldo 2:gpio 3:pmic */ + vccType = 2; // GPIO供电 + vccNum = 20; // gpio20 + vccValue = 1800; // 电压幅值为1800mV + vciType = 1; // LDO供电 + vciNum = 12; // ldo12 + vciValue = 3300; // 电压幅值为3300mV + } + + featureConfig { + capacitanceTest = 0; // 容值测试 + gestureMode = 0; // 手势模式 + gloverMode = 0; // 手套模式 + coverMode = 0; // 皮套模式 + chargerMode = 0; // 充电模式 + knuckleMode = 0; // 指关节模式 + } + } + chipConfig { // 器件私有信息配置 + template touchChip { // 模板 + match_attr = ""; + chipName = "gt911"; // 触摸屏IC型号 + vendorName = "zsj"; // 供应商 + chipInfo = "AAAA11222"; // 1~4字符代表产品名,5~6字符代表IC型号,7~9字符代表模型型号 + busType = 0; // 0代表I2C,1代表SPI + deviceAddr = 0x5D; // 器件IC通信地址 + irqFlag = 2; // 1代表上升沿触发,2代表下降沿触发,4代表高电平触发,8代表低电平触发 + maxSpeed = 400; // 最大通信速率为400Hz + chipVersion = 0; // 触摸屏IC版本号 + powerSequence { + /* 上电时序的配置含义说明: + [类型, 状态, 方向 , 延时] + 0代表空,1代表vcc电源(1.8V),2代表VCI电源(3.3V),3代表复位管脚,4代表中断管脚 + 0代表下电或拉低,1代表上电或拉高,2代表无操作 + 0代表输入方向,1代表输出方向,2代表无操作 + 代表延时多少毫秒, 例如20代表延时20ms + */ + powerOnSeq = [4, 0, 1, 0, // 中断管脚配置为输出,且进行拉低 + 3, 0, 1, 10, // 复位管脚配置为输出,且进行拉低,延时10ms + 3, 1, 2, 60, // 复位管脚无操作,且进行拉高,延时60ms + 4, 2, 0, 0]; // 中断管脚配置为输入 + suspendSeq = [3, 0, 2, 10]; // 复位管脚无操作,且进行拉低,延时10ms + resumeSeq = [3, 1, 2, 10]; // 复位管脚无操作,且进行拉高,延时10ms + powerOffSeq = [3, 0, 2, 10, // 复位管脚无操作,且进行拉低,延时10ms + 1, 0, 2, 20]; // 电源正极管脚无操作,且进行拉低,延时20ms + } + } + + chip0 :: touchChip { + match_attr = "zsj_gt911_5p5"; // 与设备描述配置信息中器件私有配置信息的“match_attr”字段保持一致 + chipInfo = "ZIDN45100"; // 产品名+模组编号+芯片编号的组合信息 用于给用户态区分当前器件 + chipVersion = 0; // IC型号的版本 + } + } + } + } + } +} +``` + +示例中“touchConfig”包含了“touch0”,"touch0"包含了“boardConfig”与“chipConfig”;“boardConfig”字段包含了Hi3516DV300板级硬件信息,“chipConfig”包含了触摸屏器件的私有信息,如果需要替换触摸屏器件,重新配置“chipConfig”对应的字段信息即可。同时产品可以配置多款触摸屏,示例中用“touch0”代表了套件中默认的触摸屏的硬件接口以及器件的配置信息,如产品需要配置副屏,可在与“touch0”并列的位置配置“touch1”的信息。 + +### 适配器件私有驱动 + +Input模型对Input设备开发流程进行了抽象,开发者只需要适配器件驱动层,无需改动管理驱动层以及公共驱动层。 + +Input模型由三层驱动组成,开发者适配一款全新触摸屏驱动只需要适配器件驱动层即可,重点实现差异化接口,本小节以代码示例的形式展示开发者需要重点完成的工作。 + +1. 触摸屏器件差异化接口适配 + + 示例代码路径:./drivers/framework/model/input/driver/touchscreen/touch\_gt911.c + + ``` + static struct TouchChipOps g_gt911ChipOps = { // 器件IC接口 + .Init = ChipInit, // 初始化 + .Detect = ChipDetect, // 器件检测 + .Resume = ChipResume, // 唤醒 + .Suspend = ChipSuspend, // 休眠 + .DataHandle = ChipDataHandle, // 器件数据读取 + .UpdateFirmware = UpdateFirmware, // 固件升级 + }; + + /* 不同触摸屏厂家使用的IC不一样,对应的寄存器操作也不一样,因此器件驱动层代码重点适配差异化接口部分,如下示例代码展示了GT911的数据解析*/ + + static int32_t ChipDataHandle(ChipDevice *device) + { + ... + /* GT911获取坐标之前需先读取状态寄存器 */ + reg[0] = (GT_BUF_STATE_ADDR >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; + reg[1] = GT_BUF_STATE_ADDR & ONE_BYTE_MASK; + ret = InputI2cRead(i2cClient, reg, GT_ADDR_LEN, &touchStatus, 1); + if (ret < 0 || touchStatus == GT_EVENT_INVALID) { + return HDF_FAILURE; + } + ... + /* 根据状态寄存器的值读取数据寄存器数据 */ + reg[0] = (GT_X_LOW_BYTE_BASE >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; + reg[1] = GT_X_LOW_BYTE_BASE & ONE_BYTE_MASK; + pointNum = touchStatus & GT_FINGER_NUM_MASK; + if (pointNum == 0 || pointNum > MAX_SUPPORT_POINT) { + HDF_LOGE("%s: pointNum is invalid, %u", __func__, pointNum); + (void)ChipCleanBuffer(i2cClient); + OsalMutexUnlock(&device->driver->mutex); + return HDF_FAILURE; + } + frame->realPointNum = pointNum; + frame->definedEvent = TOUCH_DOWN; + (void)InputI2cRead(i2cClient, reg, GT_ADDR_LEN, buf, GT_POINT_SIZE * pointNum); + /* 对获取的数据进行解析 */ + ParsePointData(device, frame, buf, pointNum); + ... + } + static void ParsePointData(ChipDevice *device, FrameData *frame, uint8_t *buf, uint8_t pointNum) + { + ... + /* 每个坐标值由两个字节组成,对获取的单字节数据进行拼接得到最终的坐标值 */ + for (i = 0; i < pointNum; i++) { + frame->fingers[i].trackId = buf[GT_POINT_SIZE * i + GT_TRACK_ID]; + frame->fingers[i].y = (buf[GT_POINT_SIZE * i + GT_X_LOW] & ONE_BYTE_MASK) | + ((buf[GT_POINT_SIZE * i + GT_X_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); + frame->fingers[i].x = (buf[GT_POINT_SIZE * i + GT_Y_LOW] & ONE_BYTE_MASK) | + ((buf[GT_POINT_SIZE * i + GT_Y_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); + /* 对解析出来的坐标值进行打印 */ + HDF_LOGD("%s: x = %d, y = %d", __func__, frame->fingers[i].x, frame->fingers[i].y); + } + } + ``` + +2. 器件层驱动初始化及注册驱动至HDF框架 + + 示例代码路径:./drivers/framework/model/input/driver/touchscreen/touch\_gt911.c + + ``` + static int32_t HdfGoodixChipInit(struct HdfDeviceObject *device) + { + ... + /* 器件配置结构体内存申请、配置信息解析及挂载 */ + chipCfg = ChipConfigInstance(device); + ... + /* 器件实例化 */ + chipDev = ChipDeviceInstance(); + ... + /* 器件信息挂载及器件私有操作挂载 */ + chipDev->chipCfg = chipCfg; + chipDev->ops = &g_gt911ChipOps; + ... + /* 注册器件驱动至平台驱动 */ + RegisterChipDevice(chipDev); + ... + } + struct HdfDriverEntry g_touchGoodixChipEntry = { + .moduleVersion = 1, + .moduleName = "HDF_TOUCH_GT911", // 该moduleName与device_info.hcs文件中器件驱动层的moduleName信息相匹配 + .Init = HdfGoodixChipInit, // 器件驱动初始化函数 + }; + HDF_INIT(g_touchGoodixChipEntry); // 注册器件驱动至HDF框架 + ``` + + 器件私有驱动层主要实现了各器件厂商差异较大的部分,如器件休眠唤醒、数据解析以及固件升级等。 + + 至此,基于HDF框架及Input模型的触摸屏驱动适配完成。 + + +## 编译及烧录 + +1. 编辑Makefile文件,添加本示例中的内容: + + 文件路径:./drivers/adapter/khdf/linux/model/input/Makefile + + 添加内容如下: + + ``` + obj-$(CONFIG_DRIVERS_HDF_TP_5P5_GT911) += \ + $(INPUT_ROOT_DIR)/touchscreen/touch_gt911.o + ``` + + 其中touch\_gt911.o为本示例中追加的内容。 + +2. 具体编译及烧录操作请参考[标准系统快速入门编译及烧录章节](../quick-start/标准系统入门.md)。 + +## 调试验证 + +如下所示为开机启动日志部分截取 + +``` +[I/HDF_INPUT_DRV] HdfInputManagerInit: enter // 管理驱动层初始化 +[I/HDF_INPUT_DRV] HdfInputManagerInit: exit succ // 初始化成功 +[I/osal_cdev] add cdev hdf_input_host success +[I/HDF_LOG_TAG] HdfTouchDriverProbe: enter // 公共驱动层初始化 +[I/HDF_LOG_TAG] HdfTouchDriverProbe: main_touch exit succ // 初始化成功 +[I/osal_cdev] add cdev hdf_input_event1 success +[I/HDF_INPUT_DRV] HdfGoodixChipInit: enter // 器件驱动层初始化 +[I/HDF_INPUT_DRV] ChipDetect: IC FW version is 0x1060 +[I/HDF_INPUT_DRV] Product_ID: 911_1060, x_sol = 960, y_sol = 480 +[I/HDF_LOG_TAG] ChipDriverInit: chipDetect succ, ret = 0 +[I/HDF_LOG_TAG] InputDeviceInstance: inputDev->devName = main_touch +[I/HDF_INPUT_DRV] HdfGoodixChipInit: exit succ, chipName = gt911 // 初始化成功 +``` + +## Input模型工作流程解析 + +为了让开发者更清晰的了解Input模型工作流程,本节将对input模型加载的关键流程代码进行说明。 + +>![](public_sys-resources/icon-notice.gif) **须知:** +>本章节为Input模型工作流程说明,开发者无需进行开发。 + +### 私有配置信息解析 + +示例代码路径:./drivers/framework/model/input/driver/input\_config\_parser.c + +根据OSAL提供的配置解析函数,可以将hcs文件中各字段含义进行解析,具体请参考input\_config\_parser.c中各函数的实现。如果提供的模板不能满足需求,在hcs文件中添加相应信息后,需要根据添加的字段开发相应的解析函数。 + +``` +static int32_t ParseAttr(struct DeviceResourceIface *parser, const struct DeviceResourceNode *attrNode, BoardAttrCfg *attr) +{ + int32_t ret; + ret = parser->GetUint8(attrNode, "inputType", &attr->devType, 0); // 获取inputType字段信息,保存在BoardAttrCfg结构体中 + CHECK_PARSER_RET(ret, "GetUint8"); + ... + return HDF_SUCCESS; +} +``` + +### 管理驱动层初始化及注册驱动至HDF框架 + +示例代码路径:./drivers/framework/model/input/driver/hdf\_input\_device\_manager.c + +``` +static int32_t HdfInputManagerInit(struct HdfDeviceObject *device) +{ + /* 分配内存给manager,manager中将存放所有input设备 */ + g_inputManager = InputManagerInstance(); + ... +} +struct HdfDriverEntry g_hdfInputEntry = { + .moduleVersion = 1, + .moduleName = "HDF_INPUT_MANAGER", + .Bind = HdfInputManagerBind, + .Init = HdfInputManagerInit, + .Release = HdfInputManagerRelease, +}; + +HDF_INIT(g_hdfInputEntry); //驱动注册入口 +``` + +### 公共驱动层初始化及注册驱动至HDF框架 + +示例代码路径:./drivers/framework/model/input/driver/hdf\_touch.c + +``` +static int32_t HdfTouchDriverProbe(struct HdfDeviceObject *device) +{ + ... + /* 板级信息结构体内存申请及hcs配置信息解析 */ + boardCfg = BoardConfigInstance(device); + ... + /* 公共驱动结构体内存申请 */ + touchDriver = TouchDriverInstance(); + ... + /* 依据解析出的板级信息进行公共资源初始化,如IIC初始化 */ + ret = TouchDriverInit(touchDriver, boardCfg); + if (ret == HDF_SUCCESS) { + ... + /* 添加驱动至公共驱动层驱动管理链表,当设备与驱动进行绑定时使用该链表进行查询 */ + AddTouchDriver(touchDriver); + ... + } + ... +} +struct HdfDriverEntry g_hdfTouchEntry = { + .moduleVersion = 1, + .moduleName = "HDF_TOUCH", + .Bind = HdfTouchDriverBind, + .Init = HdfTouchDriverProbe, + .Release = HdfTouchDriverRelease, +}; + +HDF_INIT(g_hdfTouchEntry); //驱动注册入口 +``` + +### 器件驱动层初始化及注册驱动至HDF框架 + +具体请参考[适配器件私有驱动](#section17127331595)器件层驱动初始化及注册驱动至HDF框架部分。 + +### 具体调用逻辑串联函数 + +Input模型管理层驱动init函数初始化了设备管理链表,公共驱动层初始化函数完成了相关结构体的内存申请。器件驱动相关信息通过RegisterChipDevice函数对公共驱动层相关结构体进行信息填充,同时完成了相关硬件信息的初始化(如中断注册等),绑定设备与驱动组成inputDev通过RegisterInputDevice函数向驱动管理层进行注册,在RegisterInputDevice函数中主要实现了将inputDev向设备管理链表的添加等功能。如下所示为两个函数的实现部分: + +``` +//函数具体实现代码位置 :./drivers/framework/model/input/driver/hdf_touch.c +int32_t RegisterChipDevice(ChipDevice *chipDev) +{ + ... + /* 绑定设备与驱动,从而通过InputDeviceInstance函数创建inputDev */ + DeviceBindDriver(chipDev); + ... + /* 主要包含器件中断注册及中断处理函数,中断处理函数中有数据上报用户态的数据通道 */ + ChipDriverInit(chipDev); + ... + /* 申请内存实例化InputDev */ + inputDev = InputDeviceInstance(chipDev); + ... + /* 将InputDev设备注册至input驱动管理层 */ + RegisterInputDevice(inputDev); + ... +} + +//函数具体实现代码位置 :./drivers/framework/model/input/driver/hdf_input_device_manager.c +int32_t RegisterInputDevice(InputDevice *inputDev) +{ + ... + /* 申请ID,该ID对于不同input设备唯一 */ + ret = AllocDeviceID(inputDev); + ... + /* 该函数包含了对hid类设备的特殊处理,对于触摸屏驱动,该函数无实质操作; */ + CreateDeviceNode(inputDev); + /* 内核态数据传送至用户态需使用IOService能力,需要申请buffer */ + AllocPackageBuffer(inputDev); + /* 将input设备添加进设备全局管理链表 */ + AddInputDevice(inputDev); + ... +} +``` diff --git "a/zh-cn/device-dev/guide/\345\261\217\345\271\225\345\222\214\346\221\204\345\203\217\345\244\264\346\216\247\345\210\266.md" "b/zh-cn/device-dev/guide/\345\261\217\345\271\225\345\222\214\346\221\204\345\203\217\345\244\264\346\216\247\345\210\266.md" index 7fed33d8a77..c3267d20ecc 100755 --- "a/zh-cn/device-dev/guide/\345\261\217\345\271\225\345\222\214\346\221\204\345\203\217\345\244\264\346\216\247\345\210\266.md" +++ "b/zh-cn/device-dev/guide/\345\261\217\345\271\225\345\222\214\346\221\204\345\203\217\345\244\264\346\216\247\345\210\266.md" @@ -1,9 +1,9 @@ # 屏幕和摄像头控制 -- **[概述](概述-1.md)** +- **[概述](概述-0.md)** -- **[示例开发](示例开发-2.md)** +- **[示例开发](示例开发-1.md)** -- **[应用实例](应用实例-5.md)** +- **[应用实例](应用实例-4.md)** diff --git "a/zh-cn/device-dev/guide/\345\270\270\350\247\201\351\227\256\351\242\230-10.md" "b/zh-cn/device-dev/guide/\345\270\270\350\247\201\351\227\256\351\242\230-10.md" deleted file mode 100644 index 24be5472457..00000000000 --- "a/zh-cn/device-dev/guide/\345\270\270\350\247\201\351\227\256\351\242\230-10.md" +++ /dev/null @@ -1,39 +0,0 @@ -# 常见问题 - -- [hdc\_std连接不到设备](#section1221016541119) -- [hdc\_std运行不了](#section219185710311) - -## hdc\_std连接不到设备 - -- **现象描述** - - 执行 "hdc\_std list targets"命令后结果为:\[Empty\] - -- **可能原因和解决方法** - 1. 设备没有被识别: - - 在设备管理器中查看是否有hdc设备,在通用串行总线设备中会有“HDC Device”信息。如果没有,hdc无法连接。此时需要插拔设备,或者烧写最新的镜像。 - - 2. hdc\_std工作异常: - - 可以执行"hdc kill"或者"hdc start -r"杀掉hdc服务或者重启hdc服务,然后再执行hdc list targets查看是否已经可以获取设备信息。 - - 如果一直获取不到设备信息,请在任务管理器中查询是否有adb进程,该进程可能会对hdc产生干扰,可以将其杀掉后重复执行上面的步骤。 - - 3. hdc\_std与设备不匹配: - - 如果设备烧写的是最新镜像,hdc\_std也需要使用最新版本。由于hdc\_std会持续更新,请从开源仓developtools\_hdc\_standard中获取,具体位置在该开源仓的prebuilt目录。 - - - -## hdc\_std运行不了 - -- **现象描述** - - 点击hdc\_std.exe文件无法运行。 - -- **可能原因和解决方法** - - hdc\_std.exe不需要安装,直接放到磁盘上就能使用,也可以添加到环境变量中。通过打开cmd执行hdc\_std命令直接使用。 - - diff --git "a/zh-cn/device-dev/guide/\345\271\263\345\217\260\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" "b/zh-cn/device-dev/guide/\345\271\263\345\217\260\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" index 5dc1dd07b55..c4f80352fcf 100644 --- "a/zh-cn/device-dev/guide/\345\271\263\345\217\260\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" +++ "b/zh-cn/device-dev/guide/\345\271\263\345\217\260\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" @@ -1,11 +1,453 @@ -# 平台驱动开发示例 +# 平台驱动开发示例 -- **[概述](概述-10.md)** +- [概述](#section194201316174215) +- [环境准备](#section6926133918422) +- [开发](#section65801539470) + - [文件说明](#section0708184454414) + - [实例化驱动入口](#section85325864412) + - [设置相关参数](#section8155172019453) + - [添加控制器](#section1335374114452) -- **[环境准备](环境准备.md)** +- [编译及烧录](#section164824754712) -- **[开发](开发-11.md)** +## 概述 -- **[编译及烧录](编译及烧录.md)** +本文档将以I2C驱动为例,介绍如何基于HDF驱动框架完成平台驱动开发。 + +>![](public_sys-resources/icon-caution.gif) **注意:** +>本例仅作为平台驱动开发示例参考,开发者不可直接用于商用集成。 + +HDF驱动框架为常用外围设备提供了标准的驱动框架,驱动开发者只需将驱动适配至HDF驱动框架,即可通过HDF驱动框架提供的接口操作外围设备。 + +本文以I2C为例。其时序流程如[图1](#fig148041484161)所示。 + +**图 1** I2C时序流程图 + + +![](figures/zh-cn_image_0000001169991055.png) + +- User Business:用户业务驱动。 +- i2cManagerEntry:I2C管理器入口,注册I2cManager到HDF驱动框架。 +- I2cManager:I2C管理器,管理I2C控制器。 +- I2cCntlr:I2C控制器。 +- i2cDriverEntry:I2C控制器入口,注册I2cCntlr到HDF驱动框架。 + +## 环境准备 + +环境准备具体操作请参考[标准系统基础环境搭建](../quick-start/标准系统入门.md)。 + +>![](public_sys-resources/icon-notice.gif) **须知:** +>本示例针对OpenHarmony轻量系统、小型系统、标准系统都适用,本文以标准系统为例。其他系统的开发者可参考对应系统的指导文档进行环境搭建。 + +## 开发 + +### 文件说明 + +本例中涉及的文件及路径如下表: + +**表 1** 文件说明 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

说明

+

文件路径

+

操作

+

示例文件

+

/drivers/adapter/khdf/linux/platform/i2c/i2c_sample.c

+

新增文件

+

设备服务文件

+

/drivers/adapter/khdf/linux/hcs/device_info/device_info.hcs

+

+

追加内容

+

+

配置参数文件

+

/drivers/adapter/khdf/linux/hcs/platform/i2c_config.hcs

+

编译文件

+

/drivers/adapter/khdf/linux/platform/i2c/Makefile

+

依赖头文件

+

/drivers/framework/include/core/hdf_device_desc.h

+

作为头文件引用

+

+

核心层头文件

+

/drivers/framework/support/platform/include/i2c_core.h

+

HCS配置入口文件

+

/drivers/adapter/khdf/linux/hcs/hdf.hcs

+

HCS配置文件总入口

+
+ +>![](public_sys-resources/icon-caution.gif) **注意:** +>本例程涉及的文件路径均作为演示,驱动开发者应根据实际情况确定具体的源文件存放位置。 + +### 实例化驱动入口 + +实例化一个HdfDriverEntry 对象作为驱动入口。驱动入口必须为HdfDriverEntry(在hdf\_device\_desc.h中定义)类型的全局变量,且moduleName要和device\_info.hcs中保持一致。在加载驱动时HDF框架会先调用Bind函数,再调用Init函数加载该驱动,当Init调用异常时,HDF框架会调用Release释放驱动资源并退出。 + +I2C驱动中没有实现Bind方法,因为I2C控制器由manager管理,而在manager中已经实现了Bind方法,因此I2C驱动中无需再绑定服务。 + +实例化驱动入口的示例代码如下: + +``` +/* 定义驱动入口的对象,必须为HdfDriverEntry(在hdf_device_desc.h中定义)类型的全局变量 */ +struct HdfDriverEntry g_sampleI2cDriverEntry = { + .moduleVersion = 1, + .Init = SampleI2cInit, + .Release = SampleI2cRelease, + .moduleName = "demo_i2c_driver", +}; +/* 调用HDF_INIT将驱动入口注册到HDF框架中 */ +HDF_INIT(g_sampleI2cDriverEntry); +``` + +### 设置相关参数 + +通过配置device\_info.hcs,并从HCS获取并解析设备的配置参数以确保驱动能够正确加载。 + +1. 添加设备服务节点(必选)。 + + 编辑device\_info.hcs,在device\_i2c :: device下添加驱动设备服务节点,示例如下: + + ``` + root { + device_info { + match_attr = "hdf_manager"; + device_i2c :: device { // i2c设备节点 + device2 :: deviceNode { // i2c驱动的DeviceNode节点 + policy = 0; // policy字段是驱动服务发布的策略 + priority = 55; // 驱动启动优先级 + permission = 0644; // 驱动创建设备节点权限 + moduleName = "demo_i2c_driver"; // 驱动名称,该字段的值必须和驱动入口结构的moduleName值一致 + serviceName = "DEMO_I2C_DRIVER"; // 驱动对外发布服务的名称,必须唯一 + deviceMatchAttr = "demo_i2c_config"; // 驱动私有数据匹配的关键字,必须和驱动私有数据配置表中的 + // match_attr值相等 + } + } + } + } + + ``` + + >![](public_sys-resources/icon-notice.gif) **须知:** + >配置文件中的priority(取值范围为整数0到200)是用来表示host和驱动的优先级,不同的host内的驱动,host的priority值越小,驱动加载优先级越高;同一个host内驱动的priority值越小,加载优先级越高,驱动的priority值相同则不保证加载顺序。 + +2. 添加配置参数(可选)。 + + 有时驱动可能会需要私有配置信息,以确保寄存器的配置可以满足不同产品的需求。如需要私有配置信息,则可以添加一个驱动的配置文件,用来存放一些驱动的默认配置信息,HDF框架在加载驱动的时候,会将对应的配置信息获取并保存在HdfDeviceObject 中的property里面,通过Bind和Init(参考[驱动开发](../driver/驱动开发.md))传递给驱动。驱动开发者可新建配置文件,并在板级驱动hdf.hcs中引用新建的配置文件,本例中直接在原有的配置文件i2c\_config.hcs内添加配置参数。 + + 本例中编辑i2c\_config.hcs,添加配置参数: + + ``` + root { + platform { + i2c_config_demo { + match_attr = "demo_i2c_config"; // 该字段的值必须和device_info.hcs中的deviceMatchAttr值一致 + + template i2c_controller { // 参数模板 + bus = 0; + reg_pbase = 0x120b0000; + reg_size = 0xd1; + } + + controller_demo_0 :: i2c_controller { // 两个I2C示例控制器 + bus = 8; + } + controller_demo_1 :: i2c_controller { + bus = 9; + } + } + } + } + ``` + + match\_attr字段必须与device\_info.hcs中的deviceMatch\_Attr保持一致,在此文件中配置驱动需要的参数,通过match\_attr可匹配至对应的驱动,该驱动即可在Bind或Init中调用DeviceResourceGetIfaceInstance\(\)函数获取这些配置参数。 + + 若配置文件为新文件,则需要在板级配置入口文件hdf.hcs中引用该配置文件,例如: + + ``` + #include "device_info/device_info.hcs" + #include "i2c/i2c_config.hcs" + ``` + + 由于本例中在原有的i2c\_config.hcs内添加配置参数,没有新建配置文件,因此无需再将i2c\_config.hcs添加至板级配置入口文件中。 + +3. 驱动从HCS获取配置参数。 + + 在本例中,驱动需要通过HCS获取寄存器物理基地址、寄存器大小、总线号等参数,从而对控制器进行正确配置。 + + ``` + /* 从HCS获取配置参数 */ + static int32_t SampleI2cReadDrs(struct SampleI2cCntlr *sampleCntlr, const struct DeviceResourceNode *node) + { + int32_t ret; + struct DeviceResourceIface *drsOps = NULL; + + drsOps = DeviceResourceGetIfaceInstance(HDF_CONFIG_SOURCE); + if (drsOps == NULL || drsOps->GetUint32 == NULL) { // 确保GetUint32方法可用 + HDF_LOGE("%s: invalid drs ops fail!", __func__); + return HDF_FAILURE; + } + + ret = drsOps->GetUint32(node, "reg_pbase", &sampleCntlr->regBasePhy, 0); // 从HCS读取物理基地址reg_pbase + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: read regBase fail!", __func__); + return ret; + } + + ret = drsOps->GetUint16(node, "reg_size", &sampleCntlr->regSize, 0); // 从HCS读取寄存器大小reg_size + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: read regsize fail!", __func__); + return ret; + } + + ret = drsOps->GetUint16(node, "bus", (uint16_t *)&sampleCntlr->bus, 0); // 从HCS读取总线号bus + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: read bus fail!", __func__); + return ret; + } + + return HDF_SUCCESS; + } + ``` + + +### 添加控制器 + +初始化控制器硬件,并调用核心层接口完成向核心层添加、删除设备,以及钩子函数的实现等。 + +1. 定义结构体,实现钩子函数并赋值至函数指针。 + + I2cMethod结构体在i2c\_core.h中定义,其中通过函数指针的方式定义了I2C需要实现的方法,transfer方法为用于传输的钩子函数,在驱动中需要做具体实现并对函数指针赋值。 + + 示例代码如下: + + ``` + /* 自定义设备结构体,继承父类I2cCntlr */ + struct SampleI2cCntlr { + struct I2cCntlr cntlr; + OsalSpinlock spin; + volatile unsigned char *regBase; + uint16_t regSize; + int16_t bus; + uint32_t regBasePhy; + }; + + /* 消息结构体,继承父类I2cMsg */ + struct SampleTransferData { + struct I2cMsg *msgs; + int16_t index; + int16_t count; + }; + /* 钩子函数实现 */ + static int32_t SampleI2cTransfer(struct I2cCntlr *cntlr, struct I2cMsg *msgs, int16_t count) + { + int32_t ret = HDF_SUCCESS; + struct SampleI2cCntlr *sampleCntlr = NULL; + struct SampleTransferData td; + + if (cntlr == NULL || cntlr->priv == NULL) { + HDF_LOGE("SampleI2cTransfer: cntlr lor sampleCntlr is null!"); + return HDF_ERR_INVALID_OBJECT; + } + sampleCntlr = (struct SampleI2cCntlr *)cntlr; + + if (msgs == NULL || count <= 0) { + HDF_LOGE("SampleI2cTransfer: err parms! count:%d", count); + return HDF_ERR_INVALID_PARAM; + } + td.msgs = msgs; + td.count = count; + td.index = 0; + + HDF_LOGE("Successfully transmitted!"); // 表示此处传输成功 + + td.index = count; // 经过处理,最后实际发送msg个数等于count,返回已发送个数,此句代替已省略的处理过程 + return (td.index > 0) ? td.index : ret; + } + /* 钩子函数赋值 */ + static struct I2cMethod g_method = { + .transfer = SampleI2cTransfer, + }; + ``` + +2. 编写驱动初始化函数。 + + 本例中使用SampleI2cInit作为驱动初始化函数的函数名(函数名称可由驱动开发者确定),该函数需要在驱动入口结构体中赋值给Init,以供HDF驱动框架调用从而达到初始化驱动的目的。该函数中需要对从HCS获取的配置参数进行解析,并按照这些参数创建控制器。示例如下: + + ``` + /* 解析参数,申请内存并创建控制器 */ + static int32_t SampleI2cParseAndInit(struct HdfDeviceObject *device, const struct DeviceResourceNode *node) + { + int32_t ret; + struct SampleI2cCntlr *sampleCntlr = NULL; + (void)device; + + sampleCntlr = (struct SampleI2cCntlr *)OsalMemCalloc(sizeof(*sampleCntlr)); + if (sampleCntlr == NULL) { + HDF_LOGE("%s: malloc sampleCntlr fail!", __func__); + return HDF_ERR_MALLOC_FAIL; + } + + ret = SampleI2cReadDrs(sampleCntlr, node); // 从HCS获取配置参数 + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: read drs fail! ret:%d", __func__, ret); + goto __ERR__; + } + + sampleCntlr->regBase = OsalIoRemap(sampleCntlr->regBasePhy, sampleCntlr->regSize); + if (sampleCntlr->regBase == NULL) { + HDF_LOGE("%s: ioremap regBase fail!", __func__); + ret = HDF_ERR_IO; + goto __ERR__; + } + + HDF_LOGE("The controller has been initialized!"); // 表示此处省略的控制器初始化操作已经成功 + + sampleCntlr->cntlr.priv = (void *)node; + sampleCntlr->cntlr.busId = sampleCntlr->bus; + sampleCntlr->cntlr.ops = &g_method; + (void)OsalSpinInit(&sampleCntlr->spin); // 初始化自旋锁 + ret = I2cCntlrAdd(&sampleCntlr->cntlr); // 向核心层添加控制器 + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: add i2c controller fail:%d!", __func__, ret); + goto __ERR__; + } + + return HDF_SUCCESS; + __ERR__: // 错误处理 + if (sampleCntlr != NULL) { + if (sampleCntlr->regBase != NULL) { + OsalIoUnmap((void *)sampleCntlr->regBase); // 取消地址映射 + sampleCntlr->regBase = NULL; + } + OsalMemFree(sampleCntlr); // 释放内存 + sampleCntlr = NULL; + } + return ret; + } + /* 驱动入口初始化函数 */ + static int32_t SampleI2cInit(struct HdfDeviceObject *device) + { + int32_t ret; + const struct DeviceResourceNode *childNode = NULL; + + HDF_LOGE("%s: Enter", __func__); + if (device == NULL || device->property == NULL) { + HDF_LOGE("%s: device or property is NULL", __func__); + return HDF_ERR_INVALID_OBJECT; + } + + ret = HDF_SUCCESS; + DEV_RES_NODE_FOR_EACH_CHILD_NODE(device->property, childNode) { + ret = SampleI2cParseAndInit(device, childNode); // 调用解析参数和创建控制器的函数 + if (ret != HDF_SUCCESS) { + break; + } + } + return ret; + } + ``` + +3. 编写驱动释放函数。 + + 本例中使用SampleI2cRelease作为驱动释放函数的函数名(函数名称可由驱动开发者确定),该函数需要在驱动入口结构体中赋值给Release,当HDF框架调用Init函数初始化驱动失败时,将调用Release释放驱动资源。该函数中需包含释放内存和删除控制器等操作。示例如下: + + ``` + /* 删除控制器函数 */ + static void SampleI2cRemoveByNode(const struct DeviceResourceNode *node) + { + int32_t ret; + int16_t bus; + struct I2cCntlr *cntlr = NULL; + struct SampleI2cCntlr *sampleCntlr = NULL; + struct DeviceResourceIface *drsOps = NULL; + + drsOps = DeviceResourceGetIfaceInstance(HDF_CONFIG_SOURCE); + if (drsOps == NULL || drsOps->GetUint32 == NULL) { + HDF_LOGE("%s: invalid drs ops fail!", __func__); + return; + } + + ret = drsOps->GetUint16(node, "bus", (uint16_t *)&bus, 0); // 从HCS获取I2C总线号 + if (ret != HDF_SUCCESS) { + HDF_LOGE("%s: read bus fail!", __func__); + return; + } + + cntlr = I2cCntlrGet(bus); + if (cntlr != NULL && cntlr->priv == node) { // 根据I2C总线号删除控制器 + I2cCntlrPut(cntlr); + I2cCntlrRemove(cntlr); + sampleCntlr = (struct SampleI2cCntlr *)cntlr; + OsalIoUnmap((void *)sampleCntlr->regBase); + OsalMemFree(sampleCntlr); + } + return; + } + /* 释放资源 */ + static void SampleI2cRelease(struct HdfDeviceObject *device) + { + const struct DeviceResourceNode *childNode = NULL; + + HDF_LOGI("%s: enter", __func__); + + if (device == NULL || device->property == NULL) { + HDF_LOGE("%s: device or property is NULL", __func__); + return; + } + + DEV_RES_NODE_FOR_EACH_CHILD_NODE(device->property, childNode) { + SampleI2cRemoveByNode(childNode); // 调用删除控制器函数 + } + } + ``` + + +## 编译及烧录 + +1. 编辑Makefile,添加源文件: + + ``` + include drivers/hdf/khdf/platform/platform.mk + + obj-y += $(HDF_PLATFORM_FRAMEWORKS_ROOT)/src/i2c_core.o \ + $(HDF_PLATFORM_FRAMEWORKS_ROOT)/src/i2c_if.o \ + ./i2c_adapter.o \ + ./i2c_sample.o + ``` + + "./i2c\_sample.o"为本示例中在Makefile中追加的内容。 + +2. 编译及烧录。 + + 具体操作请参考[标准系统快速入门编译及烧录章节](../quick-start/标准系统入门.md)。 diff --git "a/zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213-5.md" "b/zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213-4.md" old mode 100755 new mode 100644 similarity index 100% rename from "zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213-5.md" rename to "zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213-4.md" diff --git "a/zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213.md" "b/zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213.md" index 21cb165165f..5d9fe71891c 100755 --- "a/zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213.md" +++ "b/zh-cn/device-dev/guide/\345\272\224\347\224\250\345\256\236\344\276\213.md" @@ -5,7 +5,7 @@ 修改applications/sample/camera/media/BUILD.gn中的output\_dir。 - 修改前:output\_dir = "$root\_out\_dir/dev\_tools" - - 修改后:output\_dir = "$root\_out\_d_i_r/" + - 修改后:output\_dir = "$root\_out\_dir/" 重新执行源码仓编译并烧写入单板后,可在单板bin目录下找到camera\_sample文件。 diff --git "a/zh-cn/device-dev/guide/\345\274\200\345\217\221-11.md" "b/zh-cn/device-dev/guide/\345\274\200\345\217\221-11.md" deleted file mode 100644 index a7dedada789..00000000000 --- "a/zh-cn/device-dev/guide/\345\274\200\345\217\221-11.md" +++ /dev/null @@ -1,396 +0,0 @@ -# 开发 - -- [实例化驱动入口](#section6586911816) -- [设置相关参数](#section114323217503) -- [添加控制器](#section115187812516) - -平台驱动开发包含以下几步: - -1. 实例化驱动入口: 实例化一个HdfDriverEntry 对象作为驱动入口。 -2. 设置相关参数:通过配置device\_info.hcs,并从HCS获取并解析设备的配置参数以确保驱动能够正确加载。 -3. 添加控制器:初始化控制器硬件,并调用核心层接口完成向核心层添加、删除设备,以及钩子函数的实现等。 - -本例中涉及的文件及路径如下表: - -**表 1** 文件说明 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

说明

-

文件路径

-

操作

-

示例文件

-

/drivers/adapter/khdf/linux/platform/i2c/i2c_sample.c

-

新增文件

-

设备服务文件

-

/drivers/adapter/khdf/linux/hcs/device_info/device_info.hcs

-

-

追加内容

-

-

配置参数文件

-

/drivers/adapter/khdf/linux/hcs/platform/i2c_config.hcs

-

编译文件

-

/drivers/adapter/khdf/linux/platform/i2c/Makefile

-

依赖头文件

-

/drivers/framework/include/core/hdf_device_desc.h

-

作为头文件引用

-

-

核心层头文件

-

/drivers/framework/support/platform/include/i2c_core.h

-

HCS配置入口文件

-

/drivers/adapter/khdf/linux/hcs/hdf.hcs

-

HCS配置文件总入口

-
- ->![](public_sys-resources/icon-caution.gif) **注意:** ->本例程涉及的文件路径均作为演示,驱动开发者应根据实际情况确定具体的源文件存放位置。 - -## 实例化驱动入口 - -驱动入口必须为HdfDriverEntry(在hdf\_device\_desc.h中定义)类型的全局变量,且moduleName要和device\_info.hcs中保持一致。在加载驱动时HDF框架会先调用Bind函数,再调用Init函数加载该驱动,当Init调用异常时,HDF框架会调用Release释放驱动资源并退出。 - -I2C驱动中没有实现Bind方法,因为I2C控制器由manager管理,而在manager中已经实现了Bind方法,因此I2C驱动中无需再绑定服务。 - -实例化驱动入口的示例代码如下: - -``` -/* 定义驱动入口的对象,必须为HdfDriverEntry(在hdf_device_desc.h中定义)类型的全局变量 */ -struct HdfDriverEntry g_sampleI2cDriverEntry = { - .moduleVersion = 1, - .Init = SampleI2cInit, - .Release = SampleI2cRelease, - .moduleName = "demo_i2c_driver", -}; -/* 调用HDF_INIT将驱动入口注册到HDF框架中 */ -HDF_INIT(g_sampleI2cDriverEntry); -``` - -## 设置相关参数 - -1. 添加设备服务节点(必选)。 - - 编辑device\_info.hcs,在device\_i2c :: device下添加驱动设备服务节点,示例如下: - - ``` - root { - device_info { - match_attr = "hdf_manager"; - device_i2c :: device { // i2c设备节点 - device2 :: deviceNode { // i2c驱动的DeviceNode节点 - policy = 0; // policy字段是驱动服务发布的策略 - priority = 55; // 驱动启动优先级 - permission = 0644; // 驱动创建设备节点权限 - moduleName = "demo_i2c_driver"; // 驱动名称,该字段的值必须和驱动入口结构的moduleName值一致 - serviceName = "DEMO_I2C_DRIVER"; // 驱动对外发布服务的名称,必须唯一 - deviceMatchAttr = "demo_i2c_config"; // 驱动私有数据匹配的关键字,必须和驱动私有数据配置表中的 - // match_attr值相等 - } - } - } - } - - ``` - - >![](public_sys-resources/icon-notice.gif) **须知:** - >配置文件中的priority(取值范围为整数0到200)是用来表示host和驱动的优先级,不同的host内的驱动,host的priority值越小,驱动加载优先级越高;同一个host内驱动的priority值越小,加载优先级越高,驱动的priority值相同则不保证加载顺序。 - -2. 添加配置参数(可选)。 - - 有时驱动可能会需要私有配置信息,以确保寄存器的配置可以满足不同产品的需求。如需要私有配置信息,则可以添加一个驱动的配置文件,用来存放一些驱动的默认配置信息,HDF框架在加载驱动的时候,会将对应的配置信息获取并保存在HdfDeviceObject 中的property里面,通过Bind和Init(参考[驱动开发](../driver/驱动开发.md))传递给驱动。驱动开发者可新建配置文件,并在板级驱动hdf.hcs中引用新建的配置文件,本例中直接在原有的配置文件i2c\_config.hcs内添加配置参数。 - - 本例中编辑i2c\_config.hcs,添加配置参数: - - ``` - root { - platform { - i2c_config_demo { - match_attr = "demo_i2c_config"; // 该字段的值必须和device_info.hcs中的deviceMatchAttr值一致 - - template i2c_controller { // 参数模板 - bus = 0; - reg_pbase = 0x120b0000; - reg_size = 0xd1; - } - - controller_demo_0 :: i2c_controller { // 两个I2C示例控制器 - bus = 8; - } - controller_demo_1 :: i2c_controller { - bus = 9; - } - } - } - } - ``` - - match\_attr字段必须与device\_info.hcs中的deviceMatch\_Attr保持一致,在此文件中配置驱动需要的参数,通过match\_attr可匹配至对应的驱动,该驱动即可在Bind或Init中调用DeviceResourceGetIfaceInstance\(\)函数获取这些配置参数。 - - 若配置文件为新文件,则需要在板级配置入口文件hdf.hcs中引用该配置文件,例如: - - ``` - #include "device_info/device_info.hcs" - #include "i2c/i2c_config.hcs" - ``` - - 由于本例中在原有的i2c\_config.hcs内添加配置参数,没有新建配置文件,因此无需再将i2c\_config.hcs添加至板级配置入口文件中。 - -3. 驱动从HCS获取配置参数。 - - 在本例中,驱动需要通过HCS获取寄存器物理基地址、寄存器大小、总线号等参数,从而对控制器进行正确配置。 - - ``` - /* 从HCS获取配置参数 */ - static int32_t SampleI2cReadDrs(struct SampleI2cCntlr *sampleCntlr, const struct DeviceResourceNode *node) - { - int32_t ret; - struct DeviceResourceIface *drsOps = NULL; - - drsOps = DeviceResourceGetIfaceInstance(HDF_CONFIG_SOURCE); - if (drsOps == NULL || drsOps->GetUint32 == NULL) { // 确保GetUint32方法可用 - HDF_LOGE("%s: invalid drs ops fail!", __func__); - return HDF_FAILURE; - } - - ret = drsOps->GetUint32(node, "reg_pbase", &sampleCntlr->regBasePhy, 0); // 从HCS读取物理基地址reg_pbase - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: read regBase fail!", __func__); - return ret; - } - - ret = drsOps->GetUint16(node, "reg_size", &sampleCntlr->regSize, 0); // 从HCS读取寄存器大小reg_size - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: read regsize fail!", __func__); - return ret; - } - - ret = drsOps->GetUint16(node, "bus", (uint16_t *)&sampleCntlr->bus, 0); // 从HCS读取总线号bus - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: read bus fail!", __func__); - return ret; - } - - return HDF_SUCCESS; - } - ``` - - -## 添加控制器 - -1. 定义结构体,实现钩子函数并赋值至函数指针。 - - I2cMethod结构体在i2c\_core.h中定义,其中通过函数指针的方式定义了I2C需要实现的方法,transfer方法为用于传输的钩子函数,在驱动中需要做具体实现并对函数指针赋值。 - - 示例代码如下: - - ``` - /* 自定义设备结构体,继承父类I2cCntlr */ - struct SampleI2cCntlr { - struct I2cCntlr cntlr; - OsalSpinlock spin; - volatile unsigned char *regBase; - uint16_t regSize; - int16_t bus; - uint32_t regBasePhy; - }; - - /* 消息结构体,继承父类I2cMsg */ - struct SampleTransferData { - struct I2cMsg *msgs; - int16_t index; - int16_t count; - }; - /* 钩子函数实现 */ - static int32_t SampleI2cTransfer(struct I2cCntlr *cntlr, struct I2cMsg *msgs, int16_t count) - { - int32_t ret = HDF_SUCCESS; - struct SampleI2cCntlr *sampleCntlr = NULL; - struct SampleTransferData td; - - if (cntlr == NULL || cntlr->priv == NULL) { - HDF_LOGE("SampleI2cTransfer: cntlr lor sampleCntlr is null!"); - return HDF_ERR_INVALID_OBJECT; - } - sampleCntlr = (struct SampleI2cCntlr *)cntlr; - - if (msgs == NULL || count <= 0) { - HDF_LOGE("SampleI2cTransfer: err parms! count:%d", count); - return HDF_ERR_INVALID_PARAM; - } - td.msgs = msgs; - td.count = count; - td.index = 0; - - HDF_LOGE("Successfully transmitted!"); // 表示此处传输成功 - - td.index = count; // 经过处理,最后实际发送msg个数等于count,返回已发送个数,此句代替已省略的处理过程 - return (td.index > 0) ? td.index : ret; - } - /* 钩子函数赋值 */ - static struct I2cMethod g_method = { - .transfer = SampleI2cTransfer, - }; - ``` - -2. 编写驱动初始化函数。 - - 本例中使用SampleI2cInit作为驱动初始化函数的函数名(函数名称可由驱动开发者确定),该函数需要在驱动入口结构体中赋值给Init,以供HDF驱动框架调用从而达到初始化驱动的目的。该函数中需要对从HCS获取的配置参数进行解析,并按照这些参数创建控制器。示例如下: - - ``` - /* 解析参数,申请内存并创建控制器 */ - static int32_t SampleI2cParseAndInit(struct HdfDeviceObject *device, const struct DeviceResourceNode *node) - { - int32_t ret; - struct SampleI2cCntlr *sampleCntlr = NULL; - (void)device; - - sampleCntlr = (struct SampleI2cCntlr *)OsalMemCalloc(sizeof(*sampleCntlr)); - if (sampleCntlr == NULL) { - HDF_LOGE("%s: malloc sampleCntlr fail!", __func__); - return HDF_ERR_MALLOC_FAIL; - } - - ret = SampleI2cReadDrs(sampleCntlr, node); // 从HCS获取配置参数 - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: read drs fail! ret:%d", __func__, ret); - goto __ERR__; - } - - sampleCntlr->regBase = OsalIoRemap(sampleCntlr->regBasePhy, sampleCntlr->regSize); - if (sampleCntlr->regBase == NULL) { - HDF_LOGE("%s: ioremap regBase fail!", __func__); - ret = HDF_ERR_IO; - goto __ERR__; - } - - HDF_LOGE("The controller has been initialized!"); // 表示此处省略的控制器初始化操作已经成功 - - sampleCntlr->cntlr.priv = (void *)node; - sampleCntlr->cntlr.busId = sampleCntlr->bus; - sampleCntlr->cntlr.ops = &g_method; - (void)OsalSpinInit(&sampleCntlr->spin); // 初始化自旋锁 - ret = I2cCntlrAdd(&sampleCntlr->cntlr); // 向核心层添加控制器 - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: add i2c controller fail:%d!", __func__, ret); - goto __ERR__; - } - - return HDF_SUCCESS; - __ERR__: // 错误处理 - if (sampleCntlr != NULL) { - if (sampleCntlr->regBase != NULL) { - OsalIoUnmap((void *)sampleCntlr->regBase); // 取消地址映射 - sampleCntlr->regBase = NULL; - } - OsalMemFree(sampleCntlr); // 释放内存 - sampleCntlr = NULL; - } - return ret; - } - /* 驱动入口初始化函数 */ - static int32_t SampleI2cInit(struct HdfDeviceObject *device) - { - int32_t ret; - const struct DeviceResourceNode *childNode = NULL; - - HDF_LOGE("%s: Enter", __func__); - if (device == NULL || device->property == NULL) { - HDF_LOGE("%s: device or property is NULL", __func__); - return HDF_ERR_INVALID_OBJECT; - } - - ret = HDF_SUCCESS; - DEV_RES_NODE_FOR_EACH_CHILD_NODE(device->property, childNode) { - ret = SampleI2cParseAndInit(device, childNode); // 调用解析参数和创建控制器的函数 - if (ret != HDF_SUCCESS) { - break; - } - } - return ret; - } - ``` - -3. 编写驱动释放函数。 - - 本例中使用SampleI2cRelease作为驱动释放函数的函数名(函数名称可由驱动开发者确定),该函数需要在驱动入口结构体中赋值给Release,当HDF框架调用Init函数初始化驱动失败时,将调用Release释放驱动资源。该函数中需包含释放内存和删除控制器等操作。示例如下: - - ``` - /* 删除控制器函数 */ - static void SampleI2cRemoveByNode(const struct DeviceResourceNode *node) - { - int32_t ret; - int16_t bus; - struct I2cCntlr *cntlr = NULL; - struct SampleI2cCntlr *sampleCntlr = NULL; - struct DeviceResourceIface *drsOps = NULL; - - drsOps = DeviceResourceGetIfaceInstance(HDF_CONFIG_SOURCE); - if (drsOps == NULL || drsOps->GetUint32 == NULL) { - HDF_LOGE("%s: invalid drs ops fail!", __func__); - return; - } - - ret = drsOps->GetUint16(node, "bus", (uint16_t *)&bus, 0); // 从HCS获取I2C总线号 - if (ret != HDF_SUCCESS) { - HDF_LOGE("%s: read bus fail!", __func__); - return; - } - - cntlr = I2cCntlrGet(bus); - if (cntlr != NULL && cntlr->priv == node) { // 根据I2C总线号删除控制器 - I2cCntlrPut(cntlr); - I2cCntlrRemove(cntlr); - sampleCntlr = (struct SampleI2cCntlr *)cntlr; - OsalIoUnmap((void *)sampleCntlr->regBase); - OsalMemFree(sampleCntlr); - } - return; - } - /* 释放资源 */ - static void SampleI2cRelease(struct HdfDeviceObject *device) - { - const struct DeviceResourceNode *childNode = NULL; - - HDF_LOGI("%s: enter", __func__); - - if (device == NULL || device->property == NULL) { - HDF_LOGE("%s: device or property is NULL", __func__); - return; - } - - DEV_RES_NODE_FOR_EACH_CHILD_NODE(device->property, childNode) { - SampleI2cRemoveByNode(childNode); // 调用删除控制器函数 - } - } - ``` - - diff --git "a/zh-cn/device-dev/guide/\345\274\200\345\217\221.md" "b/zh-cn/device-dev/guide/\345\274\200\345\217\221.md" deleted file mode 100755 index 18b3247aefe..00000000000 --- "a/zh-cn/device-dev/guide/\345\274\200\345\217\221.md" +++ /dev/null @@ -1,91 +0,0 @@ -# 开发 - -1. 请先完成[《Hi3861快速入门》](../quick-start/Hi3861开发板介绍.md)。 - - LED控制参考示例存放于applications/sample/wifi-iot/app/iothardware/led\_example.c文件中。 - -2. 实现IOT外设控制,首先需要通过查阅原理图明确接线关系。经过查阅,hispark pegasus的LED与芯片的9号管脚相连。 - - ``` - #define LED_TEST_GPIO 9 - ``` - - >![](public_sys-resources/icon-note.gif) **说明:** - >开发板原理图,请开发者联系Hi3861购买渠道客服获取。 - -3. 使用GPIO前,需要完成GPIO管脚初始化,明确管脚用途,并创建任务,使LED周期性亮灭,达到闪烁的效果。 - - ``` - static void LedExampleEntry(void) - { - osThreadAttr_t attr; - - /* 管脚初始化 */ - IoTGpioInit(LED_TEST_GPIO); - /* 配置9号管脚为输出方向 */ - IoTGpioSetDir(LED_TEST_GPIO, IOT_GPIO_DIR_OUT); - - attr.name = "LedTask"; - attr.attr_bits = 0U; - attr.cb_mem = NULL; - attr.cb_size = 0U; - attr.stack_mem = NULL; - attr.stack_size = LED_TASK_STACK_SIZE; - attr.priority = LED_TASK_PRIO; - - /* 启动任务 */ - if (osThreadNew((osThreadFunc_t)LedTask, NULL, &attr) == NULL) { - printf("[LedExample] Falied to create LedTask!\n"); - } - } - ``` - -4. 在循环任务中通过周期性亮灭形式实现LED闪烁。 - - ``` - static void *LedTask(const char *arg) - { - (void)arg; - while (1) { - switch (g_ledState) { - case LED_ON: - IoTGpioSetOutputVal(LED_TEST_GPIO, 1); - usleep(LED_INTERVAL_TIME_US); - break; - case LED_OFF: - IoTGpioSetOutputVal(LED_TEST_GPIO, 0); - usleep(LED_INTERVAL_TIME_US); - break; - case LED_SPARK: - IoTGpioSetOutputVal(LED_TEST_GPIO, 0); - usleep(LED_INTERVAL_TIME_US); - IoTGpioSetOutputVal(LED_TEST_GPIO, 1); - usleep(LED_INTERVAL_TIME_US); - break; - default: - usleep(LED_INTERVAL_TIME_US); - break; - } - } - return NULL; - } - ``` - -5. 在代码最下方,使用OpenHarmony启动恢复模块接口SYS\_RUN\(\)启动业务。(SYS\_RUN定义在ohos\_init.h文件中) - - ``` - SYS_RUN(LedExampleEntry); - ``` - -6. 修改applications/sample/wifi-iot/app/BUILD.gn文件,使led\_example.c参与编译。 - - ``` - import("//build/lite/config/component/lite_component.gni") - lite_component("app") { - features = [ - "iothardware:led_example" - ] - } - ``` - - diff --git "a/zh-cn/device-dev/guide/\345\274\200\345\217\221\345\207\206\345\244\207-8.md" "b/zh-cn/device-dev/guide/\345\274\200\345\217\221\345\207\206\345\244\207-8.md" deleted file mode 100755 index 52eed11deb1..00000000000 --- "a/zh-cn/device-dev/guide/\345\274\200\345\217\221\345\207\206\345\244\207-8.md" +++ /dev/null @@ -1,8 +0,0 @@ -# 开发准备 - -- [准备开发环境和创建工程](#section1912530122716) - -## 准备开发环境和创建工程 - -首先需要下载和配置DevEco Studio,具体操作请参考[DevEco Studio 使用指南](../../application-dev/quick-start/DevEco-Studio(OpenHarmony)使用指南.md)。 - diff --git "a/zh-cn/device-dev/guide/\345\274\200\345\217\221\351\246\226\351\241\265.md" "b/zh-cn/device-dev/guide/\345\274\200\345\217\221\351\246\226\351\241\265.md" index c80d70f94f3..7c93aefcb11 100755 --- "a/zh-cn/device-dev/guide/\345\274\200\345\217\221\351\246\226\351\241\265.md" +++ "b/zh-cn/device-dev/guide/\345\274\200\345\217\221\351\246\226\351\241\265.md" @@ -2,7 +2,7 @@ 应用首页主要展示城市的空气质量概况。首页总共有两屏(可以根据需求设置多屏),每屏显示一个城市的空气质量信息:主要包括AQI指数、城市名称、污染物指数、更新时间和信息来源等数据。 -从第一章节中的[显示效果图](概述-6.md#fig18250512195914)分析可知,首页由三部分组成: +从第一章节中的[显示效果图](概述-5.md#fig18250512195914)分析可知,首页由三部分组成: - 标题栏:位于页面正上方,位置固定,包括应用退出按钮和页面标题。 - 信息栏:主要展示城市的空气信息指标等内容;该页面根据用户需求可设置多屏,且能循环滑动。 diff --git "a/zh-cn/device-dev/guide/\345\274\200\346\234\272\346\227\245\345\277\227\345\210\206\346\236\220.md" "b/zh-cn/device-dev/guide/\345\274\200\346\234\272\346\227\245\345\277\227\345\210\206\346\236\220.md" deleted file mode 100644 index 469d6a3566f..00000000000 --- "a/zh-cn/device-dev/guide/\345\274\200\346\234\272\346\227\245\345\277\227\345\210\206\346\236\220.md" +++ /dev/null @@ -1,19 +0,0 @@ -# 开机日志分析 - -如下所示为开机启动日志部分截取 - -``` -[I/HDF_INPUT_DRV] HdfInputManagerInit: enter // 管理驱动层初始化 -[I/HDF_INPUT_DRV] HdfInputManagerInit: exit succ // 初始化成功 -[I/osal_cdev] add cdev hdf_input_host success -[I/HDF_LOG_TAG] HdfTouchDriverProbe: enter // 公共驱动层初始化 -[I/HDF_LOG_TAG] HdfTouchDriverProbe: main_touch exit succ // 初始化成功 -[I/osal_cdev] add cdev hdf_input_event1 success -[I/HDF_INPUT_DRV] HdfGoodixChipInit: enter // 器件驱动层初始化 -[I/HDF_INPUT_DRV] ChipDetect: IC FW version is 0x1060 -[I/HDF_INPUT_DRV] Product_ID: 911_1060, x_sol = 960, y_sol = 480 -[I/HDF_LOG_TAG] ChipDriverInit: chipDetect succ, ret = 0 -[I/HDF_LOG_TAG] InputDeviceInstance: inputDev->devName = main_touch -[I/HDF_INPUT_DRV] HdfGoodixChipInit: exit succ, chipName = gt911 // 初始化成功 -``` - diff --git "a/zh-cn/device-dev/guide/\345\275\225\345\203\217\345\274\200\345\217\221\346\214\207\345\257\274-4.md" "b/zh-cn/device-dev/guide/\345\275\225\345\203\217\345\274\200\345\217\221\346\214\207\345\257\274-3.md" old mode 100755 new mode 100644 similarity index 100% rename from "zh-cn/device-dev/guide/\345\275\225\345\203\217\345\274\200\345\217\221\346\214\207\345\257\274-4.md" rename to "zh-cn/device-dev/guide/\345\275\225\345\203\217\345\274\200\345\217\221\346\214\207\345\257\274-3.md" diff --git "a/zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274-3.md" "b/zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274-2.md" old mode 100755 new mode 100644 similarity index 99% rename from "zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274-3.md" rename to "zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274-2.md" index 83e445c0ed1..0cae9c359bf --- "a/zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274-3.md" +++ "b/zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274-2.md" @@ -385,6 +385,7 @@ Surface *surface = Surface::CreateSurface(); if (surface == nullptr) { delete fc; + return; } surface->SetWidthAndHeight(1920, 1080); /* 1920:width,1080:height */ fc->AddSurface(*surface); diff --git "a/zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274.md" index e59c365a5c6..31edc27814b 100755 --- "a/zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ "b/zh-cn/device-dev/guide/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274.md" @@ -385,6 +385,7 @@ Surface *surface = Surface::CreateSurface(); if (surface == nullptr) { delete fc; + return; } surface->SetWidthAndHeight(1920, 1080); /* 1920:width,1080:height */ fc->AddSurface(*surface); diff --git "a/zh-cn/device-dev/guide/\346\221\204\345\203\217\345\244\264\346\216\247\345\210\266.md" "b/zh-cn/device-dev/guide/\346\221\204\345\203\217\345\244\264\346\216\247\345\210\266.md" index 65f7df79807..760e3d563de 100755 --- "a/zh-cn/device-dev/guide/\346\221\204\345\203\217\345\244\264\346\216\247\345\210\266.md" +++ "b/zh-cn/device-dev/guide/\346\221\204\345\203\217\345\244\264\346\216\247\345\210\266.md" @@ -1,6 +1,6 @@ # 摄像头控制 -- **[概述](概述-0.md)** +- **[概述](概述.md)** - **[示例开发](示例开发.md)** diff --git "a/zh-cn/device-dev/guide/\345\274\200\345\217\221\346\255\245\351\252\244.md" "b/zh-cn/device-dev/guide/\346\227\266\351\222\237\345\272\224\347\224\250\345\274\200\345\217\221\346\214\207\345\257\274.md" similarity index 42% rename from "zh-cn/device-dev/guide/\345\274\200\345\217\221\346\255\245\351\252\244.md" rename to "zh-cn/device-dev/guide/\346\227\266\351\222\237\345\272\224\347\224\250\345\274\200\345\217\221\346\214\207\345\257\274.md" index ae738663fd4..56df9a0d92a 100644 --- "a/zh-cn/device-dev/guide/\345\274\200\345\217\221\346\255\245\351\252\244.md" +++ "b/zh-cn/device-dev/guide/\346\227\266\351\222\237\345\272\224\347\224\250\345\274\200\345\217\221\346\214\207\345\257\274.md" @@ -1,8 +1,35 @@ -# 开发步骤 +# 时钟应用开发指导 + +- [概述](#section11522349121115) +- [开发准备](#section6592121861218) +- [开发步骤](#section19901741111312) +- [签名打包](#section10601181101516) +- [真机运行](#section092721731511) +- [常见问题](#section1122413460153) + - [hdc\_std连接不到设备](#section1922725151614) + - [hdc\_std运行不了](#section15657547131615) + + +## 概述 + +本文将介绍如何快速搭建基于OpenHarmony标准系统(Hi3516DV300开发板)的应用开发环境,并基于一个时钟APP示例逐步展示应用的创建、开发、调试和安装等流程。示例代码可以通过[本链接](https://gitee.com/openharmony/app_samples/tree/master/common/Clock)获取。 + +时钟App是一款显示实时时间的应用,显示效果如下图所示: + +**图 1** 时钟应用显示效果图 + + +![](figures/Clock.png) + +## 开发准备 + +首先需要下载和配置DevEco Studio,具体操作请参考[DevEco Studio 使用指南](../../application-dev/quick-start/DevEco-Studio(OpenHarmony)使用指南.md)。 + +## 开发步骤 应用的功能是通过表盘和数字显示实时时间。 -从第一章节中的[显示效果图](概述-7.md#fig7763172132019)分析可知,页面由两个部分组成: +从[显示效果图](时钟应用开发指导.md#fig7763172132019)分析可知,页面由两个部分组成: - 表盘栏:主要展示一个动态的钟表,且钟表指针能准确转动。 - 数字时间栏:主要以数字形式显示当前时间。 @@ -133,98 +160,173 @@ ``` 4. 所有组件设置样式、动画效果和数据动态绑定,完整代码如下所示: - - **index.hml文件** + ``` +
+ + + + + + + {{ hour }}:{{ minute }}:{{ second }} +
+ ``` + + + - **index.css文件** + + ``` + .container { + flex-direction: column; + justify-content: center; + align-items: center; + width: 100%; + height: 100%; + } + + .stack { + flex-direction: column; + justify-content: center; + align-items: center; + width: 100%; + height: 50%; + } + + .digit-clock { + font-size: 58px; + width: 100%; + margin-top: 0px; + text-align: center; + } + + .clock-bg { + width: 80%; + height: 80%; + object-fit: scale-down; + } + + .clock-hand { + width: 25%; + height: 65%; + object-fit: contain; + } + ``` + + + - **index.js:** + + js文件主要用于实现App应用的逻辑交互。在本页面js文件中,需要实现如下功能:定时获取系统时间。 + + ``` + export default { + timer: undefined, + data: { + hour: 0, + minute: 0, + second: 0 + }, + onInit() { + this.updateTime() + this.timer = setInterval(this.updateTime, 1000) + }, + updateTime: function () { + var nowTime = new Date() + this.hour = nowTime.getHours() + this.minute = nowTime.getMinutes() + this.second = nowTime.getSeconds() + if (this.hour < 10) { + this.hour = '0' + this.hour + } + if (this.minute < 10) { + this.minute = '0' + this.minute + } + if (this.second < 10) { + this.second = '0' + this.second + } + }, + onDestroy() { + clearInterval(this.timer); + } + } + ``` + + + +## 签名打包 + +代码编写完成后,在真机设备上运行应用,需要先对应用进行签名,然后再进行打包,具体操作请参考[签名打包指导](../../application-dev/quick-start/配置OpenHarmony应用签名信息.md)。 + +## 真机运行 + +应用签名打包后即可安装到开发板。安装应用前需要先完成[DevEco Device Tool的安装配置](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905),然后将OpenHarmony系统烧录到开发板并运行。编译烧录、运行镜像的基本操作请参考快速入门手册:[标准系统Hi3516快速入门](../quick-start/标准系统入门.md)。完成镜像运行,系统正常启动后,执行如下步骤安装或卸载应用。 + +1. 从开发者工具代码仓路径中获取hdc客户端。 + ``` -
- - - - - - - {{ hour }}:{{ minute }}:{{ second }} -
+ developtools/hdc_standard/prebuilt/windows/hdc_std.exe ``` - - **index.css文件** + 修改名称为hdc.exe,并将工具路径加入系统环境path变量中。 + +2. 启动cmd命令窗口,执行以下命令,推送hap应用包到设备目录下并安装。 ``` - .container { - flex-direction: column; - justify-content: center; - align-items: center; - width: 100%; - height: 100%; - } - - .stack { - flex-direction: column; - justify-content: center; - align-items: center; - width: 100%; - height: 50%; - } - - .digit-clock { - font-size: 58px; - width: 100%; - margin-top: 0px; - text-align: center; - } - - .clock-bg { - width: 80%; - height: 80%; - object-fit: scale-down; - } - - .clock-hand { - width: 25%; - height: 65%; - object-fit: contain; - } + hdc smode + hdc target mount + hdc file send clock.hap /data/clock.hap + hdc shell chmod 666 /data/clock.hap + hdc shell bm install -p /data/clock.hap ``` - - **index.js:** +3. 启动应用。执行以下命令,其中ohos.samples.clock为应用包名,MainAbility为应用启动的Ability。 - js文件主要用于实现App应用的逻辑交互。在本页面js文件中,需要实现如下功能:定时获取系统时间。 + ``` + hdc shell aa start -d 123 -a ohos.samples.clock.MainAbility -b ohos.samples.clock + ``` + +4. 卸载应用(可选)。执行以下命令,其中ohos.samples.clock为应用包名。 ``` - export default { - timer: undefined, - data: { - hour: 0, - minute: 0, - second: 0 - }, - onInit() { - this.updateTime() - this.timer = setInterval(this.updateTime, 1000) - }, - updateTime: function () { - var nowTime = new Date() - this.hour = nowTime.getHours() - this.minute = nowTime.getMinutes() - this.second = nowTime.getSeconds() - if (this.hour < 10) { - this.hour = '0' + this.hour - } - if (this.minute < 10) { - this.minute = '0' + this.minute - } - if (this.second < 10) { - this.second = '0' + this.second - } - }, - onDestroy() { - clearInterval(this.timer); - } - } + hdc shell bm uninstall -n ohos.samples.clock ``` +## 常见问题 + +### hdc\_std连接不到设备 + +- **现象描述** + + 执行 "hdc\_std list targets"命令后结果为:\[Empty\] + +- **可能原因和解决方法** + 1. 设备没有被识别: + + 在设备管理器中查看是否有hdc设备,在通用串行总线设备中会有“HDC Device”信息。如果没有,hdc无法连接。此时需要插拔设备,或者烧写最新的镜像。 + + 2. hdc\_std工作异常: + + 可以执行"hdc kill"或者"hdc start -r"杀掉hdc服务或者重启hdc服务,然后再执行hdc list targets查看是否已经可以获取设备信息。 + + 3. hdc\_std与设备不匹配: + + 如果设备烧写的是最新镜像,hdc\_std也需要使用最新版本。由于hdc\_std会持续更新,请从开源仓developtools\_hdc\_standard中获取,具体位置在该开源仓的prebuilt目录。 + + + +### hdc\_std运行不了 + +- **现象描述** + + 点击hdc\_std.exe文件无法运行。 + +- **可能原因和解决方法** + + hdc\_std.exe不需要安装,直接放到磁盘上就能使用,也可以添加到环境变量中。通过打开cmd执行hdc\_std命令直接使用。 + + diff --git "a/zh-cn/device-dev/guide/\346\227\266\351\222\237\345\272\224\347\224\250\345\274\200\345\217\221\347\244\272\344\276\213.md" "b/zh-cn/device-dev/guide/\346\227\266\351\222\237\345\272\224\347\224\250\345\274\200\345\217\221\347\244\272\344\276\213.md" deleted file mode 100644 index 3cbff6960f6..00000000000 --- "a/zh-cn/device-dev/guide/\346\227\266\351\222\237\345\272\224\347\224\250\345\274\200\345\217\221\347\244\272\344\276\213.md" +++ /dev/null @@ -1,15 +0,0 @@ -# 时钟应用开发示例 - -- **[概述](概述-7.md)** - -- **[开发准备](开发准备-8.md)** - -- **[开发步骤](开发步骤.md)** - -- **[签名打包](签名打包.md)** - -- **[真机运行](真机运行-9.md)** - -- **[常见问题](常见问题-10.md)** - - diff --git "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-0.md" "b/zh-cn/device-dev/guide/\346\246\202\350\277\260-0.md" index e3d5da250e0..ad74728ebf0 100755 --- "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-0.md" +++ "b/zh-cn/device-dev/guide/\346\246\202\350\277\260-0.md" @@ -1,10 +1,10 @@ -# 概述 +# 概述 -本文档将介绍如何基于IoT Camera开发板,利用开发套件中自带的摄像头,完成拍照、录像功能。 +本文档将介绍如何基于IoT Camera开发板(Hi3516DV300),利用其摄像头和屏幕,完成拍照、录像和视频预览功能。 -开发者可通过执行示例应用,对开发板的外设控制有了更深入了解后,可使用开发板完成摄像头等设备。 +通过本文档,开发者能够对OpenHarmony的摄像控制有更深入的了解,可参照本例尝试完成“智能猫眼”、“智能后视镜”、“智能带屏音箱”等设备的开发。 -若开发者想先查看示例效果,请进入[应用实例](应用实例.md)。如需自定义应用行为,可参考下节“示例开发”对示例代码进行修改。 +若开发者想先查看示例效果,请进入[应用实例](应用实例-4.md)。如需自定义应用行为,可参考下节“示例开发”对示例代码进行修改。 -相机开发基本概念可参考:[相机开发概述](../subsystems/相机开发概述.md)。 +相机应用开发的基本概念请参考:[相机开发概述](../subsystems/相机开发概述.md)。 diff --git "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-1.md" "b/zh-cn/device-dev/guide/\346\246\202\350\277\260-1.md" deleted file mode 100755 index f265cdb276c..00000000000 --- "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-1.md" +++ /dev/null @@ -1,10 +0,0 @@ -# 概述 - -本文档将介绍如何基于IoT Camera开发板(Hi3516DV300),利用其摄像头和屏幕,完成拍照、录像和视频预览功能。 - -通过本文档,开发者能够对OpenHarmony的摄像控制有更深入的了解,可参照本例尝试完成“智能猫眼”、“智能后视镜”、“智能带屏音箱”等设备的开发。 - -若开发者想先查看示例效果,请进入[应用实例](应用实例-5.md)。如需自定义应用行为,可参考下节“示例开发”对示例代码进行修改。 - -相机应用开发的基本概念请参考:[相机开发概述](../subsystems/相机开发概述.md)。 - diff --git "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-10.md" "b/zh-cn/device-dev/guide/\346\246\202\350\277\260-10.md" deleted file mode 100644 index 16734e3f172..00000000000 --- "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-10.md" +++ /dev/null @@ -1,26 +0,0 @@ -# 概述 - -- [场景介绍](#section191543223549) - -本文档将以I2C驱动为例,介绍如何基于HDF驱动框架完成平台驱动开发。 - ->![](public_sys-resources/icon-caution.gif) **注意:** ->本例仅作为平台驱动开发示例参考,开发者不可直接用于商用集成。 - -## 场景介绍 - -HDF驱动框架为常用外围设备提供了标准的驱动框架,驱动开发者只需将驱动适配至HDF驱动框架,即可通过HDF驱动框架提供的接口操作外围设备。 - -本文以I2C为例。其时序流程如[图1](#fig148041484161)所示。 - -**图 1** I2C时序流程图 - - -![](figures/zh-cn_image_0000001161922745.png) - -- User Business:用户业务驱动。 -- i2cManagerEntry:I2C管理器入口,注册I2cManager到HDF驱动框架。 -- I2cManager:I2C管理器,管理I2C控制器。 -- I2cCntlr:I2C控制器。 -- i2cDriverEntry:I2C控制器入口,注册I2cCntlr到HDF驱动框架。 - diff --git "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-12.md" "b/zh-cn/device-dev/guide/\346\246\202\350\277\260-12.md" deleted file mode 100644 index 0606b801b5e..00000000000 --- "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-12.md" +++ /dev/null @@ -1,9 +0,0 @@ -# 概述 - -本文档将介绍如何基于Hi3516DV300开发板完成基于HDF\_Input模型的触摸屏器件驱动开发,从而使开发者快速入门,进行基于的外设驱动开发。 - -- **[硬件资源介绍](硬件资源介绍.md)** - -- **[Input模型简介](Input模型简介.md)** - - diff --git "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-6.md" "b/zh-cn/device-dev/guide/\346\246\202\350\277\260-5.md" old mode 100755 new mode 100644 similarity index 100% rename from "zh-cn/device-dev/guide/\346\246\202\350\277\260-6.md" rename to "zh-cn/device-dev/guide/\346\246\202\350\277\260-5.md" diff --git "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-7.md" "b/zh-cn/device-dev/guide/\346\246\202\350\277\260-7.md" deleted file mode 100755 index e032aa00bcc..00000000000 --- "a/zh-cn/device-dev/guide/\346\246\202\350\277\260-7.md" +++ /dev/null @@ -1,15 +0,0 @@ -# 概述 - -- [效果展示](#section3997224182313) - -本文将介绍如何快速搭建基于OpenHarmony标准系统(Hi3516DV300开发板)的应用开发环境,并基于一个时钟APP示例逐步展示应用的创建、开发、调试和安装等流程。示例代码可以通过[本链接](https://gitee.com/openharmony/app_samples/tree/master/common/Clock)获取。 - -## 效果展示 - -时钟App是一款显示实时时间的应用,显示效果如下图所示: - -**图 1** 时钟应用显示效果图 - - -![](figures/Clock.png) - diff --git "a/zh-cn/device-dev/guide/\346\246\202\350\277\260.md" "b/zh-cn/device-dev/guide/\346\246\202\350\277\260.md" index 875da92ed1d..e3d5da250e0 100755 --- "a/zh-cn/device-dev/guide/\346\246\202\350\277\260.md" +++ "b/zh-cn/device-dev/guide/\346\246\202\350\277\260.md" @@ -1,4 +1,10 @@ -# 概述 +# 概述 -OpenHarmony WLAN模组基于Hi3861平台提供了丰富的外设操作能力,包含I2C、I2S、ADC、UART、SPI、SDIO、GPIO、PWM、FLASH等。本文介绍如何通过调用OpenHarmony的NDK接口,实现对GPIO控制,达到LED闪烁的效果。其他的IOT外设控制,开发者可根据API指导文档完成,此处不逐一介绍。 +本文档将介绍如何基于IoT Camera开发板,利用开发套件中自带的摄像头,完成拍照、录像功能。 + +开发者可通过执行示例应用,对开发板的外设控制有了更深入了解后,可使用开发板完成摄像头等设备。 + +若开发者想先查看示例效果,请进入[应用实例](应用实例.md)。如需自定义应用行为,可参考下节“示例开发”对示例代码进行修改。 + +相机开发基本概念可参考:[相机开发概述](../subsystems/相机开发概述.md)。 diff --git "a/zh-cn/device-dev/guide/\347\216\257\345\242\203\345\207\206\345\244\207.md" "b/zh-cn/device-dev/guide/\347\216\257\345\242\203\345\207\206\345\244\207.md" deleted file mode 100644 index c6ae1a18427..00000000000 --- "a/zh-cn/device-dev/guide/\347\216\257\345\242\203\345\207\206\345\244\207.md" +++ /dev/null @@ -1,7 +0,0 @@ -# 环境准备 - -环境准备具体操作请参考[标准系统基础环境搭建](../quick-start/标准系统入门.md)。 - ->![](public_sys-resources/icon-notice.gif) **须知:** ->本示例针对OpenHarmony轻量系统、小型系统、标准系统都适用,本文以标准系统为例。其他系统的开发者可参考对应系统的指导文档进行环境搭建。 - diff --git "a/zh-cn/device-dev/guide/\347\216\257\345\242\203\346\220\255\345\273\272.md" "b/zh-cn/device-dev/guide/\347\216\257\345\242\203\346\220\255\345\273\272.md" deleted file mode 100644 index 381ddaa88c0..00000000000 --- "a/zh-cn/device-dev/guide/\347\216\257\345\242\203\346\220\255\345\273\272.md" +++ /dev/null @@ -1,7 +0,0 @@ -# 环境搭建 - -环境准备具体操作请参考[标准系统基础环境搭建](../quick-start/标准系统入门.md)。 - ->![](public_sys-resources/icon-notice.gif) **须知:** ->本示例针对OpenHarmony轻量系统、小型系统、标准系统都适用,本文以标准系统为例。其他系统的开发者可参考对应系统的指导文档进行环境搭建。 - diff --git "a/zh-cn/device-dev/guide/\347\234\237\346\234\272\350\277\220\350\241\214-9.md" "b/zh-cn/device-dev/guide/\347\234\237\346\234\272\350\277\220\350\241\214-9.md" deleted file mode 100644 index 30bb3b0801d..00000000000 --- "a/zh-cn/device-dev/guide/\347\234\237\346\234\272\350\277\220\350\241\214-9.md" +++ /dev/null @@ -1,35 +0,0 @@ -# 真机运行 - -应用签名打包后即可安装到开发板。安装应用前需要先完成[DevEco Device Tool的安装配置](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905),然后将OpenHarmony系统烧录到开发板并运行。编译烧录、运行镜像的基本操作请参考快速入门手册:[标准系统Hi3516快速入门](../quick-start/标准系统入门.md)。完成镜像运行,系统正常启动后,执行如下步骤安装或卸载应用。 - -1. 从开发者工具代码仓路径中获取hdc客户端。 - - ``` - developtools/hdc_standard/prebuilt/windows/hdc_std.exe - ``` - - 修改名称为hdc.exe,并将工具路径加入系统环境path变量中。 - -2. 启动cmd命令窗口,执行以下命令,推送hap应用包到设备目录下并安装。 - - ``` - hdc smode - hdc target mount - hdc file send clock.hap /data/clock.hap - hdc shell chmod 666 /data/clock.hap - hdc shell bm install -p /data/clock.hap - ``` - -3. 启动应用。执行以下命令,其中ohos.samples.clock为应用包名,MainAbility为应用启动的Ability。 - - ``` - hdc shell aa start -d 123 -a ohos.samples.clock.MainAbility -b ohos.samples.clock - ``` - -4. 卸载应用(可选)。执行以下命令,其中ohos.samples.clock为应用包名。 - - ``` - hdc shell bm uninstall -n ohos.samples.clock - ``` - - diff --git "a/zh-cn/device-dev/guide/\347\234\237\346\234\272\350\277\220\350\241\214.md" "b/zh-cn/device-dev/guide/\347\234\237\346\234\272\350\277\220\350\241\214.md" index 973019fcce8..660830bd665 100755 --- "a/zh-cn/device-dev/guide/\347\234\237\346\234\272\350\277\220\350\241\214.md" +++ "b/zh-cn/device-dev/guide/\347\234\237\346\234\272\350\277\220\350\241\214.md" @@ -1,6 +1,6 @@ # 真机运行 -应用编译打包后即可安装到开发板。安装应用前需要先完成[DevEco Device Tool的安装配置](https://device.harmonyos.com/cn/docs/ide/user-guides/tool_install-0000001050164976),然后将OpenHarmony烧录到开发板并运行。编译烧录、运行镜像的基本操作请参考快速入门手册:[Hi3516快速入门](../quick-start/Hi3516开发板介绍.md)。完成镜像运行,系统正常启动后,执行如下步骤安装或卸载三方应用。 +应用编译打包后即可安装到开发板。安装应用前需要先完成[DevEco Device Tool的安装配置](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905),然后将OpenHarmony烧录到开发板并运行。编译烧录、运行镜像的基本操作请参考快速入门手册:[Hi3516快速入门](../quick-start/Hi3516开发板介绍.md)。完成镜像运行,系统正常启动后,执行如下步骤安装或卸载三方应用。 1. 将IDE编译的未签名应用安装包和安装工具(镜像文件生成目录中的dev\_tools)放在sdcard中,将sdcard插入开发板卡槽。 2. 应用安装默认要校验签名,需要执行以下命令,关闭签名校验。 diff --git "a/zh-cn/device-dev/guide/\347\241\254\344\273\266\350\265\204\346\272\220\344\273\213\347\273\215.md" "b/zh-cn/device-dev/guide/\347\241\254\344\273\266\350\265\204\346\272\220\344\273\213\347\273\215.md" deleted file mode 100644 index 18b33bd5af0..00000000000 --- "a/zh-cn/device-dev/guide/\347\241\254\344\273\266\350\265\204\346\272\220\344\273\213\347\273\215.md" +++ /dev/null @@ -1,6 +0,0 @@ -# 硬件资源介绍 - -Hi3516DV300开发板套件所提供的触摸屏器件IC为GT911,该器件采用标准I2C与主机通信,通过6pin软排线与主板连接。6pin分布以及实物连接图如下图所示: - -![](figures/绘图1.png) - diff --git "a/zh-cn/device-dev/guide/\347\244\272\344\276\213\345\274\200\345\217\221-2.md" "b/zh-cn/device-dev/guide/\347\244\272\344\276\213\345\274\200\345\217\221-1.md" old mode 100755 new mode 100644 similarity index 51% rename from "zh-cn/device-dev/guide/\347\244\272\344\276\213\345\274\200\345\217\221-2.md" rename to "zh-cn/device-dev/guide/\347\244\272\344\276\213\345\274\200\345\217\221-1.md" index eb01bec406a..e2e6a3452de --- "a/zh-cn/device-dev/guide/\347\244\272\344\276\213\345\274\200\345\217\221-2.md" +++ "b/zh-cn/device-dev/guide/\347\244\272\344\276\213\345\274\200\345\217\221-1.md" @@ -1,8 +1,8 @@ # 示例开发 -- **[拍照开发指导](拍照开发指导-3.md)** +- **[拍照开发指导](拍照开发指导-2.md)** -- **[录像开发指导](录像开发指导-4.md)** +- **[录像开发指导](录像开发指导-3.md)** - **[预览开发指导](预览开发指导.md)** diff --git "a/zh-cn/device-dev/guide/\347\247\201\346\234\211\351\205\215\347\275\256\344\277\241\346\201\257\350\247\243\346\236\220.md" "b/zh-cn/device-dev/guide/\347\247\201\346\234\211\351\205\215\347\275\256\344\277\241\346\201\257\350\247\243\346\236\220.md" deleted file mode 100644 index a472a6dfdfb..00000000000 --- "a/zh-cn/device-dev/guide/\347\247\201\346\234\211\351\205\215\347\275\256\344\277\241\346\201\257\350\247\243\346\236\220.md" +++ /dev/null @@ -1,17 +0,0 @@ -# 私有配置信息解析 - -示例代码路径:./drivers/framework/model/input/driver/input\_config\_parser.c - -根据OSAL提供的配置解析函数,可以将hcs文件中各字段含义进行解析,具体请参考input\_config\_parser.c中各函数的实现。如果提供的模板不能满足需求,在hcs文件中添加相应信息后,需要根据添加的字段开发相应的解析函数。 - -``` -static int32_t ParseAttr(struct DeviceResourceIface *parser, const struct DeviceResourceNode *attrNode, BoardAttrCfg *attr) -{ - int32_t ret; - ret = parser->GetUint8(attrNode, "inputType", &attr->devType, 0); // 获取inputType字段信息,保存在BoardAttrCfg结构体中 - CHECK_PARSER_RET(ret, "GetUint8"); - ... - return HDF_SUCCESS; -} -``` - diff --git "a/zh-cn/device-dev/guide/\347\255\276\345\220\215\346\211\223\345\214\205.md" "b/zh-cn/device-dev/guide/\347\255\276\345\220\215\346\211\223\345\214\205.md" deleted file mode 100644 index a6fd6f96552..00000000000 --- "a/zh-cn/device-dev/guide/\347\255\276\345\220\215\346\211\223\345\214\205.md" +++ /dev/null @@ -1,4 +0,0 @@ -# 签名打包 - -代码编写完成后,在真机设备上运行应用,需要先对应用进行签名,然后再进行打包,具体操作请参考[签名打包指导](../../application-dev/quick-start/配置OpenHarmony应用签名信息.md)。 - diff --git "a/zh-cn/device-dev/guide/\347\256\241\347\220\206\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" "b/zh-cn/device-dev/guide/\347\256\241\347\220\206\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" deleted file mode 100644 index 73b05bf0b03..00000000000 --- "a/zh-cn/device-dev/guide/\347\256\241\347\220\206\351\251\261\345\212\250\345\261\202\345\210\235\345\247\213\345\214\226\345\217\212\346\263\250\345\206\214\351\251\261\345\212\250\350\207\263HDF\346\241\206\346\236\266.md" +++ /dev/null @@ -1,22 +0,0 @@ -# 管理驱动层初始化及注册驱动至HDF框架 - -示例代码路径:./drivers/framework/model/input/driver/hdf\_input\_device\_manager.c - -``` -static int32_t HdfInputManagerInit(struct HdfDeviceObject *device) -{ - /* 分配内存给manager,manager中将存放所有input设备 */ - g_inputManager = InputManagerInstance(); - ... -} -struct HdfDriverEntry g_hdfInputEntry = { - .moduleVersion = 1, - .moduleName = "HDF_INPUT_MANAGER", - .Bind = HdfInputManagerBind, - .Init = HdfInputManagerInit, - .Release = HdfInputManagerRelease, -}; - -HDF_INIT(g_hdfInputEntry); //驱动注册入口 -``` - diff --git "a/zh-cn/device-dev/guide/\347\274\226\350\257\221\345\217\212\347\203\247\345\275\225-13.md" "b/zh-cn/device-dev/guide/\347\274\226\350\257\221\345\217\212\347\203\247\345\275\225-13.md" deleted file mode 100644 index 587404009f0..00000000000 --- "a/zh-cn/device-dev/guide/\347\274\226\350\257\221\345\217\212\347\203\247\345\275\225-13.md" +++ /dev/null @@ -1,17 +0,0 @@ -# 编译及烧录 - -1. 编辑Makefile文件,添加本示例中的内容: - - 文件路径:./drivers/adapter/khdf/linux/model/input/Makefile - - 添加内容如下: - - ``` - obj-$(CONFIG_DRIVERS_HDF_TP_5P5_GT911) += \ - $(INPUT_ROOT_DIR)/touchscreen/touch_gt911.o - ``` - - 其中touch\_gt911.o为本示例中追加的内容。 - -2. 具体编译及烧录操作请参考[标准系统快速入门编译及烧录章节](../quick-start/标准系统入门.md)。 - diff --git "a/zh-cn/device-dev/guide/\347\274\226\350\257\221\345\217\212\347\203\247\345\275\225.md" "b/zh-cn/device-dev/guide/\347\274\226\350\257\221\345\217\212\347\203\247\345\275\225.md" deleted file mode 100644 index 92d839390d5..00000000000 --- "a/zh-cn/device-dev/guide/\347\274\226\350\257\221\345\217\212\347\203\247\345\275\225.md" +++ /dev/null @@ -1,20 +0,0 @@ -# 编译及烧录 - -1. 编辑Makefile,添加源文件: - - ``` - include drivers/hdf/khdf/platform/platform.mk - - obj-y += $(HDF_PLATFORM_FRAMEWORKS_ROOT)/src/i2c_core.o \ - $(HDF_PLATFORM_FRAMEWORKS_ROOT)/src/i2c_if.o \ - ./i2c_adapter.o \ - ./i2c_sample.o - ``` - - "./i2c\_sample.o"为本示例中在Makefile中追加的内容。 - -2. 编译及烧录。 - - 具体操作请参考[标准系统快速入门编译及烧录章节](../quick-start/标准系统入门.md)。 - - diff --git "a/zh-cn/device-dev/guide/\350\247\206\350\247\211\345\272\224\347\224\250\345\274\200\345\217\221.md" "b/zh-cn/device-dev/guide/\350\247\206\350\247\211\345\272\224\347\224\250\345\274\200\345\217\221.md" index b4a8975ab2b..dd98c6ebbc4 100755 --- "a/zh-cn/device-dev/guide/\350\247\206\350\247\211\345\272\224\347\224\250\345\274\200\345\217\221.md" +++ "b/zh-cn/device-dev/guide/\350\247\206\350\247\211\345\272\224\347\224\250\345\274\200\345\217\221.md" @@ -1,6 +1,6 @@ # 视觉应用开发 -- **[概述](概述-6.md)** +- **[概述](概述-5.md)** - **[开发准备](开发准备.md)** diff --git "a/zh-cn/device-dev/guide/\350\260\203\350\257\225\346\211\223\345\214\205.md" "b/zh-cn/device-dev/guide/\350\260\203\350\257\225\346\211\223\345\214\205.md" index 5015bd5755d..30505bcb3eb 100755 --- "a/zh-cn/device-dev/guide/\350\260\203\350\257\225\346\211\223\345\214\205.md" +++ "b/zh-cn/device-dev/guide/\350\260\203\350\257\225\346\211\223\345\214\205.md" @@ -1,4 +1,4 @@ # 调试打包 -代码编写完成后,可以进行调试和打包;应用调试及打包方法可以参考[《DevEco Studio使用指南》](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/tools_overview-0000001053582387)的[应用调测](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/debug_overview-0000001053822404)和[编译构建](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/build_overview-0000001055075201)章节。IPCamera应用暂时不支持签名模式,所以需要将应用发布为未签名的应用安装包。 +代码编写完成后,可以进行调试和打包;应用调试及打包方法可以参考[《DevEco Studio使用指南》](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/tools_overview-0000001053582387)的[应用调测](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide_debug_device-0000001053822404)和[编译构建](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/build_overview-0000001055075201)章节。IPCamera应用暂时不支持签名模式,所以需要将应用发布为未签名的应用安装包。 diff --git "a/zh-cn/device-dev/guide/\350\260\203\350\257\225\351\252\214\350\257\201.md" "b/zh-cn/device-dev/guide/\350\260\203\350\257\225\351\252\214\350\257\201.md" deleted file mode 100644 index f339b20a630..00000000000 --- "a/zh-cn/device-dev/guide/\350\260\203\350\257\225\351\252\214\350\257\201.md" +++ /dev/null @@ -1,5 +0,0 @@ -# 调试验证 - -- **[开机日志分析](开机日志分析.md)** - - diff --git "a/zh-cn/device-dev/guide/\351\200\202\351\205\215\345\231\250\344\273\266\347\247\201\346\234\211\351\251\261\345\212\250.md" "b/zh-cn/device-dev/guide/\351\200\202\351\205\215\345\231\250\344\273\266\347\247\201\346\234\211\351\251\261\345\212\250.md" deleted file mode 100644 index b719de9bacb..00000000000 --- "a/zh-cn/device-dev/guide/\351\200\202\351\205\215\345\231\250\344\273\266\347\247\201\346\234\211\351\251\261\345\212\250.md" +++ /dev/null @@ -1,99 +0,0 @@ -# 适配器件私有驱动 - -Input模型由三层驱动组成,开发者适配一款全新触摸屏驱动只需要适配器件驱动层即可,重点实现差异化接口,本小节以代码示例的形式展示开发者需要重点完成的工作。 - -1. 触摸屏器件差异化接口适配 - - 示例代码路径:./drivers/framework/model/input/driver/touchscreen/touch\_gt911.c - - ``` - static struct TouchChipOps g_gt911ChipOps = { // 器件IC接口 - .Init = ChipInit, // 初始化 - .Detect = ChipDetect, // 器件检测 - .Resume = ChipResume, // 唤醒 - .Suspend = ChipSuspend, // 休眠 - .DataHandle = ChipDataHandle, // 器件数据读取 - .UpdateFirmware = UpdateFirmware, // 固件升级 - }; - - /* 不同触摸屏厂家使用的IC不一样,对应的寄存器操作也不一样,因此器件驱动层代码重点适配差异化接口部分,如下示例代码展示了GT911的数据解析*/ - - static int32_t ChipDataHandle(ChipDevice *device) - { - ... - /* GT911获取坐标之前需先读取状态寄存器 */ - reg[0] = (GT_BUF_STATE_ADDR >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; - reg[1] = GT_BUF_STATE_ADDR & ONE_BYTE_MASK; - ret = InputI2cRead(i2cClient, reg, GT_ADDR_LEN, &touchStatus, 1); - if (ret < 0 || touchStatus == GT_EVENT_INVALID) { - return HDF_FAILURE; - } - ... - /* 根据状态寄存器的值读取数据寄存器数据 */ - reg[0] = (GT_X_LOW_BYTE_BASE >> ONE_BYTE_OFFSET) & ONE_BYTE_MASK; - reg[1] = GT_X_LOW_BYTE_BASE & ONE_BYTE_MASK; - pointNum = touchStatus & GT_FINGER_NUM_MASK; - if (pointNum == 0 || pointNum > MAX_SUPPORT_POINT) { - HDF_LOGE("%s: pointNum is invalid, %u", __func__, pointNum); - (void)ChipCleanBuffer(i2cClient); - OsalMutexUnlock(&device->driver->mutex); - return HDF_FAILURE; - } - frame->realPointNum = pointNum; - frame->definedEvent = TOUCH_DOWN; - (void)InputI2cRead(i2cClient, reg, GT_ADDR_LEN, buf, GT_POINT_SIZE * pointNum); - /* 对获取的数据进行解析 */ - ParsePointData(device, frame, buf, pointNum); - ... - } - static void ParsePointData(ChipDevice *device, FrameData *frame, uint8_t *buf, uint8_t pointNum) - { - ... - /* 每个坐标值由两个字节组成,对获取的单字节数据进行拼接得到最终的坐标值 */ - for (i = 0; i < pointNum; i++) { - frame->fingers[i].trackId = buf[GT_POINT_SIZE * i + GT_TRACK_ID]; - frame->fingers[i].y = (buf[GT_POINT_SIZE * i + GT_X_LOW] & ONE_BYTE_MASK) | - ((buf[GT_POINT_SIZE * i + GT_X_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); - frame->fingers[i].x = (buf[GT_POINT_SIZE * i + GT_Y_LOW] & ONE_BYTE_MASK) | - ((buf[GT_POINT_SIZE * i + GT_Y_HIGH] & ONE_BYTE_MASK) << ONE_BYTE_OFFSET); - /* 对解析出来的坐标值进行打印 */ - HDF_LOGD("%s: x = %d, y = %d", __func__, frame->fingers[i].x, frame->fingers[i].y); - } - } - ``` - -2. 器件层驱动初始化及注册驱动至HDF框架 - - 示例代码路径:./drivers/framework/model/input/driver/touchscreen/touch\_gt911.c - - ``` - static int32_t HdfGoodixChipInit(struct HdfDeviceObject *device) - { - ... - /* 器件配置结构体内存申请、配置信息解析及挂载 */ - chipCfg = ChipConfigInstance(device); - ... - /* 器件实例化 */ - chipDev = ChipDeviceInstance(); - ... - /* 器件信息挂载及器件私有操作挂载 */ - chipDev->chipCfg = chipCfg; - chipDev->ops = &g_gt911ChipOps; - ... - /* 注册器件驱动至平台驱动 */ - RegisterChipDevice(chipDev); - ... - } - struct HdfDriverEntry g_touchGoodixChipEntry = { - .moduleVersion = 1, - .moduleName = "HDF_TOUCH_GT911", // 该moduleName与device_info.hcs文件中器件驱动层的moduleName信息相匹配 - .Init = HdfGoodixChipInit, // 器件驱动初始化函数 - }; - HDF_INIT(g_touchGoodixChipEntry); // 注册器件驱动至HDF框架 - ``` - - 器件私有驱动层主要实现了各器件厂商差异较大的部分,如器件休眠唤醒、数据解析以及固件升级等。 - - 至此,基于HDF框架及Input模型的触摸屏驱动适配完成。 - - diff --git "a/zh-cn/device-dev/guide/\351\205\215\347\275\256Touchscreen\345\231\250\344\273\266\344\277\241\346\201\257.md" "b/zh-cn/device-dev/guide/\351\205\215\347\275\256Touchscreen\345\231\250\344\273\266\344\277\241\346\201\257.md" deleted file mode 100644 index a5638145829..00000000000 --- "a/zh-cn/device-dev/guide/\351\205\215\347\275\256Touchscreen\345\231\250\344\273\266\344\277\241\346\201\257.md" +++ /dev/null @@ -1,98 +0,0 @@ -# 配置Touchscreen器件信息 - -配置文件路径:./drivers/adapter/khdf/linux/hcs/input/input\_config.hcs - -input\_config.hcs中的信息由驱动代码进行读取解析,主要由公共驱动层的私有配置信息及器件驱动层的私有配置信息组成。文件中的配置包含板级硬件信息及器件私有配置信息,实际业务开发时,可根据具体需求增删及修改对应内容。 - -``` -root { - input_config { - touchConfig { - touch0 { // 第一款触摸屏 - boardConfig { // 板级硬件信息 - match_attr = "touch_device1"; // 与设备描述配置信息中公共驱动层私有配置信息的“match_attr”字段保持一致 - inputAttr { - /* 0:touch 1:key 2:keyboard 3:mouse 4:button 5:crown 6:encoder */ - inputType = 0; // input类型为touch - solutionX = 480; // 分辨率X信息 - solutionY = 960; // 分辨率Y信息 - devName = "main_touch"; // 设备名称 - } - busConfig { - /* 0:i2c 1:spi */ - busType = 0; // GT911采用I2C通信 - busNum = 6; // 与主机芯片第6路I2C通信 - clkGpio = 86; // 主机芯片SCL管脚 - dataGpio = 87; // 主机芯片SDA管脚 - i2cClkIomux = [0x114f0048, 0x403]; // SCL管脚配置信息 - i2cDataIomux = [0x114f004c, 0x403]; // SDA管脚配置信息 - } - pinConfig { - rstGpio = 3; // 复位管脚连接主机芯片的3号管脚 - intGpio = 4; // 中断管脚连接主机芯片的4号管脚 - rstRegCfg = [0x112f0094, 0x400]; // 复位管脚配置信息 - intRegCfg = [0x112f0098, 0x400]; // 中断管脚配置信息 - } - powerConfig { - /* 0:unused 1:ldo 2:gpio 3:pmic */ - vccType = 2; // GPIO供电 - vccNum = 20; // gpio20 - vccValue = 1800; // 电压幅值为1800mV - vciType = 1; // LDO供电 - vciNum = 12; // ldo12 - vciValue = 3300; // 电压幅值为3300mV - } - - featureConfig { - capacitanceTest = 0; // 容值测试 - gestureMode = 0; // 手势模式 - gloverMode = 0; // 手套模式 - coverMode = 0; // 皮套模式 - chargerMode = 0; // 充电模式 - knuckleMode = 0; // 指关节模式 - } - } - chipConfig { // 器件私有信息配置 - template touchChip { // 模板 - match_attr = ""; - chipName = "gt911"; // 触摸屏IC型号 - vendorName = "zsj"; // 供应商 - chipInfo = "AAAA11222"; // 1~4字符代表产品名,5~6字符代表IC型号,7~9字符代表模型型号 - busType = 0; // 0代表I2C,1代表SPI - deviceAddr = 0x5D; // 器件IC通信地址 - irqFlag = 2; // 1代表上升沿触发,2代表下降沿触发,4代表高电平触发,8代表低电平触发 - maxSpeed = 400; // 最大通信速率为400Hz - chipVersion = 0; // 触摸屏IC版本号 - powerSequence { - /* 上电时序的配置含义说明: - [类型, 状态, 方向 , 延时] - 0代表空,1代表vcc电源(1.8V),2代表VCI电源(3.3V),3代表复位管脚,4代表中断管脚 - 0代表下电或拉低,1代表上电或拉高,2代表无操作 - 0代表输入方向,1代表输出方向,2代表无操作 - 代表延时多少毫秒, 例如20代表延时20ms - */ - powerOnSeq = [4, 0, 1, 0, // 中断管脚配置为输出,且进行拉低 - 3, 0, 1, 10, // 复位管脚配置为输出,且进行拉低,延时10ms - 3, 1, 2, 60, // 复位管脚无操作,且进行拉高,延时60ms - 4, 2, 0, 0]; // 中断管脚配置为输入 - suspendSeq = [3, 0, 2, 10]; // 复位管脚无操作,且进行拉低,延时10ms - resumeSeq = [3, 1, 2, 10]; // 复位管脚无操作,且进行拉高,延时10ms - powerOffSeq = [3, 0, 2, 10, // 复位管脚无操作,且进行拉低,延时10ms - 1, 0, 2, 20]; // 电源正极管脚无操作,且进行拉低,延时20ms - } - } - - chip0 :: touchChip { - match_attr = "zsj_gt911_5p5"; // 与设备描述配置信息中器件私有配置信息的“match_attr”字段保持一致 - chipInfo = "ZIDN45100"; // 产品名+模组编号+芯片编号的组合信息 用于给用户态区分当前器件 - chipVersion = 0; // IC型号的版本 - } - } - } - } - } -} -``` - -示例中“touchConfig”包含了“touch0”,"touch0"包含了“boardConfig”与“chipConfig”;“boardConfig”字段包含了Hi3516DV300板级硬件信息,“chipConfig”包含了触摸屏器件的私有信息,如果需要替换触摸屏器件,重新配置“chipConfig”对应的字段信息即可。同时产品可以配置多款触摸屏,示例中用“touch0”代表了套件中默认的触摸屏的硬件接口以及器件的配置信息,如产品需要配置副屏,可在与“touch0”并列的位置配置“touch1”的信息。 - diff --git "a/zh-cn/device-dev/guide/\351\205\215\347\275\256\350\256\276\345\244\207\346\217\217\350\277\260\344\277\241\346\201\257.md" "b/zh-cn/device-dev/guide/\351\205\215\347\275\256\350\256\276\345\244\207\346\217\217\350\277\260\344\277\241\346\201\257.md" deleted file mode 100644 index 4183826a4fa..00000000000 --- "a/zh-cn/device-dev/guide/\351\205\215\347\275\256\350\256\276\345\244\207\346\217\217\350\277\260\344\277\241\346\201\257.md" +++ /dev/null @@ -1,64 +0,0 @@ -# 配置设备描述信息 - -配置文件路径:./drivers/adapter/khdf/linux/hcs/device\_info/device\_info.hcs - -device\_info.hcs中的信息主要提供给HDF框架使用,包含了Input模型各层驱动注册到HDF框架所必需的信息,开发者无特殊场景需求无需改动。各驱动层私有配置信息通过“deviceMatchAttr”字段与input\_config.hcs中的“match\_attr”相关内容进行匹配。 - -配置文件中与input模块相关的内容如下所示,相关字段的详细含义可以参考《[驱动配置](../driver/驱动开发.md)》: - -``` -input :: host { - hostName = "input_host"; - priority = 100; - device_input_manager :: device { // Input管理层设备描述信息 - device0 :: deviceNode { - policy = 2; // 向内核用户态均发布服务 - priority = 100; // input管理层驱动优先级默认为100 - preload = 0; // 加载该驱动 - permission = 0660; // 驱动创建设备节点权限 - moduleName = "HDF_INPUT_MANAGER"; // 与驱动入口的moduleName匹配 - serviceName = "hdf_input_host"; // HDF框架生成的节点名 - deviceMatchAttr = ""; // manager目前不需要私有配置,因此为空 - } - } - - device_hdf_touch :: device { // Input公共驱动层设备描述信息 - device0 :: deviceNode { - policy = 2; // 向内核用户态均发布服务 - priority = 120; // input公共驱动优先级默认为120 - preload = 0; // 加载该驱动 - permission = 0660; // 驱动创建设备节点权限 - moduleName = "HDF_TOUCH"; // 与驱动入口的moduleName匹配 - serviceName = "hdf_input_event1"; // HDF框架生成的节点名 - deviceMatchAttr = "touch_device1"; // 与私有配置信息中的“match_attr”字段保持一致 - } - } - - device_touch_chip :: device { // Input器件驱动层信息 - device0 :: deviceNode { - policy = 0; // 向内核用户态均不发布服务 - priority = 130; // input器件驱动优先级默认为130 - preload = 0; // 加载该驱动 - permission = 0660; // 驱动创建设备节点权限 - moduleName = "HDF_TOUCH_GT911"; // 与驱动入口的moduleName匹配 - serviceName = "hdf_touch_gt911_service";// HDF框架生成的节点名 - deviceMatchAttr = "zsj_gt911_5p5"; //与私有配置信息中的“match_attr”字段保持一致 - } - } - } -``` - -该配置文件中需要重点关注的字段有: - -“priority”决定驱动加载顺序; - -“preload”决定驱动是否加载; - -“moduleName ”需要与驱动注册入口处的“moduleName ”字段保持一致; - -“serviceName ”HDF框架依据该字段创建节点名; - -“deviceMatchAttr ”需要与私有配置信息中的“match\_attr”字段保持一致。 - -通过配置设备描述信息,使得HDF框架通过moduleName与注册至驱动入口的代码相匹配,保证了驱动的正常加载,通过priority字段保证了各驱动的加载顺序。 - diff --git "a/zh-cn/device-dev/guide/\351\252\214\350\257\201.md" "b/zh-cn/device-dev/guide/\351\252\214\350\257\201.md" deleted file mode 100755 index e9be36acdfb..00000000000 --- "a/zh-cn/device-dev/guide/\351\252\214\350\257\201.md" +++ /dev/null @@ -1,9 +0,0 @@ -# 验证 - -编译过程请参考《[Hi3861快速入门-源码编译](../quick-start/运行Hello-World.md)》,烧录过程请参考《[Hi3861快速入门-镜像烧录](../quick-start/WLAN联网.md)》。 - -完成以上两步后,按下RST键复位模组,可发现LED在周期性闪烁,与预期相符,验证完毕。 - -**图 1** LED闪烁图 -![](figures/LED闪烁图.gif "LED闪烁图") - diff --git a/zh-cn/device-dev/kernel/FAT-20.md b/zh-cn/device-dev/kernel/FAT-21.md similarity index 100% rename from zh-cn/device-dev/kernel/FAT-20.md rename to zh-cn/device-dev/kernel/FAT-21.md diff --git a/zh-cn/device-dev/kernel/LittleFS.md b/zh-cn/device-dev/kernel/LittleFS.md index 1f8ad2cec85..9b852560fb4 100644 --- a/zh-cn/device-dev/kernel/LittleFS.md +++ b/zh-cn/device-dev/kernel/LittleFS.md @@ -1,7 +1,7 @@ # LittleFS -- **[基本概念](基本概念-21.md)** +- **[基本概念](基本概念-22.md)** -- **[开发指导](开发指导-22.md)** +- **[开发指导](开发指导-23.md)** diff --git a/zh-cn/device-dev/kernel/Readme-CN.md b/zh-cn/device-dev/kernel/Readme-CN.md index 8b5a59ad1b9..83fb18bf946 100755 --- a/zh-cn/device-dev/kernel/Readme-CN.md +++ b/zh-cn/device-dev/kernel/Readme-CN.md @@ -1,7 +1,7 @@ # 内核使用指南 - [轻量和小型系统内核](轻量和小型系统内核.md) - - [轻量系统内核](轻量系统内核.md) + - [小型系统内核](小型系统内核.md) - [基础内核](基础内核.md) - [进程](进程.md) - [线程](线程.md) @@ -87,7 +87,7 @@ - [魔法键使用方法](魔法键使用方法.md) - [用户态异常信息说明](用户态异常信息说明.md) - - [小型系统内核](小型系统内核.md) + - [轻量系统内核](轻量系统内核.md) - [认识LiteOS-M内核](认识LiteOS-M内核.md) - [快速入门](快速入门.md) - [基础内核](基础内核-1.md) @@ -131,15 +131,15 @@ - [扩展组件](扩展组件.md) - [C++支持](C++支持.md) - - [CPUP](CPUP.md) - - [基本概念](基本概念-17.md) - - [开发指导](开发指导-18.md) + - [cpup](cpup-17.md) + - [基本概念](基本概念-18.md) + - [开发指导](开发指导-19.md) - - [文件系统](文件系统-19.md) - - [FAT](FAT-20.md) + - [文件系统](文件系统-20.md) + - [FAT](FAT-21.md) - [LittleFS](LittleFS.md) - - [基本概念](基本概念-21.md) - - [开发指导](开发指导-22.md) + - [基本概念](基本概念-22.md) + - [开发指导](开发指导-23.md) - [内核调测](内核调测.md) - [内存调测](内存调测.md) diff --git a/zh-cn/device-dev/kernel/cpup-17.md b/zh-cn/device-dev/kernel/cpup-17.md new file mode 100644 index 00000000000..e545d3f8430 --- /dev/null +++ b/zh-cn/device-dev/kernel/cpup-17.md @@ -0,0 +1,7 @@ +# cpup + +- **[基本概念](基本概念-18.md)** + +- **[开发指导](开发指导-19.md)** + + diff --git "a/zh-cn/device-dev/kernel/\345\212\250\346\200\201\345\206\205\345\255\230.md" "b/zh-cn/device-dev/kernel/\345\212\250\346\200\201\345\206\205\345\255\230.md" index 31361e2a8b0..05922df9f79 100644 --- "a/zh-cn/device-dev/kernel/\345\212\250\346\200\201\345\206\205\345\255\230.md" +++ "b/zh-cn/device-dev/kernel/\345\212\250\346\200\201\345\206\205\345\255\230.md" @@ -49,7 +49,7 @@ OpenHarmony LiteOS-M动态内存在TLSF算法的基础上,对区间的划分 OpenHarmony LiteOS-M的动态内存管理主要为用户提供以下功能,接口详细信息可以查看API参考。 -**表 1** 静态内存模块接口 +**表 1** 动态内存模块接口

功能分类

diff --git "a/zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-17.md" "b/zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-18.md" similarity index 100% rename from "zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-17.md" rename to "zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-18.md" diff --git "a/zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-21.md" "b/zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-22.md" similarity index 100% rename from "zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-21.md" rename to "zh-cn/device-dev/kernel/\345\237\272\346\234\254\346\246\202\345\277\265-22.md" diff --git "a/zh-cn/device-dev/kernel/\345\260\217\345\236\213\347\263\273\347\273\237\345\206\205\346\240\270.md" "b/zh-cn/device-dev/kernel/\345\260\217\345\236\213\347\263\273\347\273\237\345\206\205\346\240\270.md" index d2484399631..631bf65b2fe 100644 --- "a/zh-cn/device-dev/kernel/\345\260\217\345\236\213\347\263\273\347\273\237\345\206\205\346\240\270.md" +++ "b/zh-cn/device-dev/kernel/\345\260\217\345\236\213\347\263\273\347\273\237\345\206\205\346\240\270.md" @@ -1,15 +1,11 @@ -# 小型系统内核 +# 小型系统内核 -- **[认识LiteOS-M内核](认识LiteOS-M内核.md)** +- **[基础内核](基础内核.md)** -- **[快速入门](快速入门.md)** +- **[文件系统](文件系统.md)** -- **[基础内核](基础内核-1.md)** +- **[标准库](标准库.md)** -- **[扩展组件](扩展组件.md)** - -- **[内核调测](内核调测.md)** - -- **[附录](附录.md)** +- **[调测](调测.md)** diff --git "a/zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-18.md" "b/zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-19.md" similarity index 100% rename from "zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-18.md" rename to "zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-19.md" diff --git "a/zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-22.md" "b/zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-23.md" similarity index 100% rename from "zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-22.md" rename to "zh-cn/device-dev/kernel/\345\274\200\345\217\221\346\214\207\345\257\274-23.md" diff --git "a/zh-cn/device-dev/kernel/\346\211\251\345\261\225\347\273\204\344\273\266.md" "b/zh-cn/device-dev/kernel/\346\211\251\345\261\225\347\273\204\344\273\266.md" index dcfc826616e..83a675d0755 100644 --- "a/zh-cn/device-dev/kernel/\346\211\251\345\261\225\347\273\204\344\273\266.md" +++ "b/zh-cn/device-dev/kernel/\346\211\251\345\261\225\347\273\204\344\273\266.md" @@ -2,8 +2,8 @@ - **[C++支持](C++支持.md)** -- **[CPUP](CPUP.md)** +- **[cpup](cpup-17.md)** -- **[文件系统](文件系统-19.md)** +- **[文件系统](文件系统-20.md)** diff --git "a/zh-cn/device-dev/kernel/\346\226\207\344\273\266\347\263\273\347\273\237-19.md" "b/zh-cn/device-dev/kernel/\346\226\207\344\273\266\347\263\273\347\273\237-20.md" similarity index 99% rename from "zh-cn/device-dev/kernel/\346\226\207\344\273\266\347\263\273\347\273\237-19.md" rename to "zh-cn/device-dev/kernel/\346\226\207\344\273\266\347\263\273\347\273\237-20.md" index ba10ab39c51..2d702a8406a 100644 --- "a/zh-cn/device-dev/kernel/\346\226\207\344\273\266\347\263\273\347\273\237-19.md" +++ "b/zh-cn/device-dev/kernel/\346\226\207\344\273\266\347\263\273\347\273\237-20.md" @@ -197,7 +197,7 @@
-- **[FAT](FAT-20.md)** +- **[FAT](FAT-21.md)** - **[LittleFS](LittleFS.md)** diff --git "a/zh-cn/device-dev/kernel/\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237\345\206\205\346\240\270.md" "b/zh-cn/device-dev/kernel/\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237\345\206\205\346\240\270.md" index 0ae605881ae..5f5cb86ffa5 100644 --- "a/zh-cn/device-dev/kernel/\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237\345\206\205\346\240\270.md" +++ "b/zh-cn/device-dev/kernel/\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237\345\206\205\346\240\270.md" @@ -1,7 +1,7 @@ # 轻量和小型系统内核 -- **[轻量系统内核](轻量系统内核.md)** - - **[小型系统内核](小型系统内核.md)** +- **[轻量系统内核](轻量系统内核.md)** + diff --git "a/zh-cn/device-dev/kernel/\350\275\273\351\207\217\347\263\273\347\273\237\345\206\205\346\240\270.md" "b/zh-cn/device-dev/kernel/\350\275\273\351\207\217\347\263\273\347\273\237\345\206\205\346\240\270.md" index 290c4915bf9..c303a4991e6 100644 --- "a/zh-cn/device-dev/kernel/\350\275\273\351\207\217\347\263\273\347\273\237\345\206\205\346\240\270.md" +++ "b/zh-cn/device-dev/kernel/\350\275\273\351\207\217\347\263\273\347\273\237\345\206\205\346\240\270.md" @@ -1,11 +1,15 @@ -# 轻量系统内核 +# 轻量系统内核 -- **[基础内核](基础内核.md)** +- **[认识LiteOS-M内核](认识LiteOS-M内核.md)** -- **[文件系统](文件系统.md)** +- **[快速入门](快速入门.md)** -- **[标准库](标准库.md)** +- **[基础内核](基础内核-1.md)** -- **[调测](调测.md)** +- **[扩展组件](扩展组件.md)** + +- **[内核调测](内核调测.md)** + +- **[附录](附录.md)** diff --git "a/zh-cn/device-dev/porting/CMake\346\226\271\345\274\217\347\273\204\347\273\207\347\274\226\350\257\221\347\232\204\345\272\223\347\247\273\346\244\215.md" "b/zh-cn/device-dev/porting/CMake\346\226\271\345\274\217\347\273\204\347\273\207\347\274\226\350\257\221\347\232\204\345\272\223\347\247\273\346\244\215.md" index bb7404eca3e..7fac8fff750 100755 --- "a/zh-cn/device-dev/porting/CMake\346\226\271\345\274\217\347\273\204\347\273\207\347\274\226\350\257\221\347\232\204\345\272\223\347\247\273\346\244\215.md" +++ "b/zh-cn/device-dev/porting/CMake\346\226\271\345\274\217\347\273\204\347\273\207\347\274\226\350\257\221\347\232\204\345\272\223\347\247\273\346\244\215.md" @@ -227,7 +227,7 @@ CMake方式可通过指定工具链进行交叉编译,修改并编译该库, 1. 搭建OpenHarmony环境 - 以hi3518ev300为例,编译出OpenHarmony镜像,烧写到开发板,参考[开发Hi3518第一个示例程序](https://device.harmonyos.com/cn/docs/start/introduce/oem_camera_start_example-0000001051610926)。 + 以hi3518ev300为例,编译出OpenHarmony镜像,烧写到开发板,参考[开发Hi3518第一个示例程序](https://device.harmonyos.com/cn/docs/start/introduce/oem_development_ex_3518-0000001105528572)。 进入系统如下所示: @@ -306,7 +306,7 @@ CMake方式可通过指定工具链进行交叉编译,修改并编译该库,

将三方库加入工程的gn适配文件

-

openHarmony/third_party/double-conversion/build_thirdpaty.py

+

openHarmony/third_party/double-conversion/build_thirdparty.py

GN调用shell命令脚本文件,由上面GN文件将相关命令传入,实现GN转CMake

diff --git "a/zh-cn/device-dev/quick-start/Hi3516\345\274\200\345\217\221\346\235\277.md" "b/zh-cn/device-dev/quick-start/Hi3516\345\274\200\345\217\221\346\235\277.md" index 28c01f99ccc..1a6f14d262b 100755 --- "a/zh-cn/device-dev/quick-start/Hi3516\345\274\200\345\217\221\346\235\277.md" +++ "b/zh-cn/device-dev/quick-start/Hi3516\345\274\200\345\217\221\346\235\277.md" @@ -1,4 +1,4 @@ -# Hi3516开发板 +# Hi3516开发板 - **[安装开发板环境](安装开发板环境-2.md)** diff --git "a/zh-cn/device-dev/quick-start/Hi3516\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" "b/zh-cn/device-dev/quick-start/Hi3516\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" index 3c6ebbc875e..3e24c43eb01 100755 --- "a/zh-cn/device-dev/quick-start/Hi3516\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" +++ "b/zh-cn/device-dev/quick-start/Hi3516\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" @@ -1,4 +1,4 @@ -# Hi3516开发板介绍 +# Hi3516开发板介绍 - [简介](#section26131214194212) - [开发板规格](#section15192203316533) diff --git "a/zh-cn/device-dev/quick-start/Hi3518\345\274\200\345\217\221\346\235\277.md" "b/zh-cn/device-dev/quick-start/Hi3518\345\274\200\345\217\221\346\235\277.md" index c7a3daa41bb..61807ea64d5 100755 --- "a/zh-cn/device-dev/quick-start/Hi3518\345\274\200\345\217\221\346\235\277.md" +++ "b/zh-cn/device-dev/quick-start/Hi3518\345\274\200\345\217\221\346\235\277.md" @@ -1,4 +1,4 @@ -# Hi3518开发板 +# Hi3518开发板 - **[安装开发板环境](安装开发板环境-4.md)** diff --git "a/zh-cn/device-dev/quick-start/Hi3518\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" "b/zh-cn/device-dev/quick-start/Hi3518\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" index d072777d4e1..1f77aeac075 100755 --- "a/zh-cn/device-dev/quick-start/Hi3518\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" +++ "b/zh-cn/device-dev/quick-start/Hi3518\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" @@ -1,4 +1,4 @@ -# Hi3518开发板介绍 +# Hi3518开发板介绍 - [简介](#section14815247616) - [开发板规格](#section765112478446) diff --git "a/zh-cn/device-dev/quick-start/Hi3861\345\274\200\345\217\221\346\235\277.md" "b/zh-cn/device-dev/quick-start/Hi3861\345\274\200\345\217\221\346\235\277.md" index 5fa74713ecf..f6c5f5833f1 100755 --- "a/zh-cn/device-dev/quick-start/Hi3861\345\274\200\345\217\221\346\235\277.md" +++ "b/zh-cn/device-dev/quick-start/Hi3861\345\274\200\345\217\221\346\235\277.md" @@ -1,4 +1,4 @@ -# Hi3861开发板 +# Hi3861开发板 - **[安装开发板环境](安装开发板环境.md)** diff --git "a/zh-cn/device-dev/quick-start/Hi3861\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" "b/zh-cn/device-dev/quick-start/Hi3861\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" index 8eb13ecf8ba..ac6a21df22f 100755 --- "a/zh-cn/device-dev/quick-start/Hi3861\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" +++ "b/zh-cn/device-dev/quick-start/Hi3861\345\274\200\345\217\221\346\235\277\344\273\213\347\273\215.md" @@ -1,4 +1,4 @@ -# Hi3861开发板介绍 +# Hi3861开发板介绍 - [简介](#section19352114194115) - [资源和约束](#section82610215014) @@ -19,7 +19,7 @@ Hi3861 WLAN模组是一片大约2cm\*5cm大小的开发板,是一款高度集 **图 2** Hi3861底板外观图 -![](figures/zh-cn_image_0000001119945810.png) +![](figures/zh-cn_image_0000001174350615.png) - RF电路包括功率放大器PA(Power Amplifier)、低噪声放大器LNA(Low Noise Amplifier)、RF Balun、天线开关以及电源管理等模块;支持20MHz标准带宽和5MHz/10MHz窄带宽,提供最大72.2Mbit/s物理层速率。 - Hi3861 WLAN基带支持正交频分复用(OFDM)技术,并向下兼容直接序列扩频(DSSS)和补码键控(CCK)技术,支持IEEE 802.11 b/g/n协议的各种数据速率。 @@ -29,7 +29,7 @@ Hi3861 WLAN模组是一片大约2cm\*5cm大小的开发板,是一款高度集 **图 3** Hi3861功能框图 - ![](figures/zh-cn_image_0000001105524466.png) + ![](figures/zh-cn_image_0000001128311066.png) ## 资源和约束 diff --git a/zh-cn/device-dev/quick-start/Readme-CN.md b/zh-cn/device-dev/quick-start/Readme-CN.md index 90dd84f1a6a..69991d66bec 100644 --- a/zh-cn/device-dev/quick-start/Readme-CN.md +++ b/zh-cn/device-dev/quick-start/Readme-CN.md @@ -1,6 +1,5 @@ # 快速入门 -- [导读](导读.md) - [轻量和小型系统入门](轻量和小型系统入门.md) - [概述](概述.md) - [了解开发板](了解开发板.md) @@ -33,12 +32,10 @@ - [常见问题](常见问题-6.md) - [标准系统入门](标准系统入门.md) - - [概述](概述-7.md) - - [环境搭建](环境搭建.md) - - [概述](概述-8.md) - - [Windows开发环境准备](Windows开发环境准备-9.md) - - [Ubuntu编译环境准备](Ubuntu编译环境准备-10.md) - - [常见问题](常见问题-11.md) - - - [开发步骤](开发步骤-12.md) + - [入门介绍](入门介绍.md) + - [Windows开发环境准备](Windows开发环境准备-7.md) + - [搭建Ubuntu环境及编译(Docker方式)](搭建Ubuntu环境及编译(Docker方式).md) + - [搭建Ubuntu环境及编译(安装包方式)](搭建Ubuntu环境及编译(安装包方式).md) + - [镜像烧录](镜像烧录.md) + - [常见问题](常见问题-8.md) diff --git "a/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207-10.md" "b/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207-10.md" deleted file mode 100644 index e0b8306a657..00000000000 --- "a/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207-10.md" +++ /dev/null @@ -1,63 +0,0 @@ -# Ubuntu编译环境准备 - -- [方式一:Docker方式准备Ubuntu编译环境](#section1643363843714) - - [获取标准系统源码](#section58448331029) - - [Docker环境安装使用](#section22916211916) - -- [方式二:安装包方式准备Ubuntu编译环境](#section25961010189) - - [安装依赖工具](#section109262032104819) - - [获取标准系统源码](#section6325556113718) - - [获取prebuilts](#section16453104219209) - - -OpenHarmony为开发者提供了Docker和安装包两种方式来搭建Ubuntu编译环境。接下来将分别针对这两种方式进行介绍。 - -## 方式一:Docker方式准备Ubuntu编译环境 - -OpenHarmony标准系统为开发者提供的Docker环境已经将对应的编译工具链进行了封装,开发者可省略对应工具的安装。具体Docker使用分为如下几步: - -1. 获取标准系统源码。 -2. Docker环境安装使用。 - -### 获取标准系统源码 - -获取[标准系统源码](https://repo.huaweicloud.com/harmonyos/os/2.0/code-2.0-canary.tar.gz)。此处获取的源码为静态打包代码,如想获取码云社区最新源码,请采用[repo方式获取](../get-code/源码获取.md)。 - -### Docker环境安装使用 - -具体Docker环境的安装和使用请参考[Docker环境安装使用指导](../get-code/获取工具.md)。 - -## 方式二:安装包方式准备Ubuntu编译环境 - -安装包方式具体操作分为如下几步: - -1. 安装依赖工具。 -2. 获取标准系统源码。 -3. 获取prebuilts。 - -### 安装依赖工具 - -安装命令如下: - -``` -sudo apt-get install binutils git-core git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 -``` - ->![](public_sys-resources/icon-caution.gif) **注意:** ->以上安装命令适用于Ubuntu18.04,其他版本请根据安装包名称采用对应的安装命令。如果是Ubuntu18.04以上版本需要安装python2.7 和 python-minimal。 - -### 获取标准系统源码 - -获取[标准系统源码](https://repo.huaweicloud.com/harmonyos/os/2.0/code-2.0-canary.tar.gz)。此处获取的源码为静态打包代码,如想获取码云社区最新源码,请采用[repo方式获取](../get-code/源码获取.md)。 - -### 获取prebuilts - -1. 在源码根目录下执行脚本。 - - ``` - build/prebuilts_download.sh - ``` - - 下载的prebuilts二进制默认存放在与OpenHarmony同目录下的OpenHarmony\_2.0\_canary\_prebuilts下。 - - diff --git "a/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207-9.md" "b/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207-9.md" deleted file mode 100644 index 57bbca56858..00000000000 --- "a/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207-9.md" +++ /dev/null @@ -1,147 +0,0 @@ -# Ubuntu编译环境准备 - -- [Docker方式准备Ubuntu编译环境](#section1643363843714) - - [获取系统源码](#section58448331029) - - [Docker环境安装使用](#section22916211916) - -- [安装包方式准备Ubuntu编译环境](#section25961010189) - - [安装依赖工具](#section109262032104819) - - [获取标准系统源码](#section6325556113718) - - [获取prebuilts](#section16453104219209) - - [配置NodeJS环境和获取Node\_modules依赖包](#section133741330192119) - - [安装hc-gen工具](#section149281248182116) - - -OpenHarmony为开发者提供了Docker和安装包两种方式来搭建Ubuntu编译环境。接下来将分别针对这两种方式进行介绍。 - -## Docker方式准备Ubuntu编译环境 - -OpenHarmony标准系统为开发者提供的Docker环境已经将对应的编译工具链进行了封装,开发者可省略对应工具的安装。具体Docker使用分为如下几步: - -1. 获取系统源码。 -2. Docker环境安装使用。 - -### 获取系统源码 - -具体获取方式请参考[获取标准系统源码](../get-code/源码获取.md)。 - -### Docker环境安装使用 - -具体Docker环境的安装和使用请参考[Docker环境安装使用指导](../get-code/获取工具.md)。 - -## 安装包方式准备Ubuntu编译环境 - -安装包方式具体操作分为如下几步: - -1. 安装依赖工具。 -2. 获取系统源码。 -3. 获取prebuilts。 -4. 配置NodeJS环境和获取Node\_modules依赖包。 -5. 安装hc-gen工具。 - -### 安装依赖工具 - -安装命令如下: - -``` -sudo apt-get install binutils git-core git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 python2.7 python-minimal -``` - ->![](public_sys-resources/icon-note.gif) **说明:** ->以上安装命令适用于Ubuntu18.04,其他版本请根据安装包名称采用对应的安装命令。 - -### 获取标准系统源码 - -具体获取方式请参考[获取标准系统源码](../get-code/源码获取.md)。 - -### 获取prebuilts - -1. 切换到OpenHarmony工作目录。 - - ``` - cd OpenHarmony - ``` - -2. 下载脚本。 - - ``` - curl https://gitee.com/landwind/script-tools/raw/master/Shell/OpenHarmony/OpenHarmony_2.0_canary_prebuilts_download.sh >./prebuilts_download.sh - ``` - -3. 下载并解压prebuilts压缩包到指定位置。 - - ``` - bash ./prebuilts_download.sh - ``` - - 二进制默认存放在与OpenHarmony同目录下的OpenHarmony\_2.0\_canary\_prebuilts下,如需修改默认位置,请编辑prebuilts\_download.sh修改bin\_dir值。 - -4. 切换到之前的目录。 - - ``` - cd - - ``` - - -### 配置NodeJS环境和获取Node\_modules依赖包 - -为了编译JS Framework,开发者需要在Linux服务器下载配置NodeJS(注意:步骤中OpenHarmony目录指代当前工程的根目录,可自定义),具体操作如下: - -1. 开发者在Linux服务器下载Nodejs。 - - ``` - mkdir -p OpenHarmony/prebuilts/build-tools/common/nodejs #创建nodejs目录 - cd OpenHarmony/prebuilts/build-tools/common/nodejs #进入nodejs目录 - wget --no-check-certificate https://nodejs.org/download/release/v12.18.4/node-v12.18.4-linux-x64.tar.gz #下载nodejs - tar -zxvf node-v12.18.4-linux-x64.tar.gz #解压nodejs压缩包 - cd - #切换到之前的目录 - ``` - -2. 配置NodeJS环境变量,下载node\_modules包。 - - ``` - cd OpenHarmony/third_party/jsframework #进入jsframework目录 - export PATH=../../prebuilts/build-tools/common/nodejs/node-v12.18.4-linux-x64/bin:${PATH} #设置NodeJS环境变量 - npm install #下载node_modules包 - cd - #切换到之前的目录 - ``` - -3. 把下载的node\_modules包放入OpenHarmony代码的prebuilts/build-tools/common/js-framework目录下。 - - ``` - mkdir -p OpenHarmony/prebuilts/build-tools/common/js-framework #创建js-framework目录 - cp -rp OpenHarmony/third_party/jsframework/node_modules OpenHarmony/prebuilts/build-tools/common/js-framework/ - ``` - - -### 安装hc-gen工具 - -hc-gen用于进行驱动编译,具体安装步骤如下: - -1. 打开Linux编译服务器终端。 -2. [下载hc-gen工具](https://repo.huaweicloud.com/harmonyos/compiler/hc-gen/0.65/linux/hc-gen-0.65-linux.tar)。 -3. 解压hc-gen安装包到Linux服务器\~/hc-gen路径下。 - - ``` - tar -xvf hc-gen-0.65-linux.tar -C ~/ - ``` - -4. 设置环境变量。 - - ``` - vim ~/.bashrc - ``` - - 将以下命令拷贝到.bashrc文件的最后一行,保存并退出。 - - ``` - export PATH=~/hc-gen:$PATH - ``` - -5. 生效环境变量。 - - ``` - source ~/.bashrc - ``` - - diff --git "a/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207.md" "b/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207.md" index 073e04bbc4b..e893fad747e 100755 --- "a/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207.md" +++ "b/zh-cn/device-dev/quick-start/Ubuntu\347\274\226\350\257\221\347\216\257\345\242\203\345\207\206\345\244\207.md" @@ -1,4 +1,4 @@ -# Ubuntu编译环境准备 +# Ubuntu编译环境准备 - [获取软件](#section1897711811517) - [获取源码](#section1545225464016) @@ -24,9 +24,9 @@ 6. 安装hb >![](public_sys-resources/icon-notice.gif) **须知:** ->- 针对Ubuntu编译环境我们提供了对应的Docker,该Docker封装了相关编译工具,选择使用Docker的开发者可跳过此章节。Docker使用可参考[Docker方式获取编译环境](../get-code/获取工具.md)。 +>- 针对Ubuntu编译环境我们提供了对应的Docker,该Docker封装了相关编译工具,选择使用Docker的开发者可跳过此章节。Docker使用可参考[Docker方式获取编译环境](../get-code/Docker编译环境.md)。 >- 通常系统默认安装samba、vim等常用软件,需要做适当适配以支持Linux服务器与Windows工作台之间的文件共享。 ->- 想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建使用指南](../subsystems/编译构建概述.md)。 +>- 想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建使用指南](../subsystems/编译构建.md)。 ## 获取软件 diff --git "a/zh-cn/device-dev/quick-start/WLAN\350\201\224\347\275\221.md" "b/zh-cn/device-dev/quick-start/WLAN\350\201\224\347\275\221.md" index a0cacdf9654..ab20f083f91 100755 --- "a/zh-cn/device-dev/quick-start/WLAN\350\201\224\347\275\221.md" +++ "b/zh-cn/device-dev/quick-start/WLAN\350\201\224\347\275\221.md" @@ -1,4 +1,4 @@ -# WLAN联网 +# WLAN联网 - [源码编译](#section191121332125319) - [镜像烧录](#section19458165166) @@ -10,7 +10,7 @@ 本节描述如何在Linux服务器上进行WLAN模组版本的编译。 -如果Linux编译环境通过Docker方式安装,具体编译过程请参见[Docker方式获取编译环境](../get-code/获取工具.md)的编译操作。如果Linux编译环境通过软件包方式安装,请参考如下步骤。 +如果Linux编译环境通过Docker方式安装,具体编译过程请参见[Docker方式获取编译环境](../get-code/Docker编译环境.md)的编译操作。如果Linux编译环境通过软件包方式安装,请参考如下步骤。 1. 打开DevEco Device Tool工具,点击“View \> Terminal”,进入终端界面。 @@ -19,7 +19,7 @@ ![](figures/1.png) - 在终端界面使用ssh命令连接linux服务器,如“ssh _user_@_ipaddr_”。 + 在终端界面使用ssh命令连接linux服务器,如“ssh user@ipaddr”。 **图 2** 终端界面示意图 @@ -63,17 +63,17 @@ Hi3861 WLAN模组的镜像烧录可以通过OpenHarmony IDE工具DevEco完成,工具的基本使用请参考[DevEco Device Tool使用指南](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905),烧录过程包含如下步骤。 -1. 请连接好电脑和待烧录开发板,需要连接USB口,具体可参考[Hi3861开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_wifi_start_des-0000001050168548)。 +1. 请连接好电脑和待烧录开发板,需要连接USB口,具体可参考[Hi3861开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_minitinier_des_3861-0000001105041324)。 2. 打开电脑的设备管理器,查看并记录对应的串口号。 >![](public_sys-resources/icon-note.gif) **说明:** >如果对应的串口异常,请根据[Hi3861系列开发板串口驱动安装](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3861-drivers-0000001058153433)安装USB转串口的驱动程序。 - ![](figures/zh-cn_image_0000001073388838.png) + ![](figures/zh-cn_image_0000001128311118.png) 3. 打开DevEco Device Tool,在Projects中,点击**Settings**打开工程配置界面。 - ![](figures/zh-cn_image_0000001078404538.png) + ![](figures/zh-cn_image_0000001128311116.png) 4. 在“Partition Configuration”页签,设置待烧录文件信息,默认情况下,DevEco Device Tool已针对Hi3861系列开发板进行适配,无需单独修改。 5. 在“hi3861”页签,设置烧录选项,包括upload\_port、upload\_partitions和upload\_protocol。 @@ -82,20 +82,20 @@ Hi3861 WLAN模组的镜像烧录可以通过OpenHarmony IDE工具DevEco完成, - upload\_protocol:选择烧录协议,固定选择“burn-serial”。 - upload\_partitions:选择待烧录的文件,默认选择hi3861\_app。 - ![](figures/zh-cn_image_0000001078244328.png) + ![](figures/zh-cn_image_0000001128470922.png) 6. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 7. 打开工程文件,在DevEco Device Tool界面的“PROJECT TASKS”中,点击hi3861下的**Upload**按钮,启动烧录。 - ![](figures/zh-cn_image_0000001163569275.png) + ![](figures/zh-cn_image_0000001174270749.png) 8. 启动烧录后,显示如下提示信息时,请按开发板上的RST按钮重启开发板。 - ![](figures/zh-cn_image_0000001074285712.png) + ![](figures/zh-cn_image_0000001174270751.png) 9. 重新上电后,启动烧录,界面提示如下信息时,表示烧录成功。 - ![](figures/zh-cn_image_0000001074445364.png) + ![](figures/zh-cn_image_0000001174350669.png) ## WLAN模组联网 diff --git "a/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-9.md" "b/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-7.md" similarity index 99% rename from "zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-9.md" rename to "zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-7.md" index 1922601478a..e4fd814993e 100644 --- "a/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-9.md" +++ "b/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-7.md" @@ -1,4 +1,4 @@ -# Windows开发环境准备 +# Windows开发环境准备 - [获取软件](#zh-cn_topic_0000001058091994_section1483143015558) - [安装Visual Studio Code](#zh-cn_topic_0000001058091994_section71401018163318) diff --git "a/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-8.md" "b/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-8.md" deleted file mode 100644 index 6cb31af41c0..00000000000 --- "a/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207-8.md" +++ /dev/null @@ -1,183 +0,0 @@ -# Windows开发环境准备 - -- [获取软件](#zh-cn_topic_0000001058091994_section1483143015558) -- [安装Visual Studio Code](#zh-cn_topic_0000001058091994_section71401018163318) -- [安装Python](#zh-cn_topic_0000001058091994_section16266553175320) -- [安装Node.js](#zh-cn_topic_0000001058091994_section5353233124511) -- [安装hpm](#zh-cn_topic_0000001058091994_section173054793610) -- [安装DevEco Device Tool插件](#zh-cn_topic_0000001058091994_section4336315185716) - -系统要求:Windows 10 64位系统。 - -DevEco Device Tool以插件方式提供,基于Visual Studio Code进行扩展,安装分为如下几步: - -1. 安装Visual Studio Code -2. 安装Python -3. 安装Node.js -4. 安装hpm -5. 安装DevEco Device Tool插件 - -## 获取软件 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

工具名称

-

用途说明

-

版本要求

-

获取渠道

-

Visual Studio Code

-

代码编辑工具

-

V1.53及以上 64位版本。

-

https://code.visualstudio.com/Download

-

Python

-

编译构建工具

-

3.7.4-3.8.x 64位版本

-

https://www.python.org/downloads/

-

Node.js

-

提供npm环境

-

v12.0.0及以上 64位版本

-

https://nodejs.org/zh-cn/download/

-

hpm

-

包管理工具

-

最新版

-

执行如下npm命令进行安装,npm自动下载最新版本

-
npm install -g @ohos/hpm-cli
-

DevEco Device Tool

-

OpenHarmony源码的编译、烧录、调试插件工具

-

v2.2 Beta1

-

https://device.harmonyos.com/cn/ide#download

-

下载前,请使用华为开发者帐号登录,如未注册,请先注册华为开发者帐号

-
- -## 安装Visual Studio Code - ->![](public_sys-resources/icon-note.gif) **说明:** ->如果已安装Visual Studio Code,打开命令行工具,输入**code --version**命令,检查版本号是否为1.53及以上版本;可以正常返回版本号,说明环境变量设置也正确。 - -1. 双击Visual Studio Code软件包进行安装。安装过程中,请勾选“添加到PATH(重启后生效)”。 - - ![](figures/zh-cn_image_0000001057335403.png) - -2. 安装完成后,重启计算机,使Visual Studio Code的环境变量生效。 -3. 打开命令行工具,输入**code --version**命令,可以正常显示版本号说明安装成功。 - -## 安装Python - -1. 双击Python安装包进行安装,勾选“**Add Python xx to PATH**”,然后点击**Install Now**开始安装。 - - ![](figures/zh-cn_image_0000001096154076.png) - -2. 等待安装完成后,点击**Close**。 - - ![](figures/zh-cn_image_0000001142794291.png) - -3. 打开命令行工具,输入python --version,检查安装结果。 - - ![](figures/zh-cn_image_0000001143154485.png) - -4. 在命令行工具中,分别执行如下命令设置pip源,用于后续安装DevEco Device Tool过程中下载依赖的组件包。 - - ``` - pip config set global.trusted-host repo.huaweicloud.com - pip config set global.index-url https://repo.huaweicloud.com/repository/pypi/simple - pip config set global.timeout 120 - ``` - - -## 安装Node.js - ->![](public_sys-resources/icon-note.gif) **说明:** ->如果已安装Node.js,打开命令行工具,输入**node -v**命令,检查版本号是否为12.0.0及以上版本。 - -1. 点击下载后的软件包进行安装,全部按照默认设置点击**Next**,直至**Finish**。安装过程中,Node.js会自动在系统的path环境变量中配置node.exe的目录路径。 -2. 重新打开命令行工具,输入“node -v“命令,能正常查询Node.js的版本号,说明Node.js安装成功。 - - ![](figures/zh-cn_image_0000001056814287.png) - - -## 安装hpm - -该方式需先确保**Node.js**安装成功。 - -在安装hpm前,请检查网络连接状态,如果网络不能直接访问Internet,则需要通过代理服务器才可以访问。这种情况下,需要先[设置npm代理](https://device.harmonyos.com/cn/docs/ide/user-guides/npm_proxy-0000001054491032),才能安装hpm。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->如果已安装hpm,可以执行**npm update -g @ohos/hpm-cli**命令升级hpm至最新版本。 - -1. 建议将npm源配置为国内镜像,例如设置为华为云镜像源。 - - ``` - npm config set registry https://repo.huaweicloud.com/repository/npm/ - ``` - -2. 打开命令行工具,执行如下命令安装最新版本hpm。 - - ``` - npm install -g @ohos/hpm-cli - ``` - - ![](figures/zh-cn_image_0000001073840162.png) - -3. 安装完成后,执行如下命令(V为大写字母)检查hpm安装结果。 - - ``` - hpm -V - ``` - - ![](figures/zh-cn_image_0000001100641602.png) - - -## 安装DevEco Device Tool插件 - -安装DevEco Device Tool插件,**主机的用户名不能包含中文字符**,否则可能导致运行出现错误。 - -DevEco Device Tool正常运行需要依赖于C/C++和CodeLLDB插件,在安装完DevEco Device Tool后,会自动从Visual Studio Code的插件市场安装C/C++和CodeLLDB插件。因此,在安装DevEco Device Tool前,请检查Visual Studio Code的网络连接状态,如果网络不能直接访问Internet,则需要通过代理服务器才可以访问,请先[Visual Studio Code代理设置](https://device.harmonyos.com/cn/docs/ide/user-guides/vscode_proxy-0000001074231144)。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->安装DevEco Device Tool时,请先关闭Visual Studio Code。 - -1. 解压DevEco Device Tool插件压缩包,双击安装包程序进行安装。 -2. 安装过程中,会自动安装DevEco Device Tool所需的依赖文件(如C/C++和CodeLLDB插件)和执行程序。 - - ![](figures/zh-cn_image_0000001072468991.png) - -3. 安装完成后,会自动关闭命令行工具窗口。 -4. 启动Visual Studio Code,点击左侧的![](figures/zh-cn_image_0000001072757874.png)按钮,检查INSTALLED中,是否已成功安装C/C++、CodeLLDB和DevEco Device Tool。 - - >![](public_sys-resources/icon-note.gif) **说明:** - >如果C/C++和CodeLLDB插件安装不成功,则DevEco Device Tool不能正常运行,解决方法,详细请参考:[离线安装C/C++和CodeLLDB插件](https://device.harmonyos.com/cn/docs/ide/user-guides/offline_plugin_install-0000001074376846)。 - - ![](figures/zh-cn_image_0000001142802505.png) - - diff --git "a/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207.md" "b/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207.md" index f70d3cce73f..cffea83cad9 100755 --- "a/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207.md" +++ "b/zh-cn/device-dev/quick-start/Windows\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207.md" @@ -1,4 +1,4 @@ -# Windows开发环境准备 +# Windows开发环境准备 - [获取软件](#zh-cn_topic_0000001058091994_section1483143015558) - [安装Visual Studio Code](#zh-cn_topic_0000001058091994_section71401018163318) @@ -86,7 +86,7 @@ DevEco Device Tool以插件方式提供,基于Visual Studio Code进行扩展 1. 双击Visual Studio Code软件包进行安装。安装过程中,请勾选“添加到PATH(重启后生效)”。 - ![](figures/zh-cn_image_0000001057335403.png) + ![](figures/zh-cn_image_0000001174350653.png) 2. 安装完成后,重启计算机,使Visual Studio Code的环境变量生效。 3. 打开命令行工具,输入**code --version**命令,可以正常显示版本号说明安装成功。 @@ -95,15 +95,15 @@ DevEco Device Tool以插件方式提供,基于Visual Studio Code进行扩展 1. 双击Python安装包进行安装,勾选“**Add Python 3.8 to PATH**”,然后点击**Install Now**开始安装。 - ![](figures/zh-cn_image_0000001168817327.png) + ![](figures/zh-cn_image_0000001128470908.png) 2. 等待安装完成后,点击**Close**。 - ![](figures/zh-cn_image_0000001142794291.png) + ![](figures/zh-cn_image_0000001128311104.png) 3. 打开命令行工具,输入python --version,检查安装结果。 - ![](figures/zh-cn_image_0000001122419072.png) + ![](figures/zh-cn_image_0000001174350655.png) 4. 在命令行工具中,分别执行如下命令设置pip源,用于后续安装DevEco Device Tool过程中下载依赖的组件包。 @@ -122,7 +122,7 @@ DevEco Device Tool以插件方式提供,基于Visual Studio Code进行扩展 1. 点击下载后的软件包进行安装,全部按照默认设置点击**Next**,直至**Finish**。安装过程中,Node.js会自动在系统的path环境变量中配置node.exe的目录路径。 2. 重新打开命令行工具,输入“node -v“命令,能正常查询Node.js的版本号,说明Node.js安装成功。 - ![](figures/zh-cn_image_0000001056814287.png) + ![](figures/zh-cn_image_0000001128311096.png) ## 安装hpm @@ -146,7 +146,7 @@ DevEco Device Tool以插件方式提供,基于Visual Studio Code进行扩展 npm install -g @ohos/hpm-cli ``` - ![](figures/zh-cn_image_0000001073840162.png) + ![](figures/zh-cn_image_0000001128311100.png) 3. 安装完成后,执行如下命令(V为大写字母)检查hpm安装结果。 @@ -154,7 +154,7 @@ DevEco Device Tool以插件方式提供,基于Visual Studio Code进行扩展 hpm -V ``` - ![](figures/zh-cn_image_0000001100641602.png) + ![](figures/zh-cn_image_0000001174270735.png) ## 安装DevEco Device Tool插件 @@ -169,14 +169,14 @@ DevEco Device Tool正常运行需要依赖于C/C++和CodeLLDB插件,在安装 1. 解压DevEco Device Tool插件压缩包,双击安装包程序进行安装。 2. 安装过程中,会自动安装DevEco Device Tool所需的依赖文件(如C/C++和CodeLLDB插件)和执行程序。 - ![](figures/zh-cn_image_0000001072468991.png) + ![](figures/zh-cn_image_0000001128470902.png) 3. 安装完成后,会自动关闭命令行工具窗口。 -4. 启动Visual Studio Code,点击左侧的![](figures/zh-cn_image_0000001072757874.png)按钮,检查INSTALLED中,是否已成功安装C/C++、CodeLLDB和DevEco Device Tool。 +4. 启动Visual Studio Code,点击左侧的![](figures/zh-cn_image_0000001174350651.png)按钮,检查INSTALLED中,是否已成功安装C/C++、CodeLLDB和DevEco Device Tool。 >![](public_sys-resources/icon-note.gif) **说明:** >如果C/C++和CodeLLDB插件安装不成功,则DevEco Device Tool不能正常运行,解决方法,详细请参考:[离线安装C/C++和CodeLLDB插件](https://device.harmonyos.com/cn/docs/ide/user-guides/offline_plugin_install-0000001074376846)。 - ![](figures/zh-cn_image_0000001142802505.png) + ![](figures/zh-cn_image_0000001174270727.png) diff --git a/zh-cn/device-dev/quick-start/figures/1-18.png b/zh-cn/device-dev/quick-start/figures/1-18.png deleted file mode 100644 index 8ed1535a6bc23dc5bd02fbd5a3f1392f46ad8d83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14927 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 HKY8_E{H)IK diff --git "a/zh-cn/device-dev/quick-start/figures/3516\346\255\243\351\235\242-16.png" "b/zh-cn/device-dev/quick-start/figures/3516\346\255\243\351\235\242-16.png" new file mode 100644 index 0000000000000000000000000000000000000000..6975fb5fef92e35dec2de84b7e7035a39794bdf4 GIT binary patch literal 420903 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

-`862MRvZSD;N654l!^>als0f^x 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

71! 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

IVDh^+yE0C+yR=9@hWc1g-1sg-5To7azISo_px3 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 yb|Tc%8(D=XJ*l(7@0%JkU_ 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�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

iO6eSEhz+q{406_oWx{h&6; zCXT4@-gx*}jvPKA7qNcbnvJNdGGu(qIAHNL*}8dLKQL|Hv=yNGiCo0pQ5wyI*1MjR&tQ zbc`%oEFZl4fs8I)As&>?)c909C-t&p%QjrAchp19Cbg-6JKo!ayY|alZ#lTP!KCNRQLT5IPT~Y+-1GwM7J$f1UyT7wX0j{#7OoCoK`>+9u zQ4e@?^YIQW1aQ^L1w0e);8-UQAC;GGy(q80`an(}JuW=}Q3e620U(~hx=+9Rv8-A? ziu$1p@75xzfK9S_)jIk9N1w_GK!0y@oA~hVEylUHpV3lWkCL2xs6a~buB%{kN|d+v z-gr~?qTbrOeV07A`-=8UZfk5tJ)bV~2It7dv*+b8Aaf6py#=CFR+6{ouLkfLI4;+#?GY1sv_>R#4H+T*ST{;W~>U!=sCk@Z5qb$7h z)H6p&bG=)P_s)9VV!eAPXPx_9M(86zs&HJ&**D*DA+KO)A6Cx3pfGHPp^tqrmn;~X zgucn&vpv~O~c@^cR`3sxF1xrd{RF|1C z)ye>RFbvt`udcpD>Kj_65-*Wr03l({gykeVCIErpgWU8&$l z$Xg8Pqu8vIfn7$NCZ7ucd-W)0BOIY)YX287K!Im82p z74QM}IK%*lwRxTNlN*Fph2}x3q zm)C`p$K|89-;~ckcuyX_bVu%8zb<#LU6q>`&dHV2C*;EM!*cP&VcENNlg#h$lZFaF zCia`3&EOT8Y7C8!Z�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�ybbv`ikfYB+FVKz=V)D%4_bUz>V%z9+! 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

XO1TKKzAnd8WxP?$M1cSli7c77=u+z1XME8a9 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 HDWM4fx#xy0 diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001113969536.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001113969536.png deleted file mode 100644 index baac7b26450b8bc195a0db0bb3bb41119c0d9828..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85763 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 JRq_^L{~t15_CNpt diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001114129426.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001114129426.png deleted file mode 100644 index c5548cb227bd024b49aa3adba0a20869581448e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 113968 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%0AM&kYJncedKVMDBEkhKai zHQwmPlkV9PGI-ToNRdx~JNW(%rSJ93sH+0WM4zU^iv1 zocc2i;g-;~RLMV@0?Um7{H1Jx{>b=*P5%3ZN~{>+ovwXw%U>f6qX?Ty^t@;lpy>(8RKX7H)|?K)NI@JWYo(WjsCJ5;*B(W{TrOGq0unI@5=#Gi%Dop}n$=>g z$uz)6@(yX zT4N1IxZB>1;Oy>$dnDwL>kF@4OQnEzdQVD0A80TTOH|6DThWWXF3@C!fJ6Pm?UkKx z42~~4%fjPY4ZNijVOaf2$^%%n$oZO+gi{8Pr( zd2mjVJMu#q_tcSJD(TqJ!uX|-n|j71{n`5Z1P7>qtAP8@%)gbycN6Gi^cJPd(!{JT zB}U~J>bo6M*C2So=O-K@f6I(`{IrYSvnr?)koKM+d;wJwSD%ih*aHRy{)3xl?ph0J zJ#x7I&)l3%1(RGnhJ<3+403-K2QgJ`d(TCCPve0+Y?pw0$AeYL(3W>Mp>I6cV2vJc*M`qRe;Pa72%dTbIs^xLHtrHfl zIJTo{7|5`&_-E4E) z;&r@4M=-T8VXI1lAuQb9iU729WLH9AW^UFMK|TyyXF8w1bKCd5 z8dYaxaRPciH*W9x^#}a^#Jw2*$`*U=2x25l2vV)ZQ>ifxk zY`A_MgLqvpz6~D#v_T)UT)5|Sz8vv+IPBrACk)V7QLN(~l41f9tYV?%u>VYeAKY;(qw*3QV-O`^xh?q09-wKZJ>qstUn{zbFVUpqWJ4SR`^J z&C2~^Vhz&{__>ofX7;HW!(QMfIHD!hoP!F+4pAQk*_B8sa~lDL78Dg+19pO($+XVF zBmD3(3XW4;>d_X46Fwc5xfrL;6-wIduJ%ayJOck$idn6ywMk%-^aT$0~Tv@GQU)q~(X7l;n>uqzkib8}un* z!PF=Sk%&(0zcD4zBw|*4`PI?M*1F4$@N^?zi&Pbc5WtPrz_zsMS7HC&$t zowCnA0HQRRj$&v|wDH#22^1eJvhkMXJ&UV;PMGIRr;yWo+Ix*7FMmNRwqz++P%w-G zn?Oaot?}kdXi~0BWu|R*)6V}A?beW>W`Dg>V05dzX+T9$N`#LCF`|ISK>EnJ3#ZC~ z*=Rbt#b3*uf{Hs(`|$R&tI{rDT&>#AFerm201}7nmYuMQwcHWZqXO3!i0{cx7!$Kz=}OS{+%C3lGyXP_ z*Mr^b{0kx)wv*v;Evj>9q`2AWWOfAfrj+wOaOg>&<!V z-Gc}1@@L5cZnSwN_|G1H?oGmbZIyQ)3jISs|5+jVXu^|Lu*rARF|BTLHC>PqSO$Po zm9?$k&>eMm{Py;$=ZeUJ8QVw{ZizXl`T|>iENNmQ7>)YyUqp?qqpuK);_noj?$dMh zhI)YzD}=POu4A2BbLwa!D_?2jQ~DCC68rNR_1lVUH^0(Z7R8W4Vskd zpvDvUKEsV3Li3F(I8LXtF8XjMep86}HvDNfHH?zyl=SPqrE>if27CZi1w2Dc=ZONP z=fv!qvpRC%RNB1V4aUgbnA_`2JhTM{R}oA!Q#xU8fL$`-AQ*hRxii;z0B0@iL^8bM z6A|=*Mbrr&C?K=9gWMVsmjOizwxxnae*@$ny4BZuWN4{~9AqO=02Mjjtf2*Aif+^h zav1`!A=u$NuSS*nSIh0XhO@J}8fW;dfz2ulUZKI-V|q|UZAbLwmj48ca>I(<&?|V{7TLHYaxe?+M>JnY;N!6F0RdvEkC^9PoH4J5;49ccHvUZEpeD_GUFOw z2o4|eARhTmL7BZ*?p;*2k_9{o5CD}t8n<{m3yH&5Q+FtGS6my>6Nmf*CNb$T=1`rx zGP)~u>!?NTZ_ENOCDwj@znUkW;hxFeEA?DsX6el;#LTT5_C`*t`QAGCQ$jKpm%>1xh-(MX6I{tL=; z*^;+;AZO1q&`;px&M_J+Janf-yG>LcU|+%;rh1dSrPvk>3NHy4sHW1ji4LAK4N)rT z+i1^en0wpl47+i*kRsSlf>ugUcYec0*c>HtlTFTx94HNR>Sz3PngebHxmt|Fx*`L%_i0u z4QrfcVS=H?n@u+bQ~+} z=Wn}nyi?pzVS2jxo>q4a-*0G4aGuJ#S_uHUj3ouZW$HB@7ri|%&8u+&6#6yU9ucnO zw-UO6tMl1_Bx9!zaUxJ2s_{i{*B52h~%o+wcwiQ16i12jDJ54{15?=Tn`$ zZ3ZE_{^NH9tP8MEt?)7!`*hgjP0C~H<6k4TBcZcn3>wY&LA5FA^!Ob)qW}>;B=WjV zQo>HBul&Z2^6|*^mJe#Kei9;#@o!uNQI2Lq_AS$1>PNwZmPK4m_s9JuQjV2|fZkht z%k=aKUR+7@U2-{I>>56pNL&P-0<7{GQHkTF;mK_p8EvF20B=r4TF1~3tRe$(nWR=_ zP)7a|;M+j!1Mkfp9ZODi8z~)Velj(KHQAo1rZKX2klEVm8L{|9X3j zjWnj)wGKyHmXdKiCu9^X>hZzXm)%&pO+Mk0`k*QPhn!1jx#Dy}!t-LF=(f;7_a`?D z1R6SUnxQ#Zk^bRF_D{=?E|f{CS$``|ypoPP%@_9W&RwSNG9;Q8-q2PKVEuI=co4Njh z{h>)nZ<7xKTWt)~45Y*=uC`72+4nn%r~c`*j}eJ(R>W*gd44%W-yMBOhiKut-XH=85$bBJoAP^VHp(w3?Kd@OU> z_{iIr0#@h6p1H0(%x&Iin|Wzyo~=d7f78kL>jS@QiE*9RPZrSdHJ}Uo68c&it7EvJSO202I8$Ow?^61N9yy0?tS=Ggfo%~v7CHW*hj+I z0ot|-;L>S%*GtH`r#kdGVGrRRIS|>G-Ar^3g(@m2Cth>_yAqOWst?&pYBy@l-hT zk!_~nptg^7~{Wwo=_m5$QZ8 zxdnR@p-4!nO#=sSOmDex&WR4H1kqrTVtg5aKF0-pg`Jo;FFHUr?Tdbbd43eO3sYm& z|CW`znr!?>apH3U+23Ll>3hRk*Y5RC;uMT`ZBR-_d^Zh=iq8d}=_)annjoBU0+3tS zVg@(a6&Wy`($s()_2rBCoCB_oUj^oiC(5J_R6eVO_^0ELUu-oyu6>sGZfew~-RFvc z8Rjl$TP&-d9AH?bRqeQ~efBDOSj8gG#<04NM7wA@rCW1mFbUd3@&Xv(w8^ON{)J?D zKTVW_D;UI2q_RP)nLZ8rrM(BgK_2WE6i~DCep~%S-}!mpgMs*~S>lDh-k5dPjvPiQ zpFI`6wA*Q{hiToGAj&^D0VDK3Y7G?}tJ76UP2dfuDay+b1Oy^k0h0fU^1Gw?ulqgr z@h*msZp=6Ta@#0KKK&grW@IK#z(kgpRKrlILESQ#ZgX+BO_+8zZ>qKAR($9k-gA!&5M8`)=PlzTwK!8Mh$Cc^T@ z)whHDv)O7AwS68+vKSXoPG!~+f2q?`$MlZ6f ztDmfd?FrM_54RrsZwOs|qjPt$m_F7%1ep>yaE09cF~QkcIi?i4M6;|v8OyH^GbzfxSWcQ zsitT5`!ZB#Br&pz(ffg_?V~;PI1@z>5~_KX21EOa9lR}eghXb$qSI^HK$d;X*v~v- zXE1S~pVN@>nsX!YJ-X@iv{2ec=3pv@27$#Xv8`Ov z(Xcsa1inL4BQr@lRD!5;C=AMbBH~`!{vF-sNU%}!+=Rh=Uq!c$WPk<75bmEeT>I~w#)7jE6lqWu^zc5k$Xjdzdy8NT z&I@+B)-eB6jj-8-z(>=8=s+p0RUEzUK?*WlF^V3wbI%CeKqr+BA_*i;DVU)utuywlb*g@(DEVBonQ7x ztRa(qa~+Bq*ji}dBNDSeXJ0O-m+oCqXCpx~*ghw98>%-rNhJ8okUSy<{iDHpAsKKs zI`3b|hZodMT=<*)c+AP0+12JpAwmmNyHB_bo>gDC&CUmtqA$8aFdBvgfDpevb~H6J z-fNwaW2ILYg4trsRw5&3n6P;iJ^rAS3*AlxDoihSfdC@CXMXDF%H&`5P}B03x1z;j zHZ!f+Q3@M<$#%y3>-TQI``8YLV>{PRkvMF(^ebhGY)`sS249hA_8hL$w>4l&&R)GT zE%$yKU(ghrg@^{QF1XSxONd+zavF%}9Gz9syyN3TXytvfpjThT(Jc_b%V5dG<_!KW=So?cu6EA(uye#UG$Xj*TG{SOFyO+J*Ah0X*E=Y-Hpa(e!ci~)l}^4xD z0aF$eqbLX~p07mfwS8a0apsQZiSMQNZ1H}4Q)%hfH^`CTXFrq}!M?!=qTs&mX89bqgxc z(9u;4IeiI!3T=UCGF~m~74k{b9`dFx9kglnVUgVd4^AwfW_?U!#1s6!0{K8GszY^P zK(K#os*R)nxzcKjT&5;~-@w^)q?|!fcbR9-O^`Rz_(r-G23K-sUnm5JU~6B#7NpIb zibjx*#^YpkR>cSXgpihrW2iO>3P_X!CFSSc;Yj_S+@06)lZ$!R&S*+(R<&_X*%9ps zn*y$WR%|C?#EtXfSoo3M^M*|X1p}t112oWq?O^(ju4A-r##B0fZkYOE0SghlX6*YJ zuA5jjDTV$(Z}cX)?dPH}@HoIRcIgh13pAp(eda?_gODkXT9Z-zlGLy>28g~MJ?R!;`aNGS@* z_m=AHw52Ykknf_+U|ZC-(q;9BthSf=7u4fqS<=E?qd1cp7TWa4DCSYByA6Z7Vu-)) zwfro~{IvDgH41gKLTh^Oua-)888gzYAafpE0NT_UA)w26^&2;NUbzXfA_^@g2~VU4 z&0fODszOPDpS9s`4&mYr zHNHa2An7m`2*2&2IsAp57s$k8B5gdVJD~gT+FnCt}>b87* z7@%}VqZ24IWnA#cfLJnvE`~-Gew>(@dKFgZIQ$OSRw1x&{BEq;sf<`XkgHlnrxSRq zaw3~ehZgp)RzS-oFw_6Y50YO<9gKTwW4DPt zmMQOf_4iA$DxA9gP$fCckEm;N4(lZM|iG{g1BuaW-lu7B$L(|I$* zFq>ek8Y{H%U8W#a6kEPi~f!qXQiOy*~$P z=96loSc1-gf9_2LMSux@AeH7%I>7&{{I9|Kckln-?slubRA(OR%CAh7Uw>8d6Mw+2 z>3-cj{WhXE?-BIX#-1l@BoQm58!dhMZTiUT{?F_`vhzlM*2;lQ=N)+TL7E1&kZj^~ zs{yo`$Ys(&DH3~D5|&YMH6GlZO0iir*K$fvJstOF4YlkvAvO0?!N$vfvjEZVWoBno zkYP~4PqI?8d!fCAza}uSj=pV{YY;RSM~;7 zCS)lZOYfDP)3t#cUsz)huY{+t-#~JAU&ag=Mib5Q={v<4DGv#w*tL1IIrCy83tG^9 zkt3%V~1%h;z&6iz$y32FJ zoSwJLQZ7e|mA^F9mOSLLCw+sm)`;%3Vd z9S0IBRWyLCf~xJVSof;9>l~K2zEd^=Z40(=ru~$|2sE*0o@8Q^Cr+ZIHZx3%`||?K3b8?4(*t-$LoLF08yevy>5IuW3xM(3 z-mbbZvq1{0M|oc}qc00JIC%Nr6C5})r1I?0fAl+=*5WAuvfz3d-fvvGth)bbW1jzE zs#mCO3QA^Kpn*#FjU1=3d!FfQooqAj1!Zyb%X8bTizV=M_7zdf6+NxRe)q> z>R|t^=a4}A?UL8slT(xN2J3FjZ}p8TM(zrNJqh0HPaYd|$k`Mx|OIMrYyuVjJ0w*YC@zBRcDZg4V z7d5=W(DQI@WMo9MsgLp1SPk-NhaQejE;aNQA(C??p2|;TA?9zd)WbjNe#0?d@RvL# zMaW>L8*(Ga9g?zMY(cX5n0VTdnlP-ZpJ~qn5j45VqL|5g6?c=T+E~s zm1KkmWP&)*&*u0dzt~y{M`Zbayum@(V*?nvY#uU@*gd4nfky=vm3i}XG2!*b^vxHn zPEYv`;^4HTUp&H9-!4}}<`%W#G)=XTAvaI73o;P#EJ<0{eEu}CTXT|qO9`1ysB1(> z|DbMPYNTU7bdA)Q#H3zV@D*#7rQsdaYk_&z^x8Y%>n7hMS%6g;i=r99qt`3#RP@)9 zKJpvNx+%DNhN!e;g#Z_HbadG`qKGsE3b>)^WPr5GlwKmkB*-E?sNBMFIx1i6Qv5Wr zb2ee4udDcl)K$&BPC%pqJ8hjbmD20T1A&q!A@Q-~n?ofv`(2L+#Gtqw568JKX34vL0v+>1l{34M5>VL-EH!=H%w+xoe8V2>Gq6u`e?S%V&(fW zq9tI8_blEw`t#H3mDDG`%*rI7y#u8i#Vfk>8@Itz%`&fLr(xNHXKtDs*3H5bHUwfJN4`=@nKJ(6mGQnkzga&cuq_-dppE3+K zz6w7NhQz%5GB*SJba0v?64fiR{W5A@kt4{7FZem27Q=+J!ugUyAXCJ{2X|7C?86Q+ zWWSw|voc`Des#*&YdBh_w-{C$hY)(D(tRFK<(a3O>5e=5-JBTSdcryj{oZH>W@hn0W2P z5v**>;%A&wk%aeDxv&J^WGxLWKvcXHR9wRE?x4fNX!FE7`_6@iL>kg6(v!mL;lk5H zSmUBC{e2IBE9vBj@15EHdgq-AWHGBEVg4$%M|d@&h3mngvJQ*l?1m@R)#g>mzT|hv zlDm-?esg#n@=0nm&AS8Xol>H+ekyN7X`nMnCaLrb1ij<#DR$pwrz(rCnP=lekR6#% zjOv&oA~XeybB8xFmiSe~8>l59f*O&0p{aGUr5*uH-}RSR!Q~kCbmVGG;RAP?`2<0v z;&!VDK0DJhfS-n(5j$c`cT7oAG% zw5#Aw*)Oq{u3LLQRv#yID;SFiZ12qYRSpGah%V{a=fYZ1DeSdh8QLJ%Wsr8aK5Xzb z7r@n4!^&>1qK3wvmk(lm#A^kUY0t-n&+o7>% zw9~m}x1PwbWEOd2qNR+ytKE-^4?a08M_v_!9}0me>Df^`wPJi>iZQAC8^i51am2i4 ze8Nz5#)x9n;yBg1%9h)*kyIlW^3@xWvZZ`bfD1?MjM)9~m&oNKX-`yynCUkWA>F>m zya7?_M!RH<{>t8hx(B7=NFAK$Ih1Z2M+gT8W?*@vh+cmF~+SzT%;| zgg9&H{mj#?;l5VS^D}2*lM6jdEn|TBvAn>7sdn&U@{2P)Gpa#%F=o$paOK(+`UGc| zNZF2H4d+a;%EFw$`mC_@N1Z4Ky#zsx73CPbbnXvvb*V(YU4_!2;QOG=U0LBC*Be@U z_Z4}!qv;z5!P;-Ty+?>@a<^A>(!jpKI&CFgH{{L|jAyqsX44bho|CVZ6i~+oidTA_ z#$p6!Tt7$DT3Vcu6{ANeAS-_J_gut>W3#h!y_p(%lg9Q;eiIR%DthgBtsvpmhsNfH z>XWTrhaUEOjd}L6bmJ7NgShc=2bd}dy~mB6*yk@8qAuHM7Xe!B2+93sPJF52UaN?N z>DT#Y*SX~*?h?$0qT)}wm-v@-9%nYH>N_zTJ-gltzQTHLjOs4=)$c>EMzkEAMkqmy za=TkrG+IsNGbyH#$7MW5piqEg7RqW?rHKyeDIXUP7PCj^+qK z*25M^j|Z+BLlVphWx{bM?V=u+jMv%?QCbNOV6O-C$A=Z)er^C#51q8b!#u?ypDS`b z9d_gF_g)N;B+DFnZE3CB7@e^Y;{3d0~_--jm$3`tPw;v&jux9Sp$ck zXJ``4OreOakf%}5b_yI$#;k%|$1S_vsp;eE}|y_dD|kL&6X&U+Hx~Y5>TmZi`zeBo1JsaZ=lLglwSaOI)0bHsFs($y{0u08BlU^V;`O!G4VH-jGuLV!fjT}7@O7eE zRlVbifa@*r89=bpcUg;8qkaNcm)H(J~Sud4Yf#;2!V<&)w+7`0^L-M_<@I5tck z4rd6`G0w2t2eYU2S+Bnriw_GZI#eDot3JNP$O9U*IQkIpHQJ-WT&s_*b4%yrw+lzj zvV1hWzc;Ais##l|7G2~6;Sr_rJ2L39owiip(cQEF`0>m`er1Gsotly+$oVQ# zv&E5$IRmlZOcPaZE%F?%ko7kn4lrhifw#3iTL#LmPwO7bVPz(*8l+%TG6gig90*Hy*4nO+$9 zImA+lN2C1fJd}#H(qpvDQ88AMkyx%rwai>>p;=I7Sx@9~M%H@K7dy3ZiWCJjHEd|lkb5?H>)3AS7BnZ){?+ zi(KPd#D&sLq+ELWb8{>6u>AWCD$UFWUcMZtBpjXSAXZ9ok>ICH;Y?0Gj*5632 zicM_sgpwCC=nkCmhQLk>nmf zMVBY?b=nFC)_cT0J{z|vV3z3Gmg_M!DH0^^!|G|6cJy`x*y10Q$D?yfsxC+^g4gH|;Q;MyfOxBShz z*3un&O1iYuVM}!)*O;g___WCwLE8c|T#k1jv!3QXQ<20+}4XFzu&g_Bz|g) z{(&9>8`pA(@Y6nZ-*F%t@$;LC7O%JJ8yn_NEHGK>JTK;>>+4EMIp9Fq0$~z|$inVe z2^L*@cM1}MuE$4=Xc?dHxLW!KNN#iP^Pk$+YI|L(c{MtJj5-}6!2(lMcgUR2WcJiCAPmTRsM)X`yYWH+0U$o`!r1_V1^qqVpnaHr^yM65SHDy*?CV&5;9QkkGS2hn17uy0`S@~w2 z2&LpFE#cg>=)-c61ymD`v@$_~zalaN+KCWA`0+0D9fVO2?JMeU*Jy)p+ zGAoNQGktQZHBY1q6$KNV4=|=7(IVT!Dm97``=;JEL0G51RRVW3sjZN|S_Z^wl6=jU zmvy5cYl&*~q~e*N&ns&{>@~qkQ(PA15d7wWo7&0=+AXsj4T+bXHvOVYiyrbh^rk%` zb|ol}5?KR>_hm~5hT*2yZr2>+uy<_FXw(`OP_LL@u*Gwqa07k$Xu7Ep}K6y z1_V1|)OwV23+|b?j(AtvSSVXoWi^>3VjFCF(A1DZb9E-R=tEHD$#-XLOb5k%H15$9 zryS{PHC9V)yHn$MdlF%lZ8eS*8-_GLev*~t+jeMP(*zoUg* zzr3ySVvC$RWP-kHut2~y;^vz6*?^Vhwit5{*mPa~kb`0eZ2@el>XTQB=pkpl(g7)H zP0@8RwnBZ6M%5U-+q^XF>B34yPj_#tAnDNfSRR(}rcrlFHd!BAYDfq#>>-@CL#X?P z)ev&ihme58shOD!h&6OWPxk=}Uw&&|R#fY+T}#11_rdMcxPP%wx*}`3Pk7T*h9;QUsj#<=+sE30IYS|qr;zUh5Gw>C41AielR{rZpfLCu1?DkFk43lYWntyApv0M+%;uq`Gjt zU~%W#v!TQDtPZQb=L3EE!i5=?Q0(?@mZhzaj!>Ae%Pz@6dMPzJ4W0UvL$_WQWGCCX zW>E~V+(;yTsjgR65AQ*A&Y)ri-|9U+Vh;}17$~Bo(%3}Wg(CgZu>bt5>$vLi6xWx> z8%t6$AeI=bizQU$!}_w=q7VZc{QOjo)C=b$zWwHB8PfS4U2wI_zS!9}0Ovvj(k@&9 z{_RWR(@03`J&n7ovWd7*z$HIl-g_J=EEG&S_hEPr)500R<;#lR86{MQe{oimQdnnc zCl--W2Y(w#?@t^e&CbwdhVVsL^aBSPV>x+6V%t(0ISwHTKHoD8y05M)EKA_4jfcD` z$^Js*&5Ri8&C`HW&!4#a-5U{f&Thk%HT#wCuVeR|=s3#~Ww|3E!b$6@^bdIMM%mp; zJ47)K%K@z)@Otn>4jHM`rUJ=o^s-bENcO$au(1#G8M7ycW9%j#5ZTxc$&3_nbEHl; z@2|}g&FLf0oXz6X3bruTw^}ul@m5i;SlrWw!qAN80|V293YEY!Df%^sBZd&rqX6W* zuI>waKPk@L1)^~Y`v*-o%G0wXB#tHy8)L7% zLLk?2gXRX1CeKVptx>cMYuu&GJ=eA)YSiS670jJI|B$2bVeh2P(t8`da&S@zD>KtG zV4HH2YvEixJp;$=$dBCYCuik8^do52H1!kRF_kZJv|OuE&z;#_fH{y=EcEo_Le4Eo zS1nooY{)O}mnRX=7R@5foL|Ers8Lm~p7Bf63e9!qFDw8~W4~+(<1J>qdQ7s*a7tYW zx@zXPs{~hW&8FTLw}|_gLW**V*yk~yuq;`Wt2RggTp$XY4Zc}Sr^w)Nhuqjkj-v1J zSMms1gtgR-Oj`)XKVkwC{bH^W>Oel~T@#i@I)^3VUCh;Mi-hoqw9oMlb*yXh1V!3MuXs}VP&X5(tP;CuckjBa;dTe?7G>1)fjTYD z;15zc1o$1$Yll^4O0Rb7VJRumzKEv6AFf47)*}Ko>SBMU|bq*w&$ATKCxJRqYqWBXSXIbJ;uKTsyK_-Y1?+_!dcp26T zwz`BOkIt_V1 z*OKmXbNDZamG73JCP@$Du*~es&B`DS%OKY1B2JW;oN;^}O(kghY2Zn+l=F6VWUhto z8FUPr+V@=Z-Hh!wDDi;HfDkXqFzK2(Z+g5J^3?tQT&{ULFAGb)9N<1sz{#FB@rrj|Ef!YMO$* zI(cYaq2^%0b77GFniXGObc6&WxMA2w+8TR}JnQSc_I)p<(~O#X*!Q`5GGJ&Z*3Idw zZvh|G%ouj72h2qy=44i$4rri8jz*Ik)**`n#h<_kP7lEY6UV}yC8+0NsCZcsw9hlT zmyS?;xj940ikIJI&6_f|_bid$k4A8Aa&k#U(8DmkB^}5W-k2Q53;#ltx^eUlqAyS-s9U-5fp79q&MZY$kAp88|k+nHqZG!`($Afdd8(I9bHMhfHs zautsIaB@uqkJA&SjhdeUVD@?#%mp^(GbKNg`Xt*DH_%~Rx#ttM55wj>_8%HQm}f9F za$Yy{XE_0|U9W#^0ZBwJN=w8Wutrq1Qk1e8ZVdKff0EbLdPQ4c&5jc&xLYBCYz18j zC_`YJi*`kyO;Vw8-q}!fqrd^20-;S@Jf*$Y9gHHsG;vBQDQ1gJQ``OUGK>jLZu>b* z8k#>`upUUbJZZ1O+Q^ezS{&t`$PnY;UOQ_2;B+lHRu1SpbJ@-cFqf?TEelBE`ke{Z zh~yIC2JZxi;=M0t8>S&G7gg0>dh0HxDV->5-QJ#Ceza4-&ss_tr(2<|Euj@kH;i8M zqC5y!B?Xh7^#yC$<UI7n6=C-mx=R>YT?!? za1Ox={1Ld0j8RJ?!5~d)3b0`oxwS3gpuYuXvs)CtWc}Q7Eaex?XiNfb2AG@WzZW8 z*##JipOLkF6jRnZV#YLJ0mX3v6SAhp9|p)usVT2m1XA@{nnL9 zkV5w>dB#a}%A~p&=W3KMdla{qYVIKi!+6q_%GSa-?C3A`sX$3NdsL$9anWZg5|0oEHM25ICvYkmug zJ5xzo2XK*ro_HCxS?l1`+VwX0=GqaE(`n#82Khc0&iI!Og(@dd%N>B7Ai9;{zHa^= z>o@t=9r$LE^jqD<&H9x5O!kM)Acos3J}Z<;@|&m;@P*y;EE_kQY;>;GQSd{X@ERm+ zReiAd{J3OfWJAj9br7WXJvbrH_oW-T>dmP{NT=T?{+xPp|Cmcg;Kks$w1hmnrP4Q) zKeHlmWsT(@nt@F620|6QS~|%Dy|)w%?MNnYg}iSm$Z23OnUs$Nhu`- zul!> zu(iAePU!iQcl(@Y8^rDVu0=GPUHr(9{oiVbPHc2Odd`vx(04vr-rDOsa>aMSbP2!k z%l|ySwsbo@d|do}R&`>tj^VOlg3=i<8=9THc=vjZasF>9P+3nmvrwHa)N0sN{d`;I zDJJgA)gGy*5mwrQ_t?n3_PVSat1Qroob>*!VK&POOew;YNXUXoLt-!S74m(A5JbgD z*A-Bq9jP&UFlA$cmE}c%P(>iypR8mRkYp>ZMLV4Q%QVrMJ0=wFs@@O$)?zaH%BH7L z8pyalA)i|ZoisMvz}Ty1DdbDd)Qv#41J}2XzGnmH34bcj>>mvYy8_%XnJ*)ijpAhV z2(l5CO%_Yxk;re8TVpGU?D9YvGNCDZPR#f3M$|1gh{~&V7mp&_xZ)o0w*!~(+-jMp zb2h5ro7$uk#}>7L$gh^mQMe9;TmrsWJpqi0sNOBalW(aFt#2k7Ql&0`h=0DVi|efC zW_(I858c<(dlnL1&dtX9t4p`EPuuZQDvv*9%7waPohNr8$gZY6GR;@XwWT?-C!nn# zpYvvaSBd{c)%8AG61h`pV^SaM6tL1SYS898WnmRK+Km2k>=8?-?wXrx1``ysF7;bx z@u$pc^EYxY<6m`73M6KMr-jFx#U7t;Iy{nQq_a>tTR6_KGP!$G?`=tng3t!b?wR!9 z1rqgG6)2=N>0dz=Ej}`n)i|9p)bnZeuDLU(8Kt>sLR+817>VLu-r;3rlu@xvd}v?- z$rh1NShDx@8Zcn5vmHcR`?2A=Id2rQ6}HNvxj&hbRN?{c(YrYS zu6}&O8aOx2i8}W3bpXpaGhq%2vJ3hC-`xC|#597i6Lck}AtplQNW+}Iz=dbwA4?nm z#uN^-_bO7pyw1(yhZq9OB_RLP&r z7=#022A+CSusQ=|F&IrfE)#fc8uUy&%(peF2z)TU+!!`<@&;||Dot3J=3};5qcrc^ zqlexIhaYO?(C@p$HX*@B^_gr@6c=o&RS29`xkY&|R zHT#ADq1wg{*wJJIa%HTMCXu-Ax@g3&U> z{WL)Byb+lkes)G#iUfNV@-C$&PqwA0phW|j@orfrMbeYp?_GoI`W*4pFj|)v23lJm ziExuxn4Zx>sC0*kqsH?u3x=hmfCZmFnS4RZWSH|<_&muCboV(7YEPJ_MYAG0vwPFG z2lCkWe)Eg+DYQIrulC&RLPV$z;DT_!6h(R?QX~1-Otj8ZJu=1$Mbt&?YQ_Y;Umx53 zIMv4jqv)G@`(FgGcyPjaXxp6Q69B5XkHcr07V&j#@rr=If|DEENbkLl>S`2A<8_M6 zFEE=6=p%y9HL~?E3SL_fn&H~pZ{Ew&`eqa_1P|JFcQ7w~{M#A&!)taOL0*`!$1BWZW1NO>2AJVFh z8}Z6wBD~#&y!LizVmJ|WW+>B+=()jyk$xE&Fb}S%s@&P6+dGJ+7IP(`?uq24L|fkN z!|a;-w2<5<$X64PE+8&D>$&(LGpC@a5;e=Cv)BLe)aILm>#vR3m2NbF$<&DR+?IVL z*FhlH)Fb2FX49Y}h&!fD>~>-S58_m>Z4WQ0-iCP}d1BQM)^A!}XR;|aoOd22KQRC{ zlH0bq3F!o1Akb#*y{^_6sFD!>L?H5F0uL*{)2*x45OmV3kFFhZBrgqeI-1)*a{Li` zNzql0nLn>*!lq!I%Mr*CrW5DndbaD^!eF0!?g4Z1u_x*avsvY+$^B*=EH*p2^?37W z%I}NpJl43wYQ}G;8PturT6(#9a;21=O(3v9eY~Lut4%quYAS&Z#m4x3o|-kziCEi$ zJW@Sx3u@g=ajaJ5xI~uYIFJRwN%q)7oQYTgIG#5FDa+D(L(E`uUPslOXgh-4*B6Mx z6TB}3QOE-c@+He@?LH3lbZ(QwOOSa}POYr;ZS^e%A&sWs7N^B7i5M4_aESFtwLaT-2M(?Agi@fPh(j@6MQ;rdcQpa_Tix>mGOM&h8OlR`6hntS>@&^ed4k@*VwA()@>-=2Zgs0+Ihs zUyn>&FG_F40h3Xf=Ct((Imhf(Sc z)8)MF-w2E$MA19sH#VSzg%KZVSwA_PiF9lMq3?^vcIJum)>Cvh%pv&_q`ltjK{ORR z%x#%O+I;c~=ZaRoj9b6FpZ@yYEo*h6^H&ikv|~?PDSR~dMxnv94X~Pl0qR44Fo}}N z`nGwp5EplB!t3Wd%;rNu;hzR{j{gC~1Ry<=n&iN;o5icnh%)rIa%1trf$7_kLTelC z9}8$NU7b4uIvoX=$&C9e%hc)m!m6_gx+^3;W>0%GUmmfuAC{o%mS( zeNw!S!(Hy)>&+4sQ~hEuiG!NRvpIih+QlJU*V_5uJY`~gXHL@bGh^;3W2!lxd}lQ;gJkDG#leag6r?8PgEF5wI_{D-H3)lJMzSo?Y}70gk1)&22CXIrXW`u zdeTWR1^TZowWl=)OFJ_%HV6EW_FFDsbX&F z<-r>Ql{ddq{Iq(sX`lAPf%?adJ+BJiC!2i7eiIl~Cx~?I^Xzdkyk5>+7H4Rmac)T~ z0h#{zn)MDl|K+#%Pp+^S7gbz2jVARrCt949bjkKZ!*^GP)eGc~$v3MonWGaG*W%7T ziN|ZCP9IO)VE<+G`BD6R^DM=8jVQYWz_hd35?KITR9Q3<#=<70{tE4S3y;P{8hsc6 z3D`&|i^K6Jhs;x9bP12i4#TsR9F4&wiKWMjmF1$y>G>P2nw3`-aQp`>qF!3SPn@-l z^?wH{!O0)7sWgBKmhY-lj=#=fwTm&0qm82^Z|kn-$s51~~Ev`dsE8**rZF z(O*)^2~T7c!zNrwdVAnP8HryOf2kD zPH7*D)=XrG2dd8tBxN=aew|zx7w|JlMAI!Cf)%HTv<|8t;-~J0z4KGu>Qfv*r+hb@nNbTJ- z5cJ4oJfup0`C2RzvYf7GK&M77fELLq@{`y-UqC#zBj#t5o_)uWJ10fx0$(k$2u)!70%qUUZcaQD2;(S$oNBC^fV-W-3*unJy9oCtYjAEoZ( zMPrE!KnN~rF*{g(lbvl=Cy+GM5U*Le#Nm_oX1@#xN1uyTr7B_(Y1J3u=;S36roepb zoheDpyuRngow>LNW9T#G*bh@SFh?=I?7lr>N^Dc>9pMG>Rx3-N{O$$TFnRQ!L;Hmx z74-Az5ENS#4VpT+6O;RvXd-WDcF$=(Z6-^n|a~2X1ZZ2_0X}dNJSuByPc- zSD?7`pR&I{Lx|qrc?g^I(NvCLuu1R_f&gDr$tgNNW*i4tcjvM!Fgs8g*z83ce!O;4o5WDFsrAP@&BCe*h3(9q4xA z%$X52--^!rvJ41-E=#MjM$~|B)mB>J+d2%$qHt(qku`b{`dh-pFYoLHcFVBzOmXZ{ zUO>fr3+FCVZ+~-|W&&*N+wTObW>>m+zN9Vy`n_$%5ByaSrOL@fo@zfXU}h4^XJC!9 z_)Fw3!Oizn5jBn^vln)~oioXt_1n-c0Tq90{^0O<~8r)wH39+2u5or zMN81$VDCw-%~S}A3I<QH)FPh{tC4qu3EpO@Ag+p%d$v#nyBM36 z?&{2aHwfDV={$q;y(_>ONl?%e|JRV&S^t$m&si0%S%T|UqPxO@_|B*`)1s;XX8`|4 zv%dEjOv;s{UQBMO7Sm0*YY!=yx^G<9)<(7FOs`QC_W0@BYUV!z7K_54aL}qje}g=V zad>Zf-Fdcd;z)xxAuq|YM-$6N9x~Hkk5VpRn6=a?^~<#?{lm~s_HF8SLA(MK1FQF* zICYxwbT2=~<~p4|_(DIMzhP~wO`*@mOb5?=FEL*`3aGLgjGoI>5q}%y-Vq!c>M=o} zN(yC#ZjN!+JG6xlhoI@Ewui^=Fi)IBJ{p92Fb<{t7)Lns=YbY=5s>{SdGRek2&rrx zQX28jH&EdFyZ~08aGen`s|ER&e<*|ny)Z;L#b><4lf2{_&C}80WyF>YgVQ_Ga@JtS zC3{z8x;P~|yhwVytQYK=x(ZG&nE&*!keAFMAB1wOeh%bX6g)=@H$a(j*y?^w_j%Nl z%Zv*xtbja8*@s&%PH*5BQ~qa@vzHGPrDgtMeH|uBas}Zs`ES0_T(Ntj^uaC*N;HCu zuV}|Y!zS+2kSn8PGh}T=hzA@mfeK!f+CI}H+F=Pb0>Di8zs~~S2?OfnL=!VNvJC;6fvo1EB-Cq_fMBgUgyfnQ@`s%@lG_s-$l1P(Vj)`Boh+BF zZAMc`MfD+B)4c!Y6HosJu5kvvG(C~`a(m+^BtvIfuk_btE$RZuB8hpNsof>Ad zXE2L73L;O}@3d&vQQaaz;d=h$zCB%<%A*%YF4x{MjL$MiUONohd^Mm9YO&=b-Sw-r z9l)7rmk6;t#({sQA$OGZ2>GaLyt5^T zY$HoFPPIY_nRICMaEb}oIdIk2e_FVS>KvICEc1MwM#rvY!fNw(EQu-CpiTJEO87-d zdG3>v;hYqouAbrBumlUe#2{SPEY_+t`8HAa(jFM|V5rLL4@-0yKMp z$WZHZr61nK))WwpLL7#&j$sT$&m2W3adMRu4HcPHkOKCo)QN6+VXNR6J!vW^R(3>) zNQmf;$)cA1oF(2&+edR%L3yxbdeVYV#0vqjc!#|$y6{AD;}cF&Yg?J7Cq-8OBV{)7hcM+mp1i;_EJ7-&oCvyiM_W3bcXPn>h=JdYt zeqq?gqPAW0E2STzZn$g&S%8%BWc2gg#&jMkJ_-N>K%w*5Vyfc!$X%4}<+6ZNw_#hR z;!2w$32V@M0JsHGTXCn@zH?^KvuF5zI$~C)QPFHNHpK#)V>+joAG|IPjXLKpe9SnN ztEHa*JA+v^++8YMH=W-oa8Lfz7b7J|hZ|3`m+`CSzwV@ZpB9FEWz1m~cj;pNpN-DJc?ifDlrK@hW z{lQXe8d-WO3&EW-FMbwqH&2=p>eqf&fZL^KB7})FRk(#s^d0NmN_O;;-kN}F#L4R0 zzK%OC{Bgk}0| zotcjX%oKHsv9J;eJl#zI&6Z0n+$X1Mxi&Gm?0Yw=Xk|Z#Exc)Li z0nHtcN)&4h3(9Ra;`4VVKgWVj< z<1+2}{nHEs(^?F>)mMw)3o1q zP`DkT*c|Rz_8#^OZA7<*rsRyjHL(Jp7O)}SB@%>tLC2feM>q0omB;o@t=7O!lCu$* ze^H&)iQkUo%z5BY8i?0(c_V z8wJwde}4Gy%Shk^ErCaIjP;*K{{8;g#K60VvA~DMR`G2@f&Bkm0dM-ZgZr-~_h0Vp za-rYuY|B~l`ueBxWsd*%ivJ(yH#2!f@87wXznl2&7>9TGuk7I8o&DCGZU+A)g4{s;{?q86W3mYee5CxQIE={CnCSil{&_2_B2y{#A?SYq DJ;XhJ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001117168786.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001117168786.png deleted file mode 100644 index ecc5d08c03bd361cfc3d2b9691ee6a52807cead6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34602 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 diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001117621400.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001117621400.png new file mode 100644 index 0000000000000000000000000000000000000000..bfb378217e99536cf076deecfb0f0677cb51eef8 GIT binary patch literal 25708 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 JPDHLkV1l{2@jCzj literal 0 HcmV?d00001 diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160649343.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128311098.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160649343.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128311098.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128311100.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128311100.png new file mode 100644 index 0000000000000000000000000000000000000000..61aec8202ac830a3598ef2c8a413be30c5a742f0 GIT binary patch literal 20063 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 VcFXWHD2{s}=TPqFJ)g0f{{mA}?Fs+@ literal 0 HcmV?d00001 diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128311104.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128311104.png new file mode 100644 index 0000000000000000000000000000000000000000..773abcd91a0c0ee1d3f5f87218216fc337d8f62f GIT binary patch literal 96167 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 literal 0 HcmV?d00001 diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160529355.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128470904.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160529355.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128470904.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128470906.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001128470906.png new file mode 100644 index 0000000000000000000000000000000000000000..281958fe76a787acc5d0b98f5ea248fa5abf2405 GIT binary patch literal 103804 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

Vtg*jbt8t_rb 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%0Dq^ya?*KWprui&l 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

mGr7G zx3#0-)lw`3eTynABsRitGhV*oFa6Tc@i(9Yd?hd)KrsySN^QXH<8#}^WMw2*yUvZY zVqLwc7hUa`>-z>eqtN%i8GG6vsc&iJLh|xr@t1Mj^6X#?4ffvL-XDNF`bqTTgT1g* zr&@%U=d~VUD)3$umQ0;(Zq24cQT+I=5Een%+b5YGcMla-u;s(jk+$x^v<80(uy18t za1{c$u_7Zuc*5J;x@w-}?mmjf)~w;CFx&g~S#Z!(;q&-b$b_xe32w0xjxmp3zz!Q6 zf`qBuk@oG>s|Jk61oo;)*f5}4wc8+HgV&@mJ4+M)#xs)R z-z{{KOxBS*#|7>vIyPPb`SZba>coQj{>%vZq>ojOEwQC}G`pCcZZCcjLWaz~ESXXM=>K7P>%&lLewfRi}Bk?G?Ni-I;F zR4@!NcgFe*gSdA>uU;-RC#WHtN3i^U@q`E2_~op{&%1CK1Ym!D5H24JFU&JM(y}=y$Vl%N)~o$|eSk>mGw-ln@9i!50WR56Txah3~KDG_YD`*MkQeSfb{PB=El2Rpap<;yBH9)Gh#EFi-s2^Yj-R)glDQrnZd#v zxOE+I?oL#hwpc%lh5J`*yO{EEfeF1-)_!s=yul0f+W-4VOtJ6ylP~!K2iJpqObU*R z+0eTbgVuK5D0ImB-J28xmhFWx$ zgnF~eCb!FU`pOYK2W6UAblOh>pOy+mgAju^=Kc&6bMwhSbkB59Sazz0=mP<%UjvD4 zF?biyl(zvB`~WZ8sOE)l!v{l2_5->8QI-u{c1o8!U$~s`zMY)V`32hj%`IuNLM@C! zk&8g?(aTr0+|t+glO6rC5h!FBt-SOlD}~%N>Cmd7fh$i6Vp(Hs2MFQ_;(XmRi}aF)&Pg)AVu$9*@7XIYEp-($A@MgezRNVEX1C6eh!<02 zc-&IAf|(*(d86aLJ^?jE7c4?k;j8QMinsL@cXxvuS*@K-Pl zdA}{f>02cIe1^hFzC6j0NM{qPC*)3B#A@>(W%=WrCX0^q6LODW*ye8@hKvu22dTsp zWXXgXoNB&K>F;!3V57L=zd@3YNI36%0s9~&fp$IC` zbZizWf{V7ps}z)7gCDgIqUhEmp8^&kwZfC z(DuP$e&*Cc)&VeuiJK1n6Iy{h2f|{z5SRj7RK)O&P1iT$lE)#(G4LwiEk@-~>S&N@iIsos??Ho<>pMMYLr8##WN*MgP@B;9S5-D> zivCugXmXX^=)2C)Q|I2yUW62ZZ?hN8>3Bj>Cc7X2571 z&%M9CVg2L|1ooXy+4ry5Gjj?WtvBkxSaw}|&Hw&i<&1ar#L(zK%xQ48-Ke7Y$W+p& zZs64E+Z^APh}9fS+T3|8`+Pr7s~)g^)iS0fL=ez1i4!+&v*Yu1%$YNng>$DfEVMTX z%P#P!cs+CG%x3lJO8%v)nB=Gt44*KaMGNLKD>H|K$FFdBTN)-!20%q%?png?HxdasGnN!ZM2e7i7y z>s|ix?IjYr1YtDSWYBB8?2d73sC-jXb}HTdhLN)P8c*);V#<_kPMj{_=+;#1R`Ul- zC6zrmQR6AAxWc%I4$5bV>|`drFN0!NQ1P^wdGqEncisXP&WtC>XAoO&R8e$z3h7ff za{5dm$F`2aq>5$7i94J>y_P9c)^YdYT^1#U5I%C3!pZ)G9)#vx;m2>w*pU@W@X%~3 zp42USJe_^jEI#{|2m7M&6b7f!Iu{y5t`X;R}4S!=pJ

8$$(@) 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�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�H_GT!I$JKdbEj|q`Nzkw~00T#EfKVzw3Po$5`Jq-@mAa8didE)ntx&gm04<6a1OB&*xxszD;}u@$irzl%zX`wItB#(p&(0I2X~U*unmCP}1MF z!A&(k9WO8$0Qn!;x0@R zf}7v8qd`7%WAg1RMuF0J>>iqr#BJM_tT|(B82yOBX?oj1i_dX1grj0mQsIxC$v3g+ zB3x2?pgxkc6(OuNJ9(Nn%W%z?wKC0ya*Hx85^JKcRycQpxl2M|Mf=D1+c-+9xdUmAvU zHx=Dg3F2*KZnRuZ)rNkuiTFHut!C^To2OnVwwL0n5wnx>O=sj$aZkBew}f=~&GO@q zw>S@`9{Aa1zIvi;d0*RaF&z3N{JZfHHa#RWDf;hodMY7c>J$nY`UnG6th%V!20N4(a`RgJVD>DmoM? z5%#5TFV(&#G~Dm@ani6{ur|kyNG)yUQs zaUuS~f;gt<7 z7fcGVRTldT1cRL?gj6TP0FITxk9?9>P`uOL@nYY`3kSZsBrQ{WP<hO@RC*YUb44J1Eo=(5G-4M|Kehh|MeC_2E>3Z*6#(h{!o?!DpFqAIdia05FG5D zq4U}`T$>(eCxi-pU?uSFPksy-u@a%UDJXHxLElJiO&+`{SakWG!*(JVS`PfO%dS!*a|m(w4fJgf)F07CkeH}kc5yDK063f>ODFmK7+?-9;oyV06L&LL z-s2V_MfLzt$14AOD2~=MW+&YeU$s01U&ycolcaavdw0A6G%DNO6*r9 z{r6nUS>Kn;$2oe|$Lic1G%@1DW|t;6+&j~RCHfcjr&g!tt=BWX z_7=w8^SlSAUJI2?&cTmwI`>8AE*g>|GC8cr>afgRA1RfF6C5Qn5R9 zI}7Ii?B{ZWMwWe#Hk>x-&Lb_)9i6yb*4!s7ec}4kB&5efd~$QD5U{HS^L|xP%dF zP7kyb4`S-GBF7B!iPi?!Xd_DyHq!$+hj$8M&u}2POBi3IV{77y=BntB>16BFv|j9 zjNsUPYKh2oCLAN^TdAp#W#qkfNh@@LCL4uF=O`}OrBk|0Jk>73kX|OgC&IqR(ku!y znC0 zbXU5_afbaA=!OZ^^V?0WaC=Dh;c-Ls_wtewc+1e>Ak0y|a6sGDwiduSLBhZ1sm9A_ zX%?;#VlYb$P~=~KHMDyVMqI_3&Uff z{>s!{8tCGNZb&o%PU_9fA#mYr`HaNchYLLX0$${1WhHcq7+IgHS^#GjoiS1i~+4Qf|9=JP@B zoZ{X9O&)>=Dqfq+oyj2Pf^X#ZWbNUrNc`)v-E!ny)3=B3y!!TSkkWk?J}Ve6r+s#r znB}}aYG*V*FA%mU7>$;k)|mEfOf7y~c_RJ<-HwxswbLoVcfm}P!rE0NU8IzRG63HI z1bz3h&Ts%hH-c|4V*v^XRvKU<-5fE`Ami3~CDr#QrW9Ff%)3QchGv6#_^;EQBHFpv zI^Gs%w=GnG@`>}Vk-8++A9*xcR}K~A;CLsiQo-Gw>4kWw9`$*P8*VqU+fBxA`Ku$Z z$qjb?OU)5diw47K`kn}ZUA{&dr*F2Z4$mb+mxP8UqDAMt{W5L z?S8o61a(YKv1d^}VO6%dg z*c${8SsKR>P>gp;8lI*qW-WtS`EwR?m*4-zb?VNclelyJyi&F7zP< zMCs{Vx)>lb?-VkWOz08a?2aKaI5I?azYQp+$(I01Q*4p22WL=Ho^2(+uGrOQ$cAjW zXWhPfZ&{Fl8N6zbS|*v;d{c_X8YU$D=R5 z&~yB2jIS3Nh*WF^9I1N2mrmNUkbG>61|?9qOyX;`WJW+`Zn<>3OT#Axrk9LnS8R@7 z#?J0hpaVxVs7u+2a#zWcMOBF1)zwz2EiZIzxWpizkAZ1LPV_UbS6SmguT$#@FXJAq zqAG*p`KH^3VqU3*K_%$_Rg`V%v68ZapkqO0%MuBu!u#Kc`-Vy?_VT$z_ApjVD7S52 zDR=1ukEb)GB~!6g81VorB1hh~)&gG&py6&~`GOM8!~IS)2zqpKv^NWs$hDy3s|svz zCVlcs9MY-in18O{y84~aspglGn5j&RdKb&7$g>%V9M^nbwm4Gc1%nysw~C0DV_Gk5 z8`7Q$TWU{=HZ`9L_Iu~7JZ%k^^@{-vgnk8L9oH!iJzhAZTVGBE5VY-0k4fLY+P zg=yVt7!NGDF$nYU>C@YXdOXPT+^Xpv2Ov$S-yvC3RRS3ct*#3Fcl1=jzBeSsm+TP$ z_w2Xe#Otlu4hh7ne_ohoxNoSJe_*g{A3_I zqyjSxi%l;dlt&&Dp&MDXBDF)9!b)$AXjjoz3XEY^Ep5I=A@O-7=y6Sj| zzg>qmtjq-LSga5q@`S@Pzg9}qs;tX^I##Y=())!TfA{2xxsuJPr2{|F9A1!=7M#RF za}kMzp@SWk8y?+J)u}Cp_yeNo)nona{Yn@ILJ#q=(RU)!acP9;sq)M>E@Q@4IsJSX z(|KGwnwo5^Elb;m6c!EaR~EqmvV(e1JJbh1NJAV+XE25+VaYZ)FCs29Ks78Y%&O8; zolC4J%#J2sMd^|-jl|9^GLmY}&S93}NAF&|ZYJ6+vmk>Q>&xCqXq|dD4HD{@$eW7c z54OYK49{c`es#|rJda8F;wgqF!qe_yT5;ZwWuYVZ*BrV3PE8XzNUZg`Su0_|@O6QS zfH(OJEF;^PYo%H+PLi$k!wN(!X@rvGMKD-X8;Pig}jkg)7G4;*{W+*WA=Mj#vE91JG*#Rql zhz+tuWoq8v_$B48kYRndX7*$P0I!SQS{ndgvST1E8O(jf@rm`MIh;J~!R2fEM}vF= zN&2RbcgvRj!>y*+mIDl$oU$Dlo!y;o8lG(-&s{$L6qiU}wNvr_*cb$@f@(F%2L(V1 z7fJ4~|BSo2A09{4Up zryRT9Jt;gd`&n#{SR1hxHe~uO>~$Vr$+qoW zikxq1aOV8H0{_*U4Pi81ZHwj;JJx5{F|>U8ldwu!fZZG|Fs?Yu9NgNvUr}k_x~5La z1-~}nJhfY#}n9I`~EwfL5v8XHbVhf^Ta88^ekq1*EKNQD3 zONLp=S>%0Z@@JDvgEqMi{|t3;&KtC@-k>kH%UI|XQ)Y;=fF_?N%puC~qZzDHyq!Rj#}}o$ZG(3ujJY*OM-{M5i7|sqNrnxo;_s3pejW zTAoNnNQCcY4cs=c{H8;ETR&VakkV2F&~Eus|%3|8vzx9XAN<_L;(=V%a%R( zRYw|TJ>|kd@P$PDi;qc8B)#f`y@|2?K^x#xyQ@ANT^`GQ<@ws_*{UxbqiUY>X0DQ8(nP52D4sPb9K}0EP|DJl_ zjgWBcIJCdESDt(j5D}r)4a);6oC(d`B>-y4S!~66Cb1x0Flk7>{U^Ck7%&#_8Bk8E z`S~xu^tRP}BFsE)R_Bh#osSYG6nU01<&)(e#~meFe`}bd9a*q8L7wVzg(y9JdavrL z^T#p~<0bb4CZClH_7>X6+f~e;SE?oYScrdl2s5@}!eKqT@V8Y`R>Rsb5Kl^$7wasqOQB3-4ZUF6C z^|;#5Zl>_JJ#|>>o~3%FaHtyH=JW&i7KzCvEDMk6{qciOab;eANeso5(Ux@MrzERv zB4>)hN+jFXftk_)cs%V4=~DR~h=(q+4#+!O>)$_7G z-yhV>Lo6%}Osrt4wM-0BK-0Ba{H860;>$wf1Meay7A25kFmmB(aW^ICeuf}uE5$Ig zLTGB^%jaKcQxV2V>0%u1oMf5BSkW)24Z@LVs4#W;+~A$5#}jjn7K@VQv=%?7{d zwdKb#v)5d?L?F^Co*c9^=odiNt}m{+$wWrCX=Rn?tvkKc{<@O|S_l|aI5O?mcDQFz z3%LO%`-_uYq{IM|m2MSY*7u+3`feJ|_a7mEGk_o*oPGy7?A=ScwoGYPfJj=be(M}w zK{@V>wq!emmvh!7SWA&(TZ#2~Muf$bq#HvB*KWJ@Zi}C6h@4yo-I7Pi#s2#SR?(wR zp+e-6T5%yMyx*M9GI{>wJ&E4Pct{{@S529D9t&j4z12+VW)(?b!}4PI@NsuAN3%sD zV%_fNzYJpwi1T_CHk!!jM17Xj?zgxK-(ki5EnAaCQ}@-M!a4cZ8|JF%16L_ zMIZP=m7t@J?WjuSd?MvM<4ajErk1blc+&%fID?8^gbdGCTI1cOo~YfC0;riiFu;2! zAAJU)N$O3&?hKJIRR-f9E*;qQBaGOh^Cm>AUMm z6}iYw%8#ol=IGfSnCe*AP}R|=w4gNZ%ns-03q+l>{gSz@E_ z0)Yv*Nf&1}vqlVKTL>=oJl>+-{YuW!ja|F;CynUTdz*oCw4-bGf<|#wuFzg5Ep!N* zS9QnDYUJf!Hla(*OvZE*R(jj+RO~#iH#cBXDA9E%Ht(cl7*!#^dPh)FIpuQiCpt-a zxNpTcytuiypKfCQ9?8AIb%sq`95%-Kuy-^%_95hoV7rQ6w+~&lBo4R0h{HbwoNwk{ zpL?Y~AfD3bzI`C5NkZrPh)r8Ay6n%Ra7D%{ngh-OOoq24gd@u`D=E%|&psh36hDc` z6&&R=VVJnncOCf2>fy#tRa;J7tNL0|onYoy{lm5Gp@%k7f&>HHQJ6S_>8h~@rLu{9 zb!Ely42w-v&bsyNC1$W_QlerWjHhHibf3F#;EU7Ck(PYK*I$i43O?hUl@eq8@P?6Y zW5Z}T!7EMUp#NcCM1yUpM0mQNq!Ld7UmX&CJ$Mj6BRB+<0mh=opmjU5RB>ZB5~5*B z>O7ZR^4U)ods={E1al$VrJ0HIzR#pH-t?+j`pV=9{OWk^v@|wW05b)XmYC)Kcan(e zCz|tg6p#YbAxg6@$qSQ4aM6U8+A+FyzYl$|=F*0QshwGy9jY{IWWDGjSqPzx2M%vM z@snHs9A-QgU55QsZ=#eLK!t0(YNTp97whR+!CS9MwbPd8{Xfz%LX)jJVQ7Y+VWT*R znn{Y>-bbQL5Z(pteNeaJt84R_rc|jIU0J!Wys;tVw~zMxe(B*TQf6uJ8MH1-@z|B4 z$I!slS=y-n3d)~9aXpIfG#%^z8H{VC(nVxEMPQY_R7^S&No$cIN}v&-XFBSBcHY5) z8f22l?NIAmLq1z=x>*gI@x!W@oF|KzndW35o_PeBX7$sW#(dR0(MDM`J9K#{a^7r+ z5ZGNF8T&5*CjxAQrhjDsQd(*%GSUFP_);vZCb|F~$bFU~b!@LXl1OV&ybyR0(~V)G zDnsHmt6Pg{a((Nauoy^=hu98~kE6-b3byRG#@5(E${4d+x>WzuK=}2SnN|!!@Bp~d zo{qi}gNWXkLa-E9=r#~oSk{bWQm@)}h{CG|xe6Ggo+hkjtSui(k4$ex>qZc5D+TKu zg@08*jSG0!ga-X@diRbz7>0cuApfABYHF>t>ijQJy_0+j-RT};c)%QgFqdegB~9&9 zz#>EEBSZlspxue+SL@GiyB^zZRjI{1gl~;dvD)*ZfB4A_(aPh%=p)OZ6GtPj=(u9Y z*HeD#KmE*E;c~X@vQ}CRIzmr)w4tFEM#H7I7-YvlOX*)ioc#`LCZ8;?=>B0_FI0TX z_XTF!4&wuaJ%&&&yIG2ee862Ms&)Ou*+2~O%yDPLarm&NkY>-%8M?f#p=FXQhnmj7 z&vCON4X*#cPL^o0dpyXMq8(&ZvvuHBqUc;tk^FP_k|Qn-yP*QQACgsma+3YOA3lYE zUjBC$;9oByjfv)X*P5SDQs_8M_&V_qnUxAb3PFnMrB{|R!j#qa|8hfW5o(dhom9iu z|2?FK(3ik4^3iJ}DmbbV_+O*>*AsrgexQAA@Z10RTA%Mxo&S)$tpUPa59^lIfvLTI>wn zycFWK@f-^+XgmI6J<2p7wwkT%^6z=^zbCg|w14#B_5}jkja>y)T5TfK2Y=rWtFcly zxJmQQz8{Gq3s5-gKNA1{d5*YLIT{tKOZ6G`QojmxcVWY@gCUaSZYztEr7)L2Ez=o0 zcu}Cs_zzohpD22NPoyYI(I{G67)BgGY5ES$t-Wbrs&F^u9DKzGO{-!n`gXlWsT{=D zD{Krgm>|l*NYCl_2nu11;q>bm`HQSgROK!uN9o4qI%^WQm|KV9j39<{9SLwNjtH&flpIv zj8&r+ZQ6mp`5<17K!_n=hc-L-AuzfrrXpD4}a;;O&QK|lSUD2%oY4g^yh8#Qc7 z(_)IzaSwUuL3dWgzCQ@M&uF?rkMu(P_%NelDA(Ut-rwb&9F<@*Ek z>rL07>d3n*<0KS((0J$`HTCo=n{`nocr7^^r3MO!4LY2ox!SQZ8d_{>uhN@zwEH!4#qtud|5c*_D%)~aEw};l z@OIcB3Dv3NnhP?m$-MI%_P(0^ahGXXlHlx`u+nc5C67%24E3!(R;sM)wPj_XEQCKSB=7fX%qO+#P z8vMM-C*u1Cm{BnBfJ**Clk0Z&(tJxNYvJjlzdbJ0=SbUssh0mrh{hRI9{n5`KlmoP z#ct~>o)9azBCIsg8tA6b7{_9Es34C*MKs9OEMZ>l8yt*QXH6*vUzLxehFbe89JS>4 zUe~C)_*~ao@hT(f6dx>TvJ#-D%Q_vd&!U0}{wIha1PmbBzjW}5m6%SxhY4@Tp9tKRH5;sJe=OGcIk<~V-qf1C-@ma zlPSRW4#$!utvRIWc8bA&>9>*iK|gHXaA2~ZcsrM z+BUbplyI>{FCUi=;@t|mdJ&HbD@ds?T2v&-Ct)Nk%edB5SoWqMDcrUKglybuvsf$- zvqJg`CWhN|igF{e%ydZQn!vLx8uesVD*P^ar84oc@+v6@6Nye9aioo4=adJ2jV%H^=yrK{bBY>5 ze;Rovhd6b9eZ>uGioe_UN%B0jmTj>Q(OgXD+soL4@a?5{6_nN2r&|W>Jr3^y-GlBJ zZ+C*{6g!ROl?m_GaRZ5vpP&A(hAo>#h%{zO(B>3rB<7HapzeGg$(4@lSnXXB(dVjQ zt}F0etwq!AuJ+ZyN+!xe7S@TYDfXSGd@%3C@>9VGrY0f}KRUg%20zxkCh!%ryi~Bf z{LLD})dJob%I*SE)T8l9j;jK zUUDVf>=Gs2pv0jbn@U$3x_skJxAIrl_ef!B;t`HP&6}SKftk;HaK3jluAQ?|H_KSIhXaupR}>EK2CzQQ57Bf zayt%~b3o=bnN5|Y@hk{H*3_3Q&6+i!Jlz;4TPhHKKzU{Myjdf(-R_ZFZCVS(La$mD zxStSmlGC}E*L?3HJ@35779~WhlONiBD-l`XT2;)m5~s|26MR!rGSYl?-}7S)>A(a| zzM(_oco&%h5dx=+d67G;-_EUWSl-(Y)RlPZb&C}lPQb(!3=2 z`do~8_^Z1lbsQ^2r{mGP<&p3X)*w+zA#71#%2ZI`)|)d+43S%50FXOxzMNVh&w}y@ z4?{$Q#ia|@8_$~ksbyUfx9Lg47&O2i=)t5&i(yxj{mlU@g-=(OBp`l!)aE}*5;Om6 zWE7$}w$>GBT&c;c!Rk?~#+vk|RX^eTy&D(Q<~FD2j<)ddq}7nIRgh9j-DaSA}7I8^dgw(-dve&7Ixp&0YfPkWCEJrG<{zrjh9knXoe$f|4!`%Q0zWk%iv$I z4-s6dlvCJN#3vy9@EAz;$eL-V)0o-%fD1s0>ATc%vmop}T!%TiwNujUzU%;C8nFR7 zFI-<3Tpg8RqUH;#htM=Qr$Zi>Y_T-=Y!cr)QMH;Rkz!zl${1V}fNgZ?IF4r_PmRS~ zi4;^9#o}j;eS1+fkJ>8uBT-Sp+q!nV_1srq?O=Fwlb4v3bhN7r&owqCD$TWdv3ao5 z?ai0wY#dx%`lz_9=31fkuIfq3rWfMmgM5G!tJ@QreUFc&H3+-zSnUx>d^f+hdzdyj znrC$G-={-swKgwhlAN1p#kqnkTbH>(io#}VOazCG(HY#lk|>k#>k#sW*F9J!X6X$I z85wNUBC9Si`IBOm$0}wjogeC{L$gK(zZ1DJR&?~{rT<5vs^1X5a5axs)P3j9En^n$ zKLlOuSfInY-eNDvydv}NEE;MU{5$$X(@InHNV8r;Xg2grnjEUtJnf!#XZ;o%O6y?} zp75OzjFa2J+Ky7ehYB%+6@Jga@+OfZ=U`D!g{pTfe$LYJH&gEZo4?ml2QxoJFXB}C2K95@hd zDh2n(2P-IX-Fs#{zdMpjx@mjFe|c?#QoFw%4V9C=rvUW$?zM`PpALO=7{V~;*X06Q ze0`);E1spK5Z6!d(pAbczv_7017XLEiNl>(dnnlUg+rZFcV~~M%82woz$-K=)`La_ zbh#!b6SOBJe?#ai!ii{qcFfvT8p$6!Z!4UKMynT;MITO%j*hBA334 zWRRl#44l|Ndyp`RJFqD&1TuS5_;F$nG3&1WH2m8~~!cG!KN$_>rUds(_S1W9X$S46+?g!bOwH5ofca#=mo=gRLswY3ApDy6~G?{J~6FSd{po;xUXc}=AdL8upk(M%9SU<(5 z*lnAVd_=WX@|*u0NU8GvC7nBzSRtB8IwHt)9sNrKP2h%vyUlI_|DaX$Epy|bhi%YV z>g7{uxm2sbJ89_2I&#b{H{ouzS9Z(%L^5r7_1KGL(c_~_Ac?4Ojd*UW7=Y5P8&Zpo zNOH$u459m#;p(k8HTV!|mT$y1WASly&vH(tBf|E3#lrJ54h%YarXq*8Q>YU0tR5v2 zKiPvk;t*0|Oz{Xuyz7bbkDsOFG7ptGG)Z9X3;_HZrb+<*ruc%UN5+mlggGyEe=)lh zm(auf?&9E1G-BVy;?F7K1&Q>yx!-NX zg)@&Qo$pm<=^O@y`^dkR7mLOGgY|=p9asg#6&ZLb7bDEgLmv8;WECc#{4vHhifC%e zhSVmOSb{>&maGf!!2|XX8K1=_={=v@GwJ$mL$CSSd1ZYo;(|#Ti>+@n1^Y#dw+EE| zz>H)Es2Fp`#!2RmRFPgC{B7Kvd*_fzLCA~OUYE0C^|l?x8Sm(YZhhNTt9y^E>J5r7S8YUP9&;wW(vm64A4rvc zY!Fve|8#Av_aL5{wj?2scAmc*!m_w1nkkp*)ls5@ticj@x$KN`pC%P58NN$?`1WH! zbxq59VR;D(=9hGHJB&PQe7ALNR9N@DXSK$djhV>Z(x~r;x>EFmFT5BZzsHB7fvC8- z3wgwHF+`+4UuV>y#1F`-h(F-_bb-}7NyAv@RGv3YEZ_jl*Lqyr$C z)K4Gok~e5@h2BO}IxO@)<=3=Zc3XfsNhZVWKkKk;ioaQy-xWhe8POOISl_vFpf@QIr4QPSp3 z3DeVc+4a^P*3YNumdWy~qh+T_Z);s{L2L4hH;o?ARy6}{>ss9-vGU9M^GlQ4R4Ni* z)aF-$6nd@K%Ru0LNdyXl-vErm@lj+I`JP+9<#lg(PV3J0lZg!?F`P51S=U7C4 zu8r?~@EA9jHN?^(|KcCz<5Ud35BQ!Z(~$E7?`Y)XUuTm=6l@`yI;Q zxF-t%6Rk_}nkORE%Bj@b)lem2Qs+yX<3nUwVUAA%?*4k9^yMnJ5>-kI;VwR|oOP!x zLRu_36`NU3HS25U2z1X>`h8ds^x-PBPg9$Vr1|i#MdwV|un+W*Cg3)p`kh}Bp<$ls z(48i0+pXH1%=zN}xy7<`Y{SwEua7%pDm4gt>II!zIgrJf9#oa;nv)7zQVRqkw@XPaAX5Ay#g{b2uzWF9G)ODFU5=Bx2 zynxAq=dki=^l8t>66=~eS?wcR8+mw zD^X*wMEX%2Z%)P{YcNdWb+j0iJOnx*c;QMzccnK+k3G1aW=xSe;&97{X*bBf42)4o z!=Lh_9zC7)L=v9tZGN)oVkVh80llLgYO>c2U_NKoI7w?FZ|arhcR$d zu}NMbDu(-Ss}%7jQw!DLA5jl4MY@n#1(wOVLbpW%_~2Cy;Y+Q>JXYGe;+nJSu{_p* zl841G`c^y9FP$xUn7z|(rg$l}NrAg}*VA3QPr$H&mIts@ZAPr!VYLw@4xzW{WKc79 za%%mO0A4J9d|o&p@2m~w2S{$mL&Cp^XJ0ZCXSF5;rVLUb8m_xDMNu7#T`y_ph19@-5rnjNX4j@dwM#Fg zk6XQ*YL;G@y5DJ)t=%x%ZCy%skBkcmnC=Z``eYJi`ZN;#mOqD!dhS=28MX=Ag;~iq z+>gX+*N(-lY*Uafi|%@S8lT^tZF{u@wNL{kbSWjBHu^SPq_wZ+w4nx=*=XIFQ&FPO)b&3*9DO+Tit&4|k@ zp^`E}oDW_&PL)vQpGB06O~QZ>FU3k$cEn=3#x@Xg`RZw|lkp>B0#t9VeK+B{ zE^pQRMEmBCD;Uyjd@B8NvH1uWkVNj5HCJ7sCHVoe6z$8}HF>7nc2&w4$Ou zsin)~OTy{}?LTTG6BIF_k>Ul2g=)aMzWn~PE#ndTDsN?F>{WMilJBe2x&|4`cw(LA z2Rqp_+&k0z5r@@0)!oC$d;J$wB%3e2vY5bTR=w}g@1E?84o|&C1s2=~a<`(j=flWv z`bEz<#a+$C2O)xSuFr`+l{u6rs1|S5)6v74^T^gy%H(>x{sMOhV!ls<~#u94LryN;B#{!`r?sCmu6xDY<(EqayS##-Pv2ae*toA| zv&1pp-#AjdxfCgrO+0Hq$a@@A zP|+C-C#Jmf-PLxAy?bFs8JxU>wdhdb-{11~QJk&EoEmbd8-8k|mD z*R`0k&tLoX)>ikJ511D$_aloaTg?YX$q&tW1Fr0n=f7a=bv^J_!zx2d5@0+RI8dbY_IV-gqeBf znGX`q9$LjuvIbf5O$Q>U{`_%g0~ZFv&d~?yfoI7@y3l5$q6~Tb2}(`NEoKEB1|Rpv01m~!JYDQ{KfzG zA4~ByM+b@~FzWnP>H-p#)DpO8sY}aO3e13OTyrStFLp|Vc#Zil!RK6sseH*eDfnQC zO$`%xrzKNzq-&sJOwFdZH0rCYT{rFhlVr=Za4z_rT4}Lw&@oEZc5`LcZd$dPJE1`A z;}uy5{-WrOA^Zjjl*>3_+)_w=&QDK~G-GbNUS^A_1ue(RhZC4qfm^Q_dv$;p3R`a0FZSN61LwkJr?{J1J<&K>0F{_vY%!$L`( z<%v!@Aip-3_VsJXYuFD=Kf234#Vmgd+>NBEy&;b&pN+0OE!2YWTkt!UNLiX zZ`@Z1KhejLd&e+OrPL$U7?WP@?vjTtzwPg_=t|GXP*+0s#Kk6L$h;vSi1Se zcU4iUTKZ=bn(KTXI1|fLIQwE)NPHmba}tXI1+ZfVz(6x3H5p@h?DH9^t9_a3!J39@ zb91O40!gS8a%4t1`eRJ(*%~X7ok~9PbNdG}|FJM4UeW(clHl8Cpqk)X;depQf}wv{ ztg6D^UfbO<6jLWs13gNC1_U#GS%84y8S z33o|3=3rgOH1~gJ0eE!p{R+WfO|niXO@Du;_D@l{-F=8%EydXp%XJY1UzT7}wZu!Q z>CodndGpplB&5d$u%XTec_XV=C(I;V#Eg9Ax1st{-~XB%AdcY!Vpjuka6au9)5K5V9;$ zUPENqEJ z*Qj%cNs9FtQDxcB6EiKvcBA>{Xa|w3`1$M(_tUNJn8}o=O|J7yha3YQLIsEkac1D~ zh|IMVB_7U`oagBkzHMZB+kN2Qx<2yQhpKJ8qxv*d1L4l@rXJjDS3W^~?^iWwMMgmUXit{*#slyB(1l;MImEY|1|b4PFEm=Anz1(1Yra~&$bqec#AE8l9*sz$4s zw#5XqBEGzM#uhEvAMd)#q6^XdUDAcyo4{cJRcVDnB7zIkhnt)GG~>?^Ox^4Yxi6OP zG>;$>s4F>7?qO3mymr>7n;mkSeo8SoZfFH)iFBNx4ZAPvF9}zd33%khvJC%~6sN-& z)KYib2lp5Zyy<1Tz=$N+fIUo+!zj<<3iuJ*O?dTz3dEY~@J=qC*0)8>z)c=oKY+wz za9-x&;v^3|IIT(Ob-*9Ny5>@*hv`L_@l@i+>onlWwc8#Zt;5uGyVu(kfyH9kCm6B= z-HS@1>doQ;QG znEAYp400lEz1nWX1pzRw9Xeo44Y)@%0Y1aP(Zoj{{ppbzf1Fu!MTSS=aC1c3$kTeRXr|2%QzKGL zPOf1pJ7-}X*<=`?R`IZw7T)Chjy6ekHInDD?98h0BgHo77Om?S65q#&M#mGY?QdIg zvG(vHW30aS0Fg@hy^fu%j|~Lz@1j%YNt?LK2 zTWO0@H7H0e8@d_PLI1c((_&q+$DNU@_*UqIvm;nYZTkCRg9bRM*HckPCIv}Q{mq7T zT$B`EXfgmy-rzpi;vl8g^oU>theJL_%7ymQF66r5Lwb^Z)M>dqkka}kwdzxsN@N%u z+Z=CR8}Z*Fm;i=GYDS!y8qAP2xrAy;t4XO&uj0b>(AI*w;oBv)6-p_!G%SHzXH3NR zx}Ji3%ifdb?9q+pzzv}{`|zN9xcxB)?~Q2H@rhNucUDn-^4h9!*y$&jbPdeUcqs8@ zdLD?am6red79bp`-3op9K#q2Q_H?d%n>tlRYiyNe{XBZ-cyM7+u1BX(buNgE?dz?{ zBvy}Zelfcns!#*(p?XU<@}Uu@hs5)*1A3i($oi#)>lxwuM)AoR z7@c5N>v~cdK`EFQ{C~(g>!_%sXx|Sx(n?B)5)uQ_4GJnSAl*Z#gh-b#G$IyC!_Xm( z64FDb#83`hk^|B(^o+p!dEdM5-gn=cKW44@Yt}h?pR@OOfA&6%$F-6;xe0@`L z6G&a_asw5OL&tO4a!Bs1$Ywjnc!J_|!U2X$}zfHY=ha#dBHcSVh;yaoP@c@LI z;0>g9a)=$vS9obMx1FGE))mpk+?^5fG5SpbtddIH-f0dEpSR7dEyvtf3yXH%EPV(S zgkW&B;3(!y%NbvvZ&AYMTHM~3wh|JVY2Y+VHF>x(s8k-d3BH)VI!=6#@=Q+h$?IT_ zbPJX+W|#<9nOsC8*BBt1tD9gZW`9x}vIry!(c)|7=xoDQ-6~LgwIiw&lKF0vj-+qV zb-fWYBsHX>linHx98-|ItcyRG8tYqPU?#ByN1-W)*}CQGrut~du?UGau%4D)4rwji^S{5HKK*Es9l0TL_B8cUkzsKpT)C;3+~E&L zeYjGg^TvNqqLVjRlu8%@^C~*67*|G2PQ_m#m@fL!5pgR=sp`QqB;2syqn5}) zwE}jga-qE>6iJ7DqrC2oSnpk;lzrJ%Fm}n%QXPCDMzekpQ_!?}r<{iGQjAK_)%jA` zb&dj(9f~MTS=fk14104X2VfXVOcrQ}#?@xs(@q994FUN2%WW_ryJTZYl%5<2pUCI<_TNjyU+)DVDr51a(^!?*z>Vh6ayFNf1r-xnF(fs$ElzWS z_2eD3z{S|Af_)D{$##o)tD*anc*{kt!H&?kz3L{!ec~!fdZb|6x&M!6J5Z7l&v|0H zd_QH--9`wO1xG$r^ARQrU|eFPS>?El+#gUFZqSx?U$|ErV3j7!Am^3pC`}ADZQn*EfvZdtm;&?JULG`cd0e*GfaNU=j zP~20(u!g>wG=&T}grI-Z3H(VrW$$#MowGfznL+kam8VdIrzI&bmMr$^Q;rnf0RoXo zn-!$ZcW}*L>qun4qjp7q&{&D#5j=UFun$>&7T|DtcJToBeW#+)7GFtq&++hqi0cge zcYT0SCtkx_wleTPl78P)d#5PUly#2!D}-;`bKUA+v8h_dt-if4s&=4mGrhbv84HW( z`4zwhmeDcw12;D!Fr0uhLNiq_->};CkZ2bwTOxs@GYsP#iK>Pm@&dmP(-GRW1&^ch zbT6~mLQiAt{QcGO<8r~>kYfuJ^`=7dpyw(iyD!c$Pnqpk`I!A{;^fMd# za1Me&TN*wxjX^dcT+gk&Ep1U6R*Wp`!%{!ZU=)KSvEEiT^Rw46qDoT>_CJi0gH;J?lS{j3b@)AOMfu7wE(dIv_0P2MPE#&#jw#*S#$#1kmxW_3Ly*t z*^?)a88`@X(|mmWW&1PE0mB&qoy`V?3Hm&hZy?qVH^!0*Flb#irgCb${r zJh%|+3Ha}NuPlWyi*1^hIT55KUkUUUH`wA=XgzG6XtYV%fadxI!&FroTch zn^3^XAdLUan2n*nMt-LxJsNz662eihYc6BS<<_MH5v1wgS`Vz`_69loV%(7^f`Dp~ zp)J16)}Y3|IzPEH*>aCCv=KA{I+yke&@@Z!L5QkNcAk-DtF=^PgS2VLgq9WfB|#AA z4tf5Y0zcPpU;Dc^JG|l~!k$$o%er~4+>+#+|C0dBt}NA)m*%4jsgWJk3Q-lb%q)EA zqCNJL#`}MW!8sthlX!cw>(fDqjMv}iD&YaL@Wu{Iq+A2+Pvgplm5`8$4ZnOiZfo2A zA_QitNP%dXVvzC37-2k<4TGb%YO&K2BMN8!c|yA%ebEb7nsH?zojwuJI@Nq+*9;46 zb`mhqk=8Nby)iEDu^(tQD^X0U)9!n++gP=55v{x4mS5$oVhH==V;dS6sJoKjZ{#2! zzm%iOXl4?tjoUs zB5Mjb&HFb}4BJF|TOR`zc7BhGVTn)yCYwu6v{QZljEh#w@A$ne??=|;^w30()=F((=WL4e`DzR)ilUap|1nlt#qi?=ev%olkR z{zOo{&xW9|F=d-TCx`4HAL@#wfE(_9&)LV!m<~Hfa;)5PaXoBF-A3n#&zGP7ZR-b% zHa^T+Y_wViE~yhV>E_OPVqet0))YNh?5MPWfX^~Q%LsZ(#b^9ukYL^LTmB{bEZ>?r zDWK&ZLtAN#4m0sNL3pVct~I4Nx;Vv9S}IN_R@ui=)er0**MAE<+ib2nnMNZ?g%nz+2&9i~gH`|Ozk-e%TE-MiiX zuyF++viXDvg`8ycqbpXJpvBN4PFvrgFxhySi}pyUq8fHaH8?F$%qN=^q63jYSJ@UP@mD) zHl{S4PFzm8yxeWpsz|iTIKbyZqh1+Vn#wDq_n|d;mB4I;&s6Uup-!j)r<`%<&G!G6 zu*~S&iM4Kk3ZuEsB7#7J0H=UW4ZV&a(w<)ft@l*(>vN*Lwbc@RqlzK|*55%hSF5Jb zG2vdRkjsWx-yTsv$YJn}WY89RB*;+NqXUC&3gk!*XyKFhYW|gcDx`wgt2>Kw3D%V_ zDhRiqUPO_9>F`YC7~6GVnurtPnkTc2Gok#X zUb0e>WGoR{w@yw2#-=DJ?s#i*Y8yhbmHB4&6_2<}bleeIwacVSl@DV&zq0;$0n*^q z+?Ci|SWxB8>(&;_HBI71|m+{rjJI#Xrd6 zwlIY-xh;zsA9-OmQT5oXzTr5hUl^{b`5#;j<8a6Z%=E8?r#I|00+nsQP!KIIZ6z^CUuc4TZ(+6pi8^kv3%H{ax;~v^DtigyX1zb0 z!)2roj&~EhyF`0?qHKRo^Y8yGvzi&TcPnv}Kltq=W8Zs_$X10r?X2xFM%od>E9G^! zXzMYY?jCtPflqUkWnhF!(2)kM->(N^>^Gg9F~Nwx50!CW(lHW?Sx?Rw za^e>AO%=6^`45-hQjc;&4qZyQ*~#`y_kUa^fp`1yY{;&ameao0W4)KG?>k93=k z!I|#A`DmqVM36RsZ8|hf#AgQbVMdQaq?}z3t=$fNBD1c7A*LA$XN@aD!;O!lWlzZE zwsyW@=oXvJTd`41YiSBHefu(sBG)a4aPw<_>3RIL%G=5-&xannA4RIJ4qGVBUMX9y z%`m<0TQ5_{H+q=6y_GlnDyp$NJxK)3(qi4Hpe$5{*`)yX7iA6cgsqYSaUI>0g5~}K z@|1~JhNVfL8vCh01S+7|kkp3eGEv@~lFEL?WMSq_ynTFh7+Ui-GqdN^xc%NF&qiZo z4}V5r#$SDDogU)H|Ff3Mr7uQ>bGi6=iL9-{hV=(UE4=4lbKUqYjDlSG(i${0^QLZ~ z+r4H;WH#et8?$6fF~S(Eh1{psq)Qwu3ol{*dfnLTSZ=D1zs)x)Xn(y8IAcSeKK_}~ zJ=bCNtlC$-F|$($zjL?zz=5vE%YX&5Q6P2UxY>*|-gL7^AFs~Ss~^`2Z@GW8aQehc z?(o%!bc}`<;<-3NTPfLKgux2js$=Ak)7~1hEU++S#Y;bD zo3>l=o!=lc6Yp;%%u64*@hCxa(l=-H?Y?)(=$7huPJC6T@6cK5j~9>si&6PSi0>w3 zZnrz2I&cIvv~i7LMF|Jl!{0dB%5?{dNoQADFf_N$+SO>=_ zAo}+`Iox^& z7x#+uEZL+|wqDX04sP)He;#3X!%9T`R9O5&BOFBAjhHSD^4VH(Cd`cLp1QV|ju^6TXx#{jPfe0XF{fb<{(o|NHnSc}cG+)sX1VMdtr<*_l# z#4{&j>sYs4YbV`B0rt+dvwVp|t4-~Y#rOM2?~EzuD_l45)0NdGWoU2Yt+uvaPMT0d z`7WD;;e)A&1F6j&O*MRy6nf_3-lm(9^%@CmxwlCUqElAWp;%}%Jh3QlBsQdDEoK0l z(E5+a7WG999UP>=Flc}*Ja{=Wpe+YHMou|fd;ri&^pdU~(TzhugHp|LF=#?Cn@`>zWnCZ z72pX$ASB#q$RI&{gwBgxH>?D;)txIQhX9X74<4N!h4RTPUe*}B^4+YNL%$p^&`(dE z9Lz&AU;1sf{$-9^rujq}+WkJ}Bjp)6Cj`8s5Ydaf|2JIpYh>(wygEOWd$ofkS>%IlqRIWa-%6rFd5m0^29P z=@QhG*lQE(RhyfzmiKTh%W%w%7+IQ9U_eUD+@9AF!8>xhH>^O(uh8e~>(Z$C7;(Q# znbewK?W4OK7=rBfdmz^T87`99VmsG+VsON^UZ2T(6?20l%22%Fl73SUnL&h#1~6}NVr*Zz2i3aVUmJqDl( z^ed@?-!C<*abIiRS0wJ0>qb$A8riMcs6SSoQK7t!>J#Fmn>o1^x4;Rw3Y{$9&UqMx zf{Fkw>9D)XOj&dF?%g=V?+rpcX_AXh8L%v>`Ck}Cy`u6A2ovB9lpW&XP+PA@CbdB> zk$pe834}#_vX#xZBoqov+=XnhilAWPB8$eWIPIKa?=@1K-4x@L{#uAVr!m0e#lI+2 zAXJ>`Wl)w^{2nX?ck}09c>JE(NjY}}V;h|R-1WbL>8~WT?UJ{b3fxr5?lwGNp{z<7 zcXB!f8t#*Vl;Jb`zL6YO1^l2v4Aba_xKEVL2F{i+S^1cKbk%f2zd>=o$ZJ#dS{ML# z5tiR&Ve3 z^51tyl`3J1_GKr9qLHxNx?;qAS@*3t$o?72{Kgtlaaw$;KuTF5WsELL&h+X&QOdBC z+t^L>Y}EGMecC6;oigi2vhi>zY?a>z2Zj6E8Eh;QCvQpUY6bdy@tL^%@=A^dL)$0W zFerp5vBpbkZAqLCN|(A z$&QzEb~Gd-C6JATR&U(#F&L-q%vQ)vNDb9iqAyNg{T*38)%;3MT0HH$)l=qn0gy9D z>o=etZlmr_^8H`_r(HM}#CQ3-6Cph+_H49YiiW)TPpTW~?a^}%MJmQ4@}dW-6(ZjE zCL?P5dJ7%aSY;}7K@t>*&y1ohgR6*;9YEi%EI-FeR3y_uaLD=74ZIKg@vAbvFR505 z_kZvu>H zfMx|-u9KQTC zfNlh#1)4keuA{or3 zFw5*sMDaA(ZT6CU7YaF*l3&F1wuMA!1dWF^Tw`h?+8B}L4g%T2T))+?vgAP zHW2X)f3N4%`z#c7Q@E_nUZtT%4&rLpfb7nelQtF^k{X`O5jPUyJi6&5miitAj=2dx z@NjB7eo>PAq(IV8|Hc|TS7`=Ic@y+Bi=49=dVYJLzZJf4A%h|16uEt5R1*-Z++Cc40oER9Ht>NDq_*GrfHv zRC^mnNI)DFfwRMN!w9pM4dTii3>`|PE>`pA9xZ#FP*u%8{xo6$VY-3X_^V!YSKjSJ zcdbe0N;B;#+eabj?RL6Nz11Ns#}ifTo69(nY~$G{Q(HxPwpRZ%GLPMZR*HA^D$UzBI;R>K=}a*H{Jyp>?L+Vqd8`9cXbZt4d~l z`=7DB2FMU^5ioUkfRDcJKUsiLRoj|!otHzc1a~d1cW~Hjh^EueCJE2Hz(_I;5-~lc zF7G;bODy?=YKyY|BZc>v4@d5a_Jgh^VX1ymqHGZJE6+d2D2$p-tI6K)22G2hcamGa zPDy)-dwq`Tr$Nna&cK@GnXMZ`>4%U@;`_9s20%T5N;nGW=G2bRiWuaqN~I|Q5vZ1|5%R!{@RBfOSUmUN=0P5@Q{pHt6UY?s2 z=l{TA3NQSrK9 z8{g{tu@ud3;32X(;D(+1;quUjTUD_tNlA`2dCSG#Av}~j=J3g+s^jrm>}F`wqtnmP zP(T9?sO8&TuF!Hkw|VqVUo7x5+dde`1W=q_ce?nA^YYAI{V}SU%R@~>~H?J8mL|=jm!m0SM@hyKeVs@}{{1sL3)8qG#`+Z|T^l(UL zj>^Nq1tsNNTjn?XBV@g&E|nFRGQoaP^bmHl*(3WA$_qNj*y}xudh>UCC2j8nsTpk@ z_KP6SQ*OyJ-^tWC-dSZBN@H}yvTH6Rk7POM^~?ptAd**#+Markm=j+s6n|zEVigga zW(2J6S;xrz4;1kr;b~Mx8SrO`Mg1e7MMj66ejX);N8jpC%*nk`MN{Ud}GL}?J-$4G#5mu+aaSoXrCB2c3x&X{A)-+a5TQBA!?1xEuL zfla+byl#NzKOpwD)Slx%j0~LpK zgGCcOK6BCDqPfL7D510)vUEVn61yI{c93B{`{3$>eYlJJEBW)V)bJ;&PD2iwBPZZN z$=|=H9m2+h>2EW!gmSsJm|8L!zvlLgLic+AOHv}-{u$e{0!hCJiiuE-gB;u2&_@6Q zdHMKgFDEKzgpmj}=Qt1&6{^N%os+Wfq^D;j`3O#w&Y#v7Vg68*BkVVR{lmFgGTof3Yu-T)(|nDpu+30EJkislG{AzKe;eYibo=GnXB|3zY_ znLrR$qwJGwV8_)C&1Pz8*$IC#eE3yH@2(Q+!aT#^qj5N&eGuW38WRum;>|s*(+O(9^iX=iAY77?59k&nqGteyY{W>LIswgzPVvRgzbS+a8B_Y%lOw zfvWk+(5oC`-g};gkf?TpC$Zo=JzWnJchbF(yWKvc$u zdQ6c7O1WNS+QV<4ChPY=&`4A}ubXX&2mGxMr>wR-O-1a_<0!X#I;0vcr0v3Q^s=Oa zlMA6_FR{XhpJgk3yq~=r;dY{iw5xxa=X2io6y(&hnG7C28DH2bCn0wroyT(ZA|6V& zG?q&M)7huGs%#n@Etj^WWiu`xC6KIJ$KK4MIqUixkV&&jziZjJ(*iUK{(S7+Eizy| zR^%GH_N^{6bZ)3FxV6&d(y@2MW~5&8w6V^9{rAxb_^`fzR_9pX_pIoQbQ-sM0PjIOPHmBZiGiAq0NB90S*C;2zTsPGmwc=VDr5O_wP2?k?8W^4`?=F+zoqv(Ey@+yMw3>Qx5g- z^DC~WA#W7Le{~%#hurSZlxg@?HpBZ_+IbO8(w-Y@WS1wm!iZ^s+@@z(cW!^-EBvzQ zcijk+WOm)a<+(sH>boQFk>c9iL{h3E4QX;J{(d^`R2FoLqb_%ZKVf*~-CUQyQ9;TnOJ6TCWWF>}kuWeo*`))2s39 zam*^q23xpf!>Fr`v3~L`;eu~CJw6XjkoML2=n=LY>K1G7cs)4e=M>@Z!$sq9VF*T$ zCMzw86AT_z#G%|SzG>9o8G5W^f%!r$7Oq91%IgM{)V!jT{BAt5b#gnr3309Rfi01y zJn~>}?AGTeK!tdG1bPZA{zZP9mdw;!n)54aBoNQGpABDVNA4lyy@I;9(ZL>(l75#K zMX$e7M1=FY+Qrt_bIF;?W2dfKI%o?`3SF7DyCkx`s#Q&nS58G8t#g=be|hoi+)~7V zz6u2UKeZVx5qGrRuwLO{5!ZW$ajc)g_dj?@n{?EY)5UY5CZgAT62K}q4C18c2ZbFm(qIx42kpz9P}RoTM1Z0poPBlW?mK=?o~T8nZ4B}D z_~;CK66KhL`urvp#0SBaN;)>b>A&HX*#Gq^`E~0J;UV5=3o`9@-j*x?uSBL{5eiM8 z5;uZ`L%qLLix@yQ-BV3PXHJ~_TLf~($yc?kxA{A?*eA=s zV%(W`H<0<*mGf^N(57-dwZ=-IQ9g7pRv^lDS_U((=JRrJsPmbd-YB^ zC$%N}pn!8N0g2%76fZT4eLcMJ_3s;R?qd4nTirv50w*GjSi%(H9OOj=?7^ccfF}!y zPYf72d~w%saq32jQg)K^>%O_B3MKE|o0Gxicu}KODlfW-p3Hxd`lC7^LT|1lP+q!8 zLd$EAJ4VFS>jrsPq)qsV6ajmo#RGNRAkZ|@182J#$(Q>>QA=D=6aqP)Z%u=>{_w-c zY_b#2f({>>hrGU#;uMNXDzp}~wZ12`>Ai`!Vu1~th|L+43~Kle5UmS^xIw)m-f!^& zFZ%FO+YUQoeIm5#hz*6QAmN&Z!ZTn=AT+SZMtRt00gL`D8-?W4m5HSUAEmtM2i_X{ z4J@MwI{43RrR8Filo=jdsbL{K0F_uuZGVlJwfU&b|S8infKK21S&SZbLJ9 z^@hfYL7m$TqlO+<>DqS^0}nS^bJmHqm$-={%BD--)esQRm{0fYHd`o}V*{5q znPsy5s9hZ9WNL#=kf^!IsUM>Gk*;wu``C00&r>W4v60OXSyK~zxvk6L1Upmv8GUpC z9?`OCK-D_g1g@{V3)@toxZGdd(z+9G>Yw30?f_G>3Ag5L2V&yUK2!Sec&ju=uh}BI~fB67=Vwz4v~F zZeH^%0P*gDE5AYo1;1J8pz)-4?v`>>)X^HINql!tkl-{kGGYRj3PjW#aC zcP7eCIj_tf6B*D7+k8(ws&mE z5PONfxvVm^x|1S`Pv(OrN%N)u@V;1-n|<0b>tbn(4>I@u=@*Nbm2P-~6$~=LDRExl zMm#h6Ro*TK$-889TCGq|ZE(%~yx5SU^D{|5Yr4Mj?Ms*Ecmg!&2}c7#3^6&KX`P?* zw>SMS4?J4YD_VB9lo&E52dNl^LyT*M^&mPuu#j~Oc6ef{@67!ws)kjdfMJ7Y@luqh z$;;yc`+n?!;-d(-5pu8t5ZZxV++~GTN#&^5+AW5O8;Mdubbi=58&YHH3r%JxaaO01 zs9gGgYHZm<%v^?7{}t|9XyMC#{Nx|f5}CPKQJ{*y`_;9`yYQ(aZuAvi7pcF9d(q*S zJ&#-(|_EL z?AfFh(>F-z{t~^ixel?*iQaxM*Ap-va>8LtY^&&kz>};1BrH&?=NCaH($Sb zpj>K88s_9-o)7bSYCOQ<;WWUj3fx)21PJL5Pq-!ixI20Do8ZlG4;0{-_>dIRc=$y8 z(Ia4PhC==Yw!-L<+c?m2XOh4PUY2;6j&}Gy-3?bLq!H~^BnnvgHut(&G}k+qCit_; zG^6Sa`NV{aD-+=tijV0cyd3}8pV=%;aX0KExjB~n>%C8f+JdTE#M4hxiG??xkbN*w zv~BSI4b<)yGlV9r4myErJ_NmPi65>yk;u)CO=Moo2VKu+E3UM3V(w{2_YVp@@~{& z+R>zEx6RhAR@#9~(vGz>d7Y(RIk`^ir0OO1I4c4k5XL)722=hsMVCzh*;mkB`yCoT ztk$a)*z1cf)`6D&M%U#G9U~7Ca??NcOT5^9JOw88I=mCX$=aR$oYr?Sd&>;1c_h&C8rhFf^Y%zZf8^f{o3{nz|B=hpx2g&}q>Fgt!E zWP?#|=Ng|&nR)sGoEB0JjnJB7fpK_m*?S$|Ta2R{HvdNMP(&q}lrJCBMx>3ic{gDH zOHzHZO?<~4Kq=eBjf8b-DHm3_VO2C5X;8(t(9_0f$d& zOgpaEPDH6anrt(->$*xl(|o5n)^%BB>upMW1}-fr)C zi~n1^1ST9I9pD=w810vMz=9Nf7n5@Vlpy-=xQyLI$s)pi z;lOdTF5N%`k>4SJwc=!gU#PV_`NZ#bn1D`#hYeO%0POlZfc;qa{-!R?j_IrxS~%Ur z@Vs?2X=uMnP=hG`P=9-{MjO`~Ll6IZBd+(xd&jPyYL7SqzV&szAEu^Z=kdBuSKkZF zo2#l={=&0;Jrfytt-1F5`pyFWH&5mh-Q?3`QKqdc1Am z?c(v`;{KDu8cXty(10Z;dYYHT;gq&@+d;08>-t z^E#*}a@Qt#_*7K$N&OCf)fJ)PILBn=-|t>u9yc82oZt0&oA-g)olFrXfK7>#$i4jg z2pw|u(8=9eBy(dJK|Lp?SZ^_#KAbdJ?Fe-qGe?J<2068zD>=0WAOH@~!1;rbv)k7| zoK@PTE7b2JPlHjULFilUSFE#k_=X-hpGMvu*3*Ga13^#qEFN-8k)O1Da=rUwnA{&5 z-X9_VRX#2GXOn-!G<_`tlRmz%wG{?wt3C*S_K9rz68G!7@g9T5QhR%t$R$>mY296{ zwDO~%{PH+7x+^3g@evHm4Pqu|ElwROEC)uwCzr+rKIXUcABzC$?#G9|ujSs|oRyohwfsm6G;Lx5 zUHnDE+vYv4SaSPL>Zkw>G_Uyy3qxI(LH10ZW%M@YS;^2&+^bFFlEIzv(PABqmU}F( zP6~~LjM+yc$~HNkxjHS}1`T@6e8FviL9RcIj0PobT?ZxdyuZG(u_}7`)lAR@`}tR| z^pyRZ*CsbkM&gpbx#}tfS$$HK2+mlw{_ivlml+qqU`apO#@=y+D~QlA*UVipTz&n= zv73G*q3=h9o`e@~9)_EWWLhrR^cHL_l&tA`2;sH+&l@b+`$|%V8FW+IZ&(ibIsEL% z&5mWShu4}IPTP^G)ql<<$|v1Um0^)LSI}Y$CL^m&BQP?5WytD4%U;O|SOTRBP2pD!lkV}Kzu0*;Pz#N7@$dL zoRh9Y(wH=5jiwnZ{F1qj6e)@bFq@*ZG?Ao9jW~D^5In)HLbJTRy%+e~)$RG=%;9{_ zo%K3JOxAtoD!7X8^Fu&=sivb@XU=RB&jfq_PMV+dIf8IK{tVm+W-h>uKqd|ZOz%S9(<|pJKsNQ8KKMnm)=~TPYU{Zp=tj;aerq{i zhL^s9n+EhYKu;zNZGz*ri6&qG$A*Ob^fF%+c$?C>6|S*5`O2USji_E*@1SHD1aLg4 zBHN(h_+tD6g+gn9dv7x)sjf0)nJ_Id5AKN^aC6#=()-P;^Uxk4xmB0=LP8(>gW|N4 zk@U;-*iO6e?7QuTBHudD;zW4e-K=mWJTcl^%^;WP49 z37l3mq})Dxa_0_?ZM3joYCu(Ks(F6xuSx4dMELsi&=2bn6&WX=5jl>HVJETY>g~cV z@8v*-{EYQ=BOu1p&tc{-$Na^CLe^4FEs!Y5r#N~UJT{A%KZ`Rw`4BFnt+R@^B76rT z)w?fY_zpVA!#TNx8De=a6Hg|Nf~7qx-f8jMYR+VEGILB;QF(xF z66M}}OrIEJqclvH9Y9z#-qoIXRQpP2>!j3(f8Up!Z~HS5LR*bkd-j9psb^@qms9yc z^DE{~-n=d<@qZAl8UWGW$z)RIx9UtD(egXuFTl_9=Qmy01f9QCSf3B-s^(1kHyLyk zjw3Q)ZPH~q`84k74HnuqV@=bcLRa3Js`;Y#;S$8bm3_phThAd((3H;8h zqL)@GzCA7Q@~O@}Sfx7`@$pNg?-fOyZ|ywwBtANyycXM@gv!_thUF86{a};}1M)}L zkdsVAvn3lw9BA#M{XmJgd0g#vQ`R(5kJDz zvIuq@cb^0iDO`p>P_e4uOUQa%Ti5;j@9m|Gf;*54C(Cnll9y^B-Jo1W3N|`$k0I*p zn|j>4qhzK-qhD)JK4r@!IFI{!T!Y?wq_$j|j}cuE#)O$q$KMj87+QJC(YH~pE45Pa zFLx($07MX~KL3(DaRQzMLpKh!2n9nH_zxm5Idg*QXRsX2T~YyZk}!J^@X#V}@mI}-xeZp8_WJDDtulT5LadW1fGh?)$UzO@v%lz9}4;HZG6F>YD4 zfWSc%A)Dh=NoGWtS!lvyR#giZIkGfaAzQ8ja`ilQv(sOEnl!ob!3ra=WMIUTuxno$EZvAY!9BI{KAzjbVvo*=`A!g_jsvzJcRF0Y{>1xmQ{JK2xdvc}X1gbdh~7$q)hC z%2cbeeFD)hnY-Km_!pLR_^benszwvnA?JuGm%kTl3Ezpz?2liMF!mmW!F4M+8jvBi zg-D#;d>bi?^6;#yxSexO^{yjP%UMo&zh}8(_7l$qLqop6NNLR04t`K@1nDJlqU$xq zK8_k}T+v)8%UEiynU@Ty8+2)%k?P-tdw2#cgjO8wg^YPE#yZJ-a}2QBPC~}~W!W^z z&d7Y39n?6lgcl_r6&)z*$0ek0LYKJbU(tOCf<|PvHUnX)1D-!(7L2H%a zlV2ZB29G7}1HB9*j-;pgO3jjiD*&w)sfm+7x0mptw5HFb`$v$=Lpo1kr}w~m1bS3@ zl+lAdG>K-m^lXPa(#)h)*TdU2X9`(lgrWwa_?agFUaEU+8h`oc3KT?J*lZYX6I zv*9$wV5iqghv1mlJvB8n$3?neiU6YcODQ#J#H*JSs_`PyIb|=s!>C!)tz_MIZzR63 zIa}=-asNoW8J-{>rV=boSR41c{ZgsQ(JcF(P;c#v*`zoAHB`ImczveX_{NvW_F}L> zpmGW8;Yl;6qK~S|eTsW7Sz+eq;_N@(Q1;1|qh@_yVBc8rToV&^`l}y^V!j4Bw9Jci z&DS|9(om8nv5b%gG&nO02o^h9xDN=I;@4*uZeUOP**36!Fw}zSdS$lGM(arBcEm$F z!oJjp$6TvCBjYh%lwvb7mhr-VHmNT7aixUN*y1TTjepBrS&mh|bb?JbZf*ZgLOIv| zpu}o9|Mr-(g?pa1a!2sbh5wMm>iwSkFZVL=8q9L5##Ae zW44&p(P6~nFv2$v-;Io5Hs{L|ht{@L3zK@2{}v~>U1Af-xiv$Ebt*iYw==z9Rzbf( ziKY&l&VMH5&hq+Xi@MK*{Ks&*X0a@1DKq`<^4E@n5^#dh@gz)dmE z;SS#I58yC>xZOs5pfb~WFAe$$dN4btiZ<$~yrcvWRVt&}h2|~okeXW~gz(YF)JvIL zRG+C=1<$Mmzq6r#J&7zu zdMGA5sPK8Qh@EkIxQFqx3bl|Rp%xYpclT>I3%8>t*^6@n2!+z-=H_6{{suv z8CToYm0QJWr#*ahMVg=3asTGm(cEA>n&E9@$P&^nfWuRrFAUyx1cJ2HyPn|>R?98BE za74|W5&lPqhlY~}J35!~YBStm+QR?91JG{s1yfE~2JT)$g;+px?NkEQb)9^w*`@D8 z^3R1Uk9Q+nKe}JO@GXbZe8@Momk1Bt2q;pFs(2;7yR>Y8T9d2h1Y08u%W6VeqlmQn zyDR>a1-OV$4lqNlLq@ip6?|MEDGoPU>b z%aV?h0oU=T96=+F$>W0kDRS^Jj)PYUZfWu^DPyjF_vI>ow;pv zbf{H=dC&^F({b;4IVHCKy!~U+lTZ~jA@66!@+rY`n)S)EsOCRUJ^@?`o)qEI6_UL3 z-u9zK|BuYTt=mP`z{MhBp_|d66eB#k|5`To3UxJ^ za+@ikMC2z!ep;O~)nI zRqjzwC%h)w(qoqrC3)JY*ML!F|^jF-c^I`dM!`bubYtE?T?a7jQplV77`X) z?zHzHHR!`P6)~3<{NW+dWvaOz{OM4C3uS`-8WK^yPC0J2C}lcswcU)DJmYx{Pj{Be zHq8!t{1cd7(DWrpUSWSJSJs;IU<>m~C#R&i`7bhP0a}$DQcTWUB7*;Y9klp0Y8KyH%O-*h@R}CAN zYhM^*{`n7e&A&9U+aJkKp6~Y&`w&b^k839HgL0aI$P35I_CSOm#M+@9!v*{_L}Xkf zk@46tN}Y`&SpyGB)o~En%jb(&E+sAIoQDgAeDi%iE1=A^ympob4+6TdPY;xhakk0Q zz#AtC?6xd=E7URt@nr-KHxS45lChK>1|uy>yY6yKz#QPtdkEI|`S?DsO&46HVYLob%YpdvxWfXd$!C)=CDbM7Ydr6O{ z2Y13mrX9(ixY%=PsyyA%Xqs+^oEqOc0s6ve-@i8LF=u$S?YC|0vTgEgv_eJOf&QuQ z9`w4|Y(bBo%DP0t*Ii;+wPv3VN3G~0)ni(KC( zdx6a+rUosl^?-Gv8e+HeeC28pbG8aj|G4)Nx4t=EUnQ3hc9&V0`9=I$;+S$tM((vW z>|F%zIF8BfNsN`x*@;ACeZRVR-aVtZxg|zXi4NS6@!(H)ZEHMpTmAidbIJ|SbiG%% z(~&V(C;c^^eC&P`6+2hEqxg`j$xl!ICHUY;LNZ&6Y#Cbu|22{kRJv_t@j+oQvtz#G zF6p({DEL6{=>kTD*oGH7+*%mLxwr7`|O378w5KvZ5cn2?3fI)BsFnkY-)e2vr}Y=px8YHTWAL7b?rCo9g!eocH#8+unxI1ZA8ifRNNne&{r{R+nfyVD)!1}??{ z19cEasA=T)U{R!QbxCKQpYgXX*3YA)viwHDuk|!6Z*h(iU6Co$HSQC{p7KREb}HGi zggy5bLU`9m^o~C{B0C!81cy8i%{)U7Wos&;SzuVo*~?fJc$KfKT;CWy`!tQWu*m<# z25t5Jaf6~hMk=1=O@*$ZyTBQ2st73TTWGP8zPZ87+XY zekptptuL!yv#-9V>fn3^l&1VO?7FzAfz-@1ZZY&N-~@t6oT`9hL~i~R*-i#rK&GM_3ACqB#f1!-M$4J+5h_!`!7EYV~YI=owFSb|FGRv z#I<3wLwa*dng(}HKtRq8aHv1o5FE4`-?WOr#O)E@i~{Mw;9Hx2o}-Ca1xiVo5;b8u zhF)+Fx4|ZD{oleib<3BPBR8-CdE6%!#w>I|iiy(Xv3%+Q2>MQQHwBM^A#@llyZMB8 zILdfa!xNCWkBXmf^6O5?i6FE#ei);FpGrBsR`;PgaUf5nnlyBmJhpHSitx$8HT2n@?TpcyVCVLJ0g9WXRc zs(`$3U#7ot_3u)SyO1=0xiYwe614UpV4!B>{i(frgEvBAl%M_YBjxVu#x&gSUa!!c za@)=w_L%>U7BkKP&PPam`cP(RY1;aj^o}a|hX3-M+=@4~Dv3c#4Qt;Ln3Sgy%eGnp85JbpvPbWnjZ2ejvJg}*;XoO zf6G>yO00Jhy3rp~5C&hI%MV=4MZ;}VB^|AePvQe56w&}F@w?TJ><%tl4NLjT?t)#u zVbjVn&E1IB)MH<&M(!NOynqDGx0s=xlN??7^)8@+Jiqua(eW3dIiLsiN6p&~hTW%eg3&CKh*g4iQnfH3 zZr`}ZRioOqlylWL9R(dR>-UG~A8-1uytj4oq-u6I9y01_6P&Dh_e)A%=cINbaj z8R}8hV#p!k=HCd-@fbg%07^lf7RgvZQj8AQv5mJawZ8=ex(Xk8l(=EJH!<#j_J zq?NrZ{npSek`KX_*PPAsEj%$TfMBWKYi(S0qFtxFAW>Tv~?RfDW`wW4sWT3>f-S76KEy6Q$@Yk zW;CbBcU2`LOe(Oymj^-9Eq0un{`CLXp#WjxA4^B40Z5=Js~GCr9#p`y$RIMJ+baaO z!a$-SE1r~h<(a-4_V!JwCT@50isIa95y24@s+~&-&WVrY$YnV+X82|Q-2Pu|y@gwp z4bwin%hD}KcZZaes`i=}!z|Zc5-V=`n3Mck7<$Gu!vR!MNjLlA+cZ3yC zdk0>tp56SCSTQGn3$)J3Iv#HhTnrh?#*;#u82#SFg36B z@YX0A--(W5%7pWd)B{<}`9nPZVa&}U_X1WT^mM~m*)v4+eUQ&U#P>@TmdmIT{7w=B zFN1gTAaPqPtS=7NoEPGb2cLa=qH6N!4jOD>M3u9OQ(vK1DT_rpn;*Am-G0=#oHMpo zq@E~YVb#yz2_FICl`Stj?*9Kg-+vhFP0OCnq;O0OXc;ZF0%ZX)7KD-Dw+5lOXg4D` zU=LG_7M5-b$E4u0#(%t1iPHq&gWM(gJd<3(C1^d7ahashjj@)1X4b0v07qgr@_}ZsZxx1O@^bWn zKQM^NNvQj%rsO7~C)QmwpMiW*&O@r)4fz&A6TjGb*a}FGpkixP+KVUxQ;R?M@OLcX z>^u6=*!U-0Ii?i*;REHQ254I|4If->BjXS#a!j5z;Md60h)|p2Q{%`ic%BN^huWrT zo5t%>l6A$@p?Er}*g-$IhG=hIjaz;3)>T&f)2Z&M*(fQoNVxbLW6mF<|BWvcWUcD` z4n)w@FJ1$Kpp|zgz41C0@qi_!a3EQjZ$ z{91!(mBxuU@g$ic<`f=1X@J#K*D!ncCZjH$SG!2WI%4t3!j=rr$^MU>+XNKBx!M=C z-ktY0#3uK=9))+UQWLGj-i0Qzn)GN!1(k-dE(az|9?-qLUT=dHA7fL=y@8XB9KXjR7V^rRJ<-62n>&pfrzPLmAC%HGn z+$h9PuHllQbnMYiQzCAnW9(sIQBL(KrnP8FPcy(^K6|zx{z6iuv9P%~D)%V+Gw)-b zKnHxxl$`7V?8&3pnsL$dU5+l&wNh_%&qr2Imd7$MdfE7G`9~{<+;l^{MaA-mcjsnK z-mSXZ3LOqfL)W~@P}>tnP_{|Vf9=AEq59DNth(>*ZPv%!oWki%ZqOKEKo%W(Qb{465ueU=j#CtGcsJfYI!W$*;(aN%4X6NwAN;2ee$hT zNBxkLj8xaPc`@Fmo;6}*NoDJbC`_u^aDB#IjH15qYt8d|6l-@}MT^fHwE>I~XHM_k zZZ6?00W%nF6(n$ka_F{RK8S6&Oi5TzT2>9QM?YU){6TPO#MOBJqYA?w2b+3Za!%Yl z`GT2XfwsT&C)OG5n+Bjb*Zwy5bd| z-?d@6O}ux@ypUq@BZ0NVH~$WNkjr|g*m=7PNeswsXZTKDYInrE6-+c75m`s33&(zY zlC!a)t{;qh^nH`EfD4!b&qd2kZIZ-*V&$*Piv!S2OyP3$@wOTy8H#r~Qicabp*FJqaDPb9)?3aJavyku;zNV86&&D36*^ zxJ>@mT}$&@dB_t@l!2ap@&bE`y;cmsXk9L354pD!SM-Vu>kzkR*?ar+K-+QtpsM
    fgIa&9_oS@D<(jh^fTc<1=qs)~tH`ENR`f2%?Op^u z$Px?LN`T01a>PP0Pnug)j5KQJzB1d$zSpZg+}r)C*85_0o>Jh2?{is#&*Oi!RMdBG zK?^1a*R_q36Q2uH68^mVT=_8Qpw5h=g$vHnegG5|ELPz~=7Gf=mywuWPrxT-O|zwc z7MK?mwG#QWgV(ZxwLz5K^iUR>%-Wbq1F0)bS%P`-6mzhhrK*p$9JRv+LH?3e(^f) z4K(*zOwlO4YsJa3LX`L}OTme|Cmw`qaS5qBn4D_w>>ipWK5igch3PLRr-E~#9IP&k z&hxUPx2-J2b#g1^vxXevu4_9SI&bzow!VPCf|A$q9gByRImh;L;xR?N<0(|N>mV7X zqY*&TaBy~& z2{b=}1-AP}t>Y>0I}+vhb5iTm1-yv&Gb<{ZarZqTZ&uTdji*!O2gaYzW(y6Fq2{y3 zJgC?Ki2Wl-}*6T$qL4IqDNF3C95KPwUKUiErHJ(y|R_I^2#jP-?>!R-Af<4f@L-*^PP zK2UH1;yJ7J9g-Pc{sJF`l=sp*>Xmnnt!gi$dMkv&>_}~;JF>EAt*&n?32~IV0NK%r zP5G?kTptz|1P~2FPEOdLlF(ihQ&(vIYrTa~YS!y8Fg9zLyZnu}jmQ)boKUZ~Y*?%6 zky1CJ+%)qPc%Y`I_GI50AeuHL%>_QwW2pTwMw55GNYTWYPc&vsoB>CFgOlF<)R(=) zXTf@kF#=e1XgHCLPyB;vdt%r96tEd(g@af;)BY5HGHxp8!)PD_!*){8l73vS&8w7x zESH&sYT)H_obS#HGWXlq-8wet*MGH8EEMK5ET?sM67Ma35{_ylOj$Sl5?BX38jyT? zlPqlVJSOjgVdi;&^X~XjvC+ z(`tt*tSQ`tVDJBxj(PsIC;HVvZe|v3hauzy=!ubbC4?xyLG`=RI{a1*cHb8^@y!3d zJP>6UiL&FfJI;Cd=R5f`l~9`Vypl`f5{wesYNe)U+#Xz0x6LtldriRogPK4iS3}yI z<}EXJIREd!qr$>@g;K+ED@b#5Q?UR3vMp+_JQY$q7UWb`vTU@OI5r`mH8KXY?*8Np zwoL2@#)YeK@tcAZi;zs&yf!>n=;_y%k9B_?M?4b$WzWU-Jtw!$Bby_->59sY#KW_+ zpHH!!qEV6f?tIrKwlAqZ;njGq9ysHxp?L6a8tTt+9wdGF9yVnvJ2ivPpcWen6uM$l zS2<5blRNGVC5QI&fHU`g!@}aO!bF$(g!-MP^y5!Vupe2tYF~Tz32M^Tna;5My2|zP zw8SY|KOUM^*`3;P-9Qe7D3!_Gnmfv*DmskUKHMJ6@ltr}`$cf8mJ#KTwY7=rT(w_p z_sx4!b-S!P{bRAH^-Y~cn{Dv4iH>28;Q;ivsZ+~Z4{`@tzVqWG_?r_xHcw9D9yo$++Wwiw>=kkuCeW(0cDPc%u%v=Bny(mOJQK3Gfu3-Jc8X zMVbTLf=~D#R{30jRHbguyeld^35Rf`TijAJ@40E{S=ZFRJL&U%$k}N5kPZ z@a7ly%qyxumtKWiXB?Wl6tu)~wsX4%OXWpb-{FZF(Oo=78;D#DohT_nCRLDGvP4cBHTB^CgsL|n}+6y z_1@DNv%QCrONGIQRvu@|rTukttegE@8$9ukSQ&BX2G#_pz@CD4MRx@akRim3*tSzW zjoYbQoWq~ak^n%~QqEGIzOiHcD5r<3_ow|NktGH1kn%JK%co42UWEJF-spso3}Z8D zy}G`G_tX?Ud3_bb1+%pLhi>krmA6ecc{m*^u6=1@LSnA8T`d2Mqu%067^|T7-bf?44uXO3vli{L{)E-!V~A%(mu>#{W5U zViSixEh|B5Ok%DHlRo&!4rB%x&D+ceaEd&>#LYQ#DtBrY? zYF01LY{+QcG`Kmjv~Z3M8-yP3ak$}Neeuj%xXQl|af-&q_VXDbL4&ptt#&#=gS%Mo z+?U$>?}`Zg3@D7 zuut!b>^UCf0H2SLb2W|G@phIOO80whKXPh*rzfBOYYzV$`LCa?foN|S^vFi2z5eTS zmWKIKCEIN}#@$z;|2~sbG|h<9nj=-00Wlfe{4R8cT@WPazu;Zo^!&e?5HP8i;TLF4 zFD22OC*N2752C?RMe~L#nyZe?f4G(x-nu@vr2l8te>EZM7QAuqb)JIcEvU?^`D1#E-7%6VGyv!~30 zI#Wa&;(uJ5UK*NAHPNZljLeM5$ekVUP>IK1PMvQ3FIMs%>Z)VruQmT1Zxi3H|0`=h zS)QG3H%-z1{{O?`q>^ST|J4g{3NR6WTd4j}K}CN^>VLJg)a9khDK^~e#(mXabpK=L z|4S7rkJw%SQoRaDmHCgd2Orm0SF}23HqVIuSHGbC>XMPf=l@Em|M!-mIkAWbzB{=|(R>Q$YzwI9j^5AVL~y8g13*XS0d#B4&-l+RKA?O0w1@4xyhv)78L6 ztJjHx72uo{=#Q3MFwrf(fP3;CZy+BIgn_180=)qYt{`nfG0?5X)t{+Q-C(}g*Zf#R z*}6y3u2kQjk(3AqnO!Z?#)>7BqD4SQp*EUE3DRC3;w@WWJywSDJ8U0aWEb-}MOznn zx=+1NtFMoR*S9xZ(WcHW+kGIrm*0n;7TA2_VzjoF$)cP*se1emIT`^cdIh0+5-`l8 z?Eeg3S1hURFqGvJrBe6Xti*TxmG812e3sL;U-4M1;SUp5acfSXSr9bc=WW$Mrg~+3?RrAn+DkFlF)v0);f&g7@0UR-+Du+H z`MA@4dVPbF1p-+|E7d2qJ<6(O7L{*6e;J0z$kQDUI@+c6_2Hv;v=d&`9_R+9-$=TW z-&0Hm6QGEyYzxov9_~^l`hohC1(-P1!zOzaFcmeGTQ$p0H+a$j`bF9SpUJ!U${uN< zX+)8UWGa%+d-5aKCHUa`U!hH?Gw5X?MukHv?7IrpRXhc;d03Wp^qDs<2njwm5!}do zxKdTHX|Avb1g_@Jdo^@NJ%TLah#WFoW>L?AOk*%MY1~a`?{Yfin@gL^UY9dCRQR2G zG1d6<6Z&O3T3N(tg>6YX!f{F;cimLW`ga9IIvT*B_R>?s-1skfsDu~eP#FrT(?&e_ z$I;UAQ5}ql8h*}K$VCfP8MZGk_N1~#teLctanF)<^2+VBma5cN^%IN20QBq|DulJ7 zEm|mY^y2qFzbL#6KVkb01c&c#8XOV0L~;$OKH_tz?SBe&!!`5PQ|&9FX9Wi26(l5hE&<_Jra0ef z$Xdtr7nZ-=e&Bx$sOkHs=-nnkz*Ba=S_01yeB>J>tr1cFUNHTA>)Xv)Ge%O|38C!` zwP|)6z4Lqj_sQHxo7Aw=Rnkmljcl zlQfp=b(Dh1;4G4yUXBxzieq;WPxfT2B{IP^M|Qpe-1{=q&HnCyWt2sp{$VG^2Hek4 z^Q%ZSbL@W3$&y^#b%3-#EVD^^f01VB^T8{g)|>WLLl+&=LR@>9Yk$NdH{=$Yf@ z168f0537doM%@)EWO%-Lj#ysc_m`sT~fQPFRzDcio%G?u2^X*8CCCmQ*~ zg4@20ADPZUi)T%sJu8l-mk(WRm*P+NAvJSOfD3auuF(a@H~;;tmZs?7ELkG}MnCpc zh>P~T{H|Qs37#_Pr0hBKzWjWrZRonnUTp}gXFe(2_Wc-&Ke*y$K4fx3*jjtD7RCrc z9_&tn^biQdO#^2^!~h}5&0}ou#l}y54YcBOQlyg+zolTGrF4*S z%?tBnG5?~DxVGUT+KNC?3{l^JXQqmMw!k))2bt$({3PHa*LYjw6MRP1`)B!skAVuV z%1xuz#waOmSCU%-U);J;!7`_;mGQTavkGO2br7D7F~umh(F5OND{?3d-Wq%Uc~>t< zR3YEF7nCoXlX$8A3IimyTx+^Rj6)jr= zU_N>|Qn+;T>^M|`(RX7nO-c|_f9;`j)wS3~r6C#fx3%vRI>}FvwRJHw=(gLaYdg-H zRTYb^ONT}jwdOqM>i4BSuEtgMKaTTvEdl_>W~eecY?6=e z)*4y09l3u$-Y$#Du%FLOe{6!as=f{Ol@>3X#uP221haMuEs#wFv-J!xsI{K^=z9?J z9%-QwRxDPiT#=}Tli$S@w{7MljZzyir5DBTxlcEsZ*bz%wDAVPxUy&8iOEgiw%?{A zG2S;FB2BZuHP6}L$Fw$THs#}|;rh?ZxdZVh%rm`UxjWH999BTz-u==T%ed4ioW0Aq z^Ig?sk!cc{8mMkjZ)Z#5gQTzO!oh23&S*vdVBPeLS~m0d`KBng3etTt;VoMv|E)cy zO;OcR#6HYIMd?km>)WpF*+m$9nMZrlIU77^($~pvR!lKGQs)>WYuR^@w`cLuBz$YP zH)&?$@sM6Z5t&~%i0HFs=Id?e)B^&s-t{N)=)`4dF7mCW3L4CX?DVOBmU_4F#+b>J zY1Uqw#3@*}iuFa-v+Xe_Rcr%Ns3#Iv}1fLyn1#`lf|$1o2;G~EujNk44$tkB{NYVZkGKz z_L}-V^0^_1JN0Q#vS)FdtaBFY$Dv~2#m=)Co$S6$Q_H(}f1}pvapjGu+z-0-*HMCI zP-Nocj7*H7*{IfANd9)AeIsZ==}{ILZp)F3#XtmI@sj472BD?yA`=_$p%z%slgvCd zZx_Mz!Mas2zH<87!%&T(Q1p+-K6iAZZ{xr}7Y4}Q`@9Cp6^0vzyTi_Rky8gr#C~L( zM7v(PeqF=KKU#FI-(;lj%uuSW1z@*(>g|yK8YDG9$8+ zJNNt^czQ3NDkNL}`teRuLXJ^Jj8i5RZ#mF6HNEh8&xbNXcVOlU4Rd1c+07L58QLzI zrmP@T-<#~*hw->ojKqrfL{mEaA5b5Lzku0w6~iP8SXz$VMluqjlv zWRqxwA=kcb`22Q%L&=q6Do{BTVJcuI`KUpE%>wF&*(iI6_=Y#h8ewrOG$JX_76~Tj z50qDcaxh6q!Yy0%s)e*6S#)`~PrhsEt+wFFMb%7qc{#DJ30U%i zU+up2Fhr5ziauYx3-rhoIT~2%o;CGcn;EcV_4V-MwWiR0$gsjxuDw`Oysa+#L)*8p z`;ATSnFzlW;?g&IJXHm;QcmqAO&F~s9ejPaHziOv^4;EtWka9j;YL>xj?SYRx0+{t zvoMRe!767{^ZfN|R%?bcz;@?V2P!tISAfH>?p{)H_v_2JE{39R=Lzic!YM%mjdK&| z;qvZ^EFotgWbu9!9VoSyqy@RC30)jyPzdM zQ@5MXEF8bQ%RZ;OTu0~xwS0f)l8Vaeyh>OBl_|;g*JLji5HoqO3QO3blVJ?5U$sY{ zbPfJ=&AFSp)0Nf*yZdonq*RPMC(7=ZS?XdwDXT(ym55}$auII2F0=(Y_Es&J^4+_OR^$+upjl}>e^X_7exz)p%XHl23SKZAhU ze#WZ#8(UjZx6y73TW?GESkogap~i!kCAtwGv=kFuG5%(JYidCyty%`PGV_JxJ6a#! z`@MI4ARh0W9-L4>zLGh$3VL7C@2*$>3}K|o?p$NgvLBr1`Xr-+XnEx5-m{j_kK@jE z7lpCY;{@V7V+?pgw!YjF{6kc=%qG@8ALQI_B9`5GG89lMxkTO>r~lVh-nk|SZHSRA zooF5bU)Dj@WaY%dOPaM9AxCtcPEfuT03Fsm4t<*pwi1>XxR=9yE?P(JDCMu`%W5Ukm!ypzb8u+UghRZ|WRUv+8m1gickb2eYebwSO^^J;fNNq|SO|!Ds1HxCU(A#;jurZSl&P-SdV84ZQ4F;=CY|l!mxYe2jk~daVA5^~m5Q5WT z^)skjG!0`PNVB%J@tnVX9o>rb&bXMYK2reQ3CLXPT$Sq4CS^?CBb7Q3Oacx3S`b9< z!~Wpklzmi2R#8vDCMbtnR4!g}Rok`YyK%|#xb?tFb0NHdWZ0?}oL9v+hc{4h1sK~F zu^3z=q0?*Z7Qbvo%xQ+V#As2kYdo8?ty4yF-Gth7q2;xjoi`y475mJe{frC3$-@aRGlY}lmYMi*$-#7_pA23pl zg9VMUd${x^CC)c2oj^HzaR?x;Ub1ye8e`m1DR`(A+_!Uw93$)5>~IO*D^! z&jXu?q{L<31ni-Tn+9 zW0dOkq~Yj+l{dO1{DAa&+DO0t4PV)QLHk#Jj%<#e7#ZY^>xQJ1{`&*NL(?WaE4DZ4 z-;G#S9KP^ramwwe7K`gxT#?V(+%B08q^7z#z}%wd}8t z%*BXm_}-$;a;HT9sWk`2n>4OAA&LZNjwZZBzL8WO^)ZDheufLjk#&4O)_Gd4SQ<7S zrHUkD4|618JH^KV6;0d~SV4u(x7{)Bs3`@LJ0i!iR0YwbC1tG^Sr<3U9RO?{^2<%XYX^) z-rwuGK3{Teru5pCQBs+4u+_Kx}qciz3+2s1N!ijIROes~+qv?jqUKxeyLmN;XOYD}bX6H%)SKD?+f!AT z`GXwgbGKu73FdC~lAt~t6`dsnORE>qZ++Y$iyJ)nY`{~auLAkF>5`sT%bgz*bqoKb zxZ+AhTf>|ae9d&fS>Tg>aMGaP(t1+`u|OQBi+2sOSfAt$34PxCSFv@5F_?CFi0l3< zqgw1MBU2M_Hz0^sOw58(NqP=uAF}4H^pzmyVrT|)FqJFp@wocMp5^RwHFcLM3m_Yp z99nK?O^UgGos0FcvT3i)k-a`#zBdr-B`QUo!6H(yiOcjhQBsO7zvkCvk|9i2>QZ|ot*;zi#H3*OW^ z4(_J_cO>oj!f#LkNOm&W`f0djfOSjT7*#BWWYVA11h3&aE^jO~A9ODdl1iCZnAgeR z;+|v^wQd+oQ;nml{3;ou9;M}%AD6|eWK0*#61G`Q+$!B_nYd=84}&5RqJL|Cuq*x1%g4xpOt6A zOq8-!M0fc&_!nHy3vbh2ze0|nbsn3bk^2}7yR)xU0;^tM@`8Dl&E9cJ37eU* z1#&irGF1wY@rU#Z{(ZZCI0O6$Y_qNww*YaLq)UaJ7m zPcLfuctf0V2D705_lmj~8R0fsV$TU(Lw*>G82upV>aYY}JgM@2SYf1GzaKVViI?zR z)9|)2HasI_a^Huh*+~!!mhh8~t`)f1Oje{tREAgY+h` zqVA=%KBM|j24&7ATuaGqX@mIu$wd7Bh7f;F205aUabS9V!k!_NhBRr;n0Hd2TjAh? zdD0+ZwSt&NU$+t`mqL|to!_PBT!+;gtCSVKE$p~+GsX2{C-2lL7_NGXF6+2=(J-#x zv-Ss@E0>C8cFX2_IR5Sd!v>PqarDN%1l`1EJ~EK78hM*&M% zeeeO#_C2&eRiZ(R9%(iJ7hsYMUOpd8Uhk9E*VD})*l(TGP~Np7OoOk`2)8bpi*uY^ z$uji{kmiBAMfMTmquZea2d8lt?jb%f{MVlhe*blnI5=v>4FM*f5#{(*(p6$quC9jR z5wvxxTqmwM#H^eEFG6-|8Xl}Vwl`9)HY&zSX`d|a&V!#GEC>=w=Mi4Kgf`8-ZoTKp z2Px5KC0}4r8)TFwT(h7C5mh$$;DPEm+>`DeGkeAL=Ly{xbY)Mx_^F413o;qhppGJI zzS$dWalE3P`VBd9>FZURlZ?=}bpOhK)@t3YcnKdrx-Y-{=J1P#;ky!IwCxubO2zd% z%@_W&YhviGsv?jWxRficE5ogrQ&4LvugV$S`-b7E>#N7#3DWTX)aNkT1dIr#z|j#E zchoSs?rCnVUgSl0o2FxQvD?4cb&#)mhc5kff~>uU>tulw?4Oh@8(qeFi>x?HTEz@^edm%5$0%l`C5=%q)ZAh*>l&J=Yx!Xjk17NLOI|68zaIW!*Kl{41?<( zRrqR~8$A?=TY`f49uB68EO!{*cW=2{cg=hjit+{$E2oxUlp zccuZl$>xUkd*{4UrbYD|Y#u(yDxn|^zaiT-FCKizfE~j?+FG$&*KEo=^Y7oHd`J*$ z0+gCih*iRv6bQ(KQ($=zmTxy%cgQC_WM?yOK2VaG*o zSAE#S3Rn>5StJD{rOhArjoi}vsbjzqnEynNkG!+2_Vn@JUTIC)`BZ&~y;3JaUoHkn z<_jeh>&t~rK$@?dUz=t08kmASfHnRr)9#>nG6kG(P1Rob6Z+?Zd3YT!3zk1j>uA0{ zcuYlZk-zj7ePq1&r{7<{a-h5I>Iih#68!cxOyiJ5x8D4*f)@@Jtc$$y zR_pP5cRhf*jMV~*!B*m-jSq*RPtm91v(FP{Dtui#-H@H-Lpq!Ix7-_FRPJm*KHN_x z44}`~!eQ(ymBXhBas2vm1ObX-0}|7Xhq?)`AdlbhiPJ{qJu8UUTaDOsX#m#J^Bg*L zW-RXIflqT~@{R3P>o;xGbc5f&mTR0n1U#hOgDpb`MyU=sDPX#IYc^I8SNZl<>+K#1 z&Bu!ETf^rOkdd@P7FBVm=77nk7c9C#F}Ww@)q<@Wf&(tTLlE<=IgP7T30m(U`gU9DUF)g18X zPs^V0bs)zkuRT%BRfNB)!b5(_Z^$}fai1KM8(s}oHGmz)n^~co z4ta%;rQy4;&-la#_vbV8>sP&dsRDo7i}y4W%mu)%TP$=S&}BAZnDyhV{u{<11x$>~ zbXJ0*aT>a8Qp_5-tUJ<2Q&HfnX#~(2ae2G34%`Ilp0xq_BQn z_qpjBDT{6|?ZEp^iBCmh7xc+E?0C-SO7&K?2d3L%d_bW-b3zgxLhKjHG}N1HJ>F}V zm)6nJf?mO%99)%DBHtXBpUfk7&kZjcnn>+*Snqh+I4O2)3^-x*h&YMtkexMDDAYqB zYQ4y}x*>D>aS7W2?d8lJ<(+Rc&GKKYY*$%fmgbQiu<`6g3cc;JEu3^E`&7N2ZjmBc z({6K|(&ZrA{np#|!kR#IZXgOiKBVYpyioKX^Y_lRza7^_wtEY2PvJ5hHukh0!|^IA7E>1D{#D?P)&Gd z3K_jg&s2>rtUem(3iGay{Egyj(g+nudZ-o3Mb@^nl}1*)=+x!rOBNTZt^~}zF$nlg zNwDp+6s%`V23^+O-&r5E*7K`BmcqX_FvV=gGUpTS{!-L)Lv(lstxTDteL?6{i`91& zP78b?wD8tfsMm`=MKu4$)#cOy%~1>k$%#{y&S|@*PZZu*)-ch$|K-iut@zZ5!9*P| z3M);u#Ol`Qfiwgb*6HSQtsu%RgghD+K%5HYrk~?0?I-4BQEmNoZa5RH1*fQ0-T4}R zeMlHzwtN}-_ydZvU@x#NxZ1lv_Z{q6Zpqjdqv;lTau>lkM^MO)78onao&m8k2VEy;pYbuwhGFP79uHXrrC)_96Fw##ph}##%)Jj?vAZ*OXiqbHT684Qo%FLlwE zD1`boHntSSj5$ntaMUk(&9KIBwkjKk22b0#(Pi;sK3o6kHPGm{+gdJ9;vU^zaN6@!YvegOsC%SP$>%f94jNRnKCHgd%URvXy{s~5MZ zj#$W%dy_VpU9Qx-)4Rpz{MnspzBMR9++@;r66X!$#RR_`;1x+ATwd)Xy@9hGGE3*t zCxxr(2-NUjAA25njy#*qJ8T$tuW2Bge{07l>Yq zwpKOQAH%;`;o|2?%&=>5HOg@TXSmE`kCSzAZ)2WTd&r8#@yLqIgs&>*r0N;}n>8W* z@2v^QnWydAGkP7K@V9>9a&ZgZ7D7?*dkfGtHF6WfP-)~i zd?ZR-xjDXd0sNe=v5`%<_+>vY<(AtVQFiL^fP(0v1_S3B(Yd7-@8N5zd5DuNAp@vd z79=J(%@bv_2HrsN5myUlU{6{+ct@_(Z5n3GKF~cQG)X+QN8pW4N`)U#!80t@bRVRy zS}L~>%51;%NKg;(NX;g5?|j8gfv0HaRLUh>UO}I4fwSwz)AX#6Y_^vn*brb|eb`l~ zJg?A@KzPFFW1i5q!HxLlhF*;bm7egof9;e2^?v#Sv)3d`dGln)G`2jsl9bqIZH86x2T!vJe zz~Zi;>2}KKtyzWeI0MutOgCsi!i#CRFQlxzp=gM&jYRe)RxHeL3fTOH41CUud6jjY zUp=!=*}U)NUhT2#ZNs-OP9KgT1YLBd!IfHk(8A3P-|a7599sCML6#9;uRk5o%IE(sR4_Yi12VuwOv)j8Y%}Gvp0qj)VSyT!YJ9xN8q=GtXI#R zA}CJOE|bV{GBAXr8&0i2 z!M7E29M-HUw<0RlR8CM36((iRI$|#ebXAW1en`|! z6Ym@qU;RaHb<<({v4{8so}i^$kcmIPR3+AYxH&nMqvOs3fm=PW(`&SZPh|L-6YHos zFhdYd4Itrx5wX)}fEVJG5x0fQ6V;=~w_25VJfQt|Df)_$=t8b8ukH*S*qZS3_G%f3 zudivE1W>^}xab1A2EUP>9HtmPB_gd z9AO(KQN29#_QT8;aR~A}T$IQeY4?(HN$7fg4Xbu3@MQ6Mn(TuY16;;6(l;bje14H^XiN8~>EeN-JaqDWYS_=H!_7EvcwLLuE-|KJN zupEavW#9$Rcjf(T(Q4Z@_m=W@#qr9{eUx2zgx+#ar)OSNu2VnEddb8=P83YP9;vy+ zo{i|^INzXEms4C_tM_g)CG;?oFSxd>4M>-HO)cpgn>NUPMmqA>tSHg zEz<2wC{a?gs;6v>>iCFc4&G9#Tshvsj7&l>z}_ae$uc{-7L{te%NF2(8Hn;}!fZs< zx2uct@-$#@nyy7}ZcQV6CD6%3iRhSyym76X*tDCK9Bo1=rUFM8mW1PLt+eG#g8UoG zv#P%_%_QACO@Dh=aidYZXUk!1MTSF93x3I$7 z))VoJ^Z7or;DJjc3GGJl6@xF231jhnDa)y+ytuRA9LEDKinz>E-9V7A#ZW%mt7mcM z&FcW&@~3B!U+PL^Sy?zSGu7-cl-5-gzx|^2nGokx5sKNPo^Mtj&LxpcA|?&$Ghs8t zdO|L?HJQ*X5zD=7Yt41vuBC6)NSTO~wP`Eub1i7hZ8f~y*SHnFI-Tgljmxsto{x-Z zCT5($lmkO3vL1t4-gWnwLuiebEpaTq5N|&)qL=mg7E;xxR--Pb;^WKULfl4iH^<@;yv3pt zOSh-T#lV>5?l$e2(Q6A&L-a$kl{mGH1U7IL;+Lx}C;^94!}OxFH_9vGE8QUBR!xkL zy~8S+FX+naxOsMV!7eR0rf`Gab>44}N$-FNkh+M&&q25?Dmr&dA(WsxeIAUq!+WQI zbUtJaUCHs$3mJ&Ip~nH!>h{m%m z?lgT-v^baFyy+UPs)M(Ga=6o^+b%Am^K~LhG!~YWj^9G>nG5D-*Q-g4l<;zyW?hIm z-!dfHnUGqhTi}+&RXLKc04J?;^IW^E(?G~p5^t~InAe**-mASJyk*h$c#)E7z8`aj zAjO%|I&)syIKk8yGud|lW3Oo5*dA6o1CK>@_*r$3q%uWk>dB7-%f@6{a)rxRrp@xw zZG#li%jq%4Tb~J=q$7LE6e>E2MO$ny+k1pL%?lOa(!@pO*j$&lk#_kyvH2z85ds4< zJNiMLrUEBfam?l|x!-b^4J-O0e8AY6OI^aoL}zsQC8w+E%!m1hO^*D&$9}J|gh7TV z->lbul=G}1#S_S;KA#WPIrP3vRW}o*;Z1UN z!%x|ldxX#<0td2v_0!klw7RaD7671@=?m2292$)FJyoJb_?jSSov2yk|E}|5rzz@~ z342F{b=#DVotc7qh8nS_`SGY(4m@<#WRo8Qw~S2)3LzC4+I~%(sr_!ku#a6NSA8=` zZ#_=#tzV3v7lSkOM=c9hi+4-(b454XM^_*~>+PZrqmzC$)qcW5>A{OGPGVk*2>b_MA@(zz|^qh z5G{j4mdj$Hrcc(}(%z>G{`6fiHvDougjj2R?n~uqmpN+?m82b=MXTzHnt${W7UotMWa_Pmo(2O zo<~%1H$RNM9^s)u>>Kc0w;;S6Ft&Xney-i~JuHME5NG5#Pa3Aq1Wdy11gokiw#9`r zTj)OfCl7y*;d8DkQfci6@^T@C*pa9a-a-cb(E>^u!HdwU%8fWxGO?i9XLsp5)+G5P_cyVSsGIK_zhK&(N5`7Fxt@-^%zuEoLHCgf()N0zJ^PxdyQ(L8upR34V1k7Y<`RjXL-^W)GSu|AXE zrq{;brss1Um#45O#);ax;=-F0o!PetGuNmXF-@2oGBB^Ua(zFSXebb=xHxKC%9*jy zH-L$0K;eXqOtB$tW!tIY-gI-UnU*bIc~jLT#0ghCjHHS!vIC9bQNnPsZuYo*y=Esj zi5Y)GQCZO#E}Lp{IQU@!2){vC5H97kZbx>9jB$U&a+*!6?@AD%K0E5PicgiVH4Q}n zW>Jpl?VfQoNyWpQC#fqs5z@(#&*tH_+5BAtAczq>N2@^^m)P(bNJ>%6V%hA_km+#c ze-&5cIjD~)%cC`%JHyxH6}X@VLc?M)gB{d8w4Cm>gh+u%d4z9$-)_ED_>Cp&#WS!H zl|{>2rlNk_qGIJnX;q>ct<1K$#ThH6u7xfIm0~3FBjM3z)+a+ATvcY>$v1(GB2C`! zk%=|jCswt;=&+Fh6BlTLYc-8*Uycy->9ttp8_;{W)B4L?f&(cD5Ge#Uf8^}j| z(eNa`GmnB@EFz-^kKt?SnS73(ao9nJwHbZ>=*v|Vud}i^U;fZ0_uX6XmvJfkO4Vw3 z-uI6VDolBpGPzj$ya_7r>;_vSJE_ZMn`m{ZSh91}dLKb_s4+qDtGdh1m#gdhK`~UU zzzwW81pI@86||zk=J=!s+cNNjZSNFl_JuNV)2}d@5}04qMA_B&$?_7anD3}^4(f=t z-c4=l@d#T>V@D>-s~vFl)O6-XLuOBc6%)=1t#qYr}|1hr)6 zuFYGsk=@ zXIW?XW01JJ(^V-=+&gE#IPyqa(l8wrC>B9qYzz&pKZZYq4D_#h#d7_-0`JNCr98>{ zmaS@vI<3mWO0I4NG6uj3ltu8U4I?*d`P3JbPaA)cr&>eUG(QTGq6I;`X>B+rm;W+4 z3lx0sTIv2Gdp++F6hG=>VLHmu@2)D#N{vegNB+#J5u)-Q$@+`QC!XmWapVbJ!pchF z)GDrHT+^^EcEK)K8WJqCVAzvhPS9FW3enZr{@}St*HJo!C)9ILNeJUg7$A4)QiYSy z(4U=VG7zk0Z+d~qo7T5PgMk!PMY%vv4;#ZQ`zYqTXdY9!heA+JYdAU=G$7yvZ4v`6 zxf7I>5_EGs!5uqmmjPp`E4cULSA`ee6Cb$;MWg9yf5wsE+5CN?oJ-}kk)`^lTpjiQ zhP-e~JELK9Hl+!;+d@GZRRp`cv%Je?6*!m8Y(TuvpmZ%ZKT-^bv=|p)B7zQkkWwR) z?c3neGd=d9m;XB>!CVG-WM^fo#(7=m4%GoK$ypOR87ySwu<#&)&Z8p4TFch{Ip4${~|jQv+GX=FysqViSfA2h5uqP*`!;X zZ{`y`bcw3m+&cTb3X^yZI6PJdt%6*tJaLYaN`up+7YW)xz0sL0_gwfGs=5ftS}7~` zwM^21RB*$CfSBAttR*|(Fn@fg>T_mEEz4}8bglsKLHZ5QR~VA08k^|O-ZS_XYhU*( zwM^k8cq*i?t?DOdO43-2T4-2DH!IjjE|bTmD6eEdrCgToZ53t}(mJ#sAxZ^$kj#0# zvX#0}o*xgEzp1e4F<92GJuxDO1J*5L2tX@Lle}Y=Y$_7*1AWw_ft; z6DhsBl*wJr9q3284f3?Tb589idr%OW&*X;e~ze=T*Xx5?o#a{2@&ZOPp z#plPVk>P($zUC~ZdGx~z@F%2#nyFXC@e2K~o#y}M&^~HRM5y@) zq&|Zg|1a;+|M8DkSesAP_;hw}Me@SSCK5nGOeNW;9|wj(1<=5Fa#(o6>1Zk7sHic; z!JecV?B7R@x@(kr#-$^qP333cg0l>C?qFzWAi@EntGjy>!d?8GWyAd>GSKbY`c%`@ ziy|6QC@C`XQD(X2@?jFU0_)Olh8uT1e?{bNuird&^>}P-oyY!uHi=!#K*)`e@13tF z4L41_rjSnP3!{flOr4m5ut9fDSp8=<305_Oi|QnM83fr+Qs4c$FDPQq-#IF#egk2B z^u|de3T!uY#r_*wd7ryyAd!U>O2e?kKvM1%*xMj8#by`mtGu0RO@VI;-qlk!+Y#8Q z=a*8(PcHU8Or>u|6jC2i7`?_%;VA$-01RGB2`BU$c_sAHE?GWBS?~1iYV6NLeuPb4 zIr?HttzIoHw279d#-IN4{H0lz?wVz9LOEoEdicPJZz{KP^x7PF2mJjB_UQ}Rtc8V$ z5+^7$*3mDfQu6pUjCS4$_KWFeq;Gp+qLg$RO4xL35f`h{Q*9L0-s{T8jW}Jpl(8fw zexL+N0paVvAE=_s;7$i%%2YE%5B9~tvS`J(ex(ia_CB9G;Shbkk81R{0SP_EJ_%yO1*>p2RciLh@a>Q)BJUrLeVEH7a zpl^J#Y$2tnbk)Ny$KKxFmJQ+6HraLvDWauC){MSoeapY$)O_I|9DYBNtpUlV*(;_S zt+X0LVZKBR^JP%tRDyqP_S1ziNyZ)7E$O>=)n{@lX74i#7w{710owJHnWhY3QOY=Q zlkRiuKBk|(-4<_vw_5=j$xB#Ab?H&^DEtIc@>5{&(h0xlY}05=_dl?O74j1PGiigz zKpXMO4&RO9j*N;*!kbr!D8;i<2|q&$2Yxp>y6@;AP8Jg#zIotYJ%trLVq(VtI7rS2 z(a+o6e{hgGhl7~|=2vS!5sE#CYpC7eDp0)m`j%Ob?j#J*VC7R~y>5AwFQoXri1e>B z8aVyWJTl2KaUx0h(U$^VwBIpY6=8Q-P3*$HFD#@yArX`-WP2q?*?;Lxiwn#)wku11 zjxor2H^F4Sm}b6fajQ=DZR$^#7_u5ad?PM5@T>7Lxj%ErNJ*xz+2;Kmo>AgIoLmHp zJ-NqeC23XS;%QE;gu+1X{7}XAK-cCQVnM}A3JQ~EPtf&LrpKEk-RFcFpm4j-v>g6% z>h__%Cp+DMWo3{<_xbcwt-DdBi&HAl60hQ$4j!@fUSTr*aFX&DE(m)9a1Aop91l;z z%YX4RJTX8z9J2K>zg;-o%e5eepCMIn-VfY@mQ(=8RpoxeAD`y;ryFSQ&5ecXhpPRg zs}+ma=D6(-9%vDNE?XmnY**kO6dO{Jrn)?u-rTX79vZ2ZY~+&~w2{W4m_vp#8TO0- zX57MEYsE8-W-q0y_A*F@m&K>38evfDq;LEfC6pg%G}

    p{PfC_LwKshLun^larO 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 diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160528243.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160528243.png deleted file mode 100644 index 571af4fc8e53f59f246496ad670cc6b84f4473f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42629 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򯷯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

    long long clientVersion:客户端设备版本号(当前还未启用);

    int clientId:客户端ID;

    int sessionId:会话ID;

    -

    uid_t serverUid:server端UID;

    -

    uid_t clientUid:client端UID;

    +

    uid_t serverUid:server端UID;

    +

    uid_t clientUid:client端UID;

    int extendLen:拓展信息(extendMsg)长度;

    unsigned char *extendMsg:拓展信息主体;

    diff --git "a/zh-cn/device-dev/subsystems/XTS\350\256\244\350\257\201\345\255\220\347\263\273\347\273\237\345\274\200\345\217\221\346\214\207\345\215\227.md" "b/zh-cn/device-dev/subsystems/XTS\350\256\244\350\257\201\345\255\220\347\263\273\347\273\237\345\274\200\345\217\221\346\214\207\345\215\227.md" index b5e511362a0..fd5e4d1da7a 100755 --- "a/zh-cn/device-dev/subsystems/XTS\350\256\244\350\257\201\345\255\220\347\263\273\347\273\237\345\274\200\345\217\221\346\214\207\345\215\227.md" +++ "b/zh-cn/device-dev/subsystems/XTS\350\256\244\350\257\201\345\255\220\347\263\273\347\273\237\345\274\200\345\217\221\346\214\207\345\215\227.md" @@ -12,7 +12,10 @@ - [C++语言用例执行指导(适用于小型系统、标准系统用例开发)](#section128222336544) - [JS语言用例开发指导(适用于标准系统)](#section159801435165220) - [JS语言用例编译打包指导(适用于标准系统)](#section445519106559) + - [\#ZH-CN\_TOPIC\_0000001126156429/section191521423950](#section191521423950) +- [全量编译指导(适用于标准系统)](#section1519992743415) +- [全量用例执行指导(适用于小型系统、标准系统)](#section118149111426) ## 简介 @@ -646,3 +649,67 @@ OpenHarmony支持如下几种系统类型: hap包编译请参考[标准系统js应用开发指导](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/build_overview-0000001055075201)。 +## 全量编译指导(适用于标准系统) + +1. 全量编译 + + **命令**: + + ``` + ./build.sh suite=acts system_size=standard + ``` + + **测试用例输出目录**:out/release/suites/acts/testcases + + **测试框架&用例整体输出目录:**out/release/suites/acts(编译用例时会同步编译测试套执行框架) + + +## 全量用例执行指导(适用于小型系统、标准系统) + +**搭建测试环境** + +Windows工作台下安装python3.7及以上版本,确保工作台和测试设备正常连接。 + +**测试执行目录**(对应编译生成的out/release/suites/acts目录) + +``` +├── testcase # 测试套文件存放目录 +│ └──xxx.hap # 测试套可执行hap文件 +│ └──xxx.json # 测试套对应执行配置文件 +├── tools # 测试框架工具目录 +├── run.bat # window平台测试套启动执行文件 +├── report # 测试报告生成目录 +``` + +**用例执行** + +1. 在Windows工作台上,找到从Linux服务器上拷贝下来的测试套件用例目录,在Windows命令窗口进入对应目录,直接执行acts\\run.bat。 + +1. 界面启动后,输入用例执行指令。 + + - 全量执行 + + ``` + run acts + ``` + + ![](figures/zh-cn_image_0000001119924146.gif) + + + - 模块执行\(具体模块可以查看\\acts\\testcases\\\) + + ``` + run –l ActsSamgrTest + ``` + + ![](figures/zh-cn_image_0000001166643927.jpg) + + + 等待执行完成。 + + +1. 查看测试报告。 + + 进入acts\\reports\\,获取当前的执行记录,打开“summary\_report.html”可以获取到测试报告。 + + diff --git "a/zh-cn/device-dev/subsystems/bytrace\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/bytrace\344\275\277\347\224\250\346\214\207\345\257\274.md" index 3933aebf5e5..2c443396aca 100644 --- "a/zh-cn/device-dev/subsystems/bytrace\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ "b/zh-cn/device-dev/subsystems/bytrace\344\275\277\347\224\250\346\214\207\345\257\274.md" @@ -1,18 +1,14 @@ # bytrace使用指导 - [简介](#section11388623181619) -- [命令行开发指导](#section1595564317164) - - [bytrace命令](#section2344125731617) - - [bytrace命令使用举例](#section5402591174) - +- [开发指导](#section1595564317164) +- [使用实例](#section667273201818) ## 简介 bytrace是开发人员用于追踪进程轨迹、分析性能的一种工具,主要对内核ftrace进行了封装和扩展,来支持用户态的打点。通过该工具可以打开想要查看的用户态和内核label(通过下面命令行bytrace -l,查看支持的所有label),然后通过命令行进行抓取trace信息到指定文件中。 -## 命令行开发指导 - -### bytrace命令 +## 开发指导 bytrace当前支持以下命令: @@ -83,7 +79,7 @@ bytrace当前支持以下命令: -### bytrace命令使用举例 +## 使用实例 以下是常用bytrace命令示例,供开发者参考: diff --git a/zh-cn/device-dev/subsystems/figures/RIL-Adapter.png b/zh-cn/device-dev/subsystems/figures/RIL-Adapter.png deleted file mode 100644 index eb3a5f511cb246a0c250a0dc76150b8816f4394b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24049 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 Xy)mDAS%IIkpwibi)~dL5H}ro2_G;)g diff --git "a/zh-cn/device-dev/subsystems/figures/\346\235\245\347\224\265.png" "b/zh-cn/device-dev/subsystems/figures/\346\235\245\347\224\265.png" deleted file mode 100644 index f666f21d1575a00e928c99afb29a7aca8c26e641..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39328 zcmd431yq!48!k-4MiCHc0Rbfj5RsHtO1g$rT5146C5P6HfRu`~g!Ircgmj~H$Dkk} z-Q94W0o`%F@2vBmwaz;0cWu{Jczx%I`?>DxzV7QGP)$XSh>(U50|SFd{-Lx61_rh^ z_^m~N1-`PKwf`Rc5A%hF+yjifuImfnFF2O>mG5I<6oy?oHo*md|HI*--U|$jD~;&i zn637iPcSfI_~oVVLtPD5zAFb`AFiJ8RPexlsQB~sddTI+^5v8`On*?d-u*!-9m9Az z+$9|2>&xqy6?n_EahEQ!m>Ay_d;Xp^nm`@7F7&#Xy7h`A(YrKBtjm{4dLY~FF9|>Y zOfxaV`}RH?pYfrlPXfb{_iVnzQd$PQLe<4-aIe_vqp;KBz(QVshS&1b_wM4@7#Nb> zB$${O7;t|A0t}2E5ot*b44-jEEHK0EE2JbC7)dSxK42!*#ZoxOVFufi{tW3E!*J`S zXfhicn}s$fML0YfX>_uvvv6xQZ5y)Pu`*WHzqR&eyQxP!J3D)UX^@Hn)9H9>YU*t4 zUTYY`*~HnAcLwXIse$K-$g+*m5z6~)?M%#|HqV%TcB_pe|9DogR-W6jd;5i<=h@N3 zu#77AebxeT=nO4lKKX{9BV$VdyYNJ(PA^H-USQS(Gh zH_`(MbbSc|lmdLH{vf?$w~a?i($8l}x<1t$~R!F8UO#F~d`Geh-xCu>Lbq#-2dg16bZE~49 z@7?ZGy^6m26uB^sAh-UX!YFs;d^=xAyUVx%H%-3><=E%G{!BL}=C6FN;AyZ0p0Q8v zqm*$R%?xX=2l&XY5mpOsUy&cfmaaokThgz>`4b5`KQbyVW}4BCkFBCt4zIF2<0__$ zN$OJOUhMd@M(qAP$`FK%q{usoOK}34LTk54FgZvtEdvOITxR*OPze8=cIFVf)^TTl zf@p!eH?UOXh?$K=*2E*yuVJo`>pgnZZ?1WNc&#g5#Bet#*CvG~MJlIn_D`7O#?bJv zXH@5_`(xcA>crzpjzr4?+VtCHyiCR~;9Ao*HgV3r$FM{9!92gbPy?ZEyA2Ik{^BJ% zn*3lLJx^46MUmICqx0>==U#cEi*`7+&%bK)Uwu^Wlr(a^Kue44-e!D%WlcM0rfjNa75* zOLJF_b8GYd%uQ`UA%jfYbP66D)l6x4T^cUo{#Y$)T*&Aa_vK32_%Yi~KH2Eze(mY- zS)Z?0&K|?uCpy#k0EtT?`5SGM=`@%tdZTcZ68puI49%ZwLj5mLH7xYTN5{a%Z;*+^QmrSkX;{K*r?l z`VWJ#3wE_B$d?~Gf63XthqdbZ)mG%N-RmY+FfgS51PD}8Eq{ldZ7z7b}$5!K$b!6kv%>n(nG-+!`Ot~rU8Y6ypY~3`P{UC-6-?Gmy=2UE# z?Fi%N)y*rXHXuRvEmAoQD-dL1r{2OrhEF4R%nBsnMa!&@fuU5}C& z>X}y20^h!3V5@d-wqe~gju9Mm=2s0kYV|BipTwUERKcciU@eLzySy3aMt$4JO*Mce zS-^~S6!^8*RjQOH+YZUO9}m%uwZij}0=TH`yx=xJ%M2QK3O|(`Z`!c6A_Y4N?W=Q* z+V^(veCuE`=3LTqGwBf>TymojKSp{TqeQ(7%B(dbPT`0`71DN?S$r-jPwwI&|CHG)&0O=-tIk~0~b@EYD7(=uNB z_9gvK10%83r$dOsE4{unf$^C+dCw-LwW(>Lp$FsD?i(>J>O}W(lxV51vG@=Qyd&Is zRy?Uii%+VyM(Q4B^P;uveV!t!P?_J4!zz9rMZTz2z_Ch{GcK^BJ3QV- z#o74G5GRfDBCqC4QBJM9kTJ&H_ML|HHjlbpH-DFT)9#jps54i6e(~rAg(-;98@iHP zSXtMNa3fY?#)?be97h~eE4hZyfcPdIX>$n&Iq5p}1#=0v%~V6X%ABi44l5-GG#S1I z{Mmc$b|KZu%S~^=)cgg>*0-$}Q4 zCB*?1DBajsUmQw!xSadE!_SgNjvogki60g@WD`>Z*R9RlRxjP53VRoJj)@jMUE@+nMeEU>({o0cdpJWS|Xf&3pM+whtPH~a* zV7!<>DbL90w5#-qyO~|f?oeGQM6_Qh>*5@_D$C%;@%kN>kFIBhyducl3m9jI*Xo8; zpT2VGD=2$ksA%SY`GB?_5@hr&Vx?+m#GSs+(D63^ZZ&RJ*?6$vmfwS8X}^T#xC7sr zdR4*5tR5cMA#TH*8c$(dp&gAEX5;$6MJP z$6tlWDos)~@$7WJ1zu$F>9_|toZkBPG6Hf!k@Sh;X!Cw&sSTkX1-@sxbW4a;x0G!6^`#4Q}zsF6&%!rj9GJXTgH1tgxwY7X0-HYS>4Yxp_c#jLRr_aiKW9v@1j-gxH1v|r+*sn)(IzEF1<2>dY zOHwvmw{NeCW4-C~96jTm19`u{odkIYO99@T_#pugH79X4clL2sv&UBi9_yy6&`oW| zcIJB@eiidpXDVx2RC?tpni4K3;BV1l-ZJ>inr0akbNE%&>%GNDcwfXA50Dr-Sy(6`CUwY5 z(_xfgGS*%Q>||v6aYcjS`-9)nF(L&RrDnxLX-T>N4_~Sb@`+gK@XkJpjqpB8&=Jh_eng7Y?^{-(bn9Kh2 zp$V)mJo_((lh2vS(kWt%6OyiyItaK*?Gi@O#@s3C!P&xzI4=X{?=sy0HN)CP&5$8O z`qs!|`yUVObN#Sg|34a#0}i0P1_lPz-e+E@yiWqdc?OEKJ5Rq?loS#}dt&IglOLo177QO? zc96!1+Bf_>?2z0=w)o6E&q?;n-i8VM)k%?v6drLhx^R{Ff4%f@ho0(c1XOSDS-i8} zjV%IQ0%ur{C{|u>uG^?Ycu?nd=DQKFIPT1$3enDUH3@3PWHpt zhs0}LoLDFe6ew`mowYWeSdZQw)GqX0xJC$jKG#Jj5)awQjGZJcSan-qJ7Rn0=~;ao zV`{JtN?AHtoa?fGaN?%HDY*@y{;-%(>O*#8=)O`{XkYqER0yr$)NOS)O41&wjNPn| zc=eMgi5o~|@X2IcZ+sLWh!4sJP*_95w}yrXO77|MI7m(62h(?k!fx^6)>klGp=h~t z?B>>0+z>C~V*3z9?k{W(r$FE+UAqWkgbrDXjH(l1{!t$DkLDms)p+5Zu(SQJHYJ^W zLoN@utSkKc!cG%N3US{c>zw1sk8N4%o+z)r^*OBoAISVdW_3aU{j^@Xe7+I{ldO5* z0a*tbbaAlBs#i0v%o2onZaAYOQ~U#5k#|?ht}mOYcR#Ez`)G=ZAz4O>$&&|4zxnFDargao6BHf> zM(%JjLAk$?MMuW4p}XBgji>wGs@RL!4%S4E_b``+8Ce!3F1~uv`)P*C!4zUz<8NQU zo;_0^?z(>O`OmZ{!^8DP;{F;q?Bl;e4#csWR2PB@vvac1pO{|Mb@kil&d$z(OzBRI zf2~4L!lHMR2mJJ4ZYKfZ_@mC(tTi;vSwwydXa_&R$o9`n#fbuaj`r3h9Orwcrc7b_ z-KbOq`0m~5aEIXR)u10+bKUlKb|=yhm~^14b&qS>PG5)B2?I5;e?0a8j{BE@`133Lx13MMS3{8>^5uts6`Qh|u$ zV+SJn_-;!0hq_of$&!ykr_J>>Cb#aRLusnar?{TBC_GlKPU$|EQMVPV_Eq#+-(ot4 z!<#@U2#&z{1;#m>KYmv;_Pegso+2p+uPgA@Sr{E zcrSLBN5P_HP+(wmFf!fPL>b^fJ2c>$i$z5*h<}bVP>7alYLC9JrLXjo0^uiq;38@qd-uWF z)kV>>Wr$JJV{$2=D4R}|pXLN7^5^B{>Cd20`ixjv-Xh-!mzI`>H2g;jVV?^Mj3WRV zAQhBC40oYei#)1o;GhD|Q`HjYqoAIU_nJdaGU9C4{><6jT*lmK>Lk;6lG9myc8scg;UCThAl>@;LSvn~wyU#{;5gfzNf1uc`S5 z?c_Mj8gGP-5X zpUu14ySA2zr26fQwYZ#ebt4(h2;T@y466tVnL05LM?ub%nB-N`NO0 zfHE&Bn5+gWTC?3eq8PVI2_QCR!5zungWse^yuSJ1geeiy_$c}-Sxux_U)Uf%j!2@ zZ2T(>;pkZM6pH)=cP{|OBjBus?~%d|~b{uk#uhZP`4-u-J!)! zubAF{ets?PN22k!@zOX=9}3?mp*iCPKV${@!~FNCC5=tbNA%Z=&^W^c_+rn4Ux@dQ z&-c0{L|eru5=aohZgzovOy|_`-=nT;LK8%*zh4A`Op6jTDl&3g=pzdKy)U26xufIz z_m9nkHO*6zW#^$WKx6eAD1WU+R*(-aQ5>d->HpcM$)H2n?}F(5bGFA6XkP2Au|-f` zUY^-{z3*NR@$ZGW*ggg0PUa+im5)wwDzE5`e}5_#S-&Wj1tIJJj)!6F^{*tsbB^Y_ zww10Mrdf20tKTa#0C8)*Ty?mZy|*@@S_u+%HdE5mLByX|s9CYbE1Z^oehr5sHyavW zUj2kd@T4+mx1ypVkjqO0yM8SzU?-q#%;%B7bp$VwaNo5JC&p?gU9X%t$%8@d`R9Md z;ja{vDlb#FADG0ED#m*gD@)_vb93`%LH?y+e?^gRkdxxZkv{h!!)!fW-2etH{acA5 zU2hDJ|Ay>6j7=H|Ed65*N1J{3n&&v%+%I!E#>i{+Lj5z-n(yZaFKC8=ltjVc`B1yY zWi5d|m+YvcuMLDTI%q-|FqM^T8=J#6g3p{t=<*C;#xqnLl0>U&LDUsodj-9YTj|9j9DUqzQ$i64$2|`Im1Gv zYQ1d|#vC}6j5M-!BbX^nX|-xLU9ZQxsIR=t%(4=NUgtVF7$fgF{`xX2W!*Rt7>5Y zIICl+&>>MzVDqDwM3WkhK5g{%a*7smgwk-%{vO0G>yw9vsO;~v`=mE zSJF$0EKsNYwc}OzZ*>fCIITu(h0?M$GgSD)d$?vGOTd?3aL(uhvH_KRm#=-NL%Q%CGv_{Q(+N4r-VR)e&xUof#PaZaJNhtt7-zWh+)c1t=@l; zOD19{qe3HdlUF}2uyP>R$;#Yj7MFXBpgIkfvy5wFZN8IJRw|&iV7B!xyRY3VAn~D} z!LPjcD+w(~ONNp12oPno2sb6GrqUb{D3CU32JGc0T;l2K))gu#+vd|0*N#A?;W@o} zR`^0h8ka$f@s1ug|L%aUP|CQ?yB%#Rsq5a8y!ULZ`bzN$Sp;GLc@;oSxQH z<8{}An!O5+fGnw>9O=FO=m`}T_zOdSi1}0j_AjO+ognjCjh0xlr6B~D^OA=4+CAC1 z&BwQ3)83f3W@$IN1_NboOO%p)8Au|@Qo3%q{0)CLWm7Xi!cSZ zI9GMC3zI`yqD_afySh zdcCWA#58sF3yF9geH>(U*7lW4*ri2#DGIg1C>#HPu;R_-Aq#E3n@41R8$5!aEK@)8 z{d~L6B;-Ct*d(ky1ASBhlQK-4LYOSD+7%;kEg$*i|pp@oB9gb?x1; ztU2;*%94$I&Oyn}91e;2(82W8`CY-6PC5L=?zxF+9=18^w6qza8hW@ZZ@igDx=eHC zgrG}p-E0scC#qNZPE)E1J1AO?T){KidM{hiZyZh<45_f?#ik4vfjjJpo~6s?saBAuwZTcflsZB&vLW>SZ?yl|>6-T1X;{*gm^6`wtu62>0^|rb)t)<5E zH9)amUK9^ZSk7VJXSpbz?4WG&L1@~qjaOTCeLVOXuBx%30w&=)PueY}tZS-y-+$kw zp2t8BStI~QzT_t%CmdD8Ewq5>(n6LtWVeC4vF&019-yd1uhwWleRpZLJvHIA*cj3+Zh|L{hM zBGG^ne?ss{X2Svo5?y4GViwx)V8sFfi9ytL{oCgkadB~oUL>EY0L*M+S6ER$Yp>RW zivl%}>y2Vf=&tgZZXr_iN`5II7DBG_6KHAGiJPu%iM!;wn?VQ_|I}Cb1D_VBt<21r zZrq_n^A8}ZofwAsxC8Y`bBgVr!;iW`vsR7D_*8j;gxRkxMFuFU>sE~UJ+JsRy*3}R z@<0)3sQlbqMB0khkz&+sgl|O=wr5o009*}w;*sFiW~S z4|E8ZRYP>KC4%U6w6#?dL>H0xb**@p8I-pvqJmM41`Aa2JHi3ay(9BNiM4COiC&Nx2@d!f9PL9yP zJyOxOyKPYMM7^Us*&qw~rzJknS!Q5y&gHFl<8AIBTdNT{1~f{OMnTBN5`==iZKI}y zHkq3S^wYXD)XdJ~VFYPU_sp~{Ysj4lpQH;pC%|W zze8%zdO7wa<&LV@&cITBt=HCUC$usIfr|lp>P+0L{Uas+7Tz>3VYJ)_;PNd4-KM~3 z=}jj1!p$ojc*F;K8z$Gmp$z<0{!NL8D8;JgHrt;4d?JiLOX6}J`m5mVvwKeva2&9?d3zG>(aCitw3@+uaKYI-9j{{;@%lPCqrn54#u4;=XEW*6^9X=a#4N)YK8Xm zTv-*${7tk$ZTAN$$@GuVSAQ4uXlIa6`84Q?oEP-K{eV>`^#AhB;YylI^{?;&`-Y101f9;9l2DhOd9w$lNYz7{NyqKg94jpvyk zd9$EDG*290FTimDdSphE&St|U?$mUtv|_Bf>lby>T||&i=iJ!P(9prw9MGD}E4g1{ z8s`BL3ma9wc18ebzS{hDz|RTpBK!a-ntuOjKe4R^qa1sq1WL;#vUlhfwlna zRY!*v!EgCO>3=RH9Iu_n78aQl=*Pu?7}>@F*!4_N7IbqlsPO;sXSrVs|MV-`MD`3F zbiZYhM|aVVvGV}_^-2Hy3W3t)vL_&xaC|`D{~hIj`!f){(Ug5EG8kS7`*-B0UgoT}5XKnIMK)O_pY>viCR8$l< z0K5nn2Ff-ivcD&h?68Ms~AJF#>(p6Tt&1}=@b6z-Q zx9#jWWlzY=;@!D=0S)26z1Gh0h9z=DbanaRGdcW4hcToVCw6mHTG8FeL*(TrE7dtS ze=^Fq>g&0CQo)hj2$_h;k5%4lq6rU=-R;Em8^{$# zKd^glyB|XKd9^|!26GJ!ZAjz@Zh-v+LK{;!yIkG#Cxz8gnKM7Oa=P_IuQtbz1e!Bz zMQ)`zAE?u342*Edm=89MJTcSur&vY~>&Lpfeln+-7Z}WLtRR^GuJ2zn3{k#^MG@$N6?ZL4{rd#@#40cOk)xIiM&rb<^?#FtJ3 zJ_zM%elJ9C_l>{EL|kc^mh+?e3E>`WUEyyEYZ?VBRy5!Ak0AqdyK!Q>(RUC%#%fC{}9Y8{R z-Pfx30RAG0l45@M48Q|_5)f?tH@XPY(=YKHoxwCOS%A(}8Sx9CcSjk*7aEBrl#Uh= z&mfrhFBJA?iRgx4^ndT{5nM=FAaj37Js8lC?qRN2JeW&lz^Ns~2eOj$vM#JFoX^Y$ zSXY?1xpF|_=<$GQomTqH2Q!j70I}Zx3LWe&W{z?!pQHpD>cDE=DKTEGArSXIJsujO z*uu%|PX;z2I}o9|-ss`7$ktf`h7qA-I65-&@F<#<>Yar;WCsJ_Zs92ta3uu)2fuK8 z2@JfJuLwrub85f*iNJkvusK64zW<|NRYG}8)ilBQrZmvDFJ2FNZ$83coXv+pO40g2 zuE!c+1Y(&=UM(;jjBTX?Coa;Swe0D4eO=v${wt#?d3~X9zkcP#+Djb4(!dtr1o8;7 za;Ll`1<2@X!1_P0@s9%j8Mm8@ z+D^&E0BL-Evx<)P19Q@AAdHFre0x2%)(7_+sux%?fP1J5kF+4XqWW~GIcL_oTS6My zkfs8c_q-N5T6`rP2}N9la)}p z=u|OM=dM;wcN>x|>p``fTBUptF-ltI3|g4=50Tf?G>G3;ywxciHo6r(n`qpec@2S| z#uxNB;ZNv-ShiZ1Jdf>yy7^dIv2O8*OdNGAekZcX<486JV*xOQ9;+rslZM69Yx31?sDm`rCm-MB5t9A)x zRrgIkj!XLa#nxV#YDF;$Yyu!}_Bvi@nw!CI**L;TJq~0cCDG%#*y6#-o#A3AYFysj zJxtCoNt-e_CuXKa^|9!A1_WjDu5k z)B$;@60SO3WvXP`vr2G(qXE?)Ih8XZ#B3KXYjdR#k?u5A(8RV+dFfe4L7OS4YArm} zhSJ*SGXBKCeZ;$?KpVX`J*v*NvOE>9GyA{}rC#{_W-KpgB*3q$*p-*;#ms`!(~0i* zfFlAHnf&oJqrR5#54KY->F<)m9=x}x)YUJ7U()g;nBPI8f4+{QNc>7QDC-snw>skl zt9?<~f;K-`2hA9<^d*MG6Nbg}w(y3&9v)WEWX3F3ztB1~dN(ALtI_89MvT;EHiIf~ zRw)Lqm}ZCIhl3W;J1b22H2ND(jNC&Lc^Zye1O!M5MG`fCFmGM&$~Oc7pX;vToS#Fb zrL}*E<2+8%k{!T(k3MDvI!1MStxdxdOT+nz;-2t{y1qV*EZow<_cuVJ>?XROqgyUw z{c>r|?-FGwgM`=iyt*>^3v{QFcm&;s1Z%*&IEV#|SBBI1wV?Ez1O9SQA_7AL!(5He zFKrx`towRm@&N047?W z3$iqPRd*T@ou8!qch@EouNr;5#9j3^7E2P)ne&M*G8u2lxcw!K{|qw5NTIPVk*AfE z09TQF>`l}@pHV>J{azz)TaWRV!IG7;5SBy(A7tv!+k5HH=0smGsL{IOT z+NT}?e>EIYV4kJ#-~BN%%YG-p5emSSHi2e%XlSbLIcRJ(!Ct-FhGG8t%&9pC1r^X% zQZ{{j4{MQ)ZtRYG2pOhR4sp5Cfs?tpA3=bgNl87pkx^XV@Le8wbJeR3Sd& zY8~tq=?)CjBo|PYI)inG*=KfgGX$AtT#?P3^PQX@_0C{PlG?yCG%{JpL7o$%MR7&F z>@+5A4!Tk7F0tWogF~A(3EYbTnueU#7kNW^73%D-M)(_&6yY(hH;P3wco(bQJS!ch zwbA+fD9q;_&7Rzd;{QouskJysPEsU)C88n22a?GG{Lb%0#WCL!WfPsJpRzwe`T-vKyYC3B z;!dgK;9KPs*m}#KNif?JN62f;Dfl&MOSTE-`5{Lbz*{T61-vT%UjGl7O>I0-A{`a$ zan)sM^XlFYjht`w95od*Wsxm#WLpE!`l^#v2qPc?D_Zs9KY{GgHj=?0ZY3@cf=<^C zu;w4O1r9F2D+pDPX_JME1bD+K*+nCk+DUs}#%t&-tHlvoLNdwtOB0E+MnPuctX}Aq zN+?0%ISViKLr!cSmkg(?JOh>Hg!|5-)?j8Q0G*ZPq1?TgwMWKI2?`k5M6v_fxPO*h zMYp&+NWj$5-~ozxi-5o5Snqp{=aHqv(I`-u`gg;1?Rp_ODubN85!qQrfH{rZbd2f@gD8S1*K{S|xf zqZV3w(X9?%``VLTP)dKx6?pSBa(vmyw03Cu3<|}8I&7akZGC=|oum;|){ClKpeqeZ zR^T{*+jx30F50ZJ=eH3?PJTPL<*ZD0Fef+nzGCe)g9@Px9+??tJ(rOO%G|vYJfnC26LUC7a#e-!? z8PFinHVhx?*vdiK&uz&Opj$wyHhQZ_#WpG`SGBo>YWdrb4n&$|xodf5PAt`Ol`36w zFD$==FT%1+x#RlzamVcF0c#l<{$cW3FVNSJMMcT6$oz!&k)cJAJc)rOLTBRMl!=-cV#`)vh^~0uZZ#g+AEUIVc0aaqB*fisf`fb zRpuntI}wAgyxDZAmqoh~EwwJYSEeToBcJ2sWOF7O%nbcXfEU)3aRrhg7BT1sqx1^a6?c!b zev25uKG%xSE%zIyCDtmRa!*LP1TT~~bXw_u+{*OhpF(;Hn(JH~+w{+&GIjsOqDXoX zS#_5SQQJe{x?qAGXcW6Gq(zB?qlhHN21mN$;ol1Yp3)BXnFaL`XgH(oN3*jQFle&H z#n}Efn-s8_K>=DJ-}43gC|rK!hflY0ywxqy<*9}4k1vlD4y?+f;uOaEt}QTuEPI%L zwo`k$Y$>5g>q{{+zXmQ60`ear@bbc$^6u%Rvi4PeO&p{-{`WgKu|V291ATGjyz&zH z;?x(q9Pf0tcFG#LKGIqzpSHIabHOxe9gyL6ha{;8mJ8J+X0Ix#v(6iFaFJm~#!jl+y) zjJyFgH3iz5+lB!49jWtw`W9^@s_&Pt>bwI?LIJuj)dGJH|KigLBBH6#eCpQ&Ek-W^ z60G+po^GppA8MjxSsm=J0w#4n-H>7&gIcc>_lcu%AYghQPcxj&aC^&_%;T&oU%UgO zqh~cT=@R8_j};pu_nko+PhT?wyy;|H(%Bk+lQNH=h53~+M!KXa$`sr zmv7nh0}*y_oDnT!HoOUJS4Jp9)OB)!mfD~nSQT64jeO#E9_2~-DC&0iw!HB0ZH**#39=3kT=?zXSfxZmG7+Z(@}U{pqV%InQ+}@g zBYr%@aueWs$iUGpi<*X65_n@vSs)<_sRfO<^6b~kS*BYgdP;QMN#9;0NS`eCNYu=H zX5Y+QalAoV5=3=A%UUAnJe~YxmCyr@&s*s^2k$@86LM*3D;soAWdk3sc|2FYy0Erb z>PlcA#I}87`ygI&*fiB+nLB{8r3w@I^VHX^cZ|S_;qyHsVZyZ=gJYZXxMGnL(=~#d z8%@4ip+*s02kXF#321axY;EUjY01H(!x^Yv02U-W{aYZn{9=Ae+wMwf^6*aHxUiZ!! zPRV6;{xThE(e_jrem!r}o9S)_z(jstP?IN@^+b~v9Ast4$SH%(v#mmDesugJUF|Z@WoA{M#sN3t#Q0`=Ya)1x6#GCy$0at?QZr>mPL_{!QfLp?2uM%dn)y05 z!dOZ`LBT)hnwWf8E_-B=lh4`ebsT7AADj^;$IwNNz~4z}Ii+c7Db+dI=Y8WIC!x#` zt#xIxJNt3ZR`T$mAME)?N4 z@MuQy(*xldffcRkwhU@w&H^27r^5Ku6L#17R%1Cge@H5GSuNzf5MD}SuJZEDzC5tT z5UiFmpZ&4XiBG%qoIT^4?w=kb1VgKHp+hNWpNEf-#q*gWF01ncrNhJ<)f;Py!8x_;&jX_?l4E51JIu6U~M0f_@H&qPdR`Mb& zfmZLr+}_-i!c{dGZ*itxDH1Y|D<#m^o0@#aJERkN=_LArJxuMXSx(xSsj8{jPEs{& zy8B^e8@HbwjYN}xr|XQ)2qI)}nwguDP;BI(X&U{?fMG#oi)^+5d^-bUz`6zp+;v;z z@prtEWDYP?v3+6{nEBZ{*}d7Q1Mq2frbmUhr;*^ zT3TMIn4pKDwQgdi8373@yT+h<-^5nHxMZ6(uNM`*W0_lhs*$O@m0`V;+%WwLU$tI5 z$5XU?WfJit@#g^<@}>S^D@GR5a)lY1);3;uwCx*M0@c}tSaYjo99&HWEp9T)@9F&* zcIYfEl2=Q?P46vOpj>wRJS~HoQcB7f{?K3SU@)*P!Ch3|m9P+ASo}zFFshbkLxDet zp(@b1xo0-6uqH2uaWt^0o8CRByB(3X=y_SVDIpYgY>#tPcJDN&WY~zXcYIQ{c%3p) ztF&b*N;b?{xNu@|!Qrg6a4-%a$f@8blb8#BZV;!0zk1s4hu zaBUk;uHIz&k>hv+t7aEv1G4g1rOR3jucbI}Vt`r;P^$9_odilsbIdn3^&USScy1ed z{oZDuBDd%Mq`x&o4`>(sQdO4q|AUp{Tn4^8bmo8P@1KtVI+b)NryPbU0w zb?P6II5-e=yHii~mg7V4Y(IGRfd6lnIU8IezjgUU3jCM~WL2sLF?i*0$FNaHeg*f- z?nH^&k`naQCf-EWj=Frd){A#{WGzjg7IJ3JEZVE5{y zd5b3v`leu0$J`&hB)Nmh1S8qpKaO6Vcl196#&nZe{P36r*JSSFEZ@9nE9iIZs;Z>F zNNRSBdCqwska%5i3((`>IVw*O)*a0Sv;`7O5%&JWOMHp?%BKf)20x6hf4oFy^fJ$= z*6VP4!4n%uorqHUpfL~7k0;~Z*rB|`o2U;u-*@WWo=-OTflfDr7#zx8|Etw4djI_5 z2F|e2jo5<$)4ndhjk&M?^vX_NJ1GUuc(iB0=6HuP^MgI?d#(4`vJYWl%j)5UGL{F4 z+pDUmSd@zZ9aD9pzLrv(;k<=lPy}yn$(~Jn9}^E|E5pRNXe?>!OD}%7N80yXs7nl# zfs2bv>(pX+qZXO=OgMHqJ zC-gxJ42ayd{bAg1;D|+eDJEmaS1J-)fhxI^dS0H#kPokgNkOuXNq#b8u3;W-6p-~x zk+k>CU;b^^Z5Hh@R|a}4pdU(m);IbGDxOWhE_%r5D}yp;Sm0mQTOp5o?KrYYU_~lm z1MaCk($kB1j$`}HD^O+t`ci(s~bxLH19`5@tP9` zYc{hD!=9o_s;ZXR<-p`|x!}UUr`0J8rM1h_s3c^NqF_q0&th=Org!|nru-%XgR_!B?_oL% zx(Nsf7h4%Xb^8rjxR<+qR^gePL6f zG9RO3IPd7?^`(&K`0iumw5YDcQLN=~*uh*4OB>B@XpWj@(mkEKDv?hw_NN=MU&gx7 zKF*M=oE{@R6^B--X4Czwxo}q1#a{gMw!rKvrD>%EaCgKCsS56n0FNIfC8Z|U9dH#G z+&oI7pki7Y*t{NIiY-GuHkfJ|CO+j!aW$+&y&7DP)S|#s8(E6uNz?*aWL{d>zyxD_ zWLH0pfvQpqyAV%(xks4&vQTKN1nG9l)FhdXTTHBKg5ZQlzf@^q#x9VcjJmhmA~+Dv ztj-^1EH;8nxuZ%({Wd4zJUfIL{g?d~YRcuBR#FquwdxDH5EeR%2Fpq*wT4SIpG z+$ELeswv$?D!I|npItr?PQ1lcMP}WgCA=}4;r{9S6|44r}>y5sy|grI-b?wP1~aDyvL_U2vwL{W)@uc}k+ zMbi@$SwG#_?C=Y>4A>a*D2qujm-77j8DYjzt}d@1*Q3X_$TFz34S918+-c5~d)C`} zLkRM<4QKqF$`2D=F3WoU*H-NowaYBiW-+%Mo^N^-ps5WoM~ zR8Okt!F9>yp+}JjU%IKlCL^{8Ck+nw`w_xT&tFmEwJPh*nA2Eq&a)qd-`&uY&I-); zDO7MDZ6EmTnZCat-nXu(NuDG78hSXg%!vxt`G%h9(5qNPVM$pmuo?@MLc3wM{y<$D zl^!%K3H1IXM|8aWYFeC9WZ3ta=8Dq?h@IxnZVg+a0hyV}(Hd`rD$g@v#f#Qz2y!5u zD9KkzQ*kf4zM7>sUVe|Ovay+_Bv@>zW@e{l)!9pe*Nb zu4WM@*R+QwA^Yq(3=%`M^S$mphP4`g&kp&Dt6M~LMrE@fTrWsW+gvUz>bXG{A_0=# zfM1oYKCB-M|BHZ~l)G+-WOBg<7#<`LBeW}03A-Lk$+%}$@!L;#B(@lfFxJCRy zyvnoAwI6Ee(9)UoVCxe21JYM{@#& zg~l48Oe=|fk#^MFVq{}Q>9s$aD%=YhWWO2ra^$m1wt}L%ie0LQhW$c3n{Bfy=AdMb zZDme%q2oMz?j7ikb?aj9QCN5NT`U^@;?(*0N9MvCK06DR2$9N6V}Dm7mX{!hUra|b z9kKJH9{alm(0;%T5+3Wh2j`JvCGLuGmj{pkQ{xhywQN3gd$!AiM0YSuCvj@-ul4&W@WB9eLxHX}A%)>Dfx`+vO7*;dzT(J3JOQQbYt;5yRBX5?K z$C)4nsM0$|jGtblo@R}p|6+^l#xffHeXm9dwc8&7F-mW1D|+4Ob5923P|lJssjEYI z|EnuDGC_l#;Ve;MPJf)cvBA?%jvpQU%Ol4_*^s|GfMd{emo!bzb0teg&pc#5}1ek@!bTvE^espK6cR zxwQiJ?vHbqz(r$Ak?Zc{P$;-gElCF!&J>K|SCb!DJ-*muilATitNZ;Y+TIDQ3%bAG zaNg!abHhmeCk+?I2;j-O!vlu-=OdBW%sAHbzINyt9?khe=*xb-^*@Sx?|7>J_mBUO zB#K0c5L#BKP_~l2_a;Ji%NEL82x&NGM%FP7vJ;}LvdI>TWM|Ke-}O4AdcQy4-+#Z` z?|pm!ac;-ywO`NY^}Mdf<9@OD)?TV`zark3uL)`(t<^F)OotdX;>`nPo$4ivaQidH zvM2|{1juQ88dN0Dalgk?!)N&wiFO$6{t(n6<=w~e9S=`%olAXjzMh|w`y`?Z7BJ@r#|}`BRzU7uVjt^kT(p zgWTV@!hdi2*X8xx{o(yTv@*ZWrW|Uk<(04gxG=ay%>VoOBBeDdxO0DQdPeVmT{>I< z@Bhcy03;78G20g=vZ=7D>Z1H*X|$6cb6I4JF1Sg2UX**vUWd6&x}f(d2BnCn;JXuY|f|IwAmh=R!tga%UYnFYL^j~PSs}!Tu!|l zXd?TBt=E|2$t6L}Xl?t$ZcDP5$cu!c(Z1@!x(_HdbhjL>7)Rv0h8gsiu04deCLLME zvn3rCkg&FX?vsD*e0h7rQ4PsA`C6M4Ua1cLhvfsI@CS(wcEYJ}b9eO)ZC`fIF%@Af z7JG&-HRsr?^+ZkOyg8oHLyN|#XA1(oTMV17GaRd`iIbgXn(H6bxf`OrM~%k2XW|UK zo--nJS`6Krku$fd7-2Ar-**ei#07awXi(y`3CGWUypS(+q&vAP@^;bV*hZ6XxK$jh zkl;GKpGhW{>z&H+c>SV$zo8&T+G!bVOkd$Iy273nJor>5%CfZ0(`S zm69F(L9J)#EdJDDjPPpemu?ko5Z?rIoVG-+RJzK$x@2y`gRLSX0a7}2?JI`q!M3_) zK>q+qw`(v4r`$r+ck)d5RA*|>G$#hpdI(&NhiKi0NlB3{MKVt=D)^43w82t$OssJ7 z+32>zF|}#gIa2J_mgt^zx^ViWOpZsOw6KaZbx^hErqSZbtKxC)R(dJRB?qIZ1BQ@W z50?Khm7Su9)s^M+4qiQ6cinQp>%r5LQ7KPu5015oI3CV@+I8PCGhHi-P2Fu?%dm74b%f&$o;pf$Gs|I17AZC3; zYx}p5o`o6zFmA!WRr(Qb6ae%s|-$$9kOUW;vYeW14> z=`S$BU*FvK|BBPWZ(BFEHSvFaKJ~baT!;>VvizZi|K)l3L!Q5bVfphLnAaohK0?-M zWekdz7|{(@+XT;FE|JI;&Q*8{pk}#D3crAw`Uhx1yiYLUIBLwl2|R< zP8oa(HEO)50Zd^*LBGdOTeElkP_=X_`)SbQ+fV0dm2?m_3Wk}v$S?O?O-+aB23D%W zpkisXITw~nEX?-~96Z7Zx`LuiY2fv(p`Qa=n;^CESV&+*>~ZY{)qoO#;v$F&p%7k{ zlXH8bBLndQTcs{pn(DpGnM)Dwh4OiRK|v@VKBM;=Sq-Ju`(PB-*t3|$$JXnzad$Wy zF&J|iP^$$4 z?W;CspD*zSJPz%tBv+m~B}pZ*n{h->fHyhj4VE3lw3?E53@?Z@k0Ytt=fN~vE{2sY zF>UI;L8+@ou*cbHPSqp_k?UQXlf;YWAG##bmR2uMFZ9d*GLmFD_G8eODb*;Qgrd*n z03amnc}L1aiDP6}7+%)u$lh1l6CixS-z)g}_vbd9Fn(P`vdXaM%1Zp4B*YG*t23_Mpg~?q5pw-B|wbmrLM_i9sVibwrnVlFPxuu+T z_@~yBoCURRLyOKQSe-Q5WBn)asfgd!F@Hg-7l%^`2U%v#O~jRX-=>;s%;Zjp1=SE* z);v0>s-Bgb5=6=>lS#12%m7V?%#kAZ561QIU4TuJ4`XA>V+8NA<- z+jXDHedx8noAURA5=T3@*J95#Me?@c;xAb1U&12+Y7}D4mX&!d(uOe zF8T<6e3P$)myyjT97xNk?$YpHYk=&gf{~PcHkUguX9I`Z{l!f~@wK zt5o8z`J}T%0_uB8(o0M_6^Zc-7aS(ea0k)iT}69*frn_5S23u=>cX?jTMT&Y-Og=W z5GbwdR8mVs@$mNCxF^(6K6)m>+>qNxLD2H=Lq~kpx-@tj*2)OfL*GQZSN7=dk(bv0+8*Cl5x2SGAi7GhS}eQRaZrg=_>+C`{Emnf3b;bvTU z_|--ze#uon-+L{bYbZrMwe%K>ig7A&Tq0|#p(XcPln z4LKym`~VzWUqpHIx;M*i1hH*!MP!m{Z`^$31B%I*E zr{beylMwR}1yBrG0+9I-p4m3y2p~w|tCNgLbcg$};+I%Du8RHSpMf01Wcs!ALau-f zJ@biN<*}_F(JPSF1@T_B>FQ@5iqe8zWRqkKOI)9~Fmt6|j^#?}wURq^EBy9*A2?f~ z)jBy934M6@LwNDWeN;_yw?3I9hGl|}bw%$=@#toV#;cq%(hjjG0cGFb3%N`>?s=E7 zfmzo$OdnjJ*aZRvo|O{oGXXEe-RDb0G~FA;x3$EXi2YnOgT_BCjjk`*N7wXUNOats z`ls(|=x31j)k!5i2=h(H414@jFi> zp50iXH<%QwBPNd19E&AO?e{pFtOm(j9bca2kSZH;!OpLmsf7KKdwG@5N2@e7vgN0$ zIlDAl+ZGe@0%A7}OKdl*u%Hqug-FHHDv3+r+`ah_h*A4NaHpJh2IcymSCWW;2Qi7=ox z$5kzMTnFu7HX@bUe6wED&Q6tF*;}PPhk9Ve_yTu2tEjl!S*s@ng}i}Yj?ORVYh~$2 zJ*Cf($z#unkTflabNu<>F|rtcVjasxAJ3 zaDEs1pyh{fsdEiPE0E_6nwcA}vn)n%Yt46}gS=`lZ1!@Psz`<$F3~pzIlyUKdo_h| zv+_F{*TNk1j$*L=4-?fOOV3)(iq6>Q&q!R|So$3Jc|D_)9V6}OS{kV;i0nSAEG4+#`bA?26iqkHMrphS;WFbt}rMTiNe z1Vo6>Sn=)b>|#JYMbsyqPQE%Jr&AFsl(=qE#9Eb`L^ z!rb97Baz$Rq$8>151=63tU%CaP~t!9Ip-6RzAkKJFnpFduIScKHB6)6BrA2AHe7sR z1q`pCqY`3$?=i^6LX%4KvNJMOgDpeb(xKkpk{~r*wzY|7*J|Z+l?k}A%ckRrBI;UK zY*Kpr-C%gw&QPc0)lpZuKmOjb1V^>F%If{aHe+0{*39$>T!% zfz9qFk0lTa)&>YRR-#ZSmWW)U8}KiW`FE;(okqAzq{mijwcgHw6uX>_9%1yQM${4c zT~c+S-)b*g)7ttLyZ$^2w3Un=E7#IYOi(CpM0up)LZ30WT(-3_0RMY_B{6cI$S8#M zYXnU=k;f2@lMBxHc`FZ$(dSLfkZOBeD^95H$ZkD3;3?DFYdcuBHTR=<+T&;MfC%J? z?=%VXk5`7jzDrtv-fn6Kj8}3u!PWx<3XU$mleS8El11O_H^1A1Msb37Yt3lOx`FTx zB;wwY2kY#S>3#X#7v!DPApX8v@3p3{qvH=@qD*gt6(t&}G){Xg7hAd&ZX`}wwu2s# z*N=QA+NpoFqwuW*m>s$9jma5al6XP$+ziw!#&%;0VY|;|o&dh$l!rU`6LT$^GPAO{ zxVYR1N*pFa?bF=nzR3vpWHQxqav7F5kGHW-J9gSUk&R~qP6Y2!c{+7Nsr2>#%IoV- zS6{#!L!ol761dCX8m|tba}6X{z9#on?w#B)O&J2fbV#wQQL+&sJff+oSv`GIfGumN zY&~piF2HDgkiTrT0TdbP?GOBU8d&$C%5BK;L_y-tQ-8$qsBMgZL)sIPA(c~-Vga{; z%NY7|Yrqi9$-$vL3}&46l`)e!wXZ|LqDu^C4NFo8IjOTi=0n!+KHpI4w)_@WrLI(( zV{LN?F)l{SU1p=IC86}8pyGkzv))=~X2V=xA5+T|qVZ%N`eYLka0!L*`o4^q%$$qq zqBSQ{IX%qvVB=TJX}nwZ{}J3}%CMA`*{TwHN|xpUd9o^HEohy)KU7x7mF`#0l2* z4;U6472V50P%L0I#5i`8PNJ4sjRryyhNks5Vw9&l3kPP+1?=ijT#{gZF`OE!3tG5`6I&q zUarY8u?z0#u7$P9i#(HON^dlphQ67zPRr>GFkFJz6Vj|9Mta4nnoH@&aUj3`){uQe zQZ8B@s%XBAy8?`fta%HwT{ixJgrjA~7fJ55cq2--q9D-m^I%tZU#W7|9uo5A$ZqX|iJdeZsQ7StwwoV6OdR4y11Q0!sQV|^I!YF6S|-x%z8XJ_YPh|>!ibZ1q{ zxwr2P3ly%FGj7iK4r8-AJ#Vs#SY(w1bDE3WV;}I5c)PfB7M_ov%BimYsp6KNEi)L_ zPukX^A)AgzDX2wQ?A`v}jC8vhn<{OX)DS9w<{Up;%1gAFYxluF-2;@y(G zY((UUZu9P`%nHwVMs)F?_&a|*rV@q@mRT|c>gsb%-_%nL9w`Va20kR`=F835qEc2L zBj+ToIR9dVyJeRtn5N*uowmSJnG@VVdMqy^C65&3e@Dsia0N5Klo%Tx%r&Smzftri zPb)?J_F8(`8hh#T3o}}?l+m=H`g@w) z9`mELLWiSh{zfh<+vada{3PN5k3i#l=}<+X{(hiWIf zN^-EPm9PH=9VxQ=!f%Kh^4F=jv-}6fTFh}9(s^!9eOCXX$NCD)l#Awk+wel3;Wy%8 zg1g|Y-3{AF=l%}>37NrJK zMqL4}W@}#7b!lW3!&uxNY zVYgr8Y3U#V6#OlBwNcM$A_rP#CAJo{(ar;_n009P$-@y||382x&axcedUQha{V!xV z4#k-0&ZkH~`3Ent#qAeQ7A&^_!ba$|C@;jPw+&_7&YKr6{i#Jod3{96xPSr$RBvYK z{}!R{T;pE=8v{Miq2?I>sY5jq=2hH{jBz{kGYBAWJ|^N0>j`i0J@#FLSSplE=R6W6f}wT=r)ZfW1P9$cYh`H~B!Cus0yV`Gze zF9;d?M(GsNc5|U=C3u~EXpN(@p6?c4{D<|h!`azRjz5^HnLoQvBOsDb9_t%Q(Dy`7w}S zA~zth_r$;|^FD`&$ z7sLY^R8sI|ZG)~1BR&kjb)1S^<6+Yq?kjeJ-Uk{fHiLlQAt51gjGJ_xgoX%epKK9y z&w%2#k6S1DJ&C21%qqvZ*7=^N!ndN&*peAm3=f;NW2Rg|OJ|jp6Z5v3>gPu*Rr2PC zoRNG>5`l)-HAr1jCtNjseKMIHQrI&mVhZ+6?k#hfPj;-LRvzxU__k;76~`l8!v&bh zNTt5U=G<-S5=qaUgUY#V^(wCrzY_`tjK# zxUDbmqp%FW;>i#18w{hah}4lU>c3_rE4o6x;`Pa~bWZ2gW%_ZSoMXmg;{MGQzNZiO za(qfTVS8ZbFeH}*M*T;titdiJK1L2Azq9V*^;7CU=CqXD?sbf*a8}iDUl;lL1t9AA z^^|yZx%gsHP;}WlOFDi@^6r&KQ6|fa?}OO-ouW^p*w0X;G(g{yb+w}o@oUapTBcbo zhP-?pB+If}|9otUFQxU0zHB1ulj}!6-1MF_PjSILW1puaUm8Lu(%K{VnXlbH$rqN} z&Sw@nKam!OnpiAYyi~O7FG&rBh2hfEE#Ivf#`QKwXP0#fo>?MonzT~cr8KG()uvf+ z%&{#@`c_gaPvVbNwR~&wnaN$LQr#?A^3gIpxM0;=$51mACWe*t9Tjuy))>mo6Jk_1 zI*QkB;l3uItgdX|;az!WjQ$$hF@%iO5kIa0sY*H~9(Fa(3DYZNEH-d?N69xaTCM3a z(3(B|&aTvBpGMMRs=@3T>ttCp$+D>+U%%^AL7J3cElEdiWvwq2gds%`_X~ zt|E71KElN>Dp!K}bf;^UAHDx)yj>nGkdJQ9b-Gcr#Ojy+CS8Hp}6$qTfshP||GzUw3%haEHO^ergByIl<6Mx~@YWPV&8b zJnRGbFU^W*%&1Y@r91k?BxDm%^@a&@EquB1Na{!zy%vBRp^>0}E9<^V?~@Kcge$8x zm6KxYYGoO~Fq>WKlWYAcrZ`%6uV_KemFPDgC&~n$Kk}l*81lObJT;2UGf*Av?!kn4 zlpA_NEp)c-rB=1ki@Ee=r1gqbvTJ)vMCmiW5AXeL9HCu|O%wDysa-wpK+gTRp)u*Q zfOFKi1J=NZ*DvcCBQN!WzUodT%J}h^hp7`bZ{vF8(}&9^ii3{mj%S)XeR6(I!K+rN z>1VMFjoHpJJ{vI77`x{xeo%iWFanc>%kl;H zY)%Xk$l0!O@eYN|Ja@fzv$1AhN01RGs4Jp%eOHVJk4MMK4Leii2WFk{3T44J zF|7LeB$w`4pD!C-TZ^!~=gR!gq{jw0YD=MN8Ee`XCzBR`%AR$@8@5>e&4nr@t=Hbw z30VD$a*5}y!n!V=T?C;C-|No?W=3jj)B&q! z{zn@N-`{O4>Y0A+tbY&cyQ%?!&9nM{uRx455%NXSe-JUOsKa=83jnt%*Z<#S7`(Uy z7_1jhPpe-hyII7O>@OuY56Xh&0naV)4p`FBSAi`YM_#Wd45KrJMiwm;VE>jNK*HM6 z_rulUfR)(?W^vem+|*9k=aNNPjLdjt!bVavk!i&d8wY9ZhJ4|Ty^oc+(8TmbZeBE1nberzExLjKHWHX4f zfJPz!nS&-DaH6*f)Jx{$l5@=BYHP*kuK^;wgyyFu)75gw=k=F)irOmq#pJsx(xH+8 zv0;1`ka&{BR~||5RLGc_C4rU2V^aS5Bd>8N64pcG0@xrVnjh*J8lH8(p{1oGjX*1O zU1l667|0CA9j{$`$EKyFl_80Nm^N3|-ZGk+%>gkGI_Zf#g`S%}vZ4SQOw((+IsU0f zTO5lrR;|0c{!C^<%S;a<>ubXA-J52Wr3%i~>Z)LjwBOfn{_sp@(2Uppr<|>5K z#|||`Cj&J4+`+q1?deKWY!@`&6)%$7I(M|LeidoFeBL^)bW^^)tTA3q+xyn2&aa{| z4;^x|PmwFXtbCw|l!cC6);aAFl2lPuODyon+tuk}u$q-AZ%3Eur!TK5@l16O+b0-M z6;$R%qBE2P<@&lEY=$YYlYC2Arkwa`N!oHFzBRY1%{$7M(zqEj~?(TEp zL4cLN>@a(SC@F#lPx$naS~SNV9qt}zf)@S$+zT_-EUX(9LU$`(&c6uoLs}5{5 z{eEQXEgP!X)Tu>T&#|5O9G;r$Ueut~q6PJXoB{zpej4h(=oVgO>Nt z%l77x?vuh)lwzfYxon=!C&#$%j!=gO>iL#7Na2fS^ClE_Pstr zNo4gz`;UK45<$HS)$Ax7>~#|g;%{uDz=l<_&?<+N7JBx@LCLCIpBevsCD9G&2!ym8 z0-CI?on5jdN*4a%_ttQ7du1YziPv8NEQ;H(kA`3!=@Yk$gDR2X649J&%98Y&!6_4Kk!$`huq_!jlO< zh+C2U<4-=*4S>O6v=%tWT17x>ov0HcD_m|%gFDo&|Ck?f+G}LI`={vdW#&ml^NqR# z7>QFL&;~YKx#2xLGTdGyDCGAC;qy76Q;hlMuV`4wU8y*kb4v^kg)Z$9+>SjVRmxy`4tFf9>ixD$l?G z=_3V79IJ|rx2NwG`Fn}M^3$tG-Khyt%KvJ$V*ra&kXFOm6j!Ig$4SX+uHnZ1?c9yz zdt@}1Z$`#$e~{rDBTPk*dQ;#={6Sns2@!RpdLHBcigG}1@8Mlf!2kc7mRX+sl|<_K zDSrnHvERW9EPiSfS*T;&93zr7*=*%9THvB16epAz^&x2J1ov0Wf*kiDuMcV}zq+>I z#qn%Y>7Fq9F3LWyyZ5VW7Orbcx$+K+4N>+{{V+W0QS`feR$2tEmb&jiQunjpOu9-N zb;BQjB|EJS!DI2nT#gM7jwnTogvk12&ZnN9%726COb>2dlg>YZA8!wd9yyYU!NK^B zj{kOP**;Ig)SJy;&TS)y^Q#rGnVCKJ z2kA*)Haa}IE0%lZq1tIpKNcROrJMnhca@CyVcxcLX?yn8$H&A!3*$VITFsX6nLAX6 zEIa!#eavyrt*YyM7w3o62HrS8r;r9Vc7tL^Tj#|2O!-y)PcJQAjy&VzcHj`-F;Yac z5NiOcwe}$+0h_@Q(n95nCmdMmK2nm3Lne;2|!Rd|8nD z{1Ze@iz7`tom+~W|Z@uzyS?Q1gG zh$i7-IC5sdS(lcXFix5`G`$3(D&s`T#fyY?`^1&Z_l6dlh))d>wR`iwB8_gRemKs= z71JU$>ZYMXJ!yji$MYxCYxU?R%1;0odV1sKFJHvKlA0LEGiRjLn}sT!PX!3Yx`?B% ztf`ZAa1frO7xcU7A6=z{smU{qqEC@x_jC2bQy*@-TP`vaFm>;r_y_c(O*><;g6abtOi1rK+B=cKKv-@JXT_JB_XRSIe1FGn1nq9;jnw_SpoG zr-`-HkW!M#49Y;6IIvB_O8ASfc7IN;8{OhfAmJV1FxClLQ`g#Tz%Iu<2n!;e#UvPX z^vB2W&eZ1T=g$%C+sM!*z`Fa})K?RJZ)p2CL}5IRoD-xKbx$IosI>srs1LG-udscm zl{*9!gfmD10b3Rh{d<{1kN@@_RY8k9@@#@@kkCg^xxm=l1$6%RGt%#O+i`=mvm}QN zYtcK&t$*Z-s_r`9pSpMIQGjf_&xr#{1t( zyB@i^eL%g$O!5&jAIE^LG(4k@qu1%`uzOcF(Y6<9uvv$e5fvCzyDeRrWRYy|O?F^s z(++A(nWv&1Jw$(l*VVD(^mlx?8u81{zlg<-dh%|yGT<<(RYH@$dS;eIgQu~SNBvXf zU9Arx)mSBS+*N*Ct1Je1rBkIebYJCGWay9TN3m&-=H>AFd8-$#7qRpNo+Lsd1&WHb z-fP4%3>h3kI*O0RtS-uF>E1EuBf~3g>MGg?z0jcpPiOPad?!U5@2IUY5s0h_Gs#nZ7n(Xk0WT#Oc$+~y+g-&QG!0% zS4!>^ThRJ%Yje|c(v&m3@tMa4&Ujz>9cZDpkq$+vzb}? z@&SvWDK%lnXT-WP3n`_pc?0;>v(9o^3+9@dzM9hq2canyZ-rK`-yND)Hzo_+GD1D~u#6ZuP7dpgkhUrG|pN@`-9feX-L7jF}hecXXW?mzw z!rFP&T=1c!#i>;iQXSlu=YwuZ~r7lAby z_I4rZb)h01bKI7-)RGc;>Zwg@iNVE+Bafdw+;@55_6`ktp6KHIBDL7Q^`*kHdqY9| zF)rUDfQ#k^4kp9UpQ1wsLX zh(opA{j7M*y1KTGPPTp*z+ltZ9cZjk+g2DbgQ^UvR-M|nJ0u$vCR+x<~xY(b34J)m__f3I!Y+%0Uc$mg{@ zqR|mvw1t*jug(5aecWmXE*=iL7@2TVdjCfe8@b+-k8~77_yWc*U^mUrbkM_qhHGpSx6GR1MFv7dof1BNH-lXI=_-~8(SMr1sgS5kkKfa7|;Y_XqL z!Pqs$;MqH`&oN5AqzLfxsX)(gRI~$!vNWv()^IbqrnN9&Dw0@Jr1GNV8$lXgr)_B( z#kO%L=kh7K_|K}sZX?-2Ty3d5NK$Mp+{~J1=5rV_lAM7>NtvFPt9SIgILHm} zcIZop{hVxgOUJue$WHl8RioW#pNhh2aT~NOKVWg6Bc?7`LsXL`wEgbu+b_3*jGL@x zZ(66yPH|#{1yg||rsm>UFAG)1Q^1Yb_xdvc;C*fwitM$a3-A&Syiuwvw!QX)hB8dd z_&*f){SBn#zXEwKh|#w@-ZL|Q`SE|zf1qxMGJpms8DLi(zVsJQpBvFl-lZacRcJzR z0hEv;&NE-2@gk__)Dk>cpedgKv?fwFX=V`^0(!nuOV&3~Ox8T6mz#2YmMl$;Fg??t zmf}?x1WbCryCn7uc^`sKjmI^{3_kq9wK2 zq04hs^xMM!w8uuEk#LLwg7@qV-ny@P13MoYF9MYTp*tcc=Hv=&Na+CPFARW#Jgskc z{e9cz%4h~0{jt*KW)Z^eC&&E=0FsbmLOKdad>&Kr_h-VQQC^LMiopP$+}VjRjyefK zQjQ-Bz^B}SOv1_%+3JPO=uJ?Xh;EE2Z7pC#lWgzelPmu|ZQ2npz^zeB$4icj)t&{pZ)S0DO3{Lr{uQw0_i75f6}LUD(Bp@-WcfUK&t{IQz8r#pVH3DsyMw+ zs~5VyaPfqj|59kKLD4x$F|&N22GtmmO?R6{Pqgsidgnp&f}i7;erS-5*YaI0Rv((m zKdO{y3SD0~X~+Gw>7w5py!Mpn%C=E-=QtuVM7GL8qyhriZ|_|5;{rZ6YzD@nU zlz0cliEu8soRK^qGM+H<;o=P*2%5w-|VA8*cx{nZaE| z<#mF-*RK8ccv~t6$kM*Uszh@L7L}*=PeRwGv2Z*H5#YrHbbiO`*_E%iP{ZQm{#}_^ zVxTG=^@1!`_~}OqJ58C;b*!@QmB)imxWO)zP*3)q#8l z{Eoq80)4qPP4QA_Cv4z$OY3{2n37@N@QWT`dzq+w7J)!rMK)JV?NjaAi+TbO5~;up z;E=82@FpzB4?%kqj9)DNo35faiwZ4FX)2|*R$9j}u?A*7a@J}tk6aQ*o*|r*ov9&R zlq2~}bmA1=@DUk0!F$9hp-cO9%m~!6*`>t7o5QJA*w$Ldv(q&X6BX#~$Y&5(@xXe+ zK#FmLkaSfwTa6m!xlrDe1J~lkb@xm(nEn`2d3bC59+S@@tgE2rM%N9E4u5RK3O8F5 z1G}k9CN5WolmX#kYNrTw=6LryT(|xr&WhN9j+SG^G?xv>K+xB1n0^7&IBD*Xl?HV< zRu%JUJy0m=2y=+TstVqx!@&>J+cgy~3F>bYO7w>dSi zX&dMzBE&nhU|x*9Vu1(akTyeNZF~YTd9(KUiBE!swRZ=n0!J-WylZpQu~Kf4eRU7+ zA+b*Va~c!k+9C^Q0`BYtDyu9mZ+L(Q;y$dbXfkzYoh6D1S1Fet_^k$h$J$v&RsG2V)H{5Zr?A#L)HY7pPX zOzir%(^+rV(&*`;{Fl~he6#g0Mn6_%dMw4el&Xgf1lj?;HCn{Dg-M{Gxri7HQxp1q zu5AIQ=W=^l3HJ%NpyuOo*1Ruc6leJ%3Ur7vqct$IxK-)oLU@h=Ps3=L2kn^jmJsV3 zZfVkV3)O!Ot1cep@tSa^f^oB1HSFB;sdgqww1|grnoYEGUMo{ShRt>w%6}VoI8`r6 z3qtD#)AQLueEG}JPsH_X0fG=pYmuJJqDhx*XnXCxbh)X2O8*lD(g6j3=V|b{QKN*X zP+?yDB+KI4|1kodyIKx04&+7+-@0G2?PS4^&)*)|oe4^Q$!%AR7U@CR3S34cumLOJ zu4iX7#`afd@D^QIXu1j}?FN`2M*Ph%`qlnqhn)9&`fNYR-7W<#LMZH5vOue+@b|H& zG?J)|+!yt^*av-?=^8=#sq!#*f-w3CN#Azo`gt{H1d;aqU^!DB> zA%3cZthpFGH)Og+7bejjck}yx}q$11b0=O6IDfMCN7V2mcRgd1vMT diff --git "a/zh-cn/device-dev/subsystems/hdc_std-\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/hdc_std-\344\275\277\347\224\250\346\214\207\345\257\274.md" index d4993fb7b51..9b14f7c438a 100644 --- "a/zh-cn/device-dev/subsystems/hdc_std-\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ "b/zh-cn/device-dev/subsystems/hdc_std-\344\275\277\347\224\250\346\214\207\345\257\274.md" @@ -2,13 +2,40 @@ - [环境准备](#section05992022154916) - [注意事项](#section19543134915210) -- [全局option](#section618522925119) -- [查询设备列表](#section174891132104218) +- [全局option相关的命令](#section618522925119) + - [-h/help -v/version](#section51533527212) + - [-t key](#section1180555115159) + +- [查询设备列表的命令](#section174891132104218) + - [list targets\[-v\]](#section12911142313168) + - [服务进程相关命令](#section680531510497) + - [target mount](#section396717571168) + - [smode \[off\]](#section179951621713) + - [kill \[-r\]](#section419144621712) + - [start \[-r\]](#section184811812183) + - [网络相关的命令](#section71176123212) + - [tconn host\[:port\]\[-remove\]](#section191911334206) + - [tmode usb](#section17840182562015) + - [tmode port port-number](#section101113462113) + - [文件相关的命令](#section173133523013) + - [file send local remote](#section126223231307) + - [file recv \[-a\] remote local](#section26966541304) + - [应用相关的命令](#section2072647133819) + - [install \[-r/-d/-g\] package](#section49615195111) + - [uninstall \[-k\] package](#section167618461814) + - [调试相关的命令](#section112861250195015) + - [hilog](#section32171612221) + - [shell \[command\]](#section524235625) + +- [常见问题](#section592920255582) + - [hdc\_std连接不到设备](#section74019384588) + +- [hdc\_std运行不了](#section6825095917) hdc\_std(OpenHarmony Device Connector)是OpenHarmony为开发人员提供的用于调试的命令行工具,通过该工具可以在Windows/Linux等系统上与开发机或者模拟器进行交互。 @@ -28,15 +55,14 @@ hdc\_std(OpenHarmony Device Connector)是OpenHarmony为开发人员提供的 ## 注意事项 -1、使用hdc\_std,如果出现异常,可以尝试通过hdc\_std kill命令杀掉hdc\_std服务,或者通过hdc\_std start -r命令重启服务进程进行解决。 - -2、如果出现hdc\_std list targets获取不到设备信息,通过任务管理器查看是否有hdc.exe进程存在,如果进程存在,可以通过杀掉该进程进行解决。 +- 使用hdc\_std,如果出现异常,可以尝试通过hdc\_std kill命令杀掉hdc\_std服务,或者通过hdc\_std start -r命令重启服务进程进行解决。 +- 如果出现hdc\_std list targets获取不到设备信息,通过任务管理器查看是否有hdc.exe进程存在,如果进程存在,可以通过杀掉该进程进行解决。 -## 全局option +## 全局option相关的命令 全局option涉及以下命令: -- **-h/help -v/version** +### -h/help -v/version 用于显示hdc相关的帮助、版本信息。 @@ -72,7 +98,7 @@ hdc\_std -h / hdc\_std help hdc\_std -v / hdc\_std version -- **-t key** +### -t key 用于连接指定设备标识为key的设备。 @@ -115,11 +141,11 @@ hdc\_std -t _key_ shell (-t后面添加的_key_ 需要替换为上面 >![](public_sys-resources/icon-note.gif) **说明:** >一台开发机可支持多个设备连接,每个设备有其唯一的设备标识,如果通过网络与设备连接,其标识为tcp:port格式,如果通过usb连接则标识为设备sn号。该命令需要跟随具体操作命令。 -## 查询设备列表 +## 查询设备列表的命令 查询设备列表涉及以下命令: -**list targets\[-v\]** +### list targets\[-v\] 显示所有已经连接的目标设备列表 @@ -161,7 +187,7 @@ hdc\_std list targets -v 服务进程涉及以下命令: -- **target mount** +### target mount 以读写模式挂载/system等分区。 @@ -197,7 +223,7 @@ hdc\_std list targets -v hdc\_std target mount -- **smode \[off\]** +### smode \[off\] 授予后台服务进程root权限, 使用off参数取消授权。 @@ -207,7 +233,7 @@ hdc\_std smode hdc\_std smode off -- **kill \[-r\]** +### kill \[-r\] 终止服务进程。 @@ -243,7 +269,7 @@ hdc\_std smode off hdc\_std kill -- **start \[-r\]** +### start \[-r\] 启动服务进程。 @@ -281,7 +307,7 @@ hdc\_std start 网络部分涉及以下命令: -- **tconn _host_\[:_port_\]\[-remove\]** +### tconn _host_\[:_port_\]\[-remove\] 通过【ip地址:端口号】来指定连接的设备 @@ -322,7 +348,7 @@ hdc\_std start hdc\_std tconn 192.168.0.100:8710 -- **tmode usb** +### tmode usb 执行后设备端对应daemon进程重启,并首先选用usb连接方式。 @@ -358,7 +384,7 @@ hdc\_std tconn 192.168.0.100:8710 hdc\_std tmode usb -- **tmode port _port-number_** +### tmode port _port-number_ 执行后设备端对应daemon进程重启,并优先使用网络方式连接设备,如果连接设备再选择usb连接。 @@ -401,7 +427,7 @@ hdc\_std tmode port 8710 文件部分涉及以下命令: -- **file send _local remote_** +### file send _local remote_ 发送文件至远端设备。 @@ -442,7 +468,7 @@ hdc\_std tmode port 8710 hdc\_std file send E:\\a.txt /data/local/tmp/a.txt -- **file recv \[-a\] _remote local_** +### file recv \[-a\] _remote local_ 从远端设备接收文件至本地。 @@ -492,7 +518,7 @@ hdc\_std file recv /data/local/tmp/a.txt ./a.txt 应用部分涉及以下命令: -- **install \[-r/-d/-g\] _package_** +### install \[-r/-d/-g\] _package_ 安装OpenHarmony package。 @@ -543,7 +569,7 @@ hdc\_std file recv /data/local/tmp/a.txt ./a.txt hdc\_std install _hwadmin.hap_ -- **uninstall \[-k\] _package_** +### uninstall \[-k\] _package_ 卸载OpenHarmony应用。 @@ -588,7 +614,7 @@ hdc\_std uninstall _package_ 调试涉及以下命令: -- **hilog** +### hilog 支持抓取log信息。 @@ -622,7 +648,7 @@ hdc\_std uninstall _package_ hdc\_std hilog -- **shell \[_command_\]** +### shell \[_command_\] 远程执行命令或进入交互命令环境。 @@ -656,3 +682,37 @@ hdc\_std hilog hdc\_std shell +## 常见问题 + +### hdc\_std连接不到设备 + +- **现象描述** + + 执行 "hdc\_std list targets"命令后结果为:\[Empty\] + +- **解决方法** + 1. 设备没有被识别: + + 在设备管理器中查看是否有hdc设备,在通用串行总线设备中会有“HDC Device”信息。如果没有,hdc无法连接。此时需要插拔设备,或者烧写最新的镜像。 + + 2. hdc\_std工作异常: + + 可以执行"hdc kill"或者"hdc start -r"杀掉hdc服务或者重启hdc服务,然后再执行hdc list targets查看是否已经可以获取设备信息。 + + 3. hdc\_std与设备不匹配: + + 如果设备烧写的是最新镜像,hdc\_std也需要使用最新版本。由于hdc\_std会持续更新,请从开源仓developtools\_hdc\_standard中获取,具体位置在该开源仓的prebuilt目录。 + + + +## hdc\_std运行不了 + +- **现象描述** + + 点击hdc\_std.exe文件无法运行。 + +- **解决方法** + + hdc\_std.exe不需要安装,直接放到磁盘上就能使用,也可以添加到环境变量中。通过打开cmd执行hdc\_std命令直接使用。 + + diff --git "a/zh-cn/device-dev/subsystems/hdc_std\345\270\270\350\247\201\351\227\256\351\242\230.md" "b/zh-cn/device-dev/subsystems/hdc_std\345\270\270\350\247\201\351\227\256\351\242\230.md" deleted file mode 100644 index 3f83fba3e99..00000000000 --- "a/zh-cn/device-dev/subsystems/hdc_std\345\270\270\350\247\201\351\227\256\351\242\230.md" +++ /dev/null @@ -1,39 +0,0 @@ -# hdc\_std常见问题 - -- [hdc\_std连接不到设备](#section1221016541119) -- [hdc\_std运行不了](#section219185710311) - -## hdc\_std连接不到设备 - -- **现象描述** - - 执行 "hdc\_std list targets"命令后结果为:\[Empty\] - -- **可能原因和解决方法** - 1. 设备没有被识别: - - 在设备管理器中查看是否有hdc设备,在通用串行总线设备中会有“HDC Device”信息。如果没有,hdc无法连接。此时需要插拔设备,或者烧写最新的镜像。 - - 2. hdc\_std工作异常: - - 可以执行"hdc kill"或者"hdc start -r"杀掉hdc服务或者重启hdc服务,然后再执行hdc list targets查看是否已经可以获取设备信息。 - - 如果一直获取不到设备信息,请在任务管理器中查询是否有adb进程,该进程可能会对hdc产生干扰,可以将其杀掉后重复执行上面的步骤。 - - 3. hdc\_std与设备不匹配: - - 如果设备烧写的是最新镜像,hdc\_std也需要使用最新版本。由于hdc\_std会持续更新,请从开源仓developtools\_hdc\_standard中获取,具体位置在该开源仓的prebuilt目录。 - - - -## hdc\_std运行不了 - -- **现象描述** - - 点击hdc\_std.exe文件无法运行。 - -- **可能原因和解决方法** - - hdc\_std.exe不需要安装,直接放到磁盘上就能使用,也可以添加到环境变量中。通过打开cmd执行hdc\_std命令直接使用。 - - diff --git "a/zh-cn/device-dev/subsystems/\345\217\257\344\277\241\350\256\276\345\244\207\347\276\244\347\273\204\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/\345\217\257\344\277\241\350\256\276\345\244\207\347\276\244\347\273\204\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" deleted file mode 100755 index bf9fb41b517..00000000000 --- "a/zh-cn/device-dev/subsystems/\345\217\257\344\277\241\350\256\276\345\244\207\347\276\244\347\273\204\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ /dev/null @@ -1,264 +0,0 @@ -# 可信设备群组管理开发指导 - -- [场景介绍](#section18502174174019) -- [接口说明](#section1633115419401) -- [开发步骤](#section17516229192313) -- [调测验证](#section427316292411) - -## 场景介绍 - -当分布式业务需要利用软总线提供的设备间安全会话通信时,可以使用可信设备群组管理服务在设备间创建可信群组。在OpenHarmony下提供异账号下基于PIN、二维码、碰一碰等设备认证能力和同华为账号群组下的设备认证能力,分布式应用可基于该能力建立和使用设备间的安全可信关系。对于未登录华为账号的设备,可以通过PIN码输入、二维码扫描后获取的设备连接信息和PIN码信息,再通过可信设备群组管理提供的群组创建,群组成员添加,主动建立设备间可信关系;在有其它业务应用已经创建并分享了设备可信群组的情况下或者登录了相同的华为账号后,也可以通过可信设备群组管理提供的查询能力,复用这些可信群组。 - -## 接口说明 - -可信群组管理组件当前提供innerkits接口,仅供系统应用调用,相关接口及功能描述如下: - -**表 1** 群组管理器提供的JAVA API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    接口名

    -

    描述

    -

    public static DeviceGroupManager getInstance(Abilityability, StringappID, IHichainGroupCallbackcallbackHandler)

    -

    获取群组管理的实例,并注册一个请求的listen回调。

    -

    int createGroup(String appId, String groupName, int groupType, String groupInfo)

    -

    创建一个可信群组。

    -

    public int deleteGroup(String gourpId)

    -

    删除一个可信群组。

    -

    public String getLocalConnectInfo()

    -

    获取本地设备的网络连接信息。

    -

    int addMemberToGroup(String appId, long requestId, String addParams, String connectParams, int groupType)

    -

    添加成员到指定群组ID的可信群组。

    -

    int deleteMemberFromGroup(String appId, long requestId, String deleteParams, String connectParams)

    -

    从指定群组里删除可信成员。

    -

    int cancelRequest(long requestId)

    -

    取消正在进行的请求,如添加成员,删除成员。

    -

    List<String> listJoinedGroups(int groupType)

    -

    查询指定群组类型下本设备加入的群组信息列表。

    -

    List<String> listTrustedDevices(String groupId)

    -

    查询指定群组里可信设备的信息列表。

    -

    boolean isDeviceInGroup(String groupId, String deviceId)

    -

    查询指定设备ID的设备是否加入了指定ID的群组。

    -

    List<String> getGroupInfo(String queryParams)

    -

    根据输入参数,查询符合条件的群组的信息列表。

    -

    int setFriendsList(String groupId, List<String> friendsList)

    -

    向指定ID的群组,添加群组访问的友元名单

    -

    List<String> getFriendsList(String groupId)

    -

    获取指定群组里的友元名单

    -

    int registerGroupNotice(String groupId, IHichainGroupChangeListener groupChangeListener)

    -

    注册指定群组发生变化的回调listen

    -

    int revokeGroupNotice(String groupId)

    -

    取消对指定群组变化的listen

    -
    - -**表 2** 群组管理器提供的C++ API,供内部系统应用通过SA查询群组信息; - - - - - - - - - - - - - - - - - - - - - - -

    接口名

    -

    描述

    -

    DeviceAuthProxy()

    -

    获取一个可信群组管理代理的实例。

    -

    ~DeviceAuthProxy()

    -

    可信群组管理代理的实例的析构函数。

    -

    static int CheckAccessToGroup(const std::string &groupId, const std::string &pkgName);

    -

    判断指定包名的应用,是否对指定群组具有访问权限。

    -

    static int CheckAccessToDevice(const std::string &connDeviceId, const std::string &pkgName);

    -

    判断指定包名的应用,对指定的设备所加入的群组,是否具有访问权限。

    -

    static std::vector<std::string> GetRelatedGroupInfo(const std::string &connDeviceId);

    -

    获取指定ID的设备与本地设备存在可信管理的所有群组的基本信息。

    -
    - -## 开发步骤 - -群组管理的开发步骤比较简单,大体的流程就是先获取一个实例,获取实例的同时就注册了群组操作结果的通知回调,获取到实例后就可以对群组进行成员的添加、删除和群组的友元设置以及群组的相关的查询操作。 - -**场景一** 创建群组,下面首先以创建群组为例,说明群组管理类的创建以及接口使用方法: - -``` -private HwDeviceGroupManager hwDeviceGroupManager; -... -private HichainGroupCallback groupCallbackByA = new HichainGroupCallback() { - @Override public void onFinish(long requestId, GroupOperation operationCode, String returnData) { - - } - @Override public void onError(long requestId, GroupOperation operationCode, int errorCode, String errorReturn) { - - } - @Override public String onRequest(long requestId, GroupOperation operationCode, String reqParams) { - JSONObject onRequestJson = generateConfirmation(REQUEST_ACCEPTED); - return onRequestJson.toString(); - } -}; -... -Optional context = convertAbilityToContext(mAbility); -Context ctxt = context.get(); -hwDeviceGroupManager = HwDeviceGroupManager.getInstance(ctxt, APP_ID, groupCallbackByA); -int ret = hwDeviceGroupManager.createGroup(APP_ID, GROUP_NAME, GROUP_TYPE, GROUP_INFO); -``` - -1. 在类成员里申明群组管理实例的私有成员变量 - - ``` - private HwDeviceGroupManager hwDeviceGroupManager; - ``` - -2. 创建一个群组管理操作回调; - - ``` - private HichainGroupCallback groupCallbackByA = new HichainGroupCallback(); - ``` - -3. 在构造函数里创建一个群组管理的实例, 在分布式场景中,位于不同设备的同业务应用,应该设置相同的APP\_ID; - - ``` - hwDeviceGroupManager = HwDeviceGroupManager.getInstance(ctxt, APP_ID, groupCallbackByA); - ``` - -4. 调用createGroup创建一个群组,当函数返回为0,在表明创建群组的请求已正确提交; - - ``` - int ret = hwDeviceGroupManager.createGroup(APP_ID, GROUP_NAME, GROUP_TYPE, GROUP_INFO); - ``` - -5. 群组创建成功,会收到一个onFinish的回调,回调函数中operationCode参数为OperationCode.CREATE, 表明是创建群组操作,returnData为Json格式数据,会包含一个“groupId”的字段,返回创建的群组的Id值。 - -**场景二** 添加成员,在创建群组后,我们希望把目标设备经过设备认证加入到群组中,后续就可以通过软总线向目标设备发起可信的加密通信; - -``` -deviceGroupManager = DeviceGroupManager.getInstance(mAbility, APP_ID, hichainGroupCallback); -private static final String CONN_PARAM ="{\"DEVICE_ID\":\"11111111\",\"WIFI_IP\":\"192.168.43.149\",\"WIFI_PORT\":\"30000\",\"BLE_MAC\":\"\"}"; -private static final String ADD_PARAM ="{\"groupId\":\"344C1C8B149\",\"groupName\":\"myGroup\",\"addId\":\"11111111\",\"isAdmin\":\"false\"}"; -private static final int GROUP_TYPE = 256; -int result = deviceGroupManager.addMemberToGroup(APP_ID, reqId, ADD_PARAM, CONN_PARAM, GROUP_TYPE); -``` - -1. 获取群组管理的实例; - - ``` - deviceGroupManager = HwDeviceGroupManager.getInstance(mAbility, APP_ID, hichainGroupCallback); - ``` - -2. 设置添加成员的网络连接参数,为JSON格式,为软总线支持的网络参数字段,包括WIFI\_IP,WIFI\_PORT,BLR\_MAC,DEVICE\_ID等,具体连接参数要求参见软总线; - - ``` - String CONN_PARAM ="{\"DEVICE_ID\":\"11111111\",\"WIFI_IP\":\"192.168.43.149\",\"WIFI_PORT\":\"30000\",\"BLE_MAC\":\"\"}"; - ``` - -3. 设置添加成员的成员信息参数,为JSON格式,包括欲添加的群组ID,群组名,是否是管理员,若是主动邀请对方加入,则isAdmin字段为true,若是主动加入对方群组,则isAdmin为false - - ``` - String ADD_PARAM ="{\"groupId\":\"344C1C8B149\",\"groupName\":\"myGroup\",\"addId\":\"11111111\",\"isAdmin\":\"false\"}"; - ``` - -4. 设置欲添加的群组的群组类型为256,即点对点群组; - - ``` - private static final int GROUP_TYPE = 256; - ``` - -5. 在HichainGroupCallback 的onRequest函数,参见场景一列出的generateConfirmation传入指定的参数,其中PIN\_CODE为为PIN码,由上层业务提供界面给用户输入,确保分布式场景两端设置的PIN码一致,后续步骤才能成功; - - ``` - private JSONObject generateConfirmation(int confirmation) { - JSONObject jsonObject = new JSONObject(); - try { jsonObject.put("pinCode", PIN_CODE); - jsonObject.put("confirmation", confirmation); - } catch (JSONException e) { - LogUtil.error(TAG, "" + e.getMessage()); - } - return jsonObject; - } - ``` - -6. 调用群组管理的添加成员接口 - - ``` - result = deviceGroupManager.addMemberToGroup(APP_ID, reqId, ADD_PARAM, CONN_PARAM, GROUP_TYPE); - ``` - -7. 若添加成功,将会收到HichainGroupCallback.onFinish的回调,其中operationCode参数为OperationCode.JOIN -8. 添加成员成功后,业务可以调用软总线请求创建设备间安全会话。 - -## 调测验证 - -1 在OpenHarmony上开发应用App。 - -2 根据开发指导开发,开发应用App。 - -3 执行创建群组操作,如果收到onFinish回调,代表创建群组成功。 - -4 在分布式组网的节点部署相同的App,假设当前部署的有节点A和节点B; - -5 通过上层将节点B的连接参数,通过扫码的方式,传递到节点A, - -6 节点A上App创建一个群组group1,节点A上App调用添加成员接口,将B加入到group1中,若收到HichainGroupCallback.onFinish,表明加入群组成功; - diff --git "a/zh-cn/device-dev/subsystems/\345\256\211\345\205\250.md" "b/zh-cn/device-dev/subsystems/\345\256\211\345\205\250.md" deleted file mode 100755 index 88ce479aa01..00000000000 --- "a/zh-cn/device-dev/subsystems/\345\256\211\345\205\250.md" +++ /dev/null @@ -1,13 +0,0 @@ -# 安全 - -- **[概述](概述-7.md)** - -- **[应用验签开发指导](应用验签开发指导.md)** - -- **[应用权限管理开发指导](应用权限管理开发指导.md)** - -- **[IPC通信鉴权开发指导](IPC通信鉴权开发指导.md)** - -- **[可信设备群组管理开发指导](可信设备群组管理开发指导.md)** - - diff --git "a/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\346\235\203\351\231\220\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\346\235\203\351\231\220\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" deleted file mode 100755 index 127a7f17566..00000000000 --- "a/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\346\235\203\351\231\220\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ /dev/null @@ -1,228 +0,0 @@ -# 应用权限管理开发指导 - -- [运作机制](#section193961322175011) -- [场景介绍](#section18502174174019) -- [接口说明](#section1633115419401) -- [开发步骤](#section022611498210) - -## 运作机制 - -由于OpenHarmony允许安装三方应用,所以需要对三方应用的敏感权限调用进行管控,具体实现是应用在开发阶段就需要在profile.json中指明此应用在运行过程中可能会调用哪些敏感权限,这些权限包括静态权限和动态权限,静态权限表示只需要在安装阶段注册就可以,而动态权限一般表示获取用户的敏感信息,所以需要在运行时让用户确认才可以调用,授权方式包括系统设置应用手动授权等。除了运行时对应用调用敏感权限进行管控外,还需要利用应用签名管控手段确保应用安装包已经被设备厂商进行了确认。 - -**表 1** OpenHarmony权限列表 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    OpenHarmony权限

    -

    授权方式

    -

    权限说明

    -

    ohos.permission.LISTEN_BUNDLE_CHANGE

    -

    system_grant(静态权限)

    -

    允许该应用获取应用变化消息。

    -

    ohos.permission.GET_BUNDLE_INFO

    -

    system_grant(静态权限)

    -

    允许该应用获取应用信息。

    -

    ohos.permission.INSTALL_BUNDLE

    -

    system_grant(静态权限)

    -

    允许该应用安装应用。

    -

    ohos.permission.CAMERA

    -

    user_grant(动态权限)

    -

    此应用可随时使用相机拍摄照片和录制视频。

    -

    ohos.permission.MODIFY_AUDIO_SETTINGS

    -

    system_grant(静态权限)

    -

    允许该应用修改全局音频设置,例如音量和用于输出的扬声器。

    -

    ohos.permission.READ_MEDIA

    -

    user_grant(动态权限)

    -

    允许该应用读取您的视频收藏。

    -

    ohos.permission.MICROPHONE

    -

    user_grant(动态权限)

    -

    此应用可随时使用麦克风进行录音。

    -

    ohos.permission.WRITE_MEDIA

    -

    user_grant(动态权限)

    -

    允许该应用写入您的音乐收藏。

    -

    ohos.permission.DISTRIBUTED_DATASYNC

    -

    user_grant(动态权限)

    -

    管控分布式数据传输能力。

    -

    ohos.permission.DISTRIBUTED_VIRTUALDEVICE

    -

    user_grant(动态权限)

    -

    允许应用使用分布式虚拟能力

    -
    - ->![](public_sys-resources/icon-note.gif) **说明:** ->静态权限:应用安装时由系统授予的权限,对应于权限敏感级别的system\_grant ->动态权限:应用在运行过程中需要用户授权的权限,对应于权限敏感级别的user\_grant - -## 场景介绍 - -应用权限是软件用来访问系统资源和使用系统能力的一种通行方式。在涉及用户隐私相关功能和数据的场景,例如:访问个人设备的硬件特性,如摄像头、麦克风,以及读写媒体文件等,OpenHarmony通过应用权限管理组件来保护这些数据以及能力。 - -在系统应用开发过程中,如果应用要使用敏感权限,开发者可以调用应用权限管理组件接口检查待访问权限是否被授权,如果未授权,操作不允许。 - -## 接口说明 - -应用权限管理提供的API接口,当前仅供系统应用和系统服务调用,具体API接口如下。 - -**表 2** 应用权限管理API接口功能介绍 - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    接口名

    -

    描述

    -

    int CheckPermission(int uid, const char *permissionName)

    -

    检查指定UID的应用进程是否具有访问系统服务API的权限

    -

    int CheckSelfPermission(const char *permissionName)

    -

    检查调用者是否具有访问系统服务API的权限

    -

    int QueryPermission(const char *identifier, PermissionSaved **permissions, int *permNum)

    -

    查询应用申请的所有权限,并检查权限是否被授予

    -

    int GrantPermission(const char *identifier, const char *permName)

    -

    将指定权限授予应用程序

    -

    int RevokePermission(const char *identifier, const char *permName)

    -

    收回应用程序的指定权限

    -

    int GrantRuntimePermission(int uid, const char *permissionName)

    -

    应用运行时动态授予指定权限

    -

    int RevokeRuntimePermission(int uid, const char *permissionName)

    -

    应用运行时动态撤销指定权限

    -
    - -## 开发步骤 - -本部分以包管理器的应用权限开发为例进行讲解。开发过程中,首先需要明确涉及的敏感权限,并在config.json中声明该权限,在安装应用程序时,包管理器会调用应用权限管理组件的接口检查该权限是否被授予,若授予,安装流程正常进行,否则安装失败。 - -1. 在开发过程中,包管理器明确需要安装应用的权限(ohos.permission.INSTALL\_BUNDLE),并在config.json中声明该权限; - - ``` - { - ... - "module": { - "package": "com.huawei.kitframework", - "deviceType": [ - "phone", "tv","tablet", "pc","car","smartWatch","sportsWatch","smartCamera", "smartVision" - ], - "reqPermissions": [{ - // 声明需要的权限:安装应用程序的权限名 - "name": "ohos.permission.INSTALL_BUNDLE", - "reason": "install bundle", - "usedScene": { - "ability": [ - "KitFramework" - ], - "when": "always" - } - }, - { - "name": "ohos.permission.LISTEN_BUNDLE_CHANGE", - "reason": "install bundle", - "usedScene": { - "ability": [ - "KitFramework" - ], - "when": "always" - } - }, - { - "name": "ohos.permission.GET_BUNDLE_INFO", - "reason": "install bundle", - "usedScene": { - "ability": [ - "KitFramework" - ], - "when": "always" - } - } - ], - ... - } - ``` - -2. 当包管理器开发应用安装功能接口时,会调用权限管理相关接口检查自身是否具有安装应用程序的权限,例如:以安装应用的权限名"ohos.permission.INSTALL\_BUNDLE"作为入参,调用CheckPermission接口检查包管理器是否具有安装应用的权限,如果有权限,安装流程继续执行,否则返回安装失败; - - ``` - constexpr static char PERMISSION_INSTALL_BUNDLE[] = "ohos.permission.INSTALL_BUNDLE"; - - bool Install(const char *hapPath, const InstallParam *installParam, InstallerCallback installerCallback) - { - if ((hapPath == nullptr) || (installerCallback == nullptr) || (installParam == nullptr)) { - HILOG_ERROR(HILOG_MODULE_APP, "BundleManager install failed due to nullptr parameters"); - return false; - } - // 检查ohos.permission.INSTALL_BUNDLE权限是否被授予 - if (CheckPermission(0, static_cast(PERMISSION_INSTALL_BUNDLE)) != GRANTED) { - HILOG_ERROR(HILOG_MODULE_APP, "BundleManager install failed due to permission denied"); - return false; // 返回安装失败 - } - // 安装流程 - ... - } - ``` - - diff --git "a/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\351\252\214\347\255\276\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\351\252\214\347\255\276\345\274\200\345\217\221\346\214\207\345\257\274.md" deleted file mode 100755 index 8c5e78070f8..00000000000 --- "a/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\351\252\214\347\255\276\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ /dev/null @@ -1,272 +0,0 @@ -# 应用验签开发指导 - -- [场景介绍](#section18502174174019) -- [验签流程](#section554632717226) -- [接口说明](#section1633115419401) -- [开发步骤(场景一)](#section4207112818418) - - [验签指导](#section11470123816297) - - [生成OpenHarmony自签名应用](#section167151429133312) - - [开发示例](#section174318361353) - -- [开发步骤(场景二)](#section81272563427) - - [验签指导](#section07028210442) - - [开发示例](#section1930711345445) - -- [调测验证](#section427316292411) - -## 场景介绍 - -当需要验证调试应用、发布应用,OpenHarmony自签名应用的完整性是否被破坏时,可以调用验签组件的接口进行验证。如有需要还可通过验签接口获取部分描述文件信息,如appid。对于调试应用,还可通过验签接口验证应用和设备的UDID是否匹配,确保应用安装在了正确的设备上。 - -## 验签流程 - -未经签名的Hap包的压缩方式是ZIP格式,简单分为文件块,中心目录(Central directory)块,中心目录结尾(EOCD,End of central directory record)块。 - -经过签名的Hap包,在文件块,和中心目录块之间,插入了签名块。签名块由文件签名数据块(data sign block)、描述文件签名数据块(profile sign block)和签名头(sign head)组成,如下图所示。 - -**图 1** 经过签名的Hap包结构 - - -![](figures/安全子系统.png) - -整个验签流程,主要分为三部分:整包验签、描述文件签名块验签,以及描述文件内容校验。 - -**整包验签** - -用设备的预置根证书,通过证书链来证明叶子证书本身是可信的,然后用叶子证书的公钥解密出的摘要证明整包是未篡改的。 - -具体操作步骤如下: - -1. 对文件签名数据块中的证书链进行校验,确定其叶子证书是可信的。 -2. 用叶子证书中的公钥对文件签名块进行验签,证明其未被篡改。 -3. 计算并合并文件块,中心目录块和中心目录结尾块的摘要。然后将计算结果,再与签名块中的描述文件签名块的摘要合并,将最终合并的摘要与文件签名块中包含的摘要对比,如果两者相等,则整包验签通过。 - -**描述文件签名块验签** - -首先判断文件签名的签发单位,如果是应用市场签发的发布应用,则无需对描述文件进行验签,直接信任,否则要对其验签。先取出整个描述文件签名块,然后验证证书链,最后用叶子证书对描述文件数据块验签,证明其未被篡改。 - -**描述文件内容校验** - -取出描述文件,并对其内容进行合法性检查。其中若hap包为调试应用,则会比对本机UDID与描述文件中包含的UDID列表,如果本机UDID在描述文件的UDID列表中包含,则验证通过。比较描述文件中包含的证书(如果是应用市场发布应用或OpenHarmony自签名则无需比较),和整包校验时使用的叶子证书,如果相同,认为整个验签流程完成。 - -## 接口说明 - -验签组件当前提供innerkits接口,仅供系统应用调用,相关接口及功能描述如下: - -**表 1** 验签组件API接口功能介绍 - - - - - - - - - - - - - - - - -

    接口名

    -

    描述

    -

    int APPVERI_AppVerify(const char *filePath, VerifyResult *verifyRst)

    -

    主入口函数,输入文件路径,进行验签,并将从描述文件中获取的数据通过verifyRst返回给调用者

    -

    int APPVERI_SetDebugMode(bool mode)

    -

    设置测试模式,设置mode为true,则支持基于测试根密钥的证书链校验,设置mode为false,则关闭基于测试根密钥的证书链校验。

    -

    注:当前没有基于现有测试根密钥的证书,开发者可根据自身需要,替换测试根密钥并进行相关验证。

    -

    void APPVERI_FreeVerifyRst(VerifyResult *verifyRst)

    -

    释放verifyRst中申请的内存

    -
    - -## 开发步骤(场景一) - -### 验签指导 - -对应用市场发布应用、基于应用市场调试证书签发的调试应用、OpenHarmony自签名应用的校验。 - -1. 定义出参结构体变量VerifyResult; - - ``` - VerifyResult verifyResult = {0}; - ``` - -2. 以文件路径及VerifyResult为入参,调用APPVERI\_AppVerify进行文件校验; - - ``` - int32_t ret = APPVERI_AppVerify(hapFilepath.c_str(), &verifyResult); - ``` - -3. 判断返回结果,如果校验通过的话,获取VerifyResult中的数据,进行业务处理; - - ``` - signatureInfo.appId = verifyResult.profile.appid; - signatureInfo.provisionBundleName = verifyResult.profile.bundleInfo.bundleName; - ``` - -4. 调用APPVERI\_FreeVerifyRst,释放VerifyResult中申请的内存。 - - ``` - APPVERI_FreeVerifyRst(&verifyResult); - ``` - - -### 生成OpenHarmony自签名应用 - -如果是OpenHarmony自签名应用的校验,开发者可通过以下方式生成OpenHarmony自签名应用。 - -1. 材料备齐。 - - 生成自签名应用需要的材料有:签名工具、系统应用hap包、系统应用profile文件\(\*.p7b\)、签名证书\(\*.cer\)、签名公私钥对\(\*.jks\)。 - -2. 将所有材料放在同一个目录下,打开shell。 -3. 根据应用、描述文件的实际名称修改指令,并在shell中输入,完成签名。 - - ``` - java -jar hapsigntoolv2.jar sign -mode localjks -privatekey "OpenHarmony Software Signature" -inputFile camera.hap -outputFile signed_camera.hap -signAlg SHA256withECDSA -keystore OpenHarmony.jks -keystorepasswd 123456 -keyaliaspasswd 123456 -profile camera_release.p7b -certpath OpenHarmony.cer -profileSigned 1 - ``` - - 关键字段说明: - - -jar:签名工具,[hapsigntool](https://repo.huaweicloud.com/harmonyos/develop_tools/hapsigntoolv2.jar) - - -mode:本地签名标记位,固定为localjks - - -privatekey:密钥对别名,签名公私钥对的别名为OpenHarmony Software Signature - - -inputFile:待签名应用,通过编译产生 - - -outputFile:签名后应用,最终输出 - - -signAlg:签名算法,当前固定为SHA256withECDSA - - -keystore:公私钥对,使用签名公私钥对,位于开源库security\_services\_app\_verify仓中OpenHarmonyCer目录下,[OpenHarmony.jks](https://gitee.com/openharmony/security_appverify/blob/master/interfaces/innerkits/appverify_lite/OpenHarmonyCer/OpenHarmony.jks)。默认密码为123456 ,用户可采用工具\(例如keytool\)更改默认密码 - - -keystorepasswd:公私钥对密码,默认签名公私钥对密码为123456 - - -keyaliaspasswd:公私钥对别名密码,默认签名公私钥对别名密码为123456 - - -profile:描述文件,应用的描述文件位于对应源代码目录中 - - -certpath:使用签名证书,位于开源库security\_services\_app\_verify仓中OpenHarmonyCer目录下,[OpenHarmony.cer](https://gitee.com/openharmony/security_appverify/blob/master/interfaces/innerkits/appverify_lite/OpenHarmonyCer/OpenHarmony.cer) - - -profileSigned:签名块中是否包含描述文件\(profile\)。固定为1(包含) - - -### 开发示例 - -以应用管理框架组件在应用安装时进行验签的实际调用为例: - -``` -uint8_t HapSignVerify::VerifySignature(const std::string &hapFilepath, SignatureInfo &signatureInfo) -{ - bool mode = ManagerService::GetInstance().IsDebugMode(); - HILOG_INFO(HILOG_MODULE_APP, "current mode is %d!", mode); - // 定义结果结构体 - VerifyResult verifyResult = {0}; - // 输入待验签文件路径进行验签 - int32_t ret = APPVERI_AppVerify(hapFilepath.c_str(), &verifyResult); - uint8_t errorCode = SwitchErrorCode(ret); - if (errorCode != ERR_OK) { - return errorCode; - } - // 从结果结构体中获取appid - signatureInfo.appId = verifyResult.profile.appid; - // 从结果结构体中获取描述文件中书写的应用名 - signatureInfo.provisionBundleName = verifyResult.profile.bundleInfo.bundleName; - int32_t restricNum = verifyResult.profile.permission.restricNum; - for (int32_t i = 0; i < restricNum; i++) { - signatureInfo.restrictedPermissions.emplace_back((verifyResult.profile.permission.restricPermission)[i]); - } - // 释放结果结构体中申请的内存 - APPVERI_FreeVerifyRst(&verifyResult); - return ERR_OK; -} -``` - -## 开发步骤(场景二) - -### 验签指导 - -对采用基于测试根密钥证书签名的应用的校验。 - -1. 调用APPVERI\_SetDebugMode\(true\)开启测试模式; - - ``` - ManagerService::SetDebugMode(true); - ... - uint8_t ManagerService::SetDebugMode(bool enable) - { - int32_t ret = APPVERI_SetDebugMode(enable); - if (ret < 0) { - HILOG_ERROR(HILOG_MODULE_APP, "set signature debug mode failed"); - return ERR_APPEXECFWK_SET_DEBUG_MODE_ERROR; - } - isDebugMode_ = enable; - HILOG_INFO(HILOG_MODULE_APP, "current sign debug mode is %d", isDebugMode_); - return ERR_OK; - } - ``` - -2. 同场景一中步骤一至四,定义结构体,校验、释放结构体; -3. 调用APPVERI\_SetDebugMode\(false\)关闭测试模式。 - - ``` - ManagerService::SetDebugMode(false); - ``` - - -### 开发示例 - -完整开发示例如下(在场景一代码示例的基础上进行补充): - -``` -uint8_t ManagerService::SetDebugMode(bool enable) -{ - int32_t ret = APPVERI_SetDebugMode(enable); - if (ret < 0) { - HILOG_ERROR(HILOG_MODULE_APP, "set signature debug mode failed"); - return ERR_APPEXECFWK_SET_DEBUG_MODE_ERROR; - } - isDebugMode_ = enable; - HILOG_INFO(HILOG_MODULE_APP, "current sign debug mode is %d", isDebugMode_); - return ERR_OK; -} -uint8_t HapSignVerify::VerifySignature(const std::string &hapFilepath, SignatureInfo &signatureInfo) -{ - // 开启支持测试服务器签名应用验证 - ManagerService::SetDebugMode(true); - bool mode = ManagerService::GetInstance().IsDebugMode(); - HILOG_INFO(HILOG_MODULE_APP, "current mode is %d!", mode); - // 定义结果结构体 - VerifyResult verifyResult = {0}; - // 输入待验签文件路径进行验签 - int32_t ret = APPVERI_AppVerify(hapFilepath.c_str(), &verifyResult); - uint8_t errorCode = SwitchErrorCode(ret); - if (errorCode != ERR_OK) { - return errorCode; - } - // 从结果结构体中获取appid - signatureInfo.appId = verifyResult.profile.appid; - // 从结果结构体中获取描述文件中书写的应用名 - signatureInfo.provisionBundleName = verifyResult.profile.bundleInfo.bundleName; - int32_t restricNum = verifyResult.profile.permission.restricNum; - for (int32_t i = 0; i < restricNum; i++) { - signatureInfo.restrictedPermissions.emplace_back((verifyResult.profile.permission.restricPermission)[i]); - } - // 释放结果结构体中申请的内存 - APPVERI_FreeVerifyRst(&verifyResult); - // 关闭支持测试服务器签名应用验证 - ManagerService::SetDebugMode(false); - return ERR_OK; -} -``` - -## 调测验证 - -1. 选取一个在OpenHarmony上能够正常安装的应用A。 -2. 根据开发指导开发。 -3. 对应用A,采用自开发程序进行验签,验签通过,能获取到appid。即为开发成功。 - diff --git "a/zh-cn/device-dev/subsystems/\345\274\200\345\217\221\345\256\236\344\276\213-6.md" "b/zh-cn/device-dev/subsystems/\345\274\200\345\217\221\345\256\236\344\276\213-6.md" deleted file mode 100755 index 39c2377cd40..00000000000 --- "a/zh-cn/device-dev/subsystems/\345\274\200\345\217\221\345\256\236\344\276\213-6.md" +++ /dev/null @@ -1,112 +0,0 @@ -# 开发实例 - -- [去电开发实例](#section286643718507) -- [来电开发实例](#section3205350105014) - -## 去电开发实例 - -去电的调用流程示例如下图所示: - -**图 1** 去电调用流程图 - - -![](figures/去电.png) - -当应用触发去电动作时,RIL Adapter会接收到拨打电话的请求,OnRequest\(\)会根据拨打电话请求ID调用拨打电话的接口。在该接口里会把电话服务传过来的数据封装为对应的AT指令发送到Modem,Modem执行完拨号命令后通过OnRequestResponse\(\)接口把响应结果上报给RIL Adapter。 - -``` -#include -#include -#include -#include -#include "atchannel.h" -#include "at_tok.h" -#include "hdf_log.h" -#include "ril.h" - -static void OnRequest(int request, void *data, size_t datalen, RIL_Token token) -{ - HDF_LOGI("OnRequest request = %{public}d start \n", request); - switch (request) { - case HREQ_CALL_DIAL: - SendDialRequest(data, datalen, token); - break; - …… - default: - break; - } -} - -// 将去电ID和参数转换成对应的AT命令,通过send_at_request发送给Modem -static void SendDialRequest(void *data, size_t datalen __unused, RIL_Token token) -{ - char *atCmd; - const char *clir; - int ret; - DialInfo *pDial; - pDial = (DialInfo *) data; - - if (!strncmp(pDial->address, "*31#", 4)) { - HDF_LOGI("clir suppression"); - clir = "i"; - num = (char *)&(pDial->address[4]); - } else if (!strncmp(pDial->address, "#31#", 4)) { - HDF_LOGI("clir invocation"); - clir = "I"; - num = (char *)&(pDial->address[4]); - } else { - HDF_LOGI("set clir state to default"); - clir = ""; - num = (char *)pDial->number; - } - - asprintf(&atCmd, "ATD%s%s;", pDial->address, clir); - ret = send_at_request(atCmd, NULL); - free(atCmd); - // 命令执行完成后调用该接口,将Modem执行的结果反馈给RIL Adapter - OnRequestResponse(t, RIL_RESULT_SUCCESS, NULL, 0); -} -``` - -## 来电开发实例 - -来电的调用流程示例如下图所示: - -**图 2** 来电调用流程图 - - -![](figures/来电.png) - -Modem设备节点读取线程s\_tid\_read会循环读取Modem上报的消息,当Modem接收到来电时会主动上报来电相关的信息; - -当该线程通过调用OnNotificationResponse\(\)解析到Modem上报的数据是以"+CRING"、"RING"等字符开头时,表示有来电事件,然后通过OnRadioEventNotify\(HNOTI\_CALL\_STATUS, NULL, 0\)上报给RIL Adapter完成来电事件上报。 - -``` -#include -#include "atchannel.h" -#include "at_tok.h" -#include "hdf_log.h" -#include "ril.h" - -bool IsCallStatusUpdated(const char *s) -{ - return (StrBeginWith(s, "+CRING:") - || StrBeginWith(s, "RING") - || StrBeginWith(s, "NO CARRIER") - || StrBeginWith(s, "+CCWA")); -} - -// 将Modem上报数据解析为对应的Modem事件 -static void OnNotificationResponse(const char *s, const char *sms_pdu) -{ - char *line = NULL, *p; - HDF_LOGI("OnNotificationResponse = %{public}s sState = %{public}d", s, sState); - // 解析到以"+CRING:"等字符开头的数据时,转换为来电事件 - if (IsCallStatusUpdated(s)) { - // 通知RIL Adapter有来电事件 - OnRadioEventNotify(HNOTI_CALL_STATUS, NULL, 0); - } - …… -} -``` - diff --git "a/zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-3.md" "b/zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-1.md" similarity index 100% rename from "zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-3.md" rename to "zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-1.md" diff --git "a/zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-5.md" "b/zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-5.md" deleted file mode 100755 index cd3f58d79fd..00000000000 --- "a/zh-cn/device-dev/subsystems/\345\274\200\345\217\221\346\214\207\345\257\274-5.md" +++ /dev/null @@ -1,11 +0,0 @@ -# 开发指导 - -- **[Modem厂商库集成指导](Modem厂商库集成指导.md)** - -- **[Modem厂商库初始化开发指导](Modem厂商库初始化开发指导.md)** - -- **[Modem业务请求及响应开发指导](Modem业务请求及响应开发指导.md)** - -- **[Modem事件上报开发指导](Modem事件上报开发指导.md)** - - diff --git "a/zh-cn/device-dev/subsystems/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274.md" index 2b376199130..0e1ebbfecfc 100755 --- "a/zh-cn/device-dev/subsystems/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ "b/zh-cn/device-dev/subsystems/\346\213\215\347\205\247\345\274\200\345\217\221\346\214\207\345\257\274.md" @@ -385,6 +385,7 @@ Surface *surface = Surface::CreateSurface(); if (surface == nullptr) { delete fc; + return; } surface->SetWidthAndHeight(1920, 1080); /* 1920:width,1080:height */ fc->AddSurface(*surface); diff --git "a/zh-cn/device-dev/subsystems/\346\220\255\345\273\272\347\216\257\345\242\203-2.md" "b/zh-cn/device-dev/subsystems/\346\220\255\345\273\272\347\216\257\345\242\203-0.md" old mode 100755 new mode 100644 similarity index 100% rename from "zh-cn/device-dev/subsystems/\346\220\255\345\273\272\347\216\257\345\242\203-2.md" rename to "zh-cn/device-dev/subsystems/\346\220\255\345\273\272\347\216\257\345\242\203-0.md" diff --git "a/zh-cn/device-dev/subsystems/\346\240\207\345\207\206\347\263\273\347\273\237\347\274\226\350\257\221\346\236\204\345\273\272\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/\346\240\207\345\207\206\347\263\273\347\273\237\347\274\226\350\257\221\346\236\204\345\273\272\346\214\207\345\257\274.md" deleted file mode 100644 index 6c6cf033328..00000000000 --- "a/zh-cn/device-dev/subsystems/\346\240\207\345\207\206\347\263\273\347\273\237\347\274\226\350\257\221\346\236\204\345\273\272\346\214\207\345\257\274.md" +++ /dev/null @@ -1,7 +0,0 @@ -# 标准系统编译构建指导 - -- **[编译构建概述](编译构建概述-0.md)** - -- **[编译构建使用指导](编译构建使用指导-1.md)** - - diff --git "a/zh-cn/device-dev/subsystems/\346\246\202\350\277\260-7.md" "b/zh-cn/device-dev/subsystems/\346\246\202\350\277\260-7.md" deleted file mode 100644 index 45d0d326761..00000000000 --- "a/zh-cn/device-dev/subsystems/\346\246\202\350\277\260-7.md" +++ /dev/null @@ -1,76 +0,0 @@ -# 概述 - -- [基本概念](#section175012297491) -- [约束与限制](#section2029921310472) - -OpenHarmony安全子系统目前提供给开发者的安全能力主要包含应用可信、权限管理、设备可信。涉及以下几个模块: - -- 应用验签 - - 为了确保应用内容的完整性,系统通过应用签名和Profile对应用的来源进行管控,同时对于调试应用,还可通过验签接口验证应用和设备的UDID是否匹配,确保应用安装在了正确的设备上。 - -- 应用权限管理 - - 应用权限是管理应用访问系统资源和使用系统能力的一种通用方式,应用在开发阶段需要在profile.json中指明此应用在运行过程中可能会调用哪些权限,其中静态权限表示只需要在安装阶段注册就可以,而动态权限一般表示涉及到敏感信息,所以需要用户进行动态授权。 - -- IPC通信鉴权 - - 系统服务通过IPC暴露接口给其他进程访问,这些接口需要配置相应的访问策略,当其他进程访问这些接口时,将会触发IPC通信鉴权机制校验访问进程是否拥有权限访问该接口,若无权限,则拒绝访问该接口。 - -- 可信设备群组管理 - - 提供基于群组概念的同华为账号群组、点对点群组(如二维码、碰一碰等)的设备安全可信关系的创建和查询,分布式应用可基于该能力进行设备间的可信认证,然后向分布式软总线请求设备间安全会话。 - - -## 基本概念 - -在进行依赖验签组件的应用开发前,开发者应了解以下基本概念: - -- Samgr - - Samgr\(System Ability M2anager\)系统能力管理,在OpenHarmony上作为一个管理系统能力的模块,详见系统服务框架子系统。 - - -- BMS - - BMS\(Bundle Manager Service\)包管理管理,在OpenHarmony上主要负责应用的安装、卸载和数据管理。 - - -- 描述文件 - - 本文中的描述文件,指HarmonyAppProvision,简称profile。HarmonyAppProvision采用json文件格式进行描述。 - - -- 叶子证书 - - 最终用于为整包或profile签名的证书称为叶子证书,位于数字证书链的最末端。 - - -- 调试应用 - - 指开发者从应用市场申请调试证书与调试描述文件,并以此签名的hap包。 - - -- 待上架应用 - - 指开发者从应用市场申请发布证书与发布描述文件,以此签名,未通过应用市场正式发布的hap包。 - - -- 发布应用 - - 指开发者从应用市场申请发布证书与发布描述文件,以此签名的hap包,上传至应用市场,并由应用市场正式发布的hap包。 - - -- OpenHarmony自签名应用 - - 当开发者自行编译OpenHarmony系统应用后,采用原应用描述文件,以及公开的OpenHarmony公私钥对和证书进行自签名产生的hap包。 - - -## 约束与限制 - -- 仅支持以下三类应用的验签:应用市场调试应用、应用市场发布应用、OpenHarmony自签名应用的验签。 -- 若对应用市场调试应用验签,则本机UDID需要在描述文件包含的UDID列表中。 -- 待上架应用无法验签通过。 -- 验签组件提供的接口都位于security\_interfaces\_innerkits\_app\_verify仓[app\_verify\_pub.h](https://gitee.com/fork_ohos_wj/security_interfaces_innerkits_app_verify/blob/master/app_verify_pub.h)中,仅支持系统应用开发者调用。 -- 可信设备群组管理接口,目前只对系统签名权限才可以使用。 - diff --git "a/zh-cn/device-dev/subsystems/\346\246\202\350\277\260.md" "b/zh-cn/device-dev/subsystems/\346\246\202\350\277\260.md" index 63ee16f94ce..3edb13ccbc3 100755 --- "a/zh-cn/device-dev/subsystems/\346\246\202\350\277\260.md" +++ "b/zh-cn/device-dev/subsystems/\346\246\202\350\277\260.md" @@ -73,7 +73,7 @@ Ability子系统是管理OpenHarmony应用运行状态的开发框架。 - **AbilityKit**:Ability框架提供给开发者的开发包,开发者基于该开发包可以开发出基于Ability组件的应用。基于Ability组件开发的应用有两种类型:基于Javascript语言开发的Ability(JS Ability)和基于C/C++语言开发的Ability(Native Ability)。JS应用开发框架是开发者开发JS Ability所用到框架,是在AbilityKit基础封装的包含js UI组件的一套方便开发者能够迅速开发Ability应用的框架。 - **AbilityLoader**:负责注册和加载开发者Ability的模块。开发者开发的Ability先要调用AbilityLoader的注册接口注册到框架中,接着Ability启动时会被实例化。 -- **AbilityManager**:负责AbilityKit和Ability管理服务进行IPC的通信。 +- **AbilityManager:**负责AbilityKit和Ability管理服务进行IPC的通信。 - **EventHandler**:AbilityKit提供给开发者的用于在Ability中实现线程间通信的一个模块。 diff --git "a/zh-cn/device-dev/subsystems/\347\224\250\346\210\267\347\250\213\345\272\217\346\241\206\346\236\266.md" "b/zh-cn/device-dev/subsystems/\347\224\250\346\210\267\347\250\213\345\272\217\346\241\206\346\236\266.md" index 14552d89af7..840c2042669 100755 --- "a/zh-cn/device-dev/subsystems/\347\224\250\346\210\267\347\250\213\345\272\217\346\241\206\346\236\266.md" +++ "b/zh-cn/device-dev/subsystems/\347\224\250\346\210\267\347\250\213\345\272\217\346\241\206\346\236\266.md" @@ -2,9 +2,9 @@ - **[概述](概述.md)** -- **[搭建环境](搭建环境-2.md)** +- **[搭建环境](搭建环境-0.md)** -- **[开发指导](开发指导-3.md)** +- **[开发指导](开发指导-1.md)** - **[开发实例](开发实例.md)** diff --git "a/zh-cn/device-dev/subsystems/\347\240\224\345\217\221\345\267\245\345\205\267\351\223\276.md" "b/zh-cn/device-dev/subsystems/\347\240\224\345\217\221\345\267\245\345\205\267\351\223\276.md" index 5c490a8cfbd..71503a41dac 100644 --- "a/zh-cn/device-dev/subsystems/\347\240\224\345\217\221\345\267\245\345\205\267\351\223\276.md" +++ "b/zh-cn/device-dev/subsystems/\347\240\224\345\217\221\345\267\245\345\205\267\351\223\276.md" @@ -4,6 +4,4 @@ - **[hdc\_std 使用指导](hdc_std-使用指导.md)** -- **[hdc\_std常见问题](hdc_std常见问题.md)** - diff --git "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272.md" "b/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272.md" index b59e4b2a18f..fa8f3606d6e 100755 --- "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272.md" +++ "b/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272.md" @@ -1,7 +1,7 @@ # 编译构建 -- **[轻量和小型系统编译构建指导](轻量和小型系统编译构建指导.md)** +- **[编译构建子系统—轻量和小型系统](编译构建子系统-轻量和小型系统.md)** -- **[标准系统编译构建指导](标准系统编译构建指导.md)** +- **[编译构建子系统—标准系统](编译构建子系统-标准系统.md)** diff --git "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\344\275\277\347\224\250\346\214\207\345\257\274.md" deleted file mode 100755 index 8d5f2768177..00000000000 --- "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ /dev/null @@ -1,431 +0,0 @@ -# 编译构建使用指导 - -- [前提条件](#section13333171022312) -- [hb命令行工具使用](#section477242204612) -- [新增组件](#section4207112818418) -- [新增芯片解决方案](#section2737141421917) -- [新增产品解决方案](#section720881917199) - -## 前提条件 - -开发环境需安装gn、ninja构建工具、python 3.7.4及以上和hb。安装方法请见[搭建系统基础环境](../quick-start/搭建系统环境.md)。 - -## hb命令行工具使用 - -hb是OpenHarmony的命令行工具,用来执行编译命令。以下对hb的常用命令进行说明。 - -1. **hb set** - - ``` - hb set -h - usage: hb set [-h] [-root [ROOT_PATH]] [-p] - - optional arguments: - -h, --help show this help message and exit - -root [ROOT_PATH], --root_path [ROOT_PATH] - Set OHOS root path - -p, --product Set OHOS board and kernel - ``` - - - hb set 后无参数,进入默认设置流程 - - hb set -root dir可直接设置代码根目录 - - hb set -p设置要编译的产品 - -2. **hb env** - - 查看当前设置信息 - - ``` - hb env - [OHOS INFO] root path: xxx - [OHOS INFO] board: hispark_taurus - [OHOS INFO] kernel: liteos - [OHOS INFO] product: ipcamera - [OHOS INFO] product path: xxx/vendor/hisilicon/ipcamera - [OHOS INFO] device path: xxx/device/hisilicon/hispark_taurus/sdk_linux_4.19 - ``` - -3. **hb build** - - ``` - hb build -h - usage: hb build [-h] [-b BUILD_TYPE] [-c COMPILER] [-t [TEST [TEST ...]]] - [--dmverity] [-p PRODUCT] [-f] [-n] - [component [component ...]] - - positional arguments: - component name of the component - - optional arguments: - -h, --help show this help message and exit - -b BUILD_TYPE, --build_type BUILD_TYPE - release or debug version - -t [TEST [TEST ...]], --test [TEST [TEST ...]] - compile test suit - --dmverity Enable dmverity - -p PRODUCT, --product PRODUCT - build a specified product with - {product_name}@{company}, eg: ipcamera@hisilcon - -f, --full full code compilation - -T [TARGET [TARGET ...]], --target [TARGET [TARGET ...]] - Compile single target - ``` - - - hb build后无参数,会按照设置好的代码路径、产品进行编译,编译选项使用与之前保持一致。-f 选项将删除当前产品所有编译产品,等同于hb clean + hb build. - - hb build \{component\_name\}:基于设置好的产品对应的单板、内核,单独编译组件(e.g.:hb build kv\_store\)。 - - hb build -p ipcamera@hisilicon:免set编译产品,该命令可以跳过set步骤,直接编译产品。 - - 在device/device\_company/board下单独执行hb build会进入内核选择界面,选择完成后会根据当前路径的单板、选择的内核编译出仅包含内核、驱动的镜像。 - -4. **hb clean** - - 清除out目录对应产品的编译产物,仅保留args.gn、build.log。清除指定路径可输入路径参数:hb clean out/board/product,默认将清除当前hb set的产品对应out路径。 - - ``` - hb clean - usage: hb clean [-h] [out_path] - - positional arguments: - out_path clean a specified path. - - optional arguments: - -h, --help show this help message and exit - ``` - - -## 新增组件 - -本小节介绍如何新增一个组件,首先确定组件归属的子系统和组件名称,然后按如下步骤新增: - -1. 源码开发完成后,添加组件编译脚本。 - - 以编译组件hello\_world可执行文件为例,applications/sample/hello\_world/BUILD.gn可以写为: - - ``` - executable("hello_world") { - include_dirs = [ - "include", - ] - sources = [ - "src/hello_world.c" - ] - } - ``` - - 如上编译脚本,可编译出一个可在OpenHarmony上运行的名为hello\_world的可执行文件。 - - 单独编译该组件,hb set任意选择一款产品,然后使用-T选项单独编译组件: - - ``` - hb build -f -T //applications/sample/hello_world - ``` - - 组件在开发板上功能验证完成后,可按步骤2\~5将组件配置到产品中。 - -2. 添加组件描述。 - - 组件描述位于build/lite/components下,新增的组件需加入对应子系统的json文件中。一个组件描述必选的字段有: - - - component:组件名称。 - - description:组件的一句话功能描述。 - - optional:组件是否为系统可选。 - - dirs:组件源码路径。 - - targets:组件编译入口。 - - 以将hello\_world组件加入应用子系统为例,在applications.json中添加hello\_world对象: - - ``` - { - "components": [ - { - "component": "hello_world", - "description": "Hello world.", - "optional": "true", - "dirs": [ - "applications/sample/hello_world" - ], - "targets": [ - "//applications/sample/hello_world" - ] - }, - ... - ] - } - ``` - -3. 将组件配置到产品。 - - 产品的配置文件config.json位于位于vendor/company/product/下,产品配置文件需包含产品名称、OpenHarmony版本号、device厂商、开发板、内核类型、内核版本号,以及配置的子系统和组件。以将hello\_world组件加入产品配置文件my\_product.json中为例,加入hello\_wolrd对象: - - ``` - { - "product_name": "hello_world_test", - "ohos_version": "OpenHarmony 1.0", - "device_company": "hisilicon", - "board": "hispark_taurus", - "kernel_type": "liteos_a", - "kernel_version": "1.0.0", - "subsystems": [ - { - "subsystem": "applications", - "components": [ - { "component": "hello_world", "features":[] } - ] - }, - ... - ] - } - ``` - -4. 编译产品。 - - 1. 代码根目录输入hb set选择对应产品。 - - 2. 执行hb build。 - - -## 新增芯片解决方案 - -编译构建支持添加新的芯片解决方案厂商,具体步骤如下: - -1. 创建芯片解决方案目录。 - - 按照[芯片解决方案配置规则](编译构建概述.md#section1625463413327)创建目录,以芯片厂商realtek的“rtl8720“开发板为例, 在代码根目录执行: - - ``` - mkdir -p device/realtek/rtl8720 - ``` - -2. 创建内核适配目录,并编写开发板编译配置config.gni文件。 - - 以realtek的“rtl8720“开发板的liteos\_m适配为例,device/realtek/rtl8720/liteos\_a/config.gni的内容如下: - - ``` - # Kernel type, e.g. "linux", "liteos_a", "liteos_m". - kernel_type = "liteos_a" - - # Kernel version. - kernel_version = "3.0.0" - - # Board CPU type, e.g. "cortex-a7", "riscv32". - board_cpu = "real-m300" - - # Board arch, e.g. "armv7-a", "rv32imac". - board_arch = "" - - # Toolchain name used for system compiling. - # E.g. gcc-arm-none-eabi, arm-linux-harmonyeabi-gcc, ohos-clang, riscv32-unknown-elf. - # Note: The default toolchain is "ohos-clang". It's not mandatory if you use the default toochain. - board_toolchain = "gcc-arm-none-eabi" - - # The toolchain path instatlled, it's not mandatory if you have added toolchian path to your ~/.bashrc. - board_toolchain_path = - rebase_path("//prebuilts/gcc/linux-x86/arm/gcc-arm-none-eabi/bin", - root_build_dir) - - # Compiler prefix. - board_toolchain_prefix = "gcc-arm-none-eabi-" - - # Compiler type, "gcc" or "clang". - board_toolchain_type = "gcc" - - # Board related common compile flags. - board_cflags = [] - board_cxx_flags = [] - board_ld_flags = [] - ``` - -3. 编写编译脚本。 - - 在开发板目录下创建BUILD.gn,target名称应与开发板名称一致。以realtek的rtl8720开发板为例,device/realtek/rtl8720/BUILD.gn内容可以是: - - ``` - group("rtl8720") { # target类型也可以shared_library, static_library, executable - # 具体内容 - ...... - } - ``` - -4. 编译芯片解决方案。 - - 在开发板目录下执行hb build,即可启动芯片解决方案的编译。 - - -## 新增产品解决方案 - -编译构建支持芯片解决方案和组件的灵活拼装,形成定制化的产品解决方案。具体步骤如下: - -1. 创建产品目录 - - 按照[产品解决方案配置规则](编译构建概述.md#section1625463413327)创建产品目录,以基于“rtl8720“开发板的wifiiot模组为例,在代码根目录执行: - - ``` - mkdir -p vendor/my_company/wifiiot - ``` - -2. 拼装产品 - - 在新建的产品目录下新建config.json文件,以步骤1中的wifiiot为例,vendor/my\_company/wifiiot/config.json可以是: - - ``` - { - "product_name": "wifiiot", # 产品名称 - "ohos_version": "OpenHarmony 1.0", # 使用的OS版本 - "device_company": "realtek", # 芯片解决方案厂商名称 - "board": "rtl8720", # 开发板名称 - "kernel_type": "liteos_m", # 选择的内核类型 - "kernel_version": "3.0.0", # 选择的内核版本 - "subsystems": [ - { - "subsystem": "kernel", # 选择的子系统 - "components": [ - { "component": "liteos_m", "features":[] } # 选择的组件和组件特性 - ] - }, - ... - { - 更多子系统和组件 - } - ] - } - ``` - - 注意:编译构建系统编译前会对device\_company,board,kernel\_type,kernel\_version、subsystem、component字段进行有效性检查,其中device\_company,board,kernel\_type,kernel\_version应与已知的芯片解决方案匹配,subsystem、component应与build/lite/components下的组件描述匹配。 - -3. 适配OS接口 - - 在产品目录下创建hals目录,并将产品解决方案对OS适配的源码和编译脚本放入该目录下。 - -4. 配置系统服务 - - 在产品目录下创建init\_configs目录,并在init\_configs目录下创建init.cfg文件,按需配置要启动的系统服务。 - -5. 配置init进程(仅linux内核需要) - - 在init\_configs目录下创建etc目录,然后在etc下创建init.d文件夹和fstab文件。最后按产品需求在init.d文件下创建并编辑rcS文件和Sxxx文件。 - -6. 配置文件系统镜像(可选,仅支持文件系统的开发板需要) - - 在产品目录下创建fs.yml文件。fs.yml需按产品实际情况配置,一个典型的fs.yml文件如下: - - ``` - - - fs_dir_name: rootfs # 镜像的名称 - fs_dirs: - - - # 将编译生成的out/my_board/my_product/bin目录下的文件拷贝到rootfs/bin中,并忽略测试bin - source_dir: bin - target_dir: bin - ignore_files: - - Test.bin - - TestSuite.bin - - - # 将编译生成的out/my_board/my_product/libs目录下的文件拷贝到rootfs/lib中,忽略所有.a文件,并设置文件和文件夹的权限为644和755 - source_dir: libs - target_dir: lib - ignore_files: - - .a - dir_mode: 755 - file_mode: 644 - - - source_dir: usr/lib - target_dir: usr/lib - ignore_files: - - .a - dir_mode: 755 - file_mode: 644 - - - source_dir: config - target_dir: etc - - - source_dir: system - target_dir: system - - - source_dir: sbin - target_dir: sbin - - - source_dir: usr/bin - target_dir: usr/bin - - - source_dir: usr/sbin - target_dir: usr/sbin - - - # 创建一个proc空目录 - target_dir: proc - - - target_dir: mnt - - - target_dir: opt - - - target_dir: tmp - - - target_dir: var - - - target_dir: sys - - - source_dir: etc - target_dir: etc - - - source_dir: vendor - target_dir: vendor - - - target_dir: storage - - fs_filemode: - - - file_dir: lib/ld-uClibc-0.9.33.2.so - file_mode: 555 - - - file_dir: lib/ld-2.24.so - file_mode: 555 - - - file_dir: etc/init.cfg - file_mode: 400 - fs_symlink: - - - # 在rootfs/lib下创建软连接ld-musl-arm.so.1 -> libc.so - source: libc.so - link_name: ${fs_dir}/lib/ld-musl-arm.so.1 - - - source: mksh - link_name: ${fs_dir}/bin/sh - - - source: mksh - link_name: ${fs_dir}/bin/shell - fs_make_cmd: - # 使用脚本将rootfs制作为ext4格式的image - - ${root_path}/build/lite/make_rootfs/rootfsimg_linux.sh ${fs_dir} ext4 - - - fs_dir_name: userfs - fs_dirs: - - - source_dir: storage/etc - target_dir: etc - - - source_dir: data - target_dir: data - fs_make_cmd: - - ${root_path}/build/lite/make_rootfs/rootfsimg_linux.sh ${fs_dir} ext4 - - ``` - -7. 编写编译脚本 - - 在产品目录下创建BUILD.gn文件,按产品实际情况编写脚本。以步骤1中的wifiiot为例,BUILD.gn示例如下: - - ``` - group("wifiiot") { # target名称与产品名一致 - deps = [] - # 拷贝init配置 - deps += [ "init_configs" ] - # 将hals加入编译 - deps += [ "hals" ] - # 其他 - ...... - } - ``` - -8. 编译产品。 - - 在代码根目录执行hb set按提示选择新增的产品,然后执行hb build即可启动编译。 - - diff --git "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\344\275\277\347\224\250\346\214\207\345\257\274-1.md" "b/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237-\346\240\207\345\207\206\347\263\273\347\273\237.md" old mode 100755 new mode 100644 similarity index 66% rename from "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\344\275\277\347\224\250\346\214\207\345\257\274-1.md" rename to "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237-\346\240\207\345\207\206\347\263\273\347\273\237.md" index 661ff10cf6b..ec1cb942087 --- "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\344\275\277\347\224\250\346\214\207\345\257\274-1.md" +++ "b/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237-\346\240\207\345\207\206\347\263\273\347\273\237.md" @@ -1,12 +1,73 @@ -# 编译构建使用指导 +# 编译构建子系统—标准系统 -- [目录结构](#section56731811102915) -- [编译](#section1069873833818) - - [编译命令](#section2740182614395) +- [概述](#section17466112012244) + - [基本概念](#section445513507246) + - [运作机制](#section12541217142510) + - [约束与限制](#section886933762513) -- [开发步骤](#section4207112818418) +- [编译构建使用指导](#section16901215262) + - [目录结构](#section109065332264) + - [编译命令](#section123265539266) + - [开发步骤](#section591084422719) -## 目录结构 + +## 概述 + +编译构建子系统提供了一个基于gn和ninja的编译构建框架。主要提供以下功能: + +- 构建不同芯片平台的产品。如:Hi3516DV300平台。 + +- 根据产品配置可以按照组件组装打包产品需要的能力。 + +### 基本概念 + +在了解编译构建子系统的能力前,应了解如下基本概念: + +- 平台 + + 开发板和内核的组合,不同平台支持的子系统和组件不同。 + +- 子系统 + + OpenHarmony整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统 \> 子系统 \> 组件”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的子系统或组件。子系统是一个逻辑概念,它具体由对应的组件构成。 + +- 组件 + + 对子系统的进一步拆分,可复用的软件单元,它包含源码、配置文件、资源文件和编译脚本;能独立构建,以二进制方式集成,具备独立验证能力的二进制单元。 + +- gn + + Generate ninja的缩写,用于产生ninja文件。 + +- ninja + + ninja是一个专注于速度的小型构建系统。 + + +### 运作机制 + +OpenHarmony侧的编译构建流程主要包括编译命令行解析,调用gn,执行ninja: + +- 命令行解析:解析待编译的产品名称,加载相关配置。 +- 调用gn: 根据命令行解析的产品名称和编译类型,配置编译工具链和全局的编译选项。 +- 执行ninja:启动编译并生成对应的产品版本。 + +### 约束与限制 + +- 需按照[源码获取](../get-code/源码获取.md)指导下载全量源码(采用方式三获取)。 +- 编译环境需要Ubuntu18.04及以上版本。 +- 安装编译所需的程序包。 + + 安装命令: + + ``` + sudo apt-get install binutils git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 + ``` + + +## 编译构建使用指导 + +### 目录结构 ``` /build # 编译构建主目录 @@ -27,9 +88,7 @@ └── toolchain # 编译工具链配置 ``` -## 编译 - -### 编译命令 +### 编译命令 - 代码根目录下执行全量版本的编译命令: @@ -51,7 +110,7 @@ ``` -## 开发步骤 +### 开发步骤 1. 添加组件。 diff --git "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\346\246\202\350\277\260.md" "b/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237-\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237.md" old mode 100755 new mode 100644 similarity index 39% rename from "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\346\246\202\350\277\260.md" rename to "zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237-\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237.md" index 83423cbe1c9..5933ac0bab5 --- "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\346\246\202\350\277\260.md" +++ "b/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237-\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237.md" @@ -1,9 +1,32 @@ -# 编译构建概述 +# 编译构建子系统—轻量和小型系统 -- [基本概念](#section175012297491) -- [目录结构](#section3267040205617) -- [构建流程](#section193961322175011) -- [组件、芯片解决方案和产品解决方案配置规则](#section1625463413327) +- [概述](#section10958256161119) + - [基本概念](#section1732301411128) + - [目录结构](#section1588744014121) + - [构建流程](#section15761735134) + +- [配置规则](#section2345183962710) + - [组件](#section142532518308) + - [芯片解决方案](#section121501451143710) + - [产品解决方案](#section134549283435) + +- [使用指导](#section13754457192211) + - [前提条件](#section31651120233) + - [hb工具使用说明](#section1133304172313) + - [新增组件](#section167110415315) + - [新增芯片解决方案](#section1474718565412) + - [新增产品解决方案](#section1097623294220) + +- [常见问题](#section19909721104319) + - [ninja版本问题导致编译失败](#section138233464318) + - [ncurses库缺失导致编译失败](#section151033911442) + - [未安装mcopy导致编译失败](#section19811838104418) + - [权限问题导致编译失败](#section03111118451) + - [未安装Crypto导致编译失败](#section69981127125013) + - [编译环境为shell导致编译失败](#section967617530505) + + +## 概述 一个基于gn和ninja的构建系统,以支持OpenHarmony组件化开发为目标,提供以下基本功能: @@ -12,7 +35,7 @@ - 独立构建芯片解决方案厂商源码。 - 独立构建单个组件。 -## 基本概念 +### 基本概念 在使用编译构建子系统前,应了解如下基本概念: @@ -38,7 +61,7 @@ OpenHarmony的命令行工具,用来执行编译命令。 -## 目录结构 +### 目录结构 ``` build/lite @@ -55,7 +78,7 @@ build/lite └── toolchain # 编译工具链配置,包括:编译器路径、编译选项、链接选项等 ``` -## 构建流程 +### 构建流程 编译构建流程如[图1 ](#fig9744112715161)所示,主要分设置和编译两步: @@ -70,13 +93,16 @@ build/lite - 系统镜像打包:将组件编译产物打包,设置文件属性和权限,制作文件系统镜像。 -## 组件、芯片解决方案和产品解决方案配置规则 +## 配置规则 为了实现芯片解决方案、产品解决方案与OpenHarmony是解耦的、可插拔的,组件、芯片解决方案和产品解决方案的路径、目录树和配置需遵循一定的规则,具体如下: -- **组件** +### **组件** + +组件源码路径命名规则为:**\{领域\}/\{子系统\}/\{组件\}**,组件目录树规则如下: -组件源码路径命名规则为:_\{领域\}/\{子系统\}/\{组件\}_,组件目录树规则如下: +>![](public_sys-resources/icon-caution.gif) **注意:** +>组件的名称、源码路径、功能简介、是否必选、编译目标、RAM、ROM、编译输出、已适配的内核、可配置的特性和依赖等属性定义在build/lite/components目录下对应子系统的json文件中,新增组件时需要在对应子系统json文件中添加相应的组件定义。产品所配置的组件必须在某个子系统中被定义过,否则会校验失败。 ``` component @@ -88,8 +114,6 @@ component └── BUILD.gn # 组件编译脚本 ``` -组件的名称、源码路径、功能简介、是否必选、编译目标、RAM、ROM、编译输出、已适配的内核、可配置的特性和依赖等属性定义在build/lite/components目录下对应子系统的json文件中,新增组件时需要在对应子系统json文件中添加相应的组件定义。产品所配置的组件必须在某个子系统中被定义过,否则会校验失败。 - 以泛sensor子系统的sensor服务组件为例,组件属性定义描述文件字段说明如下: ``` @@ -125,13 +149,15 @@ component } ``` -组件的编译脚本语言为gn,gn的基本用法请见[gn快速入门](https://gn.googlesource.com/gn/+/master/docs/quick_start.md)。组件即为gn定义的编译目标,可以为静态库、动态库、可执行文件或group。组件BUILD.gn的编写建议如下: +组件BUILD.gn的编写建议如下: -1)编译目标名称与组件一致。 +- 编译目标名称与组件一致。 +- 组件对外可配置的特性变量需声明在该组件BUILD.gn中,特性变量命名规则:ohos\_\{subsystem\}\_\{component\}\_\{feature\}。特性在组件描述中也需要同步定义,在产品配置文件config.json中按需配置。 +- 宏定义规则:OHOS\_\{SUBSYSTEM\}\_\{COMPONENT\}\_\{FEATURE\} -2)组件对外可配置的特性变量需声明在该组件BUILD.gn中,特性变量命名规则:ohos\_\{subsystem\}\_\{component\}\_\{feature\}。特性在组件描述中也需要同步定义,在产品配置文件config.json中按需配置。 + >![](public_sys-resources/icon-note.gif) **说明:** + >组件的编译脚本语言为gn,gn的基本用法请见[gn快速入门](https://gn.googlesource.com/gn/+/master/docs/quick_start.md)。组件即为gn定义的编译目标,可以为静态库、动态库、可执行文件或group。 -3)宏定义规则:OHOS\_\{SUBSYSTEM\}\_\{COMPONENT\}\_\{FEATURE\} 以图形的UI组件为例,foundation/graphic/ui/BUILD.gn文件如下: @@ -180,9 +206,13 @@ component } ``` -- **芯片解决方案** +### **芯片解决方案** + +- 芯片解决方案是指基于某款开发板的完整解决方案,包含驱动、设备侧接口适配、开发板sdk等。 +- 芯片解决方案是一个特殊的组件,源码路径规则为:**device/\{芯片解决方案厂商\}/\{开发板\}**。 +- 芯片解决方案组件会随产品选择的开发板默认编译。 -芯片解决方案是指基于某款开发板的完整解决方案,包含驱动、设备侧接口适配、开发板sdk等。芯片解决方案是一个特殊的组件,源码路径规则为:_device/\{芯片解决方案厂商\}/\{开发板\}_。芯片解决方案组件会随产品选择的开发板默认编译。芯片解决方案目录树规则如下: +芯片解决方案目录树规则如下: ``` device @@ -196,7 +226,10 @@ device └── config.gni # liteos_a版本编译配置 ``` -config.gni为开发板编译相关的配置。编译时会采用该配置文件中的参数选择编译相应的OS组件,编译阶段系统全局可见。关键字段介绍如下: +>![](public_sys-resources/icon-note.gif) **说明:** +>config.gni为开发板编译相关的配置,编译时会采用该配置文件中的参数编译所有OS组件,编译阶段系统全局可见。 + +config.gni的关键字段介绍如下: ``` kernel_type: 开发板使用的内核类型,例如:“liteos_a”, “liteos_m”, “linux”。 @@ -211,9 +244,11 @@ board_cxx_flags: 开发板配置的cpp文件编译选项。 board_ld_flags: 开发板配置的链接选项。 ``` -- **产品解决方案** +### **产品解决方案** + +产品解决方案为基于开发板的完整产品,主要包含产品对OS的适配、组件拼装配置、启动配置和文件系统配置等。产品解决方案的源码路径规则为:**vendor/\{产品解决方案厂商\}/\{产品名称\}**_。_产品解决方案也是一个特殊的组件。 -产品解决方案为基于开发板的完整产品,主要包含产品对OS的适配、组件拼装配置、启动配置和文件系统配置等。源码路径规则为:_vendor/\{产品解决方案厂商\}/\{产品名称\}。_产品解决方案也是一个特殊的组件,目录树规则如下: +产品解决方案的目录树规则如下: ``` vendor @@ -229,25 +264,24 @@ vendor └── ...... ``` -新增产品须按如上的规则创建目录和文件,编译构建系统将按该规则扫描已配置的产品。关键的目录和文件详细介绍如下: +>![](public_sys-resources/icon-caution.gif) **注意:** +>**新增产品须按如上的规则创建目录和文件,编译构建系统将按该规则扫描已配置的产品。** -1. vendor/company/product/init\_configs/etc +关键的目录和文件详细介绍如下: - 该文件夹中包含rcS脚本,Sxxx脚本和fstab脚本,init进程在启动系统服务之前执行这些脚本。执行的流程为“rcS-\>fstab-\>S00-xxx“,Sxxx脚本中的内容与开发板和产品需要有关,主要包括设备节点的创建、创建目录、扫描设备节点、修改文件权限等等。这些文件在产品编译的BUILD.gn中按需拷贝到产品out目录中,最终打包到rootfs镜像中。 - -2. vendor/company/product/init\_configs/init.cfg - - init进程启动服务的配置文件,当前支持解析的命令有: +1. **vendor/company/product/init\_configs/etc** - 1\) start: 启动某个服务 + 该文件夹中包含rcS脚本,Sxxx脚本和fstab脚本。init进程在启动系统服务之前执行这些脚本。执行的流程为“rcS-\>fstab-\>S00-xxx“。Sxxx脚本中的内容与开发板和产品需要有关,主要包括设备节点的创建、创建目录、扫描设备节点、修改文件权限等等。这些文件在产品编译的BUILD.gn中按需拷贝到产品out目录中,最终打包到rootfs镜像中。 - 2\) mkdir: 创建文件夹 +2. **vendor/company/product/init\_configs/init.cfg** - 3)chmod: 修改指定路径/文件的权限 - - 4\) chown: 修改指定路径/文件的属组 + init进程启动服务的配置文件,当前支持解析的命令有: - 5\) mount: 挂载命令 + - start: 启动某个服务 + - mkdir: 创建文件夹 + - chmod: 修改指定路径/文件的权限 + - chown: 修改指定路径/文件的属组 + - mount: 挂载命令 该文件中的各个字段的解释如下: @@ -273,7 +307,7 @@ vendor "start service1" ] }, { - "name" : "post-init", # 最后别执行的job, init进程启动完成后的处理(如驱动初始化后再mount设备) + "name" : "post-init", # 最后执行的job, init进程启动完成后的处理(如驱动初始化后再mount设备) "cmds" : [] } ], @@ -291,13 +325,15 @@ vendor } ``` -3. vendor/company/product/init\_configs/hals +3. **vendor/company/product/init\_configs/hals** 解决方案厂商对OS的适配,需要实现的接口请见各个组件的readme说明文档。 -4. vendor/company/product/config.json +4. **vendor/company/product/config.json** - config.json为编译构建的主入口,包含了开发板、OS组件和内核等配置信息。以基于hispark\_taurus开发板的ipcamera产品为例,配置文件如下: + config.json为编译构建的主入口,包含了开发板、OS组件和内核等配置信息。 + + 以基于hispark\_taurus开发板的ipcamera产品为例,配置文件如下: ``` { @@ -323,7 +359,7 @@ vendor } ``` -5. vendor/company/product/fs.yml +5. **vendor/company/product/fs.yml** 该文件用于配置文件系统镜像制作过程,将编译产物打包成文件系统镜像,比如用户态根文件系统rootfs.img和可读写的userfs.img。它由多个列表组成,每个列表对应一个文件系统。字段说明如下: @@ -364,7 +400,7 @@ vendor >![](public_sys-resources/icon-note.gif) **说明:** >fs.yml是可选的,对于没有文件系统的设备可不配置。 -6. vendor/company/product/BUILD.gn +6. **vendor/company/product/BUILD.gn** 产品编译的入口,主要用于编译解决方案厂商源码和拷贝启动配置文件。如果某个产品被选择为要编译的产品,那么对应产品目录下的BUILD.gn会默认编译。一个典型的产品编译BUILD.gn应该如下: @@ -379,3 +415,582 @@ vendor ``` +## 使用指导 + +### 前提条件 + +开发环境需安装gn、ninja构建工具、python 3.7.4及以上和hb。安装方法请见[搭建系统基础环境](../quick-start/搭建系统环境.md)。 + +### hb工具使用说明 + +hb是OpenHarmony的命令行工具,用来执行编译命令。以下对hb的常用命令进行说明。 + +**hb set** + +``` +hb set -h +usage: hb set [-h] [-root [ROOT_PATH]] [-p] + +optional arguments: + -h, --help show this help message and exit + -root [ROOT_PATH], --root_path [ROOT_PATH] + Set OHOS root path + -p, --product Set OHOS board and kernel +``` + +- hb set 后无参数,进入默认设置流程 +- hb set -root dir可直接设置代码根目录 +- hb set -p设置要编译的产品 + +**hb env** + +查看当前设置信息 + +``` +hb env +[OHOS INFO] root path: xxx +[OHOS INFO] board: hispark_taurus +[OHOS INFO] kernel: liteos +[OHOS INFO] product: ipcamera +[OHOS INFO] product path: xxx/vendor/hisilicon/ipcamera +[OHOS INFO] device path: xxx/device/hisilicon/hispark_taurus/sdk_linux_4.19 +``` + +**hb build** + +``` +hb build -h +usage: hb build [-h] [-b BUILD_TYPE] [-c COMPILER] [-t [TEST [TEST ...]]] + [--dmverity] [--tee] [-p PRODUCT] [-f] [-n] + [-T [TARGET [TARGET ...]]] [-v] [-shs] [--patch] + [component [component ...]] + +positional arguments: + component name of the component + +optional arguments: + -h, --help show this help message and exit + -b BUILD_TYPE, --build_type BUILD_TYPE + release or debug version + -c COMPILER, --compiler COMPILER + specify compiler + -t [TEST [TEST ...]], --test [TEST [TEST ...]] + compile test suit + --dmverity Enable dmverity + --tee Enable tee + -p PRODUCT, --product PRODUCT + build a specified product with + {product_name}@{company}, eg: camera@huawei + -f, --full full code compilation + -n, --ndk compile ndk + -T [TARGET [TARGET ...]], --target [TARGET [TARGET ...]] + Compile single target + -v, --verbose show all command lines while building + -shs, --sign_haps_by_server + sign haps by server + --patch apply product patch before compiling + + --dmverity Enable dmverity + -p PRODUCT, --product PRODUCT + build a specified product with + {product_name}@{company}, eg: ipcamera@hisilcon + -f, --full full code compilation + -T [TARGET [TARGET ...]], --target [TARGET [TARGET ...]] + Compile single target +``` + +- hb build后无参数,会按照设置好的代码路径、产品进行编译,编译选项使用与之前保持一致。-f 选项将删除当前产品所有编译产品,等同于hb clean + hb build. +- hb build \{component\_name\}:基于设置好的产品对应的单板、内核,单独编译组件(e.g.:hb build kv\_store\)。 +- hb build -p ipcamera@hisilicon:免set编译产品,该命令可以跳过set步骤,直接编译产品。 +- 在device/device\_company/board下单独执行hb build会进入内核选择界面,选择完成后会根据当前路径的单板、选择的内核编译出仅包含内核、驱动的镜像。 + +**hb clean** + +清除out目录对应产品的编译产物,仅保留args.gn、build.log。清除指定路径可输入路径参数:hb clean out/board/product,默认将清除当前hb set的产品对应out路径。 + +``` +hb clean +usage: hb clean [-h] [out_path] + +positional arguments: + out_path clean a specified path. + +optional arguments: + -h, --help show this help message and exit +``` + +### 新增组件 + +本小节介绍如何新增一个组件,首先确定组件归属的子系统和组件名称,然后按如下步骤新增: + +1. 源码开发完成后,添加组件编译脚本。 + + 以编译组件hello\_world可执行文件为例,applications/sample/hello\_world/BUILD.gn可以写为: + + ``` + executable("hello_world") { + include_dirs = [ + "include", + ] + sources = [ + "src/hello_world.c" + ] + } + ``` + + 如上编译脚本,可编译出一个可在OpenHarmony上运行的名为hello\_world的可执行文件。 + + 单独编译该组件,hb set任意选择一款产品,然后使用-T选项单独编译组件: + + ``` + hb build -f -T //applications/sample/hello_world + ``` + + 组件在开发板上功能验证完成后,可按[步骤2\~4](#li11471037297)将组件配置到产品中。 + +2. 添加组件描述。 + + 组件描述位于build/lite/components下,新增的组件需加入对应子系统的json文件中。一个组件描述必选的字段有: + + - component:组件名称。 + - description:组件的一句话功能描述。 + - optional:组件是否为系统可选。 + - dirs:组件源码路径。 + - targets:组件编译入口。 + + 以将hello\_world组件加入应用子系统为例,在applications.json中添加hello\_world对象: + + ``` + { + "components": [ + { + "component": "hello_world", + "description": "Hello world.", + "optional": "true", + "dirs": [ + "applications/sample/hello_world" + ], + "targets": [ + "//applications/sample/hello_world" + ] + }, + ... + ] + } + ``` + +3. 将组件配置到产品。 + + 产品的配置文件config.json位于位于vendor/company/product/下,产品配置文件需包含产品名称、OpenHarmony版本号、device厂商、开发板、内核类型、内核版本号,以及配置的子系统和组件。以将hello\_world组件加入产品配置文件my\_product.json中为例,加入hello\_wolrd对象: + + ``` + { + "product_name": "hello_world_test", + "ohos_version": "OpenHarmony 1.0", + "device_company": "hisilicon", + "board": "hispark_taurus", + "kernel_type": "liteos_a", + "kernel_version": "1.0.0", + "subsystems": [ + { + "subsystem": "applications", + "components": [ + { "component": "hello_world", "features":[] } + ] + }, + ... + ] + } + ``` + +4. 编译产品。 + + 1. 代码根目录输入hb set选择对应产品。 + + 2. 执行hb build。 + + +### 新增芯片解决方案 + +编译构建支持添加新的芯片解决方案厂商,具体步骤如下: + +1. 创建芯片解决方案目录。 + + 按照[芯片解决方案配置规则](#section1625463413327)创建目录,以芯片厂商realtek的“rtl8720“开发板为例, 在代码根目录执行: + + ``` + mkdir -p device/realtek/rtl8720 + ``` + +2. 创建内核适配目录,并编写开发板编译配置config.gni文件。 + + 以realtek的“rtl8720“开发板的liteos\_m适配为例,device/realtek/rtl8720/liteos\_a/config.gni的内容如下: + + ``` + # Kernel type, e.g. "linux", "liteos_a", "liteos_m". + kernel_type = "liteos_a" + + # Kernel version. + kernel_version = "3.0.0" + + # Board CPU type, e.g. "cortex-a7", "riscv32". + board_cpu = "real-m300" + + # Board arch, e.g. "armv7-a", "rv32imac". + board_arch = "" + + # Toolchain name used for system compiling. + # E.g. gcc-arm-none-eabi, arm-linux-harmonyeabi-gcc, ohos-clang, riscv32-unknown-elf. + # Note: The default toolchain is "ohos-clang". It's not mandatory if you use the default toochain. + board_toolchain = "gcc-arm-none-eabi" + + # The toolchain path instatlled, it's not mandatory if you have added toolchian path to your ~/.bashrc. + board_toolchain_path = + rebase_path("//prebuilts/gcc/linux-x86/arm/gcc-arm-none-eabi/bin", + root_build_dir) + + # Compiler prefix. + board_toolchain_prefix = "gcc-arm-none-eabi-" + + # Compiler type, "gcc" or "clang". + board_toolchain_type = "gcc" + + # Board related common compile flags. + board_cflags = [] + board_cxx_flags = [] + board_ld_flags = [] + ``` + +3. 编写编译脚本。 + + 在开发板目录下创建BUILD.gn,target名称应与开发板名称一致。以realtek的rtl8720开发板为例,device/realtek/rtl8720/BUILD.gn内容可以是: + + ``` + group("rtl8720") { # target类型也可以shared_library, static_library, executable + # 具体内容 + ...... + } + ``` + +4. 编译芯片解决方案。 + + 在开发板目录下执行hb build,即可启动芯片解决方案的编译。 + + +### 新增产品解决方案 + +编译构建支持芯片解决方案和组件的灵活拼装,形成定制化的产品解决方案。具体步骤如下: + +1. 创建产品目录 + + 按照[产品解决方案配置规则](#section1625463413327)创建产品目录,以基于“rtl8720“开发板的wifiiot模组为例,在代码根目录执行: + + ``` + mkdir -p vendor/my_company/wifiiot + ``` + +2. 拼装产品 + + 在新建的产品目录下新建config.json文件,以步骤1中的wifiiot为例,vendor/my\_company/wifiiot/config.json可以是: + + ``` + { + "product_name": "wifiiot", # 产品名称 + "ohos_version": "OpenHarmony 1.0", # 使用的OS版本 + "device_company": "realtek", # 芯片解决方案厂商名称 + "board": "rtl8720", # 开发板名称 + "kernel_type": "liteos_m", # 选择的内核类型 + "kernel_version": "3.0.0", # 选择的内核版本 + "subsystems": [ + { + "subsystem": "kernel", # 选择的子系统 + "components": [ + { "component": "liteos_m", "features":[] } # 选择的组件和组件特性 + ] + }, + ... + { + 更多子系统和组件 + } + ] + } + ``` + + 注意:编译构建系统编译前会对device\_company,board,kernel\_type,kernel\_version、subsystem、component字段进行有效性检查,其中device\_company,board,kernel\_type,kernel\_version应与已知的芯片解决方案匹配,subsystem、component应与build/lite/components下的组件描述匹配。 + +3. 适配OS接口 + + 在产品目录下创建hals目录,并将产品解决方案对OS适配的源码和编译脚本放入该目录下。 + +4. 配置系统服务 + + 在产品目录下创建init\_configs目录,并在init\_configs目录下创建init.cfg文件,按需配置要启动的系统服务。 + +5. 配置init进程(仅linux内核需要) + + 在init\_configs目录下创建etc目录,然后在etc下创建init.d文件夹和fstab文件。最后按产品需求在init.d文件下创建并编辑rcS文件和Sxxx文件。 + +6. 配置文件系统镜像(可选,仅支持文件系统的开发板需要) + + 在产品目录下创建fs.yml文件。fs.yml需按产品实际情况配置,一个典型的fs.yml文件如下: + + ``` + - + fs_dir_name: rootfs # 镜像的名称 + fs_dirs: + - + # 将编译生成的out/my_board/my_product/bin目录下的文件拷贝到rootfs/bin中,并忽略测试bin + source_dir: bin + target_dir: bin + ignore_files: + - Test.bin + - TestSuite.bin + - + # 将编译生成的out/my_board/my_product/libs目录下的文件拷贝到rootfs/lib中,忽略所有.a文件,并设置文件和文件夹的权限为644和755 + source_dir: libs + target_dir: lib + ignore_files: + - .a + dir_mode: 755 + file_mode: 644 + - + source_dir: usr/lib + target_dir: usr/lib + ignore_files: + - .a + dir_mode: 755 + file_mode: 644 + - + source_dir: config + target_dir: etc + - + source_dir: system + target_dir: system + - + source_dir: sbin + target_dir: sbin + - + source_dir: usr/bin + target_dir: usr/bin + - + source_dir: usr/sbin + target_dir: usr/sbin + - + # 创建一个proc空目录 + target_dir: proc + - + target_dir: mnt + - + target_dir: opt + - + target_dir: tmp + - + target_dir: var + - + target_dir: sys + - + source_dir: etc + target_dir: etc + - + source_dir: vendor + target_dir: vendor + - + target_dir: storage + + fs_filemode: + - + file_dir: lib/ld-uClibc-0.9.33.2.so + file_mode: 555 + - + file_dir: lib/ld-2.24.so + file_mode: 555 + - + file_dir: etc/init.cfg + file_mode: 400 + fs_symlink: + - + # 在rootfs/lib下创建软连接ld-musl-arm.so.1 -> libc.so + source: libc.so + link_name: ${fs_dir}/lib/ld-musl-arm.so.1 + - + source: mksh + link_name: ${fs_dir}/bin/sh + - + source: mksh + link_name: ${fs_dir}/bin/shell + fs_make_cmd: + # 使用脚本将rootfs制作为ext4格式的image + - ${root_path}/build/lite/make_rootfs/rootfsimg_linux.sh ${fs_dir} ext4 + - + fs_dir_name: userfs + fs_dirs: + - + source_dir: storage/etc + target_dir: etc + - + source_dir: data + target_dir: data + fs_make_cmd: + - ${root_path}/build/lite/make_rootfs/rootfsimg_linux.sh ${fs_dir} ext4 + + ``` + +7. 配置产品Patch(可选,视产品涉及组件是否需要打补丁而定) + + 在产品目录下创建patch.yml文件。patch.yml需按产品实际情况配置,一个典型的patch.yml文件如下: + + ``` + # 需要打patch的路径 + foundation/communication/dsoftbus: + # 该路径下需要打的patch存放路径 + - foundation/communication/dsoftbus/1.patch + - foundation/communication/dsoftbus/2.patch + third_party/wpa_supplicant: + - third_party/wpa_supplicant/1.patch + - third_party/wpa_supplicant/2.patch + - third_party/wpa_supplicant/3.patch + ... + ``` + + 配置完成后,编译时增加--patch参数,即可在产品编译前将配置的Patch文件打到对应目录中,再进行编译: + + ``` + hb build -f --patch + ``` + +8. 编写编译脚本 + + 在产品目录下创建BUILD.gn文件,按产品实际情况编写脚本。以步骤1中的wifiiot为例,BUILD.gn示例如下: + + ``` + group("wifiiot") { # target名称与产品名一致 + deps = [] + # 拷贝init配置 + deps += [ "init_configs" ] + # 将hals加入编译 + deps += [ "hals" ] + # 其他 + ...... + } + ``` + +9. 编译产品。 + + 在代码根目录执行hb set按提示选择新增的产品,然后执行hb build即可启动编译。 + + +## 常见问题 + +### ninja版本问题导致编译失败 + +- **现象描述:** + + 编译失败,提示“usr/sbin/ninja: invalid option -- w”。 + +- **可能原因:** + + 编译环境中ninja版本太低,不支持--w选项。 + +- **解决办法:** + + 卸载环境中ninja和gn,按照HarmonyOS官网[获取工具](../get-code/IDE.md)。 + + +### ncurses库缺失导致编译失败 + +- **现象描述:** + + 编译失败,提示“/usr/bin/ld: cannot find -lncurses”。 + +- **可能原因:** + + 编译环境ncurses库缺失。 + +- **解决办法:** + + ``` + sudo apt-get install lib32ncurses5-dev + ``` + + +### 未安装mcopy导致编译失败 + +- **现象描述:** + + ​编译失败,提示“line 77: mcopy: command not found”。 + +- **可能原因:** + + 编译环境未安装mcopy。 + +- **解决办法:** + + ``` + ​sudo apt-get install dosfstools mtools + ``` + + +### 权限问题导致编译失败 + +- **现象描述:** + + 编译失败,提示“riscv32-unknown-elf-gcc: error trying to exec 'cc1': execvp: No such file or directory”。 + +- ​**可能原因:** + + 当前用户对riscv编译器路径下的文件访问权限不够。 + +- ​**解决办法:** + + 查询gcc\_riscv32所在目录。 + + ``` + which riscv32-unknown-elf-gcc + ``` + + 使用chmod命令修改目录权限为755。 + + +### 未安装Crypto导致编译失败 + +- **现象描述:** + + 编译失败,提示“No module named 'Crypto'”。 + +- **可能原因:** + + python3未安装Crypto。 + +- **解决办法:** + 1. 查询Python版本号。 + + ``` + python3 --version + ``` + + 2. 需使用python3.7以上版本,然后安装pycryptodome。 + + ``` + sudo pip3 install pycryptodome + ``` + + + +### 编译环境为shell导致编译失败 + +- **现象描述:** + + 编译失败:“xx.sh \[: xx unexpected operator”。 + +- **可能原因:** + + 编译环境shell不是bash。 + +- **解决办法:** + + ``` + sudo rm -rf /bin/sh + sudo ln -s /bin/bash /bin/sh + ``` + + diff --git "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\270\270\350\247\201\351\227\256\351\242\230.md" "b/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\270\270\350\247\201\351\227\256\351\242\230.md" deleted file mode 100755 index ca00b242854..00000000000 --- "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\345\270\270\350\247\201\351\227\256\351\242\230.md" +++ /dev/null @@ -1,121 +0,0 @@ -# 编译构建常见问题 - -- [由于ninja版本问题导致编译失败](#section1019152312222) -- [由于ncurses库缺失导致编译失败](#section21449422618) -- [由于未安装mcopy导致编译失败](#section12477184992615) -- [由于权限问题导致编译失败](#section178451337202716) -- [由于未安装Crypto导致编译失败](#section1241481172819) -- [由于编译环境为shell导致编译失败](#section3691222152919) - -## 由于ninja版本问题导致编译失败 - -- **现象描述:** - - 编译失败,提示“usr/sbin/ninja: invalid option -- w”。 - -- **可能原因:** - - 编译环境中ninja版本太低,不支持--w选项。 - -- **解决办法:** - - 卸载环境中ninja和gn,按照HarmonyOS官网[获取工具](../get-code/获取工具.md)。 - - -## 由于ncurses库缺失导致编译失败 - -- **现象描述:** - - 编译失败,提示“/usr/bin/ld: cannot find -lncurses”。 - -- **可能原因:** - - 编译环境ncurses库缺失。 - -- **解决办法:** - - ``` - sudo apt-get install lib32ncurses5-dev - ``` - - -## 由于未安装mcopy导致编译失败 - -- **现象描述:** - - ​编译失败,提示“line 77: mcopy: command not found”。 - -- **可能原因:** - - 编译环境未安装mcopy。 - -- **解决办法:** - - ``` - ​sudo apt-get install dosfstools mtools - ``` - - -## 由于权限问题导致编译失败 - -- **现象描述:** - - 编译失败,提示“riscv32-unknown-elf-gcc: error trying to exec 'cc1': execvp: No such file or directory”。 - -- ​**可能原因:** - - 当前用户对riscv编译器路径下的文件访问权限不够。 - -- ​**解决办法:** - 1. 查询gcc\_riscv32所在目录。 - - ``` - which riscv32-unknown-elf-gcc - ``` - - 2. 使用chmod命令修改目录权限为755。 - - -## 由于未安装Crypto导致编译失败 - -- **现象描述:** - - 编译失败,提示“No module named 'Crypto'”。 - -- **可能原因:** - - python3未安装Crypto。 - -- **解决办法:** - 1. 查询Python版本号。 - - ``` - python3 --version - ``` - - 2. 需使用python3.7以上版本,然后安装pycryptodome。 - - ``` - sudo pip3 install pycryptodome - ``` - - - -## 由于编译环境为shell导致编译失败 - -- **现象描述:** - - 编译失败:“xx.sh \[: xx unexpected operator”。 - -- **可能原因:** - - 编译环境shell不是bash。 - -- **解决办法:** - - ``` - sudo rm -rf /bin/sh - sudo ln -s /bin/bash /bin/sh - ``` - - diff --git "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\346\246\202\350\277\260-0.md" "b/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\346\246\202\350\277\260-0.md" deleted file mode 100755 index 1bd7dd28d93..00000000000 --- "a/zh-cn/device-dev/subsystems/\347\274\226\350\257\221\346\236\204\345\273\272\346\246\202\350\277\260-0.md" +++ /dev/null @@ -1,58 +0,0 @@ -# 编译构建概述 - -- [基本概念](#section175012297491) -- [运作机制](#section193961322175011) -- [约束与限制](#section2029921310472) - -编译构建子系统提供了一个基于gn和ninja的编译构建框架。主要提供以下功能: - -- 构建不同芯片平台的产品。如:Hi3516DV300平台。 - -- 根据产品配置可以按照组件组装打包产品需要的能力。 - -## 基本概念 - -在了解编译构建子系统的能力前,应了解如下基本概念: - -- 平台 - - 开发板和内核的组合,不同平台支持的子系统和组件不同。 - -- 子系统 - - OpenHarmony整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统 \> 子系统 \> 组件”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的子系统或组件。子系统是一个逻辑概念,它具体由对应的组件构成。 - -- 组件 - - 对子系统的进一步拆分,可复用的软件单元,它包含源码、配置文件、资源文件和编译脚本;能独立构建,以二进制方式集成,具备独立验证能力的二进制单元。 - -- gn - - Generate ninja的缩写,用于产生ninja文件。 - -- ninja - - ninja是一个专注于速度的小型构建系统。 - - -## 运作机制 - -OpenHarmony侧的编译构建流程主要包括编译命令行解析,调用gn,执行ninja: - -- 命令行解析:解析待编译的产品名称,加载相关配置。 -- 调用gn: 根据命令行解析的产品名称和编译类型,配置编译工具链和全局的编译选项。 -- 执行ninja:启动编译并生成对应的产品版本。 - -## 约束与限制 - -- 需按照[源码获取](../get-code/源码获取.md)指导下载全量源码(采用方式三获取)。 -- 编译环境需要Ubuntu18.04及以上版本。 -- 安装编译所需的程序包。 - - 安装命令: - - ``` - sudo apt-get install binutils git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 - ``` - - diff --git "a/zh-cn/device-dev/subsystems/\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237\347\274\226\350\257\221\346\236\204\345\273\272\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237\347\274\226\350\257\221\346\236\204\345\273\272\346\214\207\345\257\274.md" deleted file mode 100755 index e85c33895c2..00000000000 --- "a/zh-cn/device-dev/subsystems/\350\275\273\351\207\217\345\222\214\345\260\217\345\236\213\347\263\273\347\273\237\347\274\226\350\257\221\346\236\204\345\273\272\346\214\207\345\257\274.md" +++ /dev/null @@ -1,9 +0,0 @@ -# 轻量和小型系统编译构建指导 - -- **[编译构建概述](编译构建概述.md)** - -- **[编译构建使用指导](编译构建使用指导.md)** - -- **[编译构建常见问题](编译构建常见问题.md)** - - diff --git "a/zh-cn/device-dev/quick-start/\345\257\274\350\257\273.md" "b/zh-cn/device-dev/\345\257\274\350\257\273.md" old mode 100755 new mode 100644 similarity index 83% rename from "zh-cn/device-dev/quick-start/\345\257\274\350\257\273.md" rename to "zh-cn/device-dev/\345\257\274\350\257\273.md" index 95d9b60b723..84691053b2b --- "a/zh-cn/device-dev/quick-start/\345\257\274\350\257\273.md" +++ "b/zh-cn/device-dev/\345\257\274\350\257\273.md" @@ -30,6 +30,9 @@ OpenHarmony也提供了一系列可选的系统组件,方便设备开发者按 ## 文档导读 +- [轻量和小型系统开发指导](#table3762949121211) +- [标准系统开发指导](#table17667535516) + **表 1** 轻量和小型系统开发指导(参考内存<128MB) @@ -45,49 +48,49 @@ OpenHarmony也提供了一系列可选的系统组件,方便设备开发者按

    整体认知OpenHarmony

    - +

    获取开发资源

    准备开发前相关资源

    - +

    快速入门

    快速熟悉OpenHarmony环境搭建、编译、烧录、调测、运行。

    -

    轻量和小型系统快速入门

    +

    轻量和小型系统快速入门

    基础能力使用

    使用OpenHarmony提供的基础能力

    - +

    进阶开发

    结合系统能力开发智能设备

    - +

    移植适配

    • 针对特定芯片做移植适配
    • 对三方库进行移植适配
    - +

    贡献组件

    OpenHarmony贡献功能组件

    - +

    参考

    @@ -115,49 +118,49 @@ OpenHarmony也提供了一系列可选的系统组件,方便设备开发者按

    整体认知OpenHarmony

    - +

    获取开发资源

    准备开发前相关资源

    - +

    快速入门

    快速熟悉OpenHarmony环境搭建、编译、烧录、调测、运行。

    -

    标准系统快速入门

    +

    标准系统快速入门

    基础能力使用

    使用OpenHarmony提供的基础能力

    - +

    进阶开发

    结合系统能力开发智能设备

    - +

    移植适配

    对三方库进行移植适配

    -

    三方库移植指导

    +

    三方库移植指导

    贡献组件

    OpenHarmony贡献功能组件

    - +

    参考

    diff --git a/zh-cn/readme.md b/zh-cn/readme.md index 78b1dc6acf6..b2c4e67dca5 100644 --- a/zh-cn/readme.md +++ b/zh-cn/readme.md @@ -7,7 +7,7 @@ - [Openharmony概述](OpenHarmony-Overview_zh.md) - 轻量和小型系统开发指导(参考内存<128MB) - 设备开发 - - overview:[设备开发导读](device-dev/quick-start/导读.md) + - overview:[设备开发导读](device-dev/导读.md) - quick-start:[快速入门](device-dev/quick-start/Readme-CN.md)(搭建环境、获取源码、编译、烧录等) - 开发基础能力 - Kernel:[轻量和小型系统内核](device-dev/kernel/轻量和小型系统内核.md) @@ -31,7 +31,7 @@ - 标准系统开发指导(参考内存≥128MB) - 设备开发 - - overview:[设备开发导读](device-dev/quick-start/导读.md) + - overview:[设备开发导读](device-dev/导读.md) - quick-start:[快速入门](device-dev/quick-start/Readme-CN.md)(搭建环境、获取源码、编译、烧录等) - 开发基础能力 - Kernel:[标准系统内核](device-dev/kernel/标准系统内核.md) @@ -40,7 +40,7 @@ - Security:[隐私与安全](device-dev/security/Readme-CN.md) - guide:[开发示例](device-dev/guide/Readme-CN.md) - - [时钟应用](device-dev/guide/时钟应用开发示例.md) + - [时钟应用](device-dev/guide/时钟应用开发指导.md) - [平台驱动](device-dev/guide/平台驱动开发示例.md) - [外设驱动](device-dev/guide/外设驱动开发示例.md) -- Gitee From 7242e656f4f68a1ec3b33f7beea2b1e6185fea1a Mon Sep 17 00:00:00 2001 From: duangavin123 Date: Wed, 14 Jul 2021 10:29:51 +0800 Subject: [PATCH 2/3] =?UTF-8?q?update=20=E5=AF=BC=E5=85=A5OpenHarmony?= =?UTF-8?q?=E5=B7=A5=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: duangavin123 --- en/device-dev/overview.md | 18 +++++++++--------- "zh-cn/device-dev/\345\257\274\350\257\273.md" | 6 +++--- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/en/device-dev/overview.md b/en/device-dev/overview.md index 7f0112d8696..4a5832db5a9 100644 --- a/en/device-dev/overview.md +++ b/en/device-dev/overview.md @@ -30,8 +30,8 @@ In addition, OpenHarmony provides a series of optional system components that ca ## Document Outline -- [Mini and small system development guidelines](#table3762949121211) -- [Standard system development guidelines](#table17667535516) +- [Mini and Small System Development Guidelines](#table3762949121211) +- [Standard System Development Guidelines](#table17667535516) **Table 1** Mini and small system development guidelines \(reference memory < 128 MB\) @@ -62,7 +62,7 @@ In addition, OpenHarmony provides a series of optional system components that ca

    Getting started with setup, build, burning, debugging, and running of OpenHarmony

    -

    Getting Started for Mini and Small Systems

    +

    Getting Started for Mini and Small Systems

    Basic capabilities

    @@ -114,9 +114,9 @@ In addition, OpenHarmony provides a series of optional system components that ca -

    About OpenHarmony

    +

    About OpenHarmony

    -

    Getting familiar with OpenHarmony

    +

    Getting familiar with OpenHarmony

    @@ -132,12 +132,12 @@ In addition, OpenHarmony provides a series of optional system components that ca

    Getting started with setup, build, burning, debugging, and running of OpenHarmony

    -

    Getting Started for Standard System

    +

    Getting Started for Standard System

    Basic capabilities

    -

    Using basic capabilities of OpenHarmony

    +

    Using basic capabilities of OpenHarmony

    @@ -146,7 +146,7 @@ In addition, OpenHarmony provides a series of optional system components that ca

    Developing smart devices based on system capabilities

    - +

    Porting and adaptation

    @@ -158,7 +158,7 @@ In addition, OpenHarmony provides a series of optional system components that ca

    Contributing components

    -

    Contributing components to OpenHarmony

    +

    Contributing components to OpenHarmony

    diff --git "a/zh-cn/device-dev/\345\257\274\350\257\273.md" "b/zh-cn/device-dev/\345\257\274\350\257\273.md" index 84691053b2b..5927fe29580 100644 --- "a/zh-cn/device-dev/\345\257\274\350\257\273.md" +++ "b/zh-cn/device-dev/\345\257\274\350\257\273.md" @@ -62,7 +62,7 @@ OpenHarmony也提供了一系列可选的系统组件,方便设备开发者按

    快速熟悉OpenHarmony环境搭建、编译、烧录、调测、运行。

    -

    轻量和小型系统快速入门

    +

    轻量和小型系统入门

    基础能力使用

    @@ -132,7 +132,7 @@ OpenHarmony也提供了一系列可选的系统组件,方便设备开发者按

    快速熟悉OpenHarmony环境搭建、编译、烧录、调测、运行。

    -

    标准系统快速入门

    +

    标准系统入门

    基础能力使用

    @@ -146,7 +146,7 @@ OpenHarmony也提供了一系列可选的系统组件,方便设备开发者按

    结合系统能力开发智能设备

    - +

    移植适配

    -- Gitee From 6846d152bd111b76f9f08e74ef5e621d50395ef9 Mon Sep 17 00:00:00 2001 From: duangavin123 Date: Wed, 14 Jul 2021 11:07:36 +0800 Subject: [PATCH 3/3] =?UTF-8?q?update=20=E5=AF=BC=E5=85=A5OpenHarmony?= =?UTF-8?q?=E5=B7=A5=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: duangavin123 --- ...00\345\217\221\346\214\207\345\257\274.md" | 139 +++++++++ zh-cn/device-dev/subsystems/Readme-CN.md | 6 + ...0\345\255\220\347\263\273\347\273\237.png" | Bin 0 -> 25609 bytes ...77\347\224\250\346\214\207\345\257\274.md" | 18 +- .../subsystems/\345\256\211\345\205\250.md" | 11 + ...00\345\217\221\346\214\207\345\257\274.md" | 228 +++++++++++++++ ...00\345\217\221\346\214\207\345\257\274.md" | 272 ++++++++++++++++++ .../subsystems/\346\246\202\350\277\260-2.md" | 76 +++++ 8 files changed, 736 insertions(+), 14 deletions(-) create mode 100644 "zh-cn/device-dev/subsystems/IPC\351\200\232\344\277\241\351\211\264\346\235\203\345\274\200\345\217\221\346\214\207\345\257\274.md" create mode 100644 "zh-cn/device-dev/subsystems/figures/\345\256\211\345\205\250\345\255\220\347\263\273\347\273\237.png" create mode 100644 "zh-cn/device-dev/subsystems/\345\256\211\345\205\250.md" create mode 100644 "zh-cn/device-dev/subsystems/\345\272\224\347\224\250\346\235\203\351\231\220\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" create mode 100644 "zh-cn/device-dev/subsystems/\345\272\224\347\224\250\351\252\214\347\255\276\345\274\200\345\217\221\346\214\207\345\257\274.md" create mode 100644 "zh-cn/device-dev/subsystems/\346\246\202\350\277\260-2.md" diff --git "a/zh-cn/device-dev/subsystems/IPC\351\200\232\344\277\241\351\211\264\346\235\203\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/IPC\351\200\232\344\277\241\351\211\264\346\235\203\345\274\200\345\217\221\346\214\207\345\257\274.md" new file mode 100644 index 00000000000..a0c52fc9c75 --- /dev/null +++ "b/zh-cn/device-dev/subsystems/IPC\351\200\232\344\277\241\351\211\264\346\235\203\345\274\200\345\217\221\346\214\207\345\257\274.md" @@ -0,0 +1,139 @@ +# IPC通信鉴权开发指导 + +- [场景介绍](#section18502174174019) +- [接口说明](#section1633115419401) +- [开发步骤](#section022611498210) +- [常见问题](#section15729104510271) + +## 场景介绍 + +系统服务通过IPC跨进程方式开放的接口,需要对接口调用者进行鉴权操作。在Samgr中注册的系统服务,可以通过进程间通信的方式暴露接口给其他进程访问,同时需要配置相应的访问策略,当其他进程访问这些接口时,将会触发IPC通信鉴权机制校验访问进程是否拥有权限访问该接口,若无权限,则访问会被拒绝。 + +当开发一个系统服务时,如果需要对外开放某些接口,开发者可以通过IPC通信鉴权组件配置这些接口的访问策略。当其他服务通过IPC方式访问这些接口时,会触发Samgr服务调用IPC通信鉴权组件的接口检查调用者服务是否有权限调用该接口。 + +## 接口说明 + +IPC通信鉴权提供的API,仅供Samgr调用,开发者在开发服务时需要配置对应的访问策略,Samgr会调用如下接口获取和检查调用者是否具有正确的访问权限,提供的API列表如下。 + +**表 1** IPC通信鉴权API接口功能介绍 + + + + + + + + + + + + + +

    接口名

    +

    描述

    +

    int GetCommunicationStrategy(RegParams params, PolicyTrans **policies, unsigned int *policyNum)

    +

    服务注册过程中查询调用接口对应的访问策略,仅供Samgr调用

    +

    int IsCommunicationAllowed(AuthParams params)

    +

    检查访问主体进程是否有权限调用受访客体进程的接口,仅供Samgr调用

    +
    + +## 开发步骤 + +本部分以BMS服务通过IPC通信方式对外开放接口为例,讲解如何通过IPC通信鉴权组件配置对应接口的访问策略。这里BMS在Samgr中注册的service为bundlems,为开放的接口注册的Feature为BmsFeature。 + +1. 在源码路径下的头文件base/security/permission/services/permission\_lite/ipc\_auth/include/policy\_preset.h中配置相应的访问策略,访问策略主要有三种类型: + + (1)type为RANGE类型:允许某个特定范围UID的进程访问,需要指定uidMin和uidMax; + + (2)type为FIXED类型:允许指定的几个UID的进程访问,需要指定fixedUid,最多配置8个; + + (3)type为BUNDLENAME类型:只允许特定的应用访问,需要指定bundleName(包名); + + ``` + FeaturePolicy bmsFeature[] = { + { + "BmsFeature", + { + { + .type=FIXED, // 允许指定UID的进程访问的方式 + .fixedUid={2, 3, 8} + }, + { + .type=RANGE, // 允许特定范围内的UID的进程访问的方式 + .uidMin=100, + .uidMax=__INT_MAX__, + }, + } + }, + { + "BmsInnerFeature", + { + { + .type=FIXED, // 允许指定UID的进程访问的方式 + .fixedUid={2, 3, 8} + }, + { + .type=RANGE, + .uidMin=100, + .uidMax=999, + }, + } + }, + }; + ``` + +2. 将步骤1中定义的Feature的策略加配到全局策略中,需要配置feature数量; + + ``` + static PolicySetting g_presetPolicies[] = { + {"permissionms", pmsFeature, 1}, + {"abilityms", amsFeature, 2}, + {"bundlems", bmsFeature, 2}, // 步骤1定义的BMS的feature,数量为2 + {"dtbschedsrv", dmsFeature, 1}, + {"samgr", samgrFeature, 1}, + {"appspawn", appspawnFeature, 1}, + {"WMS", wmsFeature, 1}, + {"bundle_daemon", bdsFeature, 1}, + }; + ``` + +3. 将步骤1中定义的BmsFeature注册到Samgr; + + ``` + const char BMS_SERVICE[] = "bundlems"; + const char BMS_FEATURE[] = "BmsFeature"; + static void Init() + { + SamgrLite *sm = SAMGR_GetInstance(); + if (sm == nullptr) { + return; + } + // 注册服务到Samgr + sm->RegisterFeature(BMS_SERVICE, reinterpret_cast(BundleMsFeature::GetInstance())); + sm->RegisterFeatureApi(BMS_SERVICE, BMS_FEATURE, + GetBmsFeatureApi(reinterpret_cast(BundleMsFeature::GetInstance()))); + HILOG_DEBUG(HILOG_MODULE_APP, "BundleMS feature start success"); + } + APP_FEATURE_INIT(Init); + ``` + + +完成以上开发步骤后,开发者在Samgr注册服务时,Samgr会调用IPC通信鉴权组件的GetCommunicationStrategy接口获取服务的访问策略;当其他服务或应用通过IPC方式访问这些服务时,Samgr会调用IPC通信鉴权组件的IsCommunicationAllowed接口检查调用者服务的权限,如果满足访问策略,则可以访问开发者接口,否则拒绝访问。 + +## 常见问题 + +- 开发新服务后,在Samgr注册失败问题 + + **现象描述** + + 开发完新服务后,在启动时出现服务在Samgr注册失败问题。 + + **可能原因** + + 服务注册过程中,Samgr需要从IPC通信鉴权模块获取该服务的访问策略,但是未在该模块配置该服务的UID。 + + **解决办法** + + 在base/security/permission/services/permission\_lite/ipc\_auth/src/ipc\_auth\_impl.c中配置有效的服务的UID。 + + diff --git a/zh-cn/device-dev/subsystems/Readme-CN.md b/zh-cn/device-dev/subsystems/Readme-CN.md index 613d2a00644..5faf0b71414 100755 --- a/zh-cn/device-dev/subsystems/Readme-CN.md +++ b/zh-cn/device-dev/subsystems/Readme-CN.md @@ -59,6 +59,12 @@ - [开发实例](开发实例.md) - [OTA升级](OTA升级.md) +- [安全](安全.md) + - [概述](概述-2.md) + - [应用验签开发指导](应用验签开发指导.md) + - [应用权限管理开发指导](应用权限管理开发指导.md) + - [IPC通信鉴权开发指导](IPC通信鉴权开发指导.md) + - [启动恢复](启动恢复.md) - [启动恢复子系统概述](启动恢复子系统概述.md) - [init启动引导组件](init启动引导组件.md) diff --git "a/zh-cn/device-dev/subsystems/figures/\345\256\211\345\205\250\345\255\220\347\263\273\347\273\237.png" "b/zh-cn/device-dev/subsystems/figures/\345\256\211\345\205\250\345\255\220\347\263\273\347\273\237.png" new file mode 100644 index 0000000000000000000000000000000000000000..68b98482855637206e94bbd373623dc182a04474 GIT binary patch literal 25609 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 Xy)mDAS%IIkpwibi)~dL5H}ro2_G;)g literal 0 HcmV?d00001 diff --git "a/zh-cn/device-dev/subsystems/hdc_std-\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/hdc_std-\344\275\277\347\224\250\346\214\207\345\257\274.md" index 9b14f7c438a..d1860571a43 100644 --- "a/zh-cn/device-dev/subsystems/hdc_std-\344\275\277\347\224\250\346\214\207\345\257\274.md" +++ "b/zh-cn/device-dev/subsystems/hdc_std-\344\275\277\347\224\250\346\214\207\345\257\274.md" @@ -2,7 +2,7 @@ - [环境准备](#section05992022154916) - [注意事项](#section19543134915210) -- [全局option相关的命令](#section618522925119) +- [option相关的命令](#section618522925119) - [-h/help -v/version](#section51533527212) - [-t key](#section1180555115159) @@ -58,9 +58,9 @@ hdc\_std(OpenHarmony Device Connector)是OpenHarmony为开发人员提供的 - 使用hdc\_std,如果出现异常,可以尝试通过hdc\_std kill命令杀掉hdc\_std服务,或者通过hdc\_std start -r命令重启服务进程进行解决。 - 如果出现hdc\_std list targets获取不到设备信息,通过任务管理器查看是否有hdc.exe进程存在,如果进程存在,可以通过杀掉该进程进行解决。 -## 全局option相关的命令 +## option相关的命令 -全局option涉及以下命令: +option涉及以下命令: ### -h/help -v/version @@ -69,17 +69,7 @@ hdc\_std(OpenHarmony Device Connector)是OpenHarmony为开发人员提供的 **表 1** 命令说明 - - - - - - -

    参数

    -

    参数说明

    -

    -h/help -v/version

    -

    -

    返回值

    + diff --git "a/zh-cn/device-dev/subsystems/\345\256\211\345\205\250.md" "b/zh-cn/device-dev/subsystems/\345\256\211\345\205\250.md" new file mode 100644 index 00000000000..2ac7b9aa571 --- /dev/null +++ "b/zh-cn/device-dev/subsystems/\345\256\211\345\205\250.md" @@ -0,0 +1,11 @@ +# 安全 + +- **[概述](概述-2.md)** + +- **[应用验签开发指导](应用验签开发指导.md)** + +- **[应用权限管理开发指导](应用权限管理开发指导.md)** + +- **[IPC通信鉴权开发指导](IPC通信鉴权开发指导.md)** + + diff --git "a/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\346\235\203\351\231\220\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\346\235\203\351\231\220\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" new file mode 100644 index 00000000000..127a7f17566 --- /dev/null +++ "b/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\346\235\203\351\231\220\347\256\241\347\220\206\345\274\200\345\217\221\346\214\207\345\257\274.md" @@ -0,0 +1,228 @@ +# 应用权限管理开发指导 + +- [运作机制](#section193961322175011) +- [场景介绍](#section18502174174019) +- [接口说明](#section1633115419401) +- [开发步骤](#section022611498210) + +## 运作机制 + +由于OpenHarmony允许安装三方应用,所以需要对三方应用的敏感权限调用进行管控,具体实现是应用在开发阶段就需要在profile.json中指明此应用在运行过程中可能会调用哪些敏感权限,这些权限包括静态权限和动态权限,静态权限表示只需要在安装阶段注册就可以,而动态权限一般表示获取用户的敏感信息,所以需要在运行时让用户确认才可以调用,授权方式包括系统设置应用手动授权等。除了运行时对应用调用敏感权限进行管控外,还需要利用应用签名管控手段确保应用安装包已经被设备厂商进行了确认。 + +**表 1** OpenHarmony权限列表 + + +

    返回值

    返回值说明

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    OpenHarmony权限

    +

    授权方式

    +

    权限说明

    +

    ohos.permission.LISTEN_BUNDLE_CHANGE

    +

    system_grant(静态权限)

    +

    允许该应用获取应用变化消息。

    +

    ohos.permission.GET_BUNDLE_INFO

    +

    system_grant(静态权限)

    +

    允许该应用获取应用信息。

    +

    ohos.permission.INSTALL_BUNDLE

    +

    system_grant(静态权限)

    +

    允许该应用安装应用。

    +

    ohos.permission.CAMERA

    +

    user_grant(动态权限)

    +

    此应用可随时使用相机拍摄照片和录制视频。

    +

    ohos.permission.MODIFY_AUDIO_SETTINGS

    +

    system_grant(静态权限)

    +

    允许该应用修改全局音频设置,例如音量和用于输出的扬声器。

    +

    ohos.permission.READ_MEDIA

    +

    user_grant(动态权限)

    +

    允许该应用读取您的视频收藏。

    +

    ohos.permission.MICROPHONE

    +

    user_grant(动态权限)

    +

    此应用可随时使用麦克风进行录音。

    +

    ohos.permission.WRITE_MEDIA

    +

    user_grant(动态权限)

    +

    允许该应用写入您的音乐收藏。

    +

    ohos.permission.DISTRIBUTED_DATASYNC

    +

    user_grant(动态权限)

    +

    管控分布式数据传输能力。

    +

    ohos.permission.DISTRIBUTED_VIRTUALDEVICE

    +

    user_grant(动态权限)

    +

    允许应用使用分布式虚拟能力

    +
    + +>![](public_sys-resources/icon-note.gif) **说明:** +>静态权限:应用安装时由系统授予的权限,对应于权限敏感级别的system\_grant +>动态权限:应用在运行过程中需要用户授权的权限,对应于权限敏感级别的user\_grant + +## 场景介绍 + +应用权限是软件用来访问系统资源和使用系统能力的一种通行方式。在涉及用户隐私相关功能和数据的场景,例如:访问个人设备的硬件特性,如摄像头、麦克风,以及读写媒体文件等,OpenHarmony通过应用权限管理组件来保护这些数据以及能力。 + +在系统应用开发过程中,如果应用要使用敏感权限,开发者可以调用应用权限管理组件接口检查待访问权限是否被授权,如果未授权,操作不允许。 + +## 接口说明 + +应用权限管理提供的API接口,当前仅供系统应用和系统服务调用,具体API接口如下。 + +**表 2** 应用权限管理API接口功能介绍 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    接口名

    +

    描述

    +

    int CheckPermission(int uid, const char *permissionName)

    +

    检查指定UID的应用进程是否具有访问系统服务API的权限

    +

    int CheckSelfPermission(const char *permissionName)

    +

    检查调用者是否具有访问系统服务API的权限

    +

    int QueryPermission(const char *identifier, PermissionSaved **permissions, int *permNum)

    +

    查询应用申请的所有权限,并检查权限是否被授予

    +

    int GrantPermission(const char *identifier, const char *permName)

    +

    将指定权限授予应用程序

    +

    int RevokePermission(const char *identifier, const char *permName)

    +

    收回应用程序的指定权限

    +

    int GrantRuntimePermission(int uid, const char *permissionName)

    +

    应用运行时动态授予指定权限

    +

    int RevokeRuntimePermission(int uid, const char *permissionName)

    +

    应用运行时动态撤销指定权限

    +
    + +## 开发步骤 + +本部分以包管理器的应用权限开发为例进行讲解。开发过程中,首先需要明确涉及的敏感权限,并在config.json中声明该权限,在安装应用程序时,包管理器会调用应用权限管理组件的接口检查该权限是否被授予,若授予,安装流程正常进行,否则安装失败。 + +1. 在开发过程中,包管理器明确需要安装应用的权限(ohos.permission.INSTALL\_BUNDLE),并在config.json中声明该权限; + + ``` + { + ... + "module": { + "package": "com.huawei.kitframework", + "deviceType": [ + "phone", "tv","tablet", "pc","car","smartWatch","sportsWatch","smartCamera", "smartVision" + ], + "reqPermissions": [{ + // 声明需要的权限:安装应用程序的权限名 + "name": "ohos.permission.INSTALL_BUNDLE", + "reason": "install bundle", + "usedScene": { + "ability": [ + "KitFramework" + ], + "when": "always" + } + }, + { + "name": "ohos.permission.LISTEN_BUNDLE_CHANGE", + "reason": "install bundle", + "usedScene": { + "ability": [ + "KitFramework" + ], + "when": "always" + } + }, + { + "name": "ohos.permission.GET_BUNDLE_INFO", + "reason": "install bundle", + "usedScene": { + "ability": [ + "KitFramework" + ], + "when": "always" + } + } + ], + ... + } + ``` + +2. 当包管理器开发应用安装功能接口时,会调用权限管理相关接口检查自身是否具有安装应用程序的权限,例如:以安装应用的权限名"ohos.permission.INSTALL\_BUNDLE"作为入参,调用CheckPermission接口检查包管理器是否具有安装应用的权限,如果有权限,安装流程继续执行,否则返回安装失败; + + ``` + constexpr static char PERMISSION_INSTALL_BUNDLE[] = "ohos.permission.INSTALL_BUNDLE"; + + bool Install(const char *hapPath, const InstallParam *installParam, InstallerCallback installerCallback) + { + if ((hapPath == nullptr) || (installerCallback == nullptr) || (installParam == nullptr)) { + HILOG_ERROR(HILOG_MODULE_APP, "BundleManager install failed due to nullptr parameters"); + return false; + } + // 检查ohos.permission.INSTALL_BUNDLE权限是否被授予 + if (CheckPermission(0, static_cast(PERMISSION_INSTALL_BUNDLE)) != GRANTED) { + HILOG_ERROR(HILOG_MODULE_APP, "BundleManager install failed due to permission denied"); + return false; // 返回安装失败 + } + // 安装流程 + ... + } + ``` + + diff --git "a/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\351\252\214\347\255\276\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\351\252\214\347\255\276\345\274\200\345\217\221\346\214\207\345\257\274.md" new file mode 100644 index 00000000000..8c5e78070f8 --- /dev/null +++ "b/zh-cn/device-dev/subsystems/\345\272\224\347\224\250\351\252\214\347\255\276\345\274\200\345\217\221\346\214\207\345\257\274.md" @@ -0,0 +1,272 @@ +# 应用验签开发指导 + +- [场景介绍](#section18502174174019) +- [验签流程](#section554632717226) +- [接口说明](#section1633115419401) +- [开发步骤(场景一)](#section4207112818418) + - [验签指导](#section11470123816297) + - [生成OpenHarmony自签名应用](#section167151429133312) + - [开发示例](#section174318361353) + +- [开发步骤(场景二)](#section81272563427) + - [验签指导](#section07028210442) + - [开发示例](#section1930711345445) + +- [调测验证](#section427316292411) + +## 场景介绍 + +当需要验证调试应用、发布应用,OpenHarmony自签名应用的完整性是否被破坏时,可以调用验签组件的接口进行验证。如有需要还可通过验签接口获取部分描述文件信息,如appid。对于调试应用,还可通过验签接口验证应用和设备的UDID是否匹配,确保应用安装在了正确的设备上。 + +## 验签流程 + +未经签名的Hap包的压缩方式是ZIP格式,简单分为文件块,中心目录(Central directory)块,中心目录结尾(EOCD,End of central directory record)块。 + +经过签名的Hap包,在文件块,和中心目录块之间,插入了签名块。签名块由文件签名数据块(data sign block)、描述文件签名数据块(profile sign block)和签名头(sign head)组成,如下图所示。 + +**图 1** 经过签名的Hap包结构 + + +![](figures/安全子系统.png) + +整个验签流程,主要分为三部分:整包验签、描述文件签名块验签,以及描述文件内容校验。 + +**整包验签** + +用设备的预置根证书,通过证书链来证明叶子证书本身是可信的,然后用叶子证书的公钥解密出的摘要证明整包是未篡改的。 + +具体操作步骤如下: + +1. 对文件签名数据块中的证书链进行校验,确定其叶子证书是可信的。 +2. 用叶子证书中的公钥对文件签名块进行验签,证明其未被篡改。 +3. 计算并合并文件块,中心目录块和中心目录结尾块的摘要。然后将计算结果,再与签名块中的描述文件签名块的摘要合并,将最终合并的摘要与文件签名块中包含的摘要对比,如果两者相等,则整包验签通过。 + +**描述文件签名块验签** + +首先判断文件签名的签发单位,如果是应用市场签发的发布应用,则无需对描述文件进行验签,直接信任,否则要对其验签。先取出整个描述文件签名块,然后验证证书链,最后用叶子证书对描述文件数据块验签,证明其未被篡改。 + +**描述文件内容校验** + +取出描述文件,并对其内容进行合法性检查。其中若hap包为调试应用,则会比对本机UDID与描述文件中包含的UDID列表,如果本机UDID在描述文件的UDID列表中包含,则验证通过。比较描述文件中包含的证书(如果是应用市场发布应用或OpenHarmony自签名则无需比较),和整包校验时使用的叶子证书,如果相同,认为整个验签流程完成。 + +## 接口说明 + +验签组件当前提供innerkits接口,仅供系统应用调用,相关接口及功能描述如下: + +**表 1** 验签组件API接口功能介绍 + + + + + + + + + + + + + + + + +

    接口名

    +

    描述

    +

    int APPVERI_AppVerify(const char *filePath, VerifyResult *verifyRst)

    +

    主入口函数,输入文件路径,进行验签,并将从描述文件中获取的数据通过verifyRst返回给调用者

    +

    int APPVERI_SetDebugMode(bool mode)

    +

    设置测试模式,设置mode为true,则支持基于测试根密钥的证书链校验,设置mode为false,则关闭基于测试根密钥的证书链校验。

    +

    注:当前没有基于现有测试根密钥的证书,开发者可根据自身需要,替换测试根密钥并进行相关验证。

    +

    void APPVERI_FreeVerifyRst(VerifyResult *verifyRst)

    +

    释放verifyRst中申请的内存

    +
    + +## 开发步骤(场景一) + +### 验签指导 + +对应用市场发布应用、基于应用市场调试证书签发的调试应用、OpenHarmony自签名应用的校验。 + +1. 定义出参结构体变量VerifyResult; + + ``` + VerifyResult verifyResult = {0}; + ``` + +2. 以文件路径及VerifyResult为入参,调用APPVERI\_AppVerify进行文件校验; + + ``` + int32_t ret = APPVERI_AppVerify(hapFilepath.c_str(), &verifyResult); + ``` + +3. 判断返回结果,如果校验通过的话,获取VerifyResult中的数据,进行业务处理; + + ``` + signatureInfo.appId = verifyResult.profile.appid; + signatureInfo.provisionBundleName = verifyResult.profile.bundleInfo.bundleName; + ``` + +4. 调用APPVERI\_FreeVerifyRst,释放VerifyResult中申请的内存。 + + ``` + APPVERI_FreeVerifyRst(&verifyResult); + ``` + + +### 生成OpenHarmony自签名应用 + +如果是OpenHarmony自签名应用的校验,开发者可通过以下方式生成OpenHarmony自签名应用。 + +1. 材料备齐。 + + 生成自签名应用需要的材料有:签名工具、系统应用hap包、系统应用profile文件\(\*.p7b\)、签名证书\(\*.cer\)、签名公私钥对\(\*.jks\)。 + +2. 将所有材料放在同一个目录下,打开shell。 +3. 根据应用、描述文件的实际名称修改指令,并在shell中输入,完成签名。 + + ``` + java -jar hapsigntoolv2.jar sign -mode localjks -privatekey "OpenHarmony Software Signature" -inputFile camera.hap -outputFile signed_camera.hap -signAlg SHA256withECDSA -keystore OpenHarmony.jks -keystorepasswd 123456 -keyaliaspasswd 123456 -profile camera_release.p7b -certpath OpenHarmony.cer -profileSigned 1 + ``` + + 关键字段说明: + + -jar:签名工具,[hapsigntool](https://repo.huaweicloud.com/harmonyos/develop_tools/hapsigntoolv2.jar) + + -mode:本地签名标记位,固定为localjks + + -privatekey:密钥对别名,签名公私钥对的别名为OpenHarmony Software Signature + + -inputFile:待签名应用,通过编译产生 + + -outputFile:签名后应用,最终输出 + + -signAlg:签名算法,当前固定为SHA256withECDSA + + -keystore:公私钥对,使用签名公私钥对,位于开源库security\_services\_app\_verify仓中OpenHarmonyCer目录下,[OpenHarmony.jks](https://gitee.com/openharmony/security_appverify/blob/master/interfaces/innerkits/appverify_lite/OpenHarmonyCer/OpenHarmony.jks)。默认密码为123456 ,用户可采用工具\(例如keytool\)更改默认密码 + + -keystorepasswd:公私钥对密码,默认签名公私钥对密码为123456 + + -keyaliaspasswd:公私钥对别名密码,默认签名公私钥对别名密码为123456 + + -profile:描述文件,应用的描述文件位于对应源代码目录中 + + -certpath:使用签名证书,位于开源库security\_services\_app\_verify仓中OpenHarmonyCer目录下,[OpenHarmony.cer](https://gitee.com/openharmony/security_appverify/blob/master/interfaces/innerkits/appverify_lite/OpenHarmonyCer/OpenHarmony.cer) + + -profileSigned:签名块中是否包含描述文件\(profile\)。固定为1(包含) + + +### 开发示例 + +以应用管理框架组件在应用安装时进行验签的实际调用为例: + +``` +uint8_t HapSignVerify::VerifySignature(const std::string &hapFilepath, SignatureInfo &signatureInfo) +{ + bool mode = ManagerService::GetInstance().IsDebugMode(); + HILOG_INFO(HILOG_MODULE_APP, "current mode is %d!", mode); + // 定义结果结构体 + VerifyResult verifyResult = {0}; + // 输入待验签文件路径进行验签 + int32_t ret = APPVERI_AppVerify(hapFilepath.c_str(), &verifyResult); + uint8_t errorCode = SwitchErrorCode(ret); + if (errorCode != ERR_OK) { + return errorCode; + } + // 从结果结构体中获取appid + signatureInfo.appId = verifyResult.profile.appid; + // 从结果结构体中获取描述文件中书写的应用名 + signatureInfo.provisionBundleName = verifyResult.profile.bundleInfo.bundleName; + int32_t restricNum = verifyResult.profile.permission.restricNum; + for (int32_t i = 0; i < restricNum; i++) { + signatureInfo.restrictedPermissions.emplace_back((verifyResult.profile.permission.restricPermission)[i]); + } + // 释放结果结构体中申请的内存 + APPVERI_FreeVerifyRst(&verifyResult); + return ERR_OK; +} +``` + +## 开发步骤(场景二) + +### 验签指导 + +对采用基于测试根密钥证书签名的应用的校验。 + +1. 调用APPVERI\_SetDebugMode\(true\)开启测试模式; + + ``` + ManagerService::SetDebugMode(true); + ... + uint8_t ManagerService::SetDebugMode(bool enable) + { + int32_t ret = APPVERI_SetDebugMode(enable); + if (ret < 0) { + HILOG_ERROR(HILOG_MODULE_APP, "set signature debug mode failed"); + return ERR_APPEXECFWK_SET_DEBUG_MODE_ERROR; + } + isDebugMode_ = enable; + HILOG_INFO(HILOG_MODULE_APP, "current sign debug mode is %d", isDebugMode_); + return ERR_OK; + } + ``` + +2. 同场景一中步骤一至四,定义结构体,校验、释放结构体; +3. 调用APPVERI\_SetDebugMode\(false\)关闭测试模式。 + + ``` + ManagerService::SetDebugMode(false); + ``` + + +### 开发示例 + +完整开发示例如下(在场景一代码示例的基础上进行补充): + +``` +uint8_t ManagerService::SetDebugMode(bool enable) +{ + int32_t ret = APPVERI_SetDebugMode(enable); + if (ret < 0) { + HILOG_ERROR(HILOG_MODULE_APP, "set signature debug mode failed"); + return ERR_APPEXECFWK_SET_DEBUG_MODE_ERROR; + } + isDebugMode_ = enable; + HILOG_INFO(HILOG_MODULE_APP, "current sign debug mode is %d", isDebugMode_); + return ERR_OK; +} +uint8_t HapSignVerify::VerifySignature(const std::string &hapFilepath, SignatureInfo &signatureInfo) +{ + // 开启支持测试服务器签名应用验证 + ManagerService::SetDebugMode(true); + bool mode = ManagerService::GetInstance().IsDebugMode(); + HILOG_INFO(HILOG_MODULE_APP, "current mode is %d!", mode); + // 定义结果结构体 + VerifyResult verifyResult = {0}; + // 输入待验签文件路径进行验签 + int32_t ret = APPVERI_AppVerify(hapFilepath.c_str(), &verifyResult); + uint8_t errorCode = SwitchErrorCode(ret); + if (errorCode != ERR_OK) { + return errorCode; + } + // 从结果结构体中获取appid + signatureInfo.appId = verifyResult.profile.appid; + // 从结果结构体中获取描述文件中书写的应用名 + signatureInfo.provisionBundleName = verifyResult.profile.bundleInfo.bundleName; + int32_t restricNum = verifyResult.profile.permission.restricNum; + for (int32_t i = 0; i < restricNum; i++) { + signatureInfo.restrictedPermissions.emplace_back((verifyResult.profile.permission.restricPermission)[i]); + } + // 释放结果结构体中申请的内存 + APPVERI_FreeVerifyRst(&verifyResult); + // 关闭支持测试服务器签名应用验证 + ManagerService::SetDebugMode(false); + return ERR_OK; +} +``` + +## 调测验证 + +1. 选取一个在OpenHarmony上能够正常安装的应用A。 +2. 根据开发指导开发。 +3. 对应用A,采用自开发程序进行验签,验签通过,能获取到appid。即为开发成功。 + diff --git "a/zh-cn/device-dev/subsystems/\346\246\202\350\277\260-2.md" "b/zh-cn/device-dev/subsystems/\346\246\202\350\277\260-2.md" new file mode 100644 index 00000000000..45d0d326761 --- /dev/null +++ "b/zh-cn/device-dev/subsystems/\346\246\202\350\277\260-2.md" @@ -0,0 +1,76 @@ +# 概述 + +- [基本概念](#section175012297491) +- [约束与限制](#section2029921310472) + +OpenHarmony安全子系统目前提供给开发者的安全能力主要包含应用可信、权限管理、设备可信。涉及以下几个模块: + +- 应用验签 + + 为了确保应用内容的完整性,系统通过应用签名和Profile对应用的来源进行管控,同时对于调试应用,还可通过验签接口验证应用和设备的UDID是否匹配,确保应用安装在了正确的设备上。 + +- 应用权限管理 + + 应用权限是管理应用访问系统资源和使用系统能力的一种通用方式,应用在开发阶段需要在profile.json中指明此应用在运行过程中可能会调用哪些权限,其中静态权限表示只需要在安装阶段注册就可以,而动态权限一般表示涉及到敏感信息,所以需要用户进行动态授权。 + +- IPC通信鉴权 + + 系统服务通过IPC暴露接口给其他进程访问,这些接口需要配置相应的访问策略,当其他进程访问这些接口时,将会触发IPC通信鉴权机制校验访问进程是否拥有权限访问该接口,若无权限,则拒绝访问该接口。 + +- 可信设备群组管理 + + 提供基于群组概念的同华为账号群组、点对点群组(如二维码、碰一碰等)的设备安全可信关系的创建和查询,分布式应用可基于该能力进行设备间的可信认证,然后向分布式软总线请求设备间安全会话。 + + +## 基本概念 + +在进行依赖验签组件的应用开发前,开发者应了解以下基本概念: + +- Samgr + + Samgr\(System Ability M2anager\)系统能力管理,在OpenHarmony上作为一个管理系统能力的模块,详见系统服务框架子系统。 + + +- BMS + + BMS\(Bundle Manager Service\)包管理管理,在OpenHarmony上主要负责应用的安装、卸载和数据管理。 + + +- 描述文件 + + 本文中的描述文件,指HarmonyAppProvision,简称profile。HarmonyAppProvision采用json文件格式进行描述。 + + +- 叶子证书 + + 最终用于为整包或profile签名的证书称为叶子证书,位于数字证书链的最末端。 + + +- 调试应用 + + 指开发者从应用市场申请调试证书与调试描述文件,并以此签名的hap包。 + + +- 待上架应用 + + 指开发者从应用市场申请发布证书与发布描述文件,以此签名,未通过应用市场正式发布的hap包。 + + +- 发布应用 + + 指开发者从应用市场申请发布证书与发布描述文件,以此签名的hap包,上传至应用市场,并由应用市场正式发布的hap包。 + + +- OpenHarmony自签名应用 + + 当开发者自行编译OpenHarmony系统应用后,采用原应用描述文件,以及公开的OpenHarmony公私钥对和证书进行自签名产生的hap包。 + + +## 约束与限制 + +- 仅支持以下三类应用的验签:应用市场调试应用、应用市场发布应用、OpenHarmony自签名应用的验签。 +- 若对应用市场调试应用验签,则本机UDID需要在描述文件包含的UDID列表中。 +- 待上架应用无法验签通过。 +- 验签组件提供的接口都位于security\_interfaces\_innerkits\_app\_verify仓[app\_verify\_pub.h](https://gitee.com/fork_ohos_wj/security_interfaces_innerkits_app_verify/blob/master/app_verify_pub.h)中,仅支持系统应用开发者调用。 +- 可信设备群组管理接口,目前只对系统签名权限才可以使用。 + -- Gitee

    -v61{S!UDUmWrCb>zs+7Iq8Cw&YH@!638} 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 Ss<2hy&(_M`vS|PD`2PT?Hc&_a diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160649345.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160649345.png deleted file mode 100644 index 1819a2816fa617fa6389646fd6a4b1ab0d97272d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46363 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 diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001163569081.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001163569081.png deleted file mode 100644 index 703476a1e0d68ef903774a53b45e19c0617cb135..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35138 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 literal 0 HcmV?d00001 diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001116405268.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174270729.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001116405268.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174270729.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001163529159.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174270731.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001163529159.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174270731.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174270733.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174270733.png new file mode 100644 index 0000000000000000000000000000000000000000..72dd05e3ae1eb91156df98cb1915b6264b3bbe5a GIT binary patch literal 39410 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 literal 0 HcmV?d00001 diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001105536118.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174350659.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001105536118.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174350659.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001152256235.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174350661.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001152256235.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174350661.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001074445364.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174350669.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001074445364.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001174350669.png diff --git "a/zh-cn/device-dev/quick-start/figures/\346\240\207\345\207\206\347\216\257\345\242\203\345\277\253\351\200\237\345\205\245\351\227\250\346\265\201\347\250\213.png" "b/zh-cn/device-dev/quick-start/figures/\346\240\207\345\207\206\347\216\257\345\242\203\345\277\253\351\200\237\345\205\245\351\227\250\346\265\201\347\250\213.png" new file mode 100644 index 0000000000000000000000000000000000000000..587b414d787f36de3494760e14313e0ff18f896b GIT binary patch literal 19686 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 literal 0 HcmV?d00001 diff --git "a/zh-cn/device-dev/quick-start/\344\272\206\350\247\243\345\274\200\345\217\221\346\235\277.md" "b/zh-cn/device-dev/quick-start/\344\272\206\350\247\243\345\274\200\345\217\221\346\235\277.md" index ca0d75e7cae..fae4d8bb464 100755 --- "a/zh-cn/device-dev/quick-start/\344\272\206\350\247\243\345\274\200\345\217\221\346\235\277.md" +++ "b/zh-cn/device-dev/quick-start/\344\272\206\350\247\243\345\274\200\345\217\221\346\235\277.md" @@ -1,4 +1,4 @@ -# 了解开发板 +# 了解开发板 - **[Hi3861开发板介绍](Hi3861开发板介绍.md)** diff --git "a/zh-cn/device-dev/quick-start/\345\205\245\351\227\250\344\273\213\347\273\215.md" "b/zh-cn/device-dev/quick-start/\345\205\245\351\227\250\344\273\213\347\273\215.md" new file mode 100644 index 00000000000..b01d0c442c2 --- /dev/null +++ "b/zh-cn/device-dev/quick-start/\345\205\245\351\227\250\344\273\213\347\273\215.md" @@ -0,0 +1,54 @@ +# 入门介绍 + +- [快速入门流程](#section7825218111517) +- [开发板简介](#zh-cn_topic_0000001053666242_section047719215429) +- [开发板规格](#zh-cn_topic_0000001053666242_section15192203316533) + +本文快速掌握OpenHarmony标准系统的环境搭建、编译、烧录、启动等操作。本文将以当前推荐的Hi3516DV300开发板为例进行说明。 + +OpenHarmony标准系统使用Windows环境进行开发,使用Linux环境进行编译,可以使用Docker或安装包方式来搭建Linux编译环境,请根据实际情况自行选择。 + +## 快速入门流程 + +标准环境快速入门过程如下图所示,Linux环境编译请根据实际情况选择docker或安装包其中一种即可。 + +**图 1** 标准环境快速入门流程 +![](figures/标准环境快速入门流程.png "标准环境快速入门流程") + +## 开发板简介 + +Hi3516DV300作为新一代行业专用Smart HD IP摄像机SOC,集成新一代ISP\(Image Signal Processor\)、H.265视频压缩编码器,同时集成高性能NNIE引擎,使得Hi3516DV300在低码率、高画质、智能处理和分析、低功耗等方面引领行业水平。 + +**图 2** Hi3516单板正面外观图 + + +![](figures/3516正面-16.png) + +## 开发板规格 + +**表 1** Hi3516开发板规格清单 + + + + + + + + + + + + + +

    规格类型

    +

    规格清单

    +

    处理器及内部存储

    +
    • Hi3516DV300芯片
    • DDR3 1GB
    • eMMC4.5,8GB容量
    +

    外部器件

    +
    • 以太网口
    • 音频视频
      • 1路语音输入
      • 1路单声道(AC_L)输出,接3W功放(LM4871)
      • MicroHDMI(1路HDMI 1.4)
      +
    • 摄像头
      • 传感器IMX335
      • 镜头M12,焦距4mm,光圈1.8
      +
    • 显示屏
      • LCD连接器(2.35寸)
      • LCD连接器(5.5寸)
      +
    • 外部器件及接口
      • SD卡接口
      • JTAG/I2S 接口
      • ADC接口
      • 舵机接口
      • Grove连接器
      • USB2.0(Type C)
      • 功能按键3个,2个用户自定义按键,1个升级按键
      • LED指示灯,绿灯,红灯
      +
    +
    + diff --git "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-1.md" "b/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-1.md" deleted file mode 100644 index 2348c6d97e0..00000000000 --- "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-1.md" +++ /dev/null @@ -1,151 +0,0 @@ -# 安装开发板环境 - -- [Hi3516工具要求](#section179175261196) - - [硬件要求](#section5840424125014) - - [软件要求](#section965634210501) - -- [安装Linux服务器工具](#section182916865219) - - [将Linux shell改为bash](#section1715027152617) - - [安装编译依赖基础软件(仅Ubuntu 20+需要)](#section45512412251) - - [安装文件打包工具](#section1969111820270) - - [安装Java 虚拟机环境](#section1692618112713) - - -## Hi3516工具要求 - -### 硬件要求 - -- Hi3516DV300 IoT Camera开发板 -- USB转串口线、网线(Windows工作台通过USB转串口线、网线与Hi3516DV300 开发板连接) - -各硬件连接关系如下图所示。 - -**图 1** 硬件连线图 - - -![](figures/矩形备份-292.png) - -### 软件要求 - ->![](public_sys-resources/icon-notice.gif) **须知:** ->本节描述安装包方式搭建编译环境的操作步骤。如果是Docker方式安装编译环境,请跳过此章节以及下述[安装Linux服务器工具](#section182916865219)章节。 - -Hi3516开发板对Linux服务器通用环境配置需要的工具及其获取途径如下表所示。 - -**表 1** Linux服务器开发工具及获取途径 - - - - - - - - - - - - - - - - - - - - - - - - -

    开发工具

    -

    用途

    -

    获取途径

    -

    bash

    -

    命令行处理工具

    -

    系统配置

    -

    编译基础软件包(仅ubuntu 20+需要)

    -

    编译依赖的基础软件包

    -

    通过互联网获取

    -

    dosfstools、mtools、mtd-utils

    -

    文件打包工具

    -

    通过apt-get install安装

    -

    Java 虚拟机环境

    -

    编译、调试和运行Java程序

    -

    通过apt-get install安装

    -
    - -## 安装Linux服务器工具 - ->![](public_sys-resources/icon-notice.gif) **须知:** ->- 如果通过“HPM组件方式”或“HPM包管理器命令行工具方式”获取源码,不需要安装LLVM、hc-gen编译工具。 ->- (推荐)如果通过“镜像站点方式”或“代码仓库方式”获取源码,需要安装hc-gen编译工具。安装hc-gen编译工具时,请确保编译工具的环境变量路径唯一。 - -### 将Linux shell改为bash - -查看shell是否为bash,在终端运行如下命令 - -``` -ls -l /bin/sh -``` - -如果显示为“/bin/sh -\> bash”则为正常,否则请按以下方式修改: - -**方法一**:在终端运行如下命令,然后选择 no。 - -``` -sudo dpkg-reconfigure dash -``` - -**方法二**:先删除sh,再创建软链接。 - -``` -sudo rm -rf /bin/sh -sudo ln -s /bin/bash /bin/sh -``` - -### 安装编译依赖基础软件(仅Ubuntu 20+需要) - -执行以下命令进行安装: - -``` -sudo apt-get install build-essential && sudo apt-get install gcc && sudo apt-get install g++ && sudo apt-get install make && sudo apt-get install zlib* && sudo apt-get install libffi-dev -``` - -### 安装文件打包工具 - -1. 打开Linux编译服务器终端。 -2. 运行如下命令,安装dosfstools。 - - ``` - sudo apt-get install dosfstools - ``` - -3. 运行如下命令,安装mtools。 - - ``` - sudo apt-get install mtools - ``` - -4. 运行如下命令,安装mtd-utils。 - - ``` - sudo apt-get install mtd-utils - ``` - - -### 安装Java 虚拟机环境 - -1. 打开Linux编译服务器终端。 -2. 安装Java运行时环境(JRE)。 - - ``` - sudo apt-get install default-jre - ``` - -3. 安装Java sdk开发工具包。 - - ``` - sudo apt-get install default-jdk - ``` - - diff --git "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-2.md" "b/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-2.md" index 21805e23237..3f827074bfd 100644 --- "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-2.md" +++ "b/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-2.md" @@ -1,4 +1,4 @@ -# 安装开发板环境 +# 安装开发板环境 - [Hi3516工具要求](#section179175261196) - [硬件要求](#section5840424125014) diff --git "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-3.md" "b/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-3.md" deleted file mode 100644 index bf59854a1d5..00000000000 --- "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-3.md" +++ /dev/null @@ -1,156 +0,0 @@ -# 安装开发板环境 - -- [Hi3518环境搭建](#section1724111409282) - - [硬件要求](#section487353718276) - - [软件要求](#section17315193935817) - -- [安装Linux服务器工具](#section8831868501) - - [将Linux shell改为bash](#section1715027152617) - - [安装编译依赖基础软件(仅Ubuntu 20+需要)](#section45512412251) - - [安装文件打包工具](#section1686964015274) - - [安装hc-gen](#section18706403274) - - -## Hi3518环境搭建 - -### 硬件要求 - -- Hi3518EV300 IoT Camera开发板 -- USB转串口线、网线(Windows工作台通过USB转串口线、网线与开发板连接) - - 各硬件连接关系如下图所示。 - - -**图 1** 硬件连线图 -![](figures/硬件连线图-3.png "硬件连线图-3") - -### 软件要求 - ->![](public_sys-resources/icon-notice.gif) **须知:** ->本节描述安装包方式搭建编译环境的操作步骤。如果是Docker方式安装编译环境,请跳过此章节以及下述[安装Linux服务器工具](#section8831868501)章节。 - -Hi3518开发板对Linux服务器通用环境配置需要的工具及其获取途径如下表所示。 - -**表 1** Linux服务器开发工具及获取途径 - - - - - - - - - - - - - - - - - - - - -

    开发工具

    -

    用途

    -

    获取途径

    -

    bash

    -

    命令行处理工具

    -

    系统配置

    -

    编译基础软件包(仅ubuntu 20+需要)

    -

    编译依赖的基础软件包

    -

    通过互联网获取

    -

    dosfstools、mtools、mtd-utils

    -

    文件打包工具

    -

    通过apt-get install安装

    -
    - -## 安装Linux服务器工具 - ->![](public_sys-resources/icon-notice.gif) **须知:** ->- 如果通过“HPM组件方式”或“HPM包管理器命令行工具方式”获取源码,不需要安装hc-gen编译工具。 ->- (推荐)如果通过“镜像站点方式”或“代码仓库方式”获取源码,需要安装hc-gen编译工具。安装hc-gen编译工具时,请确保编译工具的环境变量路径唯一。 - -### 将Linux shell改为bash - -查看shell是否为bash,在终端运行如下命令 - -``` -ls -l /bin/sh -``` - -如果显示为“/bin/sh -\> bash”则为正常,否则请按以下方式修改: - -**方法一**:在终端运行如下命令,然后选择 no。 - -``` -sudo dpkg-reconfigure dash -``` - -**方法二**:先删除sh,再创建软链接。 - -``` -sudo rm -rf /bin/sh -sudo ln -s /bin/bash /bin/sh -``` - -### 安装编译依赖基础软件(仅Ubuntu 20+需要) - -执行以下命令进行安装: - -``` -sudo apt-get install build-essential && sudo apt-get install gcc && sudo apt-get install g++ && sudo apt-get install make && sudo apt-get install zlib* && sudo apt-get install libffi-dev -``` - -### 安装文件打包工具 - -1. 打开Linux编译服务器终端。 -2. 运行如下命令,安装dosfstools。 - - ``` - sudo apt-get install dosfstools - ``` - -3. 运行如下命令,安装mtools。 - - ``` - sudo apt-get install mtools - ``` - -4. 运行如下命令,安装mtd-utils。 - - ``` - sudo apt-get install mtd-utils - ``` - - -### 安装hc-gen - -1. 打开Linux编译服务器终端。 -2. [下载hc-gen工具](https://repo.huaweicloud.com/harmonyos/compiler/hc-gen/0.65/linux/hc-gen-0.65-linux.tar)。 -3. 解压hc-gen安装包到Linux服务器\~/hc-gen路径下。 - - ``` - tar -xvf hc-gen-0.65-linux.tar -C ~/ - ``` - -4. 设置环境变量。 - - ``` - vim ~/.bashrc - ``` - - 将以下命令拷贝到.bashrc文件的最后一行,保存并退出。 - - ``` - export PATH=~/hc-gen:$PATH - ``` - -5. 生效环境变量。 - - ``` - source ~/.bashrc - ``` - - diff --git "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-4.md" "b/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-4.md" index fced03de623..b2bbd778809 100644 --- "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-4.md" +++ "b/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203-4.md" @@ -1,4 +1,4 @@ -# 安装开发板环境 +# 安装开发板环境 - [Hi3518环境搭建](#section1724111409282) - [硬件要求](#section487353718276) diff --git "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203.md" "b/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203.md" index 7bc6e67829c..2bf84d7aab3 100644 --- "a/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203.md" +++ "b/zh-cn/device-dev/quick-start/\345\256\211\350\243\205\345\274\200\345\217\221\346\235\277\347\216\257\345\242\203.md" @@ -1,4 +1,4 @@ -# 安装开发板环境 +# 安装开发板环境 - [Hi3861工具要求](#section466851916410) - [硬件要求](#section19202111020215) @@ -362,6 +362,6 @@ sudo apt-get install build-essential gcc g++ make zlib* libffi-dev 2. 点击安装包,安装驱动程序。 3. 驱动安装完成后,重新插拔USB接口,串口信息显示如下图所示。 - ![](figures/zh-cn_image_0000001057235392.png) + ![](figures/zh-cn_image_0000001174350633.png) diff --git "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-0.md" "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-0.md" deleted file mode 100755 index de74ac1a07c..00000000000 --- "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-0.md" +++ /dev/null @@ -1,292 +0,0 @@ -# 常见问题 - -- [安装python3过程中,提示“configure: error: no acceptable C compiler found in $PATH”](#section1221016541119) -- [安装python3过程中,提示“-bash: make: command not found”](#section1913477181213) -- [安装python3过程中,提示“zlib not available”](#section108211415131210) -- [安装python3过程中,提示“No module named '\_ctypes'”](#section2062268124) -- [编译构建过程中,提示“No module named 'Crypto'”](#section982315398121) -- [编译构建过程中,提示“No module named 'ecdsa'”](#section102035451216) -- [编译构建过程中,提示“Could not find a version that satisfies the requirement six\>=1.9.0”](#section4498158162320) -- [编译构建过程中,提示找不到“-lgcc”](#section11181036112615) -- [编译构建过程中,提示找不到“python”](#section1571810194619) -- [安装 kconfiglib时,遇到lsb\_release错误](#section691681635814) - -## 安装python3过程中,提示“configure: error: no acceptable C compiler found in $PATH” - -- **现象描述** - - 安装python3过程中出现以下错误: - - ``` - configure: error: no acceptable C compiler found in $PATH. See 'config.log' for more details - ``` - -- **可能原因** - - 环境中未安装“gcc”。 - -- **解决办法** - - 1、通过命令“apt-get install gcc”在线安装。 - - 2、完成后,重新安装python3。 - - -## 安装python3过程中,提示“-bash: make: command not found” - -- **现象描述** - - 安装python3过程中出现以下错误: - - ``` - -bash: make: command not found - ``` - -- **可能原因** - - 环境中未安装“make”。 - -- **解决办法** - - 1、通过命令“apt-get install make”在线安装。 - - 2、完成后,重新安装python3。 - - -## 安装python3过程中,提示“zlib not available” - -- **现象描述** - - 安装python3过程中出现以下错误: - - ``` - zipimport.ZipImportError: can't decompress data; zlib not avaliable - ``` - -- **可能原因** - - 环境中未安装“zlib”。 - -- **解决办法** - - 方法1:通过命令“apt-get install zlib”在线安装。 - - 方法2:如果软件源中没有该软件,请从“www.zlib.net”下载版本代码,并离线安装。 - - ![](figures/10.png) - - 完成下载后,通过以下命令安装: - - ``` - # tar xvf zlib-1.2.11.tar.gz - # cd zlib-1.2.11 - # ./configure - # make && make install - ``` - - 完成后,重新安装python3。 - - -## 安装python3过程中,提示“No module named '\_ctypes'” - -- **现象描述** - - 安装python3过程中出现以下错误: - - ``` - ModuleNotFoundError:No module named ‘_ctypes’ - ``` - - -- **可能原因** - - 环境中未安装“libffi”和“libffi-devel”。 - - -- **解决办法** - - 1、通过命令“apt-get install libffi\* -y”,在线安装。 - - 2、完成后,重新安装python3。 - - -## 编译构建过程中,提示“No module named 'Crypto'” - -- **现象描述** - - 编译构建过程中出现以下错误: - - ``` - ModuleNotFoundError: No module named 'Crypto' - ``` - - -- **可能原因** - - 环境中未安装“Crypto”。 - - -- **解决办法** - - 方法1:通过命令“pip3 install Crypto”,在线安装。 - - 方法2:离线安装 - - 通过网页[https://pypi.org/project/pycrypto/\#files](https://pypi.org/project/pycrypto/#files),下载源码。 - - ![](figures/zh-cn_image_0000001151976061.png) - - 将源码放置在Linux服务器中,解压,并安装“python3 setup.py install”。 - - 完成上述安装后,重新构建。 - - -## 编译构建过程中,提示“No module named 'ecdsa'” - -- **现象描述** - - 编译构建过程中出现以下错误: - - ``` - ModuleNotFoundError:No module named 'ecdsa' - ``` - - -- **可能原因** - - 环境中未安装“ecdsa”。 - - -- **解决办法** - - 方法1:通过命令“pip3 install ecdsa”,在线安装。 - - 方法2:离线安装 - - 通过网页[https://pypi.org/project/ecdsa/\#files](https://pypi.org/project/ecdsa/#files),下载安装包。 - - ![](figures/zh-cn_image_0000001152176131.png) - - 将安装包放置Linux服务器中,并安装“pip3 install ecdsa-0.15-py2.py3-none-any.whl”。 - - 完成上述安装后,重新构建。 - - -## 编译构建过程中,提示“Could not find a version that satisfies the requirement six\>=1.9.0” - -- **现象描述** - - 编译构建过程中出现以下错误: - - ``` - Could not find a version that satisfies the requirement six>=1.9.0 - ``` - - -- **可能原因** - - 环境中未安装合适的“six”。 - - -- **解决办法** - - 方法1:通过命令“pip3 install six”,在线安装。 - - 方法2:离线安装 - - 通过网页[https://pypi.org/project/six/\#files](https://pypi.org/project/six/#files),下载安装包。 - - ![](figures/zh-cn_image_0000001152056191.png) - - 将源码放置在Linux服务器中,并安装“pip3 install six-1.14.0-py2.py3-none-any.whl”。 - - 完成上述安装后,重新构建。 - - -## 编译构建过程中,提示找不到“-lgcc” - -- **现象描述** - - 编译构建过程中出现以下错误: - - ``` - riscv32-unknown-elf-ld: cannot find -lgcc - ``` - - -- **可能原因** - - 交叉编译器gcc\_riscv32的PATH添加错误,如下,在"bin"后多添加了一个“/”,应该删除。 - - ``` - ~/gcc_riscv32/bin/:/data/toolchain/ - ``` - - -- **解决办法** - - 重新修改gcc\_riscv32的PATH,将多余的“/”删除。 - - ``` - ~/gcc_riscv32/bin:/data/toolchain/ - ``` - - -## 编译构建过程中,提示找不到“python” - -- **现象描述** - - 编译构建过程中出现以下错误: - - ``` - -bash: /usr/bin/python: No such file or directory - ``` - - -- **可能原因**1 - - 没有装python。 - -- **解决办法** - - 请按照 [安装Python环境](../quick-start/Ubuntu编译环境准备.md) - -- **可能原因2** - - ![](figures/zh-cn_image_0000001105376252.png) - -- **解决办法** - - usr/bin目录下没有python软链接,请运行以下命令添加软链接: - - ``` - # cd /usr/bin/ - # which python3 - # ln -s /usr/local/bin/python3 python - # python --version - ``` - - 例: - - ![](figures/zh-cn_image_0000001105216296.png) - - -## 安装 kconfiglib时,遇到lsb\_release错误 - -- **现象描述** - - 安装kconfiglib过程中遇到如下错误打印: - - ``` - subprocess.CalledProcessError: Command '('lsb_release', '-a')' returned non-zero exit status 1. - ``` - -- **可能原因** - - lsb\_release模块基于的python版本与现有python版本不一致 - -- **解决办法** - - 执行"find / -name lsb\_release",找到lsb\_release位置并删除,如:"sudo rm -rf /usr/bin/lsb\_release" - - diff --git "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-1.md" "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-1.md" index de74ac1a07c..f8e0b7384e2 100644 --- "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-1.md" +++ "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-1.md" @@ -1,4 +1,4 @@ -# 常见问题 +# 常见问题 - [安装python3过程中,提示“configure: error: no acceptable C compiler found in $PATH”](#section1221016541119) - [安装python3过程中,提示“-bash: make: command not found”](#section1913477181213) @@ -134,7 +134,7 @@ 通过网页[https://pypi.org/project/pycrypto/\#files](https://pypi.org/project/pycrypto/#files),下载源码。 - ![](figures/zh-cn_image_0000001151976061.png) + ![](figures/zh-cn_image_0000001128470864.png) 将源码放置在Linux服务器中,解压,并安装“python3 setup.py install”。 @@ -165,7 +165,7 @@ 通过网页[https://pypi.org/project/ecdsa/\#files](https://pypi.org/project/ecdsa/#files),下载安装包。 - ![](figures/zh-cn_image_0000001152176131.png) + ![](figures/zh-cn_image_0000001128311072.png) 将安装包放置Linux服务器中,并安装“pip3 install ecdsa-0.15-py2.py3-none-any.whl”。 @@ -196,7 +196,7 @@ 通过网页[https://pypi.org/project/six/\#files](https://pypi.org/project/six/#files),下载安装包。 - ![](figures/zh-cn_image_0000001152056191.png) + ![](figures/zh-cn_image_0000001174270699.png) 将源码放置在Linux服务器中,并安装“pip3 install six-1.14.0-py2.py3-none-any.whl”。 @@ -253,7 +253,7 @@ - **可能原因2** - ![](figures/zh-cn_image_0000001105376252.png) + ![](figures/zh-cn_image_0000001128311070.png) - **解决办法** @@ -268,7 +268,7 @@ 例: - ![](figures/zh-cn_image_0000001105216296.png) + ![](figures/zh-cn_image_0000001174350623.png) ## 安装 kconfiglib时,遇到lsb\_release错误 diff --git "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-10.md" "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-10.md" deleted file mode 100644 index 7f7e7a76538..00000000000 --- "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-10.md" +++ /dev/null @@ -1,21 +0,0 @@ -# 常见问题 - -- **现象描述** - - Linux编译服务器终端输入不识别的命令时,提示"ImportError: No module named apt\_pkg" - - -- **可能原因** - - python3 apt安装兼容性问题。 - -- **解决办法** - - 执行如下命令重新安装python3-apt。 - - ``` - sudo apt-get remove python3-apt - sudo apt-get install python3-apt - ``` - - diff --git "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-2.md" "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-2.md" deleted file mode 100755 index 1dade41bc1a..00000000000 --- "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-2.md" +++ /dev/null @@ -1,175 +0,0 @@ -# 常见问题 - -- [烧写选择串口后提示失败](#section627268185113) -- [Windows电脑与单板网络连接失败](#section195391036568) -- [烧写失败](#section571164016565) -- [编译构建过程中,提示找不到“python”](#section1039835245619) -- [串口无回显](#section14871149155911) - -## 烧写选择串口后提示失败 - -- **现象描述** - - 点击烧写并选择串口后,出现Error: Opening COMxx: Access denied。 - - **图 1** 打开串口失败图 - ![](figures/打开串口失败图.png "打开串口失败图") - -- **可能原因** - - 串口已经被占用。 - -- **解决办法** - -1. 按图依次选择下拉框,查找带有serial-xx的终端 - - **图 2** 查找是否存在占用串口的终端 - ![](figures/查找是否存在占用串口的终端.png "查找是否存在占用串口的终端") - -2. 点击标号中的垃圾桶图标,关闭串口。 - - **图 3** 关闭串口终端 - ![](figures/关闭串口终端.png "关闭串口终端") - -3. 重新点击烧写,选择串口并开始烧写程序 - - **图 4** 重新启动烧写任务 - - - ![](figures/changjian1.png) - - -## Windows电脑与单板网络连接失败 - -- **现象描述** - - 点击烧写并选择串口后,无法获取文件。 - - **图 5** 网络不通,单板无法获取文件图 - ![](figures/网络不通-单板无法获取文件图.png "网络不通-单板无法获取文件图") - -- **可能原因** - - 单板网络与Windows电脑不联通。 - - Windows电脑防火墙未允许Visual Studio Code联网。 - -- **解决方法** - -1. 检查网线是否连接。 -2. 点击Windows防火墙。 - - **图 6** 网络防火墙设置图 - ![](figures/网络防火墙设置图.png "网络防火墙设置图") - -3. 点击“允许应用通过防火墙”。 - - **图 7** 防火墙和网络保护界面图 - ![](figures/防火墙和网络保护界面图.png "防火墙和网络保护界面图") - -4. 查找Visual Studio Code应用。 - - **图 8** 查找Visual Studio Code应用图 - ![](figures/查找Visual-Studio-Code应用图.png "查找Visual-Studio-Code应用图") - -5. 勾选Visual Studio Code的专用和公用网络的访问权限。 - - **图 9** 允许Visual Studio Code应用访问网络 - ![](figures/允许Visual-Studio-Code应用访问网络.png "允许Visual-Studio-Code应用访问网络") - - -## 烧写失败 - -- **现象描述** - - 点击烧写并选择串口后,出现无法烧写的情况。 - -- **可能原因** - - 安装IDE插件DevEco后未重启。 - -- **解决方法** - - 重启IDE。 - - -## 编译构建过程中,提示找不到“python” - -- **现象描述** - - ![](figures/zh-cn_image_0000001105056492.png) - - -- **可能原因1** - - 没有装python。 - -- **解决办法** - - 请按照[安装python](../quick-start/Ubuntu编译环境准备.md)。 - -- **可能原因2** - - ![](figures/zh-cn_image_0000001151976069.png) - -- **解决办法** - - usr/bin目录下没有python软链接,请运行以下命令: - - ``` - # cd /usr/bin/ - # which python3 - # ln -s /usr/local/bin/python3 python - # python --version - ``` - - 例: - - ![](figures/zh-cn_image_0000001152176139.png) - - -## 串口无回显 - -- **现象描述** - - 串口显示已连接,重启单板后,回车无任何回显。 - -- **可能原因1** - - 串口连接错误。 - -- **解决办法** - - 修改串口号。 - - 请查看设备管理器,确认连接单板的串口与终端中连接串口是否一致,若不一致,请按镜像运行内[步骤1](../quick-start/运行Hello-OHOS.md)修改串口号。 - - -- **可能原因2** - - 单板U-boot被损坏。 - -- **解决办法** - - 烧写U-boot。 - - 若上述步骤依旧无法连接串口,可能由于单板U-boot损坏,按下述步骤烧写U-boot。 - - -1. 获取引导文件U-boot。 - - >![](public_sys-resources/icon-notice.gif) **须知:** - >单板的U-boot文件请在开源包中获取: - >Hi3516DV300:device\\hisilicon\\hispark\_taurus\\sdk\_liteos\\uboot\\out\\boot\\u-boot-hi3516dv300.bin - >Hi3518EV300:device\\hisilicon\\hispark\_aries\\sdk\_liteos\\uboot\\out\\boot\\u-boot-hi3518ev300.bin - -2. 根据USB烧写步骤烧写U-boot文件。 - - 按照[Hi3516系列USB烧写步骤](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_upload-0000001052148681)/[Hi3518系列USB烧写步骤](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3518_upload-0000001057313128)中描述的USB烧写方法,选择对应单板的U-boot文件进行烧写。 - -3. 烧写完成后,登录串口如下图所示。 - - **图 10** U-boot烧写完成串口显示图 - ![](figures/U-boot烧写完成串口显示图.png "U-boot烧写完成串口显示图") - - diff --git "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-3.md" "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-3.md" index 1dade41bc1a..ece72f03517 100644 --- "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-3.md" +++ "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-3.md" @@ -1,4 +1,4 @@ -# 常见问题 +# 常见问题 - [烧写选择串口后提示失败](#section627268185113) - [Windows电脑与单板网络连接失败](#section195391036568) @@ -97,7 +97,7 @@ - **现象描述** - ![](figures/zh-cn_image_0000001105056492.png) + ![](figures/zh-cn_image_0000001174270715.png) - **可能原因1** @@ -110,7 +110,7 @@ - **可能原因2** - ![](figures/zh-cn_image_0000001151976069.png) + ![](figures/zh-cn_image_0000001128470880.png) - **解决办法** @@ -125,7 +125,7 @@ 例: - ![](figures/zh-cn_image_0000001152176139.png) + ![](figures/zh-cn_image_0000001174270713.png) ## 串口无回显 diff --git "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-5.md" "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-5.md" deleted file mode 100755 index 1bff88b102d..00000000000 --- "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-5.md" +++ /dev/null @@ -1,174 +0,0 @@ -# 常见问题 - -- [烧写选择串口后提示失败](#section1498892119619) -- [Windows电脑与单板网络连接失败](#section8512971816) -- [烧写失败](#section1767804111198) -- [编译构建过程中,提示找不到“python”](#zh-cn_topic_0000001053466255_section1039835245619) -- [串口无回显](#zh-cn_topic_0000001053466255_section14871149155911) - -## 烧写选择串口后提示失败 - -- **现象描述** - - 点击烧写并选择串口后,出现Error: Opening COMxx: Access denied。 - - **图 1** 打开串口失败图 - ![](figures/打开串口失败图-7.png "打开串口失败图-7") - -- **可能原因** - - 串口已经被占用。 - -- **解决办法** - -1. 按图依次选择下拉框,查找带有serial-xx的终端 - - **图 2** 查找是否存在占用串口的终端 - ![](figures/查找是否存在占用串口的终端-8.png "查找是否存在占用串口的终端-8") - -2. 点击标号中的垃圾桶图标,关闭串口。 - - **图 3** 关闭串口终端 - ![](figures/关闭串口终端-9.png "关闭串口终端-9") - -3. 重新点击烧写,选择串口并开始烧写程序 - - **图 4** 重新启动烧写任务 - - - ![](figures/changjian1-10.png) - - -## Windows电脑与单板网络连接失败 - -- **现象描述** - - 点击烧写并选择串口后,无法获取文件。 - - **图 5** 网络不通,单板无法获取文件图 - ![](figures/网络不通-单板无法获取文件图-11.png "网络不通-单板无法获取文件图-11") - -- **可能原因** - - 单板网络与Windows电脑不联通。 - - Windows电脑防火墙未允许Visual Studio Code联网。 - -- **解决方法** - -1. 检查网线是否连接。 -2. 点击Windows防火墙。 - - **图 6** 网络防火墙设置图 - ![](figures/网络防火墙设置图-12.png "网络防火墙设置图-12") - -3. 点击“允许应用通过防火墙”。 - - **图 7** 防火墙和网络保护界面图 - ![](figures/防火墙和网络保护界面图-13.png "防火墙和网络保护界面图-13") - -4. 查找Visual Studio Code应用。 - - **图 8** 查找Visual Studio Code应用图 - ![](figures/查找Visual-Studio-Code应用图-14.png "查找Visual-Studio-Code应用图-14") - -5. 勾选Visual Studio Code的专用和公用网络的访问权限。 - - **图 9** 允许Visual Studio Code应用访问网络 - ![](figures/允许Visual-Studio-Code应用访问网络-15.png "允许Visual-Studio-Code应用访问网络-15") - - -## 烧写失败 - -- **现象描述** - - 点击烧写并选择串口后,出现无法烧写的情况。 - -- **可能原因** - - 安装IDE插件DevEco后未重启。 - -- **解决方法** - - 重启IDE。 - - -## 编译构建过程中,提示找不到“python” - -- **现象描述** - - ![](figures/zh-cn_image_0000001105376260.png) - - -- **可能原因1** - - 没有装python。 - -- **解决办法** - - 请按照[安装python](../quick-start/Ubuntu编译环境准备.md)。 - -- **可能原因2** - - ![](figures/zh-cn_image_0000001105216304.png) - -- **解决办法** - - usr/bin目录下没有python软链接,请运行以下命令: - - ``` - # cd /usr/bin/ - # which python3 - # ln -s /usr/local/bin/python3 python - # python --version - ``` - - 例: - - ![](figures/zh-cn_image_0000001152256235.png) - - -## 串口无回显 - -- **现象描述** - - 串口显示已连接,重启单板后,回车无任何回显。 - -- **可能原因1** - - 串口连接错误。 - -- **解决办法** - - 修改串口号。 - - 请查看设备管理器,确认连接单板的串口与终端中连接串口是否一致,若不一致,请按镜像运行内[步骤1](../quick-start/运行Hello-OHOS.md)修改串口号。 - - -- **可能原因2** - - 单板U-boot被损坏。 - -- **解决办法** - - 烧写U-boot。 - - 若上述步骤依旧无法连接串口,可能由于单板U-boot损坏,按下述步骤烧写U-boot。 - - -1. 获取引导文件U-boot。 - - >![](public_sys-resources/icon-notice.gif) **须知:** - >单板的U-boot文件请在开源包中获取: - >Hi3516DV300:device\\hisilicon\\hispark\_taurus\\sdk\_liteos\\uboot\\out\\boot\\u-boot-hi3516dv300.bin - >Hi3518EV300:device\\hisilicon\\hispark\_aries\\sdk\_liteos\\uboot\\out\\boot\\u-boot-hi3518ev300.bin - -2. 根据USB烧写步骤烧写U-boot文件。 - - 按照[Hi3516系列USB烧写步骤](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_upload-0000001052148681)/[Hi3518系列USB烧写步骤](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3518_upload-0000001057313128)中描述的USB烧写方法,选择对应单板的U-boot文件进行烧写。 - -3. 烧写完成后,登录串口如下图所示。 - - ![](figures/zh-cn_image_0000001105536118.png) - - diff --git "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-6.md" "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-6.md" index 1bff88b102d..b2dc3ad5126 100644 --- "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-6.md" +++ "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-6.md" @@ -1,4 +1,4 @@ -# 常见问题 +# 常见问题 - [烧写选择串口后提示失败](#section1498892119619) - [Windows电脑与单板网络连接失败](#section8512971816) @@ -97,7 +97,7 @@ - **现象描述** - ![](figures/zh-cn_image_0000001105376260.png) + ![](figures/zh-cn_image_0000001174270743.png) - **可能原因1** @@ -110,7 +110,7 @@ - **可能原因2** - ![](figures/zh-cn_image_0000001105216304.png) + ![](figures/zh-cn_image_0000001174270739.png) - **解决办法** @@ -125,7 +125,7 @@ 例: - ![](figures/zh-cn_image_0000001152256235.png) + ![](figures/zh-cn_image_0000001174350661.png) ## 串口无回显 @@ -169,6 +169,6 @@ 3. 烧写完成后,登录串口如下图所示。 - ![](figures/zh-cn_image_0000001105536118.png) + ![](figures/zh-cn_image_0000001174350659.png) diff --git "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-11.md" "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-8.md" similarity index 86% rename from "zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-11.md" rename to "zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-8.md" index 7f7e7a76538..85c32067b44 100644 --- "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-11.md" +++ "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230-8.md" @@ -1,4 +1,4 @@ -# 常见问题 +# 常见问题 - **现象描述** diff --git "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230.md" "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230.md" index 2bb8c5f473a..91cee989ccd 100755 --- "a/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230.md" +++ "b/zh-cn/device-dev/quick-start/\345\270\270\350\247\201\351\227\256\351\242\230.md" @@ -1,4 +1,4 @@ -# 常见问题 +# 常见问题 - [hb 安装过程中出现乱码、段错误](#section411894616119) - [hb 安装过程中提示"cannot import 'sysconfig' from 'distutils'"](#section629417571626) diff --git "a/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244-11.md" "b/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244-11.md" deleted file mode 100644 index 37b798d8432..00000000000 --- "a/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244-11.md" +++ /dev/null @@ -1,246 +0,0 @@ -# 开发步骤 - -- [环境搭建](#section1246439101710) -- [编译](#section375234715135) -- [烧录](#section111671738101213) - - [前提条件](#section1458192114718) - - [使用USB烧录](#section18423113662120) - -- [示例开发](#section5600113114323) - -## 环境搭建 - -请参考[搭建标准系统环境](概述-7.md)完成OpenHarmony的系统环境搭建。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->如果使用三方开发板开发,针对开发板的具体环境要求,以三方开发板的官方指导为准。 - -## 编译 - -使用Docker环境的开发者可参照Docker使用指导进行编译。采用安装包方式的开发者在Linux环境进行如下操作。 - -1. 进入源码根目录,执行如下命令进行版本编译。 - - ``` - ./build.sh --product-name Hi3516DV300 - ``` - - \{product\_name\}为当前版本支持的平台。 - -2. 检查编译结果。编译完成后,log中显示如下: - - ``` - build system image successful. - =====build Hi3516DV300 successful. - ``` - - 编译所生成的文件都归档在out/ohos-arm-release/目录下,结果镜像输出在 out/ohos-arm-release/packages/phone/images/ 目录下。 - - >![](public_sys-resources/icon-note.gif) **说明:** - >其他模块化编译操作,可参见[编译构建指导](../subsystems/标准系统编译构建指导.md)。 - - -## 烧录 - -标准系统烧录,在V2.2 Beta1及以上版本支持。 - -Hi3516系列开发板中,只有Hi3516DV300支持烧录标准系统,其烧录方式包括USB烧录、网口烧录和串口烧录三种方式,其中: - -- **Windows系统:支持USB烧录、网口烧录和串口烧录** -- **Linux系统:支持串口烧录和网口烧录。如果采用的是Linux+Windows双系统,也支持USB烧录。** - -同一种烧录方式(如网口烧录),在Windows和Linux环境下的烧录操作完全一致,区别仅在于DevEco Device Tool环境搭建不同。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->当前Hi3516DV300开发板支持通过USB、网口、串口三种方式烧录OpenHarmony标准系统。本文以USB方式为例讲解烧录操作,其他两种烧录方式请参照[Hi3516DV300烧录指导](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_upload-0000001052148681)。 - -### 前提条件 - -在DevEco Device Tool中[打开一个工程](https://device.harmonyos.com/cn/docs/ide/user-guides/open_project-0000001071680043),该工程文件夹选择待烧录文件所在文件夹即可。其中开发板类型固定选择Hi3516DV300,Framework选择“Hb”。 - -### 使用USB烧录 - -Hi3516DV300开发板使用USB烧录方式,支持Windows系统。如果采用的是Linux+Windows双系统,Linux系统也支持USB烧录。 - -1. 请连接好电脑和待烧录开发板,以Hi3516DV300为例,需要同时连接串口和USB口,具体可参考[Hi3516开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_camera_start_3516-0000001052670587)。 -2. 打开电脑的设备管理器,查看并记录对应的串口号。 - - >![](public_sys-resources/icon-note.gif) **说明:** - >如果对应的串口异常,请根据[Hi3516/Hi3518系列开发板串口驱动安装指导](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695)安装USB转串口的驱动程序。 - - ![](figures/zh-cn_image_0000001160529359.png) - -3. 打开DevEco Device Tool,在Projects中,点击**Settings**打开工程配置界面。 - - ![](figures/2021-01-27_170334-16.png) - -4. 在**Partition Configuration**页签中,按照下表内容填写烧录文件信息,包括: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Name

    -

    Binary

    -

    Memory

    -

    System

    -

    Address

    -

    Length

    -

    Board

    -

    Type

    -

    fastboot

    -

    选择“u-boot-hi3516dv300_emmc.bin”

    -

    emmc

    -

    none

    -

    0x000000

    -

    0x100000

    -

    固定选择“hi3516dv300”

    -

    NA

    -

    boot

    -

    选择“uImage”

    -

    emmc

    -

    none

    -

    0x100000

    -

    0xf00000

    -

    NA

    -

    updater

    -

    选择“updater.img”

    -

    emmc

    -

    ext3/4

    -

    0x1000000

    -

    0x1400000

    -

    NA

    -

    misc

    -

    空白,不用选择

    -

    emmc

    -

    none

    -

    0x2400000

    -

    0x100000

    -

    NA

    -

    system

    -

    选择“system.img”

    -

    emmc

    -

    ext3/4

    -

    0x2500000

    -

    0xceb00000

    -

    NA

    -

    vendor

    -

    选择“vendor.img”

    -

    emmc

    -

    ext3/4

    -

    0xd1000000

    -

    0x10000000

    -

    NA

    -

    userdata

    -

    选择“userdata.img”

    -

    emmc

    -

    ext3/4

    -

    0xe1000000

    -

    0x5b800000

    -

    NA

    -
    - - ![](figures/zh-cn_image_0000001160527611.png) - -5. 在“hi3516dv300”页签,设置烧录选项,包括upload\_port、upload\_partitions和upload\_protocol。 - - - upload\_port:选择步骤2中查询的串口号。 - - upload\_protocol:选择烧录协议,固定选择“hiburn-usb”。 - - upload\_partitions:选择待烧录的文件,包括fastboot、boot、updater、misc、system、vendor和userdata。 - - ![](figures/zh-cn_image_0000001160528243.png) - -6. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 -7. 打开工程文件,点击![](figures/2021-01-27_170334-17.png)图标,打开DevEco Device Tool界面,在“PROJECT TASKS”中,点击fastboot下的**Erase**按钮,擦除U-Boot。 - - ![](figures/zh-cn_image_0000001163045527.png) - -8. 执行**Erase**擦除操作后,显示如下提示信息时,请重启开发板(下电再上电)。 - - ![](figures/zh-cn_image_0000001114129426.png) - -9. 重新上电后,显示如下信息时,表示擦除U-Boot成功。 - - ![](figures/zh-cn_image_0000001113969536.png) - -10. 擦除完成后,点击hi3516dv300下的**Upload**按钮,启动烧录。 - - >![](public_sys-resources/icon-note.gif) **说明:** - >如果您是第一次在工作台烧录Hi3516/Hi3518系列开发板,可能烧录失败,提示“not find the Devices”,请根据[Hi3516/Hi3518系列开发板USB驱动安装](https://device.harmonyos.com/cn/docs/ide/user-guides/usb_driver-0000001058690393)进行处理后再重新烧录。 - - ![](figures/1-18.png) - -11. 启动烧录后,界面提示如下信息时,表示烧录成功。 - - ![](figures/zh-cn_image_0000001160649343.png) - - -## 示例开发 - -恭喜!您已经完成了OpenHarmony标准系统的快速入门,接下来可[开发一个小示例](../guide/概述-10.md),进一步熟悉OpenHarmony的开发。 - diff --git "a/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244-12.md" "b/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244-12.md" deleted file mode 100644 index 40cde60fb17..00000000000 --- "a/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244-12.md" +++ /dev/null @@ -1,246 +0,0 @@ -# 开发步骤 - -- [环境搭建](#section1246439101710) -- [编译](#section375234715135) -- [烧录](#section111671738101213) - - [前提条件](#section1458192114718) - - [使用USB烧录](#section18423113662120) - -- [示例开发](#section5600113114323) - -## 环境搭建 - -请参考[搭建标准系统环境](概述-8.md)完成OpenHarmony的系统环境搭建。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->如果使用三方开发板开发,针对开发板的具体环境要求,以三方开发板的官方指导为准。 - -## 编译 - -使用Docker环境的开发者可参照Docker使用指导进行编译。采用安装包方式的开发者在Linux环境进行如下操作。 - -1. 进入源码根目录,执行如下命令进行版本编译。 - - ``` - ./build.sh --product-name Hi3516DV300 - ``` - - \{product\_name\}为当前版本支持的平台。 - -2. 检查编译结果。编译完成后,log中显示如下: - - ``` - build system image successful. - =====build Hi3516DV300 successful. - ``` - - 编译所生成的文件都归档在out/ohos-arm-release/目录下,结果镜像输出在 out/ohos-arm-release/packages/phone/images/ 目录下。 - - >![](public_sys-resources/icon-note.gif) **说明:** - >其他模块化编译操作,可参见[编译构建指导](../subsystems/标准系统编译构建指导.md)。 - - -## 烧录 - -标准系统烧录,在V2.2 Beta1及以上版本支持。 - -Hi3516系列开发板中,只有Hi3516DV300支持烧录标准系统,其烧录方式包括USB烧录、网口烧录和串口烧录三种方式,其中: - -- **Windows系统:支持USB烧录、网口烧录和串口烧录** -- **Linux系统:支持串口烧录和网口烧录。如果采用的是Linux+Windows双系统,也支持USB烧录。** - -同一种烧录方式(如网口烧录),在Windows和Linux环境下的烧录操作完全一致,区别仅在于DevEco Device Tool环境搭建不同。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->当前Hi3516DV300开发板支持通过USB、网口、串口三种方式烧录OpenHarmony标准系统。本文以USB方式为例讲解烧录操作,其他两种烧录方式请参照[Hi3516DV300烧录指导](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_upload-0000001052148681)。 - -### 前提条件 - -在DevEco Device Tool中[打开一个工程](https://device.harmonyos.com/cn/docs/ide/user-guides/open_project-0000001071680043),该工程文件夹选择待烧录文件所在文件夹即可。其中开发板类型固定选择Hi3516DV300,Framework选择“Hb”。 - -### 使用USB烧录 - -Hi3516DV300开发板使用USB烧录方式,支持Windows系统。如果采用的是Linux+Windows双系统,Linux系统也支持USB烧录。 - -1. 请连接好电脑和待烧录开发板,以Hi3516DV300为例,需要同时连接串口和USB口,具体可参考[Hi3516开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_camera_start_3516-0000001052670587)。 -2. 打开电脑的设备管理器,查看并记录对应的串口号。 - - >![](public_sys-resources/icon-note.gif) **说明:** - >如果对应的串口异常,请根据[Hi3516/Hi3518系列开发板串口驱动安装指导](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695)安装USB转串口的驱动程序。 - - ![](figures/zh-cn_image_0000001160529359.png) - -3. 打开DevEco Device Tool,在Projects中,点击**Settings**打开工程配置界面。 - - ![](figures/2021-01-27_170334-16.png) - -4. 在**Partition Configuration**页签中,按照下表内容填写烧录文件信息,包括: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Name

    -

    Binary

    -

    Memory

    -

    System

    -

    Address

    -

    Length

    -

    Board

    -

    Type

    -

    fastboot

    -

    选择“u-boot-hi3516dv300_emmc.bin”

    -

    emmc

    -

    none

    -

    0x000000

    -

    0x100000

    -

    固定选择“hi3516dv300”

    -

    NA

    -

    boot

    -

    选择“uImage”

    -

    emmc

    -

    none

    -

    0x100000

    -

    0xf00000

    -

    NA

    -

    updater

    -

    选择“updater.img”

    -

    emmc

    -

    ext3/4

    -

    0x1000000

    -

    0x1400000

    -

    NA

    -

    misc

    -

    空白,不用选择

    -

    emmc

    -

    none

    -

    0x2400000

    -

    0x100000

    -

    NA

    -

    system

    -

    选择“system.img”

    -

    emmc

    -

    ext3/4

    -

    0x2500000

    -

    0xceb00000

    -

    NA

    -

    vendor

    -

    选择“vendor.img”

    -

    emmc

    -

    ext3/4

    -

    0xd1000000

    -

    0x10000000

    -

    NA

    -

    userdata

    -

    选择“userdata.img”

    -

    emmc

    -

    ext3/4

    -

    0xe1000000

    -

    0x5b800000

    -

    NA

    -
    - - ![](figures/zh-cn_image_0000001160527611.png) - -5. 在“hi3516dv300”页签,设置烧录选项,包括upload\_port、upload\_partitions和upload\_protocol。 - - - upload\_port:选择步骤2中查询的串口号。 - - upload\_protocol:选择烧录协议,固定选择“hiburn-usb”。 - - upload\_partitions:选择待烧录的文件,包括fastboot、boot、updater、misc、system、vendor和userdata。 - - ![](figures/zh-cn_image_0000001160528243.png) - -6. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 -7. 打开工程文件,点击![](figures/2021-01-27_170334-17.png)图标,打开DevEco Device Tool界面,在“PROJECT TASKS”中,点击fastboot下的**Erase**按钮,擦除U-Boot。 - - ![](figures/zh-cn_image_0000001163045527.png) - -8. 执行**Erase**擦除操作后,显示如下提示信息时,请重启开发板(下电再上电)。 - - ![](figures/zh-cn_image_0000001114129426.png) - -9. 重新上电后,显示如下信息时,表示擦除U-Boot成功。 - - ![](figures/zh-cn_image_0000001113969536.png) - -10. 擦除完成后,点击hi3516dv300下的**Upload**按钮,启动烧录。 - - >![](public_sys-resources/icon-note.gif) **说明:** - >如果您是第一次在工作台烧录Hi3516/Hi3518系列开发板,可能烧录失败,提示“not find the Devices”,请根据[Hi3516/Hi3518系列开发板USB驱动安装](https://device.harmonyos.com/cn/docs/ide/user-guides/usb_driver-0000001058690393)进行处理后再重新烧录。 - - ![](figures/1-18.png) - -11. 启动烧录后,界面提示如下信息时,表示烧录成功。 - - ![](figures/zh-cn_image_0000001160649343.png) - - -## 示例开发 - -恭喜!您已经完成了OpenHarmony标准系统的快速入门,接下来可[开发一个小示例](../guide/概述-10.md),进一步熟悉OpenHarmony的开发。 - diff --git "a/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244.md" "b/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244.md" index d9eb08eb157..70e795860fb 100644 --- "a/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244.md" +++ "b/zh-cn/device-dev/quick-start/\345\274\200\345\217\221\346\255\245\351\252\244.md" @@ -1,4 +1,4 @@ -# 开发步骤 +# 开发步骤 - **[Hi3861开发板](Hi3861开发板.md)** diff --git "a/zh-cn/device-dev/quick-start/\346\220\255\345\273\272Ubuntu\347\216\257\345\242\203\345\217\212\347\274\226\350\257\221\357\274\210Docker\346\226\271\345\274\217\357\274\211.md" "b/zh-cn/device-dev/quick-start/\346\220\255\345\273\272Ubuntu\347\216\257\345\242\203\345\217\212\347\274\226\350\257\221\357\274\210Docker\346\226\271\345\274\217\357\274\211.md" new file mode 100644 index 00000000000..2f4c97aa4a7 --- /dev/null +++ "b/zh-cn/device-dev/quick-start/\346\220\255\345\273\272Ubuntu\347\216\257\345\242\203\345\217\212\347\274\226\350\257\221\357\274\210Docker\346\226\271\345\274\217\357\274\211.md" @@ -0,0 +1,118 @@ +# 搭建Ubuntu环境及编译(Docker方式) + +- [获取标准系统源码](#section8761819202511) + - [前提条件](#section102871547153314) + - [操作步骤](#section429012478331) + +- [获取Docker环境](#section181431248132513) +- [编译](#section92391739152318) + +OpenHarmony标准系统为开发者提供的Docker环境已经将对应的编译工具链进行了封装,开发者可省略对应工具的安装。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>- 在使用Docker前需要先安装Docker,Docker安装请参考[官方指导](https://docs.docker.com/engine/install/ubuntu/)。 +>- Docker方式和安装包方式二选一即可。选择Docker方式的开发者可跳过[安装包方式](搭建Ubuntu环境及编译(安装包方式).md)的内容。 + +## 获取标准系统源码 + +### 前提条件 + +1. 注册码云gitee账号。 +2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191)。 +3. 安装[git客户端](http://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git)和[git-lfs](https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading))并配置用户信息。 + + ``` + git config --global user.name "yourname" + git config --global user.email "your-email-address" + git config --global credential.helper store + ``` + +4. 安装码云repo工具,可以执行如下命令。 + + ``` + curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo #如果没有权限,可下载至其他目录,并将其配置到环境变量中 + chmod a+x /usr/local/bin/repo + pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests + ``` + + +### 操作步骤 + +方式一(推荐):通过repo + ssh 下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。 + +``` +repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify +repo sync -c +repo forall -c 'git lfs pull' +``` + +方式二:通过repo + https 下载。 + +``` +repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify +repo sync -c +repo forall -c 'git lfs pull' +``` + +## 获取Docker环境 + +**方式一:从HuaweiCloud SWR上直接获取Docker镜像进行构建:** + +1. 获取Docker镜像。 + + ``` + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 + ``` + +2. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 + + ``` + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1 + ``` + + +**方式二:通过Dockerfile 构建本地Docker镜像进行构建** + +1. 获取Dockerfile脚本文件,用来构建本地Docker镜像。 + + ``` + git clone https://gitee.com/openharmony/docs.git + ``` + +2. 进入Dockerfile代码目录路径执行Docker镜像构建命令。 + + ``` + cd docs/docker/standard + ./build.sh + ``` + +3. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 + + ``` + docker run -it -v $(pwd):/home/openharmony openharmony-docker-standard:0.0.1 + ``` + + +## 编译 + +1. 在源码的根目录执行预处理脚本。 + + ``` + ../scripts/prepare.sh + ``` + +2. 通过如下编译脚本启动标准系统类设备(参考内存≥128MB)的编译。 + + ``` + ./build.sh --product-name {product_name} + ``` + + \{product\_name\}为当前版本支持的平台,比如:Hi3516DV300 + + 编译所生成的文件都归档在out/ohos-arm-release/目录下,结果镜像输出在 out/ohos-arm-release/packages/phone/images/ 目录下。 + +3. 编译源码完成,请进行镜像烧录,具体请参见[镜像烧录](镜像烧录.md)。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>退出Docker执行exit命令即可。 + diff --git "a/zh-cn/device-dev/quick-start/\346\220\255\345\273\272Ubuntu\347\216\257\345\242\203\345\217\212\347\274\226\350\257\221\357\274\210\345\256\211\350\243\205\345\214\205\346\226\271\345\274\217\357\274\211.md" "b/zh-cn/device-dev/quick-start/\346\220\255\345\273\272Ubuntu\347\216\257\345\242\203\345\217\212\347\274\226\350\257\221\357\274\210\345\256\211\350\243\205\345\214\205\346\226\271\345\274\217\357\274\211.md" new file mode 100644 index 00000000000..258eb324d2b --- /dev/null +++ "b/zh-cn/device-dev/quick-start/\346\220\255\345\273\272Ubuntu\347\216\257\345\242\203\345\217\212\347\274\226\350\257\221\357\274\210\345\256\211\350\243\205\345\214\205\346\226\271\345\274\217\357\274\211.md" @@ -0,0 +1,98 @@ +# 搭建Ubuntu环境及编译(安装包方式) + +- [安装依赖工具](#section18431165519244) +- [获取标准系统源码](#section113751052102517) + - [前提条件](#section102871547153314) + - [操作步骤](#section429012478331) + +- [执行prebuilts](#section0495320152619) +- [编译](#section1664835963517) + +## 安装依赖工具 + +安装命令如下: + +``` +sudo apt-get update && sudo apt-get install binutils git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8 python3-pip +``` + +>![](public_sys-resources/icon-note.gif) **说明:** +>以上安装命令适用于Ubuntu18.04,其他版本请根据安装包名称采用对应的安装命令。 + +## 获取标准系统源码 + +### 前提条件 + +1. 注册码云gitee账号。 +2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191)。 +3. 安装[git客户端](http://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git)和[git-lfs](https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading))并配置用户信息。 + + ``` + git config --global user.name "yourname" + git config --global user.email "your-email-address" + git config --global credential.helper store + ``` + +4. 安装码云repo工具,可以执行如下命令。 + + ``` + curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo #如果没有权限,可下载至其他目录,并将其配置到环境变量中 + chmod a+x /usr/local/bin/repo + pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests + ``` + + +### 操作步骤 + +方式一(推荐):通过repo + ssh 下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。 + +``` +repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify +repo sync -c +repo forall -c 'git lfs pull' +``` + +方式二:通过repo + https 下载。 + +``` +repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify +repo sync -c +repo forall -c 'git lfs pull' +``` + +## 执行prebuilts + +在源码根目录下执行脚本,安装编译器及二进制工具。 + +``` +bash build/prebuilts_download.sh +``` + +下载的prebuilts二进制默认存放在与OpenHarmony同目录下的OpenHarmony\_2.0\_canary\_prebuilts下。 + +## 编译 + +在Linux环境进行如下操作: + +1. 进入源码根目录,执行如下命令进行版本编译。 + + ``` + ./build.sh --product-name {product_name} + ``` + + \{product\_name\}为当前版本支持的平台,比如:Hi3516DV300 + +2. 检查编译结果。编译完成后,log中显示如下: + + ``` + build system image successful. + =====build Hi3516DV300 successful. + ``` + + 编译所生成的文件都归档在out/ohos-arm-release/目录下,结果镜像输出在 out/ohos-arm-release/packages/phone/images/ 目录下。 + + >![](public_sys-resources/icon-note.gif) **说明:** + >其他模块化编译操作,可参见[编译构建指导](../subsystems/编译构建子系统-标准系统.md)。 + +3. 编译源码完成,请进行镜像烧录,具体请参见[镜像烧录](镜像烧录.md)。 + diff --git "a/zh-cn/device-dev/quick-start/\346\220\255\345\273\272\347\263\273\347\273\237\347\216\257\345\242\203.md" "b/zh-cn/device-dev/quick-start/\346\220\255\345\273\272\347\263\273\347\273\237\347\216\257\345\242\203.md" index 8329e7ffd09..73a9d50f87e 100755 --- "a/zh-cn/device-dev/quick-start/\346\220\255\345\273\272\347\263\273\347\273\237\347\216\257\345\242\203.md" +++ "b/zh-cn/device-dev/quick-start/\346\220\255\345\273\272\347\263\273\347\273\237\347\216\257\345\242\203.md" @@ -1,4 +1,4 @@ -# 搭建系统环境 +# 搭建系统环境 - **[概述](概述-0.md)** diff --git "a/zh-cn/device-dev/quick-start/\346\240\207\345\207\206\347\263\273\347\273\237\345\205\245\351\227\250.md" "b/zh-cn/device-dev/quick-start/\346\240\207\345\207\206\347\263\273\347\273\237\345\205\245\351\227\250.md" index 6c5d5731272..0281a27a47b 100755 --- "a/zh-cn/device-dev/quick-start/\346\240\207\345\207\206\347\263\273\347\273\237\345\205\245\351\227\250.md" +++ "b/zh-cn/device-dev/quick-start/\346\240\207\345\207\206\347\263\273\347\273\237\345\205\245\351\227\250.md" @@ -1,9 +1,15 @@ # 标准系统入门 -- **[概述](概述-7.md)** +- **[入门介绍](入门介绍.md)** -- **[环境搭建](环境搭建.md)** +- **[Windows开发环境准备](Windows开发环境准备-7.md)** -- **[开发步骤](开发步骤-12.md)** +- **[搭建Ubuntu环境及编译(Docker方式)](搭建Ubuntu环境及编译(Docker方式).md)** + +- **[搭建Ubuntu环境及编译(安装包方式)](搭建Ubuntu环境及编译(安装包方式).md)** + +- **[镜像烧录](镜像烧录.md)** + +- **[常见问题](常见问题-8.md)** diff --git "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-0.md" "b/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-0.md" index 9438a570954..1ef79df37bf 100644 --- "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-0.md" +++ "b/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-0.md" @@ -1,4 +1,4 @@ -# 概述 +# 概述 OpenHarmony可以使用DevEco Device Tool进行开发、编译、烧录、调测等。 diff --git "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-6.md" "b/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-6.md" deleted file mode 100644 index 8551ab5722f..00000000000 --- "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-6.md" +++ /dev/null @@ -1,4 +0,0 @@ -# 概述 - -开发者可以通过本文快速掌握OpenHarmony标准系统的环境搭建、编译、烧录、启动等操作。本文将以当前推荐的Hi3516DV300开发板为例进行说明。 - diff --git "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-7.md" "b/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-7.md" deleted file mode 100644 index 8551ab5722f..00000000000 --- "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-7.md" +++ /dev/null @@ -1,4 +0,0 @@ -# 概述 - -开发者可以通过本文快速掌握OpenHarmony标准系统的环境搭建、编译、烧录、启动等操作。本文将以当前推荐的Hi3516DV300开发板为例进行说明。 - diff --git "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-8.md" "b/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-8.md" deleted file mode 100644 index 2dfd7a2168d..00000000000 --- "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260-8.md" +++ /dev/null @@ -1,58 +0,0 @@ -# 概述 - -- [简介](#section18217135811916) -- [环境要求](#section466851916410) - - [硬件要求](#section19682305453) - - [软件要求](#section1595725202314) - - -## 简介 - -OpenHarmony标准系统当前可以使用DevEco Device Tool在Windows平台进行开发和烧录,使用Linux环境进行编译。本文接下来将介绍如何进行对应环境的搭建。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->OpenHarmony标准系统的Windows开发环境准备跟轻量和小型系统的对应操作一致,所以完成轻量和小型系统Windows开发环境准备的开发者可以跳过本文[第2章节](Windows开发环境准备-9.md)。 - -## 环境要求 - -### 硬件要求 - -- Linux服务器 -- Windows工作台(主机电脑) - -### 软件要求 - -**表 1** 开发平台要求 - - - - - - - - - - - - - - - - - - -

    平台

    -

    软件

    -

    描述

    -

    备注

    -

    Linux编译服务器

    -

    操作系统

    -

    Ubuntu18.04及以上64位系统版本,Shell使用bash。服务器硬件规格要求见下:

    -
    • 硬盘:至少400G
    • CPU:至少8核
    • 内存:至少32G
    -

    通常系统默认安装samba、vim等常用软件,需要做适当适配以支持Linux文件共享。

    -

    开发人员可以在Windows工作台中进行程序开发,或者远程登录到Linux服务器进行程序开发。

    -

    Windows工作台

    -

    操作系统

    -

    Windows XP/Windows7/Windows10

    -
    - diff --git "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260.md" "b/zh-cn/device-dev/quick-start/\346\246\202\350\277\260.md" index 426a8d9fbd5..32de2be933c 100644 --- "a/zh-cn/device-dev/quick-start/\346\246\202\350\277\260.md" +++ "b/zh-cn/device-dev/quick-start/\346\246\202\350\277\260.md" @@ -1,4 +1,4 @@ -# 概述 +# 概述 OpenHarmony轻量和小型系统适用于内存较小的IOT设备,本文选取了三款典型开发板:Hi3861 WLAN模组、Hi3516DV300、Hi3518EV300,并基于上述三款开发板进行开发介绍。 diff --git "a/zh-cn/device-dev/quick-start/\347\216\257\345\242\203\346\220\255\345\273\272.md" "b/zh-cn/device-dev/quick-start/\347\216\257\345\242\203\346\220\255\345\273\272.md" deleted file mode 100644 index 299cbb9c175..00000000000 --- "a/zh-cn/device-dev/quick-start/\347\216\257\345\242\203\346\220\255\345\273\272.md" +++ /dev/null @@ -1,11 +0,0 @@ -# 环境搭建 - -- **[概述](概述-8.md)** - -- **[Windows开发环境准备](Windows开发环境准备-9.md)** - -- **[Ubuntu编译环境准备](Ubuntu编译环境准备-10.md)** - -- **[常见问题](常见问题-11.md)** - - diff --git "a/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS-4.md" "b/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS-4.md" deleted file mode 100755 index 6e33d9e8e90..00000000000 --- "a/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS-4.md" +++ /dev/null @@ -1,264 +0,0 @@ -# 运行Hello OHOS - -- [新建应用程序](#section1550972416485) -- [编译](#section234175193114) -- [烧录](#section7609155824819) -- [镜像运行](#section17612105814480) -- [下一步学习](#section9712145420182) - -本节指导开发者在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello OHOS!”。 - -## 新建应用程序 - -1. 新建目录及源码 - - 新建**applications/sample/camera/apps/src/helloworld.c**目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改OHOS为World)。当前应用程序可支持标准C及C++的代码开发。 - - ``` - #include - - int main(int argc, char **argv) - { - printf("\n************************************************\n"); - printf("\n\t\tHello OHOS!\n"); - printf("\n************************************************\n\n"); - - return 0; - } - ``` - -2. 新建编译组织文件 - - 新建**applications/sample/camera/apps/BUILD.gn**文件,内容如下所示: - - ``` - import("//build/lite/config/component/lite_component.gni") - lite_component("hello-OHOS") { - features = [ ":helloworld" ] - } - executable("helloworld") { - output_name = "helloworld" - sources = [ "src/helloworld.c" ] - include_dirs = [] - defines = [] - cflags_c = [] - ldflags = [] - } - ``` - -3. 添加新组件 - - 修改文件**build/lite/components/applications.json**,添加组件hello\_world\_app的配置,如下所示为applications.json文件片段,"\#\#start\#\#"和"\#\#end\#\#"之间为新增配置("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - - ``` - { - "components": [ - { - "component": "camera_sample_communication", - "description": "Communication related samples.", - "optional": "true", - "dirs": [ - "applications/sample/camera/communication" - ], - "targets": [ - "//applications/sample/camera/communication:sample" - ], - "rom": "", - "ram": "", - "output": [], - "adapted_kernel": [ "liteos_a" ], - "features": [], - "deps": { - "components": [], - "third_party": [] - } - }, - ##start## - { - "component": "hello_world_app", - "description": "Communication related samples.", - "optional": "true", - "dirs": [ - "applications/sample/camera/apps" - ], - "targets": [ - "//applications/sample/camera/apps:hello-OHOS" - ], - "rom": "", - "ram": "", - "output": [], - "adapted_kernel": [ "liteos_a" ], - "features": [], - "deps": { - "components": [], - "third_party": [] - } - }, - ##end## - { - "component": "camera_sample_app", - "description": "Camera related samples.", - "optional": "true", - "dirs": [ - "applications/sample/camera/launcher", - "applications/sample/camera/cameraApp", - "applications/sample/camera/setting", - "applications/sample/camera/gallery", - "applications/sample/camera/media" - ], - ``` - -4. 修改单板配置文件 - - 修改文件**vendor/hisilicon/hispark\_aries/config.json**,新增hello\_world\_app组件的条目,如下所示代码片段为applications子系统配置,"\#\#start\#\#"和"\#\#end\#\#"之间为新增条目("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - - ``` - { - "subsystem": "applications", - "components": [ - ##start## - { "component": "hello_world_app", "features":[] }, - ##end## - { "component": "camera_sample_app", "features":[] } - - ] - }, - ``` - - -## 编译 - -如果Linux编译环境通过Docker方式安装,具体编译过程请参见[Docker方式获取编译环境](../get-code/获取工具.md)的编译操作。如果Linux编译环境通过软件包方式安装,进入源码根目录,执行如下命令进行编译: - -``` -hb set(设置编译路径) -.(选择当前路径) -选择ipcamera_hispark_aries@hisilicon并回车 -hb build -f(执行编译) -``` - -结果文件生成在out/hispark\_aries/ipcamera\_hispark\_aries目录下。 - -**图 1** 设置图例 -![](figures/设置图例-4.png "设置图例-4") - ->![](public_sys-resources/icon-notice.gif) **须知:** ->Hi3518EV300单板的U-boot文件获取路径:device/hisilicon/hispark\_aries/sdk\_liteos/uboot/out/boot/u-boot-hi3518ev300.bin - -## 烧录 - -Hi3518开发板的代码烧录仅支持USB烧录方式。 - -1. 请连接好电脑和待烧录开发板,以Hi3518EV300为例,需要同时连接串口和USB口,具体可参考[Hi3518开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_camera_start_hi3518-0000001050170473)。 -2. 打开电脑的设备管理器,查看并记录对应的串口号。 - - >![](public_sys-resources/icon-note.gif) **说明:** - >如果对应的串口异常,请根据[Hi3516/Hi3518系列开发板串口驱动安装指导](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695)安装USB转串口的驱动程序。 - - ![](figures/zh-cn_image_0000001073057176.png) - -3. 打开DevEco Device Tool,在Projects中,点击**Settings**打开工程配置界面。 - - ![](figures/zh-cn_image_0000001077956808.png) - -4. 在“Partition Configuration”页签,设置待烧录文件信息,默认情况下,DevEco Device Tool已针对Hi3518系列开发板进行适配,无需单独修改。 -5. 在“hi3518ev300”页签,设置烧录选项,包括upload\_port、upload\_partitions和upload\_protocol。 - - - upload\_port:选择步骤[2](#zh-cn_topic_0000001057313128_li46411811196)中查询的串口号。 - - upload\_protocol:选择烧录协议,固定选择“hiburn-usb”。 - - upload\_partitions:选择待烧录的文件,默认情况下会同时烧录fastboot、kernel、rootfs和userfs。 - - ![](figures/zh-cn_image_0000001096963405.png) - -6. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 -7. 打开工程文件,点击![](figures/2021-01-27_170334-5.png)图标,打开DevEco Device Tool界面,在“PROJECT TASKS”中,点击hi3518ev300\_fastboot下的**Erase**按钮,擦除U-Boot。 - - ![](figures/2021-01-27_181047.png) - - ![](figures/zh-cn_image_0000001163529159.png) - -8. 执行**Erase**擦除操作后,显示如下提示信息时,请重启开发板(下电再上电)。 - - ![](figures/zh-cn_image_0000001078089378.png) - -9. 重新上电后,显示如下信息时,表示擦除U-Boot成功。 - - ![](figures/zh-cn_image_0000001073835952.png) - -10. 擦除完成后,点击hi3518ev300下的**Upload**按钮,启动烧录。 - - ![](figures/zh-cn_image_0000001163568181.png) - -11. 启动烧录后,界面提示如下信息时,表示烧录成功。 - - ![](figures/zh-cn_image_0000001073242197.png) - - -## 镜像运行 - -1. 连接串口。 - - >![](public_sys-resources/icon-notice.gif) **须知:** - >若无法连接串口,请参考[常见问题](../quick-start/常见问题-5.md)进行排查。 - - **图 2** 连接串口图 - - - ![](figures/chuankou1-6.png) - - 1. 单击**Monitor**打开串口。 - 2. 连续输入回车直到串口显示"hisilicon"。 - 3. 单板初次启动或修改启动参数,请进入[步骤2](#li9441185382314),否则进入[步骤3](#li6442853122312)。 - -2. (初次烧写必选)修改U-boot的bootcmd及bootargs内容:该步骤为固化操作,可保存执行结果,但U-boot重新烧入,则需要再次执行下述步骤。 - - **表 1** U-boot修改命令 - - - - - - - - - - - - - - - - - - - - - - -

    执行命令

    -

    命令解释

    -

    setenv bootcmd "sf probe 0;sf read 0x40000000 0x100000 0x600000;go 0x40000000";

    -

    设置bootcmd内容,选择FLASH器件0,读取FLASH起始地址为0x100000,大小为0x600000字节的内容到0x40000000的内存地址,此处0x600000为6MB,与IDE中填写OHOS_Image.bin的文件大小必须相同

    -

    setenv bootargs "console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7M rootsize=8M";

    -

    表示设置bootargs参数为串口输出,波特率为115200,数据位8,rootfs挂载于FLASH上,文件系统类型为jffs2 rw,以支持可读写JFFS2文件系统。“rootaddr=7M rootsize=8M”处对应填入实际rootfs.img的烧写起始位置与长度,与IDE内所填大小必须相同

    -

    saveenv

    -

    表示保存当前配置。

    -

    reset

    -

    表示复位单板。

    -

    pri

    -

    表示查看显示参数。

    -
    - - >![](public_sys-resources/icon-notice.gif) **须知:** - >**“go 0x40000000”**为可选指令,默认配置已将该指令固化在启动参数中,单板复位后可自动启动。若想切换为手动启动,可在U-boot启动倒数阶段使用"回车"打断自动启动。 - -3. 若启动时显示**"hisilicon \#**字样,请输入**“reset”**指令,等待系统自启动进入系统,系统启动后,显示**“OHOS”**字样,输入**”./bin/helloworld”**并回车,显示成功结果如下图所示。 - - **图 3** 启动成功并执行应用程序图 - ![](figures/启动成功并执行应用程序图.png "启动成功并执行应用程序图") - - -## 下一步学习 - -恭喜您,已完成Hi3518的快速上手!建议您下一步进入[无屏摄像头产品开发](../guide/摄像头控制.md)的学习 。 - diff --git "a/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS-5.md" "b/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS-5.md" index c0146d09136..51873c97ac3 100644 --- "a/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS-5.md" +++ "b/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS-5.md" @@ -1,4 +1,4 @@ -# 运行Hello OHOS +# 运行Hello OHOS - [新建应用程序](#section1550972416485) - [编译](#section234175193114) @@ -128,7 +128,7 @@ ## 编译 -如果Linux编译环境通过Docker方式安装,具体编译过程请参见[Docker方式获取编译环境](../get-code/获取工具.md)的编译操作。如果Linux编译环境通过软件包方式安装,进入源码根目录,执行如下命令进行编译: +如果Linux编译环境通过Docker方式安装,具体编译过程请参见[Docker方式获取编译环境](../get-code/Docker编译环境.md)的编译操作。如果Linux编译环境通过软件包方式安装,进入源码根目录,执行如下命令进行编译: ``` hb set(设置编译路径) @@ -149,17 +149,17 @@ hb build -f(执行编译) Hi3518开发板的代码烧录仅支持USB烧录方式。 -1. 请连接好电脑和待烧录开发板,以Hi3518EV300为例,需要同时连接串口和USB口,具体可参考[Hi3518开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_camera_start_hi3518-0000001050170473)。 +1. 请连接好电脑和待烧录开发板,以Hi3518EV300为例,需要同时连接串口和USB口,具体可参考[Hi3518开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_minitinier_des_3518-0000001105201138)。 2. 打开电脑的设备管理器,查看并记录对应的串口号。 >![](public_sys-resources/icon-note.gif) **说明:** >如果对应的串口异常,请根据[Hi3516/Hi3518系列开发板串口驱动安装指导](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695)安装USB转串口的驱动程序。 - ![](figures/zh-cn_image_0000001073057176.png) + ![](figures/zh-cn_image_0000001128470900.png) 3. 打开DevEco Device Tool,在Projects中,点击**Settings**打开工程配置界面。 - ![](figures/zh-cn_image_0000001077956808.png) + ![](figures/zh-cn_image_0000001174350649.png) 4. 在“Partition Configuration”页签,设置待烧录文件信息,默认情况下,DevEco Device Tool已针对Hi3518系列开发板进行适配,无需单独修改。 5. 在“hi3518ev300”页签,设置烧录选项,包括upload\_port、upload\_partitions和upload\_protocol。 @@ -168,28 +168,28 @@ Hi3518开发板的代码烧录仅支持USB烧录方式。 - upload\_protocol:选择烧录协议,固定选择“hiburn-usb”。 - upload\_partitions:选择待烧录的文件,默认情况下会同时烧录fastboot、kernel、rootfs和userfs。 - ![](figures/zh-cn_image_0000001096963405.png) + ![](figures/zh-cn_image_0000001128311090.png) 6. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 7. 打开工程文件,点击![](figures/2021-01-27_170334-5.png)图标,打开DevEco Device Tool界面,在“PROJECT TASKS”中,点击hi3518ev300\_fastboot下的**Erase**按钮,擦除U-Boot。 - ![](figures/zh-cn_image_0000001163529159.png) + ![](figures/zh-cn_image_0000001174270731.png) 8. 执行**Erase**擦除操作后,显示如下提示信息时,请重启开发板(下电再上电)。 - ![](figures/zh-cn_image_0000001078089378.png) + ![](figures/zh-cn_image_0000001128311092.png) 9. 重新上电后,显示如下信息时,表示擦除U-Boot成功。 - ![](figures/zh-cn_image_0000001073835952.png) + ![](figures/zh-cn_image_0000001128311094.png) 10. 擦除完成后,点击hi3518ev300下的**Upload**按钮,启动烧录。 - ![](figures/zh-cn_image_0000001163568181.png) + ![](figures/zh-cn_image_0000001174350641.png) 11. 启动烧录后,界面提示如下信息时,表示烧录成功。 - ![](figures/zh-cn_image_0000001073242197.png) + ![](figures/zh-cn_image_0000001174350643.png) ## 镜像运行 diff --git "a/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS.md" "b/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS.md" index 68de0b2b57b..d5f775c64f3 100755 --- "a/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS.md" +++ "b/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-OHOS.md" @@ -1,4 +1,4 @@ -# 运行Hello OHOS +# 运行Hello OHOS - [新建应用程序](#section204672145202) - [编译](#section1077671315253) @@ -129,7 +129,7 @@ ## 编译 -如果Linux编译环境通过Docker方式安装,具体编译过程请参见[Docker方式获取编译环境](../get-code/获取工具.md)的编译操作。如果Linux编译环境通过软件包方式安装,请进入源码根目录,执行如下命令进行编译: +如果Linux编译环境通过Docker方式安装,具体编译过程请参见[Docker方式获取编译环境](../get-code/Docker编译环境.md)的编译操作。如果Linux编译环境通过软件包方式安装,请进入源码根目录,执行如下命令进行编译: ``` hb set(设置编译路径) @@ -150,13 +150,13 @@ hb build -f(执行编译) Hi3516开发板的代码烧录支持USB烧录、网口烧录和串口烧录三种方式。此处仅以网口烧录为例进行说明。 -1. 请连接好电脑和待烧录开发板,以Hi3516DV300为例,需要同时连接串口、网口和电源,具体可参考[Hi3516开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_camera_start_3516-0000001052670587)。 +1. 请连接好电脑和待烧录开发板,以Hi3516DV300为例,需要同时连接串口、网口和电源,具体可参考[Hi3516开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_minitinier_des_3516-0000001152041033)。 2. 打开电脑的设备管理器,查看并记录对应的串口号。 >![](public_sys-resources/icon-note.gif) **说明:** >如果对应的串口异常,请根据[Hi3516/Hi3518系列开发板串口驱动安装指导](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695)安装USB转串口的驱动程序。 - ![](figures/zh-cn_image_0000001114129428.png) + ![](figures/zh-cn_image_0000001174350647.png) 3. 打开DevEco Device Tool,在Projects中,点击**Settings**打开工程配置界面。 @@ -169,7 +169,7 @@ Hi3516开发板的代码烧录支持USB烧录、网口烧录和串口烧录三 - upload\_protocol:选择烧录协议,固定选择“hiburn-net”。 - upload\_partitions:选择待烧录的文件,默认情况下会同时烧录fastboot、kernel、rootfs和userfs。 - ![](figures/zh-cn_image_0000001160529355.png) + ![](figures/zh-cn_image_0000001128470904.png) 6. 检查和设置连接开发板后的网络适配器的IP地址信息,设置方法请参考[设置Hi3516网口烧录的IP地址信息](https://device.harmonyos.com/cn/docs/ide/user-guides/set_ipaddress-0000001141825075)。 7. 设置网口烧录的IP地址信息,设置如下选项: @@ -179,20 +179,20 @@ Hi3516开发板的代码烧录支持USB烧录、网口烧录和串口烧录三 - upload\_net\_client\_gw:设置开发板的网关,工具会自动根据选择的upload\_net\_server\_ip进行设置。例如192.168.1.1 - upload\_net\_client\_ip:设置开发板的IP地址,工具会自动根据选择的upload\_net\_server\_ip进行设置。例如192.168.1.3 - ![](figures/zh-cn_image_0000001117463460.png) + ![](figures/zh-cn_image_0000001174270733.png) 8. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 9. 打开工程文件,点击![](figures/2021-01-27_170334-2.png)图标,打开DevEco Device Tool界面,在“PROJECT TASKS”中,点击hi3516dv300下的**Upload**按钮,启动烧录。 - ![](figures/zh-cn_image_0000001116405268.png) + ![](figures/zh-cn_image_0000001174270729.png) 10. 启动烧录后,显示如下提示信息时,请重启开发板(下电再上电)。 - ![](figures/zh-cn_image_0000001114129432.png) + ![](figures/zh-cn_image_0000001128470906.png) 11. 重新上电后,启动烧录,界面提示如下信息时,表示烧录成功。 - ![](figures/zh-cn_image_0000001113969542.png) + ![](figures/zh-cn_image_0000001128311098.png) ## 镜像运行 diff --git "a/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-World.md" "b/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-World.md" index 74887e1fd4a..f428ec411ee 100755 --- "a/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-World.md" +++ "b/zh-cn/device-dev/quick-start/\350\277\220\350\241\214Hello-World.md" @@ -1,4 +1,4 @@ -# 运行Hello World +# 运行Hello World - [修改源码](#section79601457101015) - [调测验证](#section1621064881419) @@ -137,7 +137,7 @@ Call Stack 6 -- 3f5e24 addr:f78fc 3. 根据以上调用栈信息,可以定位WadRecvCB函数中出现了异常。 - ![](figures/zh-cn_image_0000001152256221.png) + ![](figures/zh-cn_image_0000001174270737.png) 4. 完成代码排查及修改。 diff --git "a/zh-cn/device-dev/quick-start/\351\225\234\345\203\217\347\203\247\345\275\225.md" "b/zh-cn/device-dev/quick-start/\351\225\234\345\203\217\347\203\247\345\275\225.md" new file mode 100644 index 00000000000..3cdd45fd692 --- /dev/null +++ "b/zh-cn/device-dev/quick-start/\351\225\234\345\203\217\347\203\247\345\275\225.md" @@ -0,0 +1,68 @@ +# 镜像烧录 + +- [下一步](#section5600113114323) + +标准系统烧录,在V2.2 Beta1及以上版本支持。 + +Hi3516DV300支持烧录标准系统,其烧录方式包括USB烧录、网口烧录和串口烧录三种方式,其中: + +- **Windows系统:支持网口烧录和串口烧录** +- **Linux系统:支持串口烧录和网口烧录。如果采用的是Linux+Windows双系统,也支持USB烧录。** + +同一种烧录方式(如网口烧录),在Windows和Linux环境下的烧录操作完全一致,区别仅在于DevEco Device Tool环境搭建不同。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>当前Hi3516DV300开发板支持通过网口、USB、串口三种方式烧录OpenHarmony标准系统。本文以网口方式为例讲解烧录操作,其他两种烧录方式请参照[Hi3516DV300烧录指导](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_upload-0000001052148681)。 + +### 前提条件 + +在DevEco Device Tool中[打开一个工程](https://device.harmonyos.com/cn/docs/ide/user-guides/open_project-0000001071680043),该工程文件夹选择待烧录文件所在文件夹即可。其中开发板类型固定选择Hi3516DV300,Framework选择“Hb”。 + +### 使用网口烧录 + +Hi3516DV300开发板使用网口录方式,支持Windows和Linux系统。 + +1. 请连接好电脑和待烧录开发板,需要同时连接串口、网口和电源,具体可参考[Hi3516DV300开发板介绍](https://device.harmonyos.com/cn/docs/start/introduce/oem_minitinier_des_3516-0000001152041033)。 +2. 打开电脑的设备管理器,查看并记录对应的串口号。 + + >![](public_sys-resources/icon-note.gif) **说明:** + >如果对应的串口异常,请根据[Hi3516DV300/Hi3518EV300开发板串口驱动安装指导](https://device.harmonyos.com/cn/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695)安装USB转串口的驱动程序。 + + ![](figures/zh-cn_image_0000001114129428.png) + +3. 打开DevEco Device Tool,在Projects中,点击**Settings**打开工程配置界面。 + + ![](figures/2021-01-27_170334-17.png) + +4. 在“hi3516dv300”页签,设置烧录选项,包括upload\_port、upload\_partitions和upload\_protocol。 + + - upload\_port:选择步骤[2](#zh-cn_topic_0000001056443961_li1050616379507)中查询的串口号。 + - upload\_protocol:选择烧录协议,固定选择“hiburn-net”。 + - upload\_partitions:选择待烧录的文件,包括fastboot、boot、updater、misc、system、vendor和userdata。 + + ![](figures/zh-cn_image_0000001117621400.png) + +5. 检查和设置连接开发板后的网络适配器的IP地址信息,设置方法请参考[设置Hi3516DV300网口烧录的IP地址信息](https://device.harmonyos.com/cn/docs/ide/user-guides/set_ipaddress-0000001141825075)。 +6. 设置网口烧录的IP地址信息,设置如下选项: + + - upload\_net\_server\_ip:选择[6](#zh-cn_topic_0000001056443961.md#li1558813168234)中设置的IP地址信息。例如192.168.1.2 + - upload\_net\_client\_mask:设置开发板的子网掩码,工具会自动根据选择的upload\_net\_server\_ip进行设置。例如255.255.255.0 + - upload\_net\_client\_gw:设置开发板的网关,工具会自动根据选择的upload\_net\_server\_ip进行设置。例如192.168.1.1 + - upload\_net\_client\_ip:设置开发板的IP地址,工具会自动根据选择的upload\_net\_server\_ip进行设置。例如192.168.1.3 + + ![](figures/zh-cn_image_0000001117463460.png) + +7. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 +8. 启动烧录后,显示如下提示信息时,请重启开发板(下电再上电)。 + + ![](figures/zh-cn_image_0000001114129432.png) + +9. 重新上电后,启动烧录,界面提示如下信息时,表示烧录成功。 + + ![](figures/zh-cn_image_0000001113969542.png) + + +## 下一步 + +恭喜!您已经完成了OpenHarmony标准系统的快速入门,接下来可[开发一个小示例](../guide/时钟应用开发指导.md),进一步熟悉OpenHarmony的开发。 + diff --git "a/zh-cn/device-dev/quick-start/\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" "b/zh-cn/device-dev/quick-start/\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" index ae2c5d1108f..dccca07b7f8 100755 --- "a/zh-cn/device-dev/quick-start/\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" +++ "b/zh-cn/device-dev/quick-start/\351\251\261\345\212\250\345\274\200\345\217\221\347\244\272\344\276\213.md" @@ -1,4 +1,4 @@ -# 驱动开发示例 +# 驱动开发示例 - [驱动程序介绍](#s8efc1952ebfe4d1ea717182e108c29bb) - [编译和烧写](#section660016185110) @@ -439,7 +439,7 @@ 1. 单击**Monitor**打开串口。 2. 连续输入回车直到串口显示"hisilicon"。 - 3. 单板初次启动或修改启动参数,请进入[步骤2](运行Hello-OHOS.md#l5b42e79a33ea4d35982b78a22913b0b1),否则进入[步骤3](运行Hello-OHOS.md#ld26f18828aa44c36bfa36be150e60e49)。 + 3. 单板初次启动或修改启动参数,请进入[步骤2](运行Hello-OHOS.md#zh-cn_topic_0000001151888681_l5b42e79a33ea4d35982b78a22913b0b1),否则进入[步骤3](运行Hello-OHOS.md#zh-cn_topic_0000001151888681_ld26f18828aa44c36bfa36be150e60e49)。 2. (单板初次启动必选)修改U-boot的bootcmd及bootargs内容:该步骤为固化操作,若不修改参数只需执行一次。每次复位单板均会自动进入系统。 diff --git a/zh-cn/device-dev/subsystems/DFX.md b/zh-cn/device-dev/subsystems/DFX.md index e5f00a7203a..19ebb4af3e1 100755 --- a/zh-cn/device-dev/subsystems/DFX.md +++ b/zh-cn/device-dev/subsystems/DFX.md @@ -8,4 +8,10 @@ - **[HiSysEvent开发指导](HiSysEvent开发指导.md)** +- **[HiSysEvent订阅指导](HiSysEvent订阅指导.md)** + +- **[HiSysEvent查询指导](HiSysEvent查询指导.md)** + +- **[HiSysEvent工具使用指导](HiSysEvent工具使用指导.md)** + diff --git "a/zh-cn/device-dev/subsystems/HiSysEvent\345\267\245\345\205\267\344\275\277\347\224\250\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/HiSysEvent\345\267\245\345\205\267\344\275\277\347\224\250\346\214\207\345\257\274.md" new file mode 100644 index 00000000000..be8ad760312 --- /dev/null +++ "b/zh-cn/device-dev/subsystems/HiSysEvent\345\267\245\345\205\267\344\275\277\347\224\250\346\214\207\345\257\274.md" @@ -0,0 +1,33 @@ +# HiSysEvent工具使用指导 + +- [概述](#section1886702718521) +- [使用指导](#section1210623418527) + +## 概述 + +目前系统预制了hisysevent小工具,用于条件查询系统所有的hisysevent事件。 + +## 使用指导 + +1. hisysevent工具的参数: + + hisysevent \[-r | -l \[-s -e -m \]\] + + -r get real hisysevent log. + + -l -s -e -m + + get history hisysevent log, begin time should not be earlier than end time. + +2. 查询实时hisysevent的命令: + + hisysevent -r + + 当实时hisysevent事件过来的时候,会在控制台上打印一条hisysevent事件。 + +3. 查询历史hisysevent的命令: hisysevent -l -s -e -m + +其中-s和-e分别指定了事件生成的开始时间和结束时间,如果没有-s或者-e,代表查询时间无下限/无上限。 + +-m参数制定了本次查询最多返回的时间条数。 + diff --git "a/zh-cn/device-dev/subsystems/HiSysEvent\346\237\245\350\257\242\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/HiSysEvent\346\237\245\350\257\242\346\214\207\345\257\274.md" new file mode 100644 index 00000000000..162ee89bef1 --- /dev/null +++ "b/zh-cn/device-dev/subsystems/HiSysEvent\346\237\245\350\257\242\346\214\207\345\257\274.md" @@ -0,0 +1,109 @@ +# HiSysEvent查询指导 + +- [概述](#section279684125212) +- [接口说明](#section03869128521) +- [开发实例](#section14286111855212) + +## 概述 + +HiSysEvent提供了查询接口,用户查询当前所有的HISysEvent事件。 + +## 接口说明 + +**表 1** HiSysEvent查询接口 + + + + + + + + + + + + + + + + +

    接口名

    +

    描述

    +

    boolean ISysEventService::QuerySysEvent(in long beginTime, in long endTime, in int maxEvents, in SysEventQueryRule[] rules, in IQuerySysEventCallback callback);

    +

    接口功能:订阅HiSysEvent事件。

    +

    输入参数:

    +
    • beginTime:事件开始时间。
    • endTime:时间结束事件
    • rules:时间过滤规则
    • callback:查询接口回调对象
    +

    返回值:

    +
    • true:查询成功
    • false:查询失败
    +

    void IQuerySysEventCallback::OnQuery(in String[] sysEvent, in long[] seq)

    +

    接口功能:订阅事件查询中的回调。

    +

    输入参数:

    +
    • sysEvent:返回时间集合
    • seq:事件序列集合
    +

    返回值:无。

    +

    void IQuerySysEventCallback::OnComplete(in int reason, in int total)

    +

    接口功能:订阅事件查询完成的回调。

    +

    输入参数:

    +
    • reason:查询结束返回原因,目前默认是0
    • total:本次查询总共返回的事件总数量
    +

    返回值:无。

    +
    + +**表 2** SysEventQueryRule订阅规则对象 + + + + + + + + + + + + + + + + +

    属性名称

    +

    描述

    +

    uint32_t ruleType

    +

    规则类型,目前默认是0

    +

    std::string domain;

    +
    • domain:事件所属领域,如果传入的是空字符串,则默认事件领域字段匹配成功
    +

    std::string eventName

    +
    • eventName:事件的名称,如果传入的是空字符串,则默认事件名称字段匹配成功
    +
    + +## 开发实例 + +1. 源代码开发: + + 引入对应的aidl文件,包括:ISysEventService.aidl、SysEventQueryRule.aidl、IQuerySysEventCallback.aidl。 + + 在相应的业务逻辑里面调用ISysEventService::AddListener\(in SysEventRule\[\] rules, in ISysEventCallback callback\)接口。 + + 实现对应的回调对象:在查询过程中,会遍历回调OnQuery\(\)接口;在查询结束后,会回调OnComplete\(\)接口 + + IQuerySysEventCallback::OnQuery\(in String\[\] sysEvent, in long\[\] seq\) + + IQuerySysEventCallback::OnComplete\(in int reason, in int total\) + + +1. 源代码开发: + + 引入对应的aidl文件,包括:ISysEventService.aidl、SysEventQueryRule.aidl、IQuerySysEventCallback.aidl。 + + 在相应的业务逻辑里面调用ISysEventService::AddListener\(in SysEventRule\[\] rules, in ISysEventCallback callback\)接口。 + + 实现对应的回调对象:在查询过程中,会遍历回调OnQuery\(\)接口;在查询结束后,会回调OnComplete\(\)接口 + + IQuerySysEventCallback::OnQuery\(in String\[\] sysEvent, in long\[\] seq\) + + IQuerySysEventCallback::OnComplete\(in int reason, in int total\) + +2. 编译设置: + +在编译子系统里面,需要依赖libbinder模块 + +aosp\_deps = \[ "shared\_library:libbinder", \] + diff --git "a/zh-cn/device-dev/subsystems/HiSysEvent\350\256\242\351\230\205\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/HiSysEvent\350\256\242\351\230\205\346\214\207\345\257\274.md" new file mode 100644 index 00000000000..beff2dfaa71 --- /dev/null +++ "b/zh-cn/device-dev/subsystems/HiSysEvent\350\256\242\351\230\205\346\214\207\345\257\274.md" @@ -0,0 +1,98 @@ +# HiSysEvent订阅指导 + +- [概述](#section315316685112) +- [接口说明](#section0342191810519) +- [开发实例](#section123181432175110) + +## 概述 + +HiSysEvent提供了跨进程订阅机制,用户可以通过注册订阅接口。 + +## 接口说明 + +**表 1** HiSysEvent订阅接口 + + + + + + + + + + + + + +

    接口名

    +

    描述

    +

    int ISysEventService::AddListener(in SysEventRule[] rules, in ISysEventCallback callback)

    +

    接口功能:订阅HiSysEvent事件。

    +

    输入参数:

    +
    • rules:事件订阅规则
    • callback:订阅回调对象
    +

    返回值:

    +
    • 0:订阅成功,重复订阅
    • 1:订阅成功,初次订阅
    • 其他返回值:订阅失败
    +

    void ISysEventCallback::Handle(in String domain, in String eventName, in int eventType, in String eventDetail)

    +

    接口功能:订阅事件的回调接口。

    +

    输入参数:

    +
    • domain:事件所属领域
    • eventName:事件的名称
    • eventType:事件类型
    • eventDetail:包含事件相关信息的字符串,以json的形式体现
    +

    返回值:无。

    +
    + +**表 2** SysEventRule订阅规则对象 + + + + + + + + + + + + + + + + +

    属性名称

    +

    描述

    +

    uint32_t ruleType

    +

    规则类型(匹配范围包括domain以及eventName):

    +
    • 1:全字符匹配
    • 2:前缀匹配
    • 3:正则表达式匹配
    • 其他值:无效的匹配方式
    +

    std::string domain;

    +
    • domain:事件所属领域,如果传入的是空字符串,则默认事件领域字段匹配成功
    +

    std::string eventName

    +
    • eventName:事件的名称,如果传入的是空字符串,则默认事件名称字段匹配成功
    +
    + +## 开发实例 + +1. 源代码开发: + + 引入对应的aidl文件,包括:ISysEventService.aidl、SysEventRule.aidl、ISysEventCallback.aidl。 + + 在相应的业务逻辑里面调用ISysEventService::AddListener\(in SysEventRule\[\] rules, in ISysEventCallback callback\)接口。 + + 实现对应的回调对象: + + ISysEventCallback::Handle\(in String domain, in String eventName, in int eventType, in String eventDetail\) + + +1. 源代码开发: + + 引入对应的aidl文件,包括:ISysEventService.aidl、SysEventRule.aidl、ISysEventCallback.aidl。 + + 在相应的业务逻辑里面调用ISysEventService::AddListener\(in SysEventRule\[\] rules, in ISysEventCallback callback\)接口。 + + 实现对应的回调对象: + + ISysEventCallback::Handle\(in String domain, in String eventName, in int eventType, in String eventDetail\) + +2. 编译设置: + +在编译子系统里面,需要依赖libbinder模块 + +aosp\_deps = \[ "shared\_library:libbinder", \] + diff --git "a/zh-cn/device-dev/subsystems/IPC\351\200\232\344\277\241\351\211\264\346\235\203\345\274\200\345\217\221\346\214\207\345\257\274.md" "b/zh-cn/device-dev/subsystems/IPC\351\200\232\344\277\241\351\211\264\346\235\203\345\274\200\345\217\221\346\214\207\345\257\274.md" deleted file mode 100755 index a0c52fc9c75..00000000000 --- "a/zh-cn/device-dev/subsystems/IPC\351\200\232\344\277\241\351\211\264\346\235\203\345\274\200\345\217\221\346\214\207\345\257\274.md" +++ /dev/null @@ -1,139 +0,0 @@ -# IPC通信鉴权开发指导 - -- [场景介绍](#section18502174174019) -- [接口说明](#section1633115419401) -- [开发步骤](#section022611498210) -- [常见问题](#section15729104510271) - -## 场景介绍 - -系统服务通过IPC跨进程方式开放的接口,需要对接口调用者进行鉴权操作。在Samgr中注册的系统服务,可以通过进程间通信的方式暴露接口给其他进程访问,同时需要配置相应的访问策略,当其他进程访问这些接口时,将会触发IPC通信鉴权机制校验访问进程是否拥有权限访问该接口,若无权限,则访问会被拒绝。 - -当开发一个系统服务时,如果需要对外开放某些接口,开发者可以通过IPC通信鉴权组件配置这些接口的访问策略。当其他服务通过IPC方式访问这些接口时,会触发Samgr服务调用IPC通信鉴权组件的接口检查调用者服务是否有权限调用该接口。 - -## 接口说明 - -IPC通信鉴权提供的API,仅供Samgr调用,开发者在开发服务时需要配置对应的访问策略,Samgr会调用如下接口获取和检查调用者是否具有正确的访问权限,提供的API列表如下。 - -**表 1** IPC通信鉴权API接口功能介绍 - - - - - - - - - - - - - -

    接口名

    -

    描述

    -

    int GetCommunicationStrategy(RegParams params, PolicyTrans **policies, unsigned int *policyNum)

    -

    服务注册过程中查询调用接口对应的访问策略,仅供Samgr调用

    -

    int IsCommunicationAllowed(AuthParams params)

    -

    检查访问主体进程是否有权限调用受访客体进程的接口,仅供Samgr调用

    -
    - -## 开发步骤 - -本部分以BMS服务通过IPC通信方式对外开放接口为例,讲解如何通过IPC通信鉴权组件配置对应接口的访问策略。这里BMS在Samgr中注册的service为bundlems,为开放的接口注册的Feature为BmsFeature。 - -1. 在源码路径下的头文件base/security/permission/services/permission\_lite/ipc\_auth/include/policy\_preset.h中配置相应的访问策略,访问策略主要有三种类型: - - (1)type为RANGE类型:允许某个特定范围UID的进程访问,需要指定uidMin和uidMax; - - (2)type为FIXED类型:允许指定的几个UID的进程访问,需要指定fixedUid,最多配置8个; - - (3)type为BUNDLENAME类型:只允许特定的应用访问,需要指定bundleName(包名); - - ``` - FeaturePolicy bmsFeature[] = { - { - "BmsFeature", - { - { - .type=FIXED, // 允许指定UID的进程访问的方式 - .fixedUid={2, 3, 8} - }, - { - .type=RANGE, // 允许特定范围内的UID的进程访问的方式 - .uidMin=100, - .uidMax=__INT_MAX__, - }, - } - }, - { - "BmsInnerFeature", - { - { - .type=FIXED, // 允许指定UID的进程访问的方式 - .fixedUid={2, 3, 8} - }, - { - .type=RANGE, - .uidMin=100, - .uidMax=999, - }, - } - }, - }; - ``` - -2. 将步骤1中定义的Feature的策略加配到全局策略中,需要配置feature数量; - - ``` - static PolicySetting g_presetPolicies[] = { - {"permissionms", pmsFeature, 1}, - {"abilityms", amsFeature, 2}, - {"bundlems", bmsFeature, 2}, // 步骤1定义的BMS的feature,数量为2 - {"dtbschedsrv", dmsFeature, 1}, - {"samgr", samgrFeature, 1}, - {"appspawn", appspawnFeature, 1}, - {"WMS", wmsFeature, 1}, - {"bundle_daemon", bdsFeature, 1}, - }; - ``` - -3. 将步骤1中定义的BmsFeature注册到Samgr; - - ``` - const char BMS_SERVICE[] = "bundlems"; - const char BMS_FEATURE[] = "BmsFeature"; - static void Init() - { - SamgrLite *sm = SAMGR_GetInstance(); - if (sm == nullptr) { - return; - } - // 注册服务到Samgr - sm->RegisterFeature(BMS_SERVICE, reinterpret_cast(BundleMsFeature::GetInstance())); - sm->RegisterFeatureApi(BMS_SERVICE, BMS_FEATURE, - GetBmsFeatureApi(reinterpret_cast(BundleMsFeature::GetInstance()))); - HILOG_DEBUG(HILOG_MODULE_APP, "BundleMS feature start success"); - } - APP_FEATURE_INIT(Init); - ``` - - -完成以上开发步骤后,开发者在Samgr注册服务时,Samgr会调用IPC通信鉴权组件的GetCommunicationStrategy接口获取服务的访问策略;当其他服务或应用通过IPC方式访问这些服务时,Samgr会调用IPC通信鉴权组件的IsCommunicationAllowed接口检查调用者服务的权限,如果满足访问策略,则可以访问开发者接口,否则拒绝访问。 - -## 常见问题 - -- 开发新服务后,在Samgr注册失败问题 - - **现象描述** - - 开发完新服务后,在启动时出现服务在Samgr注册失败问题。 - - **可能原因** - - 服务注册过程中,Samgr需要从IPC通信鉴权模块获取该服务的访问策略,但是未在该模块配置该服务的UID。 - - **解决办法** - - 在base/security/permission/services/permission\_lite/ipc\_auth/src/ipc\_auth\_impl.c中配置有效的服务的UID。 - - diff --git a/zh-cn/device-dev/subsystems/Readme-CN.md b/zh-cn/device-dev/subsystems/Readme-CN.md index a1c06756966..613d2a00644 100755 --- a/zh-cn/device-dev/subsystems/Readme-CN.md +++ b/zh-cn/device-dev/subsystems/Readme-CN.md @@ -1,14 +1,8 @@ -# 子系统 +# 子系统开发指南 - [编译构建](编译构建.md) - - [轻量和小型系统编译构建指导](轻量和小型系统编译构建指导.md) - - [编译构建概述](编译构建概述.md) - - [编译构建使用指导](编译构建使用指导.md) - - [编译构建常见问题](编译构建常见问题.md) - - - [标准系统编译构建指导](标准系统编译构建指导.md) - - [编译构建概述](编译构建概述-0.md) - - [编译构建使用指导](编译构建使用指导-1.md) + - [编译构建子系统—轻量和小型系统](编译构建子系统-轻量和小型系统.md) + - [编译构建子系统—标准系统](编译构建子系统-标准系统.md) - [分布式远程启动](分布式远程启动.md) - [图形图像](图形图像.md) @@ -60,19 +54,11 @@ - [用户程序框架](用户程序框架.md) - [概述](概述.md) - - [搭建环境](搭建环境-2.md) - - [开发指导](开发指导-3.md) + - [搭建环境](搭建环境-0.md) + - [开发指导](开发指导-1.md) - [开发实例](开发实例.md) - [OTA升级](OTA升级.md) - -- [安全](安全.md) - - [概述](概述-7.md) - - [应用验签开发指导](应用验签开发指导.md) - - [应用权限管理开发指导](应用权限管理开发指导.md) - - [IPC通信鉴权开发指导](IPC通信鉴权开发指导.md) - - [可信设备群组管理开发指导](可信设备群组管理开发指导.md) - - [启动恢复](启动恢复.md) - [启动恢复子系统概述](启动恢复子系统概述.md) - [init启动引导组件](init启动引导组件.md) @@ -88,6 +74,9 @@ - [HiLog开发指导](HiLog开发指导.md) - [HiLog\_Lite开发指导](HiLog_Lite开发指导.md) - [HiSysEvent开发指导](HiSysEvent开发指导.md) + - [HiSysEvent订阅指导](HiSysEvent订阅指导.md) + - [HiSysEvent查询指导](HiSysEvent查询指导.md) + - [HiSysEvent工具使用指导](HiSysEvent工具使用指导.md) - [研发工具链](研发工具链.md) - [bytrace使用指导](bytrace使用指导.md) diff --git "a/zh-cn/device-dev/subsystems/SDK\345\274\200\345\217\221\350\277\207\347\250\213.md" "b/zh-cn/device-dev/subsystems/SDK\345\274\200\345\217\221\350\277\207\347\250\213.md" index 83d933cdb5d..ed8f624d68c 100755 --- "a/zh-cn/device-dev/subsystems/SDK\345\274\200\345\217\221\350\277\207\347\250\213.md" +++ "b/zh-cn/device-dev/subsystems/SDK\345\274\200\345\217\221\350\277\207\347\250\213.md" @@ -126,8 +126,8 @@ SDK头文件的功能实现是基于对SDK的调用映射到对client的调用

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

-v61{S!UDUmWrCb>zs+7Iq8Cw&YH@!638} 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 Ss<2hy&(_M`vS|PD`2PT?Hc&_a diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001160649345.png b/en/device-dev/quick-start/figures/en-us_image_0000001160649345.png deleted file mode 100644 index 1819a2816fa617fa6389646fd6a4b1ab0d97272d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46363 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 literal 0 HcmV?d00001 diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001116405268.png b/en/device-dev/quick-start/figures/en-us_image_0000001174270729.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001116405268.png rename to en/device-dev/quick-start/figures/en-us_image_0000001174270729.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001163529159.png b/en/device-dev/quick-start/figures/en-us_image_0000001174270731.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001163529159.png rename to en/device-dev/quick-start/figures/en-us_image_0000001174270731.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001174270733.png b/en/device-dev/quick-start/figures/en-us_image_0000001174270733.png new file mode 100644 index 0000000000000000000000000000000000000000..72dd05e3ae1eb91156df98cb1915b6264b3bbe5a GIT binary patch literal 39410 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⋙ZTdH63CxYe{sEAyB=C4pGPh?u{ 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 4qo~IDZkC(Tx&jZMI6E{|*;w`A% zrFU0V34kGyFyt4cd{C`ul)yTy3MY{#{N&!afc{Ck{P^c{ zerOt^S9mgBK{cEX+L3bcLd#p4(Fp9fsWoge(w$~P3IKJq(p-BXk`>3Cx=8{K)rn{l zkH{VsKUreX+((_nhm{;IXoDP9!yXwB1e+)BhZHGAN=uVDmV^NxAx&>%-mgg$WikEr zHj<-=HFLG4g_=lRLlJ;uugh(W4^a1x%%3E}A`+s# zaTaOuRg8mV6-FppyK?8k-p43RpC;X;78*PlD|U|p5bPn3?jD!OF?ufv>LQIwobBGj zshCMoSsI`p$B5oXqh+(ND)NP;CJ1f&XtSi4c6uV%WI!Ua`rsK30o_NRyJnx1Wglpp zpv}Rtk4xSk!SZtrA%1$g9~&z^n<2_)+BLW-DPR3A6cLqEdpNKpR5Cu48I_S&A`nsz z6EMOZfyU2snjxln%M(gjDy~6%vCi#4l(wRDEaV_Y2?r{D!YHufa53$riHXDlC$myU zcyaM37euknc9=6JDt}H^#VSZ7e@=BYNFNk)_?B_;ZT9B36|H0K5Y`(|(;zliE2aEq zXXx5>OWFi0SA26zSLR>Zj7N{b3ugZ7JyhfGmDw#kJBoID}gx5eg!Fxqbb8xt=`xiWG#y zAKcJg4Kat;WVG45x%)YwIZB9kb;6;%WmxkQ!F{YQMxp|apfBOUykOG)yRY0gcXnZykeG#7eeWgV~sA3Lx9wQiV5RoXrdC`jtv=H=@`VSVM^*!~w+6KxR zjnLvHZAN5mKwRx+fbzyFW}$pC7fi(No#@y6@({r^j3{)e5c)cpVR?<2845IOEk%1%lu zEPtr1{;8R8-0`EI`QIzvXOu4Ogjw8UHES-Kd2=TH47hz{{}JsXfssvIbgnmj=z~I*jzW7f4?9aLcmL_|^cil+?uW?(&9=nr?*`*~Fj+^J)vqjIa#(w9vSEunUHMFZo4l@igaMdOOn z{D<<0#VP&@|FZAXxxS2Q)5I51tyX1G(tLQ+8j+qQ?=_gfY#54In2r)ZvXC;~6S2(y zyUW_4bFi!ADyDmiCZ7aiC9aDpHZ;dEHr3GjIwSj+qTJI`M|6X0KNrhq@6DB} zP|9a>GeQKyv;3e)JUH@1m2GgECIFGgz;|i)++zW6UO-8O!4_bGv9UE|FoK?!cqd%EUV%+DXg5i*HX?JVuPharuQnmoah;u-GqyEy1x$@sCRLWN{ zwOS{67Vdak-bH1F{+@>3HzyVq@rM2S|2fb5hcpq%NlJ!WY4*??O>l?bWIC!d81VhS z^ulS90{q3H_Ai%vNzy3s1N6fA53TmJs0b$EL$@{q4gvN2vtvB&{rY{@8qSDt%+-qA zux*KDaEzs*Ok*>A9vhFlj<8m9c|~Uq+5&$j&I$WYf@3`_=d5A~1jfSiC8~Mc|A=yO z0v=*Wm|u_)6riiCBdlY+|9wBykxXLKfkybr}bSH=HWbuec0wJhBArOsteTT zRS0VNrXa=1B|qP1X?iM57Da1WvV$ED{BQW2_r>dMylfTGCDw%#IpSZhlF>Ro+_5k=;68pH(Wm z8ZYm164NGHvvYBQ{AouF4o=G6ZE@=pn#i9x=#Sqnvfp(MDW{0foey001Rg#bP9*R} zo#}bUBBaylfrrX~%M-%&5Zf%3&T2Z6M5FR>*|66OkKd7S+`68M9W4%Pp%ZxbB?ER! zIH$N88WtifTdnv~3UwGCL zKOVlvDm3VZr)!hTW6<1z!e8**<>M^CiTjcB^-(3oCB5Eo<0-4tcop)(CzP7Z!9X!k$;IAM!?af}48uL{p3RtJZKB_|oA5K1DjUVI zY%$X|@!KxtvPDD7B73hN9`;)&V*E`Gq*>^)$)dNq>h3Xm!^?YZHiRKOZly$Fc9OyD zkXc~E=iJhAau&(PS61Uf^_ zrH|PiziMgkfQ-Hp3F}pkJ2~F`CmzE5@NIrKdeg#YdPZmhoww$OW>QEfkmK}TtErKx z>h*%+PJ68QtyS`-UWUXWwApkzh-owBavvwFs-R*q1F7g`f!*7YT&|M+Xhj+8?oBpm z@X{S9$|nffBU|Bza98ou?7faZw6Az!zXUW0CVWQY{Pi*YD;VdUo%}3B=^=Pu@ZoP#T+kAW=;bRhCp0z!KHOAGV4rS_|o_iJXAds#FY-Ye}8BXZxzASmK&xIpFm z$*tEz;o{@32Z!H44fdo8+5eu<7rQ#Z3@yGb`HWG=w@K@MzZ#jh#=oJ$=$~cwz)y!$ znI0J$S-nrI>5e4t6yC)B@1IE^t&^c|>#$WHDkgMPE*$N_Tw{Lr>e<op{#jjqN|52NknVC?MoK$cVE zh~e4VDSETIu(TpxWgz(6C<8Z(96V)z$7e0_gZYe@&if=0i|{Pa;loSi?K+hvw5A#G zDfO_XB=jzLWAw&Z0WFR(FUCXy63q$>{{n(0orryo5SgI`q%TPZD7 zRNa=<(vpk2^)H90Z&mUe$$6^YFOA=f4mz!Db>R=|cJ4m)VH2}bdj}>eWojKH*jBbE z9=}^J;Cs-S>USG18SGuZheM`fr@d|_kC2u}^5~E>f`Lq?plWRA&M9lbNPnGt*l3yj zyw*nFQ*|;g&FEwrm7;%7>AUZ&Yjyu#O3etF|KiyCsU6xvwJPlUq_9DMw~-XrWd&@2 z3Mp*wM=bqpjtUKqhvf7TiJ{cDDvHd#%LywgSo*&DL2t;@X$gINC6#{g*EI7_H_uoh z%e|xX55t)~ZC#B8(U#)b-u1+|9-H)ek4Vt;v6Fr+k|MJf zF+jt2cu#@i8!Gg9g?9~)Z(!o?oy8lUK=zXi`XC|0piH@>A;0ed5%bAssTW1zD}Q;E zGsG@A)19AD?>7l^=L-Dq8G^15nttnfU}eY^5D)$7OE zdgj(%%6DFPs2F=AEiV{$uVn153(-1Xwsb)UL{Xi$6tKQ~2vyGMNWZAVV;IgHbWfat z42o*162ajJCP+!v=AG5fcRAaQPr+;?2{-EeK_jD+=6>!a;sVB;CrMu-W$rd(7N^Mh z8C}8JrX#S+b!QZJRnvhoq~1g$L1D6J@-lmO0A#RV(suvl-d^6A`Jortf_EHM4MmOqlgW!@mld>j(al$!AZ(*nC9l|P zFF0}PL69eEL0y-Q>@_A-3$b@YsJ|@r?BB7Zo?FbPGB3u;V@P4;BZ;|b0=9zU-VDNo z@Ueui{2t(YHdp=hoRczBY@VWjhHa$xN;o|vdN^a;w!XB5FCh>Pe%$!Y17VNO1XK z_~V{xj^+4rWy*NLBL;uCBv?s6;L>jc`JO%#qvjM{)U;wbJasF(c-8aamy z9YVLgM6ydLi${b3gBq}%INDX68#rA= zi3p{nQwOyrnXv3~D6iE>yL1%1!YGshzoY|+EsQ-f)u?QDSfygsSC$_){d%zJjP2*o zPrn_WM7bTk=?D;_3o}Eus+eGDZ_%!~JW^3FrIuqmy7Aa1woyvolx5FW^v9mc?=oQn zVj^Q5n*Y{Z(UH=TB^C_Pi5cjQ%*E#HUAt+a? zcskQQD)mg{Q4+c*lu8T*AG`J);W|{56n5f`XoFQXg|K&g-;U)DJsQXIWr1jyg~Vzl z+cH`fa{be zG)>{vqbH889Hf5V)-GrMvPNzNuu zeB?l1LV3v5Xj^C9Tu9}lC$=xRgBlgAUaoYmJh-Uj7s%~x7fn+93P5y|ubP{n?5PX? zsonHLKT#?b4OdDlD{eTU7ymKLPuDxM-->)70~$x2ym7`&;wXTekub9^?A&XvyFq;8 z#Hu8NEa9H*T>2wOE2ED9WN=nNq0e$03je(A=8P?2agojP07o8JpEI)d4PsyX zcJF>Yx>0YC+8r$`MP{>g0%hhF-|7AndZn8nt#uJ0z&^A{7TfT4kBw<+CiKS2h;Mw8M>=_bg;}x;UkNAo%rYsJGRzAK)Eu_DdcD%zZDjv=+1Ci4G4+aELT5V$pE&W8?c9u$e03PE$micB z&85qn+VPR90wc!?ai*uUJ=ZudQ}Kg!ef-wbzj{_VZ#57-*wa#8`uVWc{!j1nzOEcm zj&qtYVx39q@!N&k(-rCkW@wYC0;%}P-<=csAYMiPEt2Rf&<07Gk=lGYnA+FaT}rY8 z<#|BlsA19%BLhd195f*`>gGy#b}Mg^;U(zDtK8cLituOTD%Y2oqkeu^3JawdP{ zcUIyh$M=v*_#RvErj;1+?yPd^*L-{X4s3t-v3XC&hd@|_-jZ_PeWHnMzk$J%sgxb6 z?@x3ZCmMFUReHkzjnQZC@dQ!ydyxV){KwRLo1D%1&=z@H$j*7h&>d<}PvB6#{F;`m zXbn$XEmOD4f7(ItbY(nv*#k+tB<+R=AsYcsM+_JiLHcA5;2$p+hMNfW<)3aRug{dR z1?#VWEkXWa6f;vBkUh%gs7 zyK=Lm_g-(<08El8Vi@NsNM|75=K7PqAjdXy7o=z#JJq1zFh!>VEK5$F|LE`Jo#K!A zYS;xE&?j=op>&0C{rm|P+B}I^@jt=l-*ps4-JI}3)sCd^XAHh%l1|sbicS8M?237P zM-=3l!FUE8Lvq!KD2O;fiv^JuRE z?Ws`E3xj+( zF|}gAmVwbX=k<5TmxrpXO{N9|(XpiC=ThzkBs@h?3P8carrZp2lS}&SJKCY+m9_`_uyYptg&vrQ0@t{C(@#!SWmh z!fy*1_%-|*gu62vJp`!S$6aP?JI7RMcrd?NFo#0T3{gLW^eM~Gp}pSWgo#1a!dGnS zZe8DJ-)<+)^T9fA<6T08q<$D#hrPg$Hw+H=u_b`ePJ=D~cEW6rj${vXFJrE{qD$jY zr{;@7gRb^dh*UX4@T(JGvrTj{rabo(Z z2Cf2XitRznZd-hPS0o3WRy0ocW?)o92PTw=sleU(;E_=?uR#1f2pw27)C|lILym;nODeq@0f`S^KD)ab9F=Ms+|0g+#(t|`>mp0tAqHL#*4G|TSqv7ND_EyKN+xsraW3vSGHqRs zV22ha?~TL-`IFew7zR!LSEtrV z?UBEIg}S40L?<7X*{g;&Cz7CPFE}L4z8IH>dfO)dw_?C`Y;#a#B!c;5_Fft-8It1(=Ts`dlbf+hoJ|?F;P{}KAdaYtj#>ugE z2MFZf&Zj$duHDJlx%X(HVm=K+hnk?`;)^LC@$j!rIQ?9?bbNyU6#m6z-O|q&KYg39 zS-*2=+3B#ESdiZhLfJ%CI}A+uWMGexS}8;Ydr~6rO!*7M&C5k3)8v0}*6EGgR6?Jp zd`m5NM=~_3b|c8-VSr-Lx_f{s;_ZK@CyM+r0fXfmEi)5yYd-0?aSy}TG&>~EuP~;D zszC5t)9A7g-G8nyf#8^~^NxhMFlh}Q7dssi^xQ1to*|erxbglV~m8VA!3SE9oc5Fu5tlX;AP*^$KZOWFj2WI62J@%)rOw z9RFGX3A#cA@f4b>iVljzm6`?+usAp`#gEMJYkN-1n^EL;>U_>CxJVx5cehnM&3W63 z!(Oi?aIlm!9 zLHnQ6C$rz*W`1d8R*->=AZxfgPO?1MSf3N$y8Aq*T5k^wowl=@O z!ur;HaIuGM+p${>ooA8YJs8JA;~!@WV#qgiXs|c-SS0eccLQ07FcrGiX{MZ&1E!j? zdS9a0J4qdi@YTwNp9sp(M@FX=zN%AC#}zM-!>iE9U_MrEiEE-&uJWih&->Km{hNEM zCb*L<)~UBHs#b&~2-&Z%-xt#uAVVX~-EEnO%I>kR6C$V6J;PyLUDG&dX{A$yd_J5* z*;0Mp`>7YGJ=L1d^K8v;YAHwZxMjaEe$w~XkWQ<13~M!cL37lBN}C=_@}QoHx21Mq6^6Y6lQbX`sKy9yqr3Z{fwTlxN*1Mfeo+e{8#Zl8mBDL z4~e?OF=vHT)p#+RjG?lN%_-A3nq4ejL#A_A<|B!&&fTZKvoL^N(Qvrci5~wP);zG7 zr@Ui-??_6+!LBB|3$dS#ZFGDGS*|~)^JQ&-l#E^&Nhmp&=z_v;5T6}*=VcqAX2qfp z@>vFl<2R2DU)7x87+tkmqw+bAJfu zDrs2sQsg4xXbviLG6u}WUVky7lYSSZF%bI ziaXwIdmx#ys^2%k29GvbYuqnZ=oPu}#g%m;9V&FbZhH=1#8zEUARwpv5T=cQxzEn|3z2+N6@L~l^acr-X_ z^emG%@%TKH#U|@>k67{#NoDZ*2`fsVszc0S4Yis|SYD4JzIbJk7EeVw$i{>?xRAiuI)Hn|Y zm8>-QBMhN8_=Dsvgf^no%zw(anv%$A!D^*tJH(QLei~ zL;FjotG^nI`S6--jf*=-tYr__9IqV!@>FYH_ri5E2#=SUqLHbq)0L~xDZmEMj4cN; z0*oQ+mD7fu%{X&$rZSj$?R>G;bk33fLxI>3gxpx^_N#3`_JCo1s6P3ETIx-&CbhTC42LMXG`CeE!MU-f!NGDG5OZGnP0?+|~E z-A>r}P7D3fQU-9eiS0=mx&aPviDUPxpvSgM$fVYgQJc?FW$O=%AO@*7) zPdLjbbyj1k&X+5h-#l?^mqZ4SYe~|OUoyUh+8M6(D2Brsx&yWQ4!l;jORPb!6!Nk) zx0LPl{{496%eQ@0h-Ykpohn%c1e_HtcmoyJpPyt@=%OB=1*-=t=Zr}kXIrlhn&f|X z0*DiCAT0&|0gv4(wbMM@%~-5~1Ji38f#!!fB6cGzcV^jQc7qOgMQ~=^`Au7Bop+*v6bvYAFa8tt&O$~r+jBGB$&Vbm>kP7SBJS?f1oxqkluG!C0RCoU!pKY=z`bB zbbNn+kZxcqT}2XG8my~H-l9vRytb>E36EKwasAE>Ea{Hg%F-3AiAF|OaO7hNn#(k= zwq(tEOJ#BpT+T%LcpBm{OT%bo&fxS=z4@V3nxRv3X*Loo)-i;8DT>8z-H>swgMW47 z_*aGMD=NV$ESv!-PJcALW{;etwrr!$uJw#Gw|MMm={L`477(4z;27&bT1eWb5_iq~ z3)w*yCY0~tm}SR2(?o*GJg$5?V!`N%K%(EB+O<@B6MgP7LLD-hpMT?T`r8qC zMQG@Ihi?j&gKoP#zI4Qat?e!>RizW%qAZcXG#qhT3KM=c) zu}Dv%n^3nDV=oHnA#+hLSjxLS@1MuV*R>l>?VAp46E}fCA*<2S^74+*xZxj(pJVHQ ztLEOtV0r~XmS9US5ogG>Ryx&klMT+AT275q40?f@@Jr`UZH&|I9m@sh%flb`{o3jg zv3yMpyUy;w398oTgUds}y-25zEhjRbdiA6aN2N}c(LAGHJ(&0OMA;z|>U#deb#N^G z@JA9Q>>wYr830|06__%{nWr&%uPa4oO?+4wM|EpFACa@nTK_3h3R)_+t=9BH>k zIioGpc=YgkTxC|vYbw5D!s+Pok*ysFhF0jJ7xXzc^#$+jwqM=d9v!>nzdedJ566S| z3>=Z)cj+t^`w{CHn#4jjkKf5hX28{Vfg7@xJOLa)`6#O=Od=@*e(+8tKhsm!>kLBs zE1pgH7tIMcv?J!72&c#rIux)3-Oj`uURZ-}nI?XfhYB?E zRa%0x>iY!rsUDow4@9nLWO(Zv2aI&y1ej3z<%+|{Ui&iZ3ENVFC&CLbPk`3c9~jQ^ zJ3=|Ia)7JwAC*)|L4)mxjXCtAaWvGa$DdovE92cry}wSBP~ihS4yScIkpy;Ec@wJ0 zUcMi{7cyfHIaF1`7hT4?yTa_ptG|v0`3D>DRGrgqo%;lf-1+h7uWJzp{FQ_Y$l%5y3G1=oO@P%6q_}Qe9$~v3w%q$|1mO1gYQ^pI(;1&bylCP*Vbne&xlRh5vf=E zw`t*FW3walN6J{xm3chIg(pBeAW!>{6%=5mJ3NxEwu7VXNP9%G=uG_NK;yv<=e3g#jd@7Z;uCcL zCOkj`ykyPacWdO%ib98X$|1f&7p|TNa2>DYv1ilDZ@yQj-?5Ao9Cr!m4%%%ZIGVDg z2zlW0ZQsmeO)6vdvJ53KE+CjzY8*SBODwXB0SVTtH-QbzgWHzv%*7E*CW9%*D^|g(Lr*Z0i z*7!M7A-0}fm^U1MhKpd%z_<~=%VB;24+SUk^p)GLBkVFeYrqN>+N)}5wzd?B&h7DZ z@b83Oq5hsHa4S^5JdMR*Fab6Ij#rr24+JzE#&_}rZwy9P)OvQ!g-^+@_R7#n@brqL3;$sJ<`Ww`=qZmkmasf%$q=l9mTeRnaUzf6Na$ ziey(VDEc1w&$@g0<-3?Pn;44s>*rZ*B*TtV?PtW=I0qLo>W4nr*TkmOz(&@_)r$RU zw;P{c$`0StS#LI8DL$Z;R~>9Vb$1NvdMb{` z2>)7cCYt6yaKrnr5+05t zs2gndxs#3mWc-HPXEnm*$)+ymrp!Xz!YR9f= ze$#oqj+L`G!2lT&e4e)*T<r;oh>1*RZ3}aWnipAbqnw7=y z&|vaI!#G4vsF07%JC?X4l4{(IDDo?k>BtfdPL+d6;jZ?A)-qNf5R&B0k8n)_eQGpl}OH-uhP0Oi>j^Q{d+a=9*0(YXy*1@SzO36TuTrl) z{#_9B%Fo@wN{uWOB3_P+XuFbJgN*#U**evktq2w>3@1wZZK}C@mim*B2{l-Z-T;}^Q&BN=cqO1a z23%|T;!d3wJtF`2(p{T_H`)$ZCi9)VsKu3K!zVG#keD=)XEC&gf?ySI7ycpzFE-By z4ytlMU}E6xB#>;6effHMK@N{+(tju{F_OTl`!BrL@nGUMP^0NgI%Wx5zJB%B44o66 zrryD=kDu?#SU90j>9;R`x~(`ws$nBQwMuN@kxCHz2Zf6PNlitdxK$CggBkV~sv!M)* z?dU%)DqZA44e6I8Q%MfXjx49RrCXgp93ruPsLA6YY_7J>nsC1xrqWM>9_695omYSB z{HB5nplP)g>6$Q$1USnBMd21sLX2on4+K_24x?6T?r`xHzk(U2sLy)%TpKONH&_wz zELyYFUGHpI@rTNl^*qklG4{^kY*3GR3#{)^PX$IRN_6AT;d%Zmm+iN3_ds!(H7s#c zpB!$f6KH0w2?Om`iM;B6C-ix3&i~1|>M%Qhe;{3}ReUR1%TJcFD=(>c^YO)jBWvL# z@EHE>cSsp5_WP%LV{zPe6MS)q80Z9HY;LX2y~{G-2l>7Ixd+eXJMAhK^y9~=!-rlm zm*fpw(|&LZM{_aEL37BDwr{;NB&LnpD0OaUF54HYCs9&cl%UB+b%^dyIrVwkoQY~m z>fh59nSz23nq^8@w*8kHQS75O?(CPKAMF!adp)J9Jctt+yiuBlBqBAm538~itQA5P z(L1x)%BmUC(uM*?-(t8svRCKT6IH*TD_*#mD`xWb((bG3wjOnlS4+3s52DdVc$T{U ztRTof3O(+>&JX~_JK-=nFtTWkL{t7{4$eTgt%lpAi6r?q`fVRf&Fl2UVW+?D9z1Yx zloX#JFC&BQ?+-8Dw{vudX|17?C1o^5>Ak9WWS7v1joYWtg)5V+n8g(LP|lV*l&hsTnWr?jS%K=fMXA#9_$(ey3&1 zN)}Meva*nhttZd=1fjUPjvpG6-{w9Doj^cyYurOFXuiUzF;W{fa!*q8FLz0 zL|#&V)Ys>CPSVrLM3B6^0NO=+F2choR(A=A%nOh%t271*SK^>ehO0ddJFOZf=g{g` ziZcqcRI=)B)+pU7`x9f88Prr>Fz9SiVkTZe-m~E|qu_A(m|kI;K+#MLx>EWm>e+3! z%IUAgh2zwjKK=GrZ7+Z5TU#TS8H7dKnH*)k%jQn6ZjafL@-CC!Vq#>9>N&!z|3L@z zI?+ral#S*JjAzp)e~+QB5C#?sgNK>^Jb-*HG^oKPWQjYd_I4TkqaKzsmX_(RP>(YA z(k~dl@uNVzwM^gw5+#8?i1xEm_WZQ|#!lkT)T&36GizoL=|u`DVOL6D5TI=7*wbHi zUvaekVxwo*LPfUhdsH~tNNrCG<10vc*;9LOD|M!r$73p8ZhC#ShhkaXYi<#39*k&TE}Ihruig+u(7N+u z))h&`lBLa*d~uuXb?0xvT&`6QtJCABI&6*L899nO%d9bKe!7Ieb!^-!zlYv-t;7CP zDu2~nxl0dkZ_xG9{DtasDgj(Bc7@qs5{I@B&Dm^fiek$1lWm)1O&0+06Pdwaac2Cc zGg&RA@U0Rw8q$L6OqINO7fBfb1wgc6E;pB1d{IFg=-1npG}iA3`b+wM4P0@qqQe5( z7FT`^KscWi_=}d5DdGMDE-nFF0$vnTW{P%Y85*Bo-I;^_t8(wP!${hcV8m~KIi1IT ztNE$k3!1|y$7q=~EAx14Vcw3Xbubp7o9p#uikbEFP~`G4k)b_dWM(<_9X6nRP5b1XvDf0 zNb=T)WK0q_VgLJ(%Ni9Nm7Wolxk^q&hyKrs^uOcz8lm8|F5zqkqvPXb(MB1t-@qt} z82n;QwlOjH`Se`kYAqxEWnB{5zfsRZiqvmSpZU{z2l*#1oQtagZ{IFjgHHN_*C{e8 zeI}zsd)@`rGTO@W8NJ+x!lM5f3aYX{rR03Y0pEm{oY#r^?Hit9_qgE#3!B6#+;h2C zz!1RT)x-o44J!D>!}_z|qS{~k`Q2;k$F|og;DA0ue@}4+25X}D-rP^^*O>5M1OLCr zf0kqX15CF^e!UyG;3qdAnyEw{!x3Sb3{AG#dK|qYduuNIWq*&ub|nhm*fh#Zs43x~ z_)+WcT4!%e{C}YlC&Csjg>$;UnSf_Yn0z)d#jj@^1KG@fS##p$!smj*K1siSJ%fLc z`d>r;|3vW(vAq0Gbo-UIoH;e+k&MqJU=dI{;vt7{S5f=p|$S^7}GA+Fu+iiIi#jq|^N=P~bF8z{HaEAx^q8@b@%WBMf|> z>wN0+f9XL-kgM-Z;8g>NPC;27Jqs8dU&~%TL;3hZ2+BLzzcy?abnP@du7P$Fj-pjx zZ~cg;_k*YR3)N?59T$%Nm_%aktI}9r5%cVIp+p(WJVNv)-##*xe%QB8IuZMct?v4Y zpqd*aiC6E6?ERQ4@7JzwW;(wl1DY2>fq;*VmkMP^!C*>*kK=b#Uu z@fz96LKdDe10MG?jc<#GiKam0;!AoiT5iUtD=0!Oo~3v+F!DxboLEx*rQO=^4|erv z4iyL`G=rn7(x}Or;&4{>7gM1wdHeLC?!jZfiaLpEP9TM_rh66{>NF{Z#jf(}0#aHm?^R!9Q`sa4x$|O+`3o4%6 zz5i_^eD$KqZr)CrUqra+8hz6wi8`uM61_C`o!rUutva>NAHG1&Z%tU^4PX)Bq8y%J zzz8Y_>0&sl0<@*$#u5!=W$j5-x0QNadLg_k}aKdfEu9Om**~Dkz`z56*1c* z#u275GmGc@shOGW)Z(n1LkcMk-N2m_GCDaT*AqYZ?-k|~=?sVS<8c+{Ux-_?ERD;n zwYJJ5SrJ}`JJzb_$6D*=IezbV!M*+_+T~2c_e|`3P99d-?g)ihW`4-}&$!Zfs z-ekuQv~7v+glcpY;)o&uMEt4ey<`@+R8_L^vl65)(3*d)9gzh{?cCQ+Ke=2OXk~j! zcO3xJnOl6zQUxdCS=pmE(lei9h3q#pO?#^9aSM85UjFFr1z?|_MN&q!B_t0+?sqOx zM2|GGFvN{w$s>xjS!{Yf+ZB!8tEpCO!@uJIhyA`1(Te0`zS58VCLf%^epaq{ls?DP z_r3GT@{o*yblwQqBe|Lk_)|DuUzwsMhSNfomXsXmVrNZ-anY;3!Qit`&h5flqlHl0xtm_v76RZ$4=tiz|5fRz1;hu6DNYpG zlyvS%)~%gE7Ut2T2f@|JbsN3&VGKHgP@m!_ZI`9-F3!`{8{df5l(%|vbz(>3XrCsR z4YsnU8`3&>uy^Di+!mq1YRuD})mw|(Dwj8;*)D!>-5X{Z&KG)w0-3Fe)&x7 z=XcR83E`C0F&LDD98Pmo#=JbAokv}{=LoS$nu7j}w~LQaVtBf80H@Dv}6jboT@#w$A=Hs1>b*l!Kp3y|o3xs#7(F<3(S z^C@_#|B5=usb99F%M#rwJRmCu0biF%n^&R-Vp~V;VS;%vr3kl|Tc@18wmJ1@ywdg! z+@trirnh(P{c@HN{3?TXe`*5C`S-dnS2w`0AJloXyCsIb>&bC|6WcG7aFJ!!Rt!v) znCIh*d;|Pf#zSHnsS)?;Z(r7Q5egX=e|zNPOx4ctF%1-fDYpR_uY8cBE8C3hyEU<^ z)(GMlk7}Z;l~>DirTksU#md?x9b{pUC2O0RaK z*$P@)^)F+5rm*y30#=J_YJ^9(TL$oM{^1mRt^jt6>b&?=;0pD9RKf2z!Q=rs{@!c0 z$CGoad$N{x(56O;DHE)P`@d|PC5z)|on$_AyY2@Cx&>cfV<9fK;2O15pLEeKtjN=* zlnG&*4~aum&EY2TePNmFzo7VJg5tQ5EfV}a1(xk+eGPXHfRTxX#53}Ivp%4|wPD`* zXshot3Lx3k#%kB{*ylCHA|cssY`xUFqYM9CAEhEH>Ph67_)d`1T$rotBH`J2s3Zh( zc`Ej*eV#pHWA7Mb5J^~_;hTTI#TbxtDbvw|9?r}Q+JU$NuWu&2-};E?+i`5CM{4@AmqcEfbh9{Fh>rf)PF7g6!8EXKY1jZOnNZ%IfwiAfoS|rpcPWPGv zB?rm@UTkV%UaX11P0b$O^wvpuhIYU)M<|_g4Z&}=-XyUanza$rw^O2u9^@}rz}7y+QL=k^wiX@odQH=)qD% z^=f03ZLuD&^9$92fUz_qP3|8u|JhhX0xe7bicPjic^l|K-aTvyN0*u~TE76F_Qke$ z>@#X^2fOUg^cpF(HZ5q4$Bj;WG|9M|mz2DgCTo0sk8AX-Y}mx#@rR4Q6=Ao5?i9&{ zxc#Sp@*@=s%A-nO&@xg8GbasgBLX;!IPKpH`SqTZdJIpg=JkJX?u}cEx0Lq}&u8q0 zNN$Z{ZH+eAthxoS9QKIpR~ijX{elpcB`7FhSVobY^*4a zAK|`EhJv*yDfooL9EjcS&N}?v9LNCZC)bp}l6S>p(a*X!p@?)_sSwK&va1kpmKT#) zv+#ZtRPlQuyE~H8q^?dA$U41T2yFIbeYC^QOi`4~Bmk#N=Uht&Osnxoc1g~rks}Q4EPw&-cu%L@ofi7}zgf#CkoK0Z_ z`S931h5=~Mg=%VpVE1QCFNX1IR@UAzcT()@u43CkkoS@`hB*auRG$C|94y|H{R5RZ zx_7fDf5Pbg>M&emuVeV<3cm79cSAmyxzYrQEMW0Am4>arVB!PN(*8@Tk@=E&ML%I+ zNOPTkW^w!FWEF)@Uj!HP@xBROA=YI=0&!pCHVf>>KfhI0?>h#jnXv{zubDhcD)sc% zmXwagQ@dRW+KZ%rc01d>(NN8>iDZq% zH3pguMm|;zxmWgO}Z32$DtsL@W*S4)hfUKfECT%V^kNaZwwUpbY zZyyqUUB?OEzQoT;6r$sz>gJ`U_QHjrJ1Aqch>|#NHCJDnNSX2A?_q=66GvDY{hHg@53Vqn=XYdfCMTvd^}qBNpSX|34kx~H|E zbbHG%GMPiOhEiqS#N&2`EpwT*dUKUnvoq{s{#EgWyBrKc4KDiMI zle7Rg2UlE+X=L1#tcKRbk+ z@f}ff)JphxGXcwAQSZVEVlKsW&|NYpOI@loa`&M6pvzSb9a)YG!H2VJ$8 z+(r;zTup=NvCwTI7Dt6FPmr7cOH;65O&UjhI5ij~hn^IVFWQj&SuUx(V7vgl8ht_a zLB}tilx~-&rxK=4L(0xP(WeI4x8z0|1MW@r?c*ERg+zdd>L|zrSELNQU;^7S>>cGK ztREI)k$3QuB<$4w3HbcH?MvDNe;(B5?ZkT3wU!9?RJ4%sTKsp`YYktZ0)9lS)t+rh z>HhmpB|H}uzP8{XP8K`HQllcm!enkQy?PJ6q_b`rq`Mop9yC99DY6`_VQ8!Yj^~Qm z2s?)ROuxU?Caq)Si&Z*0ymPMF4UD#G$-4lcH;F#_gA`pxVD&JY8F4jzh16#$u59Ww zqiv777zj^fq9lRnJ=Dy8X1E4A=>(PGGL-G}hj=a4zH=$}lsVE%-25qni%BA(Df8bk zw7}4NkIjzPlu45v&zS~PX=CvbY9a#OB z)`@Yqwb_{FlRoZjUfa}?y|;IozsQjpczdN_bA7iHKj;F#p3Ylm3LiLFIcQi%Jr%sE zTXP;gHc^sASr?7<%&i>fU;wsEpHY#E{Uvn-N(t3*%#@( zhR0VyC{akcQwS69;K?K>iL{kJSzNPfiBi0F54sE!>J@sArTVCx&;B7V=iM85d_Cr| zUX0TZG`qO#BiB{z8kt*5XL&b6c1@3|{%8#yM6Y=PYBU}EvwQQsA@G(uPzF5wwhg4G zXp;V-J?U-Ao$oWBmZ-$)B8^v$wh^c{1^jw|3xs zpeDZ!&PNsNECf5_cVSh10aP=5t$mnrJ79G|jF>mr8w-bOKFJz?DP?~sY2o}Dt>x&D z4R7FQ8d3rMyx4=9mub#w|BpoI%@LLg|K4fdmVO`QXr`j$Gx`3>-=+tIulugRv*he4 zp9x=iw`P#lIaOn{wE~0|@zHbKh3tjfsk<4)K;V*3ZvZ#HYauazP-*Lk1$o7C&7*LE z&+POYRblzBavlTtG|gt3H&BNw#-wq2Gmtk(@k!^fWaOIQ z@j7A8jz=Spr<@K`hUuE9Q_{`%?p!%oT-(}w0KJr=!O~z9dt;<;9dUj!kCE40=HI_Q z<=I>@B7XSewH=|0n?5l6fuSr|%D~#80OQBUz68Wln*#{hBfqc+wplTed@4U!Q^9T% zO^;%182qKF-x;?#=)A~oKzN(3IO)!4bD#L1&l7TzeWEwYiOFEW9a1V!ppu3`?}8W9 zS$fj-oF;uWzk399T+gEfWvp-7hAM2mwcTImZKojhgm`*ix+EA03}{aEeGtS_@_euu z*t(1{IZd;L{OzxiyIiYlO83JnJde3)eDZ0eiyxqxs&b&?0Kp5})$|P~`=8I9eq@uu z=4>aU4L&5q7rcL6IKwGwU$L99&DQy}9Pcu*jQ8(5-U`{vO!T%>->;-`jj*ulji+z) zt!{wsa;&d#G!91hDOB?Bjl63(M7^Ga61s{uyEjQPNT+ z-dIXaz(nSF%cdo5&}`D3-n=8biEwc+3yP1=Ck!OFYSN*IjdJ>vOs1`tYqpFDz1jZE z<4SYNGhCy_vB*v^vXi2;gR2YR)jNSLVzi#!q*S-zd-U7BXZw4T@O63?qD2?quM}N) zcRu<;MQjt{eL^iiethc)!jp@Z@Z&k_hYY~r!-^C} zid}7Re)2tNch+$LSzA1m2)`K@OqW+44J0*l0Ua*^?fx!6QX*&!hW&3Nvi@syoN8L3kE?NjPgUtM5Q-FzS0S1>bfPHFVob$6te7x z#mDfBUhic!Pd)!y{O^dnYO1yu*UYAKXab7NG0;SJFBrpR8Ez#!@Ns1jBh{$g|MkqA z7j*jRnA#0Ek$gVmv&?nFJ^I2^pPmWkX9M*5_-Ih%MR z7YceNOcDZ!Ckxl-=%wSa*~d7py5h<`HSHAMf1UC>#O6BDj=8SAb0%Z~-xp_fGwO$V zCQ4qJAYogrD0~@KT>QH_S4Z-=DV?xp=@?|D9>s7#rEQy9u`7ALtjWgI5Nmt zXA5LZ$yL{Ou{7hCcW>h*k1UNOKy^Gf(#?>*n4SD|_V?|9)O%uy{j4`vKFhA(>SNc( zoMpU?&W?RcFgmZ(xjNJ?a6dLt1s$cf(pS{KG4F2KR-Wp0B>CXMCK1pWmtTbs__!SfgeEgli!9NS7JH zV3fO8hOt$~sj9`Ek63lD+dKQJ88#x+AN@I-trYOplL3^(y4Tacjc@W2U1;8P$Z=j5 zJbHO(vZlvwB9x$}5(}0YZ{aOx&mIETF;{Q9!Z)xcU+Uh`T}#Nz3&e{^=3wA|`}Xhw zqAh0n=r_Tq3j1zKbFE=(lwYn{oT&ul7a`6^%jZ2a?J@B&)@}rC6!-~P&i=+74e2{2 zaM2<=F5|tEdI_%@A{X4EdgC^=?Q+E8M#0;EF6V6k@)#Tu8!cC=V#?U0bM;-2YQhCM zYbM7Nd4YS$-v_EuZroq5s~%rdqQ-c$W>G`?tVU_*hDk@=5cf5|6%ON&9}13W@9ncz z>ev4jHJCrJXIOIJyXeI2$iRlARy+5y0{j%KOYb4LkXn8SvtZN=QItXXcHh(G&4Vxe z8tl@>w(&%d2UY!PZQ3ZUW=p*_>_GO5Nb|UC5pN4M+Uz~~3Sb?;A%kf@cxiq-b# zyMJ;&hvbT=%mk04lBe1e3B3f#q$|q)z50eGKxA|>@RigPFkI!5rfM_Er9RLURTtEQ zIxB4T8K1u;gX;cR(@sVek*(@u)|W!-<5%iB8P&pMUuHG2@PuS)G8V(s4 zY$gtP2*1O7vQ=gXWL|z~&eTH$`iXDWx9`vKH!#zroBQUbU*wgWo_Xx11MQs$IXAbX z$yC^#!pcf>^EfiEtZQkFT*%M6*tnNov@#OA*3>eGsVY%${^7!%Q zXQvJn;SXnEIr_Pu7>`x+2hAm_A$-xSwV7sXy;+a6*5ylWXh_&8R7r16tzb8s+6f2o zoN@d$>ngNE>`Ciwl1bqDVExwxWyJZ~8~51MAqE{o`^PSa@Fi$0pt)^-864m=ZwSNH zxu-x@OdDQ`QeASLiRP+9HtMv(_YifEWLzf?a^ZfQ-oGBiyL$b5sw+1(t|73{rE_8T|tJ!542T#8Pc z^)iwk<5bi?q{V3@K65dgKf(JYy?L^nwSVBG$9u*&gFcnEadkR#->yk?o;mt;MwYc+ z7zb4yj}KM}Mz33+de|MouU4J!%!i=WyT7pNyOW&n!$4+y=2<5+cT_VPBaH8ES4bDK z!%6b#lHyTylH_$Ii}ll+3BZy?cAW?fVJm&E^cZQJO@HR7p- zDoMk%x?IM53SqXpxQ$)Jd6hj1)i60{^`wx+XcO76N1Kmk<-$~SxhN?Yq#Za5-KfQ= z82Dsj;iMRo)b?PMF)hYd&5SMX*BxE^iqV)rwc-n3P1Q{GDR-9Ujq-Xr$ZQ%M~hOYThg%>s&tGj?L^BO%Xqg4^T{iNTN#tRc-w}hw~8sP zCyDk#5;%_&_aE}tS6=R7A^^MiawR)uw#@YL-VGgRFz6UXNVbbvo^FJ(x9aoBj590O zHM7Tu{I_26^KZgY`D@NnnM0|9Gr#qtphdhgNveCgyMJRdmOHpMqIabp4m_sicSd=; zgyhWJc52&M1UEHdb#!sh+nRn$UF;O^__nxZ+=^Qp@W`+&hHH)t$6Q%^KvV4g+N=s4GYac2#$s|s2UiG(q_j@f!gDlA zy~~fGR@cI6Htvu=Z~*rG(X=Jdw~5d2t6w=*gczBp@?ctOF#@G%uK~3n)5VOi6^O->VirSK)P`oZ|Mn! zAn#=2h0jjhWFwBI6>Hty>dU&dM%$^OgBI*gjFLLj9TD)VxA=`NM-LLONjr!6^^9T~ zWN_tLwSB)QGAk}Fs(U_|@kte@ya#x}&t)Fdc$kgSZg(zph0}>`X{Ve3x+lr8RzflxU3>juRTRJex05Kb3B`2eT8Bh zO0L$TF)=B3Md{A;$#jG1{=mJnmGS|$U1x}j6QAlIy;)ZTRO;s;<}S0t;><1AYA~dH z!QTN&T9fmDz{ej$y)SzH?%V}b?-ZZE;!G73!VKKG>fYDpnuB@e)17e7*_0obvz8f% z9aphgfE$jj$ThnfVS;kS%th9Sa?zn?()^U}SmvtuHltMFM{kM%Lx_RZ4D^tzP1#mWc*qBWv`F81_QVf4*GS5kf<38?{FMBcbuhUPpeLVu6-+8kXnR@?~f+?qcbcG~mGHStW97ecjZD4M@6E4R8PfuVw1NNLw1G%Ey1RLMYa~cw2aZ# zpn7P%BYls2yx6?Y7nkZ!@Lez_s<+d8Z61D%2X8WsN@##KEStu+P~~ zI}4p|Ea*!|+`*cxH>gmpW8TN@$Bwmy&EP{)*PMs2b?0QfZ_{aMIl<;+Ex;*4vSYFi z)bS3~WX)R<2>G@Y;H5}g8>Es>EK|DRh^?41+O)>yKy|WTiOPWvEm+=sXc?TkYqeaj z*FUU)!CFtys}m^iz=I# zfb{s5^?N_Z;VGKu1^=K>ruAtvS^ToxsM8x9WRuBE7g1Y+=2$mjC`9~$E~5$9_$%bJ z7SOq8k;7D(FalJF;=bHk$hCJiTKuIhx-lA#v8C$UMFQ7oHgyqPZ{3xJC_{#PNqHN> z8<-Ytx)W5PJMsq|NS(U(^{0am+V*mE{%{i)ft)nXr83i((i#%2?oXt~`DWP^YQXZn z(bf?PD@RwLpaX~C`bqFMh@NUvN4D5LxemfDWwtBEuz+{|3R`b!H{eKp-$f1=RK7s* z6TJ?0n-zRG>y792Iuj1Q)KZUU6dg~Baw@*)E^`7jjRq-%GB_8gU_irvu)YV9k6=WW z&xm3CH9mGU^m7fOykEPx4C$RKJe*zBeO*pc8zQJ;j86A4Lm7pGEAb9|w+WyiQ_%SuL0*c`WIP2On2iek-J~P=sn9)h&<8}X zap0DFuj130dD>GchsRbLUm697=&jwYw=f<=bF&9f{|>{}99A}Ytm=PCM|o5`cUt%J zVzFjUV=?MPv+dOBzcd8oQ>aVGe0DKXJZVZD9Gs3GZ)4Ya)d5+IN?jLA^u*& z%$uGtEf~&XFpz-WYhgCIiQRQRvX6=>AAL$AIk1WfowPd9WXKt(uG4ZO&2R`O-8G#y zAVXHtQQFCeOqz5CmW9p9ItG!id*$s;_2j#th}be3efF0>n2yR~)Mj&DWC^i2Sc@QC zd%oy>5!A|vA}OVb{0D`oCEN~Ek&cq*vu}j{0L$*|;OC2L--8R@esHe@CeNq{J@y4P z?AxKHIm0GXW~Q#TAVRqC2Y!7P3zohyzo?$NNv*-tfmf@M2p7-J=-w-3q-g#YN5YeU z{08O!>C@hGM33n6(#yQ|TB= zzi}0>6ThG2d*|8#r*{wmcfuhCAG?Dgitlqb`kq~jw8ex%B{M4)NxBL^eMNgTvd|yipwX+9nr*)QD6#Zso-fV^4@)RYVCC_-m@G2 z#qgkLf!o6nnYz48w6HnSAgj#sYVH0#k}gX$rP<8GUV1Q6c4zX61nH^}OERaJ_P^RC zL%v(wiCE&Nsn^#e=TzY6Y?)C(NX2g0uBg!4tUUH2|B6%)TLIC4(>r?SI?m{Qg&~TtrV*+PdaZJ^Vi$L`)V{Ke7=-ajFp+)=ePEo8hFLQ z1&5`z1d(h%rK%zyJT5C9W2!szjf2$43}Ell41F~#n3d*q(VaGU=Za-(62;UAa##OW zNgTm-z;61&S_7{W8%u`5r8bA7xo9Hh zhFnOaA@cCi&rGm*@U;yC_04X>e8fjX8+k+Zme`1&qHg16@J1x~|tv7{>F_~5Io#nHHC{sC= z(Rv4`-!WH^t1y!JY6)=)Zz*Fo7vY2#;k*Nz+D>NWq-hr1aOv0;+2l$}ZU@qXeo#V8 z3_O@RV#vmtENC#uRPM$FVklG8 z*2JP|q#g)+Aq>;8&pfRPp@G^Ci%KQl5ou5&|KPIU4JpYNmrrzA*aB6o)w$?>$TSkL zJ${?ut|E%;VCU;4>2fmR#u&ot5Ig350zgH=llKu(wz%r}r^! zN5-RKt+cg=b-|U(o-+rWCrdZpX~_ZH&(TT3nJLMbe$RC93b>&fo7y!Uyb8W**ctX; zB4)7S1$n%?dasz!bQGY#x}M53p)602JMfSC%nXf<c&bXfJ3nAtvF zO^zS(I@3T&A%leuCu7e|D#rnn84;x7BkhrG?eVV|I{)(LQ0i@{Eklse{OV3*qK8X#mRqE;Hp6G6;?QRwWHPNk#A6C~pSKg3k6MF8)1o>} zp*C)lpvS1x=jMM1 z1~E|~f9H)e0&CVu?Rl1CPoh`VczL^p_+5NWyFVX}m<-TUM{>SYjJFq}iED?j8O zMuLi|{!<-ST&DRO#`<%TlKw$pjV9GPoA{rr?b4{)UbAj=q4(uTF!#KJ1qA5Xv64v4 zhh+GWVzdSRe1k6(TKbgUeBc%cb`8O8uoMk_6aJ^MXZNZ-<6jARC$WxtxIK^%us<~h zK&X&TrzBtU`;U#}iB>W%jrlH*sM&~%Qk~>p*mJ6c*1n$oWtW5YzcWNVCHjKrq%I-S z2U-6+rl0xPX=xoY)Q(T)OEletBG&4w1Oc$YqDY`;GU}GoB|=X^X*E2C=^Jz^jk0d1 zbb^TIi{=-dZ4|SGAQ1fguP*!j_c-iMuP~xc9W6B`G!dP4lzS=*2Ys{o zzyEU*cAKB&ECz<@h zM5Xr)=>YQJ2h*b1tR#6gHH6Ys4|LQk+7TskO0IYZ861j3s2z3|7P$9+JbB>Sp(!Ry zY_qt`?^0?%4ShPl!9~bWkjfoVo0OC2eDU@sG3tJU4jI{s&k!?jiEiOYq4z5I$pdo_!AM@7jE_nk`{y{$Ere1WF7+ze@%u6k zDyHm@=2;2vIO+&j<9Ey5UGw6jBWyIX&WnX*YEvl*G`wW#ga=AW#!!J$b5P|AA+d6H z@eVNol}m&YiAtG{H|)}5aBKRA;|vfEgZSCn1rC8sfGT82tF-umlU?j3w(?QyN_OEW zABL!6JiMSE7WF&k&un|KbPRO%!trG=biw)bb~y6Dzq=lnOVJcWE6jFie{w4ZwcIh)a-{cjf@G4FsM?4(1q&ZqLY! z{h>Cw7aAAI3CBG}7g^5;5V8PMG9V0eeYP=KMc~X#V4z!F=GqQ&jM7+WihVXwFKGeGImx4u{9x2 z2LpCKKJ~0gY4Lg2Zt{^2x_j1@N%mQh_XRZJDB8r27?|i}+l-1&!r_ZrmwuIFuWde+ zQ56ITj`cNh@~dl?abzA=9-{>ENi}(yQ&=_nIbH;X_3Ug32eEL6RRqII-bu8l76fhu z?=OMm1>@6`OWNg@90MGX@UGf;V`;c#-z3kYC%`d^Un+jhbfq_AC1!X`pWkCC#i01X z0C@h5-?&GZA!~6bj&{3lZX zc)y^?Yc;$D4?L4XY2K|+k_vk$(ZY#K3R(Gol}xWGF&b`Y&;X(W_Y}6~QQfB)tx>$v z;;I{upFhGLR0q_oxOkUe1y%GxMm~Q1!J$JumG?3}1W4p8WZ^p;;bQ2LPesZG z*1#?r=BUUJ-jp=b8l?s9+ig~6`nbh^#QUM|nUA>`VxrJ4gKOcow}V)_qqvDzK#ER^ zgD0^)3*V<0Q;TceC*_DW8F+1hg@FyFKEm+8rD^laZe{rR@P=inKks;%ZuO8 zr{dEXUAp*PIf-|;>c!HX?#E*!x7%ry2Da83G+v6wX)ntfC*}vm0S08olvI0QaPcX0 zNeq08B|3lJE;r+w%xk`?iH{Nz*qv#Rv+p{#?Ku8{zq3;T9{$#L_QQVy*{uvIz1)bR z!qgn8*gT~z(@R3t*-a*w#>j8eF>`b2^~*j=^Y}Brq#eCL3wFiq1+y$_`7L?dK7HqPYSxeTG0sc~%rXyh91nIfX^mF;^RhOn zQ{E#r(ra0FFb!qNo!y-1lwY00RU{|y1eh=AW zQ{PKuGYcNnH=mimRbQY?6=dT)tzIPM$|}M=T53B((D0d9C7YN`hg#D~twX{>ynr_` zFJ!#8QoeD2E)g01QVqIuYnc#HEZUi<59du!gZwqP0rd6Ft6}F4&xlR&HA%FOYZ$7; zMgn>F|KTkOAT392Q(`p)5$O$d(pItBhkn)hf)=3q<1mwv2mv7~cjbGsob8p!ggtw) zoVnLL;Wc@Uq}P{N)WT50Yi56jBR&y_Ks6&EWu}K+z`~0$)L>>uhvxnlz z#ikf$91GjS#o3!R)D2!OZ)AQ-X6uc|531Kg_R7i+=K<)@@90B41$q+;`rkE_-?w7@ zCL>sXJ4e)=1v9)CBIdY)e@+Qs#xt!&B>z4(=u>$&I|waSeZY#%R#LX4G*$mexn0uU zYy_za=$ZWCwPGuide^vuFd`RW8vSNIpztaeLswE+>X-kA3HgtE?!|c!*PTQdb_7ew z^j$N=c&@cs`-M1-7y&^zSV|3b2h7~pQt~ok{P;b6Y~6}9lQMYcojoEf$zC5}7ha0D z*%GmCkFZ;iAzXgVcoTuhx8;R61Y5e^7H>B}Q{xDGV;cRDpFb=kR!|GiwtsPtEVt#c z6^H&+6AlXP%d)w82z@6`Bdhg*oof~{WkaJzk1^%kGCn2op8XmqxD_Af|0C|Lg5z42 zw#{u@mcY)%V|oE8e@(KjpkD}jx2*O8PFBgIX#{VS^xp&T{e-&-Yc>+n`f zENGAQ94b8COQWF=@vNBK#VH&dFk0><`By62)&ED>_5d8nrGjDi(fonPQW&(#`+E}X zSvBDPtqDF6CzY;6uNg-_07*=1V z`|I1Pyao4OqKM~X`d|d7>&W-rUPAagqTgo{jUSJckZesNSr{O+u9a>$E_L{oMh+A2 ze0UV4#Q}x1W;bmElzQ{Q%U{mq2Q%~5LV~Bcwkv$psNQi{a+(jgWlx@cg_E7b`|uOn z&H{-gHKfwg=WPzt()S;Wg}3kDT{~v1IUzDHP6NDWHJq88d4vp*`!{Z-4 z;1o<`95Ho885!Tg*G`OaoGS-B-8V}Nt)7~5mo;tApUfEnGTggo6Z6s}m;L~9|Fxd$ z9QcYv#x1)`X!VK!wAk$Sa%Hk+|2T~N*m!iGa}4!0rq=BvyEKcyeO99r*^aY6eJEh4 z8tMXWsuY{^V`puf&8ywfrY7eey6rXMs{)KUWH9u25z87PDV{N`k2n6bHHCOa|$ z`;pAnJdi-IaU{Nwvn!iE%C#3J+t&oVL`L1M84C3_pPb+c^qF)$5lvf6|7AtLwKhiu zj|vxm)N~zc^O<2l_<#_xx4xH9&PS%LP0wI>#>A$Ry$GNRE$s3wm*~1zZ7pSv^hhlr z5|L8Meb4g{l`(PM-o($m z_+=x$(_u~N90-1bPtLqt;B9i+H|a=8+V5uY^V6TBqi`=-++i0)F8V`4b1Y%aA_B_L z#HpRq>M^TVp4pr6q(j|r&W;r5bDaSmvhTY$M7gj&?riLRU)B2|Lw_5XIaw{4YYJLvcku50L>u7R}=a@(7!y!e!%0WYt zRLYAxNi2nkG+i-jaulI^RBUW2TlMID-BEjzIS7-@;+vO5-GP)_>b3?Hh0+gaJiX`W zBrmWZ=ejA|&on`qJq45D9i+NnLOx$xxa~+s@H+7Zm-*}nDd7{Ur+T#SL)=3@$7=9{ zIDKyws$cEsHFrgR`qRJNs6vHH{mN^ODtkCyvp*Q@Ljqq7Wb)3M&8Z+*-fHf0N9uy@ z^B@!gNDmW65Mo|iajxdvF~N_!^nRxRuBK=d*@OO1C%7zFz2c*qd8LswnAcQQHVYyF z^qpOYp>9p5{DGWamLjE;0?DQ|LCsH3^n|OSJYcV`LEo~+ZpA)X>y9(I+*^l*J6X)w z^s~X!bkXYMwNSxzEM}9dk9!bGbJFAj0p-%ta#p*uW%(=|V=MOT&Fb!0wLM7_d5l)z zz$SP57mwCSvl%fS>u&zN@zlYBa*3tN>go0>tNDfPKJpCX**_>@hs+_mGKRqMf=H=pLflcHw!dJr*vvRuV?1njSba*B z91{jlVS8K#Cs%*i14*!1Ex-+EXm6&##3yOtE%6;`{qW-Vm*1ZFqaH64m-;EN(0%d` z2_^mNnYWfDbw=u7b=f^v+okCj-gjo7X1Yavw~DvR>Rk$<#le4sz3;mGNm>e*SAVv4xjDObn8Sdd-P7e#>uxOs3UcNBA8k^*gF_B6k=u+L+VNy~Q`j)j_r0 z4Pp44k)9s-+?i35C3i|$J>*A*i-w(JaSK-EwwD^CjK|&V({5?%nI6&Lj$2AENPnlc z+o#!=JM+`=E{}u87jkQr7@AueEA7lcVK){{-H#kBN&y|-Fp(T-Fj9p@yh;2-pn=;o z`E!!vrX+2tlsnxlAB|t4RxBx2Qng46+8xaS3=)vu(bWG_Ug_x$P?0G$zkk)aS=;`UsvDGFB0!Jb|TmJnR~kN-t+jSX)UNHCVz`rjYfSK zPg$+G6`?jKm8|F8cpmfmTZrxd&JR(Aeivtm&hVsn&*#|oVjfuO3>r!^Tu1El_s8{{ z+rx@ZO$L~Zpi~gB=2^w=(${y&YM4+o=f}^PxiX?O$x^j#8S!O_*|-kn6EtxD zhbvNYy+hpYfHID0PUb=x7uGJFyDENmSFXp; zqfVbc3r9XR!k7X0;A@ls%Y1RZm^wJLKBuD%YGHV0;gy|;wFS7B9^i3pIR;|AnT7kv z0J!zpaOn^+{-c#>nelOlG~Jm1aOVp`RlgU@(ajTkwrnc({BZJRi%4Xkn7pU<2^H|f1y zpS3h=O&RbOdH&RS;vu;S*dR(#w(@7%^)%Jkq1SrdW0#v*OM=VaB#f<6hu0fm0E~=M zg{15LpRTFcF2X4h7P)%2vIM?3(q~ybi{IeYe*uyl3w0DbQ%KC-m@iC3fG#t%ojAKH zZuJh=fheMwRwm_jUcEnxCkNKK2`_rUW?UPEh(DM6ervAanTXfzB!mVHUy(l-z>0S0 ziBxXJNYHJcjW_wnslY}nTIvspH78wl2W2xEb8n`{SH%W79Fm3lmzGND&s^!|A zp*Z#YD7shKCiPtyS-pJ4khP3~V4%{hcvphcN~838emR!YQp;?NOAoikU6fc6gQpMw zB%t39(|sNEneJ|VfUm;ySiSlNq$!WROR_+Z+Zluj$$-ndRm+4&-RAJ41YG(NaP-}6 zC%SBgleja3zUumOHUH#8*iOit()1fp$z@Qw!(Ax1?K7Aq;Uv5!;bsVUNJ48WBN&WJ zc#_4j{VTJDn6V;bG(_RYtksI(m=0C1D-$$Z#5(ePIreG&0E zYfVNm8-j?J>fX6m`3+$Jv{^0enIk zw?;V9CZBB9*+SynPsg)Xw)xp;CSZEb_ZS$p5lA=%GPkZQL)bnw*oUb z;`v)nvi%YXiI`=YC=tHH`FSvQ`J!Plrp@?D>E*(vbv)i88qq{b=WIc)HIq0qqz604 zopGzp1dWdqXu4e>XSv=IKWlB>#foxv@nE*~tl+U$ac zx2sWZJ(0+?eT3GRTGg2 z%;>ly7XMnFl9DE6Oo~Vw$=PO|F2os7+D@RhuKYL1<07+%j1q>S$g?z>$< z{ku&9hO07DR1|lelj2nQyNa%iwH>#jJb_J>ZqHC|{+cv3isDt&Hqq|{FcbBC z;YHLFf7D*4e?nsdP!y*VJ3QjKb?}X@Vg2VW=i5tR_WY|?YT(~ok)BQ@2%2m$Yx784 zlfz^eLnUEOXrlH_{Kr4B3mn`#?*Ajy$p7DT6W#xzo6N+0*H99cll!b1pO3zN|Llc# z1usKGGrOW9EUsBycer`@ADGJ9`!`sh7m<(<|21_rWgS)deB{kciZk(ik+|9-z{=oo zIHvvS(a=JzF!^F!EK}!k1Oxp{e(6Y?w9lZl#7(1N!?cUY=m@d(w{_Ml2eGKC|XL86qdX0668 zFXi?B-c-J`-)CVKe}5Mh6-isrBK@96(I9-K)BZK!xj7|XK}{T|KYSJoj)jpnr>HJw zs|R0dV^~r0Qwm3|={mqG=7`ph8B3`wpN28JD9@+mgpRzWGD|@n-gHbixUy4Vdr*_b zaSzu08m?%B&wJ6+qvLrdO1u<^tR5?)I^*d0BYC=c6&IrABdu=`8R?9zq$CcZVNB@c zsJ2m9KRQ;|AUB8VZ?V5>d~xJT-%+ME6qiwdZ@nwt)hdutPPBt*)Pb(EZ1`Bquo#RH zoeL>4x^mNn=78l}?pz6rNGDiw;E9X-AqU0ruxq_uceM-l|BSdRos8HCrnw$$!Fn@Z zKfZ2i48Nb#d7g`iwL3FUO?VfuQu~LE^T5Mjb}LSQ16wZks>{6W5J_p+<9%}o32^a zz+BeYbbf$pjc~I$iX++#c0pI&`5wLPyP8qYeZVv@WWy7B%VpI0#_QcYlMn(`lOw?G zxfW^k9BKR7^g+I1RHIGo$h^kqbl>Arx_s8^3vG;jccHqGg?Z0b{wOm$yM$LU+3~&3 zwweTNzWHEN%QK13x7MxbOc`@EWRgaH9?vaK;pya^MRY|qG|8?@f|GeYpWn83YQ#d8X3GSD#&$dTdFx6zE8YcB= z;z~~27z-!us1ZPDQuGlTg$v@je%MqDrTu=HJS$9kEhld>uB~C}kwSW=Am)4JlON5Y z%Ic!9V~`pA^eEZ=9~jXEGk=axR@6+&N7mRj9+nn?0X9t5cWF%Fz`ZJvEm6jcC!1+u zE_L4T7+fG@GNSRNq*uYfG+*NEPBVk)h2DFg zdZxYE+DfgZLx<0?Am0T2`L|=w>j&cn7k*{X@Mt&{&jarw(D{$+dZ>ju<94S3u4zE% zL#;QS*?I$t&5{_D_oIh8%m_`~)53t2aiG7To|i>`goQVh-}(NZzD{PVE&hRIy{)Ng zQ?W)bv+Lv7PS7wXreC+)6bJF#qsPb0@O z8`-kUCp~A%iOn^$aYiyL*DiX>E5}6SmrWCd&w$23Xl0=>eSrQGKmfr^tX8Wn3J zhe{~U$*nvcRbS5!+aPW0ITJWI71Wg%+T-6rIEKL|l8l`a7 z8{X^E$>XyXHY1ydGH?ZzmXlZJrM1YaZ>^6Vl&`WH`&U+C^g`pYIrkV??_zw9c7i+i z4X86W7=U#6?o%^W!s+yuE1+Ztn)eqgi?lVCN3oV^I`w3dmkcw}V-~nY{Qe|!`0~PC z0Ksqz0xfuNA*lo(G)SL|Xk|?~6M5u+VJ`@3(<)vYwlmUX%$Ma1r=4q*0>-krdn$(es#b+2y^OEOBv}YABHAy zWXAnS? zdM6qNA>E0sd9L7s-zz)gmK>#6P!ox2wQj3QKRUTST%TqiV}XP(YJJVn+f zbAovG+sY0Wdi?;9V!>_osoF@24c!5HeD>c8y71W zupd)hg>9x>eC44Wo=x!!Qr9jRqd61*g&d=L8^+w~j6DrtGkKBtkjrpD5rsE&?ZEOTA7biTy2iW7ZwwyDBev`7QI+!4P6GdkK?(@ z{S-1pbi0xPFiKMj+;A>V=xjUwB(-hsZ%J*NZ~qTxO(;@Q1{tQBfl(@(^%NNoGa~=k z?6ryq%fIqM<;bt!LXChb&w&H9^4isSF5kt%92NSkR$Zwllj3;Ri?#lR&H1}mfr6#N zp!Ms+I#oeg$BDSu7!RYu$;c36x=Z6VvFj^y6u_v3)l~&c_tBYz%rpfwI_THYo-hSE zuxpKtR9yGRglmom-KR%VL_zv;g9`GvQRaXT*ko)qNhvRPL(tgC$sZ$Oyu zFE=VZ{3!Tl|2b8=HwfUgn;=S6aC)?Bm8h~)pkhURO z-W*>AeZ4%R=XEIczTu0_TSC-35EL26Fz6i1w?X5gLVo^d$S0$%{GL-_pU7AX&bXLC z^q*+d3oCL7!$(Az(7(AjkFpRMEmdC4Is@kO>GKo2zyBjTx@j~amV%)%|FGug9mpAR zCZU3{Gd2Xa=jRuIii0I-@6KAyQk-W7AoO=ZH=&Bg#sk>cFq8OP6jA3uj9CPLgn}nN zElmX#RY^)}j98McvMA}L4ZkLqEGX164ycVBc&5^ULtLh~%ItOm6QgkNT@uc;cG^h;)_L%4Gx{0IxUiV z7F^FOCdppnh7iqSZhUlr*_?YY4#eP~7@|aMBU(K%QQVY@)mWjA4 z(PgF}KVm(TcUFbXTs;X=Grck$e)^xc;Qzh|;YChqAcqkNWu&A8R$uE`D=I41S*_lk z!~4|ypsmU2vibo3{DvqXAV5Gkdoc!o;Go-`#UPB1h54NV>NVTt1(&+4QqO7xW$iv? zsv;aCVU<6)l;(XOa9{bk+?q7y7euA*uoTt6AgkH35?*w~Y8M*%7TkgnLQGxAIvR>k z1V3=2C;!gkb~!vuR$6m2_(CqHs0+too4WkVKrHpHblHu=M+L=v<^27b4*fp6D9q=@ z@)w$uoqPC)@l?&tJXj(cCcUS3p_MOxuj2Pg2-xxum;ok4dX$=egzT-0ec|Rk2;9aS zs))n|8*fy4RGZb1<3s#~kI}Mf-(C%W(MSmvF^HJ)hPII(XgAIlvUK8pB?F>HRz%ry z@WrdBXljKVjk%&Rfu*+W;D%{v^O?C~)3}9vfI7Y7r*P_Pl|%au{1so2GvdT0Y@6rk zV% z_1kM})^^v9+_svZjb&241Up2-WZ{R{Z3o|6Z|%jGHtF4V?YANFSr%NXDjQ+)xgbLz zW<})wbwz)ScF1cTP`5R0XWh z2k0B3Ry`>1IGqGWPq>`{RU+#^DwIS_nU+9UIyZ zSm9=~KCbFc`=|>`NlhDGHX{Oe9V-P0>X{S@L)KIH*tXVG@;E*oe!S5LD>p$UP$@=r zcjS?^ZV|&oN}fJeXPlF(EHyrqpOyD}YerV7=Mzkvk$}BRlilr#gL^I;U?c(DudevE zMfa$?$YtGl*+L*`*Ri9OCR|ZR#?2ia)unGJTJgtWTiU}bi0OqiHfWM@UdNj@re$pv z>+jbd`4O`4UbH?78_<}D+oDqt3^XjlNVsz(-%j&DsVyoNqlf@ZDsPCh!d8`t~GdW=-yt`=u+zN zx>Srr$0l|317|t!BGW^=a{?1>$M}NR;7(;dKQ+g9IBQza2mcTeM(@` zix?i-ki`+m*dzVz_-vx2t~U2gEOe)dU)lmSsKs)!14VDP^BQ^OHhD5ExmJTc|BI;C z!3a?YtMTQ;wcnnztz$9G9oio2V%J|D#fj5Bn)I2xAt=|4)$XlS)zyhS<~6^U%Uf8T zyYUC`=ne07aO|ykGaljh>=qVN-pDL*1Wd4^m#x$4wa0oAgr;2DV4)`#Z9@^ddd*=# zt)9cjz=qt>uVhKJt{ikajG!S)1f+TwIZm^OW@6M{PP-L* z1R?=&ir}jx>!^(&o7uRj=Q|L4?!!X<>Y2htcz!6k|}G@jluj%6RQAs%ycj3^BBQ;YV!Kq2-c^t!v@-*s4@PK(NM2f zI!GbJzd!G{5LC@rEv--nvD)4fzl<8vN+$(hBIo2F#lN{wEG9=(VsB83tqp{C0P>5zn zDZL~1RM|5pjOu7KscHa2p=1b!o%Yiv1<~#@1lQ+P z=jU(n4+re2kRkmJsbBA&?bZj~Up7M9ZoAdF`d0 zLWIJN2lht&q&XyNKchO@n1|xc(*|3z?b+<*!CMJFMJc4~?xiaTW?xWc!bQ78MhZEL z805OB#Gpt&9SPc_L2KsdEx8 zO+54S8&GaAFO-tcog|cBn_ADD(n3LqGTsdvC}*Zo>dkJ+t#cABtAd$#OcZN7iq&cT ziTbWvKLH3bJ91Ya!33F}-C3-SCV0XCNT2b!9Nnfa<3sFE`4h#X55@AZt4DbFAPVH} z1eaJEt%X1n3)5P+#;*<|2m>Yyf{e+vQYbo0Vw|-sfTyaEtYT?(vI{VJk5y|$8FG6x zTWFwCOV_sm#LS_ES>3q`)}Rd0MLSkacLBM$tk#gnm@n-s;e`^%CTU^v#3bvRz6vi2 zzR-xc>_4Y25`Rm;K)ox9MEx2_!}RV(m(}0iv!|O0v*kMnF)suF)@jt77Efj3kESW` zmB2&NRm#{5EU~*9AeB-9Iy$J~geRHlSQR9CBK!J(ob9@wd`NWtDe3aQj!iE}snsKPeTXshH~%4pI}VsHS9P3+aWxPj*LfUvGc4 zur8T=%{F8*QiH~EOjZFi+rq|<%Pw&=Mp*bIk`)#xaXbi4Ezz&}&jB~CbO{jKE8B$yE?MhdNogA?{ zpta`PPmIhSIc~@1v|&GlX!1JX%fixiyi(&A+=^H($d|=MXWkX!0-&YBffPqYa zEMeb(PFi*m;)h98AC;S_BNS+%~cN`O^jM{b$4#xq{MBT1=)NLowpsV|p## zpHrD^UKb1)3E;9MedQs0zJ$Y>0Ur}O4HhfpS?Gkqi^-3!-b6a5WC#Qh!;*SvaCJKe%vngh_i{M;Z7#lf)y*esa>B5 z_b$q*Z>GO2bC^(<3sK7yZZgX9REY*n3#xrBi3Ig;&7H9%M$azP8Yd8SFwjlsfuTz1 z`6QR-#ZRt@L=G!grp^57I!!6y^NC6aAVmjePM(A<(2X9A{%OHLsrPsVZkTQ*&T)Ln z%PqpOWe?4vVQa^)uPNRHd{g>E(xziNV>ABOnlLThsr18U__=u^=_>N5`K(hf=GG2oo{s{2!-Y$ zGv{A6~pT2sE0AydwgXAEX9ky-nywSm_P4 z@m#~ez>wQ);D5xTH=L+IM$+w!Wa0Izm1MH{Gh{_bRhXshv~x<7ol=!z2ncWPn?|J5 zBBEZN}?~1xEp+UZI877F!-TSpyoRsMv6o^%>UJ6W<>WtapW1(;+Vi99*h5rvRCbW7?s2 z9i8&+w6H;)H%SfMQa?MG7d)@=btW=+Uu&=f39momTaEo_NJNyZM9c1+JXLO8<^wW@ ze*Ba~R>P#x7FJ(KXv3rZgzga>8#oEN_(>hzf-b8$OfI3bdlDjUxo-cPKpiaz01##B z^e51gnu#G=&45LbSPd#gcg z4`^odcod12Gfrwx=13K3D$V#SpHGcrWM1=E2@+_Fp{F99iksW7)WG(Do<_qyTU($m zJgb=$!VjNFTb_x`x8%bbKGhIN$g@a;*B!)-HtMKjv6xU>uC>oWAT0JpqHf z(e}^K=yu5ZfA$oGQmVcj?L=Rn2-$}Q8S6yo@whAh<7*bZA-<*=FV^9FBb}-9CB|-d zM6tu&qgBzx_&n2jt&tE)ezc^y5qnSd@*dC{*r--=x^!qf&!6*l2D z4%rg6I-S|P79B_dwTl*YiKAM;w}-%|+EPW6;3ow0*pZ$9s{CqeUC4>5xPyJ_M z_-CVh{I`?+d(@oyU5=^{nr@1df2!m|BMB>u*rlF zj{Gt@W%Qlz6z)o>@_$y}zrUG@C~XuHSo6KK;*KLqdZ6e!V#4JbkH8xq_c( zNz5>jD!SD5JjeI--22rty(Sj*yd-xO>1>1y27a=Ow5)h=2Gj+GTWT{$61J<=?n@&S zCs^cZU*(yNUb6qJO`Ek1CWp~v-dQd9-~V0kWf#VKL%&ZSKz6x=a2G)b$gUABX0at| zWS~^CJj^o_GhhXp8O-LeyPqmUT9uByTuao*DjEyG5O+Cz+@+N>yB!WB{{f70A5QJC zO8<8}Vu%*hm@GAaI7O3}x5KY9mj+UZY7FDegdc1!Jo^5ww(F%_`M>Vt9sliz z-#1|Q&oI*Qy6FB-uCov24YI2kBRq6TJ8g;-JH@6n79UnoD$Y}-U(W|vUG5ks1~T=x zt7ht6_YieG%VCH-pExk^7P4LsJXOkBfAi-5U}>40WG{Y41AE?52w~c91wOr+*Ae@K zR$u0A@bxwGTkCooB#t_ib{|f)CA!LEbhorq}=aZa= zE+9by|9GeRzh=MJUtZPf0b|&5(@Qf>RfhTsKib!#Xi|YTeSc9pVChmUy59PAAr!m8 zz~1Faz?xA`aCfKIIa_XCYclsIU#XhaoXJA*uF5Hiv>mQa_!khU+j24n`;F0$4R7WJ zjvG8danY(@ZgvR*Kkm0EwS@73d?M^9o<1}J!IUaCd^d#IPB{S2D&OPh^&%|~IA6+B zlDS``%a-m}0wU5Su(|yb5{}U3oNT5ZA$ONG|CvDnUN~Ouks*kbH+!;5OpLpIb3fd* zs+r~k%Kqpt5m>Le4fzI|HG`Z4HylEhE5F(PdP+0642?}`m_LGk!?8B#$(4kJuaF-qi&?qAzaG&z2goOejq3c_P|k_DtTT7%xt z7_7m~gXPb*2R%-97GUEe6$g{wqm0(DBvPm%`s~y`F>tncJSX6IRC(}h(V_?@|BNoq z%zrG*Mdfy-B+Q9axBe((9qTtE4=of6{9LHR2~TCu2jogzovVfExrFE_>enX?v5#`N zl0ld5>~cBUIU3Lf*h9+GGhVR;)KT3Vi81MU06z^`0cv;>ItU3v9w$FKKYTs+NNZ0F zqoG5x7$aPe#T9#hx;39}~c&jX}pu;bUH?6x}EJue^?JXx8{7a$WRBOHhcw%3&! zH&A5k4|JF~-=+1e#Y^(wT2PRP1HEc4SKrM4YYs0WH<_ei?6Rrm^#_a_3~S*m;W*2# zfT6=b^%8EDE#_#&C2A2v$=}pU#Yd8>V9c3?>fe9Q(FM0DrYl#zF2y|*O#+-8PbNtsVK5RdPqWxdY`O5!$bN=7qr!KGp zAkLA7CSq57c6L@#($Vp*6TzV_7%q$KPT)zW~})Kwu_m=nB= ztMKr!CKR6k~2+g&SdGa7gR*}VO+S^ zeD)_ybIE1?_v1IFoh6<}mg&eIm}dLPXB1oVcfH%)p~}!UxrcPRv^I?4alAwq`)l;X zGYLDUA192Cug{(jliwagyDL`pUbPPe2cf+*D&G;VY9EC{^*s8kKNv9P0ZR~Thdanx zNG8vVXS{MXAAMHpzT1=Rt0sHNFG_p1hh0-|kr8aaOuQz6!>-?P=N^WG30yqh)Pp=T z9=ba}=6}IJ>xKOqn}mJ!d$4+Ppik%%!bbtjXg1mt)WHb+y{@-cd?AqcainsvOo${F z+Q9s%!5UI1rQ$#@Q6$H^`OZTf?w9vEqIbOqg}Q8r@5jR>LEb_2X|P(IsWnqzWn%*= zJ$s$Oz{BVMnlFK5gWrk#zEO%8(L&4c-y<=Zw4O5uJX)G;dNXg)v)T?BCjkGjt&o3k zmm1LVau0~iaXu`DN^e!LZy49z@C?^oiTf*spgnrlVo>SI%uGU#PfR1ge}@V-WDYpq zV-NcBb#LKM;f811;sB)O>V`pI9-vMW_{Si`p8AeI(y@7yw?v45$oQrG@`E!ms# z?SUYC-!bj;3_h%)bVZn#qm&&aoA1MLhMxEp*wbtDrBz-4xt&TsgtzC7p?eILe;|I4 zMng#f4P=Nq{wpF|v$0+~<`~Ut&kItvJ9up9N@t91*w5mlu`84@k>0ZMT4uI5af8ns z#`qyn(?jrwO3~npB$|qE@*Fw=zi#*0qY?F8EZv!m{PlNtVXEN1%HV_9snoJ7b=27Q zT+PE3ghEG)gSBSHZnDmtw>dOf0qY*q8Tif7_a`BwK|gD`Hi^FZb*PEu@jZ{mVAi9m zKBDcLGr1`HTGq z!Tdd&I^7Rn@OQV`f5wzy@??s*j&O)XS{W`>;gqepCxC+0Vw4b;X8gZPq#FfVAh&*8 zv^(37H-)w|>8_bwlL1g@2K5ldi{8@lnZjdnMdZo`2P0fA4W`@U?1$LzI*ogMBuylt zkQkU@L8?p(knG$*h-#V^ebMcY)NOB>Eg${M_4bZj{~lw4BB)dPJ^YsHhGwFT zD>QjqLh%GkPmQosG%oCu!yEWa<{jPdC7&WoMsRW%Rv<~c5NVeeF;{dS_vY+-rV;@s zi`T6kBavOUT{G+rZmVzVRw^Kbe@_dX`In(t?iosexy%A`jbc@*44v6$VjPnTd( zL94Ylr^akZP!f(z{jvz-Eo-N4InkoVNQE33_tuQ)2Zyb>lt(!?qV%He^rceZH2;_nFOlMyxkYJYJhM zqqL;d&$djx#D6VX7)XqELkkA5hH9JVblOLg;Gt{}N0)oD6~hXN#|W4&>UXDP3|ESa zZCOV5(*wfDBc!>^%`sW?1T9ijQVT1}?CCg-LOfWVQ-1GgQ|-^rQW!K+VM!pErXDcJ z9kCh3WK)=dU$x(G5 z%DG2-=>b(?n3m>~2O8!gs0gu&L4I@nfUihQ*h5Z?W=Z_nM1^goGgg|^*G#5>OeGME zFj95&o5oD0v)V+oc)-#ysbl@Uo_%Twml2BZE`j(_ZHj&9Pr1g-*1)!6o%z&hWd#(9 zeO6XwW^%FXKf(yruz&-Ek%-Bsz=t|=Crk$}P1IwR-TjywQ{$HfAmMvv14Gu$o20cRQKiOU+5^@8$eR=PnR(!yU}-954qo(d&Wps28FQ$R>CWvZbKw!K zIm9q+f?&e&VS^>>XSRGW@<@Dg*9$=)x92t-)YV5CL3xY>S_a^(dZ3lI#8X% zkw`i9`L(s6y42Q|ZPk_#n1C>t=x5B#MQ<3RWo}NZn#nw+*5X6G+I8KvMzrE4`U+*Y z7L$`l95rVmcr)c&RAU|rJBXB>o@R$x^#+}tFkd^5rE9Ndml;n1Q}7J+19FU|Jeg0GWQ{KOpj6@cb45dE@BD3l*2Y&dRMhP z_`L<{GfQi(crYyIrCuoZj5Vn_lc+H>o}E!iieBb?wKj0EdZ>8kF+80>(lKF($qpNF zM6X|xEiY_oT%QQOGeZ5jjT{u^appmr@UJcKzq8^DBKmbE(a!hiiym~$Ge*1|uMxG@ z-$(}TfZsI1c=)Zc^xazPwz55#gnik`R>cnxoz3n}-!+rqWauQ%=8dii9DCAa%duk2 znjYoRAC0HPx0oKKy?iXaozJR!^^rDDwjX^HrE{p!($8Q?hP(wnB>txA)RHxY{bi2I zSZViOCiDs}5j*F6qjyakCL^J4SmPUjPUcp!Hi{({C<){XKX$R%E5oW#mQXrL9k8dq zXT<2V+iKp|>jD_lDAkZysrP|yqGbz;v-7l*Ld-^I+!^+D-8Ok>t_jc4i)8M1)p;H+ zZ~^=42g?J#v=n@Q7EUonUWs3$YT&?iQ5`4J+ty`@F{#=v#)i^xB)1`0?OI{^y4SmD zLGyqv@aXM)Z}Fua-paj3KN9Q^fd5ZVNWLu1G^B`O@K60h>=wmZa{DfK;yI9{O7TNU zTj`4H#>U2AzgM18Wk+1e5#Sh?!1nx(wDV=0WEA9czUszmsK@(t8?keQEZA=uGmvqU zeUz`k*u6GGwl$lITs#J6dNUTFz21*Ssvid!%L?sx1oCK6ab@p-m@W(2J3oIO|9M>P zyKc_8m2aswrr6_%klouzr1*WLt>~m|q~nr9zO#wN{8%o>DiYAno4Tw+cbT5%_UfX# z$OjR)sq#(;jO+#3+s||WVgzob1H}apk%i_{$x&kZ7|+vx#3Sb)#00Oi#QbK=ynM1? zT77==nLWO`$D_SP(%-Yfi?qkwv~LXVAPO>jJf|TuiTheoBkswluz!nni35(j6ym*n z8%26;f7-)C2Wn=<$OU|_$>Wl_3q&=7Cp%2zi^WCXR;IZgfiF2}Y}0dwQI;3@)3A#Q zTUa>N-27!;rV-=aIXDK)dsMrcTaMRzUjPzftQ0^nj5M|%#)2hOjc3dZvYg~Qd43uc zQnKGNP$OKDd593Md#zzUA3bMkdk9IZ{1)u`MjtM>lR^F^f#0>d6P4WPVWD8z@<8ju zeL2-Kayg7J>tOrKGIJ9{tK&`1_Q@`LD&ByvGszfN0?5fl9ammpAa48%fM;K#u)wtF{F9$7@C&N^%Lo-yGt)A*9oz(nLOjU_7`XdwwV($0-kNR+Wcq1qVLJ#U zOK$0-p9iN)zT@G}r473R;Eeog)|Wd8C-qvG&H6nZ2fwk8y&RP$X1S$1F?lYZeh=Ofm|uXe9KO|4ENB;+6^RLI?)3Td zmwE`6gXy>0$^+GX0$tY%vh+g29Y6BLU=e+}7|SEX;Fz0?t)VtS`vg}w*fd>d#eqSY zwz9X^UnprE$wNuYZ)t*ua_K472+3`kt9wvkn-$I2=uRQ0%l=1w)=1I4T1O3sjzlp2+hugv zA<~VOXM}P?AU5!6lXogTMhH<~De>N1LoMDmELnlpAq(^!PMw@lEG@;?D?ah@kwNkm zj%W@~ywqPEhL0~ZJoi{p)_n?Pa$_qWOL}(9=<9Kg{Q-TeCb*qmPR~7)=*hBsKS(}E z4?p=UX0_cVp$I*qHS)o9)ta?T@V)Zqw??uOqe zhLLydkGmjTcPh@r8X*S=^DsxpdGS4tmvlcA*e2=^2!w?}iKtK@rgQ)F{Ia5Wc&qLr zIscv(Vg**Ne^>fgF&Jyl6%{WSOLMo4Em8LvQ{jMb3*jRENws6weMllp{A%me$fi2l z%=~jiS7er+oQ^cnWTIO$g7CXlVC75%x9f@Zux9oXsO-E6c7g&EThT1 z99uH~vgBliQ)+sfa|RD))nBn~SOxM8M>|GMt?SN}C4td=+_Nargw^IaD=Zzdr4fZB zQ;B?q7PeargvHa3#zASNOPn38 zvO~8xtl(H2t+t=k!D`Qxxk+^ve5IUL28&0-^mZ2GT;i^?ZLj1=fzH#-cD5yPM}Eh{ z^wz6DP=8naaM+PR)IA-b$AKZOscdaAkNkr|B*naQiV4FrOZE{pX5cYTl?UY)$%OvZ zLbh^`#aYw0PlRHYn_W-eQWlbWy~mYdbO!3^e zqXh*0O!AOu%?Q5A&Li!0#l|SpcKNmSWrU|}>~QJ3o_$t+l_NHPLl{if*#;tU+%Gl~ zs8PFUt4jOxTL@aNzOT@#Qb;n)W(#hL&1qjhq+;6b6mc=6)6Uea5K}?}jr#YjPPDg& z;W8IqZU9sz>^fc9ap;DAHi8Tap2(TZNkg)U!7N*>RGe1&7E_p-`8TN;&evs@E8%VwsF?n)W?@?^c=?tR-oK58l%7!}j zrj#753FLYcJ91Wo>dQh@@9B4)n?gpt!yocS&{x9J2h-ut?3u37R7U_;?$Bo?EYXkH zBHGwXR>=M(lZK^F8@<+%_#YFV{fN!!1{d9wo3{{1yuUI_l}PMiCfoz1%DJRj?A8S$ zO1_AWI88>Hyfy8$X`Aw9q*g@J-wL?2O9jzi3KYp&)pH%V1e^}gA)pXayV<~+7-Ztu9e4)W4@79nD8 zwo}2}%55pk9{h*a&$IhCL}v01tSr_fq3tEd_@Qa3@`YEwIv}LXCw-#3+R2xOE}tv= zYMviNqavvXrK43G?=}C;RY&6VF-1~Enk;lHZ!Xj13$AS)louMXj%1#2C3OEqB2?n# z89kNnz=h!+H;OqOeKY`sb%a*0r}WO9-#tR=87S2YK4VxY6{hwLlq8JES6E|}-0AkN zILPOjoD2cEx>7&+L!J~3VJ2M)p&|MRApUgYB-AET_doKWjZ$Gl3)PGbo`jKv*Ci)AoZsQ!mz?GYy%^Hs92}iY>BU~~ZgkujU|h#{ z4PY@kzJUL=+JAK;yVK`7zT}rQ|;EJ8f&WV@Rr$p{qJGuxC1lg z-n7Z9fi*Vok-+n3IMnRZ$$=Rkubjg_?t(GD8{U2#Or_j{4n+oiJzy1O>>_wty^7R_ zzw7GS0MjqCo#|`_T)){uy#IOSFO}+*U17EtLWXz#TI+SD#XfoV@4AB3!+{vmLNNb9 zEHYDT)`^VTc(nMB%`ltV8b`}1L@2zV#{AhW#h_CTz3Wu|B?oKe#n@?U%wKOH_ivD# zVhKB;MD@KxGY)ek6+wyIL9Io^67Hb+wi&9KkzZQ3VA7{H`5u3BkBiuJ0^rkYbHv%M zM4U5TGe}OOL#jtaprunIA*kP-(fPzA(R%gwRG@YejkDaOiftxY@@y9D-Q z6~%3EzeVw2HEu!%*TSU0GRPRHWpKAWOUSk{q=rbe{PBj$g{k7mzRI&S-@1P44QDTS zYaPewaHsR_=2>pA{Of=SCetxeSr1gd(_!lhj z+hj$;n&7IytGnR#f=nXyGFr_ar<5N$4dR9z1RIgj4c6Dvl#fL2PvJ0#%3l9<&-nL# zEh5HCH&B4Z&ejHIGF@;u%Y7zy6aDi7z47*r2(3m_j7Yd@jS&PT z3V*5REPTV!Y!|qiiPw~)(~X>_2EK?R|LED;nwCiV)!aOh7?AyTK>j?K0U~?O=x<-z zQ;*gc12Wl8F?(t>*`De%`i3VmR*k?SR-BIeZ3VJsc|^z5f`=;7h1~#Oy)7#xnUO>9 z&S^bG;c!Ygva~r2nKbB;JywKZBhsXIG@GoY$+$?+EN2L48%-I_|J23=Kc05tiD;Q1 z0%G7sOqwO^`#ePxEX7vsC(0u0uDcQ?R^k>d_bR*pNHnLBT1rq9OqHZC5Col(k5M-a zjddluXWd>ty3U`;jxTc8xK_gZ7d*;k-xK>W2#~6umZ@$c_gTk#yRE==zx+dVe_>ys zFq~O;cG}a%CZ*OysyaBT-e!i?{k_sb%t-v9wc{6Znx;a}$3{Q+vOxe*Fa5brK0fHR zL9IfY3LvffZl(D%SNbOrB4P5FqYqM;s@7PLB6KRdLvctZ6Jwe+7Na#St(9D{HHfFz zE6Q$?_zk5#{q9YX@`E^YvgBQ=>JA4d95Old8cQgF^03GM3Jm88>C}1WvaBE98RnBt z{v<6vUh!dB6wY$?Al>Yz9$wh{Juz2=HMB7$-pXhH+WXcnQbL*;d%{^I4bqWEtzuIR zZ4g<}wYnnY3%tHlwf`5j482u{3{PTXOlJ~B$Pi7^b;%+qGiy(@|;K% z9tgs=Ji`Jmvu%iwQtPzGmzTbRYib!GgmG8DV%*}^i%74}H?{%nw|hy{H);*<1xFOx z10Q2;;aZzpX2VyMJ#Dj2yCG~*Q9(FWu%MQGQR-Q)Y=_>deKDbua@b6)^>$vm$N|~sehDRl2%*Ue^kT$ z(mOC3U@emwojEg~GJ&I+TtEEX(0d@8i9Ga>%xi=?f6Q<&)hiqj6$_}L%qv_LZ!8If zi?`b2&LsuwOK}})_FVOy1k=xH7n0EGC3&ThkJ)E0rjY5--Eci$7*NG(*#9J#AknA09&~dq)jPweB)3$Gk zMT%}9;5UZLmB#MfA^>g{83SCI%KS-_jK6PVV0ZN>OPv~;ZRhl();82SkE5Jxq40bS zyHL3_-JY-%4xgmyd01u2*XgbXCvF{yB^}V$o!7^Pwd}37v71q*QyNz^l?u#Qq+xiHy`_u%)AqReNrvmdTe(;?cT>Yig}6q-PlwRUCLnt2n5~nRkRBqP=(Yo^ z-%7e&@yn?md-7B{r`DLOhCzqi$A7uygt?KFOXZ-RT(qnBQ$)$R>(c}9oz68KlUz>% zgQ!|x0)06za=Ro_Wt0;IMa*x^SoRh)1o(&c4?lMiE$Ab0czH(*0vr_r^?N%SdFi z2ec0s#qXW=1Hqi44*d(kY#mV2^Sqlh!*h*GNQyW@H3*fN({E~v;(=eiYSaMFaWU+= zkGS(%vgXfXtzWh$_pqTbumIwV$nGEuZCsV}ncW8-X-mvDv;^tYOd6=~dMQv^b4W50 zQ15Q)x=mpu@cdKZwU03+5w;Z$X|V3WM8t8Oinsd$c{S8QcV_U(9TA1_=Z;eh7K4aqXdr~ z?}Q>8hsx&WaPnKZ>XywTi$5PL?6q^vP z!Q8HrxeNAWq#$b&R(-tIjOW?&$5d%GufQ+NrUmLoHAsYArya^}9d#6O&Ne#{N0m@Z zhMBfE&Vh`e5GA|RGJFC}0vfz!r+b%dFm@U#({XGgk9Mj|p84UOmV%LruvB<+_imt5 z0A>BwxckkL`#W>+;!ool28P*j8xDsGp8K7liK<~;i47zCn5Hy5yulyM5YZ%WP0|Fk zo%pJ-^0$h3y2H`qS-j;=4+QP>J^}9Wo>yk@L+H_=sqIwz=Zl6kA+h%aQaJt7jhO^z zFF)AWJ;rI^Q~MavotyIY2NH=?YS9mySD0RO7J8%CK0|!w(+bCDSSArX4Kks&m*`_;YpePw^_5|wAd-B-xr!gnH ze8Gg`ubV#%PG&-xCq5qKUi`Ca^l$2HO%-9vSWxV~TYDWmUt$>vDQ^r)R)G%iNkXS=h0Hwty~? z)9M(1==Wr`(DgrOs-(?{OboB@NwB`|f^xIr(~3zb zsI3up0vI{VjXxocJdyCnDsORipl)j6Ey#R%1S%9w0#l)?W|jk?L^F0{H4N_OfCdf4U~OThg}+7KuKLi4kr z__`gg4x#Z<3E0}=lNjqIRfn1c%qj0%axB13N09g}oxDXnY&oUIpL8>tlPJyIIU<0o zM*h|q8ehtpp)6*6K2G*k9*?WRgc$<^ki6R) zt4*)uRZg@1T#>Y7;?p6v5;?AQMJH8F&G+~lgHChO=tf7RyOPTwpitPDW@$DPWT&cflw|)3u;PrLmtTg@TaC+bJ{3C z+I9S}%68q2@WX__vG+UL42;3d#mOBb!c0-C94q=gpCzz+*Z4!O$yR^E>y<5R9@10P zo1&$d(#e*7TlJ5LbLD^wuu|@*{WJQ*rPmJ(R5x84Su}|}S@CPaEV>)8j!9wDPgQ2M?o{2vgeNDh1v_Ph@;lz z!-hScqnb25%{DJ;0C__I{Ct(XQH4~J!39O7!j)E1o9>&JiAPm(*@8K_9FJS!7jC7k z(oa0Z!|_I6N11??*pj2NKW^@LDsS$e1r)aYwC|s~nGY;`$q&y96B%+aAXV1i)QuMaZn>&)^GEy%G12 zw}sE-9Mn?792+&yBda!TJudqvvmV-{V#YOW0~`Az>5>Q)SJZ*wo|66a>t<7fiUXU( z>{%hdxOg(hlJ97bbh9LF+PlSw+6GT-7WM|2-^x1B#M($%Ljj*6jydA=CwKxG3-^|G z`4g-1$5M&!kD7xFp*dOA!Cwj-?K-D&({CT5*gt45|4!w*z2YOlT7mpgY5wtX zJ;0uTm(1#U=0oQ2!S5W{So_d`(N7Wh*j>qX@J#@IfnhgxuVB!QpmYwY22Qf0d|q&+ z$-K1Bildt7CB}6173M&>HTC4=-UfU6P3ZGV1pTBirE1w3AEfb;Lvdn*i8+6l*1Z=dihUL-YC3 zaEn}L2RbSd@mZlB28O=IIjEAyiPc7&-Sft(&1K`$t63{KI7ZC9su-KxJ@)H(o=3ob zw?$$k2w2`jblLpi`P=t8v?maLs9yJGJNPGdi!)9whoqmzo*@i^=ATZ|b2}HS82%~2!APs)M!A4 ze+kpG%@c!8cwL|^GiSjJ4{zlzlyXO3eqeY8bG$DkS8Bl2>>d#}SpE3xbP`y`WgABs zDi(&kcgOJ^9e})(;+oP&;~PQ9=?_2?t`vkVYZ1~~rW0;l_dHI%HMfowP-TGs*{ zWQX`wLgA#o&%WdedfuITw7vWG>2;rMHs(5R{z42K1jlnAuINU_87cdu!&{0@AKVbX zoMpJURdzk2yF%%xp=sgJVbfn4gn7b?6 z_HO-Y10(A(TR{Xj(k|OB4I-V6KBnyCFSQf;Aq%}Mf0!P=E7@u&pX-r+KVI*rFd4#p z`t)fmmF)z{@a^T1lZWSK-DPuodt1MfXVV5Y0DEa>t^|jxbbC*NbxxAb9qxF6wmvmz zykjP2Kz=nQrzzSd}9t zZ^5j3Q+>3xB$&Hq-h$|uzGOIziYlUR)w}7INUXR7p7T;JxCOGu$$VOBN9*sdI8 zA4PkI>-){WCGCE$1cADFAugw)_I2g(nMrr6SDuFXkdpcVO%u#O;t}!h* zp9Z!VFmf&<%sy|RdQ{Sk!f>+R;F=gARt(9|up*)3h*{m2cSd)MCrIG6mJUaZufvIysf7c?DWU>8V3H zM=JQuR7(GST@bj|G(Kv4)9(a={W}kdoS$)pCwoxN!uO5BZB`>@8Z_)gK`*D&Lb9G5 zSuLlwb>$#~xQ@S`5`4bZqj{jzT7}5D0>^zdfK=ocoXUF)>pX@XA?K{5PFa(9g&)84Njz;PbD4Tq9daDXAd&IDNG&u2 zr7+|{nsa?QqZYC^G97yFW0(_r;JWI4n>%~QmThKtd9b!d0C!qA;TrSAu2UWo(9DNy z?xp*1lkedZ3ne~;h4DN_8V-&)cDA1nQww$O63Lb`$D^%A+_T%i${Uo-*cIIJMQ4@H z7iLP!?{Gk<5hcc6|My|xTKD;BGS2UEr3m@qNGW9eMIZOIqh9RNPK?-Xj4s}>xlBhX z!hZeW>?`APR>8}{LG#DUpEmbG%j%InWYO(9`>LJy%N4s6H^DENc;BzfdJ-~R-ds^D zz3by(e)?d3_#l7THxxdRv9iX)W6{58+CpZ?dU|`$oKBP(#|zir35xn?hC8UHUR$9} z?sVx#eMZl5AuprR6h)m(oub^p^*wl_a`y#FU^{C{~W zW)JZHAH^MiDE?#Msy?8{hxAG5;qP|8X*+|DDW&H&9x-Z+13rAQEpjPXg_E z(+4IJm#yaAYC7ke<>JR=A=Q=S{})nuBO}b?{#3&GUQu)EWqbGS^|`ZC@v0Mp>d28B z9H%J$xE=|d<5Ct4K8I$i3|&yQ7=e|w{m`|+xjI%i@%SMd!ol46LK!P^)Sb-lRxe+i zCqB&18ZYpz6on6g_pkQ_(EB^fUUlaZ!#lIjw<5KVhi?~yeFAuI!_}q#DHZSk9sMOO zK(6xVD~*_%+R_Ihee3Sa6neC3+T?Cavx=y5FjsB{o}*9eY`lt^4q|!);J6fQvpIh4 zmwc*zTjR_5aFtrT+UtrrVhGxO6)gwkUJ64a(%nN^Q&hl_LFoisci3giN0p$10voE1 zlk@&nI_>49`OpoLplLmGUMMOk=K4?5$@5aJA)4hv1qCH#$erb4jT;mNF_0W3#i;J0 z?s@g>>3xh5R)LXho$SRK_8F?Xub~!k#D^m!NXfyVySoI(m892~=;@b?Ho;oKpGvO1 zU@KoCTX#{DqTBxX@0ojOXW%t6JWFrjL6YoxT46Zr>oUZyrt|A#q zFjKAWJ$(GgQ60(PiyO{UT(Rhlt%G(mRAXLBF!TentkcK>MUb=M4EB(IbJx2DE~Czdc`z>CHmlTw-u`Uw+xcJ!K1GG?wKVp$ea6bz zMf7m?Ky&PA^0?L-W1>PoIpdHQk;@DnX*l7#KGCa7Z$*|cj+9H2*E!=ehqYeq^&^Ga z1{%pw8%G?Dq3GrA2vo( zz!AAnB|2MJ-gMvrwBx=*he+5w5;%$!ismC8YxnXl>|JlzL?5^>_P3 zA{SXL+{x$lf3F?OM`PoEO10sy_`n*ZmM~386s%CPSbiT^3)yTA=n^bb#Z<+AtEf;a z<_;gnI)?{{W7+GIyh;GLXumhNug0Zftp5+N#Q{_90lpR=Ak6gMXX|cel2?>c@`2#~ zV{C1@Enq+_wiiRRi7n2B?iq-;xB_rVkhg~i*Ij{JhF*7$zav;|5Kfby;q>{am9_sC z3?cYxkl{NYk-{)Xk0Z*0#6j6+s)G znedIMq;5V4C^wh5+meCD;hgCD37A4m+SfUXXr?PjYa>5nDaHX|uS1wzR-&%+sAz&KXpFyY6w1iOe+%4NuoMpLs=h9i3d zG@7gmdp&bOQWl5=PZh>yLVqXPeK%cbR%}kk@}`-%W|V^Uot8|+-hmuytLJG(Bu5C6 z3X1~W>=~;BL_`TqdX99`uZl$*_g#{GsPIbV!KVH~jrVUMAmSAkF?MyZr$%3e`*Q~H zimLrvDfX%QiHVv>64i5)$CSUtJ|FhBN2-|bUrm^{3_Bn9Ge&GZkxKrS8#cra?X9VYj3FL_Qech2J2iz0&fXy|;? zjJAFMgXKis$}#}`$EBZK!erW??gr<%aP`ba$ytFLSS#^Pi@1}N^JJsALC(ZjILQr2 zAg>)Fb7xOulvsrckC-itprJETuNK#uKHS*Gd>s1^u9Y>ETy%a>%R})RXks=#VD;>W zdU>{8-X;e{U)Zx}eWV{Z<&5hj9DUTTiPfdG&&^;8snc}8SLM@;Sn}$BJs)rm!C6C7 zVlj8W{%U1 z*-g=(k6x4vNQd@zMovoxqh=W);9e8>bGauxSS9|eugG4FD>8}5mlx7T4v9|fp8*la zJzUQ|$s5m2ykUY$sKs)lNHmF?QUwqm@6`9kBhO?{0o4p7X?2A^OybPh#7}EO*3o`B zb6LJ>Kj!Zts1QVV{UWOY5m(BO<8<0MVED{wm5pUPW@I|BNJEV(hEa7~3bEtu2=Bkd2I|Ek(;jlh`-Xn`lRzxNL7Q!R~W^LwKNoCHtZ`nx<#LELn_ z?~HXkmf;FND^pJC@t;%-=#%5`mM?QIQVlc$fo*RqmTlKyG={c2IG_MfZwOTa-FWIG z6Z!KuoTCx1FADpPYg{1lXk&dV^Yx#E7&ZBrM-=tg z@Rap-YLWdl&B``XWB!~i3M*_3&uI8isCYB4zr26aRLeBu0itKzv48-BvCct1mTrz` zWwC2kpcowaj11SSTsO@Xb+M`mV@?(a!IRC7U^)rOG`jF{ErjalX~Kv`E_W_ zY^Gf&N>5aagq3o|@1TNAEQ!qeV43!Nr_c<;(%CZy3LWp?j~Qq-KJw{16BNs?Z=b2K z+OXwz96Dk)b=}VBxHglI&s3{q$q&p@u+JpKqI7Nzgd9>+MoUd<%Cy;DoHNMO3Soa! zAHH}lEp-A)6YH|~%M$9;2+7_o61S={FaP?^Wz|H7mO{afZsbDl<3>|4>RPSr;db<+ z<{Nsv4lo_Exiyp9w=Xn1{*yOSt5;2#e_FwYdd=aF6TIXcwB1nRLp-kCmwt}$t^YXP zvCg4hRser-_vyX4EC!D5Hyz}6*EdTY4+q9w|B4@Wq5X~&f6RCJ%-5{H1^4VQa>9r(@BK6%7@$O`zc+XMR|BDOy-cAzVds zP5(PI`z;6fG_`NzWTsh4GTShTDR>UNIhMgudUf)C+Y^DzO0_-Aj4ELx57jwfDhOg# zuUUQGrksWq}n5=MUPyg;U%sMa+c4NNu{ zA2fYS&`Uc*B8S20CYjq43;L|@mtLW*IlHPGi6`NTxfceB0yQx&u4vy?Ckm`z|JCw9 zH+9{Gy1gdQJ7#!?#DRG!en1$PUqw)iB`|+xV_Q!c2%hE04jwfM3>F`e4tyWmU2Ep5 zGiT8}h*sC?;7!~3k~rIJ&Tw_JNcp7i)=|zI%vS9lYMA6&XG41?z%VAJusB*t?L#No zk2tG#%NY4w3|2Sk|B=Eo*0OPDPHw#6b*J1qiS_bgQ>X2YK54$;nqaq6%AwpAr*{2x z;<@3*pW6^*;NFy;|7szpj_*V@vrNK8Uuxhg*Nx#IQ!VGCW;pdm_Z8lx2Y@xqcdT(x@!?jDr9jzy_ZX z_KS%;1P8+>FRboa68Q2^rp4k8lHPak!yr7v5n7%6vGV+~L-TFVlSdJ&T$IPBz|?_)1&JiRpJM)hna7Mz5A$B!5#XM18ybAK1UA)dK7#JAgO&v7c+atPdA zjJ|Z;q}1@ziXpy!mU2#em#!!Dr46r&?ZTih$CcjX*eI|Fh9E5Gk}xfk?p~wow^GcO z*eY}1UK^SWsekr}|NA=Vw(?MoyWh@Gb!New0**QPIdk}6$jf;k)mVXMrcw{{O5Hgo zW)NL@;%wCS#xsUDpSZm#iSK!aAqh>h%(5hoBNeOGO5{B1{-dCK)jaolY>Aqb(UEON zXKJ#>h>YSAzv}T~zH9;KzslBM`0U^*FZ|fKbmJdw&i=}ZSJAK6M9$UwFT)B{W3V|{ z7zZsS*)dwerz+rEW+tl{ZOp}%g-_B>rH(&I6; zsj1Sys)@AfkT-?B4yiK9(eys{nHeA!m)i8B@`vthm7Lqt1*5G3n5!o4mow9+xV2&h zFKUkq&@VGHuo1#OEdWH{~t-8C6pcY};uxtU)xuJrYw>`JbUI1}KPOnHm3_)tC&rX@`ME?MCM zf)0zn$g^>egT-(%3e9qkEHN$jhX`?|wfZrFa(`g9y^+I|!EL795oN?vF|DJUeL|`t z;tVAncf8Bm%dPxa+OL8S{FM~SMunDmD<+8G%+z}DPf)zAzOmAeLPX&HWpWk{PuWkp zHTD@xq0dODP?1~`!_eaiZU$4MI91qlAy7WM`^qh(K~l3PIPN<=qcfo zL&fdOJ)h*;T)-!fnx-79#B{={5GkFFDgyRwttv1wTBak=E5sB^27-xCBEj(jvkTjnopX7^v`jMVp zt+~Wh%_NiYW6FHRZ9!Brd!4do!oCKwcJuvP>N8Orz`rdZ#oaOYm{yO#2-SN7 z`z`y4&8*R`=*>d&;))1IT6X$|q`1URiQ?umNC@FS(=ET`}Sd!y&C)B=lO#EhgGWt+G>rJku_LwsD8 zh;l3jTV}fTH>H6hSl{zc4XqAW7h174N~qVzCvEo&nr)8E@y@NH^EtTv0u-DSPo z3bM2*@}ns$bx3ytCxP$HdIdm&!2oKR6zaoC3GJYp^V`P`>Ul{-Q&F>^2+4VyP`JZE zmL?6$4bS>7wJtI!o!7bc#sbb^6%F(!hKtIpD0pzL|Co;?2_JS_&%5QD|0DES1=R_} zd&ch}^-_t~i`YxBtsrh-A)y^?vrkw@#~I_MD#S(N9R0I1^gN7+pF~vgc2EMe#^t~N zMo0DBQ_6~69oh_j(O?O{E-Wr&Y<5u^-(i6>G9n;elG=%x#jA7J=*_XUWAcdD7`@YD zuu!`09$XAY6ZErKyw^Vsz|rF6NkQD~lwHo!WVY31UsO6x;sT7f`7Zx_o_V_47~}Se zj1%NF=(&ioU(aer3%c2bR?u>}$M=dA{P^S(nu&(FXPm|DMM9o>+FDHTBuSWcT>y?)slG;L4tWzNCx{j z^c}$;%csTss+Aa+UB3&cAQ}=A1g(s>`*p{_eh+3@%tc~A+?ZqrSQ?27f)=Au{F&fN z@5nv8R+x4Up-0VIpG$=W?!^S|Niq=}kXcS%g?k&rXLu;1dPjhm5@sK5hNC|~-bH(i zXGDg*Dj)djL7F){%s$%cV3Ek^A*VI9nK-CabZ*KaN)PB5?irVT!oE;2f4PjGFi_&i zFwyA?i{*XJc*Kb%62R*>&vl&qn<-dEEM6~f$6gx67msNqu8H7`y62i>Mb2^s3w4glmFNy* zHDd}7j3!mtKrkA;Y~ejrN+h2JRtt#kbWNk&p7AC_j~}ZU?0-rPMxt$=hfE&C;WOu7 za}wjfo_zzQGlgY!IGH@PK~9(XLvU?6q~}d4q`4V(ia29DzrHqfpjWa*F>ALsIW7lx z@D)zwjoSnJNyW#;P??E-545|DrEO?f(xM51za~iI zR7DSYA`eNMB9*AzA9Pu}9DH+?uUYxLfZr|zCe@(U2Uvf{VwbX~3FtDu7XZRC{|s)b z-t;ffz0cho-x_KU!Y7VRdT74zlilo_9Wru%^B*jJ#N6B_PaL@MDV!9 zg&L}&EZKb(>rvUNcZEAU@vt}9g;lZsnb)xTjUHcj1Ty~-oGrN3cuyS*iB-Fp=rPS> zQ9g#LxiKjt^}-5C=%}|jkSOe4ZMFi6Q1Bbbboi4wl2?4mDApE;c@>1+A>D37``nI^ zw*6z+#e}IUQF`s}bs5c+SQ3@I^ypGT4g(K|Olla&FVu52TxW407QF4zWE$si%;r1y zoF}01M|J&eE%lc+q77e}rF2rM}(CwUZ`BidA`PAC_JXQMa_#EMeUou(b zMF_R~|4%%Zt}i2#dTWvWQOB!@p&WJ(n?`tw6UM*Jxx>qVs5COrFg#EHZD&}A0qqtr zkqr{MREKpGA~+YQwEue_B#KINKXixm48<(wt|8;%tQrfv#%R0J_DZ1CByCuoy&^ml zeS|6HbUkD$c5asx&1?&7&m<|{nM;gifjY=}%g!9OpIDOjx@IP)IY4G?VRE^f?V)qn zPZMjBoBjICKw{VwrUZ;HPqoBPj5;0gb`@JaiFhcyBTdph>ayG%Sb|gIVjmF;V_xm% zGu{MPJ7@t#oab}Kyy>!C=zup2uch|h43Y4*hkVIjqeyEt(KqPRbXToSsHYO;)cj4d z_glAck1n}52)2B}!ih)xeA)xYbhO~V(XaU|PW%}|Ih0?5o!zQEJjuujxJEfQ^-S1s z2D;(lQ?T076P?Uxg?X+o$cLq&)5y{W9^v#v>2))Hzi9fwNLGI9*r6K5@cBaD^AG za;DnU&>gaHwoJ0^^oY(xMYB~Gv_&HXGAR(-szJ4Fz@3--%=smWh-@;lZc zSh*T(2ZPbnQ%%P38ud0-L_&0$jS0zYnIF?ntKXL#KVy2xtDts}wN|20@MjVCZ4W;* zJZC)or4K5r`sZV0ntk7qVKb9P%}Uc*`sV3xr|L=@9YMy0GyNC4bQJ=7V?{$R)^>L~11P@@W_hyUbdB%WvZKsOoSPV`d@v|V zRb&PYi0Uxn&mO4_VKw@$y07J~g)EjNo8y?^_E6qII$U`>Yy{Bs2`bvp;0mI)J=^R;T|C=QlXIhMUB%Z zrvF8T?KU8nGgZ7OSbb~#_^-`Wq;rMlw%^9KO+A1t3j@8)bAFE03X5)xmRFRFczCl= zxg`=cE_8li$m)uBQtT(JRm1m`$&0ztXN)CiOgm{^E7COnLE;r62dD*+8?&muShE)G4*wYrhOI4# zLFr5+_!L)6S@Z22mJD!%VuG<6k$=n`PV2l`kf%P!Fu`qr0slWLqwN z11+(KmwU7oDLLU*H~=Zbq{8~izwRMaAGSf}#=^E3x+l`}M#X;dm+&YVlNixA0?O99Jgy z5RcgnA_80`i`{KQT1~gSv4%+8X1XwEsRmsKQ}qgaE-?WS=*U8U)9@cRhkKzgr|@$b zgm997dUWcgDJcEosXX)|X^ks^8NA?l93MTQ|5M z-uz4qzEUb+;3R~%E_VIP$_`Tzj?e+U(Tw^Rq#kyA$6^OWKofbuRyDF;v1{F_STWMN zn$sj@=$ZCdQrpp*5$f5K)mBYiY%)EXg97D(=B(YhK{pEo`Cfpf$xi4A?&?}?B&Xxez zDG<0qd$5zMT$afgBU)M4W$J+qxYr1f!zUV?iT&x88-ZoLs$#zrk7uRx9&%6c0*4%2 z-B}U~9hz_xd%5VqqK<2IpNX|i&8tN-*R+ClO0C>W-!r{OF$nLeDd&4#ammrkSUzp? z3fRgQ!j`*53!>#5hDj;CA;eLMCD#AG$PrO+&GQOjdif(K!WEzdGilEYP;+o3Yi)?k zfj9&naoT=^Cpv7?By5O>uRW1#YQVBeKfJok;mFXGDe%hrC76d4iX#XM{@|-WAOFW! z+r#?S49>m*0)DwCAYWz2ySl;deyOw_+(;uRgQy0#FnCRN?Yk_Sx;R~p#r3A}6u?a? zXM|5Kq+$1ODr8AM+$OUikP2@aXl|ZI&^+^%Ybxg~hWXPrQ+Nu(3f(t<3mCHiK4*?o zEewYb#7){?{VpMGJ`DZXcH~j~&Z9z`buWflt=l8wOGy380+7qxDv z2Jq71%jO;)@1nW}p-DDWx_CSo5yzn&mzTzB60O~XJ@3WbTak6v|)P?2RbwY zQE_TAA*;EZ7!}rR6uGS)fBtU29^I+qh|(ar1U1Y+Tk44qcUmHY!;I|88;xWLy=f zzf#>2wrAjxlSnK$&d@@cNGrN>opFw_iu(h4RVrS{=-QWQwj)IO|^LG@4ll65o~ z(EY1UXrPxpI_j40jZH{Z+c4N&61pdjELiiS(>=dPvkEmgZ;~1@Hdg#;gZ`tJ6N+UC zQ)38q^h;`8wV@wdw@(QiQpqkz}X?6J)|D&7>BY!$SExk%GVK^@} ztMP)Dn7i?P9^0o&ddLPuZ!}H0$IT=E<`gxqJ-Dsaz*oVeeKb`M*0Te$*(wC=wl1r{|1)B{X)pJv$T{yVnXB?a`>7LrLmr2KwzP zOJ$wLPLH#`(u)q6(ED;qc^A_9<1ypsJGGQ9U|dxLNqw02R+Ay%p+rMu#2H`uO1EH( z?Y-~)HQ*Q0NAfql6t_enmc8vM)Khcm>P?^i$E#M_#0e_dW75maLrmQV#qCnA=fk&^ zPqD9qu9OS9c?2bLlQ7pxEUx$3dti20NnYj0yD>GM!rN@!?jx^oPaf1rvu7CBn8yVp zt2w}RGXlP{-F$!rqOEH&{L_(J^-#MKjtqXw3j-F&FK-qPPfhuAE()E-q}Usv738!v z$#ACj>s_({ZE|q9rov9R%b61|^yS7=vyLh53k;mzxo{NTp(a5;X|s&frYUwJK}HDlBd}`> z2mC7-WGdFFTJ+*O_j=yw$#YLx8cjfUe~HcQ_4?`CsZ~j}N}xjILG|yX9ugd$C?uJz zAa^TDGJbH8@>%j!H8*ho<#NM8k+Sxs;#`~pf9pC`XU=Usw8kljQJWYwWW!O~3~o9&snf;yK5_Q4 z1CMBJ{SK1}xz98Ic&fBc-+ZIcXuLCdk#H?T6YxRqTkpE}ya$Sna1f0iAOpT8ybl!0 z&Sww&OS9rZu%~81TyXhF>!?hG@zEz~Oz6Kk_!l_XevyAcU}3$ds?o#2@DnRZVKxxK+rSj3O9gR20-F zPXCl(tY_zR&b491mDc@RRicAGZka&xFm!tJ(zzSOHS7Oi@2!I4NE&V38QGR43oW#m znVDP6%q&?JGc#FaF*7qWGh>Td%*@O!hSM|uKC$wlzI#(?B5qZ`Wwz0c_%sU(_ z0dfyRK0_1QlA0J5g6X(lRo_;sCKkhmHPWS^@KM-Q@KQ?EUt@6CdbR0e2N%D4wp#CP zRXTL&DZf%XQM_=#7q!1GL&jqH53jh381!N(Wbm1rSC@vD8a!YkKnIWJj6z%=_+)?6wqLl~xIJ$kSRBVO30UC%eaqF5bkGzONV z+LzLE=?%g-*?d4!RkLNy?*jSE;7tc>>5_J<{;8XPj61z)ti&rrFqgK9E7JRx?6Y+C zX4jCJr$zwOEG4ILZ6q`nZ@fJ*=K}uU+_kUVWb+O7#!(yakgySpy>FYAL$0k7xLZfoc5!K-%WD zCYmQ$?>1Pt`q|6SX>zI2*628ff^Nd(!?h}#XJ@h+y!=L;J#TmRhPphbp-5A<&!42S z#PmyTSMkg!Vd>6jTxzFeC$??!IsM1mIJGcW9UqSLU6PDa{$-x_dIXdA%B{&NT}9WU zMx5QS^4g{}wWIo^y9fN}HBvP*DZuuvk}qLneh21$K4(rASygTFc+lqr+Alwuc_C;j z%?EPFAWWu5%edQ7eHLS%S}f=L_oKk6l5~nug85NP^7*DtgxKR$_Ongoy`wSu^c%rg zI=(~bNbfVid^9c(Ak{MA^~Teu9KKZeDK3I0e$Mi;o;dFQJ}Z(3akZ3*(B^&anzVZa zOWJp{neCN9faEh&VoiBu%l+AM|LfB&EDX%gjSlzwZeO(4MLMm95XZyG<*ftU@tgJs`;Mj*s@7ldHoKUTM++8q}aGgy|;0W z@0T*fFJJ?EpZ^E*-}Iko25NVCIXRQ{Hs_YMHfHk~QXL(gcPfafW3^h{6B!rar9lGy z-%#oIxqk+}%ORt0NCW^k&u8)q*K{hF!G!1Cw;&98qtzsO8=IQO=duqf;VhRB2??PHBo;!3kS(A>Es8a%UM_V&`q^=T^i)|#M{d7% z_cosr+_9+~WT9ZMPtrceIZ8U`*3R?3%~t8y zGzf~|AIR^IH&d{N%7nH(C<6+_v6&9*Av_6?S+UQcOvXBGM9RqyO_#hmOb!lTX?St6 zbH^HaLM6*cIq)*=sM}wEgy_G;PnEC#rYl(A00#U%Ncgz;^uqqa(D_J={-?6%5_f>? zv^Mpo^_~IITZ&i`Hp)IDhIIER8*jMPkjjSt0jWiy_~vt4pyNz=8Yz&`ao9e|)uW+f!U`;1tv~@C9k7jJ~w}mk-IwmTj^&9!`&fZdWd`)ls z4}$-8Z-Suzyn*~|Fp%x?yAI>&KULXME(THRwqmQE%omw}u~ir}L!l>znR`B1A*!E{ zW?+Fu_d-aoQEyU~oQD`R7S^#ps}%++dFmRvy+kdAoyp6>TNJZ3g<(R2#Jyh0$ z1{`6!$F#C9IWL`O&2CsPsjJjIUo@#*BjLZbB*gdCBAzH#lfW}LMA>qQx$CQU+QLpc zHX9X1iE=%6qs78jx`lTMj}@0G@vcNt*N+H{3Uha7gZ`xWHJ&DoWDim3#y3wb6O3a` z;+AV#SW|B^RZt>+f3w578R4|Wpw;E@!UaJ-X0 zQzTfW%pATkr}j)9endwyo6B+QT)|N^U7X2d%`>^9WQP1V+``UDSM(Sp))glj*=H#c zdtdj6%Z1@#WGI7-8~v^51ka&}&s=^5IeTZf^f;923y>!|E<36qHYwh(>AOnWto9V1WbdPCVB!HJ4MGj& z>2qzj?t-E; z?+Sq&u8KTY`Sb*o%<^&`P4q~imukM6`cUa6#*wu%6K^pF$J6~F zc6GFyHTi?MIUrSCwsTj#aCoKR^PE3dK zl)@!n_Bv06Ry{3m&~v6?7W;nqXv#PU#nqT@L(emXc_9-)Z{JL@9*54O(pX-IIXb8$ zMTME#XekX#ZajbxqnT2?b8%xwwOGjOb;8w4y`9Clz1rlZ_0w7hXEqbKOsRW7K7m$S z`D{CE%-?ZMEUso zHYlC+Jzc$EaSovZF2F5wfMoR({KFzszBo(T+iU!YvYr!Hpbd$ugIb(!0GRkeuF|mM z7QcuK$u!8)-9q(;5JB|Mr~*CHhXxFInp=F^ZZMZ9;4SUjMB5bLiksq6PuSP-@A&k^ z!VURBBU;tH!(Wxh+$LPBd9xvm-xiq%<1#yv5p2AV6!JbN7Mwd2cIEDYHh~)0QaH`t zYiL3-R*%LNrfxWy?qdOapnqa6hp<0X%t@%o9@yYlD1ml^WcScvLeKZ9E;E*lI-ZK z@%`l2{k@*whdY$7EJF?1%-9V1CRq;a@@(l2Dpo*$6t;=E0~)S>hphI}nscZ0T-(rM zXh(u|#s~ZYu8uYT6tPL)I)=_9RH|eO`k_P<5R($)&Dfy$S_7)&kIT?A#p#U8kEoSe z)|g&7bQ*DAH0#v?dYQ!mXpT8lF2*5{}s^OObBL zSmRSS8&)CmdvaprNrCMeHWLGm4HS(hFOIK!v`|B8#e28aO15WeCRx%X^z4e{eZ18) zBYQS;qA~AwfO;NqZXeEDs>>sEveBrTt8=!Ga}O=5FKyDe@MnYyx#Go*{K8>a44r_1 zqu@XW^RWTJ3HRDf_JvLE$z75vc<)>HG&VUv8bqDGy z8SsXlZh$4$yfCT5ZG!t$*L~@8uFL%$$V7Ct(?)pNebmWO9U8sCik1v0smADhaMLpA zGX^2a3rO{|{Q-dL2h+(WIAVEn;EdS)ZX~Wgi|DH}^?N$I{q`j9kk>0V9gTA_i2V~L zL8?SFpWvJ%2Y0iQJd76%?6tv24{*-1Es!J{g$$N=e0_bAwS+x3E5G@BUO1|6*9g$~ z)6v6?BkL(Q&Y_{ENJ#eZWyZ(~Q=)tOqLf(0TExYkNSpT)G?|ZuNOWW-|{2{07!RQveKd(a*gYcw7#>RE-_Yq*2L!P5Nh+CX>5XZ`82?zqaX_iHjtre-?* zo9FF9O=bpvdtiSS0_FJ~6dN>c|7ilLozN)!PIMc^JEe#krm)F?k{UdgNRax=RxKF! zP=W$LAJu=MtjX2@rwtLZdMEHSoz?rcO{Gi)lwB*~c zLhFK6ldijn*9{Xsu0x@yFp>xOb{m3fxzOb`pLL|iRBmQ!UKN4%VNXJD?rSZ&OG6VK zdJCd`$P^j0V9|7!fC+ePvgilcoK-VoNn*NJU8YE!Q==Yp7^Fv>ljcpBYY0EY))bMT zL(3PIEPmOEgGX*lU*Kf#JBB5`1E5T(ekLu+h4W)ra$-l%SH_$abd0R>n z>W(m#-NASjZ)2*Nf=SY8kq*&Sw>JvYvFj6TO5Z9=w`*zfBb ztT>tupI@}KBPZd@UMl+673}@b_k9A2&%ov&WSPN2d#o-8kHo&9@GFB{b+?bs2YV0O zzpOi=zDu$fRnRh{R>e5<25dV^-L%eXd+CUb`ltjFpIifS zt3qkmlO~8rmdzVU-lwVoc4X`+z`gwaeGubRlDX|B}V1OlOG6hBKc8j zx#Va#&a*TenI2olh1B^DrayJYk1a;Jp`W8 z_%;9V<0SFB=Lf0%BAjAar}SQ^CN17_io=(%E1+jk!G^!mB~QnrIZc->cV>UF_th=9 zNGbA*Rrj61Sw<*86y@aze5QXOMK--XmuL!`Tp(Et<9D=_6P`qB3tK+Kwq2aOv7i6& zE$njdaY{U>FmlH0`U$3J+>S!xOs#f-b?6a)TQMmWO&c346jP#WPZ-pc)o>Xj3lWR~3ymQtgl7;OJV3$CY}yGIulA@|HG`{m)-IXxxNF-z&GgM(3dOc{e0kmw>!F$9 z={nLw#o|n|=Nc8aTgubC}5N zHjXFW&NN%1;Yh?Ya3E=6Ra_)+!yYw(C9itC8E8)e!^@rcZN8Yve8?W(IDNWwG55|y ziHvK~ry~r{Z!!Uun9Xn&A#awXb}ehLfqwom{qbWsXaFheQRMqKUya1eE`s4TwhP)A zpM)}2)DJey(AsFS@Q6ZTUfvzKc&(~CU^Ma%tCaZun)R&SgkIEAEsB`+T>BriharGt zL7ZvxOC6!9_28!SB8Ovtq{;QNTMqQYZ@!NWyaX!S!+G>FJZ=G&qsavb!>D-R(U{Qj zmd>>emY}xzVn(wYe4$G6xOtkS)YyU_NGKZhH2G2p#)3w;V{bf6?N93PtIr{C%|apE z2V(WlLP^7yai{R4+N5HpyhAZf;ZKpP)6GAPd6U~`OAQTuJhtfo?o#RmN-YXxT`xAc zv+`%Z78}2~B|T+@RjY3eD;ZubcSWx+3blHXq?L#eWe=?}{kvc2OaEU3QYe=^Oq+a> z0gvRbJ97tB=7Xu9?BFx0%Rj>Atbmj)n0!*`=vv;i;gmE4a}ARpV;3aA@p?#nrXrjs zcN>p>_huweaIuA`du8#C@$&G1-u54Twm6C;4^hcEux2{E_5Ja4yG@}3pCp*W|7*L+ z_GSx{svfoMA`nM|0+;!9J(8ZH}_@V_~WrJkoV z%02xo+4HLD{famphg|y3pZUAg)xkN1g}~0d*Q_Y%IqSyR`>1;lVr`Vn^5NT&%iLaw zBGXCq;eN0buOyDVUIT|nV>u|r=~u~_Oh3wXykz3kH;)@$+Q^?^9Q9~CbY^@Pr9`+j z!)Z=x%r|NbZNTS99z!~q=@uhNQ^y)B3weEx6>XC$BXxIOqDRo)5mjQ4DNt^`PoO&$ zuaQ%+VxVDf;e?Lv^?vFI;}`teWPg3F>u+l!vFbqoMEOFFRB%dRT>9?qxi-na6G8Q< zUTS5Kf*B?1yQ32;LYK9Cr5GG1X{Nfauo9yjqKU*q?yCkUI-kND;^z}9q-I%myU)s) zs6&M!UaYeXh1(B8F5&5shw;<%F2Ir&lR_>h2N#I-{%Ns>-wo@$FpXwe<2w=zmtUD} z-o!=>*AjJ5e7DbIcPfzUXHq$(4NXV(H*gWEnG=MO32yDS={&M(<)cy49%M8Kf>N@07EvbSG3z zQ*vfo8IEtsVB>2KuIA-c`onPqp}fKn4>0~JmExg@h1YB>hU^Qf(@3%yo%a#D5ru1g zJs$TcS~`E0pXD(A>zz9X20?1T=_6o{S|MEW)W&YK=$oWGIgej=ueC6#6-8;w^#?QXtxLe7UrjRE?c`No z=7_?^*FZpY)RJ4huR~Axdl|15$=BQDRSf3R*Q17J^r3gv)$sc(r%1^DRT~gaGpI25 z*8XB8>3P$cV#@(LT7?IMt2xRKv2jOD%(?#1ga~dMt#RjrmhN$D)610>X!pp*(&*nf zP#o>h(${^9^uqt3F)$_FpEo-aD+LcaWL)(NS)F*yZ0^T&%D%LWx&8Ivg{9F=Qy2y| z0k^tGoXtjh=r@=yl+JlMk%=q8MB8KIo*m*v=QSz0!-lbbA-a%rJeie?2myPI5GkvHS}&AA_;WL2{IfLMZglw2s~t=6VMBgzvi|in&81Sy)o{m!O41Ah?=@WbcGI)n zLoY0Gfy`mq=JuV3;0D9h-(=L7#bUz?Ua#vgZ4n!j=!R&u>Ib#HG7uXu)Esoc>KzyJtKI_GP3v;XGp5moF^`4=J}qH!}ey4y2NwzI2XFd1U1 z2PUK8)nY&7c(1KbWpA^E-7be;N_qyl&6ZN?`^;xg5BI@H^2&{WH^o-Lmrn1(8Nfdw zxrAsU@lGNOievh{qlqAK(@oy%&ib1d zX&e2`-wWh_4HET#-2Y1v2A$;Gw@BR+jcnR}oU@KZ)YNQR7 zA?+*ZceDLU6y84dJZ$^)xbJ#y_~KlwgjUWA`+yU>7QH$dDZ5Ll>;)CTcW+OzPQ1HF z*ygkr+q4p~w%+~w_cKWOM3`cORxjSdM_jYpn+)?1sPVi*6V{<5VC3{T(5|n#yDN69 zL0Q1UegKbT+L$Z6Z+mW7`a7afzbq-oBbeRm^&F-xdVP`&qP*vAisv+yYYR9}LfZ9= zE-)I@JcDGo^_u5Jw@%dzk#aky_7zG)H1-xyU@f{`r(dl04+{=U)n6binGE7;sf@AM z!^~>STh00}wET{s_ix!2yNeom!@pQi9Z!D@ZDa(EL`H73y{Shahp_l(NmiSkIzt`0Q2bxbM8J<^DJ-eKE z1k-m2>?$LLEO4Krt*lo(@}TafPb>-&Lpi%jaI+hJDWMxQc(}P8exhr><&$7I^Py62 zNdIV!I|muz{(R6wTtXw#Fm2AKCh}YJ28~)DjC1z8LkMLmr8lnk5F&Ihbt`K+LU$(a zTyUfq97eeSxz_MH>C;4x+Ou1eY<*{hU|csEc*9)@3J5&Gvmybuq1AyVcX~RyI_6F3 z44c>fPNbEdF^=1luDtohTCQq+GiMsh9(gi(Q+;!UKpe14eFKwP3nLkG>(L(ZG(vKS zcQe9vpP7wU$2Z^I{q;CM?zoiu9GrIMK&4x%DxW|vBeg(bEJ8oO5Z_iHt4c1fYr%$D zza#`aJnE)?czDj$YaOY)G%rEdO_00MGyD!^tUocZVe0IvwxZsBNSD9DzNcU8U$&Ug zyur&{?g8#DSD(+?b$vNub3b`S=kj?-*gz8z#~@RmbS^`fy*!fjQUhKMxF-5Is5vVE z%GD_9^z-8sRkO>at*$IRZ)}|@maEi<-O1`DM?ZumA!x-{xes3+09r13=UxV=^Wp&< z4+ow*_^8Q@6LvDH-Q#08*PJ=?AoAe*n%t&PmBHXs&LGL17P)K^Ut8>yt43HCn`M{w zSfAx&#+~Z&#_p(lXN2sKSap`GHt)WZkC>{G4tnm0qiXiG$XIcHnsaVN#-Yk)EuGJp z<4p26+tuj|VDK0NQ6yA3oZp>k#QA=>(DK0rkBhZeQ+mEVr}rPYdmV?q;Tf)Gh*!&x z-MU&)9A<$9*^&}`9aiFHl~-=PzUcp{=nzQo5Gv3kiQpON@3&#C+7-*bZf{Lbjbfr9 z8HS!QMR&}qfKQ-Vy*!qB&UwyXne@~f49r*p1x>Tiz*<*V5fy2B zh9knK%Pv~YK2;})g~MJB>_Y0TH)iDxK>H+S32nYCP?QKC-rH4f-DS)c5*@0aYGo7_ zU04k4zNNa27J4dQ(U5v7SA9<_&;#2xrfz&JZg}^Is}^|^fBw1gpd z8?p3ctcu97Mg9#jfoLc~LJ}oHN1YN3f*!EB&7=Z^opN!hlIaPONMzj)0960)wP%1n zxV^MDuVhZgQSV9bY#pv4LmO7oah3I1LN~jG&^ajRyss-j_od#>NJyGUP7h4l^gA}2iY63+r z!812wG#}naTHE0I#dj9Xl?RW*GHV6Fqm{^+7a~YfU#Nn|!<0UTOBtWL@v6Rr;_`j@ zF|8{!ozjop1PdIbZu^1vpf<~^7ZacFMyoQ zZ-J%vsRjgCk5uQ=P&GELDQH}!H6gALBr@21;c(~czpW|!r^D9w;fA8M_5vs>_U%L z1-ioppAo9{uUyT|`t7^sPj9!gr~EW~*=Jr583ZA<+xp z@w7YlJ?nFqyZ}rrttXZn@58!qu~4t+mQwtVzajIZHqN08xu){@EuDpdYyj zHQyvGLf}y7m=26cX$V$8A7@s5xv`Z^&WHSpYsI6{noj$Vn5Cs(8hLzN0Rpbhwov|` zELx2tU~T|DtL@33HyQpsm6SJk$goDYYO6)Cc9C8OHm|lE>oU~cU(J7et+!U1yP-V? zG7IiVHTl|(eI;mNGBhL%)lr@;H2G*&8>)@Zq?RV5k{9sMDkjhu388)Miab&&g=lZ)p@P#wuiyJIqt zssHKuCwcE5ovK62+XMT2!lVKkPmNOm77{uXE_q}>xE-;<`~mB-;nqMoCW{u_?cY$3 ztHl(o+2q2>#l3AYo1Xir?FJN`ky>*^%0!K9q!mW3T2sQlhi?3}_1YmQrr%PN6Ns2B*(B4D9$Eh46D9gXf{KcE9nsoT1p*rN$D#Tf z!pRtfXkE-Sw9Dzym`$7AycQBDArIY*EBFSzamHLwy7TQuIggP5Z;+LP$HFPQw*@1y z_RZt3{`(?(dZO&OJfUx@fO^_p6Yd|$jAN6L3wUZ<)njUfZTBsR$NV*>(?-~=Src(@ zu|{R4((>I3(UxU3(t4A5z)4n1Kyc-up-oV6T~oPt#ftop&7^HZZtpGM)2}m=*Ktv! z0%#Pk1KRS1j9%Xt_$Ink|NLEyrfg}#?KW(l1GtRkrW7vrCQhCu7W=%f%0-o?wjq8g zYdF+Xsj8<+Od`+q!xNg|a5@*nvJc!$`;^+KOO9+J-UGBl5UwFOZB{3YJw`9ZcDXv} zSUse5546HY!CAP1jN|+FrYDqD7%aUc*x+|J}PTT=7JoZ=|tgh_-vMnB}!jYq= zS*m*GCngwg6-7IdLw33H>{y!v)YbM1HZJ;X_%vli4#r@K9vw`#JlGE4*ftbMSHCTDqZtZ{b?d8#lY|2sU*=%`U|LC%=h#O!S1~Nf zxpV7G{vT6BAuY1k{j#ZswzlKW0PL9l^ZNQa9cc4OLSEkV`R@4cYPzEo3BIz-hto1u1< zYQ{&QHf?tuaEjmCY>l+pV!c0^0W5fe2@Ip`t%~ugE<0r&-j#oFKYVU?x!fLb!SvDz zR?6>!a{&yGees`Z+AHZ}V7X_^#R;BiUjGZbq0aPOO&@VMWAAF3Y~1Em9=hp58mXD2 z;vQ^T9gTVmu$4Hszdfp_f^sy$;J8usbKyZg>qdv+#bP-R+-Jy65}GiS^;_E;=5NntIQuP&sdN0KZz^{A!Oz<^6@f^!0*ArCd!`@k6b$uRT#eM`_>X z^>P^Qk%%&C&cRQBXON1A0&^Ch$EC$-C*Yc&+1dA-=obhw)gL{7Rq^)PcglXi33oBu z@Zmxrj|GJ4=0P%h>J@xgU|i9K)>G?<+2Z7e9;_ytw}}Z@ddVQ9=1CxNAC|W z*j}`Aej>QYuwcLU=y6ZyoDafzQ#I4>n;9$Sva{pA?N$pqFV5G%K_A;cU8K#H+uuV| zNWl^sDlCMof#SL*h8f?M3|w?Ldnb)8?N46G!Vgz#CO1P7Ro_M9xv3TCxqD95EqHBG zdhv@FSWj#~;!QlTqxYuCt1?Bb4F*}4f-WUZnS95f!S&h4jsDEZ>}uo9jn>x|U_S~B z#=91wg7xSmv*NF%k?2_u#l!1lv-!m&SZW39O{^TKi7!ILUa9N9crW@7>v*?##pyqz zI60wGaLDYG$KF0I9DnT-R%14tqV!nAj#}N|vqIz^%tA;{nK_qs_G0Ma7?zmhvQ?8i z1HD`#7#HLtrORgzF^ELYmPp*?nsPecvkp%}+a0tJ^oEP=>{t!s$cb}#IUryrBNp_c zGR#z*QVvxBdXw-DThUTQgv8(_eWKhV&p@8@;>^>YSgVs+hZ<(gp{a{hQt-sKW2W#8 z&IgT>6fjZBmx6=c_f)&thyQam4JFv^^Y(+=iSp^`DG4sH@xx}di7p(IVaSL%Ha52R zW`B$hWG?t~Fbo|H9eusb&DZ1AhH&bgxKgNBw%=va%AqLLg&VXMKd?4VO2F^J{Bln&8jHsoX$x>JSS_~XO#elEJ|ug?veSye7OfetW4^K$AMlk=v!N&QPh^Lt z{T8)kS;_d!`-$~h?=s{az&I2y;~*7mf5_Ry-CTT)=4%2m zYl&rj-@&Xm3j2hRKK|>x)(+jy2K|((ovYr8u`=7o-*n8jcrac{dD&1%J zD7vUl^1Qqx4kb)gPy?3ofwQH2Mg}jJs}1&gTMM(%8Ddq*J1hET4kwF$M|s)S`<^g$xeM=oxQpt3sj1kO zyA8|f!^+M6$7>K~rNwnMbXJ9o43XA(e24bS-o3`eWbu^;FIG_`Wc};OTH_%_XZn}^ z_``0&$*>c8kpvZw@kr43co$TyoIcfQ=c+>eJ}-0bP52Bc*HbJVn2gYum?9Nr>!(wO zm3xe6KEUT@bo%klW7$vWFc=?tgc3Rdmr&x^W%rrH_6FaxxwcrZfw?+p^OQ?BPppx#W=OL zs4Um2-P9G{1vBn3*YN?@^mdE%ue0izWbYP_g|A@2hme)uo8HxELNM26aRNCBU;KHhiKd`> z>Ws&Ju$m!5-o_h$aM}?{C(%AFQ$V=_d>D}T_R67H)zN28#cFacH=hnY32sJL8%s1h zx#!D$M}p_|@+ZGm-$uWOKe>R3X8KH-suq6$jvx8HB5)OyIIl5MDBy1SucpAxSsf2< zpgL->>j#Bfpr&4W2AQ$R3Mw)URBbQK*p|#sCBoi9I-Fn=bxQcmC*Ze?(J6X%r?aLs z)YK=mtBc49dcVEtECBWAzGTR2&w+%7)qFg<+=_;0^lSGN${H~;z;gk{ z_{RNk=UI9=E4!R|PZIkK*RUGx^vB!a*tNUNakH89@8B*&MK5}Tl~(yDNouplEo+{{ zq{^ag*SUaY{HQta&CJB%JldCvni}LhbvwIlGl1Ei-*Cn;Zo4$$qtX}upVEXaa`tLJ z+^07U`L`^&%Z^XZhW;k*)9;_J*I>pGG>zB}`=m*D zrQ+8UdC}R~V&{w)wHaCHO`_f;eqgBi2EspSkzO5--H-QuNyydz>~EeVVArkz;*~k- zrE)6ei?AhsE78)nfluO-a-funBHl=m7V=}S>2K-qz}?+=<*3%4FLd`MSTIQeO6Y+$ zxSHm?hl8-R8{gFjy$UFz@Y-%R!u1(UrVAmzf=j+2(%e)C&gnR%#L2srzlg z+iMZl=qTrWf%?R;i&3{`o_FGil=LK8_Lu&zr=psUKAgQ{DBwEpZ$FpGjte^_01>hf zj6Ddlt>Qz6oWO^Ig2L%?mJ%da+zvjg=J#PiF8NhN$P<>4g3kGHDVu!IuYsE&TA*fH zn%AS$qSGyNFX~#cc~bCAz%ywu(B7#E0kEESWs{CScWO3K?A^}fU?zRS`j)_f1N!Nx z!5DkESm!AKryAi}V4-d4ad!s1VpyG;Z9@gAHX7fp8H#Kw1W7&#{G3z`lAwm*kTqUZ zzXHndnZa!?MTg_)GON!dUv)gUraIXOyywCv*DH=!3h1mi%*79}R#U#GnLI5d6044^ zb(L_sBW-)0nX7@KdfB^l=*H{4cE``d^XKmmO@|e8w8Ib8-;Py$32)^oQ1iT}lpJms z?t_)kE(UYbGR<@>dBcTRV8((iQx$dKZu`s!+$=a!fKg-DWxOhQiSDlz>z@7ru8Az5k8b;;CoI$uCN&C)$KSkI2?$Jnaf zCuUj>9XKNZgCc{a+ z!uh1T&4j|A*UeY*Fc%j1j^;bzGQTd(ZrbBe2&>oo*3+$*H{?3z(`!5^@0$NqZv%gb zftRIR^cV8S)Pl3&+xAaRiF4YYv#h=cp$-t zU3>wWIF+>8smgx^<+wcWY)v>+|92RpXR?Flu%>Dqf5 z3^$OBRu14$R>+Xk^5-`#(l%UeEHplIIV*TBQs?lvuPf@0ap$C6mowUdGV$RExwmb| z^Tf1#Mm&=17F=+8n)`nEC77#P-GEYkcwct5w)*K?CH6wz)75l@cGIUrdlIbG3%)k+ zkxa0j_gtMP;|_##e6o~`sk*BEx;2y(DOYAa*+S1HS@A6=Ngig-{@3JW&IoRAXwZFx z_oZkWTcvRLG`-9cuAqX)-$hfIXIPKCBx15gJqJ3ie*|EN2KXra1gPLXuLSk>|3R3Q zn)#R|p`r>+qSJmKrTAPnGCE4QYDCD?E096|CEn%ZFV&F*S;I*nDGkjRVJBQzCdnT% zCUwknPJcA|`ukv7v4u3;IH##I1_sE!6PS{+3Delfrp%&*gh$oL z1Pu>7PU=>ApG(rF1*HNdLd6L@6KfP2Uo{%n_GDDu3S-jH#GOJsA0cW=Q1ird$7BhxVN)pFD(-o)Wf6)2fP1xQlSOHD8S_?34H=rVFo_ z^oCk?-`cdPN+5a?BCE7oT{OW|Y$zp1$WE&Q)@S{$uHxr59u(S7F;!BD)TNFh*_tF< zM3j~?!dSJj>}ru77mrX-Tz-vWDp1YwQ)!n1peHY+RA!7<_@ZH%uI5yBE-y_AAdaw` zr?=MBY8RSo>!0J4n3N#lV+;K}pCtkI2w6CYQ6Qevm?<cl=ikW-?QHBo zw)P~+3z{EBmt~{Q10vLSd3EU)GxF~Z+OV}_w?z_cwcS{AnLOf@ z5ele{S2L1|nl#@kIFbn33qR5tYg1n>y{n$Z8o5Mq+AW^=!LpRllIYH3wrGo6?s9UmTgLr%9{fT8( znh6uLAMl_4d!G)i(ri)g?=(gODDcUAzGOT(tIgWd&84qYdbO3_`5f^%_NQ|i*vlrp z>l|RKGXWHzU-+M`l~?1eOO|w^)AxZFwPsB%=h}TEewYt;a^qW z*}_mkal1VJ_|ECK(OUYucrkJ{Yr+3KI^M*70>C!sVEyx|J~A@0Bu}_keY3GCvqQgR zI&EH&ix%bUMt-o|;EEe%=a`eC{dbP}n_Gtl`ADM-6`k%5tR@`e0=9INF*`9XHcH(i?_l!yY6qpQRL$dD5u6DpBU=4Yt?98ojELeLZc9IO09 zf%&&Eu%w6dzfM&2lO+7-{6OS9sCWUwe~bV3MIcpwllkWg{}iLA{ND=yKitFmu<&r< z|FnT3lcsK)6YPIlL1fS8Q{^_YzqhCH%rZ7pyo|P= z+L~lrq`{j&>s|cJC=M=MD0anf{-8SNTpSu%ABu8wOTat)K=`+pTu8lqF=YI~>39G? z9EFF9MCI%2>+kPBGBUDdqKIERB-6E#B{95juTec68mv%^e(hDuS#<-%gO=)e87eG~+uU}sOl<8jdl3knSU zytA`2AS_fo`<;LQlq(#()a}cEe0*$||GOL(t79KMa(+pn;;gUse>HaI?@)OC8?R9G zu}pT!k}MfAMn=k5DrQf%c%SnON*ug00 zw<)XR)iJmnc#q@Br@;f5^IYepowbRFwzfb|PfvI9%H&@ywLbg8M!z_K(JCG>4P)4J z(ALor0fVDkg4s?*0Cj~70rnc6Zcg+UK<#(kM4m{_sB0REoSnWy+6ei+J@If?7+~FG zrqo~V=v)aF6NFlJRAVrhzw$t-FwwJBsHELv*!OTkWS#N(Wm)iON(eiPSz~8x zh5uDvRgNg&$g$?$H7|1@AD`qm(SiUS_uZv62_||pH*E{uOQ>!v{>ijvRH9tZd2Kf{xsPQZB<`t6XN2%x^ab}%yHlGm>B9)^02jW00 zsGkLfAVhilg*vlZ1xSI>Y#?x8LqF%z_9kolx)bz#Iac(pT$iL|oLO#GS>p~rSXAtj zhxf!XPXj4LzdkKPFD6bsKS=^)3-RV2{gs}^5k+~&a1QdU1pK7F=*H|xaNq?IfT&nZ zZunIx7x2m|aWe`(=~4b$7(3zaET_x0EXl_^D`S2!p?fZR5^>xjDXqkL&)6`@wpP%* zWI51mg^gOHPCm4tJ}ptv*TcMrMY8lzx=hTnGvIQsqDY-fkqX1bkm#4J4Nv8)(%}Y_ z-1+fQlIUIO!LRYR>yH6e0}LFtI!3;4Mei5y%nRU1_Gk;?UtxA!zg@0MFcJRrZCy&W zA(gSBP{rqkhOu425Yl`qTk;mdPDxx^S?TsCQ#~rJB>QFRW{O{t#96)+ivi=g6;9NeU&qF{s@Z~U80FF;SGExdxsfQ zruSERTDU+C#2~yDGqK$#8a@r*yIVFex&m*_ zgPT5mdw>}2LRV|WT!*n-rDWV%Gw;BqFS!`*2StD4xNp06$ETfn1}EOPZ%oxHeSQ2# z)#ZG_Id;abF!6;UFQ0?mSK|&mSKPEN0lo%2(P5OFHr?Q}Y}sonl2+pRxga*Xxw>`U zz5(%N1UQm`+)eXYp6_9AG=6Ai{jv~S?_~}hyegqsGnV?K1G324sl0 zmbX5Sqcf;xw-<(}-?#>h2nlg$9^MiW$?7hGLX2Inc*OS^5Dn z?|txnc-2^NdpdH}^j-1Araaw)6UL@?fJ;vH)TouP5cC*w^Z01g&4rJow=Cw5BwpXN zvNo_))@Lf9wG)+0LB$Q^Ms3;;y-0hRT#Un8c!D-sRlD<@gjb_&p9C3d{N_$-Q?XvNp=E5R#o@Y_!CVHt4 zMMXE{H&=pZ<*`EOTf5DaUy?8ZOvkDlT+TZ8MvKvX=b3Ra4UpLaVuK;Wz|SIZh4W+m z9v99?=mpyAG&CgSvAM%-RT;;0OX8A8pTpwMcUC3}m{#q-u0RlZilXyxLd0fS3RoO%`n-n^!N9FND+`ro#f=rQDmvKm+qwSFNhL5=_Xj!8l*xAmZW!*m9edrD1E&|Ucf zs6h}<+HnMEyyAxunV7H*MGRnP=3+0`9e?981mQE|w9Y7<``oE#V6Gh*9TC!(GG?vS zBObHY?s?&C{?yTNv!0Y1UY=I9%Yih0+@by_>x@h7Y9hEQ$94el5kx?nxg}i=-pxS? z)vJBd^;%WYU{%Cr;uTc{YS>YDGw@iRio0%duE3&>hK2B;7BrEHl(L1M$b(MEHb7;H z=s^CDmsBsa<(=gAubDCt{FxW2=*3d0>k))iX0GuJTKx7i%!XC|k-5V@Ld&qwWv-=0 zusOsNoFE-9%J5HZCd%|GJ5jPm@lS<*-# z@iD4A>ytDGc3JuhuX#fouiPiohK9}sI}*lN77BCDPi?n|$z&`qBrl(e#5;Mc@jNbA z@AOz_xT2zxJdj*r-su2044Th-B_9lRX654(zi9sZJ1UQkg&*G0*Opqy-!YW$&2s=d zNP}1*zotL?kl<4sj>UMtplhm`ecIQ5&q_9$y(}c=VU29AxgE*N9e_85TZT_cb9vdc zeOG5*!w185>>MXKqDE6*?|)D$u0`=ksyg`#Uu81ax0$W zvV(WZ&o8_hln^tKF|H%-9FGb{sHH!9e5Ek#M>W=gzfEbKaMLwQ)u;qfK zpooX9cMXL69yyWMt8_`tn4oZEWr8b)-2keZwG9a&C%s~Tcz()jZ?>lu`OPQG?Ac|x z5w5Avx1AIR8f5Y7>imk}h8ueMPbh|mx3R3~t8x-SA+x3llVs!=vSMcbva5}C>Dl#q zaK0-0JF3>wjzo?Yz{g4ApF@^5-vAC0(e3-tF6YVF=s$?^e-c=D*P+T}6;Brs(9j$L ze2=r6NEj@*<7$VT-UsG4A~B7b2S;Y>Ba4X&QG{ZZUL?ejo2?+om8?^zUw--YV3+7K zoGvbKP(Eu`t~pc^!x4-o+;k!+F3WFQ;Hm*4rE(9#&>~VE3gIbuULSXMl4-vqL|-6h zMaAmzA$o7O)Hb3X`K8;wK{K+3g|F<-^#ULFne~Ynm2x}8eh{X8s?kn<)=Z#&!{kmX zosu}Bct^2;w=%Re4+!8zrq>bONO%7qM@)nPr-?M5O)I`5k$ptznoxxq5hIhd*zjK# z5c8j!7N->#(4cEP@-HCm#?l7_6NQ-Q2lCY%{veZg187wzO!T@&2fyHd5mNVs z09v;*?ZMw0N$%E`CTsauG%$6VV?5j;A6g3Ya&()C2T`_S8K1kOr|@|*>eOpk5Q}*x94$ENUwE#i600 zzc9DwoY?pJp)7!{vgF)VDcb8hX9dm$)n@7Dew e0~bSuQ?|tSPsSW6WVbW4_2542UXjL&fd2quY?UVf literal 0 HcmV?d00001 diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001105536118.png b/en/device-dev/quick-start/figures/en-us_image_0000001174350659.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001105536118.png rename to en/device-dev/quick-start/figures/en-us_image_0000001174350659.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001152256235.png b/en/device-dev/quick-start/figures/en-us_image_0000001174350661.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001152256235.png rename to en/device-dev/quick-start/figures/en-us_image_0000001174350661.png diff --git a/en/device-dev/quick-start/figures/en-us_image_0000001074445364.png b/en/device-dev/quick-start/figures/en-us_image_0000001174350669.png similarity index 100% rename from en/device-dev/quick-start/figures/en-us_image_0000001074445364.png rename to en/device-dev/quick-start/figures/en-us_image_0000001174350669.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001143154485.png b/en/device-dev/quick-start/figures/en-us_image_0000001174350781.png old mode 100755 new mode 100644 similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001143154485.png rename to en/device-dev/quick-start/figures/en-us_image_0000001174350781.png diff --git a/en/device-dev/quick-start/figures/failed-to-obtain-the-image-file-due-to-unavailable-connection-13.png b/en/device-dev/quick-start/figures/failed-to-obtain-the-image-file-due-to-unavailable-connection-13.png deleted file mode 100644 index 548e03da4b76123cb67d41cbd1de4a0f33f5ef4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10090 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%0A;9^9$8;p!N1juUMm}e) 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½j27S(`~`7 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 UJ*DiHci<)|DkoAYr04(t0KLuZ$N&HU diff --git a/en/device-dev/quick-start/figures/firewall-and-network-protection-15.png b/en/device-dev/quick-start/figures/firewall-and-network-protection-15.png deleted file mode 100644 index 82faf7d05d2a40e9deae2649a1f59fccea67bdc2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 141546 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 Y`^O^0;}XIm;Q1^e>A%`{e0}PF0Pa@yX8-^I diff --git a/en/device-dev/quick-start/figures/getting-started-for-the-standard-system.png b/en/device-dev/quick-start/figures/getting-started-for-the-standard-system.png new file mode 100644 index 0000000000000000000000000000000000000000..216265660cd0364189cd438da8b7e2600a7a5099 GIT binary patch literal 32197 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�v^Mk1{nE@biUrmrCNbg?G4##1=@8W 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üi25qG_{%dnQN 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 diff --git a/en/device-dev/quick-start/figures/selecting-the-visual-studio-code-application-16.png b/en/device-dev/quick-start/figures/selecting-the-visual-studio-code-application-16.png deleted file mode 100644 index 81812f492838b439ea507d4afb763ff751c0a467..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 136943 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�d-Aa@MrQZUe-XdxsrE43sIIrVaxwb54$016NU=a9_bpe5==GxLT)XF z-TDoe$Tj~@WG;>fJd~yA(o)IyKM=m?$M_S%yp#Y0@NL>;I|Zk4}kk)mkFd~Rr$I{F8!Z- z`M<%PY?^IZ_E8!X2*uIF92NjhHAL$I{xcq6Dc%wI(DI((Uu^uPy;5g+6j2?|;AU`Q znOzyan!2LfRU2KBLR26YRDmbQcM_-!V1SkwJ*!?K)%YBRm@g;5t=ROj+;w@TJ}~ZF zeedJV|8ue9P8CM7Xe*_Is>%WDn8raY)%lU$onam_iL8!snnq6`4l^4cnLL$So~Mjs6&)e%Vi&-vs~ zf2j?okp+Rp$