国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

psci

2019-11-09 14:38:34
字體:
來源:轉載
供稿:網友
在setup_arch 中會啟動psci的init    if (acpi_disabled)        psci_dt_init();    else        psci_acpi_init();可見dtb和acpi分別調用不同的函數初始,以acpi為例int __init psci_acpi_init(void){    if (!acpi_psci_PResent()) {        pr_info("is not implemented in ACPI./n");        return -EOPNOTSUPP;    }    pr_info("probing for conduit method from ACPI./n");    if (acpi_psci_use_hvc())        invoke_psci_fn = __invoke_psci_fn_hvc;    else        invoke_psci_fn = __invoke_psci_fn_smc;    return psci_probe();}其中psci和atf有兩種方式,一種是hvc,一種是smc,主流是smc,具體是通過acpi_psci_use_hvc來判斷。bool __init acpi_psci_use_hvc(void){    return acpi_gbl_FADT.arm_boot_flags & ACPI_FADT_PSCI_USE_HVC;}可見是通過FADT表中的flag決定得。最后調用psci_probestatic int __init psci_probe(void){    u32 ver = psci_get_version();    psci_0_2_set_functions();    return 0;}在psci_probe 中調用psci_0_2_set_functions來設定psci執行函數static void __init psci_0_2_set_functions(void){    pr_info("Using standard PSCI v0.2 function IDs/n");    psci_function_id[PSCI_FN_CPU_SUSPEND] =                    PSCI_FN_NATIVE(0_2, CPU_SUSPEND);    psci_ops.cpu_suspend = psci_cpu_suspend;    psci_function_id[PSCI_FN_CPU_OFF] = PSCI_0_2_FN_CPU_OFF;    psci_ops.cpu_off = psci_cpu_off;    psci_function_id[PSCI_FN_CPU_ON] = PSCI_FN_NATIVE(0_2, CPU_ON);    psci_ops.cpu_on = psci_cpu_on;    psci_function_id[PSCI_FN_MIGRATE] = PSCI_FN_NATIVE(0_2, MIGRATE);    psci_ops.migrate = psci_migrate;    psci_ops.affinity_info = psci_affinity_info;    psci_ops.migrate_info_type = psci_migrate_info_type;    arm_pm_restart = psci_sys_reset;    pm_power_off = psci_sys_poweroff;}主要是填充psci_ops這個結構體。后續就可以直接調用psci_ops來處理問題static int cpu_psci_cpu_boot(unsigned int cpu){    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;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 晋州市| 巴楚县| 延川县| 富民县| 旅游| 景泰县| 拜城县| 土默特左旗| 霞浦县| 柯坪县| 成都市| 甘洛县| 紫阳县| 玉溪市| 南康市| 兴义市| 宝丰县| 潼关县| 静海县| 合川市| 壶关县| 礼泉县| 兴安盟| 扶沟县| 上林县| 永年县| 沙河市| 加查县| 拉孜县| 娄底市| 安图县| 孟连| 泾川县| 田东县| 淳化县| 石景山区| 龙门县| 漳平市| 漳平市| 深州市| 晋城|