HP H240 on Linux not working

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

titanjhb

New Member
May 22, 2022
4
0
1
I have a HP H240 SAS card that I’m hoping to use for my sata drives.

I’ve tried getting the card detected in unraid, Debian, SUSE and red hat with no luck. But on windows the adapter works like a charm.

confirmed via windows server the device is in HBA mode as well.

following system logs I found for HPSA

HP HPSA Driver (v 3.4.20-200)
hpsa 0000:01:00.0: can't disable ASPM; OS doesn't have ASPM control
hpsa 0000:01:00.0: board not ready, timed out.

it seems like a driver issue to me given it working in Windows in the same motherboard, CPU and memory.

Tried passing the kernel option hpsa_allow_any=1 to see if I can’t force the driver to load for my card, zero change unfortunately.

Any advice would be appreciated. Ultimately want to get the card working with unRAID and eventually a couple of new SAS drives (currently spare SATA).
 

RTM

Well-Known Member
Jan 26, 2014
956
359
63
I would be surprised if you can't make it work on Linux if it already works on Windows.
Plenty people here use and have used these with Linux.

I would probably start with updating the firmware of the card (if you haven't already). Here's the updater for Windows:

If that does not work, I suggest you try to clear out the configuration of the card.
Assuming you want to configure the card as a HBA afterwards, you can follow the instructions I wrote up in this post:

If that doesn't work I suggest you look at the second line from the quoted log, and see if you can somehow enable ASPM control for Linux.

On a sidenote: you can finde HPE Smart Storage Administrator (SSA) downloads here (including manuals and the offline SSA ISO) :
 

titanjhb

New Member
May 22, 2022
4
0
1
I would be surprised if you can't make it work on Linux if it already works on Windows.
Plenty people here use and have used these with Linux.

I would probably start with updating the firmware of the card (if you haven't already). Here's the updater for Windows:

If that does not work, I suggest you try to clear out the configuration of the card.
Assuming you want to configure the card as a HBA afterwards, you can follow the instructions I wrote up in this post:

If that doesn't work I suggest you look at the second line from the quoted log, and see if you can somehow enable ASPM control for Linux.

On a sidenote: you can finde HPE Smart Storage Administrator (SSA) downloads here (including manuals and the offline SSA ISO) :

Thanks for the reply!!

Firmware already updated to 7.0 via windows.

The weird thing is that even with the HP Offline SSA, still cant manage the card at all. Says: "
=> ctrl all show
Error: No controllers detected. Possible causes:"

Initially I though it was a hardware issue, the H240 is second hand and I didnt get to test it before the purchase, but when it worked in Windows I started wondering, hence me trying multiple Linux distro's to see if I cant narrow it down.

Ill play with some of the power settings and see if I can get it going (the ASPM line item).
 

oneplane

Well-Known Member
Jul 23, 2021
854
497
63
Sounds like it might be a UEFI settings issue; firmwares on servers do ask the OS "who are you" and respond differently depending on the answer sometimes. There are also differences in tolerations; Windows drivers might be configured to tolerate different defects or configuration combinations when compared to Linux drivers from HP where it might only want a few specific combinations.

I do have a H240 here that works fine (in an HP server) so it definitely works.
 

RTM

Well-Known Member
Jan 26, 2014
956
359
63
And I have had multiple H240's installed in a terrible Asus motherboard (Z9PA-D8), that I tested with a few different Linux distros (as far as I remember).

I did a bit of googling for the above, and it seems plenty of people are having these issues, but I did not see any solutions.

What happens if you run "modprobe hpsa" (you may need to do a "modprobe -r hpsa" first) after boot from the offline iso in the regular shell, will that make the device accessible? ( you may need to restart the SSA CLI).
 

oneplane

Well-Known Member
Jul 23, 2021
854
497
63
I wouldn't be surprised if the H240 requires some specific PCIe settings like link speed, power management, bar space etc. that are windows-oriented and HP only just barely 'copied' to their linux support.

Are you booting with UEFI or CSM?
 

yoyellow

New Member
May 9, 2022
14
10
3
I have 2 HP 240 cards in my dl360 gen 9 which work out of the box in linux (proxmox/debian) just be sure to update to latest firmware.

Sad thing is that these cards dont like pci passthrough :s
 

titanjhb

New Member
May 22, 2022
4
0
1
Almost made some progress tonight.

Based on some of the comments I tried the card on another motherboard that has a lot more UEFI options. When I tried it on this board in the past I could even post. But this time i tried with as many UEFI settings enabled, for one boot only I got the HP BIOS (if thats whats its called) before the OS took over. So was very happy, but when i swopped to a linux OS that didnt happen again and I was back to "board not ready, timed out" dmesg.

I wouldn't be surprised if the H240 requires some specific PCIe settings like link speed, power management, bar space etc. that are windows-oriented and HP only just barely 'copied' to their linux support.

Are you booting with UEFI or CSM?
The motherboard I tried on first doesnt really have much options, the second one I had some of the CSM settings enabled initially.

Sounds like it might be a UEFI settings issue; firmwares on servers do ask the OS "who are you" and respond differently depending on the answer sometimes.
Yeah I think between the UEFI compatibility and power settings there is a combo the one board doesnt have and I havnt figured out on the other one.

Will keep trying.

Thanks everyone for the help thus far.
 

titanjhb

New Member
May 22, 2022
4
0
1
Bit of an update, with a couple of hours of playing with the card on another motherboard I managed to figure out the correct UEFI settings to get it working on the second system.

The first, and intended system, doesnt seem to have the options I need to change to get it working. Wanted to eventually upgrade my hardware but guess this just accelerates the process.

For reference, seems that the ASPM and CSM on my Asus motherboard needed to be on auto, also only seemed to work from a cold boot, on a restart the card doesnt detect.