diff options
| author | Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> | 2009-07-28 13:39:53 +0200 |
|---|---|---|
| committer | Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> | 2009-10-26 17:28:25 +0100 |
| commit | 6cb806430f8a66630f960bf0570c49fddacfe98d (patch) | |
| tree | ab5fdf7aac8d0dc559adac3f92d3235376b3e5a1 /recipes/linux/linux-2.6.20/nhk15/audio_codec_patch_base_v5.6.0.patch | |
| parent | 63fd61ae8ac790aed5ac5d562add1fcf278771f9 (diff) | |
linux: added NHK15 support for 2.6.20 version
staged headers are needed for x11 acceleration
Diffstat (limited to 'recipes/linux/linux-2.6.20/nhk15/audio_codec_patch_base_v5.6.0.patch')
| -rw-r--r-- | recipes/linux/linux-2.6.20/nhk15/audio_codec_patch_base_v5.6.0.patch | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/recipes/linux/linux-2.6.20/nhk15/audio_codec_patch_base_v5.6.0.patch b/recipes/linux/linux-2.6.20/nhk15/audio_codec_patch_base_v5.6.0.patch new file mode 100644 index 0000000000..1a7bd9e836 --- /dev/null +++ b/recipes/linux/linux-2.6.20/nhk15/audio_codec_patch_base_v5.6.0.patch @@ -0,0 +1,78 @@ +diff -Nauprw linux-2.6.20/drivers/media/nomadik_mm/saa/nomadik-saa.c ../new/linux-2.6.20/drivers/media/nomadik_mm/saa/nomadik-saa.c +--- linux-2.6.20/drivers/media/nomadik_mm/saa/nomadik-saa.c 2008-11-24 14:06:25.000000000 +0530 ++++ ../new/linux-2.6.20/drivers/media/nomadik_mm/saa/nomadik-saa.c 2008-11-26 18:37:16.000000000 +0530 +@@ -1292,12 +1292,14 @@ static int link_msp (struct instance_des + else + { + /*Configure Output sink for audiocodec*/ ++ //Audiocodec driver will do this. ++ #if 0 + acodec_error = nomadik_acodec_select_output(DEFAULT_OUTPUT_DEVICE, USER_SAA); + if (acodec_error != CODEC_OK) { + printk ("SAA_DRV ERROR : configuring audiocodec:%i\n", acodec_error); + return acodec_error; + } +- ++ #endif + down(&saa_desc->open_lock); + if(saa_desc->msp_out_flag != 0){ + printk ("SAA_DRV ERROR : MSP OUT already used \n"); +diff -Nauprw linux-2.6.20/sound/arm/nomadik_alsa.c ../new/linux-2.6.20/sound/arm/nomadik_alsa.c +--- linux-2.6.20/sound/arm/nomadik_alsa.c 2008-11-24 14:06:29.000000000 +0530 ++++ ../new/linux-2.6.20/sound/arm/nomadik_alsa.c 2008-11-26 18:36:26.000000000 +0530 +@@ -568,10 +568,14 @@ static int snd_nomadik_alsa_pcm_open(snd + if (stream_id == SNDRV_PCM_STREAM_PLAYBACK) { + runtime->hw = snd_nomadik_playback_hw; + /* configure the output sink for the acodec */ ++ #if 0 ++ if(codec_conf.codec_output != chip->output_device){ + if ((error = nomadik_acodec_select_output(chip->output_device, USER_ALSA))) { + printk("ALSA: ERROR: select output failed\n"); + return error; + } ++ } ++ #endif + } else { + runtime->hw = snd_nomadik_capture_hw; + /* configure the input source for the acodec */ +diff -Nauprw linux-2.6.20/sound/nomadik_stw5095.c ../new/linux-2.6.20/sound/nomadik_stw5095.c +--- linux-2.6.20/sound/nomadik_stw5095.c 2008-11-24 14:06:29.000000000 +0530 ++++ ../new/linux-2.6.20/sound/nomadik_stw5095.c 2008-11-26 18:36:04.000000000 +0530 +@@ -3237,6 +3237,7 @@ t_codec_error nomadik_acodec_setuser(t_a + + t_codec_error nomadik_acodec_unsetuser(t_acodec_user user) + { ++ int err=0; + t_codec_error codec_error = CODEC_OK; + + if(g_codec_system_context.cur_user != user){ +@@ -3246,6 +3247,18 @@ t_codec_error nomadik_acodec_unsetuser(t + } + else { + g_codec_system_context.cur_user = NO_USER; ++ ++ err = STMPE2401_Install_Callback(STMPE0, EGPIO_PIN_7 ,NULL,(void*)user); ++ if (err != STMPE2401_OK) ++ { ++ printk("Couldn't setup codec callback\n"); ++ } ++ ++ err = STMPE2401_Install_Callback(STMPE0, EGPIO_PIN_6 ,NULL,(void*)user); ++ if (err != STMPE2401_OK) ++ { ++ printk("Couldn't setup codec callback\n"); ++ } + nomadik_acodec_powerdown(0); + } + +@@ -3282,6 +3295,10 @@ static void codec_callback1(void *user) + uint8 byte_value; + t_acodec_user t; + t = (t_acodec_user) user; ++ //spurious interuupt protection ++ if((t != USER_ALSA) && (t != USER_SAA) ) ++ return; ++ + err = STMPE2401_GetGpioVal(STMPE0,EGPIO_PIN_7,&byte_value); + switch(byte_value) { + |
