"ipmi_kcs3" name is not respected by default "channel_config.json" file
Konstantin Aladyshev
aladyshev22 at gmail.com
Sat Oct 24 10:32:46 AEDT 2020
The current code in kcsbridged creates a Dbus object
"xyz.openbmc_project.Ipmi.Channel.ipmi_kcs3". And this name can't be
handled in ipmid with the default "channel_config.json" file.
Look at the code from the
https://github.com/openbmc/phosphor-host-ipmid/blob/master/user_channel/channel_mgmt.cpp
:
int ChannelConfig::convertToChannelNumberFromChannelName(
const std::string& chName)
{
for (const auto& it : channelData)
{
if (it.chName == chName)
{
return it.chID;
}
}
This code compares "ipmi_kcs3" string to every channel name in the
"channel_config.json" file. And by default the channel for the kcs
interface is named 'SMS' in this file, so there would'n be any match
(https://github.com/openbmc/meta-phosphor/blob/master/recipes-phosphor/ipmi/phosphor-ipmi-config/channel_config.json).
To use KCS interface I had to change the name for the channel 15 to
"ipmi_kcs3" like this:
"15" : {
"name" : "ipmi_kcs3",
"is_valid" : true,
"active_sessions" : 0,
"channel_info" : {
"medium_type" : "system-interface",
"protocol_type" : "kcs",
"session_supported" : "session-less",
"is_ipmi" : true
}
Is the override for 'channel_config.json' a correct solution, or it
should be dealt in another way?
Does any board have a working KCS interface? How does others deal with
this situation?
Best regards,
Konstantin Aladyshev
More information about the openbmc
mailing list