@@ -149,7 +149,7 @@ struct mv_xor_v2_descriptor {
149
149
* @desc_size: HW descriptor size
150
150
* @npendings: number of pending descriptors (for which tx_submit has
151
151
* @hw_queue_idx: HW queue index
152
- * @msi_desc: local interrupt descriptor information
152
+ * @irq: The Linux interrupt number
153
153
* been called, but not yet issue_pending)
154
154
*/
155
155
struct mv_xor_v2_device {
@@ -168,7 +168,7 @@ struct mv_xor_v2_device {
168
168
int desc_size ;
169
169
unsigned int npendings ;
170
170
unsigned int hw_queue_idx ;
171
- struct msi_desc * msi_desc ;
171
+ unsigned int irq ;
172
172
};
173
173
174
174
/**
@@ -718,7 +718,6 @@ static int mv_xor_v2_probe(struct platform_device *pdev)
718
718
int i , ret = 0 ;
719
719
struct dma_device * dma_dev ;
720
720
struct mv_xor_v2_sw_desc * sw_desc ;
721
- struct msi_desc * msi_desc ;
722
721
723
722
BUILD_BUG_ON (sizeof (struct mv_xor_v2_descriptor ) !=
724
723
MV_XOR_V2_EXT_DESC_SIZE );
@@ -770,14 +769,9 @@ static int mv_xor_v2_probe(struct platform_device *pdev)
770
769
if (ret )
771
770
goto disable_clk ;
772
771
773
- msi_desc = first_msi_entry (& pdev -> dev );
774
- if (!msi_desc ) {
775
- ret = - ENODEV ;
776
- goto free_msi_irqs ;
777
- }
778
- xor_dev -> msi_desc = msi_desc ;
772
+ xor_dev -> irq = msi_get_virq (& pdev -> dev , 0 );
779
773
780
- ret = devm_request_irq (& pdev -> dev , msi_desc -> irq ,
774
+ ret = devm_request_irq (& pdev -> dev , xor_dev -> irq ,
781
775
mv_xor_v2_interrupt_handler , 0 ,
782
776
dev_name (& pdev -> dev ), xor_dev );
783
777
if (ret )
@@ -892,7 +886,7 @@ static int mv_xor_v2_remove(struct platform_device *pdev)
892
886
xor_dev -> desc_size * MV_XOR_V2_DESC_NUM ,
893
887
xor_dev -> hw_desq_virt , xor_dev -> hw_desq );
894
888
895
- devm_free_irq (& pdev -> dev , xor_dev -> msi_desc -> irq , xor_dev );
889
+ devm_free_irq (& pdev -> dev , xor_dev -> irq , xor_dev );
896
890
897
891
platform_msi_domain_free_irqs (& pdev -> dev );
898
892
0 commit comments