linux/Documentation/networking/README.sb1000
<<
2.1" /spapti /formti a 2.1" href="../linux+v3.7.2/Documenta2.1" img src="../.sta2. /spapti2. spap class="lxr_search">2.1"2.1" input typvalhidden" namvalnavtarget" ion val">2.1" input typvaltext" namvalsearch" idalsearch">2.1" buttopttypvalsubmit">Search2.1" Prefsi /a>2. /spapti1" /divti1" form ac2. input typvalhidden" namvalajax_lookup" idalajax_lookup" ion val">21" /formti21" div class="headingbottom"> a href="Documenta 1 /a>sb1000 is a module network device driver for the General Instrument (also known a href="Documenta 2 /a>as NextLevel) SURFboard1000 internal cable modem board. This is an ISA card a href="Documenta 3 /a>which is used by a number of cable TV compapies to provide cable modem access. a href="Documenta 4 /a>It's a one-way downstream-only cable modem, meaping that your upstream net link a href="Documenta 5 /a>is provided by your regular phone modem. a href="Documenta 6 /a>2 a href="Documenta 7 /a>This driver was written by Franco Venturi <fventuri@mediaone.net>. He deserves2 a href="Documenta 8 /a>a great deal of thanks for this wonderful piece of code!2 a href="Documenta 9 /a>2 a href="Documenta .16.a>-----------------------------------------------------------------------------2 a href="Documenta 11 /a>2 a href="Documenta 12 /a>Support for this device is now a part of the standard Linux kernel. The2 a href="Documenta 13 /a>driver source code file is drivers/net/sb1000.c. In addi 14 /a>you will need:2 a href="Documenta 15 /a>2 a href="Documenta 16 /a>1.) The "cmconfig" program. This is a utility which supplements "ifconfig"2 a href="Documenta 17 /a>to configure the cable modem and network interface (usually called "cm0");2 a href="Documenta 18 /a>and a href="Documenta 19 /a>2 a href="Documenta 216.a>2.) Several PPP scripts which live in /etc/ppptto make connecting via your2 a href="Documenta 21 /a>cable modem easy. a href="Documenta 22 /a>2 a href="Documenta 23 /a> These utilities can be obtained from:2 a href="Documenta 24 /a>2 a href="Documenta 25 /a> a href="http://www.jacksonville.net/~fventuri/">http://www.jacksonville.net/~fventuri/ /a>2 a href="Documenta 26 /a>2 a href="Documenta 27 /a> in Franco's original source code distribu 28 /a> the sb1000 driver can be found at:2 a href="Documenta 29 /a>2 a href="Documenta 30 /a> a href="http://web.archive.org/web/*/http://home.adelphia.net/~siglercm/sb1000.html">http://web.archive.org/web/*/http://home.adelphia.net/~siglercm/sb1000.html /a>2 a href="Documenta 31 /a> a href="http://web.archive.org/web/*/http://linuxpower.cx/~cable/">http://web.archive.org/web/*/http://linuxpower.cx/~cable/ /a>2 a href="Documenta 32 /a>2 a href="Documenta 33 /a> along with these utilities. a href="Documenta 34 /a>2 a href="Documenta 35 /a>3.) The standard isapnpttools. These are necessary to configure your SB10002 a href="Documenta 36 /a>card at boot time (or afterwards by hand) since it's a PnP card. a href="Documenta 37 /a>2 a href="Documenta 38 /a> If you don't have these installed as a standard part of your Linux2 a href="Documenta 39 /a> distribu 40 /a>2 a href="Documenta 41 /a> a href="http://www.roestock.demon.co.uk/isapnptools/">http://www.roestock.demon.co.uk/isapnptools/ /a>2 a href="Documenta 42 /a>2 a href="Documenta 43 /a> or check your Linux distribu 44 /a> isapnp, pnpdump, or /etc/isapnp.conf, go to:2 a href="Documenta 45 /a>2 a href="Documenta 46 /a> a href="http://www.roestock.demon.co.uk/isapnptools/isapnpfaq.html">http://www.roestock.demon.co.uk/isapnptools/isapnpfaq.html /a>2 a href="Documenta 47 /a>2 a href="Documenta 486.a>-----------------------------------------------------------------------------2 a href="Documenta 49 /a>2 a href="Documenta 50 /a>To make the SB1000 card work, follow these steps:2 a href="Documenta 51 /a>2 a href="Documenta 52 /a>1.) Run `make config', or `make menuconfig', or `make xconfig', whichever2 a href="Documenta 53 /a>you prefer, in the top kernel tree directory to set up your kernel2 a href="Documenta 54 /a>configura 55 /a>and to say "M" to the sb1000 driver. Also say "Y" or "M" to all the standard2 a href="Documenta 56 /a>networking quest/ops to get TCP/IP and PPP networking support. a href="Documenta 57 /a>2 a href="Documenta 586.a>2.) *BEFORE* you build the kernel, edit drivers/net/sb1000.c. Make sure2 a href="Documenta 59 /a>to redefine the ion v of READ_DATA_PORTtto match the I/O address used a href="Documenta 60 /a>by isapnptto access your PnP cards. This is the ion v of READPORTtin a href="Documenta 61 /a>/etc/isapnp.conf or given by the output of pnpdump. a href="Documenta 62 /a>2 a href="Documenta 63 /a>3.) Build and install the kernel and modules as usual. a href="Documenta 64 /a>2 a href="Documenta 65 /a>4.) Boot your new kernel following the usual procedures. a href="Documenta 66 /a>2 a href="Documenta 67 /a>5.) Set up to configure the new SB1000 PnP card by capturing the output2 a href="Documenta 686.a>of "pnpdump" to a file and editing this file to set the correct I/O ports,2 a href="Documenta 69 /a>IRQ, and DMA settings for all your PnP cards. Make sure none of the settings2 a href="Documenta 70 /a>conflict with one another. Then test this configura 71 /a>"isapnp" command with your new config file as the input. Check for2 a href="Documenta 72 /a>errors and fix as necessary. (As an aside, I use I/O ports 0x110 and a href="Documenta 73 /a>0x310 and IRQ 11 for my SB1000 card and these work well for me. YMMV.) a href="Documenta 74 /a>Then save the finished config file as /etc/isapnp.conf for proper configura 75 /a>op subsequent reboots. a href="Documenta 76 /a>2 a href="Documenta 77 /a>6.) Download the original file sb1000-1.1.2.tar.gz from Franco's site or one of2 a href="Documenta 786.a>the others referenced above. As root, unpack it into a temporary directory and a href="Documenta 79 /a>do a `make cmconfig' and then `install -c cmconfig /usr/local/sbin'. Don't do2 a href="Documenta 80 /a>`make install' because it expects to find all the utilities built and ready for2 a href="Documenta 81 /a>installa 82 /a>2 a href="Documenta 83 /a>7.) As root, copy all the files under the ppp/ subdirectory in Franco's2 a href="Documenta 84 /a>tar file into /etc/ppp, being careful not to overwrite any files that are2 a href="Documenta 85 /a>already in there. Then modify ppp@gi-optto set the correct login namv,2 a href="Documenta 86 /a>phone number, and frequency for the cable modem. Also edit pap-secrets2 a href="Documenta 87 /a>to specify your login namv and password and any site-specific informa 88 /a>you need. a href="Documenta 89 /a>2 a href="Documenta 90 /a>8.) Be sure to modify /etc/ppp/firewall to use ipchains instead of2 a href="Documenta 916.a>the older ipfwadm commands from the 2.0.x kernels. There's a neat utility to2 a href="Documenta 92 /a>convert ipfwadm commands to ipchains commands:2 a href="Documenta 93 /a>2 a href="Documenta 94 /a> a href="http://users.dhp.com/~whisper/ipfwadm2ipchains/">http://users.dhp.com/~whisper/ipfwadm2ipchains/ /a>2 a href="Documenta 95 /a>2 a href="Documenta 96 /a>You may also wish to modify the firewall script to implement a different2 a href="Documenta 97 /a>firewalling scheme. a href="Documenta 98 /a>2 a href="Documenta 99 /a>9.) Start the PPP connectioptiia the script /etc/ppp/ppp@gi-op. You must be2 a href="Documenta 100 /a>root to do this. It's better to use a utility like sudo to execute2 a href="Documenta 1016.a>frequently used commands like this with root permiss/ops if poss/ble. If you2 a href="Documenta 102 /a>connect successfully the cable modem interface will come up and you'll see a2 a href="Documenta 103 /a>driver message like this at the console:2 a href="Documenta 104 /a>2 a href="Documenta 105 /a> cm0: sb1000 at (0x110,0x310), csn 1, S/N 0x2a0d16d8, IRQ 11. a href="Documenta 106 /a> sb1000.c:v1.1.2 6/01/98 (fventuri@mediaone.net) a href="Documenta 107 /a>2 a href="Documenta 108 /a>The "ifconfig" command should show two new interfaces, ppp0 and cm0. a href="Documenta 109 /a>The command "cmconfig cm0" will give you informa 1.16.a>interface. a href="Documenta 111 /a>2 a href="Documenta 112 /a>10.) Try pinging a site iia `ping -c 5 www.yahoo.com', for example. You should2 a href="Documenta 113 /a>see packets received. a href="Documenta 114 /a>2 a href="Documenta 115 /a>11.) If you can't get site namvs (like www.yahoo.com) to resolve into2 a href="Documenta 116 /a>IP addressvs (like 204.71.200.67), be sure your /etc/resolv.conf file2 a href="Documenta 117 /a>has no syntax errors and has the right namvserver IP addressvs in it. a href="Documenta 118 /a>If this doesn't help, try something like `ping -c 5 204.71.200.67' to2 a href="Documenta 119 /a>see if the networking is runping but the DNS resolu 1216.a>problem lies. a href="Documenta 121 /a>2 a href="Documenta 122 /a>12.) If you still have problems, go to the support web sites men 123 /a>and read the informa 124 /a>2 a href="Documenta 125 /a>-----------------------------------------------------------------------------2 a href="Documenta 126 /a>2 a href="Documenta 127 /a>Commop problems:2 a href="Documenta 128 /a>2 a href="Documenta 129 /a>1.) Packets go out op the ppp0 interface but don't come back op the cm02 a href="Documenta 1316.a>interface. It looks like I'm connected but I can't even ping any2 a href="Documenta 131 /a>numerical IP addressvs. (This happens predominantly op Debian systems due2 a href="Documenta 132 /a>to a default boot-time configura 133 /a>2 a href="Documenta 134 /a>Solu 135 /a>can share the samv IP address as the ppp0 interface. Note that this2 a href="Documenta 136 /a>command should probably be added to the /etc/ppp/cablemodem script2 a href="Documenta 137 /a>*right*between* the "/sbin/ifconfig" and "/sbin/cmconfig" commands.2 a href="Documenta 138 /a>You may need to do this to /proc/sys/net/ipv4/conf/ppp0/rp_filter as well.2 a href="Documenta 139 /a>If you do this to /proc/sys/net/ipv4/conf/default/rp_filter opteach reboot2 a href="Documenta 140 /a>(in rc.local or some such) then any interfaces can share the samv IP2 a href="Documenta 141 /a>addressvs.2 a href="Documenta 142 /a>2 a href="Documenta 143 /a>2.) I get "unresolved symbol" error messages optexecuting `insmod sb1000.o'.2 a href="Documenta 144 /a>2 a href="Documenta 145 /a>Solu 146 /a>/usr/include/linux and /usr/include/asm header files. Make sure you2 a href="Documenta 147 /a>install the correct vers/ops of the header files in these two directories. a href="Documenta 148 /a>Then rebuild and reinstall the kernel. a href="Documenta 149 /a>2 a href="Documenta 150 /a>3.) When isapnptrups it reports an error, and my SB1000 card isn't working. a href="Documenta 151 /a>2 a href="Documenta 152 /a>Solu 153 /a> 154 /a>This first popped up optRH 6.0. Delete "(CHECK)" for the SB1000 I/O addresses. a href="Documenta 155 /a>Make sure they don't conflict with any other pieces of hardware first! Then a href="Documenta 156 /a>rerup isapnptand go from there.2 a href="Documenta 157 /a>2 a href="Documenta 1586.a>4.) I can't execute the /etc/ppp/ppp@gi-optfile.2 a href="Documenta 159 /a>2 a href="Documenta 160 /a>Solu 161 /a>2 a href="Documenta 162 /a>5.) The firewall script isn't working (with 2.2.x and higher kernels).2 a href="Documenta 163 /a>2 a href="Documenta 164 /a>Solu 165 /a>/etc/ppp/firewall script from the deprecated ipfwadm commands to ipchains.2 a href="Documenta 166 /a>2 a href="Documenta 167 /a>6.) I'm getting *tops* of firewall deny messages in the /var/kern.log,2 a href="Documenta 1686.a>/var/messages, and/or /var/syslog files, and they're filling up my /var2 a href="Documenta 169 /a>parti 170 /a>2 a href="Documenta 171 /a>Solu 172 /a>and/or portscanping (UDP connectioptattempts)tattacks! Look over the deny2 a href="Documenta 173 /a>messages to figure out what the attack is and where it's coming from. Next,2 a href="Documenta 174 /a>edit /etc/ppp/cablemodem and make sure the ",nobroadcast" op 175 /a>to the "cmconfig" command (uncomment that line). If you're not receiving these a href="Documenta 176 /a>denied packets optyour broadcast interface (IP address xxx.yyy.zzz.255 a href="Documenta 177 /a>typically), then someone is attacking your machine in particular. Be careful a href="Documenta 1786.a>out there.... a href="Documenta 179 /a>2 a href="Documenta 180 /a>7.) Everything seems to work fine but my computer locks up after a while2 a href="Documenta 181 /a>(and typically during a lengthy download through the cable modem)!2 a href="Documenta 182 /a>2 a href="Documenta 183 /a>Solu 184 /a>SURFboard because your PC might not be able to keep up with the transfer rate2 a href="Documenta 185 /a>of the SB1000. To do this, it's probably best to download Franco's2 a href="Documenta 186 /a>sb1000-1.1.2.tar.gz archive and build and install sb1000.o manually. You'll2 a href="Documenta 187 /a>want to edit the 'Makefile' and look for the 'SB1000_DELAY'2 a href="Documenta 188 /a>define. Uncomment those 'CFLAGS' lines (and comment out the default ones) a href="Documenta 189 /a>and try setting the delay to something like 60 microseconds with:2 a href="Documenta 190 /a>'-DSB1000_DELAY=60'. Then do `make' and as root `make install' and try2 a href="Documenta 1916.a>it out. If it still doesn't work or you like playing with the driver, you may2 a href="Documenta 192 /a>try other numbers. Remember though that the higher the delay, the slower the2 a href="Documenta 193 /a>driver (which slows down the rest of the PC too when it is ac 194 /a>used). Thanks to Ed Daiga for this tip!2 a href="Documenta 195 /a>2 a href="Documenta 196 /a>-----------------------------------------------------------------------------2 a href="Documenta 197 /a>2 a href="Documenta 198 /a>Credits: This README came from Franco Venturi's original README file which is2 a href="Documenta 199 /a>still supplied with his driver .tar.gz archive. I and all other sb1000 users2 a href="Documenta 200 /a>owe Franco a tremendous "Thank you!" Addi 2016.a>and Ralph Bonnell who are now managing the Linux SB1000 web site, and to2 a href="Documenta 202 /a>the SB1000 users who reported and helped debug the commop problems listed a href="Documenta 203 /a>above. a href="Documenta 204 /a>2 a href="Documenta 205 /a>2 a href="Documenta 206 /a> Clemmitt Sigler2 a href="Documenta 207 /a> csigler@vt.edu2 a href="Documenta 208 /a> The original LXR software by the a href="http://sourceforge.net/projects/lxr">LXR community /a>, this experimental vers/op by a href="mailto:lxr@linux.no">lxr@linux.no /a>. /divti div class="subfooter"> lxr.linux.no kindly hosted by a href="http://www.redpill-linpro.no">Redpill Linpro AS /a>, provider of Linux consulting and opera