Skip to content

Commit

Permalink
trace: move identical code to a common header
Browse files Browse the repository at this point in the history
Contents of platform/trace/trace.h on all cAVS platforms are
identical, replace them with a common header.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
  • Loading branch information
lyakh authored and lgirdwood committed Dec 16, 2021
1 parent 2bd41aa commit afac44a
Show file tree
Hide file tree
Showing 5 changed files with 45 additions and 84 deletions.
22 changes: 1 addition & 21 deletions src/platform/apollolake/include/platform/trace/trace.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,27 +10,7 @@
#ifndef __PLATFORM_TRACE_TRACE_H__
#define __PLATFORM_TRACE_TRACE_H__

#include <sof/lib/cpu.h>
#include <sof/lib/mailbox.h>
#include <sof/lib/memory.h>
#include <stdint.h>

#define PLATFORM_TRACEP_SECONDARY_CORE(x) \
(SRAM_REG_FW_TRACEP_SECONDARY_CORE_BASE + ((x) - 1) * 0x4)

/* Platform defined trace code */
static inline void platform_trace_point(uint32_t x)
{
int cpu = cpu_get_id();
uint32_t offset;

if (cpu == PLATFORM_PRIMARY_CORE_ID)
offset = SRAM_REG_FW_TRACEP;
else
offset = PLATFORM_TRACEP_SECONDARY_CORE(cpu);

mailbox_sw_reg_write(offset, x);
}
#include <cavs/trace/trace.h>

#endif /* __PLATFORM_TRACE_TRACE_H__ */

Expand Down
22 changes: 1 addition & 21 deletions src/platform/cannonlake/include/platform/trace/trace.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,27 +10,7 @@
#ifndef __PLATFORM_TRACE_TRACE_H__
#define __PLATFORM_TRACE_TRACE_H__

#include <sof/lib/cpu.h>
#include <sof/lib/mailbox.h>
#include <sof/lib/memory.h>
#include <stdint.h>

#define PLATFORM_TRACEP_SECONDARY_CORE(x) \
(SRAM_REG_FW_TRACEP_SECONDARY_CORE_BASE + ((x) - 1) * 0x4)

/* Platform defined trace code */
static inline void platform_trace_point(uint32_t x)
{
int cpu = cpu_get_id();
uint32_t offset;

if (cpu == PLATFORM_PRIMARY_CORE_ID)
offset = SRAM_REG_FW_TRACEP;
else
offset = PLATFORM_TRACEP_SECONDARY_CORE(cpu);

mailbox_sw_reg_write(offset, x);
}
#include <cavs/trace/trace.h>

#endif /* __PLATFORM_TRACE_TRACE_H__ */

Expand Down
22 changes: 1 addition & 21 deletions src/platform/icelake/include/platform/trace/trace.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,27 +10,7 @@
#ifndef __PLATFORM_TRACE_TRACE_H__
#define __PLATFORM_TRACE_TRACE_H__

#include <sof/lib/cpu.h>
#include <sof/lib/mailbox.h>
#include <sof/lib/memory.h>
#include <stdint.h>

#define PLATFORM_TRACEP_SECONDARY_CORE(x) \
(SRAM_REG_FW_TRACEP_SECONDARY_CORE_BASE + ((x) - 1) * 0x4)

/* Platform defined trace code */
static inline void platform_trace_point(uint32_t x)
{
int cpu = cpu_get_id();
uint32_t offset;

if (cpu == PLATFORM_PRIMARY_CORE_ID)
offset = SRAM_REG_FW_TRACEP;
else
offset = PLATFORM_TRACEP_SECONDARY_CORE(cpu);

mailbox_sw_reg_write(offset, x);
}
#include <cavs/trace/trace.h>

#endif /* __PLATFORM_TRACE_TRACE_H__ */

Expand Down
41 changes: 41 additions & 0 deletions src/platform/intel/cavs/include/cavs/trace/trace.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
/* SPDX-License-Identifier: BSD-3-Clause
*
* Copyright(c) 2019 Intel Corporation. All rights reserved.
*
* Author: Tomasz Lauda <tomasz.lauda@linux.intel.com>
*/

#ifdef __PLATFORM_TRACE_TRACE_H__

#ifndef __CAVS_TRACE_TRACE_H__
#define __CAVS_TRACE_TRACE_H__

#include <sof/lib/cpu.h>
#include <sof/lib/mailbox.h>
#include <sof/lib/memory.h>
#include <stdint.h>

#define PLATFORM_TRACEP_SECONDARY_CORE(x) \
(SRAM_REG_FW_TRACEP_SECONDARY_CORE_BASE + ((x) - 1) * 0x4)

/* Platform defined trace code */
static inline void platform_trace_point(uint32_t x)
{
int cpu = cpu_get_id();
uint32_t offset;

if (cpu == PLATFORM_PRIMARY_CORE_ID)
offset = SRAM_REG_FW_TRACEP;
else
offset = PLATFORM_TRACEP_SECONDARY_CORE(cpu);

mailbox_sw_reg_write(offset, x);
}

#endif /* __CAVS_TRACE_TRACE_H__ */

#else

#error "This file shouldn't be included from outside of platform/trace/trace.h"

#endif /* __PLATFORM_TRACE_H__ */
22 changes: 1 addition & 21 deletions src/platform/tigerlake/include/platform/trace/trace.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,27 +10,7 @@
#ifndef __PLATFORM_TRACE_TRACE_H__
#define __PLATFORM_TRACE_TRACE_H__

#include <sof/lib/cpu.h>
#include <sof/lib/mailbox.h>
#include <sof/lib/memory.h>
#include <stdint.h>

#define PLATFORM_TRACEP_SECONDARY_CORE(x) \
(SRAM_REG_FW_TRACEP_SECONDARY_CORE_BASE + ((x) - 1) * 0x4)

/* Platform defined trace code */
static inline void platform_trace_point(uint32_t x)
{
int cpu = cpu_get_id();
uint32_t offset;

if (cpu == PLATFORM_PRIMARY_CORE_ID)
offset = SRAM_REG_FW_TRACEP;
else
offset = PLATFORM_TRACEP_SECONDARY_CORE(cpu);

mailbox_sw_reg_write(offset, x);
}
#include <cavs/trace/trace.h>

#endif /* __PLATFORM_TRACE_TRACE_H__ */

Expand Down

0 comments on commit afac44a

Please sign in to comment.