kernel-brax3-ubuntu-touch/drivers/misc/mediatek/adsp/adsp_platform.h
erascape f319b992b1 kernel-5.15: Initial import brax3 UT kernel
* halium configs enabled

Signed-off-by: erascape <erascape@proton.me>
2025-09-23 15:17:10 +00:00

49 lines
1.2 KiB
C

/* SPDX-License-Identifier: GPL-2.0 */
/*
* Copyright (c) 2019 MediaTek Inc.
*/
#ifndef __ADSP_PLATFORM_H__
#define __ADSP_PLATFORM_H__
struct adspsys_priv;
enum adsp_sharedmem_id {
ADSP_SHAREDMEM_BOOTUP_MARK = 0,
ADSP_SHAREDMEM_SYS_STATUS,
ADSP_SHAREDMEM_MPUINFO,
ADSP_SHAREDMEM_WAKELOCK,
ADSP_SHAREDMEM_IPCBUF,
ADSP_SHAREDMEM_C2C_0_BUF,
ADSP_SHAREDMEM_C2C_1_BUF,
ADSP_SHAREDMEM_C2C_BUFINFO,
ADSP_SHAREDMEM_TIMESYNC,
ADSP_SHAREDMEM_DVFSSYNC,
ADSP_SHAREDMEM_SLEEPSYNC,
ADSP_SHAREDMEM_BUS_MON_DUMP,
ADSP_SHAREDMEM_INFRA_BUS_DUMP,
ADSP_SHAREDMEM_LATMON_DUMP,
ADSP_SHAREDMEM_NUM,
};
/* platform method */
void adsp_mt_set_swirq(u32 cid);
u32 adsp_mt_check_swirq(u32 cid);
void adsp_mt_clr_sysirq(u32 cid);
void adsp_mt_clr_auidoirq(u32 cid);
void adsp_mt_clr_spm(u32 cid);
void adsp_mt_disable_wdt(u32 cid);
void adsp_mt_toggle_semaphore(u32 bit);
u32 adsp_mt_get_semaphore(u32 bit);
bool check_hifi_status(u32 mask);
bool is_adsp_axibus_idle(u32 *backup);
bool is_infrabus_timeout(void);
bool is_spm_semaphore_valid(void);
void adsp_mt_toggle_spm_semaphore(u32 bit);
u32 adsp_mt_get_spm_semaphore(u32 bit);
void adsp_hardware_init(struct adspsys_priv *adspsys);
#endif