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

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

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

3天內不再提示

內核中的psci架構cpu_ops接口

麥辣雞腿堡 ? 來源:TrustZone ? 作者:Hcoco ? 2023-12-05 17:25 ? 次閱讀

cpu_ops接口

驅動初始化完成后,cpu的cpu_ops就可以調用這些回調實現psci功能的調用。如下所示,當devicetree中cpu的enable-method設置為psci時,該cpu的cpu_ops將指向cpu_psci_ops。

cpu0: cpu@0 {
	...
	enable-method = "psci";
	…
}

其中cpu_psci_ops的定義如下:

const struct cpu_operations cpu_psci_ops = {
	.name		= "psci",
	.cpu_init	= cpu_psci_cpu_init,
	.cpu_prepare	= cpu_psci_cpu_prepare,
	.cpu_boot	= cpu_psci_cpu_boot,
#ifdef CONFIG_HOTPLUG_CPU
	.cpu_can_disable = cpu_psci_cpu_can_disable,
	.cpu_disable	= cpu_psci_cpu_disable,
	.cpu_die	= cpu_psci_cpu_die,
	.cpu_kill	= cpu_psci_cpu_kill,
#endif
}

如啟動cpu的接口為cpu_psci_cpu_boot,它會通過以下流程最終調用psci驅動中的psci_ops函數:

static int cpu_psci_cpu_boot(unsigned int cpu)
{
	phys_addr_t pa_secondary_entry = __pa_symbol(function_nocfi(secondary_entry));
	int err = psci_ops.cpu_on(cpu_logical_map(cpu), pa_secondary_entry);
	if (err)
		pr_err("failed to boot CPU%d (%d)n", cpu, err);

	return err;
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 內核
    +關注

    關注

    3

    文章

    1406

    瀏覽量

    41056
  • cpu
    cpu
    +關注

    關注

    68

    文章

    11028

    瀏覽量

    215816
  • 驅動
    +關注

    關注

    12

    文章

    1890

    瀏覽量

    86473
  • SMP
    SMP
    +關注

    關注

    0

    文章

    77

    瀏覽量

    20147
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    ARM電源管理PSCI是什么意思呢

    今天來看一個電源功耗相關的東西,PSCI(Power State Coordination Interface),翻譯一下就是“電源狀態協作接口”。從名字就能直觀看出來,PSCI是一套電源管理
    發表于 04-02 09:45

    請教大神qemu模擬cortex-A53運行rt-thread出錯怎么解決呢?

    出現了No cpu_ops was probed for CPU 1,請問是什么原因,我該怎么配置?感謝各位大佬
    發表于 02-15 10:51

    OPS常見問題的故障定位思路

    ,應用編程接口)來開放系統,在基于OPS開發的過程,可能出現OPS功能配置不生效的現象,本文介紹了OPS常見問題的故障定位思路及基本解決方
    的頭像 發表于 12-22 10:04 ?3032次閱讀

    CPU 拓撲的SMP架構

    CPU 拓撲用來表示 CPU 在硬件層面的組合方式,本文主要講解 CPU 拓撲的 SMP(Symmetric Multi-Processor,對稱多處理器系統)
    的頭像 發表于 08-29 11:02 ?5010次閱讀

    基于ARM架構PSCI接口規范

    本文主要是在ARM架構的不同異常等級上工作的軟件之間,提供一個標準的電源管理接口。這些軟件,比如Linux、Hypervisor、安全Firmware和可信OS之間必須能夠實現互相操作。而這些軟件可能由不同廠商提供,本標準就是為這些軟件的集成提供便利。
    的頭像 發表于 11-07 10:48 ?4753次閱讀

    如何在內核啟動secondary cpu

    啟動secondary cpu 內核在啟動secondary cpu之前當然需要為其準備好執行環境,因為內核
    的頭像 發表于 12-05 15:46 ?824次閱讀
    如何在<b class='flag-5'>內核</b><b class='flag-5'>中</b>啟動secondary <b class='flag-5'>cpu</b>

    SMP多核啟動cpu操作函數

    cpu操作函數 cpu_ops函數由bringup_cpu調用,以觸發secondary cpu啟動。它是根據設備樹解析出的enable-
    的頭像 發表于 12-05 16:04 ?1124次閱讀
    SMP多核啟動<b class='flag-5'>cpu</b>操作函數

    psci電源管理接口可以用于什么場景

    psci是arm提供的一套電源管理接口,當前一共包含0.1、0.2和1.0三個版本。它可被用于以下場景:(1)cpu的idle管理 (2)cpu hotplug以及secondary
    的頭像 發表于 12-05 16:28 ?761次閱讀

    psci接口規范介紹

    由于psci是由linux內核調用bl31的安全服務,實現cpu電源管理功能的。因此其軟件架構包含三個部分: (1)
    的頭像 發表于 12-05 16:53 ?1287次閱讀

    內核psci驅動是什么

    內核psci架構 內核psci軟件架構包含
    的頭像 發表于 12-05 16:58 ?986次閱讀
    <b class='flag-5'>內核</b><b class='flag-5'>中</b>的<b class='flag-5'>psci</b>驅動是什么

    bl31psci架構介紹

    bl31psci架構 bl31為內核提供了一系列運行時服務,psci作為其標準運行時服務的一部分,通過宏DECLARE_RT_SVC注冊
    的頭像 發表于 12-05 17:33 ?1367次閱讀
    bl31<b class='flag-5'>中</b>的<b class='flag-5'>psci</b><b class='flag-5'>架構</b>介紹

    SMP多核secondary cpu啟動流程

    secondary cpu啟動 由于psci方式啟動secondary cpu的流程,除了其所執行的cpu_ops不同之外,其它流程與spin-table方式是相同的,因此我們這里只給
    的頭像 發表于 12-05 17:41 ?1154次閱讀
    SMP多核secondary <b class='flag-5'>cpu</b>啟動流程

    SMP多核啟動PSCI代碼示例

    :qemu平臺 - >*psci_ops = 208 static const plat_psci_ops_t plat_qemu_psci_pm_ops = { 209 .cpu
    的頭像 發表于 12-05 17:45 ?909次閱讀

    PSCI處理函數代碼分析

    處理函數根據funid來決定服務,可以看到PSCI_CPU_ON_AARCH64為0xc4000003,這正是設備樹填寫的cpu_on屬性的id,會委托psci_cpu_on來執行核
    的頭像 發表于 12-05 18:08 ?1135次閱讀

    開核返回:EL1啟動從處理器

    許使用psci情況 - > rest_init - > kernel_init - > kernel_init_freeable - > smp_prepare_cpus //準備cpu 對于每個可能的cpu 1.
    的頭像 發表于 12-05 18:11 ?777次閱讀