Changeset 12369

Show
Ignore:
Timestamp:
06/24/09 20:08:31 (5 months ago)
Author:
BrainSlayer
Message:

add usb_modeswitch which is required for some sticks

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • src/router/libutils/lib3g.c

    r12225 r12369  
    143143                //huawei 
    144144                fprintf(stderr, "HUAWEI/Option E172 detected\n"); 
     145        insmod("option"); 
    145146                return "/dev/usb/tts/0"; 
    146147        } 
     
    148149                //huawei 
    149150                fprintf(stderr, "HUAWEI/Option E301 HSUPA detected\n"); 
     151        insmod("option"); 
    150152                return "/dev/usb/tts/0"; 
    151153        } 
     
    153155                //huawei 
    154156                fprintf(stderr, "HUAWEI/Option E600 detected\n"); 
     157        insmod("option"); 
    155158                return "/dev/usb/tts/0"; 
    156159        } 
     
    158161                //huawei 
    159162                fprintf(stderr, "HUAWEI/Option EC270 detected\n"); 
     163        insmod("option"); 
    160164                return "/dev/usb/tts/0"; 
    161165        } 
     
    163167                //huawei 
    164168                fprintf(stderr, "HUAWEI/Option EC168 detected\n"); 
    165                 return "/dev/usb/tts/0"; 
    166         } 
     169        insmod("option"); 
     170                return "/dev/usb/tts/0"; 
     171        } 
     172        if (scanFor(0x12d1, 0x1412)) { 
     173                //huawei 
     174                fprintf(stderr, "HUAWEI/Option EC168 detected\n"); 
     175        insmod("option"); 
     176                return "/dev/usb/tts/0"; 
     177        } 
     178 
     179        if (scanFor(0x1e0e, 0x9000)) { 
     180                //huawei 
     181                fprintf(stderr, "QUALCOMM ICON 210 detected\n"); 
     182                nvram_set("3gdata", "/dev/usb/tts/2"); 
     183        insmod("option"); 
     184                return "/dev/usb/tts/2"; 
     185        } 
     186 
     187        if (scanFor(0x1e0e, 0xf000)) { 
     188                //huawei 
     189        fprintf(stderr, "QUALCOMM ICON 210 detected\n"); 
     190        FILE *out = fopen("/tmp/usb_modeswitch.conf","wb"); 
     191        fprintf(out,"DefaultVendor=0x1e0e\n"); 
     192        fprintf(out,"DefaultProduct=0xf000\n"); 
     193        fprintf(out,"TargetVendor=0x1e0e\n"); 
     194        fprintf(out,"TargetProduct=0x9000\n"); 
     195        fprintf(out,"MessageContent=\"555342431234567800000000000006bd000000020000000000000000000000\"\n"); 
     196        fprintf(out,"ResponseEndpoint=0x01\n"); 
     197        fclose(out); 
     198        system("usb_modeswitch -c /tmp/usb_modeswitch.conf"); 
     199        sleep(2); 
     200        insmod("option"); 
     201        nvram_set("3gdata", "/dev/usb/tts/2"); 
     202            return "/dev/usb/tts/2"; 
     203        } 
     204 
     205        if (scanFor(0x0af0, 0x6971)) { 
     206                //huawei 
     207        fprintf(stderr, "QUALCOMM ICON 225 detected\n"); 
     208/*      FILE *out = fopen("/tmp/usb_modeswitch.conf","wb"); 
     209        fprintf(out,"DefaultVendor=0x0af0\n"); 
     210        fprintf(out,"DefaultProduct=0x6971\n"); 
     211        fprintf(out,"TargetClass=0xff\n"); 
     212        fprintf(out,"MessageContent=\"55534243785634120100000080000601000000000000000000000000000000\"\n"); 
     213        fclose(out); 
     214        system("usb_modeswitch -c /tmp/usb_modeswitch.conf");*/ 
     215        system("ozerocdoff -wi 0x6971"); 
     216        sleep(5); 
     217        system("insmod hso"); 
     218        nvram_set("3gdata", "/dev/usb/tts/2"); 
     219            return "/dev/usb/tts/2"; 
     220        } 
     221 
     222 
     223 
    167224        if (scanFor(0x1199, 0x6832)) { 
    168225                //sierra wireless mc 8780 
     
    172229                return "/dev/usb/tts/2"; 
    173230        } 
     231        insmod("option"); 
    174232        return ttsdevice; 
    175233} 
  • src/router/rules/comgt.mk

    r11911 r12369  
     1comgt-configure: 
     2        $(MAKE) -C usb_modeswitch configure 
     3 
     4 
     5comgt-clean: 
     6        $(MAKE) -C usb_modeswitch clean 
     7        $(MAKE) -C comgt clean 
    18 
    29comgt: 
     10        $(MAKE) -C usb_modeswitch 
    311        $(MAKE) -C comgt CC=$(CC)   
    412#       $(STRIP) $(INSTALLDIR)/comgt/usr/sbin/comgt 
     
    1018        install -D comgt/scripts/reset.comgt $(INSTALLDIR)/comgt/etc/comgt/reset.comgt 
    1119        install -D comgt/scripts/wakeup.comgt $(INSTALLDIR)/comgt/etc/comgt/wakeup.comgt 
     20        install -D usb_modeswitch/usb_modeswitch $(INSTALLDIR)/comgt/usr/sbin/usb_modeswitch 
     21        install -D usb_modeswitch/ozerocdoff $(INSTALLDIR)/comgt/usr/sbin/ozerocdoff 
    1222#       install -D comgt/usb_modeswitch $(INSTALLDIR)/comgt/usr/sbin/usb_modeswitch 
    1323