⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 emu10k1.h

📁 Axis 221 camera embedded programing interface
💻 H
📖 第 1 页 / 共 2 页
字号:
#define A_EXTIN_LINE2_L		0x08	/* audigy drive line2/mic2 - left */#define A_EXTIN_LINE2_R		0x09	/*                           right */#define A_EXTIN_ADC_L		0x0a    /* Philips ADC - left */#define A_EXTIN_ADC_R		0x0b    /*               right */#define A_EXTIN_AUX2_L		0x0c	/* audigy drive aux2 - left */#define A_EXTIN_AUX2_R		0x0d	/*                   - right *//* Audigiy Outputs */#define A_EXTOUT_FRONT_L	0x00	/* digital front left */#define A_EXTOUT_FRONT_R	0x01	/*               right */#define A_EXTOUT_CENTER		0x02	/* digital front center */#define A_EXTOUT_LFE		0x03	/* digital front lfe */#define A_EXTOUT_HEADPHONE_L	0x04	/* headphone audigy drive left */#define A_EXTOUT_HEADPHONE_R	0x05	/*                        right */#define A_EXTOUT_REAR_L		0x06	/* digital rear left */#define A_EXTOUT_REAR_R		0x07	/*              right */#define A_EXTOUT_AFRONT_L	0x08	/* analog front left */#define A_EXTOUT_AFRONT_R	0x09	/*              right */#define A_EXTOUT_ACENTER	0x0a	/* analog center */#define A_EXTOUT_ALFE		0x0b	/* analog LFE */#define A_EXTOUT_ASIDE_L	0x0c	/* analog side left  - Audigy 2 ZS */#define A_EXTOUT_ASIDE_R	0x0d	/*             right - Audigy 2 ZS */#define A_EXTOUT_AREAR_L	0x0e	/* analog rear left */#define A_EXTOUT_AREAR_R	0x0f	/*             right */#define A_EXTOUT_AC97_L		0x10	/* AC97 left (front) */#define A_EXTOUT_AC97_R		0x11	/*      right */#define A_EXTOUT_ADC_CAP_L	0x16	/* ADC capture buffer left */#define A_EXTOUT_ADC_CAP_R	0x17	/*                    right */#define A_EXTOUT_MIC_CAP	0x18	/* Mic capture buffer *//* Audigy constants */#define A_C_00000000	0xc0#define A_C_00000001	0xc1#define A_C_00000002	0xc2#define A_C_00000003	0xc3#define A_C_00000004	0xc4#define A_C_00000008	0xc5#define A_C_00000010	0xc6#define A_C_00000020	0xc7#define A_C_00000100	0xc8#define A_C_00010000	0xc9#define A_C_00000800	0xca#define A_C_10000000	0xcb#define A_C_20000000	0xcc#define A_C_40000000	0xcd#define A_C_80000000	0xce#define A_C_7fffffff	0xcf#define A_C_ffffffff	0xd0#define A_C_fffffffe	0xd1#define A_C_c0000000	0xd2#define A_C_4f1bbcdc	0xd3#define A_C_5a7ef9db	0xd4#define A_C_00100000	0xd5#define A_GPR_ACCU	0xd6		/* ACCUM, accumulator */#define A_GPR_COND	0xd7		/* CCR, condition register */#define A_GPR_NOISE0	0xd8		/* noise source */#define A_GPR_NOISE1	0xd9		/* noise source */#define A_GPR_IRQ	0xda		/* IRQ register */#define A_GPR_DBAC	0xdb		/* TRAM Delay Base Address Counter - internal */#define A_GPR_DBACE	0xde		/* TRAM Delay Base Address Counter - external *//* definitions for debug register */#define EMU10K1_DBG_ZC			0x80000000	/* zero tram counter */#define EMU10K1_DBG_SATURATION_OCCURED	0x02000000	/* saturation control */#define EMU10K1_DBG_SATURATION_ADDR	0x01ff0000	/* saturation address */#define EMU10K1_DBG_SINGLE_STEP		0x00008000	/* single step mode */#define EMU10K1_DBG_STEP		0x00004000	/* start single step */#define EMU10K1_DBG_CONDITION_CODE	0x00003e00	/* condition code */#define EMU10K1_DBG_SINGLE_STEP_ADDR	0x000001ff	/* single step address *//* tank memory address line */#define TANKMEMADDRREG_ADDR_MASK 0x000fffff	/* 20 bit tank address field			*/#define TANKMEMADDRREG_CLEAR	 0x00800000	/* Clear tank memory				*/#define TANKMEMADDRREG_ALIGN	 0x00400000	/* Align read or write relative to tank access	*/#define TANKMEMADDRREG_WRITE	 0x00200000	/* Write to tank memory				*/#define TANKMEMADDRREG_READ	 0x00100000	/* Read from tank memory			*/struct snd_emu10k1_fx8010_info {	unsigned int internal_tram_size;	/* in samples */	unsigned int external_tram_size;	/* in samples */	char fxbus_names[16][32];		/* names of FXBUSes */	char extin_names[16][32];		/* names of external inputs */	char extout_names[32][32];		/* names of external outputs */	unsigned int gpr_controls;		/* count of GPR controls */};#define EMU10K1_GPR_TRANSLATION_NONE		0#define EMU10K1_GPR_TRANSLATION_TABLE100	1#define EMU10K1_GPR_TRANSLATION_BASS		2#define EMU10K1_GPR_TRANSLATION_TREBLE		3#define EMU10K1_GPR_TRANSLATION_ONOFF		4struct snd_emu10k1_fx8010_control_gpr {	struct snd_ctl_elem_id id;		/* full control ID definition */	unsigned int vcount;		/* visible count */	unsigned int count;		/* count of GPR (1..16) */	unsigned short gpr[32];		/* GPR number(s) */	unsigned int value[32];		/* initial values */	unsigned int min;		/* minimum range */	unsigned int max;		/* maximum range */	union {		snd_kcontrol_tlv_rw_t *c;		unsigned int *p;	} tlv;	unsigned int translation;	/* translation type (EMU10K1_GPR_TRANSLATION*) */};struct snd_emu10k1_fx8010_code {	char name[128];	DECLARE_BITMAP(gpr_valid, 0x200); /* bitmask of valid initializers */	u_int32_t *gpr_map;	  /* initializers */	unsigned int gpr_add_control_count; /* count of GPR controls to add/replace */	struct snd_emu10k1_fx8010_control_gpr *gpr_add_controls; /* GPR controls to add/replace */	unsigned int gpr_del_control_count; /* count of GPR controls to remove */	struct snd_ctl_elem_id *gpr_del_controls; /* IDs of GPR controls to remove */	unsigned int gpr_list_control_count; /* count of GPR controls to list */	unsigned int gpr_list_control_total; /* total count of GPR controls */	struct snd_emu10k1_fx8010_control_gpr *gpr_list_controls; /* listed GPR controls */	DECLARE_BITMAP(tram_valid, 0x100); /* bitmask of valid initializers */	u_int32_t *tram_data_map;  /* data initializers */	u_int32_t *tram_addr_map;  /* map initializers */	DECLARE_BITMAP(code_valid, 1024); /* bitmask of valid instructions */	u_int32_t *code;		  /* one instruction - 64 bits */};struct snd_emu10k1_fx8010_tram {	unsigned int address;		/* 31.bit == 1 -> external TRAM */	unsigned int size;		/* size in samples (4 bytes) */	unsigned int *samples;		/* pointer to samples (20-bit) */					/* NULL->clear memory */};struct snd_emu10k1_fx8010_pcm_rec {	unsigned int substream;		/* substream number */	unsigned int res1;		/* reserved */	unsigned int channels;		/* 16-bit channels count, zero = remove this substream */	unsigned int tram_start;	/* ring buffer position in TRAM (in samples) */	unsigned int buffer_size;	/* count of buffered samples */	unsigned short gpr_size;		/* GPR containing size of ringbuffer in samples (host) */	unsigned short gpr_ptr;		/* GPR containing current pointer in the ring buffer (host = reset, FX8010) */	unsigned short gpr_count;	/* GPR containing count of samples between two interrupts (host) */	unsigned short gpr_tmpcount;	/* GPR containing current count of samples to interrupt (host = set, FX8010) */	unsigned short gpr_trigger;	/* GPR containing trigger (activate) information (host) */	unsigned short gpr_running;	/* GPR containing info if PCM is running (FX8010) */	unsigned char pad;		/* reserved */	unsigned char etram[32];	/* external TRAM address & data (one per channel) */	unsigned int res2;		/* reserved */};#define SNDRV_EMU10K1_IOCTL_INFO	_IOR ('H', 0x10, struct snd_emu10k1_fx8010_info)#define SNDRV_EMU10K1_IOCTL_CODE_POKE	_IOW ('H', 0x11, struct snd_emu10k1_fx8010_code)#define SNDRV_EMU10K1_IOCTL_CODE_PEEK	_IOWR('H', 0x12, struct snd_emu10k1_fx8010_code)#define SNDRV_EMU10K1_IOCTL_TRAM_SETUP	_IOW ('H', 0x20, int)#define SNDRV_EMU10K1_IOCTL_TRAM_POKE	_IOW ('H', 0x21, struct snd_emu10k1_fx8010_tram)#define SNDRV_EMU10K1_IOCTL_TRAM_PEEK	_IOWR('H', 0x22, struct snd_emu10k1_fx8010_tram)#define SNDRV_EMU10K1_IOCTL_PCM_POKE	_IOW ('H', 0x30, struct snd_emu10k1_fx8010_pcm_rec)#define SNDRV_EMU10K1_IOCTL_PCM_PEEK	_IOWR('H', 0x31, struct snd_emu10k1_fx8010_pcm_rec)#define SNDRV_EMU10K1_IOCTL_STOP	_IO  ('H', 0x80)#define SNDRV_EMU10K1_IOCTL_CONTINUE	_IO  ('H', 0x81)#define SNDRV_EMU10K1_IOCTL_ZERO_TRAM_COUNTER _IO ('H', 0x82)#define SNDRV_EMU10K1_IOCTL_SINGLE_STEP	_IOW ('H', 0x83, int)#define SNDRV_EMU10K1_IOCTL_DBG_READ	_IOR ('H', 0x84, int)/* typedefs for compatibility to user-space */typedef struct snd_emu10k1_fx8010_info emu10k1_fx8010_info_t;typedef struct snd_emu10k1_fx8010_control_gpr emu10k1_fx8010_control_gpr_t;typedef struct snd_emu10k1_fx8010_code emu10k1_fx8010_code_t;typedef struct snd_emu10k1_fx8010_tram emu10k1_fx8010_tram_t;typedef struct snd_emu10k1_fx8010_pcm_rec emu10k1_fx8010_pcm_t;#endif	/* __SOUND_EMU10K1_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -