Lines Matching refs:hwinfo
76 struct snd_efw_hwinfo *hwinfo; in get_hardware_info() local
80 hwinfo = kzalloc(sizeof(struct snd_efw_hwinfo), GFP_KERNEL); in get_hardware_info()
81 if (hwinfo == NULL) in get_hardware_info()
84 err = snd_efw_command_get_hwinfo(efw, hwinfo); in get_hardware_info()
90 (hwinfo->arm_version >> 24) & 0xff, in get_hardware_info()
91 (hwinfo->arm_version >> 16) & 0xff); in get_hardware_info()
92 efw->firmware_version = hwinfo->arm_version; in get_hardware_info()
95 strcpy(efw->card->shortname, hwinfo->model_name); in get_hardware_info()
96 strcpy(efw->card->mixername, hwinfo->model_name); in get_hardware_info()
99 hwinfo->vendor_name, hwinfo->model_name, version, in get_hardware_info()
100 hwinfo->guid_hi, hwinfo->guid_lo, in get_hardware_info()
103 if (hwinfo->flags & BIT(FLAG_RESP_ADDR_CHANGABLE)) in get_hardware_info()
107 if ((hwinfo->min_sample_rate <= 22050) in get_hardware_info()
108 && (22050 <= hwinfo->max_sample_rate)) in get_hardware_info()
110 if ((hwinfo->min_sample_rate <= 32000) in get_hardware_info()
111 && (32000 <= hwinfo->max_sample_rate)) in get_hardware_info()
113 if ((hwinfo->min_sample_rate <= 44100) in get_hardware_info()
114 && (44100 <= hwinfo->max_sample_rate)) in get_hardware_info()
116 if ((hwinfo->min_sample_rate <= 48000) in get_hardware_info()
117 && (48000 <= hwinfo->max_sample_rate)) in get_hardware_info()
119 if ((hwinfo->min_sample_rate <= 88200) in get_hardware_info()
120 && (88200 <= hwinfo->max_sample_rate)) in get_hardware_info()
122 if ((hwinfo->min_sample_rate <= 96000) in get_hardware_info()
123 && (96000 <= hwinfo->max_sample_rate)) in get_hardware_info()
125 if ((hwinfo->min_sample_rate <= 176400) in get_hardware_info()
126 && (176400 <= hwinfo->max_sample_rate)) in get_hardware_info()
128 if ((hwinfo->min_sample_rate <= 192000) in get_hardware_info()
129 && (192000 <= hwinfo->max_sample_rate)) in get_hardware_info()
133 if (hwinfo->midi_out_ports > SND_EFW_MAX_MIDI_OUT_PORTS || in get_hardware_info()
134 hwinfo->midi_in_ports > SND_EFW_MAX_MIDI_IN_PORTS) { in get_hardware_info()
138 efw->midi_out_ports = hwinfo->midi_out_ports; in get_hardware_info()
139 efw->midi_in_ports = hwinfo->midi_in_ports; in get_hardware_info()
141 if (hwinfo->amdtp_tx_pcm_channels > AMDTP_MAX_CHANNELS_FOR_PCM || in get_hardware_info()
142 hwinfo->amdtp_tx_pcm_channels_2x > AMDTP_MAX_CHANNELS_FOR_PCM || in get_hardware_info()
143 hwinfo->amdtp_tx_pcm_channels_4x > AMDTP_MAX_CHANNELS_FOR_PCM || in get_hardware_info()
144 hwinfo->amdtp_rx_pcm_channels > AMDTP_MAX_CHANNELS_FOR_PCM || in get_hardware_info()
145 hwinfo->amdtp_rx_pcm_channels_2x > AMDTP_MAX_CHANNELS_FOR_PCM || in get_hardware_info()
146 hwinfo->amdtp_rx_pcm_channels_4x > AMDTP_MAX_CHANNELS_FOR_PCM) { in get_hardware_info()
150 efw->pcm_capture_channels[0] = hwinfo->amdtp_tx_pcm_channels; in get_hardware_info()
151 efw->pcm_capture_channels[1] = hwinfo->amdtp_tx_pcm_channels_2x; in get_hardware_info()
152 efw->pcm_capture_channels[2] = hwinfo->amdtp_tx_pcm_channels_4x; in get_hardware_info()
153 efw->pcm_playback_channels[0] = hwinfo->amdtp_rx_pcm_channels; in get_hardware_info()
154 efw->pcm_playback_channels[1] = hwinfo->amdtp_rx_pcm_channels_2x; in get_hardware_info()
155 efw->pcm_playback_channels[2] = hwinfo->amdtp_rx_pcm_channels_4x; in get_hardware_info()
158 if (hwinfo->phys_in_grp_count > HWINFO_MAX_CAPS_GROUPS || in get_hardware_info()
159 hwinfo->phys_out_grp_count > HWINFO_MAX_CAPS_GROUPS) { in get_hardware_info()
163 efw->phys_in = hwinfo->phys_in; in get_hardware_info()
164 efw->phys_out = hwinfo->phys_out; in get_hardware_info()
165 efw->phys_in_grp_count = hwinfo->phys_in_grp_count; in get_hardware_info()
166 efw->phys_out_grp_count = hwinfo->phys_out_grp_count; in get_hardware_info()
167 memcpy(&efw->phys_in_grps, hwinfo->phys_in_grps, in get_hardware_info()
168 sizeof(struct snd_efw_phys_grp) * hwinfo->phys_in_grp_count); in get_hardware_info()
169 memcpy(&efw->phys_out_grps, hwinfo->phys_out_grps, in get_hardware_info()
170 sizeof(struct snd_efw_phys_grp) * hwinfo->phys_out_grp_count); in get_hardware_info()
172 kfree(hwinfo); in get_hardware_info()