linux/drivers/char/ipmi/ipmi_si_hotmod.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * ipmi_si_hotmod.c
 *
 * Handling for dynamically adding/removing IPMI devices through
 * a module parameter (and thus sysfs).
 */

#define pr_fmt(fmt)

#include <linux/moduleparam.h>
#include <linux/ipmi.h>
#include <linux/atomic.h>
#include "ipmi_si.h"
#include "ipmi_plat_data.h"

static int hotmod_handler(const char *val, const struct kernel_param *kp);

module_param_call();
MODULE_PARM_DESC();

/*
 * Parms come in as <op1>[:op2[:op3...]].  ops are:
 *   add|remove,kcs|bt|smic,mem|i/o,<address>[,<opt1>[,<opt2>[,...]]]
 * Options are:
 *   rsp=<regspacing>
 *   rsi=<regsize>
 *   rsh=<regshift>
 *   irq=<irq>
 *   ipmb=<ipmb addr>
 */
enum hotmod_op {};
struct hotmod_vals {};

static const struct hotmod_vals hotmod_ops[] =;

static const struct hotmod_vals hotmod_si[] =;

static const struct hotmod_vals hotmod_as[] =;

static int parse_str(const struct hotmod_vals *v, unsigned int *val, char *name,
		     const char **curr)
{}

static int check_hotmod_int_op(const char *curr, const char *option,
			       const char *name, unsigned int *val)
{}

static int parse_hotmod_str(const char *curr, enum hotmod_op *op,
			    struct ipmi_plat_data *h)
{}

static atomic_t hotmod_nr;

static int hotmod_handler(const char *val, const struct kernel_param *kp)
{}

void ipmi_si_hotmod_exit(void)
{}