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

    Intel X553 NICs (on C3758 SoC) not detected by pfSense 2.4/2.4.1

    Scheduled Pinned Locked Moved Hardware
    42 Posts 16 Posters 15.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.
    • M
      MarvinFS
      last edited by

      Thanks for the answer ,

      Will it survive the updates then? I mean how frequent PFsense updates modules in /boot? or it's more like image updates for the whole partition?
      So for now we may use that solution, but if will need to put it manually to /boot on every update i'm not sure it's usable as those will be in remote offices with hardly proper IT personnel avail.

      1 Reply Last reply Reply Quote 0
      • stephenw10S
        stephenw10 Netgate Administrator
        last edited by

        The imported kernel module will be specific to that version. It probably won't work in 11.2 for example. We won't have tested anything against it so there's no guarantees that any pfSense update won't break it.

        Really you should wait for support to be included in the release. Certainly before deploying it in any critical application in my opinion.

        Steve

        1 Reply Last reply Reply Quote 0
        • M
          MarvinFS
          last edited by

          Managed to get it working somehow.
          Anyhow, we have bought those appliances already for all the offices, sadly before checking if it's supported yet! :)
          I failed to find a proper way to disable existing module, so i just rename it and load a module manually compiled from Intel sources.
          After that don't forget to fix permissions chmod 555 /boot/kernel/if_ix.ko and u'r good to go. (reboot)

          So yeah, it works just fine after that, but don't survive upgrades as far as i understand pfsense updates kernel also, along with modules apparently.

          Instructions:

          on 1st boot after install press any key on PFsense logo

          boot in Single User mode
          press enter for /bin/sh shell

          #connect your USB stick (Fat32 formatted) with driver
          #check what's it's name
          ls /dev/da*
          #mount usb
          mount_msdosfs /dev/da0s1 /media
          #unload existing if_ix module - check it's ID if necessary /sbin/kldstat )
          /sbin/kldunload -i 2
          #mount root as RW
          mount -rw /
          #rename existing if_ix.ko module
          mv /boot/kernel/if_ix.ko /boot/kernel/if_ix.ko.blacklisted
          #copy new module from USB
          cp /media/if_ix.ko /boot/modules/
          #fix permissions
          chmod 555 /boot/modules/if_ix.ko
          #make loader.conf.local
          echo 'if_ix_load="YES"' >> /boot/loader.conf.local
          #enjoy
          reboot

          In case somebody needs it - here's yandex.cloud direct link (compiled for FreeBSD 11.1 release) https://yadi.sk/d/F92wgHSy3RNDS9

          1 Reply Last reply Reply Quote 0
          • D
            daddygrant
            last edited by

            You sir, have saved my bacon.  Your instructions and file has worked perfectly for me.

            Cheers.

            @MarvinFS:

            Managed to get it working somehow.
            Anyhow, we have bought those appliances already for all the offices, sadly before checking if it's supported yet! :)
            I failed to find a proper way to disable existing module, so i just rename it and load a module manually compiled from Intel sources.
            After that don't forget to fix permissions chmod 555 /boot/kernel/if_ix.ko and u'r good to go. (reboot)

            So yeah, it works just fine after that, but don't survive upgrades as far as i understand pfsense updates kernel also, along with modules apparently.

            Instructions:

            on 1st boot after install press any key on PFsense logo

            boot in Single User mode
            press enter for /bin/sh shell

            #connect your USB stick (Fat32 formatted) with driver
            #check what's it's name
            ls /dev/da*
            #mount usb
            mount_msdosfs /dev/da0s1 /media
            #unload existing if_ix module - check it's ID if necessary /sbin/kldstat )
            /sbin/kldunload -i 2
            #mount root as RW
            mount -rw /
            #rename existing if_ix.ko module
            mv /boot/kernel/if_ix.ko /boot/kernel/if_ix.ko.blacklisted
            #copy new module from USB
            cp /media/if_ix.ko /boot/modules/
            #fix permissions
            chmod 555 /boot/modules/if_ix.ko
            #make loader.conf.local
            echo 'if_ix_load="YES"' >> /boot/loader.conf.local
            #enjoy
            reboot

            In case somebody needs it - here's yandex.cloud direct link (compiled for FreeBSD 11.1 release) https://yadi.sk/d/F92wgHSy3RNDS9

            1 Reply Last reply Reply Quote 0
            • M
              MarvinFS
              last edited by

              @daddygrant:

              You sir, have saved my bacon.  Your instructions and file has worked perfectly for me.

              Cheers.

              Glad it worked and happy to help! Guess we'd wait for official support now and upgrade afterwards…

              1 Reply Last reply Reply Quote 0
              • A
                andrewjoy
                last edited by

                @MarvinFS:

                Managed to get it working somehow.
                Anyhow, we have bought those appliances already for all the offices, sadly before checking if it's supported yet! :)
                I failed to find a proper way to disable existing module, so i just rename it and load a module manually compiled from Intel sources.
                After that don't forget to fix permissions chmod 555 /boot/kernel/if_ix.ko and u'r good to go. (reboot)

                So yeah, it works just fine after that, but don't survive upgrades as far as i understand pfsense updates kernel also, along with modules apparently.

                Instructions:

                on 1st boot after install press any key on PFsense logo

                boot in Single User mode
                press enter for /bin/sh shell

                #connect your USB stick (Fat32 formatted) with driver
                #check what's it's name
                ls /dev/da*
                #mount usb
                mount_msdosfs /dev/da0s1 /media
                #unload existing if_ix module - check it's ID if necessary /sbin/kldstat )
                /sbin/kldunload -i 2
                #mount root as RW
                mount -rw /
                #rename existing if_ix.ko module
                mv /boot/kernel/if_ix.ko /boot/kernel/if_ix.ko.blacklisted
                #copy new module from USB
                cp /media/if_ix.ko /boot/modules/
                #fix permissions
                chmod 555 /boot/modules/if_ix.ko
                #make loader.conf.local
                echo 'if_ix_load="YES"' >> /boot/loader.conf.local
                #enjoy
                reboot

                In case somebody needs it - here's yandex.cloud direct link (compiled for FreeBSD 11.1 release) https://yadi.sk/d/F92wgHSy3RNDS9

                This is  very clear thanks !!!

                Do we know when this is going to be in the live and stable builds ? Its working for now but don't want to put it into production until its part of the default kernel.

                Hopefully its soon before the power supply in the old Dell R300 changes its mind about not being on fire :)

                1 Reply Last reply Reply Quote 0
                • O
                  Ofloo
                  last edited by

                  @stephenw10:

                  The drivers were not in 11.1 release which is what we build on so until they are included in our base we may not get them.

                  You can build the kernel module yourself as explained by EditioN above. To load it at boot time just create the file /boot/loader.conf.local and then put in that file:

                  if_ix_load="YES"
                  

                  Steve

                  or just i beleve it was ```
                  if_ix_updated_load=yes

                  1 Reply Last reply Reply Quote 0
                  • E
                    EditioN
                    last edited by

                    Hey guys,

                    The new XG-7100 model includes the Atom C3000.
                    I guess this is a good sign that the drivers will be built in soon?

                    I must say that I have no issues so far with the driver I compiled but official support would be quite good to have.

                    1 Reply Last reply Reply Quote 0
                    • B
                      BenDroid
                      last edited by

                      @MarvinFS:

                      Managed to get it working somehow.
                      Anyhow, we have bought those appliances already for all the offices, sadly before checking if it's supported yet! :)
                      I failed to find a proper way to disable existing module, so i just rename it and load a module manually compiled from Intel sources.
                      After that don't forget to fix permissions chmod 555 /boot/kernel/if_ix.ko and u'r good to go. (reboot)

                      So yeah, it works just fine after that, but don't survive upgrades as far as i understand pfsense updates kernel also, along with modules apparently.

                      Instructions:

                      on 1st boot after install press any key on PFsense logo

                      boot in Single User mode
                      press enter for /bin/sh shell

                      #connect your USB stick (Fat32 formatted) with driver
                      #check what's it's name
                      ls /dev/da*
                      #mount usb
                      mount_msdosfs /dev/da0s1 /media
                      #unload existing if_ix module - check it's ID if necessary /sbin/kldstat )
                      /sbin/kldunload -i 2
                      #mount root as RW
                      mount -rw /
                      #rename existing if_ix.ko module
                      mv /boot/kernel/if_ix.ko /boot/kernel/if_ix.ko.blacklisted
                      #copy new module from USB
                      cp /media/if_ix.ko /boot/modules/
                      #fix permissions
                      chmod 555 /boot/modules/if_ix.ko
                      #make loader.conf.local
                      echo 'if_ix_load="YES"' >> /boot/loader.conf.local
                      #enjoy
                      reboot

                      In case somebody needs it - here's yandex.cloud direct link (compiled for FreeBSD 11.1 release) https://yadi.sk/d/F92wgHSy3RNDS9

                      Hello Everybody

                      I would like to chime in and report aswell. I have e SuperMicro SuperServer E200-9A with the new C3558 in it. It also has four X553 NICs which I cannot get running under pfSense. I tried your instructions but they didn't work. Seems like I need to give myself permission somewhere (see attached picture). I set the system up with ZFS but I tried it with UFS and it didn't work aswell. Maybe I'm just missing something?

                      Can anybody give me a tip here? Any help would be appreciated.

                      1 Reply Last reply Reply Quote 0
                      • stephenw10S
                        stephenw10 Netgate Administrator
                        last edited by

                        You don't need unload ix as it's not running as a module.

                        It failed to remount / as read-write because it doesn't recognise the file system, you will need to specify it. Though ufs should have worked there. Try:

                        mount -rw -t zfs /
                        

                        It would still be better to wait for a pfSense build based on a FreeBSD version that includes the driver though.

                        Steve

                        1 Reply Last reply Reply Quote 0
                        • B
                          BenDroid
                          last edited by

                          @stephenw10:

                          You don't need unload ix as it's not running as a module.

                          It failed to remount / as read-write because it doesn't recognise the file system, you will need to specify it. Though ufs should have worked there. Try:

                          mount -rw -t zfs /
                          

                          Thank you very much for the quick response. Although the command you provided didn't work either. I tried for fat32 and zfs… (see picture)
                          Just to clarify: The OS drive on which pfSense is installed is ZFS. The USB-Stick with the if_ix.ko file on it is fat32, like in the instructions.

                          @stephenw10:

                          It would still be better to wait for a pfSense build based on a FreeBSD version that includes the driver though.

                          I hope they are working on this. Although in the bugtracker there is no sign of it. :-\

                          T 1 Reply Last reply Reply Quote 0
                          • stephenw10S
                            stephenw10 Netgate Administrator
                            last edited by

                            Ah, yes. ZFS requires more hoop jumping. It's probably easier to reinstall with UFS and try there instead.

                            I assume you're doing this because you don't have any functioning NICs? And you can't put one in temporarily?

                            Steve

                            1 Reply Last reply Reply Quote 0
                            • B
                              BenDroid
                              last edited by

                              Okay. I will try reinstalling with UFS tomorrow, thank you.

                              Yes, no NICs detected. I really hope the devs will include support for x553 NICs soon…
                              By putting a NIC in temporarily, do you mean something like an USB-NIC? No I don't have any, but i could probably get one easily... Bad thing is, my system doesn't have an external USB 3.0 port. Good thing is, I'm not in a hurry: my current router is still running...

                              I will post as soon as i try with UFS install again. BTW, is there any benefits to going with UFS vs. ZFS?

                              Ben

                              1 Reply Last reply Reply Quote 0
                              • stephenw10S
                                stephenw10 Netgate Administrator
                                last edited by

                                UFS is far more widely tested in pfSense, it's still the default file system type for everything except mirrored disk installs. ZFS may well become the default at some point but there's no schedule for that I'm aware of.

                                When you face odd issues it's best to keep everything as vanilla as possible for maximum chance someone else will have hit it before you.  ;) At least until things are working as expected.

                                Yes a USB NIC or anything else you can put in temporarily just to get fully booted to make file transfers way easier.

                                Steve

                                1 Reply Last reply Reply Quote 0
                                • D
                                  dasaint
                                  last edited by

                                  So there was a release for 2.4.3 that contained this information but sadly it doesn't work on CE builds  (factory installations only) mean some custom config they do with Netgate?  Why wouldnt they share this with the Community Edition it just seems dumb…

                                  https://doc.pfsense.org/index.php/2.4.3_New_Features_and_Changes#Interfaces_.2F_VIPs
                                  Hardware support for the XG-7100, including:
                                  C3000 NIC support (factory installations only)
                                  C3000 SoC support (factory installations only)
                                  Marvell 88E6190 switch support (factory installations only)

                                  I tested the 2.4.3 build against my C3558 Motherboard no dice on the X553 driver.

                                  1 Reply Last reply Reply Quote 0
                                  • ivorI
                                    ivor
                                    last edited by

                                    We backported the C3000 support for hardware we're selling, and it's the only hardware that we have properly vetted the code with. FreeBSD is adding C3000 support to 11.2, so it will be more widely tested there on other hardware by FreeBSD users. So, not dumb.

                                    Need help fast? Our support is available 24/7 https://www.netgate.com/support/

                                    1 Reply Last reply Reply Quote 0
                                    • B
                                      BenDroid
                                      last edited by

                                      Hi Iovr

                                      Is it stable in the factory installations?

                                      1 Reply Last reply Reply Quote 0
                                      • stephenw10S
                                        stephenw10 Netgate Administrator
                                        last edited by

                                        We have not seen any stability issues on the particular hardware in the XG-7100, which is where we've tested it.

                                        Steve

                                        1 Reply Last reply Reply Quote 0
                                        • T
                                          trumee @BenDroid
                                          last edited by trumee

                                          @bendroid I have a ZFS filesystem as well. I had to do

                                          zfs set readonly=off zroot/ROOT/default
                                          

                                          and was able to mv files around. After making the changes, the property can be reset to default using,

                                          zfs inherit readonly  zroot/ROOT/default
                                          

                                          The pool properties out of the box are as follows (for reference),

                                          NAME   PROPERTY              VALUE                  SOURCE
                                          zroot  type                  filesystem             -
                                          zroot  mounted               yes                    -
                                          zroot  quota                 none                   default
                                          zroot  reservation           none                   default
                                          zroot  recordsize            128K                   default
                                          zroot  mountpoint            /zroot                 local
                                          zroot  sharenfs              off                    default
                                          zroot  checksum              on                     default
                                          zroot  compression           lz4                    local
                                          zroot  atime                 off                    local
                                          zroot  devices               on                     default
                                          zroot  exec                  on                     default
                                          zroot  setuid                on                     default
                                          zroot  readonly              off                    default
                                          zroot  jailed                off                    default
                                          zroot  snapdir               hidden                 default
                                          zroot  aclmode               discard                default
                                          zroot  aclinherit            restricted             default
                                          zroot  canmount              on                     default
                                          zroot  xattr                 off                    temporary
                                          zroot  copies                1                      default
                                          zroot  version               5                      -
                                          zroot  utf8only              off                    -
                                          zroot  normalization         none                   -
                                          zroot  casesensitivity       sensitive              -
                                          zroot  vscan                 off                    default
                                          zroot  nbmand                off                    default
                                          zroot  sharesmb              off                    default
                                          zroot  refquota              none                   default
                                          zroot  refreservation        none                   default
                                          zroot  primarycache          all                    default
                                          zroot  secondarycache        all                    default
                                          zroot  usedbysnapshots       0                      -
                                          zroot  usedbydataset         88K                    -
                                          zroot  usedbychildren        399M                   -
                                          zroot  usedbyrefreservation  0                      -
                                          zroot  logbias               latency                default
                                          zroot  dedup                 off                    default
                                          zroot  mlslabel                                     -
                                          zroot  sync                  standard               default
                                          zroot  refcompressratio      1.00x                  -
                                          zroot  volmode               default                default
                                          zroot  filesystem_limit      none                   default
                                          zroot  snapshot_limit        none                   default
                                          zroot  filesystem_count      none                   default
                                          zroot  snapshot_count        none                   default
                                          zroot  redundant_metadata    all                    default
                                          
                                          B 1 Reply Last reply Reply Quote 0
                                          • B
                                            BenDroid @trumee
                                            last edited by

                                            @trumee Thank you alot, but I circumvented that issue with using developer builds. It's stable anough for my home and you get to try new fancy features. If you don't havea productive environment, I can only recommend going with the developer builds.

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