do_fw_call_hvc(9)
π do_fw_call_hvc(9) β the kernel API manual, but make it make sense
okay so bestie, welcome to the manual page for do_fw_call_hvc, coming at you straight from the Kernel API Manual. this is the HVC flavour of the firmware-call life, and yes, there's a whole family of these, don't worry, we'll get to the ~SEE ALSO~ section and you will be fed. π
β¨ NAME β¨
do_fw_call_hvc β Call system-level platform management layer (HVC)
like, it rings the doorbell of the platform management layer. via HVC. that's the whole vibe. π
β¨ SYNOPSIS β¨
int do_fw_call_hvc (u32 *ret_payload , u32 num_args , ... );
look at her. int going in, arguments coming out. iconic signature tbh. π
β¨ ARGUMENTS β¨
ret_payloadβ Returned value array. this is where the good stuff comes back to you, bestie. it's a pointer, so she writes into your array, she doesn't hand you a new one. π«Άnum_argsβ Number of variable arguments should be<= 8. yes, eight is the cap, do not test her. π...β variable arguments. the little...that could. that's it, that's the argument.
β¨ DESCRIPTION β¨
Invoke platform management function via HVC HVC-based for communication through hypervisor (no direct communication with ATF).
okay so translate: you're going through the hypervisor with this one. this is the HVC route, which means it is not talking straight to ATF β no direct communication with ATF, periodt. if you wanted the direct line, that's a whole other function (spoiler: it's in SEE ALSO, keep scrolling π). π₯
β¨ RETURN β¨
Returns status, either success or error+reason.
that's the whole return story β success, or error plus a reason. so when it fails you actually get told why, which honestly? more than most people give you. π
β¨ SEE ALSO β¨
grab a snack, this list is long and it's giving extended universe. π
Kernel file ./drivers/firmware/xilinx/zynqmp.c, plus:
struct zynqmp_devinfo(9)struct pm_api_feature_data(9)zynqmp_pm_ret_code(9)do_fw_call_smc(9)zynqmp_pm_feature(9)zynqmp_pm_is_function_supported(9)zynqmp_pm_invoke_fw_fn(9)zynqmp_pm_invoke_fn(9)zynqmp_pm_get_api_version(9)zynqmp_pm_get_chipid(9)zynqmp_pm_get_family_info(9)zynqmp_pm_get_sip_svc_version(9)zynqmp_pm_get_trustzone_version(9)get_set_conduit_method(9)zynqmp_pm_query_data(9)zynqmp_pm_clock_enable(9)zynqmp_pm_clock_disable(9)zynqmp_pm_clock_getstate(9)zynqmp_pm_clock_setdivider(9)zynqmp_pm_clock_getdivider(9)zynqmp_pm_clock_setparent(9)zynqmp_pm_clock_getparent(9)zynqmp_pm_set_pll_frac_mode(9)zynqmp_pm_get_pll_frac_mode(9)zynqmp_pm_set_pll_frac_data(9)zynqmp_pm_get_pll_frac_data(9)zynqmp_pm_set_sd_tapdelay(9)zynqmp_pm_sd_dll_reset(9)zynqmp_pm_ospi_mux_select(9)zynqmp_pm_write_ggs(9)zynqmp_pm_read_ggs(9)zynqmp_pm_write_pggs(9)zynqmp_pm_read_pggs(9)zynqmp_pm_set_boot_health_status(9)zynqmp_pm_reset_assert(9)zynqmp_pm_reset_get_status(9)zynqmp_pm_fpga_load(9)zynqmp_pm_fpga_get_status(9)zynqmp_pm_fpga_get_config_status(9)zynqmp_pm_pinctrl_request(9)zynqmp_pm_pinctrl_release(9)zynqmp_pm_pinctrl_set_function(9)zynqmp_pm_pinctrl_get_config(9)zynqmp_pm_pinctrl_set_config(9)zynqmp_pm_bootmode_read(9)zynqmp_pm_bootmode_write(9)zynqmp_pm_init_finalize(9)zynqmp_pm_set_suspend_mode(9)zynqmp_pm_request_node(9)zynqmp_pm_release_node(9)zynqmp_pm_get_rpu_mode(9)zynqmp_pm_set_rpu_mode(9)zynqmp_pm_set_tcm_config(9)zynqmp_pm_get_node_status(9)zynqmp_pm_get_rpu_node_status(9)zynqmp_pm_force_pwrdwn(9)zynqmp_pm_request_wake(9)zynqmp_pm_start_rpu(9)zynqmp_pm_stop_rpu(9)zynqmp_pm_set_requirement(9)zynqmp_pm_load_pdi(9)zynqmp_pm_efuse_access(9)zynqmp_pm_register_notifier(9)zynqmp_pm_system_shutdown(9)zynqmp_pm_set_feature_config(9)zynqmp_pm_get_feature_config(9)zynqmp_pm_sec_read_reg(9)zynqmp_pm_sec_mask_write_reg(9)zynqmp_pm_set_sd_config(9)zynqmp_pm_set_gem_config(9)struct zynqmp_pm_shutdown_scope(9)zynqmp_pm_is_shutdown_scope_valid(9)zynqmp_clear_pm_state(9)
that's the whole friend group right there. no cap. π¦
heads up bestie: this page lives under ./drivers/firmware/xilinx, and it's dated October 2026 β so yes, she's from the future. act accordingly. β¨
and that's the page! mwah π stay hydrated, read your SEE ALSOs, and remember: <= 8 args. always. π§
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms