staging: fsl-mc: Removed reordering of MC objects during bus scan

MC objects discovered during an MC bus scan were being reordered
to ensure that all allocatable objects are probed before all
non-allocatable objects. However, this is not necessary, as
drivers of non-allocatable objects, that allocate allocatable
objects in their probe function, can return -EPROBE_DEFER
if such allocations fail.

Signed-off-by: J. German Rivera <German.Rivera@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
J. German Rivera 2015-03-27 16:01:05 -05:00 committed by Greg Kroah-Hartman
parent f83e775d6e
commit 0b52877594
1 changed files with 0 additions and 32 deletions

View File

@ -205,36 +205,6 @@ static void dprc_cleanup_all_resource_pools(struct fsl_mc_device *mc_bus_dev)
dprc_cleanup_resource_pool(mc_bus_dev, pool_type);
}
static void reorder_obj_desc_array(struct dprc_obj_desc *obj_desc_array,
int num_devs)
{
struct dprc_obj_desc tmp;
struct dprc_obj_desc *top_cursor = &obj_desc_array[0];
struct dprc_obj_desc *bottom_cursor = &obj_desc_array[num_devs - 1];
/*
* Reorder entries in obj_desc_array so that all allocatable devices
* are placed before all non-allocatable devices:
*
* Loop Invariant: everything before top_cursor is allocatable and
* everything after bottom_cursor is non-allocatable.
*/
while (top_cursor < bottom_cursor) {
if (FSL_MC_IS_ALLOCATABLE(top_cursor->type)) {
top_cursor++;
} else {
if (FSL_MC_IS_ALLOCATABLE(bottom_cursor->type)) {
tmp = *bottom_cursor;
*bottom_cursor = *top_cursor;
*top_cursor = tmp;
top_cursor++;
}
bottom_cursor--;
}
}
}
/**
* dprc_scan_objects - Discover objects in a DPRC
*
@ -313,8 +283,6 @@ int dprc_scan_objects(struct fsl_mc_device *mc_bus_dev)
"%d out of %d devices could not be retrieved\n",
dprc_get_obj_failures, num_child_objects);
}
reorder_obj_desc_array(child_obj_desc_array, num_child_objects);
}
dprc_remove_devices(mc_bus_dev, child_obj_desc_array,