powerpc/eeh: Strengthen types of eeh traversal functions
The traversal functions eeh_pe_traverse() and eeh_pe_dev_traverse() both provide their first argument as void * but every single user casts it to the expected type. Change the type of the first parameter from void * to the appropriate type, and clean up all uses. Signed-off-by: Sam Bobroff <sbobroff@linux.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:

committed by
Michael Ellerman

parent
a0bd54641b
commit
d6c4932fbf
@@ -173,7 +173,7 @@ static struct eeh_pe *eeh_pe_next(struct eeh_pe *pe,
|
||||
* to be traversed.
|
||||
*/
|
||||
void *eeh_pe_traverse(struct eeh_pe *root,
|
||||
eeh_traverse_func fn, void *flag)
|
||||
eeh_pe_traverse_func fn, void *flag)
|
||||
{
|
||||
struct eeh_pe *pe;
|
||||
void *ret;
|
||||
@@ -196,7 +196,7 @@ void *eeh_pe_traverse(struct eeh_pe *root,
|
||||
* PE and its child PEs.
|
||||
*/
|
||||
void *eeh_pe_dev_traverse(struct eeh_pe *root,
|
||||
eeh_traverse_func fn, void *flag)
|
||||
eeh_edev_traverse_func fn, void *flag)
|
||||
{
|
||||
struct eeh_pe *pe;
|
||||
struct eeh_dev *edev, *tmp;
|
||||
@@ -235,9 +235,8 @@ struct eeh_pe_get_flag {
|
||||
int config_addr;
|
||||
};
|
||||
|
||||
static void *__eeh_pe_get(void *data, void *flag)
|
||||
static void *__eeh_pe_get(struct eeh_pe *pe, void *flag)
|
||||
{
|
||||
struct eeh_pe *pe = (struct eeh_pe *)data;
|
||||
struct eeh_pe_get_flag *tmp = (struct eeh_pe_get_flag *) flag;
|
||||
|
||||
/* Unexpected PHB PE */
|
||||
@@ -551,9 +550,8 @@ void eeh_pe_update_time_stamp(struct eeh_pe *pe)
|
||||
* PE. Also, the associated PCI devices will be put into IO frozen
|
||||
* state as well.
|
||||
*/
|
||||
static void *__eeh_pe_state_mark(void *data, void *flag)
|
||||
static void *__eeh_pe_state_mark(struct eeh_pe *pe, void *flag)
|
||||
{
|
||||
struct eeh_pe *pe = (struct eeh_pe *)data;
|
||||
int state = *((int *)flag);
|
||||
struct eeh_dev *edev, *tmp;
|
||||
struct pci_dev *pdev;
|
||||
@@ -595,9 +593,8 @@ void eeh_pe_state_mark(struct eeh_pe *pe, int state)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(eeh_pe_state_mark);
|
||||
|
||||
static void *__eeh_pe_dev_mode_mark(void *data, void *flag)
|
||||
static void *__eeh_pe_dev_mode_mark(struct eeh_dev *edev, void *flag)
|
||||
{
|
||||
struct eeh_dev *edev = data;
|
||||
int mode = *((int *)flag);
|
||||
|
||||
edev->mode |= mode;
|
||||
@@ -625,9 +622,8 @@ void eeh_pe_dev_mode_mark(struct eeh_pe *pe, int mode)
|
||||
* given PE. Besides, we also clear the check count of the PE
|
||||
* as well.
|
||||
*/
|
||||
static void *__eeh_pe_state_clear(void *data, void *flag)
|
||||
static void *__eeh_pe_state_clear(struct eeh_pe *pe, void *flag)
|
||||
{
|
||||
struct eeh_pe *pe = (struct eeh_pe *)data;
|
||||
int state = *((int *)flag);
|
||||
struct eeh_dev *edev, *tmp;
|
||||
struct pci_dev *pdev;
|
||||
@@ -858,9 +854,8 @@ static void eeh_restore_device_bars(struct eeh_dev *edev)
|
||||
* the expansion ROM base address, the latency timer, and etc.
|
||||
* from the saved values in the device node.
|
||||
*/
|
||||
static void *eeh_restore_one_device_bars(void *data, void *flag)
|
||||
static void *eeh_restore_one_device_bars(struct eeh_dev *edev, void *flag)
|
||||
{
|
||||
struct eeh_dev *edev = (struct eeh_dev *)data;
|
||||
struct pci_dn *pdn = eeh_dev_to_pdn(edev);
|
||||
|
||||
/* Do special restore for bridges */
|
||||
|
Reference in New Issue
Block a user