summaryrefslogtreecommitdiffstats
path: root/drivers/staging/tidspbridge/pmgr/dev.c
diff options
context:
space:
mode:
authorIvan Gomez Castellanos2010-08-26 00:09:01 +0200
committerGreg Kroah-Hartman2010-08-31 20:23:16 +0200
commita47d4deebf3ecf6c092a9c510af7ccbaedc1610a (patch)
tree9bd0055e08a1f8b6c267be2b2872f7b3ac618835 /drivers/staging/tidspbridge/pmgr/dev.c
parentstaging: tidspbridge: Remove cfg_get_object() (diff)
downloadkernel-qcow2-linux-a47d4deebf3ecf6c092a9c510af7ccbaedc1610a.tar.gz
kernel-qcow2-linux-a47d4deebf3ecf6c092a9c510af7ccbaedc1610a.tar.xz
kernel-qcow2-linux-a47d4deebf3ecf6c092a9c510af7ccbaedc1610a.zip
staging: tidspbridge: Remove cfg_set_dev_object()
As the services directory is going to be removed, the cfg_set_dev_object function has also to be removed. Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/tidspbridge/pmgr/dev.c')
-rw-r--r--drivers/staging/tidspbridge/pmgr/dev.c28
1 files changed, 16 insertions, 12 deletions
diff --git a/drivers/staging/tidspbridge/pmgr/dev.c b/drivers/staging/tidspbridge/pmgr/dev.c
index 8077bdce7494..b0bcbd92ebea 100644
--- a/drivers/staging/tidspbridge/pmgr/dev.c
+++ b/drivers/staging/tidspbridge/pmgr/dev.c
@@ -898,6 +898,7 @@ int dev_start_device(struct cfg_devnode *dev_node_obj)
char bridge_file_name[CFG_MAXSEARCHPATHLEN] = "UMA";
int status;
struct mgr_object *hmgr_obj = NULL;
+ struct drv_data *drv_datap = dev_get_drvdata(bridge);
DBC_REQUIRE(refs > 0);
@@ -906,24 +907,27 @@ int dev_start_device(struct cfg_devnode *dev_node_obj)
dev_node_obj);
if (!status) {
/* Store away the hdev_obj with the DEVNODE */
- status = cfg_set_dev_object(dev_node_obj, (u32) hdev_obj);
+ if (!drv_datap || !dev_node_obj) {
+ status = -EFAULT;
+ pr_err("%s: Failed, status 0x%x\n", __func__, status);
+ } else if (!(strcmp((char *)dev_node_obj, "TIOMAP1510"))) {
+ drv_datap->dev_object = (void *) hdev_obj;
+ }
+ if (!status) {
+ /* Create the Manager Object */
+ status = mgr_create(&hmgr_obj, dev_node_obj);
+ if (status && !(strcmp((char *)dev_node_obj,
+ "TIOMAP1510"))) {
+ /* Ensure the device extension is NULL */
+ drv_datap->dev_object = NULL;
+ }
+ }
if (status) {
/* Clean up */
dev_destroy_device(hdev_obj);
hdev_obj = NULL;
}
}
- if (!status) {
- /* Create the Manager Object */
- status = mgr_create(&hmgr_obj, dev_node_obj);
- }
- if (status) {
- if (hdev_obj)
- dev_destroy_device(hdev_obj);
-
- /* Ensure the device extension is NULL */
- cfg_set_dev_object(dev_node_obj, 0L);
- }
return status;
}