Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
hdsp.c File Reference
#include <linux/init.h>
#include <linux/delay.h>
#include <linux/interrupt.h>
#include <linux/pci.h>
#include <linux/firmware.h>
#include <linux/module.h>
#include <linux/math64.h>
#include <sound/core.h>
#include <sound/control.h>
#include <sound/pcm.h>
#include <sound/info.h>
#include <sound/asoundef.h>
#include <sound/rawmidi.h>
#include <sound/hwdep.h>
#include <sound/initval.h>
#include <sound/hdsp.h>
#include <asm/byteorder.h>
#include <asm/current.h>
#include <asm/io.h>

Go to the source code of this file.

Data Structures

struct  hdsp_9632_meters
 
struct  hdsp_midi
 
struct  hdsp
 

Macros

#define HDSP_MAX_CHANNELS   26
 
#define HDSP_MAX_DS_CHANNELS   14
 
#define HDSP_MAX_QS_CHANNELS   8
 
#define DIGIFACE_SS_CHANNELS   26
 
#define DIGIFACE_DS_CHANNELS   14
 
#define MULTIFACE_SS_CHANNELS   18
 
#define MULTIFACE_DS_CHANNELS   14
 
#define H9652_SS_CHANNELS   26
 
#define H9652_DS_CHANNELS   14
 
#define H9632_SS_CHANNELS   12
 
#define H9632_DS_CHANNELS   8
 
#define H9632_QS_CHANNELS   4
 
#define RPM_CHANNELS   6
 
#define HDSP_resetPointer   0
 
#define HDSP_freqReg   0
 
#define HDSP_outputBufferAddress   32
 
#define HDSP_inputBufferAddress   36
 
#define HDSP_controlRegister   64
 
#define HDSP_interruptConfirmation   96
 
#define HDSP_outputEnable   128
 
#define HDSP_control2Reg   256
 
#define HDSP_midiDataOut0   352
 
#define HDSP_midiDataOut1   356
 
#define HDSP_fifoData   368
 
#define HDSP_inputEnable   384
 
#define HDSP_statusRegister   0
 
#define HDSP_timecode   128
 
#define HDSP_status2Register   192
 
#define HDSP_midiDataIn0   360
 
#define HDSP_midiDataIn1   364
 
#define HDSP_midiStatusOut0   384
 
#define HDSP_midiStatusOut1   388
 
#define HDSP_midiStatusIn0   392
 
#define HDSP_midiStatusIn1   396
 
#define HDSP_fifoStatus   400
 
#define HDSP_playbackPeakLevel   4096 /* 26 * 32 bit values */
 
#define HDSP_inputPeakLevel   4224 /* 26 * 32 bit values */
 
#define HDSP_outputPeakLevel   4352 /* (26+2) * 32 bit values */
 
#define HDSP_playbackRmsLevel   4612 /* 26 * 64 bit values */
 
#define HDSP_inputRmsLevel   4868 /* 26 * 64 bit values */
 
#define HDSP_9652_peakBase   7164
 
#define HDSP_9652_rmsBase   4096
 
#define HDSP_9632_metersBase   4096
 
#define HDSP_IO_EXTENT   7168
 
#define HDSP_TMS   0x01
 
#define HDSP_TCK   0x02
 
#define HDSP_TDI   0x04
 
#define HDSP_JTAG   0x08
 
#define HDSP_PWDN   0x10
 
#define HDSP_PROGRAM   0x020
 
#define HDSP_CONFIG_MODE_0   0x040
 
#define HDSP_CONFIG_MODE_1   0x080
 
#define HDSP_VERSION_BIT   (0x100 | HDSP_S_LOAD)
 
#define HDSP_BIGENDIAN_MODE   0x200
 
#define HDSP_RD_MULTIPLE   0x400
 
#define HDSP_9652_ENABLE_MIXER   0x800
 
#define HDSP_TDO   0x10000000
 
#define HDSP_S_PROGRAM   (HDSP_PROGRAM|HDSP_CONFIG_MODE_0)
 
#define HDSP_S_LOAD   (HDSP_PROGRAM|HDSP_CONFIG_MODE_1)
 
#define HDSP_Start   (1<<0) /* start engine */
 
#define HDSP_Latency0   (1<<1) /* buffer size = 2^n where n is defined by Latency{2,1,0} */
 
#define HDSP_Latency1   (1<<2) /* [ see above ] */
 
#define HDSP_Latency2   (1<<3) /* [ see above ] */
 
#define HDSP_ClockModeMaster   (1<<4) /* 1=Master, 0=Slave/Autosync */
 
#define HDSP_AudioInterruptEnable   (1<<5) /* what do you think ? */
 
#define HDSP_Frequency0   (1<<6) /* 0=44.1kHz/88.2kHz/176.4kHz 1=48kHz/96kHz/192kHz */
 
#define HDSP_Frequency1   (1<<7) /* 0=32kHz/64kHz/128kHz */
 
#define HDSP_DoubleSpeed   (1<<8) /* 0=normal speed, 1=double speed */
 
#define HDSP_SPDIFProfessional   (1<<9) /* 0=consumer, 1=professional */
 
#define HDSP_SPDIFEmphasis   (1<<10) /* 0=none, 1=on */
 
#define HDSP_SPDIFNonAudio   (1<<11) /* 0=off, 1=on */
 
#define HDSP_SPDIFOpticalOut   (1<<12) /* 1=use 1st ADAT connector for SPDIF, 0=do not */
 
#define HDSP_SyncRef2   (1<<13)
 
#define HDSP_SPDIFInputSelect0   (1<<14)
 
#define HDSP_SPDIFInputSelect1   (1<<15)
 
#define HDSP_SyncRef0   (1<<16)
 
#define HDSP_SyncRef1   (1<<17)
 
#define HDSP_AnalogExtensionBoard   (1<<18) /* For H9632 cards */
 
#define HDSP_XLRBreakoutCable   (1<<20) /* For H9632 cards */
 
#define HDSP_Midi0InterruptEnable   (1<<22)
 
#define HDSP_Midi1InterruptEnable   (1<<23)
 
#define HDSP_LineOut   (1<<24)
 
#define HDSP_ADGain0   (1<<25) /* From here : H9632 specific */
 
#define HDSP_ADGain1   (1<<26)
 
#define HDSP_DAGain0   (1<<27)
 
#define HDSP_DAGain1   (1<<28)
 
#define HDSP_PhoneGain0   (1<<29)
 
#define HDSP_PhoneGain1   (1<<30)
 
#define HDSP_QuadSpeed   (1<<31)
 
#define HDSP_RPM_Inp12   0x04A00
 
#define HDSP_RPM_Inp12_Phon_6dB   0x00800 /* Dolby */
 
#define HDSP_RPM_Inp12_Phon_0dB   0x00000 /* .. */
 
#define HDSP_RPM_Inp12_Phon_n6dB   0x04000 /* inp_0 */
 
#define HDSP_RPM_Inp12_Line_0dB   0x04200 /* Dolby+PRO */
 
#define HDSP_RPM_Inp12_Line_n6dB   0x00200 /* PRO */
 
#define HDSP_RPM_Inp34   0x32000
 
#define HDSP_RPM_Inp34_Phon_6dB   0x20000 /* SyncRef1 */
 
#define HDSP_RPM_Inp34_Phon_0dB   0x00000 /* .. */
 
#define HDSP_RPM_Inp34_Phon_n6dB   0x02000 /* SyncRef2 */
 
#define HDSP_RPM_Inp34_Line_0dB   0x30000 /* SyncRef1+SyncRef0 */
 
#define HDSP_RPM_Inp34_Line_n6dB   0x10000 /* SyncRef0 */
 
#define HDSP_RPM_Bypass   0x01000
 
#define HDSP_RPM_Disconnect   0x00001
 
#define HDSP_ADGainMask   (HDSP_ADGain0|HDSP_ADGain1)
 
#define HDSP_ADGainMinus10dBV   HDSP_ADGainMask
 
#define HDSP_ADGainPlus4dBu   (HDSP_ADGain0)
 
#define HDSP_ADGainLowGain   0
 
#define HDSP_DAGainMask   (HDSP_DAGain0|HDSP_DAGain1)
 
#define HDSP_DAGainHighGain   HDSP_DAGainMask
 
#define HDSP_DAGainPlus4dBu   (HDSP_DAGain0)
 
#define HDSP_DAGainMinus10dBV   0
 
#define HDSP_PhoneGainMask   (HDSP_PhoneGain0|HDSP_PhoneGain1)
 
#define HDSP_PhoneGain0dB   HDSP_PhoneGainMask
 
#define HDSP_PhoneGainMinus6dB   (HDSP_PhoneGain0)
 
#define HDSP_PhoneGainMinus12dB   0
 
#define HDSP_LatencyMask   (HDSP_Latency0|HDSP_Latency1|HDSP_Latency2)
 
#define HDSP_FrequencyMask   (HDSP_Frequency0|HDSP_Frequency1|HDSP_DoubleSpeed|HDSP_QuadSpeed)
 
#define HDSP_SPDIFInputMask   (HDSP_SPDIFInputSelect0|HDSP_SPDIFInputSelect1)
 
#define HDSP_SPDIFInputADAT1   0
 
#define HDSP_SPDIFInputCoaxial   (HDSP_SPDIFInputSelect0)
 
#define HDSP_SPDIFInputCdrom   (HDSP_SPDIFInputSelect1)
 
#define HDSP_SPDIFInputAES   (HDSP_SPDIFInputSelect0|HDSP_SPDIFInputSelect1)
 
#define HDSP_SyncRefMask   (HDSP_SyncRef0|HDSP_SyncRef1|HDSP_SyncRef2)
 
#define HDSP_SyncRef_ADAT1   0
 
#define HDSP_SyncRef_ADAT2   (HDSP_SyncRef0)
 
#define HDSP_SyncRef_ADAT3   (HDSP_SyncRef1)
 
#define HDSP_SyncRef_SPDIF   (HDSP_SyncRef0|HDSP_SyncRef1)
 
#define HDSP_SyncRef_WORD   (HDSP_SyncRef2)
 
#define HDSP_SyncRef_ADAT_SYNC   (HDSP_SyncRef0|HDSP_SyncRef2)
 
#define HDSP_CLOCK_SOURCE_AUTOSYNC   0
 
#define HDSP_CLOCK_SOURCE_INTERNAL_32KHZ   1
 
#define HDSP_CLOCK_SOURCE_INTERNAL_44_1KHZ   2
 
#define HDSP_CLOCK_SOURCE_INTERNAL_48KHZ   3
 
#define HDSP_CLOCK_SOURCE_INTERNAL_64KHZ   4
 
#define HDSP_CLOCK_SOURCE_INTERNAL_88_2KHZ   5
 
#define HDSP_CLOCK_SOURCE_INTERNAL_96KHZ   6
 
#define HDSP_CLOCK_SOURCE_INTERNAL_128KHZ   7
 
#define HDSP_CLOCK_SOURCE_INTERNAL_176_4KHZ   8
 
#define HDSP_CLOCK_SOURCE_INTERNAL_192KHZ   9
 
#define HDSP_SYNC_FROM_WORD   0
 
#define HDSP_SYNC_FROM_SPDIF   1
 
#define HDSP_SYNC_FROM_ADAT1   2
 
#define HDSP_SYNC_FROM_ADAT_SYNC   3
 
#define HDSP_SYNC_FROM_ADAT2   4
 
#define HDSP_SYNC_FROM_ADAT3   5
 
#define HDSP_SYNC_CHECK_NO_LOCK   0
 
#define HDSP_SYNC_CHECK_LOCK   1
 
#define HDSP_SYNC_CHECK_SYNC   2
 
#define HDSP_AUTOSYNC_FROM_WORD   0
 
#define HDSP_AUTOSYNC_FROM_ADAT_SYNC   1
 
#define HDSP_AUTOSYNC_FROM_SPDIF   2
 
#define HDSP_AUTOSYNC_FROM_NONE   3
 
#define HDSP_AUTOSYNC_FROM_ADAT1   4
 
#define HDSP_AUTOSYNC_FROM_ADAT2   5
 
#define HDSP_AUTOSYNC_FROM_ADAT3   6
 
#define HDSP_SPDIFIN_OPTICAL   0 /* optical (ADAT1) */
 
#define HDSP_SPDIFIN_COAXIAL   1 /* coaxial (RCA) */
 
#define HDSP_SPDIFIN_INTERNAL   2 /* internal (CDROM) */
 
#define HDSP_SPDIFIN_AES   3 /* xlr for H9632 (AES)*/
 
#define HDSP_Frequency32KHz   HDSP_Frequency0
 
#define HDSP_Frequency44_1KHz   HDSP_Frequency1
 
#define HDSP_Frequency48KHz   (HDSP_Frequency1|HDSP_Frequency0)
 
#define HDSP_Frequency64KHz   (HDSP_DoubleSpeed|HDSP_Frequency0)
 
#define HDSP_Frequency88_2KHz   (HDSP_DoubleSpeed|HDSP_Frequency1)
 
#define HDSP_Frequency96KHz   (HDSP_DoubleSpeed|HDSP_Frequency1|HDSP_Frequency0)
 
#define HDSP_Frequency128KHz   (HDSP_QuadSpeed|HDSP_DoubleSpeed|HDSP_Frequency0)
 
#define HDSP_Frequency176_4KHz   (HDSP_QuadSpeed|HDSP_DoubleSpeed|HDSP_Frequency1)
 
#define HDSP_Frequency192KHz   (HDSP_QuadSpeed|HDSP_DoubleSpeed|HDSP_Frequency1|HDSP_Frequency0)
 
#define DDS_NUMERATOR   104857600000000ULL; /* = 2^20 * 10^8 */
 
#define hdsp_encode_latency(x)   (((x)<<1) & HDSP_LatencyMask)
 
#define hdsp_decode_latency(x)   (((x) & HDSP_LatencyMask)>>1)
 
#define hdsp_encode_spdif_in(x)   (((x)&0x3)<<14)
 
#define hdsp_decode_spdif_in(x)   (((x)>>14)&0x3)
 
#define HDSP_audioIRQPending   (1<<0)
 
#define HDSP_Lock2   (1<<1) /* this is for Digiface and H9652 */
 
#define HDSP_spdifFrequency3   HDSP_Lock2 /* this is for H9632 only */
 
#define HDSP_Lock1   (1<<2)
 
#define HDSP_Lock0   (1<<3)
 
#define HDSP_SPDIFSync   (1<<4)
 
#define HDSP_TimecodeLock   (1<<5)
 
#define HDSP_BufferPositionMask   0x000FFC0 /* Bit 6..15 : h/w buffer pointer */
 
#define HDSP_Sync2   (1<<16)
 
#define HDSP_Sync1   (1<<17)
 
#define HDSP_Sync0   (1<<18)
 
#define HDSP_DoubleSpeedStatus   (1<<19)
 
#define HDSP_ConfigError   (1<<20)
 
#define HDSP_DllError   (1<<21)
 
#define HDSP_spdifFrequency0   (1<<22)
 
#define HDSP_spdifFrequency1   (1<<23)
 
#define HDSP_spdifFrequency2   (1<<24)
 
#define HDSP_SPDIFErrorFlag   (1<<25)
 
#define HDSP_BufferID   (1<<26)
 
#define HDSP_TimecodeSync   (1<<27)
 
#define HDSP_AEBO   (1<<28) /* H9632 specific Analog Extension Boards */
 
#define HDSP_AEBI   (1<<29) /* 0 = present, 1 = absent */
 
#define HDSP_midi0IRQPending   (1<<30)
 
#define HDSP_midi1IRQPending   (1<<31)
 
#define HDSP_spdifFrequencyMask   (HDSP_spdifFrequency0|HDSP_spdifFrequency1|HDSP_spdifFrequency2)
 
#define HDSP_spdifFrequencyMask_9632
 
#define HDSP_spdifFrequency32KHz   (HDSP_spdifFrequency0)
 
#define HDSP_spdifFrequency44_1KHz   (HDSP_spdifFrequency1)
 
#define HDSP_spdifFrequency48KHz   (HDSP_spdifFrequency0|HDSP_spdifFrequency1)
 
#define HDSP_spdifFrequency64KHz   (HDSP_spdifFrequency2)
 
#define HDSP_spdifFrequency88_2KHz   (HDSP_spdifFrequency0|HDSP_spdifFrequency2)
 
#define HDSP_spdifFrequency96KHz   (HDSP_spdifFrequency2|HDSP_spdifFrequency1)
 
#define HDSP_spdifFrequency128KHz
 
#define HDSP_spdifFrequency176_4KHz   HDSP_spdifFrequency3
 
#define HDSP_spdifFrequency192KHz   (HDSP_spdifFrequency3|HDSP_spdifFrequency0)
 
#define HDSP_version0   (1<<0)
 
#define HDSP_version1   (1<<1)
 
#define HDSP_version2   (1<<2)
 
#define HDSP_wc_lock   (1<<3)
 
#define HDSP_wc_sync   (1<<4)
 
#define HDSP_inp_freq0   (1<<5)
 
#define HDSP_inp_freq1   (1<<6)
 
#define HDSP_inp_freq2   (1<<7)
 
#define HDSP_SelSyncRef0   (1<<8)
 
#define HDSP_SelSyncRef1   (1<<9)
 
#define HDSP_SelSyncRef2   (1<<10)
 
#define HDSP_wc_valid   (HDSP_wc_lock|HDSP_wc_sync)
 
#define HDSP_systemFrequencyMask   (HDSP_inp_freq0|HDSP_inp_freq1|HDSP_inp_freq2)
 
#define HDSP_systemFrequency32   (HDSP_inp_freq0)
 
#define HDSP_systemFrequency44_1   (HDSP_inp_freq1)
 
#define HDSP_systemFrequency48   (HDSP_inp_freq0|HDSP_inp_freq1)
 
#define HDSP_systemFrequency64   (HDSP_inp_freq2)
 
#define HDSP_systemFrequency88_2   (HDSP_inp_freq0|HDSP_inp_freq2)
 
#define HDSP_systemFrequency96   (HDSP_inp_freq1|HDSP_inp_freq2)
 
#define HDSP_SelSyncRefMask   (HDSP_SelSyncRef0|HDSP_SelSyncRef1|HDSP_SelSyncRef2)
 
#define HDSP_SelSyncRef_ADAT1   0
 
#define HDSP_SelSyncRef_ADAT2   (HDSP_SelSyncRef0)
 
#define HDSP_SelSyncRef_ADAT3   (HDSP_SelSyncRef1)
 
#define HDSP_SelSyncRef_SPDIF   (HDSP_SelSyncRef0|HDSP_SelSyncRef1)
 
#define HDSP_SelSyncRef_WORD   (HDSP_SelSyncRef2)
 
#define HDSP_SelSyncRef_ADAT_SYNC   (HDSP_SelSyncRef0|HDSP_SelSyncRef2)
 
#define HDSP_InitializationComplete   (1<<0)
 
#define HDSP_FirmwareLoaded   (1<<1)
 
#define HDSP_FirmwareCached   (1<<2)
 
#define HDSP_LONG_WAIT   5000
 
#define HDSP_SHORT_WAIT   30
 
#define UNITY_GAIN   32768
 
#define MINUS_INFINITY_GAIN   0
 
#define HDSP_CHANNEL_BUFFER_SAMPLES   (16*1024)
 
#define HDSP_CHANNEL_BUFFER_BYTES   (4*HDSP_CHANNEL_BUFFER_SAMPLES)
 
#define HDSP_DMA_AREA_BYTES   ((HDSP_MAX_CHANNELS+1) * HDSP_CHANNEL_BUFFER_BYTES)
 
#define HDSP_DMA_AREA_KILOBYTES   (HDSP_DMA_AREA_BYTES/1024)
 
#define HDSP_SPDIF_IN(xname, xindex)
 
#define HDSP_SPDIF_OUT(xname, xindex)
 
#define snd_hdsp_info_spdif_bits   snd_ctl_boolean_mono_info
 
#define HDSP_SPDIF_PROFESSIONAL(xname, xindex)
 
#define HDSP_SPDIF_EMPHASIS(xname, xindex)
 
#define HDSP_SPDIF_NON_AUDIO(xname, xindex)
 
#define HDSP_SPDIF_SAMPLE_RATE(xname, xindex)
 
#define HDSP_SYSTEM_SAMPLE_RATE(xname, xindex)
 
#define HDSP_AUTOSYNC_SAMPLE_RATE(xname, xindex)
 
#define HDSP_SYSTEM_CLOCK_MODE(xname, xindex)
 
#define HDSP_CLOCK_SOURCE(xname, xindex)
 
#define snd_hdsp_info_clock_source_lock   snd_ctl_boolean_mono_info
 
#define HDSP_DA_GAIN(xname, xindex)
 
#define HDSP_AD_GAIN(xname, xindex)
 
#define HDSP_PHONE_GAIN(xname, xindex)
 
#define HDSP_XLR_BREAKOUT_CABLE(xname, xindex)
 
#define snd_hdsp_info_xlr_breakout_cable   snd_ctl_boolean_mono_info
 
#define HDSP_AEB(xname, xindex)
 
#define snd_hdsp_info_aeb   snd_ctl_boolean_mono_info
 
#define HDSP_PREF_SYNC_REF(xname, xindex)
 
#define HDSP_AUTOSYNC_REF(xname, xindex)
 
#define HDSP_LINE_OUT(xname, xindex)
 
#define snd_hdsp_info_line_out   snd_ctl_boolean_mono_info
 
#define HDSP_PRECISE_POINTER(xname, xindex)
 
#define snd_hdsp_info_precise_pointer   snd_ctl_boolean_mono_info
 
#define HDSP_USE_MIDI_TASKLET(xname, xindex)
 
#define snd_hdsp_info_use_midi_tasklet   snd_ctl_boolean_mono_info
 
#define HDSP_MIXER(xname, xindex)
 
#define HDSP_WC_SYNC_CHECK(xname, xindex)
 
#define HDSP_SPDIF_SYNC_CHECK(xname, xindex)
 
#define HDSP_ADATSYNC_SYNC_CHECK(xname, xindex)
 
#define HDSP_ADAT_SYNC_CHECK
 
#define HDSP_DDS_OFFSET(xname, xindex)
 

Functions

 module_param_array (index, int, NULL, 0444)
 
 MODULE_PARM_DESC (index,"Index value for RME Hammerfall DSP interface.")
 
 module_param_array (id, charp, NULL, 0444)
 
 MODULE_PARM_DESC (id,"ID string for RME Hammerfall DSP interface.")
 
 module_param_array (enable, bool, NULL, 0444)
 
 MODULE_PARM_DESC (enable,"Enable/disable specific Hammerfall DSP soundcards.")
 
 MODULE_AUTHOR ("Paul Davis <[email protected]>, Marcus Andersson, Thomas Charbonnel <[email protected]>")
 
 MODULE_DESCRIPTION ("RME Hammerfall DSP")
 
 MODULE_LICENSE ("GPL")
 
 MODULE_SUPPORTED_DEVICE ("{{RME Hammerfall-DSP},""{RME HDSP-9652},""{RME HDSP-9632}}")
 
 MODULE_DEVICE_TABLE (pci, snd_hdsp_ids)
 
 module_pci_driver (hdsp_driver)
 

Macro Definition Documentation

#define DDS_NUMERATOR   104857600000000ULL; /* = 2^20 * 10^8 */

Definition at line 306 of file hdsp.c.

#define DIGIFACE_DS_CHANNELS   14

Definition at line 74 of file hdsp.c.

#define DIGIFACE_SS_CHANNELS   26

Definition at line 73 of file hdsp.c.

#define H9632_DS_CHANNELS   8

Definition at line 83 of file hdsp.c.

#define H9632_QS_CHANNELS   4

Definition at line 84 of file hdsp.c.

#define H9632_SS_CHANNELS   12

Definition at line 82 of file hdsp.c.

#define H9652_DS_CHANNELS   14

Definition at line 78 of file hdsp.c.

#define H9652_SS_CHANNELS   26

Definition at line 77 of file hdsp.c.

#define HDSP_9632_metersBase   4096

Definition at line 140 of file hdsp.c.

#define HDSP_9652_ENABLE_MIXER   0x800

Definition at line 157 of file hdsp.c.

#define HDSP_9652_peakBase   7164

Definition at line 136 of file hdsp.c.

#define HDSP_9652_rmsBase   4096

Definition at line 137 of file hdsp.c.

#define HDSP_AD_GAIN (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_ad_gain, \
.get = snd_hdsp_get_ad_gain, \
.put = snd_hdsp_put_ad_gain \
}

Definition at line 2282 of file hdsp.c.

#define HDSP_ADAT_SYNC_CHECK
Value:
.info = snd_hdsp_info_sync_check, \
.get = snd_hdsp_get_adat_sync_check \
}

Definition at line 3067 of file hdsp.c.

#define HDSP_ADATSYNC_SYNC_CHECK (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_sync_check, \
.get = snd_hdsp_get_adatsync_sync_check \
}

Definition at line 3038 of file hdsp.c.

#define HDSP_ADGain0   (1<<25) /* From here : H9632 specific */

Definition at line 188 of file hdsp.c.

#define HDSP_ADGain1   (1<<26)

Definition at line 189 of file hdsp.c.

#define HDSP_ADGainLowGain   0

Definition at line 218 of file hdsp.c.

#define HDSP_ADGainMask   (HDSP_ADGain0|HDSP_ADGain1)

Definition at line 215 of file hdsp.c.

#define HDSP_ADGainMinus10dBV   HDSP_ADGainMask

Definition at line 216 of file hdsp.c.

#define HDSP_ADGainPlus4dBu   (HDSP_ADGain0)

Definition at line 217 of file hdsp.c.

#define HDSP_AEB (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_aeb, \
.get = snd_hdsp_get_aeb, \
.put = snd_hdsp_put_aeb \
}

Definition at line 2508 of file hdsp.c.

#define HDSP_AEBI   (1<<29) /* 0 = present, 1 = absent */

Definition at line 337 of file hdsp.c.

#define HDSP_AEBO   (1<<28) /* H9632 specific Analog Extension Boards */

Definition at line 336 of file hdsp.c.

#define HDSP_AnalogExtensionBoard   (1<<18) /* For H9632 cards */

Definition at line 183 of file hdsp.c.

#define HDSP_AudioInterruptEnable   (1<<5) /* what do you think ? */

Definition at line 170 of file hdsp.c.

#define HDSP_audioIRQPending   (1<<0)

Definition at line 316 of file hdsp.c.

#define HDSP_AUTOSYNC_FROM_ADAT1   4

Definition at line 281 of file hdsp.c.

#define HDSP_AUTOSYNC_FROM_ADAT2   5

Definition at line 282 of file hdsp.c.

#define HDSP_AUTOSYNC_FROM_ADAT3   6

Definition at line 283 of file hdsp.c.

#define HDSP_AUTOSYNC_FROM_ADAT_SYNC   1

Definition at line 278 of file hdsp.c.

#define HDSP_AUTOSYNC_FROM_NONE   3

Definition at line 280 of file hdsp.c.

#define HDSP_AUTOSYNC_FROM_SPDIF   2

Definition at line 279 of file hdsp.c.

#define HDSP_AUTOSYNC_FROM_WORD   0

Definition at line 277 of file hdsp.c.

#define HDSP_AUTOSYNC_REF (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_autosync_ref, \
.get = snd_hdsp_get_autosync_ref, \
}

Definition at line 2692 of file hdsp.c.

#define HDSP_AUTOSYNC_SAMPLE_RATE (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_autosync_sample_rate, \
.get = snd_hdsp_get_autosync_sample_rate \
}

Definition at line 1938 of file hdsp.c.

#define HDSP_BIGENDIAN_MODE   0x200

Definition at line 155 of file hdsp.c.

#define HDSP_BufferID   (1<<26)

Definition at line 334 of file hdsp.c.

#define HDSP_BufferPositionMask   0x000FFC0 /* Bit 6..15 : h/w buffer pointer */

Definition at line 323 of file hdsp.c.

#define HDSP_CHANNEL_BUFFER_BYTES   (4*HDSP_CHANNEL_BUFFER_SAMPLES)

Definition at line 412 of file hdsp.c.

#define HDSP_CHANNEL_BUFFER_SAMPLES   (16*1024)

Definition at line 411 of file hdsp.c.

#define HDSP_CLOCK_SOURCE (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_clock_source, \
.get = snd_hdsp_get_clock_source, \
.put = snd_hdsp_put_clock_source \
}

Definition at line 2037 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_AUTOSYNC   0

Definition at line 249 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_INTERNAL_128KHZ   7

Definition at line 256 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_INTERNAL_176_4KHZ   8

Definition at line 257 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_INTERNAL_192KHZ   9

Definition at line 258 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_INTERNAL_32KHZ   1

Definition at line 250 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_INTERNAL_44_1KHZ   2

Definition at line 251 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_INTERNAL_48KHZ   3

Definition at line 252 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_INTERNAL_64KHZ   4

Definition at line 253 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_INTERNAL_88_2KHZ   5

Definition at line 254 of file hdsp.c.

#define HDSP_CLOCK_SOURCE_INTERNAL_96KHZ   6

Definition at line 255 of file hdsp.c.

#define HDSP_ClockModeMaster   (1<<4) /* 1=Master, 0=Slave/Autosync */

Definition at line 169 of file hdsp.c.

#define HDSP_CONFIG_MODE_0   0x040

Definition at line 152 of file hdsp.c.

#define HDSP_CONFIG_MODE_1   0x080

Definition at line 153 of file hdsp.c.

#define HDSP_ConfigError   (1<<20)

Definition at line 328 of file hdsp.c.

#define HDSP_control2Reg   256

Definition at line 96 of file hdsp.c.

#define HDSP_controlRegister   64

Definition at line 93 of file hdsp.c.

#define HDSP_DA_GAIN (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_da_gain, \
.get = snd_hdsp_get_da_gain, \
.put = snd_hdsp_put_da_gain \
}

Definition at line 2197 of file hdsp.c.

#define HDSP_DAGain0   (1<<27)

Definition at line 190 of file hdsp.c.

#define HDSP_DAGain1   (1<<28)

Definition at line 191 of file hdsp.c.

#define HDSP_DAGainHighGain   HDSP_DAGainMask

Definition at line 221 of file hdsp.c.

#define HDSP_DAGainMask   (HDSP_DAGain0|HDSP_DAGain1)

Definition at line 220 of file hdsp.c.

#define HDSP_DAGainMinus10dBV   0

Definition at line 223 of file hdsp.c.

#define HDSP_DAGainPlus4dBu   (HDSP_DAGain0)

Definition at line 222 of file hdsp.c.

#define HDSP_DDS_OFFSET (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_dds_offset, \
.get = snd_hdsp_get_dds_offset, \
.put = snd_hdsp_put_dds_offset \
}

Definition at line 3114 of file hdsp.c.

#define hdsp_decode_latency (   x)    (((x) & HDSP_LatencyMask)>>1)

Definition at line 309 of file hdsp.c.

#define hdsp_decode_spdif_in (   x)    (((x)>>14)&0x3)

Definition at line 312 of file hdsp.c.

#define HDSP_DllError   (1<<21)

Definition at line 329 of file hdsp.c.

#define HDSP_DMA_AREA_BYTES   ((HDSP_MAX_CHANNELS+1) * HDSP_CHANNEL_BUFFER_BYTES)

Definition at line 423 of file hdsp.c.

#define HDSP_DMA_AREA_KILOBYTES   (HDSP_DMA_AREA_BYTES/1024)

Definition at line 424 of file hdsp.c.

#define HDSP_DoubleSpeed   (1<<8) /* 0=normal speed, 1=double speed */

Definition at line 173 of file hdsp.c.

#define HDSP_DoubleSpeedStatus   (1<<19)

Definition at line 327 of file hdsp.c.

#define hdsp_encode_latency (   x)    (((x)<<1) & HDSP_LatencyMask)

Definition at line 308 of file hdsp.c.

#define hdsp_encode_spdif_in (   x)    (((x)&0x3)<<14)

Definition at line 311 of file hdsp.c.

#define HDSP_fifoData   368

Definition at line 99 of file hdsp.c.

#define HDSP_fifoStatus   400

Definition at line 114 of file hdsp.c.

#define HDSP_FirmwareCached   (1<<2)

Definition at line 399 of file hdsp.c.

#define HDSP_FirmwareLoaded   (1<<1)

Definition at line 398 of file hdsp.c.

#define HDSP_freqReg   0

Definition at line 90 of file hdsp.c.

#define HDSP_Frequency0   (1<<6) /* 0=44.1kHz/88.2kHz/176.4kHz 1=48kHz/96kHz/192kHz */

Definition at line 171 of file hdsp.c.

#define HDSP_Frequency1   (1<<7) /* 0=32kHz/64kHz/128kHz */

Definition at line 172 of file hdsp.c.

#define HDSP_Frequency128KHz   (HDSP_QuadSpeed|HDSP_DoubleSpeed|HDSP_Frequency0)

Definition at line 299 of file hdsp.c.

#define HDSP_Frequency176_4KHz   (HDSP_QuadSpeed|HDSP_DoubleSpeed|HDSP_Frequency1)

Definition at line 300 of file hdsp.c.

#define HDSP_Frequency192KHz   (HDSP_QuadSpeed|HDSP_DoubleSpeed|HDSP_Frequency1|HDSP_Frequency0)

Definition at line 301 of file hdsp.c.

#define HDSP_Frequency32KHz   HDSP_Frequency0

Definition at line 292 of file hdsp.c.

#define HDSP_Frequency44_1KHz   HDSP_Frequency1

Definition at line 293 of file hdsp.c.

#define HDSP_Frequency48KHz   (HDSP_Frequency1|HDSP_Frequency0)

Definition at line 294 of file hdsp.c.

#define HDSP_Frequency64KHz   (HDSP_DoubleSpeed|HDSP_Frequency0)

Definition at line 295 of file hdsp.c.

#define HDSP_Frequency88_2KHz   (HDSP_DoubleSpeed|HDSP_Frequency1)

Definition at line 296 of file hdsp.c.

#define HDSP_Frequency96KHz   (HDSP_DoubleSpeed|HDSP_Frequency1|HDSP_Frequency0)

Definition at line 297 of file hdsp.c.

Definition at line 231 of file hdsp.c.

#define HDSP_InitializationComplete   (1<<0)

Definition at line 397 of file hdsp.c.

#define HDSP_inp_freq0   (1<<5)

Definition at line 369 of file hdsp.c.

#define HDSP_inp_freq1   (1<<6)

Definition at line 370 of file hdsp.c.

#define HDSP_inp_freq2   (1<<7)

Definition at line 371 of file hdsp.c.

#define HDSP_inputBufferAddress   36

Definition at line 92 of file hdsp.c.

#define HDSP_inputEnable   384

Definition at line 100 of file hdsp.c.

#define HDSP_inputPeakLevel   4224 /* 26 * 32 bit values */

Definition at line 123 of file hdsp.c.

#define HDSP_inputRmsLevel   4868 /* 26 * 64 bit values */

Definition at line 126 of file hdsp.c.

#define HDSP_interruptConfirmation   96

Definition at line 94 of file hdsp.c.

#define HDSP_IO_EXTENT   7168

Definition at line 142 of file hdsp.c.

#define HDSP_JTAG   0x08

Definition at line 149 of file hdsp.c.

#define HDSP_Latency0   (1<<1) /* buffer size = 2^n where n is defined by Latency{2,1,0} */

Definition at line 166 of file hdsp.c.

#define HDSP_Latency1   (1<<2) /* [ see above ] */

Definition at line 167 of file hdsp.c.

#define HDSP_Latency2   (1<<3) /* [ see above ] */

Definition at line 168 of file hdsp.c.

#define HDSP_LatencyMask   (HDSP_Latency0|HDSP_Latency1|HDSP_Latency2)

Definition at line 230 of file hdsp.c.

#define HDSP_LINE_OUT (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.get = snd_hdsp_get_line_out, \
.put = snd_hdsp_put_line_out \
}

Definition at line 2748 of file hdsp.c.

#define HDSP_LineOut   (1<<24)

Definition at line 187 of file hdsp.c.

#define HDSP_Lock0   (1<<3)

Definition at line 320 of file hdsp.c.

#define HDSP_Lock1   (1<<2)

Definition at line 319 of file hdsp.c.

#define HDSP_Lock2   (1<<1) /* this is for Digiface and H9652 */

Definition at line 317 of file hdsp.c.

#define HDSP_LONG_WAIT   5000

Definition at line 403 of file hdsp.c.

#define HDSP_MAX_CHANNELS   26

Definition at line 70 of file hdsp.c.

#define HDSP_MAX_DS_CHANNELS   14

Definition at line 71 of file hdsp.c.

#define HDSP_MAX_QS_CHANNELS   8

Definition at line 72 of file hdsp.c.

#define HDSP_Midi0InterruptEnable   (1<<22)

Definition at line 185 of file hdsp.c.

#define HDSP_midi0IRQPending   (1<<30)

Definition at line 338 of file hdsp.c.

#define HDSP_Midi1InterruptEnable   (1<<23)

Definition at line 186 of file hdsp.c.

#define HDSP_midi1IRQPending   (1<<31)

Definition at line 339 of file hdsp.c.

#define HDSP_midiDataIn0   360

Definition at line 108 of file hdsp.c.

#define HDSP_midiDataIn1   364

Definition at line 109 of file hdsp.c.

#define HDSP_midiDataOut0   352

Definition at line 97 of file hdsp.c.

#define HDSP_midiDataOut1   356

Definition at line 98 of file hdsp.c.

#define HDSP_midiStatusIn0   392

Definition at line 112 of file hdsp.c.

#define HDSP_midiStatusIn1   396

Definition at line 113 of file hdsp.c.

#define HDSP_midiStatusOut0   384

Definition at line 110 of file hdsp.c.

#define HDSP_midiStatusOut1   388

Definition at line 111 of file hdsp.c.

#define HDSP_MIXER (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.device = 0, \
SNDRV_CTL_ELEM_ACCESS_VOLATILE, \
.info = snd_hdsp_info_mixer, \
.get = snd_hdsp_get_mixer, \
.put = snd_hdsp_put_mixer \
}

Definition at line 2892 of file hdsp.c.

#define HDSP_outputBufferAddress   32

Definition at line 91 of file hdsp.c.

#define HDSP_outputEnable   128

Definition at line 95 of file hdsp.c.

#define HDSP_outputPeakLevel   4352 /* (26+2) * 32 bit values */

Definition at line 124 of file hdsp.c.

#define HDSP_PHONE_GAIN (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_phone_gain, \
.get = snd_hdsp_get_phone_gain, \
.put = snd_hdsp_put_phone_gain \
}

Definition at line 2367 of file hdsp.c.

#define HDSP_PhoneGain0   (1<<29)

Definition at line 192 of file hdsp.c.

#define HDSP_PhoneGain0dB   HDSP_PhoneGainMask

Definition at line 226 of file hdsp.c.

#define HDSP_PhoneGain1   (1<<30)

Definition at line 193 of file hdsp.c.

#define HDSP_PhoneGainMask   (HDSP_PhoneGain0|HDSP_PhoneGain1)

Definition at line 225 of file hdsp.c.

#define HDSP_PhoneGainMinus12dB   0

Definition at line 228 of file hdsp.c.

#define HDSP_PhoneGainMinus6dB   (HDSP_PhoneGain0)

Definition at line 227 of file hdsp.c.

#define HDSP_playbackPeakLevel   4096 /* 26 * 32 bit values */

Definition at line 122 of file hdsp.c.

#define HDSP_playbackRmsLevel   4612 /* 26 * 64 bit values */

Definition at line 125 of file hdsp.c.

#define HDSP_PRECISE_POINTER (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.get = snd_hdsp_get_precise_pointer, \
.put = snd_hdsp_put_precise_pointer \
}

Definition at line 2800 of file hdsp.c.

#define HDSP_PREF_SYNC_REF (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_pref_sync_ref, \
.get = snd_hdsp_get_pref_sync_ref, \
.put = snd_hdsp_put_pref_sync_ref \
}

Definition at line 2560 of file hdsp.c.

#define HDSP_PROGRAM   0x020

Definition at line 151 of file hdsp.c.

#define HDSP_PWDN   0x10

Definition at line 150 of file hdsp.c.

#define HDSP_QuadSpeed   (1<<31)

Definition at line 194 of file hdsp.c.

#define HDSP_RD_MULTIPLE   0x400

Definition at line 156 of file hdsp.c.

#define HDSP_resetPointer   0

Definition at line 89 of file hdsp.c.

#define HDSP_RPM_Bypass   0x01000

Definition at line 211 of file hdsp.c.

#define HDSP_RPM_Disconnect   0x00001

Definition at line 213 of file hdsp.c.

#define HDSP_RPM_Inp12   0x04A00

Definition at line 197 of file hdsp.c.

#define HDSP_RPM_Inp12_Line_0dB   0x04200 /* Dolby+PRO */

Definition at line 201 of file hdsp.c.

#define HDSP_RPM_Inp12_Line_n6dB   0x00200 /* PRO */

Definition at line 202 of file hdsp.c.

#define HDSP_RPM_Inp12_Phon_0dB   0x00000 /* .. */

Definition at line 199 of file hdsp.c.

#define HDSP_RPM_Inp12_Phon_6dB   0x00800 /* Dolby */

Definition at line 198 of file hdsp.c.

#define HDSP_RPM_Inp12_Phon_n6dB   0x04000 /* inp_0 */

Definition at line 200 of file hdsp.c.

#define HDSP_RPM_Inp34   0x32000

Definition at line 204 of file hdsp.c.

#define HDSP_RPM_Inp34_Line_0dB   0x30000 /* SyncRef1+SyncRef0 */

Definition at line 208 of file hdsp.c.

#define HDSP_RPM_Inp34_Line_n6dB   0x10000 /* SyncRef0 */

Definition at line 209 of file hdsp.c.

#define HDSP_RPM_Inp34_Phon_0dB   0x00000 /* .. */

Definition at line 206 of file hdsp.c.

#define HDSP_RPM_Inp34_Phon_6dB   0x20000 /* SyncRef1 */

Definition at line 205 of file hdsp.c.

#define HDSP_RPM_Inp34_Phon_n6dB   0x02000 /* SyncRef2 */

Definition at line 207 of file hdsp.c.

#define HDSP_S_LOAD   (HDSP_PROGRAM|HDSP_CONFIG_MODE_1)

Definition at line 161 of file hdsp.c.

#define HDSP_S_PROGRAM   (HDSP_PROGRAM|HDSP_CONFIG_MODE_0)

Definition at line 160 of file hdsp.c.

#define HDSP_SelSyncRef0   (1<<8)

Definition at line 372 of file hdsp.c.

#define HDSP_SelSyncRef1   (1<<9)

Definition at line 373 of file hdsp.c.

#define HDSP_SelSyncRef2   (1<<10)

Definition at line 374 of file hdsp.c.

#define HDSP_SelSyncRef_ADAT1   0

Definition at line 388 of file hdsp.c.

#define HDSP_SelSyncRef_ADAT2   (HDSP_SelSyncRef0)

Definition at line 389 of file hdsp.c.

#define HDSP_SelSyncRef_ADAT3   (HDSP_SelSyncRef1)

Definition at line 390 of file hdsp.c.

#define HDSP_SelSyncRef_ADAT_SYNC   (HDSP_SelSyncRef0|HDSP_SelSyncRef2)

Definition at line 393 of file hdsp.c.

#define HDSP_SelSyncRef_SPDIF   (HDSP_SelSyncRef0|HDSP_SelSyncRef1)

Definition at line 391 of file hdsp.c.

#define HDSP_SelSyncRef_WORD   (HDSP_SelSyncRef2)

Definition at line 392 of file hdsp.c.

#define HDSP_SelSyncRefMask   (HDSP_SelSyncRef0|HDSP_SelSyncRef1|HDSP_SelSyncRef2)

Definition at line 387 of file hdsp.c.

#define HDSP_SHORT_WAIT   30

Definition at line 404 of file hdsp.c.

#define HDSP_SPDIF_EMPHASIS (   xname,
  xindex 
)
Value:
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \
.get = snd_hdsp_get_spdif_emphasis, .put = snd_hdsp_put_spdif_emphasis }

Definition at line 1765 of file hdsp.c.

#define HDSP_SPDIF_IN (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_spdif_in, \
.get = snd_hdsp_get_spdif_in, \
.put = snd_hdsp_put_spdif_in }

Definition at line 1615 of file hdsp.c.

#define HDSP_SPDIF_NON_AUDIO (   xname,
  xindex 
)
Value:
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \
.get = snd_hdsp_get_spdif_nonaudio, .put = snd_hdsp_put_spdif_nonaudio }

Definition at line 1809 of file hdsp.c.

#define HDSP_SPDIF_OUT (   xname,
  xindex 
)
Value:
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \
.get = snd_hdsp_get_spdif_out, .put = snd_hdsp_put_spdif_out }

Definition at line 1675 of file hdsp.c.

#define HDSP_SPDIF_PROFESSIONAL (   xname,
  xindex 
)
Value:
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \
.get = snd_hdsp_get_spdif_professional, .put = snd_hdsp_put_spdif_professional }

Definition at line 1721 of file hdsp.c.

#define HDSP_SPDIF_SAMPLE_RATE (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_spdif_sample_rate, \
.get = snd_hdsp_get_spdif_sample_rate \
}

Definition at line 1853 of file hdsp.c.

#define HDSP_SPDIF_SYNC_CHECK (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_sync_check, \
.get = snd_hdsp_get_spdif_sync_check \
}

Definition at line 3007 of file hdsp.c.

#define HDSP_SPDIFEmphasis   (1<<10) /* 0=none, 1=on */

Definition at line 175 of file hdsp.c.

#define HDSP_SPDIFErrorFlag   (1<<25)

Definition at line 333 of file hdsp.c.

#define HDSP_spdifFrequency0   (1<<22)

Definition at line 330 of file hdsp.c.

#define HDSP_spdifFrequency1   (1<<23)

Definition at line 331 of file hdsp.c.

#define HDSP_spdifFrequency128KHz
Value:
HDSP_spdifFrequency1|\
HDSP_spdifFrequency2)

Definition at line 356 of file hdsp.c.

#define HDSP_spdifFrequency176_4KHz   HDSP_spdifFrequency3

Definition at line 359 of file hdsp.c.

#define HDSP_spdifFrequency192KHz   (HDSP_spdifFrequency3|HDSP_spdifFrequency0)

Definition at line 360 of file hdsp.c.

#define HDSP_spdifFrequency2   (1<<24)

Definition at line 332 of file hdsp.c.

#define HDSP_spdifFrequency3   HDSP_Lock2 /* this is for H9632 only */

Definition at line 318 of file hdsp.c.

#define HDSP_spdifFrequency32KHz   (HDSP_spdifFrequency0)

Definition at line 347 of file hdsp.c.

#define HDSP_spdifFrequency44_1KHz   (HDSP_spdifFrequency1)

Definition at line 348 of file hdsp.c.

#define HDSP_spdifFrequency48KHz   (HDSP_spdifFrequency0|HDSP_spdifFrequency1)

Definition at line 349 of file hdsp.c.

#define HDSP_spdifFrequency64KHz   (HDSP_spdifFrequency2)

Definition at line 351 of file hdsp.c.

#define HDSP_spdifFrequency88_2KHz   (HDSP_spdifFrequency0|HDSP_spdifFrequency2)

Definition at line 352 of file hdsp.c.

#define HDSP_spdifFrequency96KHz   (HDSP_spdifFrequency2|HDSP_spdifFrequency1)

Definition at line 353 of file hdsp.c.

#define HDSP_spdifFrequencyMask   (HDSP_spdifFrequency0|HDSP_spdifFrequency1|HDSP_spdifFrequency2)

Definition at line 341 of file hdsp.c.

#define HDSP_spdifFrequencyMask_9632
Value:
HDSP_spdifFrequency1|\
HDSP_spdifFrequency2|\
HDSP_spdifFrequency3)

Definition at line 342 of file hdsp.c.

#define HDSP_SPDIFIN_AES   3 /* xlr for H9632 (AES)*/

Definition at line 290 of file hdsp.c.

#define HDSP_SPDIFIN_COAXIAL   1 /* coaxial (RCA) */

Definition at line 288 of file hdsp.c.

#define HDSP_SPDIFIN_INTERNAL   2 /* internal (CDROM) */

Definition at line 289 of file hdsp.c.

#define HDSP_SPDIFIN_OPTICAL   0 /* optical (ADAT1) */

Definition at line 287 of file hdsp.c.

#define HDSP_SPDIFInputADAT1   0

Definition at line 234 of file hdsp.c.

#define HDSP_SPDIFInputAES   (HDSP_SPDIFInputSelect0|HDSP_SPDIFInputSelect1)

Definition at line 237 of file hdsp.c.

#define HDSP_SPDIFInputCdrom   (HDSP_SPDIFInputSelect1)

Definition at line 236 of file hdsp.c.

#define HDSP_SPDIFInputCoaxial   (HDSP_SPDIFInputSelect0)

Definition at line 235 of file hdsp.c.

#define HDSP_SPDIFInputMask   (HDSP_SPDIFInputSelect0|HDSP_SPDIFInputSelect1)

Definition at line 233 of file hdsp.c.

#define HDSP_SPDIFInputSelect0   (1<<14)

Definition at line 179 of file hdsp.c.

#define HDSP_SPDIFInputSelect1   (1<<15)

Definition at line 180 of file hdsp.c.

#define HDSP_SPDIFNonAudio   (1<<11) /* 0=off, 1=on */

Definition at line 176 of file hdsp.c.

#define HDSP_SPDIFOpticalOut   (1<<12) /* 1=use 1st ADAT connector for SPDIF, 0=do not */

Definition at line 177 of file hdsp.c.

#define HDSP_SPDIFProfessional   (1<<9) /* 0=consumer, 1=professional */

Definition at line 174 of file hdsp.c.

#define HDSP_SPDIFSync   (1<<4)

Definition at line 321 of file hdsp.c.

#define HDSP_Start   (1<<0) /* start engine */

Definition at line 165 of file hdsp.c.

#define HDSP_status2Register   192

Definition at line 107 of file hdsp.c.

#define HDSP_statusRegister   0

Definition at line 105 of file hdsp.c.

#define HDSP_Sync0   (1<<18)

Definition at line 326 of file hdsp.c.

#define HDSP_Sync1   (1<<17)

Definition at line 325 of file hdsp.c.

#define HDSP_Sync2   (1<<16)

Definition at line 324 of file hdsp.c.

#define HDSP_SYNC_CHECK_LOCK   1

Definition at line 272 of file hdsp.c.

#define HDSP_SYNC_CHECK_NO_LOCK   0

Definition at line 271 of file hdsp.c.

#define HDSP_SYNC_CHECK_SYNC   2

Definition at line 273 of file hdsp.c.

#define HDSP_SYNC_FROM_ADAT1   2

Definition at line 264 of file hdsp.c.

#define HDSP_SYNC_FROM_ADAT2   4

Definition at line 266 of file hdsp.c.

#define HDSP_SYNC_FROM_ADAT3   5

Definition at line 267 of file hdsp.c.

#define HDSP_SYNC_FROM_ADAT_SYNC   3

Definition at line 265 of file hdsp.c.

#define HDSP_SYNC_FROM_SPDIF   1

Definition at line 263 of file hdsp.c.

#define HDSP_SYNC_FROM_WORD   0

Definition at line 262 of file hdsp.c.

#define HDSP_SyncRef0   (1<<16)

Definition at line 181 of file hdsp.c.

#define HDSP_SyncRef1   (1<<17)

Definition at line 182 of file hdsp.c.

#define HDSP_SyncRef2   (1<<13)

Definition at line 178 of file hdsp.c.

#define HDSP_SyncRef_ADAT1   0

Definition at line 240 of file hdsp.c.

#define HDSP_SyncRef_ADAT2   (HDSP_SyncRef0)

Definition at line 241 of file hdsp.c.

#define HDSP_SyncRef_ADAT3   (HDSP_SyncRef1)

Definition at line 242 of file hdsp.c.

#define HDSP_SyncRef_ADAT_SYNC   (HDSP_SyncRef0|HDSP_SyncRef2)

Definition at line 245 of file hdsp.c.

#define HDSP_SyncRef_SPDIF   (HDSP_SyncRef0|HDSP_SyncRef1)

Definition at line 243 of file hdsp.c.

#define HDSP_SyncRef_WORD   (HDSP_SyncRef2)

Definition at line 244 of file hdsp.c.

#define HDSP_SyncRefMask   (HDSP_SyncRef0|HDSP_SyncRef1|HDSP_SyncRef2)

Definition at line 239 of file hdsp.c.

#define HDSP_SYSTEM_CLOCK_MODE (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_system_clock_mode, \
.get = snd_hdsp_get_system_clock_mode \
}

Definition at line 1998 of file hdsp.c.

#define HDSP_SYSTEM_SAMPLE_RATE (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_system_sample_rate, \
.get = snd_hdsp_get_system_sample_rate \
}

Definition at line 1914 of file hdsp.c.

#define HDSP_systemFrequency32   (HDSP_inp_freq0)

Definition at line 379 of file hdsp.c.

#define HDSP_systemFrequency44_1   (HDSP_inp_freq1)

Definition at line 380 of file hdsp.c.

#define HDSP_systemFrequency48   (HDSP_inp_freq0|HDSP_inp_freq1)

Definition at line 381 of file hdsp.c.

#define HDSP_systemFrequency64   (HDSP_inp_freq2)

Definition at line 382 of file hdsp.c.

#define HDSP_systemFrequency88_2   (HDSP_inp_freq0|HDSP_inp_freq2)

Definition at line 383 of file hdsp.c.

#define HDSP_systemFrequency96   (HDSP_inp_freq1|HDSP_inp_freq2)

Definition at line 384 of file hdsp.c.

#define HDSP_systemFrequencyMask   (HDSP_inp_freq0|HDSP_inp_freq1|HDSP_inp_freq2)

Definition at line 378 of file hdsp.c.

#define HDSP_TCK   0x02

Definition at line 147 of file hdsp.c.

#define HDSP_TDI   0x04

Definition at line 148 of file hdsp.c.

#define HDSP_TDO   0x10000000

Definition at line 158 of file hdsp.c.

#define HDSP_timecode   128

Definition at line 106 of file hdsp.c.

#define HDSP_TimecodeLock   (1<<5)

Definition at line 322 of file hdsp.c.

#define HDSP_TimecodeSync   (1<<27)

Definition at line 335 of file hdsp.c.

#define HDSP_TMS   0x01

Definition at line 146 of file hdsp.c.

#define HDSP_USE_MIDI_TASKLET (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.get = snd_hdsp_get_use_midi_tasklet, \
.put = snd_hdsp_put_use_midi_tasklet \
}

Definition at line 2846 of file hdsp.c.

#define HDSP_version0   (1<<0)

Definition at line 364 of file hdsp.c.

#define HDSP_version1   (1<<1)

Definition at line 365 of file hdsp.c.

#define HDSP_version2   (1<<2)

Definition at line 366 of file hdsp.c.

#define HDSP_VERSION_BIT   (0x100 | HDSP_S_LOAD)

Definition at line 154 of file hdsp.c.

#define HDSP_wc_lock   (1<<3)

Definition at line 367 of file hdsp.c.

#define HDSP_wc_sync   (1<<4)

Definition at line 368 of file hdsp.c.

#define HDSP_WC_SYNC_CHECK (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.info = snd_hdsp_info_sync_check, \
.get = snd_hdsp_get_wc_sync_check \
}

Definition at line 2965 of file hdsp.c.

#define HDSP_wc_valid   (HDSP_wc_lock|HDSP_wc_sync)

Definition at line 376 of file hdsp.c.

#define HDSP_XLR_BREAKOUT_CABLE (   xname,
  xindex 
)
Value:
.name = xname, \
.index = xindex, \
.get = snd_hdsp_get_xlr_breakout_cable, \
.put = snd_hdsp_put_xlr_breakout_cable \
}

Definition at line 2452 of file hdsp.c.

#define HDSP_XLRBreakoutCable   (1<<20) /* For H9632 cards */

Definition at line 184 of file hdsp.c.

#define MINUS_INFINITY_GAIN   0

Definition at line 407 of file hdsp.c.

#define MULTIFACE_DS_CHANNELS   14

Definition at line 76 of file hdsp.c.

#define MULTIFACE_SS_CHANNELS   18

Definition at line 75 of file hdsp.c.

#define RPM_CHANNELS   6

Definition at line 85 of file hdsp.c.

#define snd_hdsp_info_aeb   snd_ctl_boolean_mono_info

Definition at line 2534 of file hdsp.c.

#define snd_hdsp_info_clock_source_lock   snd_ctl_boolean_mono_info

Definition at line 2176 of file hdsp.c.

#define snd_hdsp_info_line_out   snd_ctl_boolean_mono_info

Definition at line 2772 of file hdsp.c.

#define snd_hdsp_info_precise_pointer   snd_ctl_boolean_mono_info

Definition at line 2818 of file hdsp.c.

#define snd_hdsp_info_spdif_bits   snd_ctl_boolean_mono_info

Definition at line 1695 of file hdsp.c.

#define snd_hdsp_info_use_midi_tasklet   snd_ctl_boolean_mono_info

Definition at line 2864 of file hdsp.c.

#define snd_hdsp_info_xlr_breakout_cable   snd_ctl_boolean_mono_info

Definition at line 2478 of file hdsp.c.

#define UNITY_GAIN   32768

Definition at line 406 of file hdsp.c.

Function Documentation

MODULE_AUTHOR ( "Paul Davis <[email protected] ,
Marcus  Andersson,
Thomas Charbonnel< thomas @undata.org >"   
)
MODULE_DESCRIPTION ( "RME Hammerfall DSP )
MODULE_DEVICE_TABLE ( pci  ,
snd_hdsp_ids   
)
MODULE_LICENSE ( "GPL"  )
module_param_array ( index  ,
int  ,
NULL  ,
0444   
)
module_param_array ( id  ,
charp  ,
NULL  ,
0444   
)
module_param_array ( enable  ,
bool  ,
NULL  ,
0444   
)
MODULE_PARM_DESC ( index  ,
"Index value for RME Hammerfall DSP interface."   
)
MODULE_PARM_DESC ( id  ,
"ID string for RME Hammerfall DSP interface."   
)
MODULE_PARM_DESC ( enable  ,
"Enable/disable specific Hammerfall DSP soundcards."   
)
module_pci_driver ( hdsp_driver  )
MODULE_SUPPORTED_DEVICE ( "{{RME Hammerfall-DSP},""{RME HDSP-9652},""{RME HDSP-9632}}"  )