66#include <linux/etherdevice.h>
77#include <linux/init.h>
88#include <linux/interrupt.h>
9+ #include <linux/irq.h>
910#include <linux/kernel.h>
1011#include <linux/module.h>
1112#include <linux/netdevice.h>
@@ -3780,7 +3781,7 @@ static int hclge_misc_irq_init(struct hclge_dev *hdev)
37803781 snprintf (hdev -> misc_vector .name , HNAE3_INT_NAME_LEN , "%s-misc-%s" ,
37813782 HCLGE_NAME , pci_name (hdev -> pdev ));
37823783 ret = request_irq (hdev -> misc_vector .vector_irq , hclge_misc_irq_handle ,
3783- 0 , hdev -> misc_vector .name , hdev );
3784+ IRQF_NO_AUTOEN , hdev -> misc_vector .name , hdev );
37843785 if (ret ) {
37853786 hclge_free_vector (hdev , 0 );
37863787 dev_err (& hdev -> pdev -> dev , "request misc irq(%d) fail\n" ,
@@ -11916,9 +11917,6 @@ static int hclge_init_ae_dev(struct hnae3_ae_dev *ae_dev)
1191611917
1191711918 hclge_init_rxd_adv_layout (hdev );
1191811919
11919- /* Enable MISC vector(vector0) */
11920- hclge_enable_vector (& hdev -> misc_vector , true);
11921-
1192211920 ret = hclge_init_wol (hdev );
1192311921 if (ret )
1192411922 dev_warn (& pdev -> dev ,
@@ -11931,6 +11929,10 @@ static int hclge_init_ae_dev(struct hnae3_ae_dev *ae_dev)
1193111929 hclge_state_init (hdev );
1193211930 hdev -> last_reset_time = jiffies ;
1193311931
11932+ /* Enable MISC vector(vector0) */
11933+ enable_irq (hdev -> misc_vector .vector_irq );
11934+ hclge_enable_vector (& hdev -> misc_vector , true);
11935+
1193411936 dev_info (& hdev -> pdev -> dev , "%s driver initialization finished.\n" ,
1193511937 HCLGE_DRIVER_NAME );
1193611938
@@ -12336,7 +12338,7 @@ static void hclge_uninit_ae_dev(struct hnae3_ae_dev *ae_dev)
1233612338
1233712339 /* Disable MISC vector(vector0) */
1233812340 hclge_enable_vector (& hdev -> misc_vector , false);
12339- synchronize_irq (hdev -> misc_vector .vector_irq );
12341+ disable_irq (hdev -> misc_vector .vector_irq );
1234012342
1234112343 /* Disable all hw interrupts */
1234212344 hclge_config_mac_tnl_int (hdev , false);
0 commit comments