xref: /linux/drivers/net/ethernet/huawei/hinic3/hinic3_mgmt.c (revision ec2e0fb07d789976c601bec19ecced7a501c3705)
1 // SPDX-License-Identifier: GPL-2.0
2 // Copyright (c) Huawei Technologies Co., Ltd. 2025. All rights reserved.
3 
4 #include "hinic3_eqs.h"
5 #include "hinic3_hwdev.h"
6 #include "hinic3_mbox.h"
7 #include "hinic3_mgmt.h"
8 
9 void hinic3_flush_mgmt_workq(struct hinic3_hwdev *hwdev)
10 {
11 	if (hwdev->aeqs)
12 		flush_workqueue(hwdev->aeqs->workq);
13 }
14 
15 void hinic3_mgmt_msg_aeqe_handler(struct hinic3_hwdev *hwdev, u8 *header,
16 				  u8 size)
17 {
18 	if (MBOX_MSG_HEADER_GET(*(__force __le64 *)header, SOURCE) ==
19 				MBOX_MSG_FROM_MBOX)
20 		hinic3_mbox_func_aeqe_handler(hwdev, header, size);
21 }
22