77 lines
2.5 KiB
C
77 lines
2.5 KiB
C
/*****************************************************************************
|
|
|
|
(c) Cambridge Silicon Radio Limited 2011
|
|
All rights reserved and confidential information of CSR
|
|
|
|
Refer to LICENSE.txt included with this source for details
|
|
on the license terms.
|
|
|
|
*****************************************************************************/
|
|
|
|
/*
|
|
* ---------------------------------------------------------------------------
|
|
* FILE: csr_wifi_hip_unifi_udi.h
|
|
*
|
|
* PURPOSE:
|
|
* Declarations and definitions for the UniFi Debug Interface.
|
|
*
|
|
* ---------------------------------------------------------------------------
|
|
*/
|
|
#ifndef __CSR_WIFI_HIP_UNIFI_UDI_H__
|
|
#define __CSR_WIFI_HIP_UNIFI_UDI_H__
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include "csr_wifi_hip_unifi.h"
|
|
#include "csr_wifi_hip_signals.h"
|
|
|
|
|
|
/*
|
|
* Support for tracing the wire protocol.
|
|
*/
|
|
enum udi_log_direction
|
|
{
|
|
UDI_LOG_FROM_HOST = 0x0000,
|
|
UDI_LOG_TO_HOST = 0x0001
|
|
};
|
|
|
|
typedef void (*udi_func_t)(void *ospriv, u8 *sigdata,
|
|
u32 signal_len,
|
|
const bulk_data_param_t *bulkdata,
|
|
enum udi_log_direction dir);
|
|
|
|
CsrResult unifi_set_udi_hook(card_t *card, udi_func_t udi_fn);
|
|
CsrResult unifi_remove_udi_hook(card_t *card, udi_func_t udi_fn);
|
|
|
|
|
|
/*
|
|
* Function to print current status info to a string.
|
|
* This is used in the linux /proc interface and might be useful
|
|
* in other systems.
|
|
*/
|
|
s32 unifi_print_status(card_t *card, char *str, s32 *remain);
|
|
|
|
#define UNIFI_SNPRINTF_RET(buf_p, remain, written) \
|
|
do { \
|
|
if (written >= remain) { \
|
|
if (remain >= 2) { \
|
|
buf_p[remain - 2] = '\n'; \
|
|
buf_p[remain - 1] = 0; \
|
|
} \
|
|
buf_p += remain; \
|
|
remain = 0; \
|
|
} else if (written > 0) { \
|
|
buf_p += written; \
|
|
remain -= written; \
|
|
} \
|
|
} while (0)
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* __CSR_WIFI_HIP_UNIFI_UDI_H__ */
|