#include <Hypervisor/hv_gic_config.h> also included by <Hypervisor/Hypervisor.h>

hv_gic_config.h

5 functions

functionhv_gic_config_create

OS_EXPORT API_AVAILABLE(macos(15.0)) OS_OBJECT_RETURNS_RETAINED OS_WARN_RESULT hv_gic_config_t hv_gic_config_create(
	void
)
@abstract Create a GIC configuration object @result hv_gic_config_t A new GIC configuration object. Release with os_release when no longer needed. @discussion Create the GIC configuration after the virtual machine has been created.

functionhv_gic_config_set_distributor_base

OS_EXPORT API_AVAILABLE(macos(15.0)) hv_return_t hv_gic_config_set_distributor_base(
	hv_gic_config_t config,
	hv_ipa_t distributor_base_address
)
@abstract Set the GIC distributor region base address. @param config GIC configuration object. @param distributor_base_address Guest physical address for distributor. @result HV_SUCCESS on success, an error code otherwise. @discussion Guest physical address for distributor base aligned to byte value returned by hv_gic_get_distributor_base_alignment.

functionhv_gic_config_set_redistributor_base

OS_EXPORT API_AVAILABLE(macos(15.0)) hv_return_t hv_gic_config_set_redistributor_base(
	hv_gic_config_t config,
	hv_ipa_t redistributor_base_address
)
@abstract Set the GIC redistributor region base address. @param config GIC configuration object. @param redistributor_base_address Guest physical address for redistributor. @result HV_SUCCESS on success, an error code otherwise. @discussion Guest physical address for redistributor base aligned to byte value returned by hv_gic_get_redistributor_base_alignment. The redistributor region will contain redistributors for all vCPUs supported by the virtual machine.

functionhv_gic_config_set_msi_region_base

OS_EXPORT API_AVAILABLE(macos(15.0)) hv_return_t hv_gic_config_set_msi_region_base(
	hv_gic_config_t config,
	hv_ipa_t msi_region_base_address
)
@abstract Set the GIC MSI region base address. @param config GIC configuration object. @param msi_region_base_address Guest physical address for MSI region. @result HV_SUCCESS on success, an error code otherwise. @discussion Guest physical address for MSI region base aligned to byte value returned by hv_gic_get_msi_region_base_alignment. For MSI support, you also need to set the interrupt range with hv_gic_config_set_msi_interrupt_range().

functionhv_gic_config_set_msi_interrupt_range

OS_EXPORT API_AVAILABLE(macos(15.0)) hv_return_t hv_gic_config_set_msi_interrupt_range(
	hv_gic_config_t config,
	uint32_t msi_intid_base,
	uint32_t msi_intid_count
)
@abstract Sets the range of MSIs supported. @param config GIC configuration object. @param msi_intid_base Lowest MSI interrupt number. @param msi_intid_count Number of MSIs. @result HV_SUCCESS on success, an error code otherwise. @discussion Configures the range of identifiers supported for MSIs. If it is outside of the range given by hv_gic_get_spi_interrupt_range() an error will be returned. For MSI support, you also need to set the region base address with hv_gic_config_set_msi_region_base().