mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-09-22 09:17:58 +00:00
hv: passthrough: Change interrupt pin to uint32_t
-- Change the type from uint8_t to uint32_t -- Remove some typecast -- Change union source_id Tracked-On: #861 Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com> Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
committed by
Xie, Nanlin
parent
87afe65f86
commit
49166fc3ac
@@ -36,7 +36,7 @@
|
||||
* @pre vm != NULL
|
||||
*
|
||||
*/
|
||||
void ptirq_intx_ack(struct acrn_vm *vm, uint8_t virt_pin, uint8_t vpin_src);
|
||||
void ptirq_intx_ack(struct acrn_vm *vm, uint32_t virt_pin, uint32_t vpin_src);
|
||||
|
||||
/**
|
||||
* @brief MSI/MSI-x remapping for passthrough device.
|
||||
@@ -81,7 +81,7 @@ int32_t ptirq_msix_remap(struct acrn_vm *vm, uint16_t virt_bdf, uint16_t entry_n
|
||||
* @pre vm != NULL
|
||||
*
|
||||
*/
|
||||
int32_t ptirq_intx_pin_remap(struct acrn_vm *vm, uint8_t virt_pin, uint8_t vpin_src);
|
||||
int32_t ptirq_intx_pin_remap(struct acrn_vm *vm, uint32_t virt_pin, uint32_t vpin_src);
|
||||
|
||||
/**
|
||||
* @brief Add an interrupt remapping entry for INTx as pre-hold mapping.
|
||||
@@ -103,7 +103,7 @@ int32_t ptirq_intx_pin_remap(struct acrn_vm *vm, uint8_t virt_pin, uint8_t vpin_
|
||||
* @pre vm != NULL
|
||||
*
|
||||
*/
|
||||
int32_t ptirq_add_intx_remapping(struct acrn_vm *vm, uint8_t virt_pin, uint8_t phys_pin, bool pic_pin);
|
||||
int32_t ptirq_add_intx_remapping(struct acrn_vm *vm, uint32_t virt_pin, uint32_t phys_pin, bool pic_pin);
|
||||
|
||||
/**
|
||||
* @brief Remove an interrupt remapping entry for INTx.
|
||||
@@ -119,7 +119,7 @@ int32_t ptirq_add_intx_remapping(struct acrn_vm *vm, uint8_t virt_pin, uint8_t p
|
||||
* @pre vm != NULL
|
||||
*
|
||||
*/
|
||||
void ptirq_remove_intx_remapping(struct acrn_vm *vm, uint8_t virt_pin, bool pic_pin);
|
||||
void ptirq_remove_intx_remapping(struct acrn_vm *vm, uint32_t virt_pin, bool pic_pin);
|
||||
|
||||
/**
|
||||
* @brief Add interrupt remapping entry/entries for MSI/MSI-x as pre-hold mapping.
|
||||
|
@@ -24,15 +24,15 @@ union source_id (name) = {.msi_id = {.bdf = (a), .entry_nr = (b)} }
|
||||
union source_id (name) = {.intx_id = {.pin = (a), .src = (b)} }
|
||||
|
||||
union source_id {
|
||||
uint32_t value;
|
||||
uint64_t value;
|
||||
struct {
|
||||
uint16_t bdf;
|
||||
uint16_t entry_nr;
|
||||
uint32_t reserved;
|
||||
} msi_id;
|
||||
struct {
|
||||
uint8_t pin;
|
||||
uint8_t src;
|
||||
uint16_t reserved;
|
||||
uint32_t pin;
|
||||
uint32_t src;
|
||||
} intx_id;
|
||||
};
|
||||
|
||||
|
@@ -246,30 +246,24 @@ struct hc_ptdev_irq {
|
||||
/** physical BDF of the ptdev */
|
||||
uint16_t phys_bdf;
|
||||
|
||||
union {
|
||||
union irq_source {
|
||||
/** INTX remapping info */
|
||||
struct {
|
||||
struct intx_info {
|
||||
/** virtual IOAPIC/PIC pin */
|
||||
uint8_t virt_pin;
|
||||
|
||||
/** Reserved */
|
||||
uint32_t reserved0:24;
|
||||
uint32_t virt_pin;
|
||||
|
||||
/** physical IOAPIC pin */
|
||||
uint8_t phys_pin;
|
||||
|
||||
/** Reserved */
|
||||
uint32_t reserved1:24;
|
||||
uint32_t phys_pin;
|
||||
|
||||
/** is virtual pin from PIC */
|
||||
bool pic_pin;
|
||||
|
||||
/** Reserved */
|
||||
uint32_t reserved2:24;
|
||||
uint8_t reserved[3];
|
||||
} intx;
|
||||
|
||||
/** MSIx remapping info */
|
||||
struct {
|
||||
struct msix_info {
|
||||
/** vector count of MSI/MSIX */
|
||||
uint32_t vector_cnt;
|
||||
} msix;
|
||||
|
Reference in New Issue
Block a user