|
@@ -107,7 +107,7 @@ static int coresight_find_link_inport(struct coresight_device *csdev,
|
|
dev_err(&csdev->dev, "couldn't find inport, parent: %s, child: %s\n",
|
|
dev_err(&csdev->dev, "couldn't find inport, parent: %s, child: %s\n",
|
|
dev_name(&parent->dev), dev_name(&csdev->dev));
|
|
dev_name(&parent->dev), dev_name(&csdev->dev));
|
|
|
|
|
|
- return 0;
|
|
|
|
|
|
+ return -ENODEV;
|
|
}
|
|
}
|
|
|
|
|
|
static int coresight_find_link_outport(struct coresight_device *csdev,
|
|
static int coresight_find_link_outport(struct coresight_device *csdev,
|
|
@@ -125,7 +125,7 @@ static int coresight_find_link_outport(struct coresight_device *csdev,
|
|
dev_err(&csdev->dev, "couldn't find outport, parent: %s, child: %s\n",
|
|
dev_err(&csdev->dev, "couldn't find outport, parent: %s, child: %s\n",
|
|
dev_name(&csdev->dev), dev_name(&child->dev));
|
|
dev_name(&csdev->dev), dev_name(&child->dev));
|
|
|
|
|
|
- return 0;
|
|
|
|
|
|
+ return -ENODEV;
|
|
}
|
|
}
|
|
|
|
|
|
static int coresight_enable_sink(struct coresight_device *csdev, u32 mode)
|
|
static int coresight_enable_sink(struct coresight_device *csdev, u32 mode)
|
|
@@ -178,6 +178,9 @@ static int coresight_enable_link(struct coresight_device *csdev,
|
|
else
|
|
else
|
|
refport = 0;
|
|
refport = 0;
|
|
|
|
|
|
|
|
+ if (refport < 0)
|
|
|
|
+ return refport;
|
|
|
|
+
|
|
if (atomic_inc_return(&csdev->refcnt[refport]) == 1) {
|
|
if (atomic_inc_return(&csdev->refcnt[refport]) == 1) {
|
|
if (link_ops(csdev)->enable) {
|
|
if (link_ops(csdev)->enable) {
|
|
ret = link_ops(csdev)->enable(csdev, inport, outport);
|
|
ret = link_ops(csdev)->enable(csdev, inport, outport);
|