sft.c
上传用户:caisangzi8
上传日期:2013-10-25
资源大小:15756k
文件大小:2k
源码类别:

DVD

开发平台:

C/C++

  1. #include "config.h"
  2. #include "regmap.h"
  3. void sft_hvsync(void)   //freyman 2004-2-27 12:00
  4. //sft_hvsync(int enable)
  5. {
  6. #ifdef  SPHE8202
  7.     #ifndef UART_SWAP//axel swap uart0 and uar1 2004/10/29
  8.     // select HV-sync in stead of UART0
  9.     regs0->sft_cfg2 = regs0->sft_cfg2 & ~(3<<2);                // SFT_CFG[3:2]=0;
  10.                                                                 // disable UART
  11.     regs0->sft_cfg3 = (regs0->sft_cfg3 & ~(3<<12)) | (0<<12);   // SFT_CFG3[13:12]=2'b00
  12.                                                                 // disable TV_SYNC
  13.     regs0->sft_cfg4 = (regs0->sft_cfg4 & ~(7<<13)) | (3<<13);   // SFT_CFG4[15:13]=3'b011
  14.     #endif //#ifndef UART_SWAP                                                                // select PC_sync
  15. #else
  16.         #ifdef QSI_SHOW_ERR_RATE
  17.             //#include "uart.h"
  18.             //#undef UART_SWAP
  19.         
  20.             //regs0->sft_cfg2 |= 1<<15;
  21.             //UART0_set_baudrate(BAUDCC(115200, 121500000));
  22.             //psprintf(linebuf,"cd trk hi=%dn",cd_trk_hi);         
  23.             //UART0_puts(linebuf);          
  24.             //return;
  25.         #endif   
  26.     // select HV-sync in stead of UART0
  27.     regs0->sft_cfg2 &= 0xFFE3;      // DISABLE UART0
  28.     regs0->sft_cfg3 |= 0x4000;      // select H/V sync
  29. #endif
  30. }
  31. void
  32. sft_uart0_share_uart1_pins()
  33. {
  34. #ifndef SPHE8202
  35.     //
  36.     // move UART0 to UART1 location
  37.     unsigned u;
  38.     u = regs0->sft_cfg2;
  39.     regs0->sft_cfg2 = (u&~((0x07<<2)|(0x0f<<5))) | ((0x04<<2)|(0x09<<5));
  40.     u = regs0->sft_cfg3;
  41.     regs0->sft_cfg3 = (u&~(0x03<<14)) | (0x01<<14);
  42. #endif
  43. }
  44. void
  45. sft_uart_swap()
  46. {
  47.     unsigned u;
  48.     u = regs0->sft_cfg2;
  49.         regs0->sft_cfg2 = (u&~((0x03<<2)|(0x03<<4)|(0x03<<14)) | ((0x01<<2)|(0x03<<4)|(0x03<<14) ));
  50. }