On Sat, 12 Feb 2005 14:38:58 -0600, Jeff Williams <[EMAIL PROTECTED]> wrote:
> On Sat, 2005-02-12 at 15:19 -0500, Tyler Trafford wrote:
> > On Fri, 11 Feb 2005 20:07:44 -0500, Tyler Trafford <[EMAIL PROTECTED]> 
> > wrote:
> > > On Thu, 10 Feb 2005 21:53:13 -0600, Jeff Williams <[EMAIL PROTECTED]> 
> > > wrote:
> > > > Attached is the pg600 update for the audio. You will need to apply my
> > > > earlier pg600 patch (which includes the no_black_magic param) and the
> > > > pvr150_ntsc_audio.patch provided earlier (if this has a reject, don't
> > > > worry my patch cleans it up) onto 0.3.2d.
> > >
> > > Finally got the chance to test the playback.
> > >
> > > I get no sound until I change CX25840_SET_PATH1_SEL_CTL to 2 instead of 0.
> > >
> > > This is on a NTSC PVR150.
> >
> > So, would this make it work for everyone?
> >
> > CX25840_SET_PATH1_SEL_CTL(state->norm!=VIDEO_MODE_NTSC||cardtype==2?0x0000:0x0002)
> >
> 
> Don't know. It would work for me.

I'd be especially interested if anyone with a PAL PVR150 could test
this series of patches, with this additional attached one.  (contains
the threads mentioned fixes).
-- 
Tyler Trafford
diff -Nur ivtv-0.3.2d-pg600/driver/cx25840-driver.c ivtv-0.3.2d-mod/driver/cx25840-driver.c
--- ivtv-0.3.2d-pg600/driver/cx25840-driver.c	2005-02-13 00:03:46.000000000 -0500
+++ ivtv-0.3.2d-mod/driver/cx25840-driver.c	2005-02-12 21:57:28.000000000 -0500
@@ -458,7 +458,7 @@
   set_fs(get_ds());
 
   md5 = crypto_alloc_tfm("md5", 0);  if (md5 == NULL) INFO("Failed to md5 digester, skipping it.");
-  sha1 = crypto_alloc_tfm("sha1", 0);  if (md5 == NULL) INFO("Failed to load sha1 digester, skipping it.");
+  sha1 = crypto_alloc_tfm("sha1", 0);  if (sha1 == NULL) INFO("Failed to load sha1 digester, skipping it.");
     
   for(file_index=0;file_index<(fw_file_name?1:ARRAY_SIZE(audio_fw_files));file_index++) {
     char *file_name=fw_file_name?fw_file_name:audio_fw_files[file_index];
@@ -1107,7 +1107,7 @@
 	  CX25840_SET_AUD_MODE_AUD_SYSTEM(0x000F), // Force auto-detect of audio
 	  CX25840_SET_PREF_MODE(0x0004),           // Preferred audio mode is stereo
 	  CX25840_SET_MUTE_NO_PREF_MODE(0x0000),   // Don't mute if preferred output unavailable
-	  CX25840_SET_PATH1_SEL_CTL(0x0000),       // Set the audio source
+	  CX25840_SET_PATH1_SEL_CTL(state->norm!=VIDEO_MODE_NTSC||cardtype==2?0x0000:0x0002),       // Set the audio source
 	  CX25840_SET_SRC3_PHASE_INC(41942880/freq_out),
 	  CX25840_SET_SOFT1_MUTE_EN(0x0001),
 	  CX25840_SET_SRC1_MUTE_EN(0x0000),
@@ -1125,11 +1125,11 @@
   	  setting_sequencer(client, seq);
   	  break;
         }
-        }
 	case -1:{
 		DEBUG(1,"%d is not a valid input!",state->input);
 		break;
 	}
+        }
       }
     }
 
diff -Nur ivtv-0.3.2d-pg600/driver/ivtv-driver.c ivtv-0.3.2d-mod/driver/ivtv-driver.c
--- ivtv-0.3.2d-pg600/driver/ivtv-driver.c	2005-02-13 00:03:17.000000000 -0500
+++ ivtv-0.3.2d-mod/driver/ivtv-driver.c	2005-02-12 21:57:28.000000000 -0500
@@ -453,12 +453,12 @@
 	itv->DMA_slock = SPIN_LOCK_UNLOCKED;
 
 #ifdef LINUX26
-	itv->vbi_work_queues = create_workqueue("ivtv_vbi", PF_NOFREEZE);
+	itv->vbi_work_queues = create_workqueue("ivtv_vbi");
 	if (itv->vbi_work_queues == NULL) {
 		IVTV_KERN_ERR("Could not create VBI workqueue\n");
 		return -1;
 	}
-	itv->fw_work_queues = create_workqueue("ivtv_fw", PF_NOFREEZE);
+	itv->fw_work_queues = create_workqueue("ivtv_fw");
 	if (itv->fw_work_queues == NULL) {
 		IVTV_KERN_ERR("Could not create FW workqueue\n");
 		return -1;

Reply via email to