/* * Data structures required for the firmware tracing support on Linux. * * Broadcom Proprietary and Confidential. Copyright (C) 2020, * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom; * the contents of this file may not be disclosed to third parties, * copied or duplicated in any form, in whole or in part, without * the prior written permission of Broadcom. * * * <> * * $Id$ */ #ifndef _DHD_FWTRACE_H #define _DHD_FWTRACE_H #ifdef BCMINTERNAL #ifdef DHD_FWTRACE /* firmware tracing */ #include #include #include #include #include #include #include #include #define TRACE_FILE_NAME_LEN 128u /* bytes */ #define TRACE_FILE_SIZE (1024u * 1024u) /* Trace file size is 1 MB */ /* Prototypes */ void dhd_event_logtrace_enqueue_fwtrace(dhd_pub_t *dhdp); int dhd_fwtrace_attach(dhd_pub_t *dhdinfo); int dhd_fwtrace_detach(dhd_pub_t *dhdinfo); void process_fw_trace_data(dhd_pub_t *dhdp); uint32 dhd_bus_get_bp_base(dhd_pub_t *dhdp); int fwtrace_init(dhd_pub_t *dhdp); int fw_trace_start(dhd_pub_t *dhdp, uint32 fw_trace_enabled); int fw_trace_stop(dhd_pub_t *dhdp); int handle_set_fwtrace(dhd_pub_t *dhdp, uint32 val); uint16 get_fw_trace_overflow_counter(dhd_pub_t *dhdp); int fwtrace_get_haddr(dhd_pub_t *dhdp, fwtrace_hostaddr_info_t *haddr_info); #endif /* DHD_FWTRACE */ #endif /* BCMINTERNAL */ #endif /* _DHD_FWTRACE_H */