.. | .. |
---|
51 | 51 | u8 inputclkfs = 0; |
---|
52 | 52 | u8 val; |
---|
53 | 53 | |
---|
| 54 | + dw_hdmi_audio_disable(hdmi); |
---|
| 55 | + |
---|
54 | 56 | /* it cares I2S only */ |
---|
55 | 57 | if ((fmt->fmt != HDMI_I2S) || |
---|
56 | 58 | (fmt->bit_clk_master | fmt->frame_clk_master)) { |
---|
.. | .. |
---|
202 | 204 | return 0; |
---|
203 | 205 | } |
---|
204 | 206 | |
---|
205 | | -static void dw_hdmi_i2s_audio_shutdown(struct device *dev, void *data) |
---|
206 | | -{ |
---|
207 | | - struct dw_hdmi_i2s_audio_data *audio = data; |
---|
208 | | - struct dw_hdmi *hdmi = audio->hdmi; |
---|
209 | | - |
---|
210 | | - dw_hdmi_audio_disable(hdmi); |
---|
211 | | - |
---|
212 | | - hdmi_update_bits(audio, |
---|
213 | | - HDMI_AUD_CONF0_SW_RESET, |
---|
214 | | - HDMI_AUD_CONF0_SW_RESET | |
---|
215 | | - (HDMI_AUD_CONF0_I2S_ALL_ENABLE ^ |
---|
216 | | - HDMI_AUD_CONF0_I2S_SELECT_MASK), |
---|
217 | | - HDMI_AUD_CONF0); |
---|
218 | | -} |
---|
219 | | - |
---|
220 | 207 | static int dw_hdmi_i2s_get_dai_id(struct snd_soc_component *component, |
---|
221 | 208 | struct device_node *endpoint) |
---|
222 | 209 | { |
---|
.. | .. |
---|
249 | 236 | |
---|
250 | 237 | static struct hdmi_codec_ops dw_hdmi_i2s_ops = { |
---|
251 | 238 | .hw_params = dw_hdmi_i2s_hw_params, |
---|
252 | | - .audio_shutdown = dw_hdmi_i2s_audio_shutdown, |
---|
253 | 239 | .get_dai_id = dw_hdmi_i2s_get_dai_id, |
---|
254 | 240 | .hook_plugged_cb = dw_hdmi_i2s_hook_plugged_cb, |
---|
255 | 241 | }; |
---|