1 /* 2 * Copyright (C) 2010-2014, 2016-2017 ARM Limited. All rights reserved. 3 * 4 * This program is free software and is provided to you under the terms of the GNU General Public License version 2 5 * as published by the Free Software Foundation, and any use by you of this program is subject to the terms of such GNU licence. 6 * 7 * A copy of the licence is included with the program, and can also be obtained from Free Software 8 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 9 */ 10 11 /** 12 * @file ump_ukk.h 13 * Defines the kernel-side interface of the user-kernel interface 14 */ 15 16 #ifndef __UMP_UKK_H__ 17 #define __UMP_UKK_H__ 18 19 #include "mali_osk.h" 20 #include "ump_uk_types.h" 21 22 23 #ifdef __cplusplus 24 extern "C" { 25 #endif 26 27 28 _mali_osk_errcode_t _ump_ukk_open(void **context); 29 30 _mali_osk_errcode_t _ump_ukk_close(void **context); 31 32 _mali_osk_errcode_t _ump_ukk_allocate(_ump_uk_allocate_s *user_interaction); 33 34 _mali_osk_errcode_t _ump_ukk_release(_ump_uk_release_s *release_info); 35 36 _mali_osk_errcode_t _ump_ukk_size_get(_ump_uk_size_get_s *user_interaction); 37 38 _mali_osk_errcode_t _ump_ukk_map_mem(_ump_uk_map_mem_s *args); 39 40 _mali_osk_errcode_t _ump_uku_get_api_version(_ump_uk_api_version_s *args); 41 42 void _ump_ukk_unmap_mem(_ump_uk_unmap_mem_s *args); 43 44 void _ump_ukk_msync(_ump_uk_msync_s *args); 45 46 void _ump_ukk_cache_operations_control(_ump_uk_cache_operations_control_s *args); 47 48 void _ump_ukk_switch_hw_usage(_ump_uk_switch_hw_usage_s *args); 49 50 void _ump_ukk_lock(_ump_uk_lock_s *args); 51 52 void _ump_ukk_unlock(_ump_uk_unlock_s *args); 53 54 u32 _ump_ukk_report_memory_usage(void); 55 56 #ifdef __cplusplus 57 } 58 #endif 59 60 #endif /* __UMP_UKK_H__ */ 61