aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/linux/linux-2.6.20/nhk15/audio_codec_patch_base_v5.6.0.patch
diff options
context:
space:
mode:
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.patch53
1 files changed, 37 insertions, 16 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
index 1a7bd9e836..5b9c187fbc 100644
--- 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
@@ -1,7 +1,14 @@
-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
+---
+ drivers/media/nomadik_mm/saa/nomadik-saa.c | 4 +++-
+ sound/arm/nomadik_alsa.c | 4 ++++
+ sound/nomadik_stw5095.c | 17 +++++++++++++++++
+ 3 files changed, 24 insertions(+), 1 deletion(-)
+
+--- linux-2.6.20.orig/drivers/media/nomadik_mm/saa/nomadik-saa.c
++++ linux-2.6.20/drivers/media/nomadik_mm/saa/nomadik-saa.c
+@@ -1290,16 +1290,18 @@ static int link_msp (struct instance_des
+
+ }
else
{
/*Configure Output sink for audiocodec*/
@@ -17,15 +24,18 @@ diff -Nauprw linux-2.6.20/drivers/media/nomadik_mm/saa/nomadik-saa.c ../new/linu
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
+ up(&saa_desc->open_lock);
+ return -EBUSY;
+--- linux-2.6.20.orig/sound/arm/nomadik_alsa.c
++++ linux-2.6.20/sound/arm/nomadik_alsa.c
+@@ -566,14 +566,18 @@ static int snd_nomadik_alsa_pcm_open(snd
+ /* Set the hardware configuration */
+ stream_id = substream->pstr->stream;
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(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;
@@ -35,10 +45,13 @@ diff -Nauprw linux-2.6.20/sound/arm/nomadik_alsa.c ../new/linux-2.6.20/sound/arm
} 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
+ if ((error = nomadik_acodec_select_input(chip->input_device, USER_ALSA))) {
+ printk("ALSA: ERROR: select input failed\n");
+--- linux-2.6.20.orig/sound/nomadik_stw5095.c
++++ linux-2.6.20/sound/nomadik_stw5095.c
+@@ -3235,19 +3235,32 @@ t_codec_error nomadik_acodec_setuser(t_a
+ * Unset the current user for acodec.
+ */
t_codec_error nomadik_acodec_unsetuser(t_acodec_user user)
{
@@ -46,11 +59,13 @@ diff -Nauprw linux-2.6.20/sound/nomadik_stw5095.c ../new/linux-2.6.20/sound/noma
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
+ printk
+ ("ERROR : Trying to free audiocodec already in use by other user %d\n", g_codec_system_context.cur_user);
+ return CODEC_ERROR;
}
else {
g_codec_system_context.cur_user = NO_USER;
-+
++
+ err = STMPE2401_Install_Callback(STMPE0, EGPIO_PIN_7 ,NULL,(void*)user);
+ if (err != STMPE2401_OK)
+ {
@@ -65,7 +80,11 @@ diff -Nauprw linux-2.6.20/sound/nomadik_stw5095.c ../new/linux-2.6.20/sound/noma
nomadik_acodec_powerdown(0);
}
-@@ -3282,6 +3295,10 @@ static void codec_callback1(void *user)
+ return (codec_error);
+ }
+@@ -3280,10 +3293,14 @@ static void codec_callback1(void *user)
+ {
+ int err,codec_error;
uint8 byte_value;
t_acodec_user t;
t = (t_acodec_user) user;
@@ -76,3 +95,5 @@ diff -Nauprw linux-2.6.20/sound/nomadik_stw5095.c ../new/linux-2.6.20/sound/noma
err = STMPE2401_GetGpioVal(STMPE0,EGPIO_PIN_7,&byte_value);
switch(byte_value) {
+ case 0:
+ err = STMPE2401_SetGpioAltFunction(STMPE0,EGPIO_PIN_12,STMPE2401_PRIMARY_FUNCTION);