女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

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

開(kāi)鴻智谷 ? 2023-02-08 10:58 ? 次閱讀

開(kāi)篇引言

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

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

參照??pmbootstrap - postmarketOS?? 中的 Installation -- From git 準(zhǔn)備編譯環(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富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

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

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

  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,編譯安卓格式的刷機(jī)包

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

編譯時(shí)間會(huì)比較長(zhǎng),中間會(huì)提示創(chuàng)建進(jìn)入手機(jī)系統(tǒng)的新密碼

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

4,導(dǎo)出刷機(jī)包

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

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

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

至此拿到刷機(jī)包

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

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

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

5,刷入手機(jī)驗(yàn)證并獲取芯片控制器名稱(chēng)

音量上+電源開(kāi)機(jī)進(jìn)入twrp(twrp的安裝是搞機(jī)必備,網(wǎng)上教程很多,在此不再重復(fù))

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

點(diǎn)擊安裝

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

點(diǎn)擊刷機(jī)包

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

確認(rèn)刷入

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

刷機(jī)會(huì)出現(xiàn)錯(cuò)誤,不用管

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

輸入用戶(hù)名:user,密碼:自己之前設(shè)置的,進(jìn)入系統(tǒng)

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

至此確認(rèn)手機(jī)正常運(yùn)行Linux系統(tǒng),顯示,觸摸等正常工作。

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

解包獲取的資料:

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

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

firmware:?jiǎn)?dòng)加載必須的驅(qū)動(dòng)固件文件

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

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

  1. sudo apt update
  2. sudo apt install abootimg

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

  1. 1. abootimg -x boot.img

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

使用cpio解壓initrd.img鏡像

  1. 1. cpio -idmv < initrd.img

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

7,獲取正常啟動(dòng)的log

參考上面手機(jī)運(yùn)行docker那篇文章,用usb連接電腦,設(shè)置好驅(qū)動(dòng)

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

  1. 1. ssh [email protected]

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

輸入dmesg打印輸出內(nèi)核log,這個(gè)是正常的內(nèi)核啟動(dòng)log,復(fù)制下來(lái)保存好以便移植時(shí)啟動(dòng)出錯(cuò)或者驅(qū)動(dòng)有問(wèn)題時(shí)方便進(jìn)行對(duì)照

  1. 1. dmesg

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

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

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

獲取USB控制器名稱(chēng),后面移植hdc連接程序會(huì)用到

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

獲取存儲(chǔ)控制器名稱(chēng),后面配置分區(qū)會(huì)用到

  1. ls /sys/devices/platform/soc

暫時(shí)判斷1da4000.ufshc為存儲(chǔ)控制器名稱(chēng)

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

重啟,進(jìn)入twrp,輸入以下命令進(jìn)入recovery的shell

  1. 1. adb shell

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

輸入以下命令可以交叉確認(rèn)1da4000.ufshc為存儲(chǔ)控制器名稱(chēng)

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

獲取分區(qū)信息

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

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

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

  1. 1. df -h

OpenHarmony富設(shè)備移植指南(2)從postmarketOS獲取移植資源-開(kāi)源基礎(chǔ)軟件社區(qū)

確認(rèn)vendor分區(qū)對(duì)應(yīng)到sde42 -> cust

system分區(qū)因?yàn)榘惭bpmOS的緣故無(wú)法掛載,但是可以確定分區(qū)映射關(guān)系是,

/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

至此移植需要提前準(zhǔn)備的信息基本講完,下篇開(kāi)始講解OpenHarmony編譯的部分,敬請(qǐng)期待

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

    關(guān)注

    25

    文章

    5507

    瀏覽量

    102253
  • OpenHarmony
    +關(guān)注

    關(guān)注

    26

    文章

    3824

    瀏覽量

    18142
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

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

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

    AN169 GD32E230系列移植到GD32E235系列

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

    AN184 GD32L233系列移植到GD32L235系列

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

    AN136 基于GD32F30x系列的IEC60730 ClassB庫(kù)移植指南

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

    基于GD32F3x0系列的IEC60730 ClassB庫(kù)移植指南

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

    GD32E230系列移植到GD32E235系列

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

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

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

    多平臺(tái)FPGA工程快速移植與構(gòu)建

    作為一名FPGA工程師,經(jīng)常需要在多個(gè)FPGA設(shè)備之間移植項(xiàng)目,核心的問(wèn)題是IP的管理和移植,今天通過(guò)安裝和使用 FuseSoC 在多個(gè) AMD FPGA 之間移植一個(gè)簡(jiǎn)單的項(xiàng)目。
    的頭像 發(fā)表于 11-20 16:12 ?1747次閱讀
    多平臺(tái)FPGA工程快速<b class='flag-5'>移植</b>與構(gòu)建

    【北京迅為】i.mx8mm嵌入式linux開(kāi)發(fā)指南第四篇 嵌入式Linux系統(tǒng)移植篇第六十九章uboot移植

    【北京迅為】i.mx8mm嵌入式linux開(kāi)發(fā)指南第四篇 嵌入式Linux系統(tǒng)移植篇第六十九章uboot移植
    的頭像 發(fā)表于 10-22 14:46 ?1080次閱讀
    【北京迅為】i.mx8mm嵌入式linux開(kāi)發(fā)<b class='flag-5'>指南</b>第四篇 嵌入式Linux系統(tǒng)<b class='flag-5'>移植</b>篇第六十九章uboot<b class='flag-5'>移植</b>

    【GD32 MCU 移植教程】9、 STM32F10x 系列移植到 GD32F30x 系列

    對(duì)比、外設(shè)及性能對(duì)比以及 STM32F10x 移植到 GD32F30x 的移植步驟,旨在讓開(kāi)發(fā)者能夠快速STM32F10x 移植到 GD
    的頭像 發(fā)表于 09-07 09:57 ?1711次閱讀
    【GD32 MCU <b class='flag-5'>移植</b>教程】9、<b class='flag-5'>從</b> STM32F10x 系列<b class='flag-5'>移植</b>到 GD32F30x 系列

    Openharmony軟件評(píng)估指南-米爾瑞芯微RK3568開(kāi)發(fā)板

    MYD-LR3568開(kāi)發(fā)板正面 圖1-2. 米爾MYD-LR3568開(kāi)發(fā)板反面 1.軟件資源米爾米粉派3568系列開(kāi)發(fā)板的Openharmony BSP是基于瑞芯微官方開(kāi)源社區(qū)版Openhar
    發(fā)表于 09-06 20:06

    【GD32 MCU 移植教程】8、 STM32F4xx 系列移植到 GD32F4xx 系

    、外設(shè)及性能對(duì)比以及 STM32F4xx 移植到 GD32F4xx 的移植步驟,旨在讓開(kāi)發(fā)者能夠快速STM32F4xx移植到 GD32F
    的頭像 發(fā)表于 09-06 09:40 ?2356次閱讀
    【GD32 MCU <b class='flag-5'>移植</b>教程】8、<b class='flag-5'>從</b> STM32F4xx 系列<b class='flag-5'>移植</b>到 GD32F4xx 系

    【GD32 MCU 移植教程】2 GD32F303 移植到 GD32F503

    GD32E503 系列是 GD 推出的 Cortex_M33 系列產(chǎn)品,該系列資源上與 GD32F303 兼容度非常高,本應(yīng)用筆記旨在幫助您快速將應(yīng)用程序 GD32F303 系列微控制器移植到 GD32E503 系列微控制器。
    的頭像 發(fā)表于 08-31 09:36 ?2022次閱讀
    【GD32 MCU <b class='flag-5'>移植</b>教程】<b class='flag-5'>2</b>、<b class='flag-5'>從</b> GD32F303 <b class='flag-5'>移植</b>到 GD32F503