Commit b7780dab authored by Corey Minyard's avatar Corey Minyard

ipmi: Add shutdown functions for users and interfaces

Since things that IPMI uses can be hot-swapped, the users and
interfaces really need to be able to handle this.

Add the functions so the users and interfaces can implement
them, the actual function will be added after everything is
ready.
Signed-off-by: default avatarCorey Minyard <cminyard@mvista.com>
parent 6aa2dd00
...@@ -97,6 +97,14 @@ struct ipmi_user_hndl { ...@@ -97,6 +97,14 @@ struct ipmi_user_hndl {
* been set up to handle run to completion. * been set up to handle run to completion.
*/ */
void (*ipmi_panic_handler)(void *handler_data); void (*ipmi_panic_handler)(void *handler_data);
/*
* Called when the interface has been removed. After this returns
* the user handle will be invalid. The interface may or may
* not be usable when this is called, but it will return errors
* if it is not usable.
*/
void (*shutdown)(void *handler_data);
}; };
/* Create a new user of the IPMI layer on the given interface number. */ /* Create a new user of the IPMI layer on the given interface number. */
......
...@@ -72,6 +72,12 @@ struct ipmi_smi_handlers { ...@@ -72,6 +72,12 @@ struct ipmi_smi_handlers {
int (*start_processing)(void *send_info, int (*start_processing)(void *send_info,
ipmi_smi_t new_intf); ipmi_smi_t new_intf);
/*
* When called, the low-level interface should disable all
* processing, it should be complete shut down when it returns.
*/
void (*shutdown)(void *send_info);
/* /*
* Get the detailed private info of the low level interface and store * Get the detailed private info of the low level interface and store
* it into the structure of ipmi_smi_data. For example: the * it into the structure of ipmi_smi_data. For example: the
......
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