gpio_8202.h
上传用户:poi891205
上传日期:2013-07-15
资源大小:9745k
文件大小:16k
源码类别:

DVD

开发平台:

C/C++

  1. #ifndef __GPIO_8202_H
  2. #define __GPIO_8202_H
  3. /***********************************SET RISC CTRL GPIO*************************/
  4. //liumzh eastech used, for audio mute     
  5.     #define SFT_CFG_GPIO12()
  6. do {
  7. GPIO_M_SET(12, 1);             
  8. } while (0)
  9.     #define SFT_CFG_GPIO32()                        
  10. do {
  11. regs0->sft_cfg0 &= ~(0x1 << 0);
  12. GPIO_M_SET(32, 1);             
  13. } while (0)
  14. /*
  15. *GPIO56:pin172(216pin)****pin200(256pin)
  16. */
  17.     #define SFT_CFG_GPIO56()                        
  18. do {
  19. regs0->sft_cfg3 &= ~(0x1 << 4);
  20. GPIO_M_SET(56, 1);             
  21. } while (0)
  22. /*
  23. *GPIO2:pin49(216pin)****pin59(256pin)
  24. */
  25.     #define SFT_CFG_GPIO2()                        
  26. do {
  27. regs0->sft_cfg4 &= ~(0x1 << 2);
  28. GPIO_M_SET(2, 1);             
  29. } while (0)
  30. /*
  31. *GPIO3:pin50(216pin)****pin60(256pin)
  32. */
  33.     #define SFT_CFG_GPIO3()                        
  34. do {
  35. regs0->sft_cfg4 &= ~(0x1 << 3);
  36. GPIO_M_SET(3, 1);             
  37. } while (0)
  38.     #define SFT_CFG_GPIO58()                        
  39. do {
  40. regs0->sft_cfg3 &= ~(0x1 << 7);
  41. GPIO_M_SET(58, 1);             
  42. } while (0)
  43. /*
  44. *GPIO50:pin193(256pin)***pin165(216pin)
  45. */
  46.     #define SFT_CFG_GPIO50()                        
  47. do {
  48. regs0->sft_cfg3 &= ~(0x1 << 5);
  49. GPIO_M_SET(50, 1);             
  50. } while (0)
  51. #define SFT_CFG_GPIO14()
  52. do {
  53. regs0->sft_cfg6 &= ~(0x1 << 4);
  54. GPIO_M_SET(14, 1);
  55. } while (0)
  56. /*8200
  57. #define SFT_CFG_GPIO15()
  58. do {
  59. regs0->sft_cfg6 &= ~(0x1 << 6);
  60. GPIO_M_SET(15, 1);
  61. } while (0)
  62. */
  63. #define SFT_CFG_GPIO35()
  64. do {
  65. GPIO_M_SET(35, 1);             
  66. } while (0)
  67. /*
  68. *GPIO84:pin157(216pin)***pin178(256pin)
  69. */
  70.     #define SFT_CFG_GPIO84()                        
  71.         do {                                        
  72.             regs0->sft_cfg4 &= ~(0x7 << 13);        
  73.             GPIO_M_SET(84, 1);                      
  74.         } while (0)
  75. /*
  76. *GPIO85:pin158(216pin)***pin179(256pin)
  77. */
  78.     #define SFT_CFG_GPIO85()                        
  79.         do {                                        
  80.             regs0->sft_cfg4 &= ~(0x7 << 13);        
  81.             GPIO_M_SET(85, 1);                      
  82.         } while (0)
  83. /*
  84. *GPIO88:pin183(256pin)
  85. */
  86.     #define SFT_CFG_GPIO88()                        
  87.         do {                                        
  88.             GPIO_M_SET(88, 1);                      
  89.         } while (0)
  90. /*
  91. *GPIO89:pin184(256pin)
  92. */
  93.     #define SFT_CFG_GPIO89()                        
  94.         do {                                        
  95.             GPIO_M_SET(89, 1);                      
  96.         } while (0)
  97. /*
  98. *GPIO90:pin185(256pin)
  99. */
  100.     #define SFT_CFG_GPIO90()                        
  101.         do {                                        
  102.             GPIO_M_SET(90, 1);                      
  103.         } while (0)
  104. /*
  105. *GPIO91:pin186(256pin)
  106. */
  107.     #define SFT_CFG_GPIO91()                        
  108.         do {                                        
  109.             GPIO_M_SET(91, 1);                      
  110.         } while (0)
  111. /*
  112. *GPIO92:pin225(256pin)
  113. */
  114.     #define SFT_CFG_GPIO92()                        
  115.         do {                                        
  116.             GPIO_M_SET(92, 1);                      
  117.         } while (0)
  118. /*
  119. *GPIO93:pin226(256pin)
  120. *Disable ROM_A21(Pin226),ROM_A22(Pin227) as GPIO93,94  
  121. *             //regs0->sft_cfg1 &= ~(0x1 << 4);        
  122. * but now use:regs0->sdc_data_cnt[6][0] |= (1<<2);
  123. */
  124.     #define SFT_CFG_GPIO93()                        
  125.         do {                                        
  126.             regs0->sdc_data_cnt[6][0] |= (0x0c);    
  127. regs0->sdc_data_cnt[6][0] |= (1<<2);
  128.             GPIO_M_SET(93, 1);                      
  129.         } while (0)
  130. /*
  131. *GPIO94:pin227(256pin)
  132. *Disable ROM_A21(Pin226),ROM_A22(Pin227) as GPIO93,94  
  133. */
  134.     #define SFT_CFG_GPIO94()                        
  135.         do {                                        
  136.             regs0->sdc_data_cnt[6][0] |= (0x0c);    
  137.             regs0->sft_cfg1 &= ~(0x1 << 5);         
  138.             GPIO_M_SET(94, 1);                      
  139.         } while (0)
  140. /*
  141. *GPIO95:pin228(256pin)
  142. */
  143.     #define SFT_CFG_GPIO95()                        
  144.         do {                                        
  145.             GPIO_M_SET(95, 1);                      
  146.         } while (0)
  147. /*
  148. *GPIO8:pin55(8202s_216pin)  fangang added 2004-12-30 14:08
  149. */
  150.     #define SFT_CFG_GPIO8()                        
  151.         do {                                        
  152.             regs0->sft_cfg4 &= ~(0x1 << 6);         
  153.             GPIO_M_SET(8, 1);                      
  154.         } while (0)
  155. /*
  156. *GPIO16:pin66(8202s_216pin)  fangang added 2004-12-30 14:08
  157. */
  158.     #define SFT_CFG_GPIO16()                        
  159.         do {                                        
  160.             regs0->sft_cfg1 &= ~(0x1 << 3);         
  161.             GPIO_M_SET(16, 1);                      
  162.         } while (0)
  163.         
  164. /*//goto line 56
  165. *GPIO15:pin65(8202s_216pin)  fangang added 2004-12-30 14:08
  166. */    
  167.      #define SFT_CFG_GPIO15()                        
  168.         do {                                        
  169.             GPIO_M_SET(15, 1);                      
  170.         } while (0)
  171.        
  172.                 
  173. /***********************************SET RISC CTRL GPIO*************************/
  174. // gpio mute function
  175. #ifdef USE_A19_AS_GPIO_MUTE//pin66
  176. #define USE_GPIO_MUTE 1
  177. #define GPIO_MUTE_PORT 32
  178. #define SFT_CFG_GPIO()
  179. do {
  180.                     SFT_CFG_GPIO32();               
  181. GPIO_E_SET(GPIO_MUTE_PORT, 1);
  182. } while (0)
  183. #elif defined USE_AUD3_AS_GPIO_MUTE//pin172(216PIN)//pin200(256pin)
  184. #define USE_GPIO_MUTE 1
  185. #define GPIO_MUTE_PORT 56//60
  186. #define SFT_CFG_GPIO()
  187. do {
  188.                     SFT_CFG_GPIO56();
  189. GPIO_E_SET(GPIO_MUTE_PORT, 1);
  190. } while (0)
  191. #elif defined USE_AUD_AS_GPIO_MUTE//pin164
  192. #define USE_GPIO_MUTE 1
  193. #define GPIO_MUTE_PORT 58
  194. #define SFT_CFG_GPIO()
  195. do {
  196.                     SFT_CFG_GPIO58();           
  197. GPIO_E_SET(GPIO_MUTE_PORT, 1);
  198. } while (0)
  199. #elif defined USE_AUD4_AS_GPIO_MUTE//pin163
  200. #define USE_GPIO_MUTE 1
  201. #define GPIO_MUTE_PORT 50
  202. #define SFT_CFG_GPIO()
  203. do {
  204. SFT_CFG_GPIO50();           
  205. GPIO_E_SET(GPIO_MUTE_PORT, 1);
  206. } while (0)
  207. #elif defined USE_A11_AS_GPIO_MUTE//pin109
  208. #define USE_GPIO_MUTE 1
  209. #define GPIO_MUTE_PORT 14
  210. #define SFT_CFG_GPIO()
  211. do {
  212.                     SFT_CFG_GPIO14();             
  213. GPIO_E_SET(GPIO_MUTE_PORT, 1);
  214. } while (0)
  215. #elif 0//defined USE_SBA1_AS_GPIO_MUTE//pin121
  216. #define USE_GPIO_MUTE 1
  217. #define GPIO_MUTE_PORT 15
  218. #define SFT_CFG_GPIO()
  219. do {
  220.                     SFT_CFG_GPIO15();             
  221. GPIO_E_SET(GPIO_MUTE_PORT, 1);
  222. } while (0)
  223. #elif defined USE_CS2_AS_GPIO_MUTE //pin70
  224. #define USE_GPIO_MUTE 1
  225. #define GPIO_MUTE_PORT 35
  226. #define SFT_CFG_GPIO()
  227. do {
  228.                     SFT_CFG_GPIO35();             
  229. GPIO_E_SET(GPIO_MUTE_PORT, 1);
  230. } while (0)
  231. #elif defined(USE_ATARST_AS_GPIO_MUTE)      //pin29    //hq,20040216
  232.     #define USE_GPIO_MUTE     1
  233.     #define GPIO_MUTE_PORT    3
  234.     #define SFT_CFG_GPIO()                  
  235.         do {                                
  236.             SFT_CFG_GPIO3();                
  237.             GPIO_E_SET(GPIO_MUTE_PORT, 1);  
  238.         } while (0)
  239. #else
  240. #define GPIO_MUTE_PORT //0     //wanghaoying 2003-8-12 20:50
  241. #define SFT_CFG_GPIO() //0     //wanghaoying 2003-8-12 20:51
  242. #endif
  243. #ifdef USE_GPIO_MUTE
  244. #ifdef LOW_MUTE
  245. #ifdef MUTE_PULL_HIGH // ronnie 2004/09/09
  246. #define GPIO_MUTE()
  247. do {                                
  248.              GPIO_E_SET(GPIO_MUTE_PORT,1);   
  249.              GPIO_O_SET(GPIO_MUTE_PORT,0);   
  250.          } while (0)
  251.          #define GPIO_DEMUTE() GPIO_E_SET(GPIO_MUTE_PORT,0)
  252. #else
  253. #define GPIO_MUTE() GPIO_O_SET(GPIO_MUTE_PORT,0)
  254. #define GPIO_DEMUTE() GPIO_O_SET(GPIO_MUTE_PORT,1)
  255. #endif
  256. #else//#ifdef LOW_MUTE
  257. #define GPIO_MUTE() GPIO_O_SET(GPIO_MUTE_PORT,1)
  258. #define GPIO_DEMUTE() GPIO_O_SET(GPIO_MUTE_PORT,0)
  259. #endif//#ifdef LOW_MUTE
  260. #else//#ifdef USE_GPIO_MUTE
  261. #define GPIO_MUTE() //0     //wanghaoying 2003-8-12 20:51
  262. #define GPIO_DEMUTE() //0     //wanghaoying 2003-8-12 20:51
  263. #endif//#ifdef USE_GPIO_MUTE
  264. /**************************8202 SCART TV GPIO setting****************************/
  265. #if defined(SCART_TV_216_USE_PIN172_157_158)
  266.     #define SUPPORT_SCART_TV                1
  267.     //PIN172 SIGNAL_SW//CVBS:RGB => 0:1//AUD3
  268.     #define GPIO_SCART_RGB_SW               56
  269.     #define SET_SCART_RGB_GPIO()                    
  270.         do {                                        
  271.             SFT_CFG_GPIO56() ;                      
  272.             GPIO_E_SET(GPIO_SCART_RGB_SW, 1);       
  273.         } while (0)
  274.     //PIN157 RELEASE_SCART//NORMAL PLAY = 0
  275.     #define GPIO_SCART_RELEASE_SW               84
  276.     #define SET_SCART_RELEASE_GPIO()                
  277.         do {                                        
  278.             SFT_CFG_GPIO84();                       
  279.             GPIO_E_SET(GPIO_SCART_RELEASE_SW, 1);   
  280.         } while (0)
  281.     //PIN158 DISPLAY_SW   // 16/9:4/3 => 0:1     
  282.     #define GPIO_SCART_DISPLAY_SW               85
  283.     #define SET_SCART_DISPLAY_GPIO()                
  284.         do {                                        
  285.             SFT_CFG_GPIO85();                       
  286.             GPIO_E_SET(GPIO_SCART_DISPLAY_SW, 1);   
  287.         } while (0)
  288. #elif defined(SCART_TV_216_USE_PIN55_65_66) //8202S 216PIN SCART CONTROL
  289.     #define SUPPORT_SCART_TV                1
  290.     //PIN55 SIGNAL_SW//CVBS:RGB => 0:1//SERVO DFCT
  291.     #define GPIO_SCART_RGB_SW                   8
  292.     #define SET_SCART_RGB_GPIO()                    
  293.         do {                                        
  294.             SFT_CFG_GPIO8() ;                      
  295.             GPIO_E_SET(GPIO_SCART_RGB_SW, 1);       
  296.         } while (0)
  297.     //PIN66 RELEASE_SCART//NORMAL PLAY = 0 //R_CS4_B
  298.     #define GPIO_SCART_RELEASE_SW               16
  299.     #define SET_SCART_RELEASE_GPIO()                
  300.         do {                                        
  301.             SFT_CFG_GPIO16();                       
  302.             GPIO_E_SET(GPIO_SCART_RELEASE_SW, 1);   
  303.         } while (0)
  304.     //PIN65 DISPLAY_SW   // 16/9:4/3 => 0:1     
  305.     #define GPIO_SCART_DISPLAY_SW               15
  306.     #define SET_SCART_DISPLAY_GPIO()                
  307.         do {                                        
  308.             SFT_CFG_GPIO15();                       
  309.             GPIO_E_SET(GPIO_SCART_DISPLAY_SW, 1);   
  310.         } while (0)
  311. #elif defined(SCART_TV_256_USE_PIN226_227_228)
  312.     #define SUPPORT_SCART_TV                1
  313.     //PIN228 SIGNAL_SW//CVBS:RGB => 0:1//AUD3
  314.     #define GPIO_SCART_RGB_SW                   95
  315.     #define SET_SCART_RGB_GPIO()                    
  316.         do {                                        
  317.             SFT_CFG_GPIO95() ;                      
  318.             GPIO_E_SET(GPIO_SCART_RGB_SW, 1);       
  319.         } while (0)
  320.     //PIN226 RELEASE_SCART//NORMAL PLAY = 0
  321.     #define GPIO_SCART_RELEASE_SW               93
  322.     #define SET_SCART_RELEASE_GPIO()                
  323.         do {                                        
  324.             SFT_CFG_GPIO93();                       
  325.             GPIO_E_SET(GPIO_SCART_RELEASE_SW, 1);   
  326.         } while (0)
  327.     //PIN227 DISPLAY_SW   // 16/9:4/3 => 0:1     
  328.     #define GPIO_SCART_DISPLAY_SW               94
  329.     #define SET_SCART_DISPLAY_GPIO()                
  330.         do {                                        
  331.             SFT_CFG_GPIO94();                       
  332.             GPIO_E_SET(GPIO_SCART_DISPLAY_SW, 1);   
  333.         } while (0)
  334. #else//#if defined(SCART_TV_216_USE_PIN172_157_158)
  335. #define GPIO_SCART_RGB_SW         //0     ///NONO 4-3-26 23:35
  336. #define GPIO_SCART_RELEASE_SW     //0     ///NONO 4-3-26 23:35
  337. #define GPIO_SCART_DISPLAY_SW     //0     ///NONO 4-3-26 23:35
  338. #define SET_SCART_RGB_GPIO()     //0     //nono 4-3-26 23:35
  339. #define SET_SCART_RELEASE_GPIO() //0     //nono 4-3-26 23:35
  340. #define SET_SCART_DISPLAY_GPIO() //0     //nono 4-3-26 23:35
  341. #endif
  342. #ifdef SUPPORT_SCART_TV
  343.     #ifdef HI_CTRL_SCART_TO_RGB
  344.         #define SCART_TV_SET_TO_RGB()             GPIO_O_SET(GPIO_SCART_RGB_SW,1)     //NONO 4-3-26 23:24
  345.         #define SCART_TV_SET_TO_CVBS()             GPIO_O_SET(GPIO_SCART_RGB_SW,0)     //NONO 4-3-26 23:24
  346.     #elif defined(LOW_CTRL_SCART_TO_RGB)
  347.         #define SCART_TV_SET_TO_RGB()             GPIO_O_SET(GPIO_SCART_RGB_SW,0)     //NONO 4-3-26 23:24
  348.         #define SCART_TV_SET_TO_CVBS()             GPIO_O_SET(GPIO_SCART_RGB_SW,1)     //NONO 4-3-26 23:24
  349.     #endif
  350.     #ifdef HI_CTRL_TO_RELEASE_SCART
  351.         #define SCART_TV_SET_TO_DVDPLAYER()             GPIO_O_SET(GPIO_SCART_RELEASE_SW,1)     //NONO 4-3-26 23:24
  352.         #define SCART_TV_SET_TO_TV()                 GPIO_O_SET(GPIO_SCART_RELEASE_SW,0)     //NONO 4-3-26 23:24
  353.     #elif defined(LOW_CTRL_TO_RELEASE_SCART)
  354.         #define SCART_TV_SET_TO_DVDPLAYER()             GPIO_O_SET(GPIO_SCART_RELEASE_SW,0)     //NONO 4-3-26 23:24
  355.         #define SCART_TV_SET_TO_TV()                 GPIO_O_SET(GPIO_SCART_RELEASE_SW,1)     //NONO 4-3-26 23:24
  356.     #endif
  357.     #ifdef HI_CTRL_SCART_TO_DISPLAY_16B9
  358.         #define SCART_TV_SET_TO_DISPLAY_16B9()             GPIO_O_SET(GPIO_SCART_DISPLAY_SW,1)     //NONO 4-3-26 23:24
  359.         #define SCART_TV_SET_TO_DISPLAY_4B3()             GPIO_O_SET(GPIO_SCART_DISPLAY_SW,0)     //NONO 4-3-26 23:24
  360.     #elif defined(LOW_CTRL_SCART_TO_DISPLAY_16B9)
  361.         #define SCART_TV_SET_TO_DISPLAY_16B9()             GPIO_O_SET(GPIO_SCART_DISPLAY_SW,0)     //NONO 4-3-26 23:24
  362.         #define SCART_TV_SET_TO_DISPLAY_4B3()             GPIO_O_SET(GPIO_SCART_DISPLAY_SW,1)     //NONO 4-3-26 23:24
  363.     #endif
  364.     #define SET_SCART_GPIO_SFT_CFG_CTRL()            
  365.         do {                                
  366.             SET_SCART_RGB_GPIO(); 
  367.             SET_SCART_RELEASE_GPIO();  
  368.             SET_SCART_DISPLAY_GPIO();  
  369.         } while (0)
  370.     #define SET_SCART_TO_RGB()            
  371.         do {                                
  372.             SCART_TV_SET_TO_RGB(); 
  373.             SCART_TV_SET_TO_DVDPLAYER();  
  374.         } while (0)
  375.     #define SET_SCART_TO_CVBS()            
  376.         do {                                
  377.             SCART_TV_SET_TO_CVBS(); 
  378.             SCART_TV_SET_TO_DVDPLAYER();  
  379.         } while (0)
  380.     #define SET_SCART_TO_TV()            
  381.         do {                                
  382.             SCART_TV_SET_TO_CVBS(); 
  383.             SCART_TV_SET_TO_DISPLAY_4B3();  
  384.             SCART_TV_SET_TO_TV();  
  385.         } while (0)
  386.     #define SET_SCART_TO_DISPLAY_16B9()            
  387.         do {                                
  388.             SCART_TV_SET_TO_DISPLAY_16B9(); 
  389.             SCART_TV_SET_TO_DVDPLAYER();  
  390.         } while (0)
  391.     #define SET_SCART_TO_DISPLAY_4B3()            
  392.         do {                                
  393.             SCART_TV_SET_TO_DISPLAY_4B3(); 
  394.             SCART_TV_SET_TO_DVDPLAYER();  
  395.         } while (0)
  396. #else//#ifdef USE_GPIO_MUTE
  397. #define SET_SCART_GPIO_SFT_CFG_CTRL() //0     //NONO 4-3-26 23:24
  398.     #define SCART_TV_SET_TO_RGB()                             //0     //NONO 4-3-26 23:24
  399.     #define SCART_TV_SET_TO_CVBS()                             //0     //NONO 4-3-26 23:24
  400.     #define SCART_TV_SET_TO_DVDPLAYER()                         //0     //NONO 4-3-26 23:24
  401.     #define SCART_TV_SET_TO_TV()                             //0    //NONO 4-3-26 23:24
  402.     #define SCART_TV_SET_TO_DISPLAY_16B9()                     //0     //NONO 4-3-26 23:24
  403.     #define SCART_TV_SET_TO_DISPLAY_4B3()                     //0    //NONO 4-3-26 23:24
  404. #endif//#ifdef USE_GPIO_MUTE
  405. /**************************8202 SCART TV GPIO setting****************************/
  406.                              
  407. #endif/*__GPIO_8202_H*/