pocopico / rp-ext

GNU General Public License v2.0
529 stars 363 forks source link

Can you add support to HP Smart HBA H240 Controller #159

Closed enjoy-learning-everything closed 1 year ago

enjoy-learning-everything commented 1 year ago

HPE H240 12Gb 2-ports Int Smart Host Bus Adapter Product Info: HPE H240 12Gb 2-ports Int Smart Host Bus Adapter

Thanks!

pocopico commented 1 year ago

Is it set to HBA mode ?

https://forums.servethehome.com/index.php?threads/configure-modify-change-hp-h240-smart-hba-controller-from-raid-to-hba-mode-full-instructions.33623/

enjoy-learning-everything commented 1 year ago

Is it set to HBA mode ?

https://forums.servethehome.com/index.php?threads/configure-modify-change-hp-h240-smart-hba-controller-from-raid-to-hba-mode-full-instructions.33623/

Yes, I switched it from raid mode to hba mode, but I still can't see the hard disk mounted on the HBA card in the synology Nas system installed on ESXI6.7.

I have tried adding the driver in the following versions and compiling it myself to boot: DS3615xs_7.0.1-42218 DS3615xs_7.1.0-42661 DS918+_7.0.1-42218 I added the corresponding driver in it: https://github.com/pocopico/rp-ext/blob/main/hpsa/rpext-index.json

Except DS918+_7.0.1-42218 was not installed successfully, and the other two I couldn't recognize my hard disk in it, so I came here for help.

Or do you mean that there is already a driver for the HP H240 HBA card, which mirror is it?

pocopico commented 1 year ago

Once in TCRP can you please share the output of the command

lspci -nnq

enjoy-learning-everything commented 1 year ago

lspci -nnq

I tried to enter the grub interface when booting, and executed the command corresponding to lspci -nnq, but maybe the lspci function is not complete and does not support adding parameters. I tried adding -n or -q parameters, but the system could not recognize it.

The picture below is the output when I use lspci with default system parameters: image

The above results are operated in the boot of DS3615xs_7.0.1-42218, where I added the driver https://github.com/pocopico/rp-ext/blob/main/hpsa/rpext-index.json

enjoy-learning-everything commented 1 year ago

After this, I tried to cancel the pass-through H240 HBA card, and the result was like this, I found that after canceling the pass-through HBA card, the result was one less [0107] Mass storage Controller image

pocopico commented 1 year ago

version: 3.4.14-0 description: Driver for HP Smart Array Controller version 3.4.14-0 author: Hewlett-Packard Company srcversion: 1581F414C85259F7CEFA305 alias: pci:v0000103Cdsvsdbc01sc04i alias: pci:v0000103Cd0000333Fsv0000103Csd0000333Fbcsci alias: pci:v00001590d00000075sv00001590sd00000088bcsci alias: pci:v00001590d00000075sv00001590sd0000007Dbcsci alias: pci:v00001590d00000075sv00001590sd00000087bcsci alias: pci:v00001590d00000075sv00001590sd00000076bcsci alias: pci:v00009005d00000290sv00009005sd00000585bcsci alias: pci:v00009005d00000290sv00009005sd00000584bcsci alias: pci:v00009005d00000290sv00009005sd00000583bcsci alias: pci:v00009005d00000290sv00009005sd00000582bcsci alias: pci:v00009005d00000290sv00009005sd00000581bcsci alias: pci:v00009005d00000290sv00009005sd00000580bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021CEbcsci alias: pci:v0000103Cd00003239sv0000103Csd000021CDbcsci alias: pci:v0000103Cd00003239sv0000103Csd000021CCbcsci alias: pci:v0000103Cd00003239sv0000103Csd000021CBbcsci alias: pci:v0000103Cd00003239sv0000103Csd000021CAbcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C9bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C8bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C7bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C6bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C5bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C4bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C3bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C2bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C1bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021C0bcsci alias: pci:v0000103Cd00003239sv0000103Csd000021BFbcsci alias: pci:v0000103Cd00003239sv0000103Csd000021BEbcsci alias: pci:v0000103Cd00003239sv0000103Csd000021BDbcsci alias: pci:v0000103Cd0000323Csv0000103Csd00001929bcsci alias: pci:v0000103Cd0000323Csv0000103Csd00001928bcsci alias: pci:v0000103Cd0000323Csv0000103Csd00001926bcsci alias: pci:v0000103Cd0000323Csv0000103Csd00001924bcsci alias: pci:v0000103Cd0000323Csv0000103Csd00001923bcsci alias: pci:v0000103Cd0000323Csv0000103Csd00001922bcsci alias: pci:v0000103Cd0000323Csv0000103Csd00001921bcsci alias: pci:v0000103Cd0000323Bsv0000103Csd00003356bcsci alias: pci:v0000103Cd0000323Bsv0000103Csd00003355bcsci alias: pci:v0000103Cd0000323Bsv0000103Csd00003354bcsci alias: pci:v0000103Cd0000323Bsv0000103Csd00003353bcsci alias: pci:v0000103Cd0000323Bsv0000103Csd00003352bcsci alias: pci:v0000103Cd0000323Bsv0000103Csd00003351bcsci alias: pci:v0000103Cd0000323Bsv0000103Csd00003350bcsci alias: pci:v0000103Cd0000323Asv0000103Csd00003233bcsci alias: pci:v0000103Cd0000323Asv0000103Csd0000324Bbcsci alias: pci:v0000103Cd0000323Asv0000103Csd0000324Abcsci alias: pci:v0000103Cd0000323Asv0000103Csd00003249bcsci alias: pci:v0000103Cd0000323Asv0000103Csd00003247bcsci alias: pci:v0000103Cd0000323Asv0000103Csd00003245bcsci alias: pci:v0000103Cd0000323Asv0000103Csd00003243bcsci alias: pci:v0000103Cd0000323Asv0000103Csd00003241bcsci* depends: scsi_transport_sas

The HBA should be supported with hpsa extension. You can manually download the module from my repo and check loading it manually.

enjoy-learning-everything commented 1 year ago

version: 3.4.14-0 description: Driver for HP Smart Array Controller version 3.4.14-0 author: Hewlett-Packard Company srcversion: 1581F414C85259F7CEFA305 alias: pci:v0000103Cd_sv_sdbc01sc04i alias: pci:v0000103Cd0000333Fsv0000103Csd0000333Fbc_sc_i alias: pci:v00001590d00000075sv00001590sd00000088bc_sc_i alias: pci:v00001590d00000075sv00001590sd0000007Dbc_sc_i alias: pci:v00001590d00000075sv00001590sd00000087bc_sc_i alias: pci:v00001590d00000075sv00001590sd00000076bc_sc_i alias: pci:v00009005d00000290sv00009005sd00000585bc_sc_i alias: pci:v00009005d00000290sv00009005sd00000584bc_sc_i alias: pci:v00009005d00000290sv00009005sd00000583bc_sc_i alias: pci:v00009005d00000290sv00009005sd00000582bc_sc_i alias: pci:v00009005d00000290sv00009005sd00000581bc_sc_i alias: pci:v00009005d00000290sv00009005sd00000580bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021CEbc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021CDbc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021CCbc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021CBbc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021CAbc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C9bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C8bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C7bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C6bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C5bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C4bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C3bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C2bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C1bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021C0bc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021BFbc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021BEbc_sc_i alias: pci:v0000103Cd00003239sv0000103Csd000021BDbc_sc_i alias: pci:v0000103Cd0000323Csv0000103Csd00001929bc_sc_i alias: pci:v0000103Cd0000323Csv0000103Csd00001928bc_sc_i alias: pci:v0000103Cd0000323Csv0000103Csd00001926bc_sc_i alias: pci:v0000103Cd0000323Csv0000103Csd00001924bc_sc_i alias: pci:v0000103Cd0000323Csv0000103Csd00001923bc_sc_i alias: pci:v0000103Cd0000323Csv0000103Csd00001922bc_sc_i alias: pci:v0000103Cd0000323Csv0000103Csd00001921bc_sc_i alias: pci:v0000103Cd0000323Bsv0000103Csd00003356bc_sc_i alias: pci:v0000103Cd0000323Bsv0000103Csd00003355bc_sc_i alias: pci:v0000103Cd0000323Bsv0000103Csd00003354bc_sc_i alias: pci:v0000103Cd0000323Bsv0000103Csd00003353bc_sc_i alias: pci:v0000103Cd0000323Bsv0000103Csd00003352bc_sc_i alias: pci:v0000103Cd0000323Bsv0000103Csd00003351bc_sc_i alias: pci:v0000103Cd0000323Bsv0000103Csd00003350bc_sc_i alias: pci:v0000103Cd0000323Asv0000103Csd00003233bc_sc_i alias: pci:v0000103Cd0000323Asv0000103Csd0000324Bbc_sc_i alias: pci:v0000103Cd0000323Asv0000103Csd0000324Abc_sc_i alias: pci:v0000103Cd0000323Asv0000103Csd00003249bc_sc_i alias: pci:v0000103Cd0000323Asv0000103Csd00003247bc_sc_i alias: pci:v0000103Cd0000323Asv0000103Csd00003245bc_sc_i alias: pci:v0000103Cd0000323Asv0000103Csd00003243bc_sc_i alias: pci:v0000103Cd0000323Asv0000103Csd00003241bc_sc_i* depends: scsi_transport_sas

The HBA should be supported with hpsa extension. You can manually download the module from my repo and check loading it manually.

I'm sorry, I don't quite understand what you mean, could you be more specific? Thanks!

enjoy-learning-everything commented 1 year ago

I tried two commands in Synology system, the following is the output

This is the result I output using the lspci -nn command in the Synology system

xxxx@xxx:/$ lspci -nnq
0000:00:00.0 Host bridge [0600]: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge [8086:7190] (rev 01)
0000:00:01.0 PCI bridge [0604]: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge [8086:7191] (rev 01)
0000:00:07.0 ISA bridge [0601]: Intel Corporation 82371AB/EB/MB PIIX4 ISA [8086:7110] (rev 08)
0000:00:07.1 IDE interface [0101]: Intel Corporation 82371AB/EB/MB PIIX4 IDE [8086:7111] (rev 01)
0000:00:07.3 Bridge [0680]: Intel Corporation 82371AB/EB/MB PIIX4 ACPI [8086:7113] (rev 08)
0000:00:07.7 System peripheral [0880]: VMware Virtual Machine Communication Interface [15ad:0740] (rev 10)
0000:00:0f.0 VGA compatible controller [0300]: VMware SVGA II Adapter [15ad:0405]
0000:00:11.0 PCI bridge [0604]: VMware PCI bridge [15ad:0790] (rev 02)
0000:00:15.0 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:15.1 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:15.2 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:15.3 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:15.4 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:15.5 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:15.6 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:15.7 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:16.0 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:16.1 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:16.2 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:16.3 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:16.4 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:16.5 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:16.6 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:16.7 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:17.0 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:17.1 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:17.2 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:17.3 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:17.4 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:17.5 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:17.6 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:17.7 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:18.0 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:18.1 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:18.2 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:18.3 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:18.4 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:18.5 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:18.6 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:00:18.7 PCI bridge [0604]: VMware PCI Express Root Port [15ad:07a0] (rev 01)
0000:02:00.0 USB controller [0c03]: VMware USB1.1 UHCI Controller [15ad:0774]
0000:02:01.0 USB controller [0c03]: VMware USB2 EHCI Controller [15ad:0770]
0000:02:03.0 SATA controller [0106]: VMware SATA AHCI controller [15ad:07e0]
0000:03:00.0 Serial Attached SCSI controller [0107]: Hewlett-Packard Company Smart Array Gen9 Controllers [103c:3239] (rev 01)
0000:0b:00.0 Ethernet controller [0200]: Intel Corporation 82574L Gigabit Network Connection [8086:10d3]
0001:07:00.0 SATA controller [0106]: Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller [1b4b:9235] (rev 11)
0001:08:00.0 SATA controller [0106]: Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller [1b4b:9235] (rev 11)
0001:09:00.0 SATA controller [0106]: Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller [1b4b:9235] (rev 11)
0001:0a:00.0 SATA controller [0106]: Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller [1b4b:9235] (rev 11)
pcilib: Cannot write to /var/services/homes/xxxx/.pciids-cache: No such file or directory

This is the result I output using the lspci -vv command in the Synology system

xxxx@xxx:/$ lspci -vv
……
0000:02:03.0 Class 0106: Device 15ad:07e0 (prog-if 01)
        DeviceName: sata0
        Subsystem: Device 15ad:07e0
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
        Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 64
        Interrupt: pin A routed to IRQ 72
        Region 5: Memory at fd5fe000 (32-bit, non-prefetchable) [size=4K]
        [virtual] Expansion ROM at e7b00000 [disabled] [size=64K]
        Capabilities: <access denied>
        Kernel driver in use: ahci

0000:03:00.0 Class 0107: Device 103c:3239 (rev 01)
        DeviceName: pciPassthru0
        Subsystem: Device 103c:21c7
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 64, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 18
        Region 0: Memory at fd300000 (64-bit, non-prefetchable) [size=1M]
        Region 2: Memory at fd4ff000 (64-bit, non-prefetchable) [size=1K]
        Region 4: I/O ports at 4000 [size=256]
        Capabilities: <access denied>
        Kernel driver in use: hpsa

0000:0b:00.0 Class 0200: Device 8086:10d3
        DeviceName: Ethernet0
        Subsystem: Device 15ad:07d0
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 75
        Region 0: Memory at fd2a0000 (32-bit, non-prefetchable) [size=128K]
        Region 1: Memory at fd2c0000 (32-bit, non-prefetchable) [size=128K]
        Region 2: I/O ports at 5000 [size=32]
        Region 3: Memory at fd2fc000 (32-bit, non-prefetchable) [size=16K]
        [virtual] Expansion ROM at c0200000 [disabled] [size=64K]
        Capabilities: <access denied>
        Kernel driver in use: e1000e
……
enjoy-learning-everything commented 1 year ago

I solved this problem. I found the problem yesterday. In fact, I can always find the H240 array card, but I can't find the disk mounted on the H240 array card. Later, I carefully studied the parameter of SasIdxMap and solved the problem.

Thanks you and your TCRP.