Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-or-later */
0002 /*********************************************************************
0003  *
0004  * msnd_pinnacle.h
0005  *
0006  * Turtle Beach MultiSound Sound Card Driver for Linux
0007  *
0008  * Some parts of this header file were derived from the Turtle Beach
0009  * MultiSound Driver Development Kit.
0010  *
0011  * Copyright (C) 1998 Andrew Veliath
0012  * Copyright (C) 1993 Turtle Beach Systems, Inc.
0013  *
0014  ********************************************************************/
0015 #ifndef __MSND_PINNACLE_H
0016 #define __MSND_PINNACLE_H
0017 
0018 #define DSP_NUMIO               0x08
0019 
0020 #define IREG_LOGDEVICE              0x07
0021 #define IREG_ACTIVATE               0x30
0022 #define LD_ACTIVATE             0x01
0023 #define LD_DISACTIVATE              0x00
0024 #define IREG_EECONTROL              0x3F
0025 #define IREG_MEMBASEHI              0x40
0026 #define IREG_MEMBASELO              0x41
0027 #define IREG_MEMCONTROL             0x42
0028 #define IREG_MEMRANGEHI             0x43
0029 #define IREG_MEMRANGELO             0x44
0030 #define MEMTYPE_8BIT                0x00
0031 #define MEMTYPE_16BIT               0x02
0032 #define MEMTYPE_RANGE               0x00
0033 #define MEMTYPE_HIADDR              0x01
0034 #define IREG_IO0_BASEHI             0x60
0035 #define IREG_IO0_BASELO             0x61
0036 #define IREG_IO1_BASEHI             0x62
0037 #define IREG_IO1_BASELO             0x63
0038 #define IREG_IRQ_NUMBER             0x70
0039 #define IREG_IRQ_TYPE               0x71
0040 #define IRQTYPE_HIGH                0x02
0041 #define IRQTYPE_LOW             0x00
0042 #define IRQTYPE_LEVEL               0x01
0043 #define IRQTYPE_EDGE                0x00
0044 
0045 #define HP_DSPR                 0x04
0046 #define HP_BLKS                 0x04
0047 
0048 #define HPDSPRESET_OFF              2
0049 #define HPDSPRESET_ON               0
0050 
0051 #define HPBLKSEL_0              2
0052 #define HPBLKSEL_1              3
0053 
0054 #define HIMT_DAT_OFF                0x03
0055 
0056 #define HIDSP_PLAY_UNDER            0x00
0057 #define HIDSP_INT_PLAY_UNDER            0x01
0058 #define HIDSP_SSI_TX_UNDER              0x02
0059 #define HIDSP_RECQ_OVERFLOW         0x08
0060 #define HIDSP_INT_RECORD_OVER           0x09
0061 #define HIDSP_SSI_RX_OVERFLOW           0x0a
0062 
0063 #define HIDSP_MIDI_IN_OVER          0x10
0064 
0065 #define HIDSP_MIDI_FRAME_ERR            0x11
0066 #define HIDSP_MIDI_PARITY_ERR           0x12
0067 #define HIDSP_MIDI_OVERRUN_ERR          0x13
0068 
0069 #define HIDSP_INPUT_CLIPPING            0x20
0070 #define HIDSP_MIX_CLIPPING          0x30
0071 #define HIDSP_DAT_IN_OFF            0x21
0072 
0073 #define TIME_PRO_RESET_DONE         0x028A
0074 #define TIME_PRO_SYSEX              0x001E
0075 #define TIME_PRO_RESET              0x0032
0076 
0077 #define DAR_BUFF_SIZE               0x1000
0078 
0079 #define MIDQ_BUFF_SIZE              0x800
0080 #define DSPQ_BUFF_SIZE              0x5A0
0081 
0082 #define DSPQ_DATA_BUFF              0x7860
0083 
0084 #define MOP_WAVEHDR             0
0085 #define MOP_EXTOUT              1
0086 #define MOP_HWINIT              0xfe
0087 #define MOP_NONE                0xff
0088 #define MOP_MAX                 1
0089 
0090 #define MIP_EXTIN               0
0091 #define MIP_WAVEHDR             1
0092 #define MIP_HWINIT              0xfe
0093 #define MIP_MAX                 1
0094 
0095 /* Pinnacle/Fiji SMA Common Data */
0096 #define SMA_wCurrPlayBytes          0x0000
0097 #define SMA_wCurrRecordBytes            0x0002
0098 #define SMA_wCurrPlayVolLeft            0x0004
0099 #define SMA_wCurrPlayVolRight           0x0006
0100 #define SMA_wCurrInVolLeft          0x0008
0101 #define SMA_wCurrInVolRight         0x000a
0102 #define SMA_wCurrMHdrVolLeft            0x000c
0103 #define SMA_wCurrMHdrVolRight           0x000e
0104 #define SMA_dwCurrPlayPitch         0x0010
0105 #define SMA_dwCurrPlayRate          0x0014
0106 #define SMA_wCurrMIDIIOPatch            0x0018
0107 #define SMA_wCurrPlayFormat         0x001a
0108 #define SMA_wCurrPlaySampleSize         0x001c
0109 #define SMA_wCurrPlayChannels           0x001e
0110 #define SMA_wCurrPlaySampleRate         0x0020
0111 #define SMA_wCurrRecordFormat           0x0022
0112 #define SMA_wCurrRecordSampleSize       0x0024
0113 #define SMA_wCurrRecordChannels         0x0026
0114 #define SMA_wCurrRecordSampleRate       0x0028
0115 #define SMA_wCurrDSPStatusFlags         0x002a
0116 #define SMA_wCurrHostStatusFlags        0x002c
0117 #define SMA_wCurrInputTagBits           0x002e
0118 #define SMA_wCurrLeftPeak           0x0030
0119 #define SMA_wCurrRightPeak          0x0032
0120 #define SMA_bMicPotPosLeft          0x0034
0121 #define SMA_bMicPotPosRight         0x0035
0122 #define SMA_bMicPotMaxLeft          0x0036
0123 #define SMA_bMicPotMaxRight         0x0037
0124 #define SMA_bInPotPosLeft           0x0038
0125 #define SMA_bInPotPosRight          0x0039
0126 #define SMA_bAuxPotPosLeft          0x003a
0127 #define SMA_bAuxPotPosRight         0x003b
0128 #define SMA_bInPotMaxLeft           0x003c
0129 #define SMA_bInPotMaxRight          0x003d
0130 #define SMA_bAuxPotMaxLeft          0x003e
0131 #define SMA_bAuxPotMaxRight         0x003f
0132 #define SMA_bInPotMaxMethod         0x0040
0133 #define SMA_bAuxPotMaxMethod            0x0041
0134 #define SMA_wCurrMastVolLeft            0x0042
0135 #define SMA_wCurrMastVolRight           0x0044
0136 #define SMA_wCalFreqAtoD            0x0046
0137 #define SMA_wCurrAuxVolLeft         0x0048
0138 #define SMA_wCurrAuxVolRight            0x004a
0139 #define SMA_wCurrPlay1VolLeft           0x004c
0140 #define SMA_wCurrPlay1VolRight          0x004e
0141 #define SMA_wCurrPlay2VolLeft           0x0050
0142 #define SMA_wCurrPlay2VolRight          0x0052
0143 #define SMA_wCurrPlay3VolLeft           0x0054
0144 #define SMA_wCurrPlay3VolRight          0x0056
0145 #define SMA_wCurrPlay4VolLeft           0x0058
0146 #define SMA_wCurrPlay4VolRight          0x005a
0147 #define SMA_wCurrPlay1PeakLeft          0x005c
0148 #define SMA_wCurrPlay1PeakRight         0x005e
0149 #define SMA_wCurrPlay2PeakLeft          0x0060
0150 #define SMA_wCurrPlay2PeakRight         0x0062
0151 #define SMA_wCurrPlay3PeakLeft          0x0064
0152 #define SMA_wCurrPlay3PeakRight         0x0066
0153 #define SMA_wCurrPlay4PeakLeft          0x0068
0154 #define SMA_wCurrPlay4PeakRight         0x006a
0155 #define SMA_wCurrPlayPeakLeft           0x006c
0156 #define SMA_wCurrPlayPeakRight          0x006e
0157 #define SMA_wCurrDATSR              0x0070
0158 #define SMA_wCurrDATRXCHNL          0x0072
0159 #define SMA_wCurrDATTXCHNL          0x0074
0160 #define SMA_wCurrDATRXRate          0x0076
0161 #define SMA_dwDSPPlayCount          0x0078
0162 #define SMA__size               0x007c
0163 
0164 #define INITCODEFILE        "turtlebeach/pndspini.bin"
0165 #define PERMCODEFILE        "turtlebeach/pndsperm.bin"
0166 #define LONGNAME        "MultiSound (Pinnacle/Fiji)"
0167 
0168 #endif /* __MSND_PINNACLE_H */