On Fri, Aug 16, 2024 at 09:54:58AM +0300, Ivan T. Ivanov wrote:
It is pointless to continue module probing when communication
with device is failing. This just fill logs with misleading
messages like this:
So the BMC (or whatever is there) responds to a GET_DEVICE_ID command,
but then doesn't properly handle any other valid and mandatory commands?
And this device was added via ACPI or SMBIOS or device tree, almost
certainly.
My comments are:
1) This fix is wrong, because it may mask important things that need to
be reported.
2) Fix the source of the problem. You can't expect software to
compensate for all bad hardware and firmware. I'd guess the firmware
tables are pointing to something that's not a BMC.
3) It appears the response to the GET_DEVICE_ID command, though a
response is returned, is not valid. The right way to handle this would
be to do more validation in the ssif_detect() function. It doesn't do
any validation of the response data, and that's really what needs to be
done.