Jump to content
Read the Funtoo Newsletter: Summer 2023 ×
  • 0

Fiber Channel and LSI FC949ES 7204EP-LC (mptfc?)



I'm very new to fiber channel and storage arrays. While trying to set up an old JBOD (4G fiber channel SFP) and the HBA mentioned in the title of this post, I have been unable to figure it out on my own thus far. I'm using funtoo, with the cinnamon stage tarball as a base and debian-sources for my kernel source. The card shows up in lspci output, but the expected driver (mptfc, at least according to https://wiki.debian.org/DeviceDatabase/PCI) doesn't load, and doesn't even seem to be present on my system. Nothing in dmesg. I found mpt3sas, but that module doesn't seem to help. Is there someone on here with some expertise in this area that could point me in the right direction to get this working? I look forward to being able to test this JBOD--hopefully it works.



I found the module source in debian-sources, and it looks like the default is to compile it as a module, but modprobe doesn't pick it up on my system. I'm running `make modules` now to see if I can load the module from there. My kernel-fu is a little rusty...too much relying on genkernel lately. I haven't even had to touch genkernel (beyond tweaking genkernel.conf for a few things) on this system.

Edited by asewill
New information
Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0


I'm running an older version of debian-sources-lts.

No modification of the kernel configuration.

Genkernel builds the initramfs so it includes mptfc and autoloads it on boot.

rj@funtoo ~ $ modinfo mptfc
filename:       /lib/modules/4.19.152_p1-debian-sources-lts/kernel/drivers/message/fusion/mptfc.ko
version:        3.04.20
license:        GPL
description:    Fusion MPT FC Host driver
author:         LSI Corporation
srcversion:     2043697964B5896B7AB7B54
alias:          pci:v00001657d00000646sv*sd*bc*sc*i*
alias:          pci:v00001000d00000646sv*sd*bc*sc*i*
alias:          pci:v00001000d00000640sv*sd*bc*sc*i*
alias:          pci:v00001000d00000642sv*sd*bc*sc*i*
alias:          pci:v00001000d00000626sv*sd*bc*sc*i*
alias:          pci:v00001000d00000628sv*sd*bc*sc*i*
alias:          pci:v00001000d00000622sv*sd*bc*sc*i*
alias:          pci:v00001000d00000624sv*sd*bc*sc*i*
alias:          pci:v00001000d00000621sv*sd*bc*sc*i*
depends:        mptscsih,scsi_transport_fc,mptbase,scsi_mod
retpoline:      Y
intree:         Y
name:           mptfc
vermagic:       4.19.152_p1-debian-sources-lts SMP mod_unload modversions 
parm:           mptfc_dev_loss_tmo: Initial time the driver programs the  transport to wait for an rport to  return following a device loss event.  Default=60. (int)
parm:           max_lun: max lun, default=16895  (int)
rj@funtoo ~ $ lsmod | grep  mptfc
mptfc                  20480  0
scsi_transport_fc      69632  3 lpfc,qla2xxx,mptfc
mptscsih               32768  3 mptsas,mptspi,mptfc
mptbase                81920  4 mptsas,mptspi,mptfc,mptscsih
scsi_mod              245760  41 gdth,arcmsr,megaraid_mbox,mptsas,3w_sas,aic94xx,lpfc,aacraid,mptspi,virtio_scsi,atp870u,aic79xx,scsi_transport_sas,aic7xxx,sd_mod,raid_class,scsi_transport_spi,megaraid,scsi_transport_iscsi,qla2xxx,initio,3w_xxxx,BusLogic,scsi_transport_fc,usb_storage,mptfc,iscsi_tcp,hpsa,qla1280,mptscsih,sym53c8xx,libsas,libiscsi,megaraid_sas,libata,sg,dc395x,dmx3191d,3w_9xxx,sr_mod,mpt3sas


Edited by cardinal
Link to comment
Share on other sites

  • 0

Huh. I wonder why? I managed to get the module to compile (along with all the other modules), and install, just so I could test it. The module worked well. `make menuconfig` did not show an option for mptfc, as far as I could tell. Maybe I missed something.

Link to comment
Share on other sites

  • 0
7 hours ago, dutch-master said:

You may get satisfactory results when you emerge the mdadm package. JBOD is a "special" sort of RAID.

Thanks for the suggestion! I have and use mdadm, but that doesn't help to facilitate communication between the HBA and the JBOD, nor does it help to make the kernel aware of any block devices from the JBOD. The mptfc driver is what I needed. I still need a long-term solution for getting this module into my initramfs in this and future kernels using genkernel.

Link to comment
Share on other sites

  • 0

It looks like /usr/src/linux/config-extract sets 


so I guess I just needed to run that again. I'm not sure why I couldn't find that setting when I ran `make menuconfig`, even within the resulting config file. I definitely could have simply missed it. I'm running genkernel with the config now, so we'll see if it works.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...