Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Help needed: Compile driver (USB nic)

    Scheduled Pinned Locked Moved Hardware
    5 Posts 3 Posters 10.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • I
      ika
      last edited by

      Hey all,

      i've set up a pfSense-full 1.2.1 on an Alix-Board. Now i need to have 2 USB-NICs connected to the system.
      I know about speed-problems and other issues… that would all be okay for me.

      I do not have much idea about FreeBSD, so it would be great if someone could help me get the USB-NICs running.

      usbdevs recognizes the devices. everything okay IMHO:


      usbdevs -v

      Controller /dev/usb0:
      addr 1: full speed, self powered, config 1, OHCI root hub(0x0000), AMD(0x0000), rev 1.00
      port 1 powered
      port 2 powered
      port 3 powered
      port 4 powered
      Controller /dev/usb1:
      addr 1: high speed, self powered, config 1, EHCI root hub(0x0000), AMD(0x0000), rev 1.00
      port 1 addr 2: high speed, power 500 mA, config 1, USB-MAC Controller(0x7830), Moschip Semiconductor(0x9710), rev 1.00
      port 2 addr 3: high speed, power 500 mA, config 1, USB-MAC Con??????????(0x7830), Moschip Semiconductor(0x9710), rev 1.00
      port 3 powered
      port 4 powered

      But in ifconfig -a, they won't show up as ethernet-devices.
      I think that must be a driver problem!? I don't know how to solve that. I think 2 ways are possible:

      1. i read something about if_udav. Can somebody tell me how to get that running in my pfsense?

      2. take the freebsd-driver from the moschip-website. it is only available for freebsd 6.2, but maybe it works with 7.
      the readme tells me to do a "make ld". as far as i know, i cannot do that with pfsense. so i would need to have a developers edition or a freebsd7-livecd. Since i spend a few hours till now, i hoped that some of you can give me more information. will that work? maybe some of you guys could do the compiling-stuff for me and send me the file?

      The driver is on the moschip-website (mcs7830), but you need to register there. You may download it at: http://www-DOT-dateiserver-DOT-net/Driver_FreeBSD_7830.tar.gz

      i'm sorry i have no more knowledge of freebsd -> thank you VERY much in advance for your step-by-step help ;-)

      1 Reply Last reply Reply Quote 0
      • dotdashD
        dotdash
        last edited by

        Just a couple of comments.

        1. udav is for a different device, so that wouldn't help.
        2. Initial testing on my Alix shows that 1.2.1 seems to work with the newer (B1) revisions of the D-Link  DUB-E100 that are currently available (from newegg for instance).
        1 Reply Last reply Reply Quote 0
        • I
          ika
          last edited by

          Thanks for your reply dotdash.

          I found out that i would need to patch the kernel in some way… because the driver would be a "kernel loadable device" or something. i dont have enough knowledge about these things ;-)

          i will cancel the task if there is no one else who can give me good hint.

          dotdash: you said "INITIAL testing". can you give me some more info onto that? i would buy 2 E100s if they are okay on pfSense! THX!!!!

          1 Reply Last reply Reply Quote 0
          • dotdashD
            dotdash
            last edited by

            RE: DUB-E100's- I've setup a test Alix 2c3 with the D-Link USB as WAN, put a laptop behind it and got to the Internet. The actual deployment will used for an additional DSL, I'm thinking it should run fine, but there is still a chance it could misbehave under real world conditions. I have also not tested running two at the same time beyond verifying they will both fit and show up as interfaces.

            EDIT- I took a quick look at that moschip driver, and it says it was tested on FreeBSD 6.2. That means your best chance of getting a working driver might be to compile it on a 6.2 box and try to drop it into a pfSense 1.2 system. (Not 1.2.1 or 1.2.2, which are based on FreeBSD 7.0)

            1 Reply Last reply Reply Quote 0
            • J
              jcpriotti
              last edited by

              Hi,
              I was able to compile the driver in this way (usuing a computer with FreeBSD 7):

              tar zxvf Driver_FreeBSD_7830.tar.gz

              x Driver_FreeBSD_7830/README~
              x Driver_FreeBSD_7830/if_mosreg.h
              x Driver_FreeBSD_7830/if_mos.c
              x Driver_FreeBSD_7830/README
              x Driver_FreeBSD_7830/Makefile

              cd Driver_FreeBSD_7830

              vi if_mos.c

              Add the following

              #include <dev usb="" usb_port.h="">Then compile and load the module

              make

              kldload if_mos.ko

              You will see the interface as mos0

              ifconfig

              mos0: flags=108802 <broadcast,simplex,multicast,needsgiant>metric 0 mtu 1500
                      ether 00:50:c5:70:1c:9b
                      media: Ethernet autoselect (none)
                      status: active

              I think if you want it to get it working in PFSense you should copy if_mos.ko to /boot/kernel and then add  if_mos_load="YES" to /boot/loader.conf so the module will be started every time you boot the system..
              Regards,

              Juan Priotti</broadcast,simplex,multicast,needsgiant></dev>

              1 Reply Last reply Reply Quote 0
              • First post
                Last post
              Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.