162306a36Sopenharmony_ci/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */ 262306a36Sopenharmony_ci 362306a36Sopenharmony_ci#ifndef __IMX_COMMON_H__ 462306a36Sopenharmony_ci#define __IMX_COMMON_H__ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci#include <linux/clk.h> 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#define EXCEPT_MAX_HDR_SIZE 0x400 962306a36Sopenharmony_ci#define IMX8_STACK_DUMP_SIZE 32 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_civoid imx8_get_registers(struct snd_sof_dev *sdev, 1262306a36Sopenharmony_ci struct sof_ipc_dsp_oops_xtensa *xoops, 1362306a36Sopenharmony_ci struct sof_ipc_panic_info *panic_info, 1462306a36Sopenharmony_ci u32 *stack, size_t stack_words); 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_civoid imx8_dump(struct snd_sof_dev *sdev, u32 flags); 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_cistruct imx_clocks { 1962306a36Sopenharmony_ci struct clk_bulk_data *dsp_clks; 2062306a36Sopenharmony_ci int num_dsp_clks; 2162306a36Sopenharmony_ci}; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ciint imx8_parse_clocks(struct snd_sof_dev *sdev, struct imx_clocks *clks); 2462306a36Sopenharmony_ciint imx8_enable_clocks(struct snd_sof_dev *sdev, struct imx_clocks *clks); 2562306a36Sopenharmony_civoid imx8_disable_clocks(struct snd_sof_dev *sdev, struct imx_clocks *clks); 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci#endif 28