32 static int set_professional_spdif(
struct echoaudio *
chip,
char prof);
40 DE_INIT((
"init_hw() - Gina20\n"));
44 if ((err = init_dsp_comm_page(chip))) {
45 DE_INIT((
"init_hw - could not initialize DSP comm page\n"));
61 if ((err = load_firmware(chip)) < 0)
71 static int set_mixer_defaults(
struct echoaudio *chip)
74 return init_line_levels(chip);
79 static u32 detect_input_clocks(
const struct echoaudio *chip)
81 u32 clocks_from_dsp, clock_bits;
98 static int load_asic(
struct echoaudio *chip)
107 u8 clock_state, spdif_status;
109 if (wait_handshake(chip))
133 chip->
comm_page->gd_clock_state = clock_state;
134 chip->
comm_page->gd_spdif_status = spdif_status;
144 clear_handshake(chip);
152 DE_ACT((
"set_input_clock:\n"));
161 DE_ACT((
"Set Gina clock to INTERNAL\n"));
166 clear_handshake(chip);
169 DE_ACT((
"Set Gina20 clock to SPDIF\n"));
187 if (wait_handshake(chip))
199 static int update_flags(
struct echoaudio *chip)
201 if (wait_handshake(chip))
203 clear_handshake(chip);
209 static int set_professional_spdif(
struct echoaudio *chip,
char prof)
211 DE_ACT((
"set_professional_spdif %d\n", prof));
219 return update_flags(chip);