chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源

開鴻智谷 ? 2023-02-08 10:58 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

開篇引言

安卓設備的引導需要boot.img鏡像,其中含有內(nèi)核鏡像,設備樹,boot配置文件,initrd.img根文件系統(tǒng)鏡像,開發(fā)板因為是開發(fā)用途,系統(tǒng)引導基本沒有限制,而成品安卓手機往往有各種限制,我們需要通過刷入postmarketOS進行確認手機是否可以啟動第三方系統(tǒng),從中獲取引導啟動的相關信息以及文件,并仿照postmarketOS的引導鏡像創(chuàng)建我們自己的引導鏡像。

1,準備postmarketOS編譯環(huán)境

參照??pmbootstrap - postmarketOS?? 中的 Installation -- From git 準備編譯環(huán)境

  1. $ git clone https://git.sr.ht/~postmarketos/pmbootstrap
  2. $ mkdir -p ~/.local/bin
  3. $ ln -s "$PWD/pmbootstrap/pmbootstrap.py" ~/.local/bin/pmbootstrap
  4. $ pmbootstrap --version
  5. 1.50.1

2,執(zhí)行初始化

  1. 1. pmbootstrap init
OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

或者替換使用鏡像源,不然會有網(wǎng)絡問題,需要替換兩個鏡像源地址,postmarketOS鏡像,和Alpine Linux鏡像

使用以下命令設置設置成清華源進行初始化,也可以根據(jù)鏡像源列表找自己喜歡的設置

  1. 1. pmbootstrap --mirror-pmOS https://mirrors.tuna.tsinghua.edu.cn/postmarketOS/ --mirror-alpine https://mirrors.tuna.tsinghua.edu.cn/alpine/


postmarketOS鏡像源列表:??postmarketOS // Official postmarketOS Mirrors??

Alpine Linux鏡像源列表:??Mirror health (alpinelinux.org)?

3,編譯安卓格式的刷機包

  1. 1. pmbootstrap install --android-recovery-zip

編譯時間會比較長,中間會提示創(chuàng)建進入手機系統(tǒng)的新密碼

如果中途出現(xiàn)錯誤,可以重試幾次,仍然不行的話刪除整個work目錄,重新執(zhí)行初始化再編譯刷機包,最終結(jié)果如下

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

4,導出刷機包

  1. 1. pmbootstrap export
OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

執(zhí)行以下命令找到刷機包位置

cd $(dirname $(readlink /tmp/postmarketOS-export/pmos-*.zip))

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

至此拿到刷機包

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

查找資料的時候有參考這篇文章的方案二部分,在此貼出

??手機運行Docker: 從修改內(nèi)核到刷入原生Linux | yzddMr6's Blog??

5,刷入手機驗證并獲取芯片控制器名稱

音量上+電源開機進入twrp(twrp的安裝是搞機必備,網(wǎng)上教程很多,在此不再重復)

??小米(Mi) 6小米(Mi) 6 手機刷 TWRP 方法,刷三方Recovery方法(解決卡米問題)刷機解鎖 (onfix.cn)???

點擊安裝

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

點擊刷機包

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

確認刷入

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

刷機會出現(xiàn)錯誤,不用管

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

刷完重啟,等待一段時間直到顯示welcome信息

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

輸入用戶名:user,密碼:自己之前設置的,進入系統(tǒng)

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

至此確認手機正常運行Linux系統(tǒng),顯示,觸摸等正常工作。

6,解包獲取移植需要的資料

解包獲取的資料:

bootimg.cfg:boot分區(qū)配置信息,內(nèi)核啟動參數(shù)

config:默認內(nèi)核編譯配置,后續(xù)適配內(nèi)核在此基礎進行變更

firmware:啟動加載必須的驅(qū)動固件文件

右鍵解壓縮pmos-xiaomi-sagit.zip得到pmos-xiaomi-sagit

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

同樣使用右鍵解壓縮rootfs.tar.gz得到rootfs,在rootfs/boot文件夾拿到boot.img和內(nèi)核編譯的config配置

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

安裝安卓boot打包解包工具:

  1. sudo apt update
  2. sudo apt install abootimg

把boot.img復制到任意的文件夾,然后使用以下命令解包:

  1. 1. abootimg -x boot.img

得到boot分區(qū)配置bootimg.cfg

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

查看initrd.img文件格式為gzip壓縮文件

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

使用gzip解壓,發(fā)現(xiàn)解壓失敗,原因為后綴名不支持,我們使用mv命令復制initrd.img為initrd.img.gz,然后使用解壓命令就可以成功解壓了,解壓后原來的initrd.img會被解壓出的文件替換掉,這時initrd.img的格式為cpio鏡像文件

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

使用cpio解壓initrd.img鏡像

  1. 1. cpio -idmv < initrd.img

得到我們需要的boot階段所必須的固件firmware,后面要編譯進OH的ramdisk鏡像中

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

7,獲取正常啟動的log

參考上面手機運行docker那篇文章,用usb連接電腦,設置好驅(qū)動

打開命令提示符,使用ssh連接Linux,ip是固定的172.16.42.1

  1. 1. ssh user@172.16.42.1

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

輸入dmesg打印輸出內(nèi)核log,這個是正常的內(nèi)核啟動log,復制下來保存好以便移植時啟動出錯或者驅(qū)動有問題時方便進行對照

  1. 1. dmesg

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

8,獲取設備名,分區(qū)信息

連接Linux,輸入以下命令獲取信息

獲取USB控制器名稱,后面移植hdc連接程序會用到

  1. ls /sys/class/udc/
  2. a800000.usb

獲取存儲控制器名稱,后面配置分區(qū)會用到

  1. ls /sys/devices/platform/soc

暫時判斷1da4000.ufshc為存儲控制器名稱

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

重啟,進入twrp,輸入以下命令進入recovery的shell

  1. 1. adb shell

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

輸入以下命令可以交叉確認1da4000.ufshc為存儲控制器名稱

  1. 1. ls dev/block/platform/soc/

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

獲取分區(qū)信息

  1. 1. ls -al /dev/block/platform/soc/1da4000.ufshc/by-name/

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

、

手機上勾選掛載vendor分區(qū)

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

  1. 1. df -h

OpenHarmony富設備移植指南(2)從postmarketOS獲取移植資源-開源基礎軟件社區(qū)

、

確認vendor分區(qū)對應到sde42 -> cust

system分區(qū)因為安裝pmOS的緣故無法掛載,但是可以確定分區(qū)映射關系是,

/dev/block/platform/soc/1da4000.ufshc/by-name/cust ---> sde42 ---> vendor

/dev/block/platform/soc/1da4000.ufshc/by-name/system ---> sde43 ---> system

/dev/block/platform/soc/1da4000.ufshc/by-name/userdata --->sda17 ---> data

至此移植需要提前準備的信息基本講完,下篇開始講解OpenHarmony編譯的部分,敬請期待

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 開發(fā)板
    +關注

    關注

    25

    文章

    6140

    瀏覽量

    113741
  • OpenHarmony
    +關注

    關注

    31

    文章

    3928

    瀏覽量

    20737
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    ElfBoard技術貼|如何在【RK3588】ELF 2開發(fā)板移植LVGL8.2

    隨著嵌入式設備對圖形用戶界面(GUI)的需求不斷提升,選擇一款高效、輕量且易于移植的GUI框架已成為項目開發(fā)中的關鍵環(huán)節(jié)。LVGL與Qt作為嵌入式領域廣泛使用的兩種GUI解決方案,在架構設計、資源
    的頭像 發(fā)表于 10-15 08:52 ?5522次閱讀
    ElfBoard技術貼|如何在【RK3588】ELF <b class='flag-5'>2</b>開發(fā)板<b class='flag-5'>移植</b>LVGL8.2

    RT-Thread Nano硬核移植指南:手把手實現(xiàn)VGLite圖形驅(qū)動適配 | 技術集結(jié)

    VGLite是NXP提供的輕量級2D圖形API,本文將手把手帶你實現(xiàn)VGLite圖形驅(qū)動適配RT-Thread。文章分為上、下兩篇,將手把手教您移植。上篇對RT-ThreadNano內(nèi)核與Finsh組件進行移植,下篇則教您改寫S
    的頭像 發(fā)表于 07-17 14:40 ?3065次閱讀
    RT-Thread Nano硬核<b class='flag-5'>移植</b><b class='flag-5'>指南</b>:手把手實現(xiàn)VGLite圖形驅(qū)動適配 | 技術集結(jié)

    機智云配網(wǎng)教程第三期:單片機代碼移植實戰(zhàn)

    :stm32f103c8t6,WiFi模塊:ESP-01s,下載器:ST-LINK2.軟件:keil5的工程文件模板,mcu代碼包代碼資源:未移植移植后(注:本文是基于stm32標
    的頭像 發(fā)表于 07-01 17:32 ?1028次閱讀
    機智云配網(wǎng)教程第三期:單片機代碼<b class='flag-5'>移植</b>實戰(zhàn)

    STM32與機智云連接實現(xiàn)步驟與技巧(下篇):機智云代碼移植與優(yōu)化

    在《STM32與機智云連接實現(xiàn)步驟與技巧(上篇)》中,我們介紹了硬件連接和通信協(xié)議配置。本篇將重點講解如何將機智云相關代碼移植到STM32,完成數(shù)據(jù)上傳和設備控制。我們將介紹如何在STM32中配置
    的頭像 發(fā)表于 05-23 18:10 ?823次閱讀
    STM32與機智云連接實現(xiàn)步驟與技巧(下篇):機智云代碼<b class='flag-5'>移植</b>與優(yōu)化

    DeepSeek到Qwen,AI大模型的移植與交互實戰(zhàn)指南-飛凌嵌入式

    在不久前發(fā)布的《技術實戰(zhàn)|OK3588-C開發(fā)板上部署DeepSeek-R1大模型的完整指南》一文中,小編為大家介紹了DeepSeek-R1在飛凌嵌入式OK3588-C開發(fā)板上的移植部署、效果展示以及性能評測,本篇文章不僅將繼續(xù)為大家?guī)黻P于DeepSeek-R1的干貨知
    的頭像 發(fā)表于 03-28 08:06 ?2551次閱讀
    <b class='flag-5'>從</b>DeepSeek到Qwen,AI大模型的<b class='flag-5'>移植</b>與交互實戰(zhàn)<b class='flag-5'>指南</b>-飛凌嵌入式

    求分享FRDM-MKL82到MKL81Z128CBH7R的代碼移植指南?

    否有任何 FRDM-MKL82 到 MKL81Z128CBH7R 的代碼移植指南?
    發(fā)表于 03-26 07:28

    詳解Object Detection Demo的移植

    繼上一篇移植了 Mediapipe 的 LLM Inference 后,這篇文章我們將繼續(xù)探索 Object Detection Demo 的移植。
    的頭像 發(fā)表于 02-05 13:42 ?870次閱讀
    詳解Object Detection Demo的<b class='flag-5'>移植</b>

    2K0300 OpenHarmony源碼構建指南

    2K0300 OpenHarmony源碼構建參考如下 2K0300先鋒派OpenHarmony源碼構建指南
    發(fā)表于 02-05 09:36

    AN169 GD32E230系列移植到GD32E235系列

    電子發(fā)燒友網(wǎng)站提供《AN169 GD32E230系列移植到GD32E235系列.pdf》資料免費下載
    發(fā)表于 01-21 17:46 ?2次下載
    AN169 <b class='flag-5'>從</b>GD32E230系列<b class='flag-5'>移植</b>到GD32E235系列

    AN184 GD32L233系列移植到GD32L235系列

    電子發(fā)燒友網(wǎng)站提供《AN184 GD32L233系列移植到GD32L235系列.pdf》資料免費下載
    發(fā)表于 01-21 17:44 ?2次下載
    AN184 <b class='flag-5'>從</b>GD32L233系列<b class='flag-5'>移植</b>到GD32L235系列

    AN136 基于GD32F30x系列的IEC60730 ClassB庫移植指南

    電子發(fā)燒友網(wǎng)站提供《AN136 基于GD32F30x系列的IEC60730 ClassB庫移植指南.pdf》資料免費下載
    發(fā)表于 01-17 16:22 ?2次下載
    AN136 基于GD32F30x系列的IEC60730 ClassB庫<b class='flag-5'>移植</b><b class='flag-5'>指南</b>

    基于GD32F3x0系列的IEC60730 ClassB庫移植指南

    電子發(fā)燒友網(wǎng)站提供《基于GD32F3x0系列的IEC60730 ClassB庫移植指南.pdf》資料免費下載
    發(fā)表于 01-17 14:41 ?3次下載
    基于GD32F3x0系列的IEC60730 ClassB庫<b class='flag-5'>移植</b><b class='flag-5'>指南</b>

    GD32E230系列移植到GD32E235系列

    電子發(fā)燒友網(wǎng)站提供《GD32E230系列移植到GD32E235系列.pdf》資料免費下載
    發(fā)表于 01-17 14:31 ?1次下載
    <b class='flag-5'>從</b>GD32E230系列<b class='flag-5'>移植</b>到GD32E235系列

    STM32WL55JC到STM32WLE5CC的LoRaWAN_FUOTA移植

    電子發(fā)燒友網(wǎng)站提供《STM32WL55JC到STM32WLE5CC的LoRaWAN_FUOTA移植.pdf》資料免費下載
    發(fā)表于 01-15 15:24 ?1次下載
    <b class='flag-5'>從</b>STM32WL55JC到STM32WLE5CC的LoRaWAN_FUOTA<b class='flag-5'>移植</b>

    EE-241:SHARC DSP到TigerSHARC處理器代碼移植指南

    電子發(fā)燒友網(wǎng)站提供《EE-241:SHARC DSP到TigerSHARC處理器代碼移植指南.pdf》資料免費下載
    發(fā)表于 01-13 15:35 ?0次下載
    EE-241:SHARC DSP到TigerSHARC處理器代碼<b class='flag-5'>移植</b><b class='flag-5'>指南</b>