#define pr_fmt(fmt) …
#include <linux/moduleparam.h>
#include <linux/platform_device.h>
#include "ipmi_si.h"
#include "ipmi_plat_data.h"
#define SI_MAX_PARMS …
#define MAX_SI_TYPE_STR …
static char si_type_str[MAX_SI_TYPE_STR] __initdata;
static unsigned long addrs[SI_MAX_PARMS];
static unsigned int num_addrs;
static unsigned int ports[SI_MAX_PARMS];
static unsigned int num_ports;
static int irqs[SI_MAX_PARMS] __initdata;
static unsigned int num_irqs __initdata;
static int regspacings[SI_MAX_PARMS] __initdata;
static unsigned int num_regspacings __initdata;
static int regsizes[SI_MAX_PARMS] __initdata;
static unsigned int num_regsizes __initdata;
static int regshifts[SI_MAX_PARMS] __initdata;
static unsigned int num_regshifts __initdata;
static int slave_addrs[SI_MAX_PARMS] __initdata;
static unsigned int num_slave_addrs __initdata;
module_param_string(…);
MODULE_PARM_DESC(…) …;
module_param_hw_array(addrs, ulong, iomem, &num_addrs, 0);
MODULE_PARM_DESC(…) …;
module_param_hw_array(ports, uint, ioport, &num_ports, 0);
MODULE_PARM_DESC(…) …;
module_param_hw_array(irqs, int, irq, &num_irqs, 0);
MODULE_PARM_DESC(…) …;
module_param_hw_array(regspacings, int, other, &num_regspacings, 0);
MODULE_PARM_DESC(…) …;
module_param_hw_array(regsizes, int, other, &num_regsizes, 0);
MODULE_PARM_DESC(…) …;
module_param_hw_array(regshifts, int, other, &num_regshifts, 0);
MODULE_PARM_DESC(…) …;
module_param_hw_array(slave_addrs, int, other, &num_slave_addrs, 0);
MODULE_PARM_DESC(…) …;
static void __init ipmi_hardcode_init_one(const char *si_type_str,
unsigned int i,
unsigned long addr,
enum ipmi_addr_space addr_space)
{ … }
void __init ipmi_hardcode_init(void)
{ … }
void ipmi_si_hardcode_exit(void)
{ … }
int ipmi_si_hardcode_match(int addr_space, unsigned long addr)
{ … }