Diff for /margi2/streams.c between versions 1.4 and 1.5

version 1.4, 2001/03/29 23:12:01 version 1.5, 2001/04/25 15:31:09
Line 29 Line 29
 // Frees allocated channel buffers  // Frees allocated channel buffers
 int DecoderKillChannelBuffers(struct cvdv_cards *card)  int DecoderKillChannelBuffers(struct cvdv_cards *card)
 {  {
         printk(KERN_DEBUG LOGNAME ": -- DecoderKillChannelBuffers\n");          MDEBUG(1, ": -- DecoderKillChannelBuffers\n");
         DecoderStopDecode(card);          DecoderStopDecode(card);
         DRAMFree(card, card->VideoES);          DRAMFree(card, card->VideoES);
         card->VideoES = BLANK;          card->VideoES = BLANK;
Line 70  int DecoderSetChannelBuffers(struct cvdv Line 70  int DecoderSetChannelBuffers(struct cvdv
   DecoderWriteByte(card,adr+3,((addr-1)>>8)&0x003F);\    DecoderWriteByte(card,adr+3,((addr-1)>>8)&0x003F);\
 }  }
         u32 addr;          u32 addr;
         printk(KERN_DEBUG LOGNAME ": -- DecoderSetChannelBuffers\n");          MDEBUG(1, ": -- DecoderSetChannelBuffers\n");
         //DecoderStopDecode(card);          //DecoderStopDecode(card);
         DecoderStopChannel(card);          DecoderStopChannel(card);
         VideoES >>= 1;          // change to word sizes          VideoES >>= 1;          // change to word sizes
Line 103  int DecoderSetChannelBuffers(struct cvdv Line 103  int DecoderSetChannelBuffers(struct cvdv
                 //DecoderSetByte(card,0x07B,0x10);  // navi pack counter enable                  //DecoderSetByte(card,0x07B,0x10);  // navi pack counter enable
                 card->NaviPackAddress =                  card->NaviPackAddress =
                     (DecoderReadWord(card, 0x05C) & 0x3FFF) << 7;                      (DecoderReadWord(card, 0x05C) & 0x3FFF) << 7;
 //printk(KERN_DEBUG LOGNAME ": navi bank init'ed: 0x%08X\n",card->NaviPackAddress);                  MDEBUG(4, ": navi bank init'ed: 0x%08X\n",card->NaviPackAddress);
         } else {          } else {
                 card->reg07B &= ~0x10;  // navi pack counter disable                  card->reg07B &= ~0x10;  // navi pack counter disable
                 DecoderWriteByte(card, 0x07B, card->reg07B);                  DecoderWriteByte(card, 0x07B, card->reg07B);
Line 119  int DecoderSetChannelBuffers(struct cvdv Line 119  int DecoderSetChannelBuffers(struct cvdv
   
 int DecoderUnPrepare(struct cvdv_cards *card)  int DecoderUnPrepare(struct cvdv_cards *card)
 {  {
         printk(KERN_ERR LOGNAME ": -- DecoderUnPrepare\n");          MDEBUG(0, ": -- DecoderUnPrepare\n");
         //DecoderStopDecode(card);          //DecoderStopDecode(card);
         DecoderStopChannel(card);          DecoderStopChannel(card);
         DecoderKillChannelBuffers(card);          DecoderKillChannelBuffers(card);
Line 156  void DecoderSelectAudioID(struct cvdv_ca Line 156  void DecoderSelectAudioID(struct cvdv_ca
 {  {
         int AID = card->setup.audioID;          int AID = card->setup.audioID;
         int AExt = card->setup.audioIDext;          int AExt = card->setup.audioIDext;
         printk(KERN_DEBUG LOGNAME ": -- SelectAudio %d %d\n", AID, AExt);          MDEBUG(1, ": -- SelectAudio %d %d\n", AID, AExt);
         DecoderWriteByte(card, 0x07C, AExt & 0x1F);     // Audio Stream Extension ID          DecoderWriteByte(card, 0x07C, AExt & 0x1F);     // Audio Stream Extension ID
         card->reg08F = (card->reg08F & ~0x1F) | (AID & 0x1F);          card->reg08F = (card->reg08F & ~0x1F) | (AID & 0x1F);
         DecoderWriteByte(card, 0x08F, card->reg08F);          DecoderWriteByte(card, 0x08F, card->reg08F);
Line 175  void DecoderPrepareAudio(struct cvdv_car Line 175  void DecoderPrepareAudio(struct cvdv_car
         int AID = card->setup.audioID;          int AID = card->setup.audioID;
         int AExt = card->setup.audioIDext;          int AExt = card->setup.audioIDext;
         int IEC956 = card->setup.SPDIFmode;          int IEC956 = card->setup.SPDIFmode;
         printk(KERN_DEBUG LOGNAME ": -- PrepAudio %d %d %d %d %d\n",          MDEBUG(1, ": -- PrepAudio %d %d %d %d %d\n",
                AHeader, card->setup.audioselect, AID, AExt, IEC956);                 AHeader, card->setup.audioselect, AID, AExt, IEC956);
         switch (card->setup.audioselect) {          switch (card->setup.audioselect) {
         case audio_disable:          case audio_disable:
Line 289  void DecoderPrepareVideo(struct cvdv_car Line 289  void DecoderPrepareVideo(struct cvdv_car
 int DecoderPrepareES(struct cvdv_cards *card)  int DecoderPrepareES(struct cvdv_cards *card)
 {  {
         int i;          int i;
         printk(KERN_DEBUG LOGNAME ": -- PrepareES\n");          MDEBUG(1, ": -- PrepareES\n");
         //DecoderStopDecode(card);          //DecoderStopDecode(card);
   
 //  DecoderWriteByte(card,0x05,0x00);  //  DecoderWriteByte(card,0x05,0x00);
   
         DecoderMaskByte(card, 0x007, 0xCE, 0xC2 | (3 << 2));    // Stream Select: A/V Elementary Stream          DecoderMaskByte(card, 0x007, 0xCE, 0xC2 | (3 << 2));    // Stream Select: A/V Elementary Stream
 //printk(KERN_DEBUG LOGNAME ": Int - A VideoES w/r addr: %08X %08X\n",          MDEBUG(3, ": Int - A VideoES w/r addr: %08X %08X\n",
 //  (DecoderReadByte(card,0x060)|(DecoderReadByte(card,0x061)<<8)|(DecoderReadByte(card,0x062)<<16))<<2,                 (DecoderReadByte(card,0x060)|(DecoderReadByte(card,0x061)<<8)|
 //  (DecoderReadByte(card,0x06C)|(DecoderReadByte(card,0x06D)<<8)|(DecoderReadByte(card,0x06E)<<16))<<2);                  (DecoderReadByte(card,0x062)<<16))<<2,
                  (DecoderReadByte(card,0x06C)|(DecoderReadByte(card,0x06D)<<8)|
                   (DecoderReadByte(card,0x06E)<<16))<<2);
         // set the decoding buffers          // set the decoding buffers
         card->reg093 = (card->reg093 & ~0xFC);  // write no header          card->reg093 = (card->reg093 & ~0xFC);  // write no header
         DecoderWriteByte(card, 0x093, card->reg093);          DecoderWriteByte(card, 0x093, card->reg093);
         if ((i = DecoderSetChannelBuffers(card, 256000, 4096, 0, 0, 0, 0))) {          if ((i = DecoderSetChannelBuffers(card, 256000, 4096, 0, 0, 0, 0))) {
                 printk(KERN_ERR LOGNAME                  MDEBUG(0, ": SetDecoderBuffers failed for buffer at 0x%03X\n", i);
                        ": SetDecoderBuffers failed for buffer at 0x%03X\n",  
                        i);  
                 DecoderKillChannelBuffers(card);                  DecoderKillChannelBuffers(card);
                 return 1;                  return 1;
         }          }
 //printk(KERN_DEBUG LOGNAME ": Int - B VideoES w/r addr: %08X %08X\n",          MDEBUG(3, ": Int - B VideoES w/r addr: %08X %08X\n",
 //  (DecoderReadByte(card,0x060)|(DecoderReadByte(card,0x061)<<8)|(DecoderReadByte(card,0x062)<<16))<<2,                 (DecoderReadByte(card,0x060)|(DecoderReadByte(card,0x061)<<8)|
 //  (DecoderReadByte(card,0x06C)|(DecoderReadByte(card,0x06D)<<8)|(DecoderReadByte(card,0x06E)<<16))<<2);                  (DecoderReadByte(card,0x062)<<16))<<2,
                  (DecoderReadByte(card,0x06C)|(DecoderReadByte(card,0x06D)<<8)|
 //printk(KERN_DEBUG LOGNAME ": Int - C VideoES w/r addr: %08X %08X\n",                  (DecoderReadByte(card,0x06E)<<16))<<2);
 //  (DecoderReadByte(card,0x060)|(DecoderReadByte(card,0x061)<<8)|(DecoderReadByte(card,0x062)<<16))<<2,  
 //  (DecoderReadByte(card,0x06C)|(DecoderReadByte(card,0x06D)<<8)|(DecoderReadByte(card,0x06E)<<16))<<2);          MDEBUG(3, ": Int - C VideoES w/r addr: %08X %08X\n",
                  (DecoderReadByte(card,0x060)|(DecoderReadByte(card,0x061)<<8)|
                   (DecoderReadByte(card,0x062)<<16))<<2,
                  (DecoderReadByte(card,0x06C)|(DecoderReadByte(card,0x06D)<<8)|
                   (DecoderReadByte(card,0x06E)<<16))<<2);
   
 //  DecoderStartChannel(card);     //  DecoderStartChannel(card);   
 //  DecoderStartDecode(card);  //  DecoderStartDecode(card);
   
 //printk(KERN_DEBUG LOGNAME ": Int - D VideoES w/r addr: %08X %08X\n",          MDEBUG(3, ": Int - D VideoES w/r addr: %08X %08X\n",
 //  (DecoderReadByte(card,0x060)|(DecoderReadByte(card,0x061)<<8)|(DecoderReadByte(card,0x062)<<16))<<2,                 (DecoderReadByte(card,0x060)|(DecoderReadByte(card,0x061)<<8)|
 //  (DecoderReadByte(card,0x06C)|(DecoderReadByte(card,0x06D)<<8)|(DecoderReadByte(card,0x06E)<<16))<<2);                  (DecoderReadByte(card,0x062)<<16))<<2,
                  (DecoderReadByte(card,0x06C)|(DecoderReadByte(card,0x06D)<<8)|
                   (DecoderReadByte(card,0x06E)<<16))<<2);
   
         DecoderPrepare(card);          DecoderPrepare(card);
   
Line 344  int DecoderPreparePES(struct cvdv_cards Line 350  int DecoderPreparePES(struct cvdv_cards
         int SysHeader = 0;          int SysHeader = 0;
         int DSIHeader = 0;          int DSIHeader = 0;
   
         printk(KERN_DEBUG LOGNAME ": -- PreparePES\n");          MDEBUG(1, ": -- PreparePES\n");
         DecoderMaskByte(card, 0x007, 0xCE, 0xC2 | (0 << 2));    // Stream Select: A/V PES Packets          DecoderMaskByte(card, 0x007, 0xCE, 0xC2 | (0 << 2));    // Stream Select: A/V PES Packets
   
         if (SPUID < 0)          if (SPUID < 0)
Line 365  int DecoderPreparePES(struct cvdv_cards Line 371  int DecoderPreparePES(struct cvdv_cards
             (i =              (i =
              DecoderSetChannelBuffers(card, 256000, 4096, 512, 0, 512,               DecoderSetChannelBuffers(card, 256000, 4096, 512, 0, 512,
                                       0))) {                                        0))) {
                 printk(KERN_ERR LOGNAME                  MDEBUG(0,": SetDecoderBuffers failed for buffer at 0x%03X\n", i);
                        ": SetDecoderBuffers failed for buffer at 0x%03X\n",  
                        i);  
                 DecoderKillChannelBuffers(card);                  DecoderKillChannelBuffers(card);
                 return 1;                  return 1;
         }          }
Line 390  int DecoderPreparePS(struct cvdv_cards * Line 394  int DecoderPreparePS(struct cvdv_cards *
                      int PackHeader, int SysHeader, int DSIHeader, int DVD)                       int PackHeader, int SysHeader, int DSIHeader, int DVD)
 {  {
         int i=0;          int i=0;
         printk(KERN_DEBUG LOGNAME ": -- PreparePS %s\n",          MDEBUG(1, ": -- PreparePS %s\n", ((DVD) ? "DVD" : ""));
                ((DVD) ? "DVD" : ""));  
         //DecoderStopDecode(card);          //DecoderStopDecode(card);
         DecoderMaskByte(card, 0x007, 0xCE, 0xC2 | (1 << 2));    // Stream Select: MPEG1 System / MPEG2 Program Stream          DecoderMaskByte(card, 0x007, 0xCE, 0xC2 | (1 << 2));    // Stream Select: MPEG1 System / MPEG2 Program Stream
   
Line 419  int DecoderPreparePS(struct cvdv_cards * Line 422  int DecoderPreparePS(struct cvdv_cards *
                 //   512,0) ;                  //   512,0) ;
   
                 if (i) {                  if (i) {
                         printk(KERN_ERR LOGNAME                          MDEBUG(0,": SetDecoderBuffers failed for buffer at 0x%03X\n", i);
                                ": SetDecoderBuffers failed for buffer at 0x%03X\n",  
                                i);  
                         DecoderKillChannelBuffers(card);                          DecoderKillChannelBuffers(card);
                         return 1;                          return 1;
                 }                  }
Line 431  int DecoderPreparePS(struct cvdv_cards * Line 432  int DecoderPreparePS(struct cvdv_cards *
                     (i =                      (i =
                   DecoderSetChannelBuffers(card, 340000, 32768, 512,                    DecoderSetChannelBuffers(card, 340000, 32768, 512,
                                    0, 512, 0))) {                                     0, 512, 0))) {
                         printk(KERN_ERR LOGNAME                          MDEBUG(0,": SetDecoderBuffers failed for buffer at 0x%03X\n", i);
                                ": SetDecoderBuffers failed for buffer at 0x%03X\n",  
                                i);  
                         DecoderKillChannelBuffers(card);                          DecoderKillChannelBuffers(card);
                         return 1;                          return 1;
                 }                  }

Removed from v.1.4  
changed lines
  Added in v.1.5


LinuxTV legacy CVS <linuxtv.org/cvs>