---
title: "hv_gic_config_set_msi_interrupt_range(_:_:_:)"
framework: Hypervisor
role: symbol
role_heading: Function
platforms: [macOS 15.0+]
path: "hypervisor/hv_gic_config_set_msi_interrupt_range(_:_:_:)"
---

# hv_gic_config_set_msi_interrupt_range(_:_:_:)

Sets the range of message signaled interrupts (MSIs) the generic interrupt controller supports.

## Declaration

```swift
func hv_gic_config_set_msi_interrupt_range(_ config: hv_gic_config_t, _ msi_intid_base: UInt32, _ msi_intid_count: UInt32) -> hv_return_t
```

## Parameters

- `config`: A generic interrupt controller (GIC) configuration object.
- `msi_intid_base`: The lowest MSI interrupt number.
- `msi_intid_count`: Number of message signaled interrupts.

## Return Value

Return Value HV_SUCCESS on success; otherwise, an error code.

## Discussion

Discussion Use this method to configure the range of identifiers supported for MSIs. If it’s outside of the range given by hv_gic_get_spi_interrupt_range(_:_:), the method returns an error. Set the region base address with hv_gic_config_set_msi_region_base(_:_:).

## See Also

### Setting the GIC device configuration

- [hv_gic_config_create()](hypervisor/hv_gic_config_create().md)
- [hv_gic_config_set_distributor_base(_:_:)](hypervisor/hv_gic_config_set_distributor_base(_:_:).md)
- [hv_gic_config_set_redistributor_base(_:_:)](hypervisor/hv_gic_config_set_redistributor_base(_:_:).md)
- [hv_gic_get_redistributor_base(_:_:)](hypervisor/hv_gic_get_redistributor_base(_:_:).md)
- [hv_gic_config_set_msi_region_base(_:_:)](hypervisor/hv_gic_config_set_msi_region_base(_:_:).md)
- [OS_hv_gic_config](hypervisor/os_hv_gic_config.md)
- [hv_gic_config_t](hypervisor/hv_gic_config_t.md)
