* Copyright (c) Huawei Technologies Co., Ltd. 2025. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#ifndef KA_KERNEL_DEF_PUB_H
#define KA_KERNEL_DEF_PUB_H
#include <linux/pci.h>
#include <linux/module.h>
#define KA_MODULE_INIT __init
#define KA_MODULE_EXIT __exit
#define KA_PCI_VDEVICE(vend, dev) PCI_VDEVICE(vend, dev)
#define KA_PCI_DEVICE(vend,dev) PCI_DEVICE(vend,dev)
#define KA_PCI_ANY_ID PCI_ANY_ID
#define KA_THIS_MODULE THIS_MODULE
#define ka_module_init(x) module_init(x)
#define ka_module_exit(x) module_exit(x)
#define ka_module_param(name, type, perm) module_param(name, type, perm)
#define ka_module_param_array(name, type, nump, perm) module_param_array(name, type, nump, perm)
#define KA_MODULE_PARM_DESC(_parm, desc) MODULE_PARM_DESC(_parm, desc)
#define KA_MODULE_LICENSE(_license) MODULE_LICENSE(_license)
#define KA_MODULE_DESCRIPTION(_description) MODULE_DESCRIPTION(_description)
#define KA_MODULE_DEVICE_TABLE(type, name) MODULE_DEVICE_TABLE(type, name)
#define KA_MODULE_SOFTDEP(_softdep) MODULE_SOFTDEP(_softdep)
#define KA_MODULE_AUTHOR(_author) MODULE_AUTHOR(_author)
#define KA_MODULE_VERSION(_version) MODULE_VERSION(_version)
#define KA_MODULE_INFO(tag, info) MODULE_INFO(tag, info)
#define KA_EXPORT_SYMBOL(sym) EXPORT_SYMBOL(sym)
#define KA_EXPORT_SYMBOL_GPL(sym) EXPORT_SYMBOL_GPL(sym)
#endif