Commit 3d19f804 authored by Takashi Iwai's avatar Takashi Iwai Committed by Jaroslav Kysela

[ALSA] Remove xxx_t typedefs: PCI CS46xx

Modules: CS46xx driver

Remove xxx_t typedefs from the PCI CS46xx driver.
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent af26367f
......@@ -1631,42 +1631,41 @@
#define CS46XX_MIXER_SPDIF_INPUT_ELEMENT 1
#define CS46XX_MIXER_SPDIF_OUTPUT_ELEMENT 2
typedef struct _snd_cs46xx cs46xx_t;
typedef struct _snd_cs46xx_pcm_t {
struct snd_cs46xx_pcm {
struct snd_dma_buffer hw_buf;
unsigned int ctl;
unsigned int shift; /* Shift count to trasform frames in bytes */
snd_pcm_indirect_t pcm_rec;
snd_pcm_substream_t *substream;
struct snd_pcm_indirect pcm_rec;
struct snd_pcm_substream *substream;
pcm_channel_descriptor_t * pcm_channel;
struct dsp_pcm_channel_descriptor * pcm_channel;
int pcm_channel_id; /* Fron Rear, Center Lfe ... */
} cs46xx_pcm_t;
};
typedef struct {
struct snd_cs46xx_region {
char name[24];
unsigned long base;
void __iomem *remap_addr;
unsigned long size;
struct resource *resource;
} snd_cs46xx_region_t;
};
struct _snd_cs46xx {
struct snd_cs46xx {
int irq;
unsigned long ba0_addr;
unsigned long ba1_addr;
union {
struct {
snd_cs46xx_region_t ba0;
snd_cs46xx_region_t data0;
snd_cs46xx_region_t data1;
snd_cs46xx_region_t pmem;
snd_cs46xx_region_t reg;
struct snd_cs46xx_region ba0;
struct snd_cs46xx_region data0;
struct snd_cs46xx_region data1;
struct snd_cs46xx_region pmem;
struct snd_cs46xx_region reg;
} name;
snd_cs46xx_region_t idx[5];
struct snd_cs46xx_region idx[5];
} region;
unsigned int mode;
......@@ -1676,34 +1675,34 @@ struct _snd_cs46xx {
unsigned int ctl;
unsigned int shift; /* Shift count to trasform frames in bytes */
snd_pcm_indirect_t pcm_rec;
snd_pcm_substream_t *substream;
struct snd_pcm_indirect pcm_rec;
struct snd_pcm_substream *substream;
} capt;
int nr_ac97_codecs;
ac97_bus_t *ac97_bus;
ac97_t *ac97[MAX_NR_AC97];
struct snd_ac97_bus *ac97_bus;
struct snd_ac97 *ac97[MAX_NR_AC97];
struct pci_dev *pci;
snd_card_t *card;
snd_pcm_t *pcm;
struct snd_card *card;
struct snd_pcm *pcm;
snd_rawmidi_t *rmidi;
snd_rawmidi_substream_t *midi_input;
snd_rawmidi_substream_t *midi_output;
struct snd_rawmidi *rmidi;
struct snd_rawmidi_substream *midi_input;
struct snd_rawmidi_substream *midi_output;
spinlock_t reg_lock;
unsigned int midcr;
unsigned int uartm;
int amplifier;
void (*amplifier_ctrl)(cs46xx_t *, int);
void (*active_ctrl)(cs46xx_t *, int);
void (*mixer_init)(cs46xx_t *);
void (*amplifier_ctrl)(struct snd_cs46xx *, int);
void (*active_ctrl)(struct snd_cs46xx *, int);
void (*mixer_init)(struct snd_cs46xx *);
int acpi_port;
snd_kcontrol_t *eapd_switch; /* for amplifier hack */
struct snd_kcontrol *eapd_switch; /* for amplifier hack */
int accept_valid; /* accept mmap valid (for OSS) */
struct gameport *gameport;
......@@ -1714,29 +1713,29 @@ struct _snd_cs46xx {
#ifdef CONFIG_SND_CS46XX_NEW_DSP
struct semaphore spos_mutex;
dsp_spos_instance_t * dsp_spos_instance;
struct dsp_spos_instance * dsp_spos_instance;
snd_pcm_t *pcm_rear;
snd_pcm_t *pcm_center_lfe;
snd_pcm_t *pcm_iec958;
struct snd_pcm *pcm_rear;
struct snd_pcm *pcm_center_lfe;
struct snd_pcm *pcm_iec958;
#else /* for compatibility */
cs46xx_pcm_t *playback_pcm;
struct snd_cs46xx_pcm *playback_pcm;
unsigned int play_ctl;
#endif
};
int snd_cs46xx_create(snd_card_t *card,
int snd_cs46xx_create(struct snd_card *card,
struct pci_dev *pci,
int external_amp, int thinkpad,
cs46xx_t **rcodec);
int snd_cs46xx_pcm(cs46xx_t *chip, int device, snd_pcm_t **rpcm);
int snd_cs46xx_pcm_rear(cs46xx_t *chip, int device, snd_pcm_t **rpcm);
int snd_cs46xx_pcm_iec958(cs46xx_t *chip, int device, snd_pcm_t **rpcm);
int snd_cs46xx_pcm_center_lfe(cs46xx_t *chip, int device, snd_pcm_t **rpcm);
int snd_cs46xx_mixer(cs46xx_t *chip, int spdif_device);
int snd_cs46xx_midi(cs46xx_t *chip, int device, snd_rawmidi_t **rmidi);
int snd_cs46xx_start_dsp(cs46xx_t *chip);
int snd_cs46xx_gameport(cs46xx_t *chip);
struct snd_cs46xx **rcodec);
int snd_cs46xx_pcm(struct snd_cs46xx *chip, int device, struct snd_pcm **rpcm);
int snd_cs46xx_pcm_rear(struct snd_cs46xx *chip, int device, struct snd_pcm **rpcm);
int snd_cs46xx_pcm_iec958(struct snd_cs46xx *chip, int device, struct snd_pcm **rpcm);
int snd_cs46xx_pcm_center_lfe(struct snd_cs46xx *chip, int device, struct snd_pcm **rpcm);
int snd_cs46xx_mixer(struct snd_cs46xx *chip, int spdif_device);
int snd_cs46xx_midi(struct snd_cs46xx *chip, int device, struct snd_rawmidi **rmidi);
int snd_cs46xx_start_dsp(struct snd_cs46xx *chip);
int snd_cs46xx_gameport(struct snd_cs46xx *chip);
#endif /* __SOUND_CS46XX_H */
This diff is collapsed.
......@@ -65,133 +65,130 @@
#define DSP_SPDIF_STATUS_HW_ENABLED 4
#define DSP_SPDIF_STATUS_INPUT_CTRL_ENABLED 8
struct _dsp_module_desc_t;
typedef struct _symbol_entry_t {
struct dsp_symbol_entry {
u32 address;
char symbol_name[DSP_MAX_SYMBOL_NAME];
int symbol_type;
/* initialized by driver */
struct _dsp_module_desc_t * module;
struct dsp_module_desc * module;
int deleted;
} symbol_entry_t;
};
typedef struct _symbol_desc_t {
struct dsp_symbol_desc {
int nsymbols;
symbol_entry_t * symbols;
struct dsp_symbol_entry *symbols;
/* initialized by driver */
int highest_frag_index;
} symbol_desc_t;
};
typedef struct _segment_desc_t {
struct dsp_segment_desc {
int segment_type;
u32 offset;
u32 size;
u32 * data;
} segment_desc_t;
};
typedef struct _dsp_module_desc_t {
struct dsp_module_desc {
char * module_name;
symbol_desc_t symbol_table;
struct dsp_symbol_desc symbol_table;
int nsegments;
segment_desc_t * segments;
struct dsp_segment_desc * segments;
/* initialized by driver */
u32 overlay_begin_address;
u32 load_address;
int nfixups;
} dsp_module_desc_t;
};
typedef struct _dsp_scb_descriptor_t {
struct dsp_scb_descriptor {
char scb_name[DSP_MAX_SCB_NAME];
u32 address;
int index;
struct _dsp_scb_descriptor_t * sub_list_ptr;
struct _dsp_scb_descriptor_t * next_scb_ptr;
struct _dsp_scb_descriptor_t * parent_scb_ptr;
struct dsp_scb_descriptor * sub_list_ptr;
struct dsp_scb_descriptor * next_scb_ptr;
struct dsp_scb_descriptor * parent_scb_ptr;
symbol_entry_t * task_entry;
symbol_entry_t * scb_symbol;
struct dsp_symbol_entry * task_entry;
struct dsp_symbol_entry * scb_symbol;
snd_info_entry_t *proc_info;
struct snd_info_entry *proc_info;
int ref_count;
spinlock_t lock;
int deleted;
} dsp_scb_descriptor_t;
};
typedef struct _dsp_task_descriptor_t {
struct dsp_task_descriptor {
char task_name[DSP_MAX_TASK_NAME];
int size;
u32 address;
int index;
} dsp_task_descriptor_t;
};
typedef struct _pcm_channel_descriptor_t {
struct dsp_pcm_channel_descriptor {
int active;
int src_slot;
int pcm_slot;
u32 sample_rate;
u32 unlinked;
dsp_scb_descriptor_t * pcm_reader_scb;
dsp_scb_descriptor_t * src_scb;
dsp_scb_descriptor_t * mixer_scb;
struct dsp_scb_descriptor * pcm_reader_scb;
struct dsp_scb_descriptor * src_scb;
struct dsp_scb_descriptor * mixer_scb;
void * private_data;
} pcm_channel_descriptor_t;
};
typedef struct _dsp_spos_instance_t {
symbol_desc_t symbol_table; /* currently availble loaded symbols in SP */
struct dsp_spos_instance {
struct dsp_symbol_desc symbol_table; /* currently availble loaded symbols in SP */
int nmodules;
dsp_module_desc_t * modules; /* modules loaded into SP */
struct dsp_module_desc * modules; /* modules loaded into SP */
segment_desc_t code;
struct dsp_segment_desc code;
/* Main PCM playback mixer */
dsp_scb_descriptor_t * master_mix_scb;
struct dsp_scb_descriptor * master_mix_scb;
u16 dac_volume_right;
u16 dac_volume_left;
/* Rear/surround PCM playback mixer */
dsp_scb_descriptor_t * rear_mix_scb;
struct dsp_scb_descriptor * rear_mix_scb;
/* Center/LFE mixer */
dsp_scb_descriptor_t * center_lfe_mix_scb;
struct dsp_scb_descriptor * center_lfe_mix_scb;
int npcm_channels;
int nsrc_scb;
pcm_channel_descriptor_t pcm_channels[DSP_MAX_PCM_CHANNELS];
struct dsp_pcm_channel_descriptor pcm_channels[DSP_MAX_PCM_CHANNELS];
int src_scb_slots[DSP_MAX_SRC_NR];
/* cache this symbols */
symbol_entry_t * null_algorithm; /* used by PCMreaderSCB's */
symbol_entry_t * s16_up; /* used by SRCtaskSCB's */
struct dsp_symbol_entry * null_algorithm; /* used by PCMreaderSCB's */
struct dsp_symbol_entry * s16_up; /* used by SRCtaskSCB's */
/* proc fs */
snd_card_t * snd_card;
snd_info_entry_t * proc_dsp_dir;
snd_info_entry_t * proc_sym_info_entry;
snd_info_entry_t * proc_modules_info_entry;
snd_info_entry_t * proc_parameter_dump_info_entry;
snd_info_entry_t * proc_sample_dump_info_entry;
struct snd_card *snd_card;
struct snd_info_entry * proc_dsp_dir;
struct snd_info_entry * proc_sym_info_entry;
struct snd_info_entry * proc_modules_info_entry;
struct snd_info_entry * proc_parameter_dump_info_entry;
struct snd_info_entry * proc_sample_dump_info_entry;
/* SCB's descriptors */
int nscb;
int scb_highest_frag_index;
dsp_scb_descriptor_t scbs[DSP_MAX_SCB_DESC];
snd_info_entry_t * proc_scb_info_entry;
dsp_scb_descriptor_t * the_null_scb;
struct dsp_scb_descriptor scbs[DSP_MAX_SCB_DESC];
struct snd_info_entry * proc_scb_info_entry;
struct dsp_scb_descriptor * the_null_scb;
/* Task's descriptors */
int ntask;
dsp_task_descriptor_t tasks[DSP_MAX_TASK_DESC];
snd_info_entry_t * proc_task_info_entry;
struct dsp_task_descriptor tasks[DSP_MAX_TASK_DESC];
struct snd_info_entry * proc_task_info_entry;
/* SPDIF status */
int spdif_status_out;
......@@ -204,30 +201,30 @@ typedef struct _dsp_spos_instance_t {
unsigned int spdif_csuv_stream;
/* SPDIF input sample rate converter */
dsp_scb_descriptor_t * spdif_in_src;
struct dsp_scb_descriptor * spdif_in_src;
/* SPDIF input asynch. receiver */
dsp_scb_descriptor_t * asynch_rx_scb;
struct dsp_scb_descriptor * asynch_rx_scb;
/* Capture record mixer SCB */
dsp_scb_descriptor_t * record_mixer_scb;
struct dsp_scb_descriptor * record_mixer_scb;
/* CODEC input SCB */
dsp_scb_descriptor_t * codec_in_scb;
struct dsp_scb_descriptor * codec_in_scb;
/* reference snooper */
dsp_scb_descriptor_t * ref_snoop_scb;
struct dsp_scb_descriptor * ref_snoop_scb;
/* SPDIF output PCM reference */
dsp_scb_descriptor_t * spdif_pcm_input_scb;
struct dsp_scb_descriptor * spdif_pcm_input_scb;
/* asynch TX task */
dsp_scb_descriptor_t * asynch_tx_scb;
struct dsp_scb_descriptor * asynch_tx_scb;
/* record sources */
dsp_scb_descriptor_t * pcm_input;
dsp_scb_descriptor_t * adc_input;
struct dsp_scb_descriptor * pcm_input;
struct dsp_scb_descriptor * adc_input;
int spdif_in_sample_rate;
} dsp_spos_instance_t;
};
#endif /* __DSP_SPOS_H__ */
......@@ -71,7 +71,7 @@ Ptr____Call (c)
at the end of BG */
/* Minimal context save area for Hyper Forground */
typedef struct _hf_save_area_t {
struct dsp_hf_save_area {
u32 r10_save;
u32 r54_save;
u32 r98_save;
......@@ -96,11 +96,11 @@ typedef struct _hf_save_area_t {
rsa2Save
)
/* saved as part of HFG context */
} hf_save_area_t;
};
/* Task link data structure */
typedef struct _tree_link_t {
struct dsp_tree_link {
___DSP_DUAL_16BIT_ALLOC(
/* Pointer to sibling task control block */
next_scb,
......@@ -114,10 +114,10 @@ typedef struct _tree_link_t {
/* Pointer to local data */
this_spb
)
} tree_link_t;
};
typedef struct _task_tree_data_t {
struct dsp_task_tree_data {
___DSP_DUAL_16BIT_ALLOC(
/* Initial tock count; controls task tree execution rate */
tock_count_limit,
......@@ -155,11 +155,10 @@ typedef struct _task_tree_data_t {
data_stack_base_ptr
)
} task_tree_data_t;
};
typedef struct _interval_timer_data_t
struct dsp_interval_timer_data
{
/* These data items have the same relative locations to those */
___DSP_DUAL_16BIT_ALLOC(
......@@ -172,12 +171,12 @@ typedef struct _interval_timer_data_t
num_FG_ticks_this_interval,
num_intervals
)
} interval_timer_data_t;
};
/* This structure contains extra storage for the task tree
Currently, this additional data is related only to a full context save */
typedef struct _task_tree_context_block_t {
struct dsp_task_tree_context_block {
/* Up to 10 values are saved onto the stack. 8 for the task tree, 1 for
The access to the context switch (call or interrupt), and 1 spare that
users should never use. This last may be required by the system */
......@@ -238,16 +237,16 @@ typedef struct _task_tree_context_block_t {
u32 saveaux2xaux3x;
u32 savershouthl;
u32 savershoutxmacmode;
} task_tree_context_block_t;
};
typedef struct _task_tree_control_block_t {
hf_save_area_t context;
tree_link_t links;
task_tree_data_t data;
task_tree_context_block_t context_blk;
interval_timer_data_t int_timer;
} task_tree_control_block_t;
struct dsp_task_tree_control_block {
struct dsp_hf_save_area context;
struct dsp_tree_link links;
struct dsp_task_tree_data data;
struct dsp_task_tree_context_block context_blk;
struct dsp_interval_timer_data int_timer;
};
#endif /* __DSP_TASK_TYPES_H__ */
......@@ -78,8 +78,8 @@ static int __devinit snd_card_cs46xx_probe(struct pci_dev *pci,
const struct pci_device_id *pci_id)
{
static int dev;
snd_card_t *card;
cs46xx_t *chip;
struct snd_card *card;
struct snd_cs46xx *chip;
int err;
if (dev >= SNDRV_CARDS)
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -43,7 +43,7 @@
/* this instruction types
needs to be reallocated when load
code into DSP */
typedef enum {
enum wide_opcode {
WIDE_FOR_BEGIN_LOOP = 0x20,
WIDE_FOR_BEGIN_LOOP2,
......@@ -58,7 +58,7 @@ typedef enum {
WIDE_TBEQ_COND_CALL1_ADDR,
WIDE_TBEQ_NCOND_GOTOI_ADDR,
WIDE_TBEQ_NCOND_CALL1_ADDR,
} wide_opcode_t;
};
/* SAMPLE segment */
#define VARI_DECIMATE_BUF1 0x0000
......@@ -186,7 +186,8 @@ typedef enum {
#define SP_SPDOUT_CONTROL 0x804D
#define SP_SPDOUT_CSUV 0x808E
static inline u8 _wrap_all_bits (u8 val) {
static inline u8 _wrap_all_bits (u8 val)
{
u8 wrapped;
/* wrap all 8 bits */
......@@ -201,11 +202,10 @@ static inline u8 _wrap_all_bits (u8 val) {
((val & 0x80) >> 7);
return wrapped;
}
static inline void cs46xx_dsp_spos_update_scb (cs46xx_t * chip,dsp_scb_descriptor_t * scb)
static inline void cs46xx_dsp_spos_update_scb (struct snd_cs46xx * chip,
struct dsp_scb_descriptor * scb)
{
/* update nextSCB and subListPtr in SCB */
snd_cs46xx_poke(chip,
......@@ -214,8 +214,10 @@ static inline void cs46xx_dsp_spos_update_scb (cs46xx_t * chip,dsp_scb_descripto
(scb->next_scb_ptr->address));
}
static inline void cs46xx_dsp_scb_set_volume (cs46xx_t * chip,dsp_scb_descriptor_t * scb,
u16 left,u16 right) {
static inline void cs46xx_dsp_scb_set_volume (struct snd_cs46xx * chip,
struct dsp_scb_descriptor * scb,
u16 left, u16 right)
{
unsigned int val = ((0xffff - left) << 16 | (0xffff - right));
snd_cs46xx_poke(chip, (scb->address + SCBVolumeCtrl) << 2, val);
......
This diff is collapsed.
......@@ -3,7 +3,7 @@
#ifndef __HEADER_cwc4630_H__
#define __HEADER_cwc4630_H__
static symbol_entry_t cwc4630_symbols[] = {
static struct dsp_symbol_entry cwc4630_symbols[] = {
{ 0x0000, "BEGINADDRESS",0x00 },
{ 0x8000, "EXECCHILD",0x03 },
{ 0x8001, "EXECCHILD_98",0x03 },
......@@ -302,12 +302,12 @@ static u32 cwc4630_parameter[] = {
}; /* #PARAMETER_END */
static segment_desc_t cwc4630_segments[] = {
static struct dsp_segment_desc cwc4630_segments[] = {
{ SEGTYPE_SP_PROGRAM, 0x00000000, 0x00000328, cwc4630_code },
{ SEGTYPE_SP_PARAMETER, 0x00000000, 0x00000080, cwc4630_parameter },
};
static dsp_module_desc_t cwc4630_module = {
static struct dsp_module_desc cwc4630_module = {
"cwc4630",
{
38,
......
......@@ -3,7 +3,7 @@
#ifndef __HEADER_cwcasync_H__
#define __HEADER_cwcasync_H__
static symbol_entry_t cwcasync_symbols[] = {
static struct dsp_symbol_entry cwcasync_symbols[] = {
{ 0x8000, "EXECCHILD",0x03 },
{ 0x8001, "EXECCHILD_98",0x03 },
{ 0x8003, "EXECCHILD_PUSH1IND",0x03 },
......@@ -159,11 +159,11 @@ static u32 cwcasync_code[] = {
};
/* #CODE_END */
static segment_desc_t cwcasync_segments[] = {
static struct dsp_segment_desc cwcasync_segments[] = {
{ SEGTYPE_SP_PROGRAM, 0x00000000, 0x000001b6, cwcasync_code },
};
static dsp_module_desc_t cwcasync_module = {
static struct dsp_module_desc cwcasync_module = {
"cwcasync",
{
32,
......
......@@ -4,7 +4,7 @@
#ifndef __HEADER_cwcbinhack_H__
#define __HEADER_cwcbinhack_H__
static symbol_entry_t cwcbinhack_symbols[] = {
static struct dsp_symbol_entry cwcbinhack_symbols[] = {
{ 0x02c8, "OVERLAYBEGINADDRESS",0x00 },
{ 0x02c8, "MAGICSNOOPTASK",0x03 },
{ 0x0308, "#CODE_END",0x00 },
......@@ -31,11 +31,11 @@ static u32 cwcbinhack_code[] = {
};
/* #CODE_END */
static segment_desc_t cwcbinhack_segments[] = {
static struct dsp_segment_desc cwcbinhack_segments[] = {
{ SEGTYPE_SP_PROGRAM, 0x00000000, 64, cwcbinhack_code },
};
static dsp_module_desc_t cwcbinhack_module = {
static struct dsp_module_desc cwcbinhack_module = {
"cwcbinhack",
{
3,
......
......@@ -3,7 +3,7 @@
#ifndef __HEADER_cwcdma_H__
#define __HEADER_cwcdma_H__
static symbol_entry_t cwcdma_symbols[] = {
static struct dsp_symbol_entry cwcdma_symbols[] = {
{ 0x8000, "EXECCHILD",0x03 },
{ 0x8001, "EXECCHILD_98",0x03 },
{ 0x8003, "EXECCHILD_PUSH1IND",0x03 },
......@@ -51,11 +51,11 @@ static u32 cwcdma_code[] = {
/* #CODE_END */
static segment_desc_t cwcdma_segments[] = {
static struct dsp_segment_desc cwcdma_segments[] = {
{ SEGTYPE_SP_PROGRAM, 0x00000000, 0x00000030, cwcdma_code },
};
static dsp_module_desc_t cwcdma_module = {
static struct dsp_module_desc cwcdma_module = {
"cwcdma",
{
27,
......
......@@ -3,7 +3,7 @@
#ifndef __HEADER_cwcemb80_H__
#define __HEADER_cwcemb80_H__
static symbol_entry_t cwcemb80_symbols[] = {
static struct dsp_symbol_entry cwcemb80_symbols[] = {
{ 0x0000, "BEGINADDRESS",0x00 },
{ 0x8000, "EXECCHILD",0x03 },
{ 0x8001, "EXECCHILD_98",0x03 },
......@@ -1588,13 +1588,13 @@ static u32 cwcemb80_sample[] = {
}; /* #SAMPLE_END */
static segment_desc_t cwcemb80_segments[] = {
static struct dsp_segment_desc cwcemb80_segments[] = {
{ SEGTYPE_SP_PROGRAM, 0x00000000, 0x0000031c, cwcemb80_code },
{ SEGTYPE_SP_PARAMETER, 0x00000000, 0x00000697, cwcemb80_parameter },
{ SEGTYPE_SP_SAMPLE, 0x00000000, 0x00000e00, cwcemb80_sample },
};
static dsp_module_desc_t cwcemb80_module = {
static struct dsp_module_desc cwcemb80_module = {
"cwcemb80",
{
38,
......
......@@ -3,7 +3,7 @@
#ifndef __HEADER_cwcsnoop_H__
#define __HEADER_cwcsnoop_H__
static symbol_entry_t cwcsnoop_symbols[] = {
static struct dsp_symbol_entry cwcsnoop_symbols[] = {
{ 0x0500, "OVERLAYBEGINADDRESS",0x00 },
{ 0x0500, "OUTPUTSNOOP",0x03 },
{ 0x051f, "#CODE_END",0x00 },
......@@ -29,11 +29,11 @@ static u32 cwcsnoop_code[] = {
};
/* #CODE_END */
static segment_desc_t cwcsnoop_segments[] = {
static struct dsp_segment_desc cwcsnoop_segments[] = {
{ SEGTYPE_SP_PROGRAM, 0x00000000, 0x0000003e, cwcsnoop_code },
};
static dsp_module_desc_t cwcsnoop_module = {
static struct dsp_module_desc cwcsnoop_module = {
"cwcsnoop",
{
3,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment