
The kernel-doc script identified a large number of documentation issues in the QDF. A series of patches has already fixed many of the issues, so fix most of the remaining ones. Note that the QDF IPA abstraction still has issues, but it is under rework, so not trying to clean it up until after the rework is complete. Change-Id: I10c33e341cb6b46e0f8ada99069616d450c07189 CRs-Fixed: 3406197
178 行
4.9 KiB
C
178 行
4.9 KiB
C
/*
|
|
* Copyright (c) 2018-2021 The Linux Foundation. All rights reserved.
|
|
* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
|
*
|
|
* Permission to use, copy, modify, and/or distribute this software for
|
|
* any purpose with or without fee is hereby granted, provided that the
|
|
* above copyright notice and this permission notice appear in all
|
|
* copies.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
|
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
|
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
|
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
|
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
|
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
* PERFORMANCE OF THIS SOFTWARE.
|
|
*/
|
|
|
|
/**
|
|
* DOC: qdf_dev
|
|
* QCA driver framework (QDF) device management APIs
|
|
*/
|
|
|
|
#if !defined(__QDF_DEV_H)
|
|
#define __QDF_DEV_H
|
|
|
|
/* Include Files */
|
|
#include <qdf_types.h>
|
|
#include "i_qdf_dev.h"
|
|
|
|
#define qdf_cpumask_pr_args(maskp) __qdf_cpumask_pr_args(maskp)
|
|
#define qdf_for_each_possible_cpu(cpu) __qdf_for_each_possible_cpu(cpu)
|
|
#define qdf_for_each_online_cpu(cpu) __qdf_for_each_online_cpu(cpu)
|
|
#define qdf_for_each_cpu(cpu, maskp) __qdf_for_each_cpu(cpu, maskp)
|
|
#define qdf_for_each_cpu_not(cpu, maskp) \
|
|
__qdf_for_each_cpu_not(cpu, maskp)
|
|
|
|
#ifdef ENHANCED_OS_ABSTRACTION
|
|
/**
|
|
* qdf_dev_alloc_mem() - allocate memory
|
|
* @qdfdev: Device handle
|
|
* @mrptr: Pointer to the allocated memory
|
|
* @reqsize: Allocation request in bytes
|
|
* @mask: Property mask to be associated to the allocated memory
|
|
*
|
|
* This function will acquire memory to be associated with a device
|
|
*
|
|
* Return: QDF_STATUS_SUCCESS on success
|
|
*/
|
|
QDF_STATUS
|
|
qdf_dev_alloc_mem(struct qdf_dev *qdfdev, struct qdf_devm **mrptr,
|
|
uint32_t reqsize, uint32_t mask);
|
|
|
|
/**
|
|
* qdf_dev_release_mem() - release memory
|
|
* @qdfdev: Device handle
|
|
* @mrptr: Pointer to the allocated memory
|
|
*
|
|
* This function will acquire memory to be associated with a device
|
|
*
|
|
* Return: QDF_STATUS_SUCCESS on success
|
|
*/
|
|
QDF_STATUS
|
|
qdf_dev_release_mem(struct qdf_dev *qdfdev, struct qdf_devm *mrptr);
|
|
|
|
/**
|
|
* qdf_dev_modify_irq_status() - modify irq
|
|
* @irnum: irq number
|
|
* @cmask: Bitmap to be cleared for the property mask
|
|
* @smask: Bitmap to be set for the property mask
|
|
*
|
|
* This function will acquire memory to be associated with a device
|
|
*
|
|
* Return: QDF_STATUS_SUCCESS on success
|
|
*/
|
|
QDF_STATUS
|
|
qdf_dev_modify_irq_status(uint32_t irnum, unsigned long cmask,
|
|
unsigned long smask);
|
|
|
|
/**
|
|
* qdf_dev_set_irq_affinity() - set irq affinity
|
|
* @irnum: irq number
|
|
* @cpmask: cpu affinity bitmap
|
|
*
|
|
* This function will set the affinity level for an irq
|
|
*
|
|
* Return: QDF_STATUS_SUCCESS on success
|
|
*/
|
|
QDF_STATUS
|
|
qdf_dev_set_irq_affinity(uint32_t irnum, struct qdf_cpu_mask *cpmask);
|
|
|
|
/**
|
|
* qdf_dev_set_irq_status_flags() - set irq status flags
|
|
* @irnum: irq number
|
|
* @set: status flag to set
|
|
*
|
|
* This function will set the status for an irq
|
|
*
|
|
* Return: QDF_STATUS_SUCCESS on success
|
|
*/
|
|
QDF_STATUS
|
|
qdf_dev_set_irq_status_flags(unsigned int irnum, unsigned long set);
|
|
|
|
/**
|
|
* qdf_dev_clear_irq_status_flags() - clear irq status flags
|
|
* @irnum: irq number
|
|
* @clr: status flag to clear
|
|
*
|
|
* This function will clear the status for an irq
|
|
*
|
|
* Return: QDF_STATUS_SUCCESS on success
|
|
*/
|
|
QDF_STATUS
|
|
qdf_dev_clear_irq_status_flags(unsigned int irnum, unsigned long clr);
|
|
#else
|
|
static inline QDF_STATUS
|
|
qdf_dev_alloc_mem(struct qdf_dev *qdfdev, struct qdf_devm **mrptr,
|
|
uint32_t reqsize, uint32_t mask)
|
|
{
|
|
return __qdf_dev_alloc_mem(qdfdev, mrptr, reqsize, mask);
|
|
}
|
|
|
|
static inline QDF_STATUS
|
|
qdf_dev_release_mem(struct qdf_dev *qdfdev, struct qdf_devm *mrptr)
|
|
{
|
|
return __qdf_dev_release_mem(qdfdev, mrptr);
|
|
}
|
|
|
|
static inline QDF_STATUS
|
|
qdf_dev_modify_irq_status(uint32_t irnum, unsigned long cmask,
|
|
unsigned long smask)
|
|
{
|
|
return __qdf_dev_modify_irq_status(irnum, cmask, smask);
|
|
}
|
|
|
|
static inline QDF_STATUS
|
|
qdf_dev_set_irq_affinity(uint32_t irnum, struct qdf_cpu_mask *cpmask)
|
|
{
|
|
return __qdf_dev_set_irq_affinity(irnum, cpmask);
|
|
}
|
|
|
|
static inline QDF_STATUS
|
|
qdf_dev_set_irq_status_flags(unsigned int irnum, unsigned long set)
|
|
{
|
|
return __qdf_dev_set_irq_status_flags(irnum, set);
|
|
}
|
|
|
|
static inline QDF_STATUS
|
|
qdf_dev_clear_irq_status_flags(unsigned int irnum, unsigned long clr)
|
|
{
|
|
return __qdf_dev_clear_irq_status_flags(irnum, clr);
|
|
}
|
|
#endif
|
|
|
|
static inline int qdf_topology_physical_package_id(unsigned int cpu)
|
|
{
|
|
return __qdf_topology_physical_package_id(cpu);
|
|
}
|
|
|
|
static inline int qdf_cpumask_subset(qdf_cpu_mask *srcp1,
|
|
const qdf_cpu_mask *srcp2)
|
|
{
|
|
return __qdf_cpumask_subset(srcp1, srcp2);
|
|
}
|
|
|
|
static inline int qdf_cpumask_intersects(qdf_cpu_mask *srcp1,
|
|
const qdf_cpu_mask *srcp2)
|
|
{
|
|
return __qdf_cpumask_intersects(srcp1, srcp2);
|
|
}
|
|
|
|
static inline int qdf_core_ctl_set_boost(bool boost)
|
|
{
|
|
return __qdf_core_ctl_set_boost(boost);
|
|
}
|
|
#endif /* __QDF_DEV_H */
|