Commit 7c6a3fc9 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'for-linus-6.8-1' of https://github.com/cminyard/linux-ipmi

Pull IPMI updates from Corey Minyard:
 "Some small fixes. Nothing big, just aligning things with some changes"

* tag 'for-linus-6.8-1' of https://github.com/cminyard/linux-ipmi:
  ipmi: Remove usage of the deprecated ida_simple_xx() API
  ipmi: Use regspacings passed as a module parameter
  ipmi: si: Use device_get_match_data()
parents 5fda5698 9bd9fbd9
...@@ -3053,7 +3053,7 @@ static void cleanup_bmc_work(struct work_struct *work) ...@@ -3053,7 +3053,7 @@ static void cleanup_bmc_work(struct work_struct *work)
int id = bmc->pdev.id; /* Unregister overwrites id */ int id = bmc->pdev.id; /* Unregister overwrites id */
platform_device_unregister(&bmc->pdev); platform_device_unregister(&bmc->pdev);
ida_simple_remove(&ipmi_bmc_ida, id); ida_free(&ipmi_bmc_ida, id);
} }
static void static void
...@@ -3169,7 +3169,7 @@ static int __ipmi_bmc_register(struct ipmi_smi *intf, ...@@ -3169,7 +3169,7 @@ static int __ipmi_bmc_register(struct ipmi_smi *intf,
bmc->pdev.name = "ipmi_bmc"; bmc->pdev.name = "ipmi_bmc";
rv = ida_simple_get(&ipmi_bmc_ida, 0, 0, GFP_KERNEL); rv = ida_alloc(&ipmi_bmc_ida, GFP_KERNEL);
if (rv < 0) { if (rv < 0) {
kfree(bmc); kfree(bmc);
goto out; goto out;
......
...@@ -80,10 +80,10 @@ static void __init ipmi_hardcode_init_one(const char *si_type_str, ...@@ -80,10 +80,10 @@ static void __init ipmi_hardcode_init_one(const char *si_type_str,
} }
p.regsize = regsizes[i]; p.regsize = regsizes[i];
p.regspacing = regspacings[i];
p.slave_addr = slave_addrs[i]; p.slave_addr = slave_addrs[i];
p.addr_source = SI_HARDCODED; p.addr_source = SI_HARDCODED;
p.regshift = regshifts[i]; p.regshift = regshifts[i];
p.regsize = regsizes[i];
p.addr = addr; p.addr = addr;
p.space = addr_space; p.space = addr_space;
......
...@@ -11,10 +11,11 @@ ...@@ -11,10 +11,11 @@
#include <linux/types.h> #include <linux/types.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/of_device.h> #include <linux/of.h>
#include <linux/of_platform.h>
#include <linux/of_address.h> #include <linux/of_address.h>
#include <linux/of_irq.h> #include <linux/of_irq.h>
#include <linux/platform_device.h>
#include <linux/property.h>
#include <linux/acpi.h> #include <linux/acpi.h>
#include "ipmi_si.h" #include "ipmi_si.h"
#include "ipmi_dmi.h" #include "ipmi_dmi.h"
...@@ -224,7 +225,6 @@ MODULE_DEVICE_TABLE(of, of_ipmi_match); ...@@ -224,7 +225,6 @@ MODULE_DEVICE_TABLE(of, of_ipmi_match);
static int of_ipmi_probe(struct platform_device *pdev) static int of_ipmi_probe(struct platform_device *pdev)
{ {
const struct of_device_id *match;
struct si_sm_io io; struct si_sm_io io;
struct resource resource; struct resource resource;
const __be32 *regsize, *regspacing, *regshift; const __be32 *regsize, *regspacing, *regshift;
...@@ -237,10 +237,6 @@ static int of_ipmi_probe(struct platform_device *pdev) ...@@ -237,10 +237,6 @@ static int of_ipmi_probe(struct platform_device *pdev)
dev_info(&pdev->dev, "probing via device tree\n"); dev_info(&pdev->dev, "probing via device tree\n");
match = of_match_device(of_ipmi_match, &pdev->dev);
if (!match)
return -ENODEV;
if (!of_device_is_available(np)) if (!of_device_is_available(np))
return -EINVAL; return -EINVAL;
...@@ -269,7 +265,7 @@ static int of_ipmi_probe(struct platform_device *pdev) ...@@ -269,7 +265,7 @@ static int of_ipmi_probe(struct platform_device *pdev)
} }
memset(&io, 0, sizeof(io)); memset(&io, 0, sizeof(io));
io.si_type = (unsigned long) match->data; io.si_type = (enum si_type)device_get_match_data(&pdev->dev);
io.addr_source = SI_DEVICETREE; io.addr_source = SI_DEVICETREE;
io.irq_setup = ipmi_std_irq_setup; io.irq_setup = ipmi_std_irq_setup;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment