WSL2-Linux-Kernel/drivers/char/ipmi
Corey Minyard 10042504ed ipmi:ssif: Add support for multi-part transmit messages > 2 parts
The spec was fairly confusing about how multi-part transmit messages
worked, so the original implementation only added support for two
part messages.  But after talking about it with others and finding
something I missed, I think it makes more sense.

The spec mentions smbus command 8 in a table at the end of the
section on SSIF support as the end transaction.  If that works,
then all is good and as it should be.  However, some implementations
seem to use a middle transaction <32 bytes tomark the end because of the
confusion in the spec, even though that is an SMBus violation if
the number of bytes is zero.

So this change adds some tests, if command=8 works, it uses that,
otherwise if an empty end transaction works, it uses a middle
transaction <32 bytes to mark the end.  If neither works, then
it limits the size to 63 bytes as it is now.

Cc: Harri Hakkarainen <harri@cavium.com>
Cc: Bazhenov, Dmitry <dmitry.bazhenov@auriga.com>
Cc: Mach, Dat <Dat.Mach@cavium.com>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
2018-09-18 16:18:44 -05:00
..
Kconfig ipmi: Remove the proc interface 2018-05-09 12:21:46 -05:00
Makefile ipmi: add an NPCM7xx KCS BMC driver 2018-04-18 10:23:12 -05:00
bt-bmc.c ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_bt_sm.c ipmi: Convert pr_xxx() to dev_xxx() in the BT code 2018-09-18 16:15:33 -05:00
ipmi_devintf.c ipmi: Convert printk(KERN_<level> to pr_<level>( 2018-09-18 16:15:33 -05:00
ipmi_dmi.c ipmi: Remove platform driver overrides and use the id_table 2018-09-18 16:15:33 -05:00
ipmi_dmi.h ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_kcs_sm.c ipmi: Convert printk(KERN_<level> to pr_<level>( 2018-09-18 16:15:33 -05:00
ipmi_msghandler.c ipmi: fix return value of ipmi_set_my_LUN 2018-09-18 16:15:33 -05:00
ipmi_powernv.c ipmi:powernv: Convert ipmi_smi_t to struct ipmi_smi 2018-09-18 16:15:33 -05:00
ipmi_poweroff.c ipmi: Use more common logging styles 2018-09-18 16:15:33 -05:00
ipmi_si.h ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_si_hardcode.c ipmi: Use more common logging styles 2018-09-18 16:15:33 -05:00
ipmi_si_hotmod.c ipmi: Use more common logging styles 2018-09-18 16:15:33 -05:00
ipmi_si_intf.c ipmi: Change to ktime_get_ts64() 2018-09-18 16:15:33 -05:00
ipmi_si_mem_io.c ipmi_si: fix potential integer overflow on large shift 2018-09-18 16:15:33 -05:00
ipmi_si_parisc.c ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_si_pci.c ipmi_si_pci: fix NULL device in ipmi_si error message 2018-09-18 16:15:33 -05:00
ipmi_si_platform.c ipmi: Remove platform driver overrides and use the id_table 2018-09-18 16:15:33 -05:00
ipmi_si_port_io.c ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_si_sm.h ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_smic_sm.c ipmi: Convert printk(KERN_<level> to pr_<level>( 2018-09-18 16:15:33 -05:00
ipmi_ssif.c ipmi:ssif: Add support for multi-part transmit messages > 2 parts 2018-09-18 16:18:44 -05:00
ipmi_watchdog.c ipmi: Use more common logging styles 2018-09-18 16:15:33 -05:00
kcs_bmc.c ipmi: kcs_bmc: don't change device name 2018-08-30 14:55:18 -05:00
kcs_bmc.h ipmi: kcs_bmc: coding-style fixes and use new poll type 2018-02-26 09:49:21 -06:00
kcs_bmc_aspeed.c ipmi: kcs_bmc: coding-style fixes and use new poll type 2018-02-26 09:49:21 -06:00
kcs_bmc_npcm7xx.c ipmi: NPCM7xx KCS BMC: enable interrupt to the host 2018-05-23 08:29:23 -05:00