/****************************************************************************** * FunctionName : ir_tx_carrier_clr * Description : stop 38khz carrier clk and output low * Parameters : NONE * Returns : NONE *******************************************************************************/ void ir_tx_carrier_clr(void) { PIN_FUNC_SELECT(IR_GPIO_OUT_MUX, IR_GPIO_OUT_FUNC); IR_TX_SET_INACTIVE(IR_GPIO_OUT_NUM); i2s_stop(); //stop }
static int dw_i2s_trigger(struct snd_pcm_substream *substream, int cmd, struct snd_soc_dai *dai) { struct dw_i2s_dev *dev = snd_soc_dai_get_drvdata(dai); int ret = 0; switch (cmd) { case SNDRV_PCM_TRIGGER_START: case SNDRV_PCM_TRIGGER_RESUME: case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: dev->active++; i2s_start(dev, substream); break; case SNDRV_PCM_TRIGGER_STOP: case SNDRV_PCM_TRIGGER_SUSPEND: case SNDRV_PCM_TRIGGER_PAUSE_PUSH: dev->active--; i2s_stop(dev, substream); break; default: ret = -EINVAL; break; } return ret; }
void c_ICS43432::stop(void) { i2s_stop(); }