xref: /OK3568_Linux_fs/kernel/drivers/gpu/arm/bifrost/mali_kbase_sync_common.c (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 // SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note
2 /*
3  *
4  * (C) COPYRIGHT 2012-2016, 2018-2021 ARM Limited. All rights reserved.
5  *
6  * This program is free software and is provided to you under the terms of the
7  * GNU General Public License version 2 as published by the Free Software
8  * Foundation, and any use by you of this program is subject to the terms
9  * of such GNU license.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, you can access it online at
18  * http://www.gnu.org/licenses/gpl-2.0.html.
19  *
20  */
21 
22 /*
23  * @file
24  *
25  * Common code for our explicit fence functionality
26  */
27 
28 #include <linux/workqueue.h>
29 #include "mali_kbase.h"
30 #include "mali_kbase_sync.h"
31 
32 #if !MALI_USE_CSF
kbase_sync_fence_wait_worker(struct work_struct * data)33 void kbase_sync_fence_wait_worker(struct work_struct *data)
34 {
35 	struct kbase_jd_atom *katom;
36 
37 	katom = container_of(data, struct kbase_jd_atom, work);
38 	kbase_soft_event_wait_callback(katom);
39 }
40 #endif /* !MALI_USE_CSF */
41 
kbase_sync_status_string(int status)42 const char *kbase_sync_status_string(int status)
43 {
44 	if (status == 0)
45 		return "active";
46 	else if (status > 0)
47 		return "signaled";
48 	else
49 		return "error";
50 }
51