linux/sound/pci/asihpi/hpi6000.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/*****************************************************************************
   3
   4    AudioScience HPI driver
   5    Copyright (C) 1997-2011  AudioScience Inc. <support@audioscience.com>
   6
   7
   8Public declarations for DSP Proramming Interface to TI C6701
   9
  10Shared between hpi6000.c and DSP code
  11
  12(C) Copyright AudioScience Inc. 1998-2003
  13******************************************************************************/
  14
  15#ifndef _HPI6000_H_
  16#define _HPI6000_H_
  17
  18#define HPI_NMIXER_CONTROLS 200
  19
  20/*
  21 * Control caching is always supported in the HPI code.
  22 * The DSP should make sure that dwControlCacheSizeInBytes is initialized to 0
  23 * 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            0
  51#define HPI_HIF_SEND_MSG        1
  52#define HPI_HIF_GET_RESP        2
  53#define HPI_HIF_DATA_MASK       0x10
  54#define HPI_HIF_SEND_DATA       0x13
  55#define HPI_HIF_GET_DATA        0x14
  56#define HPI_HIF_SEND_DONE       5
  57#define HPI_HIF_RESET           9
  58
  59#endif                          /* _HPI6000_H_ */
  60