static int zylonite_wm9713_voice_startup(struct snd_pcm_substream *substream) { struct snd_soc_pcm_runtime *rtd = substream->private_data; struct snd_soc_dai_link *machine = rtd->dai; struct snd_soc_dai *cpu_dai = machine->cpu_dai; set_dvfm_constraint(); cpu_dai->playback.channels_min = 1; cpu_dai->playback.channels_max = 1; cpu_dai->playback.formats = SNDRV_PCM_FMTBIT_S8 | SNDRV_PCM_FMTBIT_U8 | SNDRV_PCM_FMTBIT_S16_LE; cpu_dai->playback.rates = SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000 | SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_48000; cpu_dai->capture.channels_min = 1; cpu_dai->capture.channels_max = 1; cpu_dai->capture.formats = SNDRV_PCM_FMTBIT_S8 | SNDRV_PCM_FMTBIT_U8 | SNDRV_PCM_FMTBIT_S16_LE; cpu_dai->capture.rates = SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000 | SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_48000; return 0; }
int vmeta_clk_on(struct vmeta_instance *vi) { mutex_lock(&vi->mutex); if (vi->clk_status != 0) { mutex_unlock(&vi->mutex); return 0; } set_dvfm_constraint(vi); if (NULL != vi->axi_clk) clk_enable(vi->axi_clk); if (NULL != vi->clk) clk_enable(vi->clk); vi->clk_status = 2; mutex_unlock(&vi->mutex); gc_vmeta_stats_clk_event(VMETA_CLK_ON); return 0; }
static int lcd_backlight_control(int num) { int index = 0; int limit; limit = num+1; set_dvfm_constraint(); spin_lock(&bl_ctrl_lock); if(backlight_status==0) { gpio_set_value(backlight_pin, 1); backlight_status = 1; mdelay(1); #if defined(__BACKLIGHT_DEBUG__) printk("[BACKLIGHT] Backlight On \n"); #endif } for(index = 0; index < limit; index ++) { gpio_direction_output(backlight_pin,0); udelay(1); gpio_direction_output(backlight_pin,1); udelay(1); } spin_unlock(&bl_ctrl_lock); unset_dvfm_constraint(); return 0; }
static int zylonite_wm9713_hifi_startup(struct snd_pcm_substream *substream) { set_dvfm_constraint(); return 0; }