60 lines · c
1/* SPDX-License-Identifier: GPL-2.0-only */2/*****************************************************************************3 4 AudioScience HPI driver5 Copyright (C) 1997-2011 AudioScience Inc. <support@audioscience.com>6 7 8Public declarations for DSP Proramming Interface to TI C67019 10Shared between hpi6000.c and DSP code11 12(C) Copyright AudioScience Inc. 1998-200313******************************************************************************/14 15#ifndef _HPI6000_H_16#define _HPI6000_H_17 18#define HPI_NMIXER_CONTROLS 20019 20/*21 * Control caching is always supported in the HPI code.22 * The DSP should make sure that dwControlCacheSizeInBytes is initialized to 023 * during boot to make it in-active.24 */25struct hpi_hif_6000 {26 u32 host_cmd;27 u32 dsp_ack;28 u32 address;29 u32 length;30 u32 message_buffer_address;31 u32 response_buffer_address;32 u32 dsp_number;33 u32 adapter_info;34 u32 control_cache_is_dirty;35 u32 control_cache_address;36 u32 control_cache_size_in_bytes;37 u32 control_cache_count;38};39 40#define HPI_HIF_PACK_ADAPTER_INFO(adapter, version_major, version_minor) \41 ((adapter << 16) | (version_major << 8) | version_minor)42#define HPI_HIF_ADAPTER_INFO_EXTRACT_ADAPTER(adapterinfo) \43 ((adapterinfo >> 16) & 0xffff)44#define HPI_HIF_ADAPTER_INFO_EXTRACT_HWVERSION_MAJOR(adapterinfo) \45 ((adapterinfo >> 8) & 0xff)46#define HPI_HIF_ADAPTER_INFO_EXTRACT_HWVERSION_MINOR(adapterinfo) \47 (adapterinfo & 0xff)48 49/* Command/status exchanged between host and DSP */50#define HPI_HIF_IDLE 051#define HPI_HIF_SEND_MSG 152#define HPI_HIF_GET_RESP 253#define HPI_HIF_DATA_MASK 0x1054#define HPI_HIF_SEND_DATA 0x1355#define HPI_HIF_GET_DATA 0x1456#define HPI_HIF_SEND_DONE 557#define HPI_HIF_RESET 958 59#endif /* _HPI6000_H_ */60