Changeset 1263
- Timestamp:
- 01/17/10 14:14:42 (14 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/csctapi/ifd_phoenix.c
r1253 r1263 26 26 int Phoenix_GetStatus (int * status) 27 27 { 28 int in; 28 #ifdef USE_GPIO //felix: detect card via defined gpio 29 if (gpio_detect) 30 *status=get_gpio(); 31 else 32 #endif 33 { 29 34 unsigned int modembits=0; 30 35 extern int oscam_card_detect; //FIXME kill global variable … … 33 38 switch(oscam_card_detect&0x7f) 34 39 { 35 case 0: in=(modembits & TIOCM_CAR); break;36 case 1: in=(modembits & TIOCM_DSR); break;37 case 2: in=(modembits & TIOCM_CTS); break;38 case 3: in=(modembits & TIOCM_RNG); break;39 default: in=0; // dummy40 case 0: *status=(modembits & TIOCM_CAR); break; 41 case 1: *status=(modembits & TIOCM_DSR); break; 42 case 2: *status=(modembits & TIOCM_CTS); break; 43 case 3: *status=(modembits & TIOCM_RNG); break; 44 default: *status=0; // dummy 40 45 } 41 46 if (!(oscam_card_detect&0x80)) 42 in=!in;43 *status = in; 44 47 *status=!*status; 48 } 49 return OK; 45 50 } 46 51 … … 82 87 usleep (50000L); 83 88 #endif 84 #ifdef USE_GPIO 89 #ifdef USE_GPIO //felix: set card reset hi (inactive) 85 90 if (gpio_detect) { 86 91 set_gpio_input(); 87 set_gpio1(1);88 92 } 89 93 else -
trunk/csctapi/ifd_towitoko.c
r1253 r1263 76 76 static void IFD_Towitoko_Clear (IFD * ifd); 77 77 78 #ifdef USE_GPIO 78 #ifdef USE_GPIO //felix: definition of gpio functions 79 79 80 80 int gpio_outen,gpio_out,gpio_in; … … 96 96 } 97 97 98 static void set_gpio1(int level)99 {100 read(gpio_outen, &gpio, sizeof(gpio));101 gpio |= 2;102 write(gpio_outen, &gpio, sizeof(gpio));103 104 read(gpio_out, &gpio, sizeof(gpio));105 if (level>0)106 gpio|=2;107 else108 gpio&=~2;109 write(gpio_out, &gpio, sizeof(gpio));110 }111 112 98 static void set_gpio_input(void) 113 99 { … … 150 136 int ret; 151 137 152 #ifdef USE_GPIO 138 #ifdef USE_GPIO //felix: define gpio number used for card detect and reset. ref to globals.h 153 139 extern int oscam_card_detect; 154 140 if (oscam_card_detect>4) 155 141 { 156 gpio_detect=oscam_card_detect- 3;142 gpio_detect=oscam_card_detect-4; 157 143 pin = 1<<gpio_detect; 158 144 gpio_outen=open("/dev/gpio/outen",O_RDWR); … … 216 202 int IFD_Towitoko_Close (IFD * ifd) 217 203 { 218 #ifdef USE_GPIO 204 #ifdef USE_GPIO //felix: close dev if card detected 219 205 if(gpio_detect) 220 206 { … … 222 208 close(gpio_out); 223 209 close(gpio_in); 224 210 } 225 211 #endif 226 212 -
trunk/globals.h
r1252 r1263 152 152 char *RDR_CD_TXT[] = { "cd", "dsr", "cts", "ring", "none", 153 153 #ifdef USE_GPIO 154 "gpio 2", "gpio3", "gpio4", "gpio5", "gpio6", "gpio7",154 "gpio1", "gpio2", "gpio3", "gpio4", "gpio5", "gpio6", "gpio7", //felix: changed so that gpio can be used 155 155 #endif 156 156 NULL };
Note:
See TracChangeset
for help on using the changeset viewer.