Files
kernel_common_drivers/include/linux/amlogic/debug_irqflags.h
T
Hanjie Lin caa8b668c5 debug: gki optimize [2/4]
PD#SWPL-99365

Problem:
gki optimize

Solution:
1, code optimize
2, watchdog_hld to ko

Verify:
sc2_ah212

Change-Id: Ibb1b16bd61d794defb39d53f17ad86179ba4a661
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
2022-12-27 04:32:55 -08:00

44 lines
1.3 KiB
C

/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
/*
* Copyright (c) 2019 Amlogic, Inc. All rights reserved.
*/
#ifndef __AMLOGIC_DEBUG_IRQFLAGS_H
#define __AMLOGIC_DEBUG_IRQFLAGS_H
typedef void (*irq_trace_fn_t)(unsigned long flags);
extern irq_trace_fn_t irq_trace_start_hook;
extern irq_trace_fn_t irq_trace_stop_hook;
void irq_trace_start_gki_builtin(unsigned long flags);
void irq_trace_stop_gki_builtin(unsigned long flags);
static inline void __nocfi irq_trace_start_glue(unsigned long flags)
{
#if defined(CONFIG_AMLOGIC_DEBUG) || (defined(CONFIG_AMLOGIC_DEBUG_MODULE) && defined(MODULE))
/* builtin mode or gki mode build with module */
if (irq_trace_start_hook)
irq_trace_start_hook(flags);
#elif defined(CONFIG_AMLOGIC_BGKI_DEBUG_MISC)
/* gki mode build with builtin */
irq_trace_start_gki_builtin(flags);
#endif
}
static inline void __nocfi irq_trace_stop_glue(unsigned long flags)
{
#if defined(CONFIG_AMLOGIC_DEBUG) || (defined(CONFIG_AMLOGIC_DEBUG_MODULE) && defined(MODULE))
/* builtin mode or gki mode build with module */
if (irq_trace_stop_hook)
irq_trace_stop_hook(flags);
#elif defined(CONFIG_AMLOGIC_BGKI_DEBUG_MISC)
/* gki mode build with builtin */
irq_trace_stop_gki_builtin(flags);
#endif
}
void set_lockup_hook(void (*lockup_hook)(int cpu));
#endif