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

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

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

軟件使用SMMUv3的stage1還是stage2地址轉(zhuǎn)換

冬至子 ? 來源:修志龍_ZenonXiu ? 作者:修志龍_ZenonXiu ? 2023-05-23 17:28 ? 次閱讀

問題

SMMUv3硬件可以設(shè)計(jì)為:

只有stage1地址轉(zhuǎn)換支持

只用stage2地址轉(zhuǎn)換支持

既支持stage1又支持stage2

那軟件怎么使用stage1和stage2的呢?

回答

這取決于軟件的使用場景。

Linux Kernel

如果SMMUv3硬件只支持stage1或只支持stage2,那么支持的stage可以用于Linux的DMA-IOMMU和VFIO的場景。在Shared Virtual Address (SVA)場景下,必須使用stage1。因而,只支持stage2的SMMUv3 hardware無法使用在SVA場景。

如果SMMUv3硬件既支持stage1又支持stage2,下表展示了不同場景下stage的使用情況:

DMA IOMMU mapping

image.png

VFIO

image.png

SVA

image.png

Xen

當(dāng)在Xen上使用SMMUv3實(shí)現(xiàn)設(shè)備pass through時(shí),僅限于使用stage2。

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

    關(guān)注

    4

    文章

    593

    瀏覽量

    27397
  • dma
    dma
    +關(guān)注

    關(guān)注

    3

    文章

    561

    瀏覽量

    100587
收藏 人收藏

    評論

    相關(guān)推薦

    鴻蒙Stage模型--概述

    Stage模型:HarmonyOS 3.1 Develper Preview版本開始新增的模型,是目前主推且會長期演進(jìn)的模型。在該模型中,由于提供了AbilityStage、WindowStage等
    的頭像 發(fā)表于 01-29 13:59 ?1327次閱讀
    鴻蒙<b class='flag-5'>Stage</b>模型--概述

    Stage 模型深入解讀

    設(shè)備的遷移和協(xié)同機(jī)制。本文為大家詳細(xì)介紹 Stage 模型。 一、Stage 模型概念 應(yīng)用開發(fā)模型是運(yùn)行在不同 OS 上的抽象結(jié)構(gòu)。OS 通過這種抽象結(jié)構(gòu),把應(yīng)用開發(fā)的基礎(chǔ)設(shè)施封裝在 OS 內(nèi)部。開發(fā)者通過使用應(yīng)用開發(fā)模型,復(fù)用 OS 基礎(chǔ)設(shè)施的能力,達(dá)到高效開發(fā)應(yīng)用的
    的頭像 發(fā)表于 02-18 09:28 ?1160次閱讀
    <b class='flag-5'>Stage</b> 模型深入解讀

    鴻蒙OS開發(fā)案例:【Stage模型卡片】

    本示例展示了Stage模型卡片提供方的創(chuàng)建與使用。
    的頭像 發(fā)表于 04-09 17:13 ?995次閱讀
    鴻蒙OS開發(fā)案例:【<b class='flag-5'>Stage</b>模型卡片】

    Buck Power Stage

    Buck Power Stage
    發(fā)表于 08-14 12:59

    Boost Power Stage

    Boost Power Stage
    發(fā)表于 08-14 13:00

    AD7147只出STAGE0的數(shù)值,其他stage的寄存器輸出均為0

    的值均為0。針對AD7147芯片手冊重新配置了一遍AD7147,結(jié)果還是依舊,很迷惑。求高手解決!配置描述:寄存器2配置:stage0--CIN0(+)stage1--CIN1
    發(fā)表于 04-18 20:01

    ARMv8 MMU translation stages與相關(guān)寄存器介紹

    ;0 stage 1,其它的stage1stage2都是只支持1個(gè)VA ranges。對于支持1
    發(fā)表于 12-30 16:35

    Stage模型深入解讀

    2、Stage模型能力特點(diǎn) Stage模型能力示意圖 Stage模型的設(shè)計(jì),是為了提供給開發(fā)者一個(gè)更好的開發(fā)方式,更好的適用于多設(shè)備、分布式場景。
    發(fā)表于 03-15 10:32

    vivi boot loader的實(shí)現(xiàn)

    vivi boot loader的實(shí)現(xiàn) 說明:本文文字結(jié)構(gòu)照抄” 嵌入式系統(tǒng) Boot Loader 技術(shù)內(nèi)幕, 詹榮開一文,以vivi中head.S作為stage1, main()作為stage2,解釋了VIVI for SMDK2410 (based on
    發(fā)表于 02-09 15:40 ?25次下載

    two-stage transformer-coupled

    two-stage transformer-coupled amplifier雙通道變壓器耦合放大器電路圖
    發(fā)表于 09-29 21:52 ?1489次閱讀
    two-<b class='flag-5'>stage</b> transformer-coupled

    m3 line stage left channel cir

    m3 line stage left channel circuit
    發(fā)表于 09-08 21:48 ?2102次閱讀
    m<b class='flag-5'>3</b> line <b class='flag-5'>stage</b> left channel cir

    GRUB源代碼分析

    其實(shí)總體上我們可以把grub看成一個(gè)minios,他有shell,支持script,有文件系統(tǒng)我們可以把stage1,stage1.5看成一個(gè)bootloader,而stage2則是一個(gè)os,只不過這個(gè)os是專門load其他os
    發(fā)表于 04-03 20:35 ?44次下載

    Stage模型深入解讀

    作者:sunbingxin 應(yīng)用框架架構(gòu)師 HarmonyOS 3.1版本(API 9)推出了全新應(yīng)用開發(fā)模型-Stage模型,該模型重新定義了應(yīng)用開發(fā)的能力邊界,從應(yīng)用開發(fā)模型的角度,支持多窗口
    的頭像 發(fā)表于 03-16 13:35 ?938次閱讀

    arm架構(gòu)的虛擬化是什么

    為了支持虛擬化,Armv8-A支持兩步地址轉(zhuǎn)換,也就是文檔常提到的Stage2translation。Stage2轉(zhuǎn)換允許hyperviso
    發(fā)表于 08-07 14:14 ?2012次閱讀
    arm架構(gòu)的虛擬化是什么

    基于Java的工具Power Stage Designer

    電子發(fā)燒友網(wǎng)站提供《基于Java的工具Power Stage Designer.pdf》資料免費(fèi)下載
    發(fā)表于 11-14 16:01 ?2次下載
    基于Java的工具Power <b class='flag-5'>Stage</b> Designer