[PATCH 02/14] ALSA: portman2x4: return proper error values from attach

From: Sudip Mukherjee
Date: Wed Apr 08 2015 - 07:21:23 EST


now that we are monitoring the return value from attach, make the
required changes to return proper value from its attach function.

Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
---
sound/drivers/portman2x4.c | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/sound/drivers/portman2x4.c b/sound/drivers/portman2x4.c
index 464385a..866adbb 100644
--- a/sound/drivers/portman2x4.c
+++ b/sound/drivers/portman2x4.c
@@ -672,32 +672,37 @@ static int snd_portman_probe_port(struct parport *p)
return res ? -EIO : 0;
}

-static void snd_portman_attach(struct parport *p)
+static int snd_portman_attach(struct parport *p)
{
struct platform_device *device;
+ int ret;

device = platform_device_alloc(PLATFORM_DRIVER, device_count);
if (!device)
- return;
+ return -ENOMEM;

/* Temporary assignment to forward the parport */
platform_set_drvdata(device, p);

- if (platform_device_add(device) < 0) {
+ ret = platform_device_add(device);
+
+ if (ret < 0) {
platform_device_put(device);
- return;
+ return ret;
}

/* Since we dont get the return value of probe
* We need to check if device probing succeeded or not */
if (!platform_get_drvdata(device)) {
platform_device_unregister(device);
- return;
+ return -ENODEV;
}

/* register device in global table */
platform_devices[device_count] = device;
device_count++;
+
+ return 0;
}

static void snd_portman_detach(struct parport *p)
--
1.8.1.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/