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

    Attempting to us 2.0 with a Silicom PXG4BPi - Quad Port Copper Gigabit Ethernet

    Scheduled Pinned Locked Moved 2.0-RC Snapshot Feedback and Problems - RETIRED
    14 Posts 4 Posters 7.1k 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.
    • S
      seswho704
      last edited by

      Well, I really need to get the machine up, so I found a different Intel card and used it. But I do want to get a resolution to this, so I moved the PXG4BPi to a HP DL360 I have.

      New architecture:
      HP DL360
      1 2.8Ghz Processor
      2GB ram
      Mirrored 75GB drives
      2 embedded NICs
      PXG4BPi

      The attached files show the dmesg for this device and the output from pciconf -vlb.

      Thank you for your help on this.

      dmesg.txt
      pciconf.txt

      1 Reply Last reply Reply Quote 0
      • W
        wallabybob
        last edited by

        There are 4 devices like this:

        none2@pci0:2:4:0: class=0x020000 card=0x002c1374 chip=0x002c1374 rev=0x03 hdr=0x00
            class      = network
            subclass  = ethernet

        This device identifies itself as Vendor = 0x1374 (Silicom) and Vendor's Id = 0x2c (Quad port Copper Giga Ethernet 546GB Bypass Server Adapter (PXG4BPI)). (Interpretation of numeric IDs taken from pci.ids file on Ubuntu 10.04)

        This is not recognisable as an Intel device without additional information.

        I took a look at the product page at http://www.silicom-usa.com/default.asp?contentID=667
        Perhaps the FreeBSD support means the driver can be downloaded from the silicom dwnloads page.
        A case blind search of the .c and .h files in the FreeBSD sources failed to turn up any instance of Silicom in any of the files I recognised as a LAN driver and failed to find any occurrence of pxg4bpi. I also failed to find any instance of pxg4bpi in the FreeBSD 8.1 hardware release notes.

        1 Reply Last reply Reply Quote 0
        • S
          seswho704
          last edited by

          I have located a CD with FreeBSD drivers on it. It looks like I have to compile them. The questions I have are: 1) will I be able to compile them under the beta version of pfSense, and 2) where do I put them after they are compiled?

          Or should I place a copy of the source code on the forum to be included in a future release of the 2.0 Beta?

          ![4x - File Browser_002.png](/public/imported_attachments/1/4x - File Browser_002.png)
          ![4x - File Browser_002.png_thumb](/public/imported_attachments/1/4x - File Browser_002.png_thumb)
          ![src - File Browser_003.png](/public/imported_attachments/1/src - File Browser_003.png)
          ![src - File Browser_003.png_thumb](/public/imported_attachments/1/src - File Browser_003.png_thumb)

          1 Reply Last reply Reply Quote 0
          • W
            wallabybob
            last edited by

            @seswho704:

            I have located a CD with FreeBSD drivers on it. It looks like I have to compile them. The questions I have are: 1) will I be able to compile them under the beta version of pfSense, and 2) where do I put them after they are compiled?

            1. pfSense is a firewall so it doesn't include any build tools. Best do this on a FreeBSD 8.1 system.
            2. The driver build should generate one or more kernel modules (.ko files) which should be copied to /boot/kernel/ on the pfSense box.

            @seswho704:

            Or should I place a copy of the source code on the forum to be included in a future release of the 2.0 Beta?

            You probably don't want to do that unless you know you have permission of the copyright owners. One or more of the source files will probably identify the copyright owners.

            1 Reply Last reply Reply Quote 0
            • S
              seswho704
              last edited by

              @wallabybob:

              1. pfSense is a firewall so it doesn't include any build tools. Best do this on a FreeBSD 8.1 system.
              2. The driver build should generate one or more kernel modules (.ko files) which should be copied to /boot/kernel/ on the pfSense box.

              Ok, so I guess this could be with FreeBSD running as a VM right?
              When I do the install, are there any special packages to install to compile the drivers, or does the install include the development tools?

              @wallabybob:

              You probably don't want to do that unless you know you have permission of the copyright owners. One or more of the source files will probably identify the copyright owners.

              Better off not sharing them then.

              Thank you for all of your help, I will reply when I get the drivers built and copied onto the pfSense box.

              1 Reply Last reply Reply Quote 0
              • W
                wallabybob
                last edited by

                @seswho704:

                Ok, so I guess this could be with FreeBSD running as a VM right?

                Standalone or as VM - either should work. I run FreeBSD on VirtualBox on Ubuntu. From what I have read in the forums others have successfully used VMs on VMWARE

                @seswho704:

                When I do the install, are there any special packages to install to compile the drivers, or does the install include the development tools?

                Install is a bit different from a typical Linux distribution: select the appropriate install options. From memory, I usually choose something like developer, no X. There are a few chapters describing the install process in the FreeBSD Handbook at http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/

                1 Reply Last reply Reply Quote 0
                • S
                  seswho704
                  last edited by

                  So I built a FreeBSD 8.1 VM, copied the driver source files, compiled the 7.x verison of the driver. Copied the .ko and .kld files to the new pfSense firewalls /boot/kernel directory. Rebooted and it looks like the driver is not loading. I ran kldload and rebooted, same thing, no driver loaded.

                  Attached are the latest dmesg and pciconf -vlb listings.

                  I am begining to think this will not work.

                  dmesg.txt
                  pciconf.txt

                  1 Reply Last reply Reply Quote 0
                  • S
                    seswho704
                    last edited by

                    Woot!!!!

                    Other than running kldload, the /boot/loader.conf had to have the line if_silbpi_load="YES" added to it.

                    The driver for the board has loaded and should be accessible to the system.

                    Testing now.

                    Thank you for your help.

                    1 Reply Last reply Reply Quote 0
                    • W
                      wallabybob
                      last edited by

                      Congratulations on your success.

                      You might care to note that /boot/loader.conf is not guaranteed to survive a firmware upgrade, /boot/loader.conf.local is supposed to survive a firmware upgrade (and has survived all my recent firmware upgrades).

                      1 Reply Last reply Reply Quote 0
                      • S
                        seswho704
                        last edited by

                        @wallabybob:

                        Congratulations on your success.

                        You might care to note that /boot/loader.conf is not guaranteed to survive a firmware upgrade, /boot/loader.conf.local is supposed to survive a firmware upgrade (and has survived all my recent firmware upgrades).

                        Yup, sort of noticed that when I upgraded to the latest Beta release. I will take a look at the loader.conf.local file and add the proper info there.

                        Thank you for your help.

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