Lines Matching +full:ipmi +full:- +full:smic
1 // SPDX-License-Identifier: GPL-2.0+
5 * Handling for dynamically adding/removing IPMI devices through
12 #include <linux/ipmi.h>
21 …"Add and remove interfaces. See Documentation/driver-api/ipmi.rst in the kernel sources for the g…
25 * add|remove,kcs|bt|smic,mem|i/o,<address>[,<opt1>[,<opt2>[,...]]]
47 { "smic", SI_SMIC },
67 return -EINVAL; in parse_str()
80 return -EINVAL; in parse_str()
91 return -EINVAL; in check_hotmod_int_op()
96 return -EINVAL; in check_hotmod_int_op()
110 h->iftype = IPMI_PLAT_IF_SI; in parse_hotmod_str()
119 h->type = ival; in parse_hotmod_str()
124 h->space = ival; in parse_hotmod_str()
131 rv = kstrtoul(curr, 0, &h->addr); in parse_hotmod_str()
149 rv = check_hotmod_int_op(curr, o, "rsp", &h->regspacing); in parse_hotmod_str()
154 rv = check_hotmod_int_op(curr, o, "rsi", &h->regsize); in parse_hotmod_str()
159 rv = check_hotmod_int_op(curr, o, "rsh", &h->regshift); in parse_hotmod_str()
164 rv = check_hotmod_int_op(curr, o, "irq", &h->irq); in parse_hotmod_str()
169 rv = check_hotmod_int_op(curr, o, "ipmb", &h->slave_addr); in parse_hotmod_str()
176 return -EINVAL; in parse_hotmod_str()
179 h->addr_source = SI_HOTMOD; in parse_hotmod_str()
193 return -ENOMEM; in hotmod_handler()
211 ipmi_platform_add("hotmod-ipmi-si", in hotmod_handler()
222 if (strcmp(pdev->name, "hotmod-ipmi-si") == 0) in hotmod_handler()
236 ipmi_remove_platform_device_by_name("hotmod-ipmi-si"); in ipmi_si_hotmod_exit()