<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/char/ipmi/ipmi_si.h, branch v6.3</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>parisc: Make struct parisc_driver::remove() return void</title>
<updated>2021-08-30T08:18:25+00:00</updated>
<author>
<name>Uwe Kleine-König</name>
<email>u.kleine-koenig@pengutronix.de</email>
</author>
<published>2021-08-07T09:19:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=87875c1084a28364dad8cd4f9ecbfdfe0b845ad5'/>
<id>87875c1084a28364dad8cd4f9ecbfdfe0b845ad5</id>
<content type='text'>
The caller of this function (parisc_driver_remove() in
arch/parisc/kernel/drivers.c) ignores the return value, so better don't
return any value at all to not wake wrong expectations in driver authors.

The only function that could return a non-zero value before was
ipmi_parisc_remove() which returns the return value of
ipmi_si_remove_by_dev(). Make this function return void, too, as for all
other callers the value is ignored, too.

Also fold in a small checkpatch fix for:

WARNING: Unnecessary space before function pointer arguments
+	void (*remove) (struct parisc_device *dev);

Acked-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt; (for drivers/input)
Signed-off-by: Uwe Kleine-König &lt;u.kleine-koenig@pengutronix.de&gt;
Acked-by:  Sudip Mukherjee &lt;sudipm.mukherjee@gmail.com&gt;
Acked-by: Jiri Slaby &lt;jirislaby@kernel.org&gt;
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The caller of this function (parisc_driver_remove() in
arch/parisc/kernel/drivers.c) ignores the return value, so better don't
return any value at all to not wake wrong expectations in driver authors.

The only function that could return a non-zero value before was
ipmi_parisc_remove() which returns the return value of
ipmi_si_remove_by_dev(). Make this function return void, too, as for all
other callers the value is ignored, too.

Also fold in a small checkpatch fix for:

WARNING: Unnecessary space before function pointer arguments
+	void (*remove) (struct parisc_device *dev);

Acked-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt; (for drivers/input)
Signed-off-by: Uwe Kleine-König &lt;u.kleine-koenig@pengutronix.de&gt;
Acked-by:  Sudip Mukherjee &lt;sudipm.mukherjee@gmail.com&gt;
Acked-by: Jiri Slaby &lt;jirislaby@kernel.org&gt;
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipmi_si: Get rid of -&gt;addr_source_cleanup()</title>
<updated>2021-04-02T17:53:34+00:00</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2021-04-02T17:43:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2dafddb8829fdc8969c2aad9fc6852419102d7fa'/>
<id>2dafddb8829fdc8969c2aad9fc6852419102d7fa</id>
<content type='text'>
The -&gt;addr_source_cleanup() callback is solely used by PCI driver
and only for one purpose, i.e. to disable device. Get rid of
-&gt;addr_source_cleanup() by switching to PCI managed API.

Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Message-Id: &lt;20210402174334.13466-8-andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The -&gt;addr_source_cleanup() callback is solely used by PCI driver
and only for one purpose, i.e. to disable device. Get rid of
-&gt;addr_source_cleanup() by switching to PCI managed API.

Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Message-Id: &lt;20210402174334.13466-8-andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipmi_si: Reuse si_to_str[] array in ipmi_hardcode_init_one()</title>
<updated>2021-04-02T17:53:32+00:00</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2021-04-02T17:43:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=59cdb2e7c849656a1509b8c20cab2be1743631b2'/>
<id>59cdb2e7c849656a1509b8c20cab2be1743631b2</id>
<content type='text'>
Instead of making the comparison one by one, reuse si_to_str[] array
in ipmi_hardcode_init_one() in conjunction with match_string() API.

Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Message-Id: &lt;20210402174334.13466-7-andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Instead of making the comparison one by one, reuse si_to_str[] array
in ipmi_hardcode_init_one() in conjunction with match_string() API.

Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Message-Id: &lt;20210402174334.13466-7-andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipmi_si: Rework some include files</title>
<updated>2019-08-02T12:25:03+00:00</updated>
<author>
<name>Corey Minyard</name>
<email>cminyard@mvista.com</email>
</author>
<published>2019-08-01T00:18:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=104fb25f60077e4696145bcea51ca56f0959d7e3'/>
<id>104fb25f60077e4696145bcea51ca56f0959d7e3</id>
<content type='text'>
ipmi_si_sm.h was getting included in lots of places it didn't
belong.  Rework things a bit to remove all the dependencies,
mostly just moving things between include files that were in
the wrong place and removing bogus includes.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ipmi_si_sm.h was getting included in lots of places it didn't
belong.  Rework things a bit to remove all the dependencies,
mostly just moving things between include files that were in
the wrong place and removing bogus includes.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipmi_si: Consolidate scanning the platform bus</title>
<updated>2019-02-22T13:12:41+00:00</updated>
<author>
<name>Corey Minyard</name>
<email>cminyard@mvista.com</email>
</author>
<published>2019-02-21T23:41:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e17c657100d592115fcfad27472cd611fd74b861'/>
<id>e17c657100d592115fcfad27472cd611fd74b861</id>
<content type='text'>
The same basic code was in two places.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The same basic code was in two places.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipmi_si: Remove hotmod devices on removal and exit</title>
<updated>2019-02-22T13:12:41+00:00</updated>
<author>
<name>Corey Minyard</name>
<email>cminyard@mvista.com</email>
</author>
<published>2019-02-21T23:21:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=bdb57b7bc16252599cbcb826dfdf7e394dd2af4b'/>
<id>bdb57b7bc16252599cbcb826dfdf7e394dd2af4b</id>
<content type='text'>
When a hotmod-added device is removed or when the module is removed,
remove the platform devices that was created for it.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When a hotmod-added device is removed or when the module is removed,
remove the platform devices that was created for it.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipmi: Consolidate the adding of platform devices</title>
<updated>2019-02-22T13:12:41+00:00</updated>
<author>
<name>Corey Minyard</name>
<email>cminyard@mvista.com</email>
</author>
<published>2019-02-21T20:21:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=3cd83bac481dc4fde8bedf09c8aecb3652e7e547'/>
<id>3cd83bac481dc4fde8bedf09c8aecb3652e7e547</id>
<content type='text'>
It was being done in two different places now that hard-coded devices
use platform devices, and it's about to be three with hotmod switching
to platform devices.  So put the code in one place.

This required some rework on some interfaces to make the type space
clean.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It was being done in two different places now that hard-coded devices
use platform devices, and it's about to be three with hotmod switching
to platform devices.  So put the code in one place.

This required some rework on some interfaces to make the type space
clean.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipmi_si: Rename addr_type to addr_space to match what it does</title>
<updated>2019-02-22T13:12:41+00:00</updated>
<author>
<name>Corey Minyard</name>
<email>cminyard@mvista.com</email>
</author>
<published>2019-02-21T18:53:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f6296bdc49c4d3794b5a3ef0012fc0889e2f3f94'/>
<id>f6296bdc49c4d3794b5a3ef0012fc0889e2f3f94</id>
<content type='text'>
Make the naming consistent, and make the values an enum.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make the naming consistent, and make the values an enum.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipmi_si: Fix crash when using hard-coded device</title>
<updated>2019-02-22T13:12:41+00:00</updated>
<author>
<name>Corey Minyard</name>
<email>cminyard@mvista.com</email>
</author>
<published>2019-02-21T18:10:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=41b766d661bf94a364960862cfc248a78313dbd3'/>
<id>41b766d661bf94a364960862cfc248a78313dbd3</id>
<content type='text'>
When excuting a command like:
  modprobe ipmi_si ports=0xffc0e3 type=bt
The system would get an oops.

The trouble here is that ipmi_si_hardcode_find_bmc() is called before
ipmi_si_platform_init(), but initialization of the hard-coded device
creates an IPMI platform device, which won't be initialized yet.

The real trouble is that hard-coded devices aren't created with
any device, and the fixup is done later.  So do it right, create the
hard-coded devices as normal platform devices.

This required adding some new resource types to the IPMI platform
code for passing information required by the hard-coded device
and adding some code to remove the hard-coded platform devices
on module removal.

To enforce the "hard-coded devices passed by the user take priority
over firmware devices" rule, some special code was added to check
and see if a hard-coded device already exists.

Reported-by: Yang Yingliang &lt;yangyingliang@huawei.com&gt;
Cc: stable@vger.kernel.org # v4.15+
Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
Tested-by: Yang Yingliang &lt;yangyingliang@huawei.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When excuting a command like:
  modprobe ipmi_si ports=0xffc0e3 type=bt
The system would get an oops.

The trouble here is that ipmi_si_hardcode_find_bmc() is called before
ipmi_si_platform_init(), but initialization of the hard-coded device
creates an IPMI platform device, which won't be initialized yet.

The real trouble is that hard-coded devices aren't created with
any device, and the fixup is done later.  So do it right, create the
hard-coded devices as normal platform devices.

This required adding some new resource types to the IPMI platform
code for passing information required by the hard-coded device
and adding some code to remove the hard-coded platform devices
on module removal.

To enforce the "hard-coded devices passed by the user take priority
over firmware devices" rule, some special code was added to check
and see if a hard-coded device already exists.

Reported-by: Yang Yingliang &lt;yangyingliang@huawei.com&gt;
Cc: stable@vger.kernel.org # v4.15+
Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
Tested-by: Yang Yingliang &lt;yangyingliang@huawei.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipmi: Add or fix SPDX-License-Identifier in all files</title>
<updated>2018-02-27T13:42:51+00:00</updated>
<author>
<name>Corey Minyard</name>
<email>cminyard@mvista.com</email>
</author>
<published>2018-02-20T13:30:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=243ac21035176ac9692c1308a9f3b8f6a4e5d733'/>
<id>243ac21035176ac9692c1308a9f3b8f6a4e5d733</id>
<content type='text'>
And get rid of the license text that is no longer necessary.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
Cc: Kees Cook &lt;keescook@chromium.org&gt;
Cc: Alistair Popple &lt;alistair@popple.id.au&gt;
Cc: Jeremy Kerr &lt;jk@ozlabs.org&gt;
Cc: Joel Stanley &lt;joel@jms.id.au&gt;
Cc: Rocky Craig &lt;rocky.craig@hp.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
And get rid of the license text that is no longer necessary.

Signed-off-by: Corey Minyard &lt;cminyard@mvista.com&gt;
Cc: Kees Cook &lt;keescook@chromium.org&gt;
Cc: Alistair Popple &lt;alistair@popple.id.au&gt;
Cc: Jeremy Kerr &lt;jk@ozlabs.org&gt;
Cc: Joel Stanley &lt;joel@jms.id.au&gt;
Cc: Rocky Craig &lt;rocky.craig@hp.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
