Title: [9645] trunk/drivers/staging/iio/dac/ad5624r_spi.c: merge from upstream: staging: iio: dac: Use spi_device_id
Revision
9645
Author
vapier
Date
2011-03-01 15:57:07 -0500 (Tue, 01 Mar 2011)

Log Message

merge from upstream: staging: iio: dac: Use spi_device_id

From: Michael Hennerich <[email protected]>

Signed-off-by: Michael Hennerich <[email protected]>
Acked-by: Jonathan Cameron <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

Modified Paths

Diff

Modified: trunk/drivers/staging/iio/dac/ad5624r_spi.c (9644 => 9645)


--- trunk/drivers/staging/iio/dac/ad5624r_spi.c	2011-03-01 20:57:03 UTC (rev 9644)
+++ trunk/drivers/staging/iio/dac/ad5624r_spi.c	2011-03-01 20:57:07 UTC (rev 9645)
@@ -209,14 +209,9 @@
 
 static int __devinit ad5624r_probe(struct spi_device *spi)
 {
-
 	struct ad5624r_state *st;
 	int ret = 0;
-	char *chip_name = spi->dev.platform_data;
 
-	if (!chip_name)
-		return -ENODEV;
-
 	st = kzalloc(sizeof(*st), GFP_KERNEL);
 	if (st == NULL) {
 		ret = -ENOMEM;
@@ -224,17 +219,7 @@
 	}
 	spi_set_drvdata(spi, st);
 
-	if (strcmp(chip_name, "ad5624r") == 0)
-		st->data_len = 12;
-	else if (strcmp(chip_name, "ad5644r") == 0)
-		st->data_len = 14;
-	else if (strcmp(chip_name, "ad5664r") == 0)
-		st->data_len = 16;
-	else {
-		dev_err(&spi->dev, "not supported chip type\n");
-		ret = -EINVAL;
-		goto error_ret;
-	}
+	st->data_len = spi_get_device_id(spi)->driver_data;
 
 	st->us = spi;
 	st->indio_dev = iio_allocate_device();
@@ -278,6 +263,13 @@
 	return 0;
 }
 
+static const struct spi_device_id ad5624r_id[] = {
+	{"ad5624r", 12},
+	{"ad5644r", 14},
+	{"ad5664r", 16},
+	{}
+};
+
 static struct spi_driver ad5624r_driver = {
 	.driver = {
 		.name = "ad5624r",
@@ -285,6 +277,7 @@
 	},
 	.probe = ad5624r_probe,
 	.remove = __devexit_p(ad5624r_remove),
+	.id_table = ad5624r_id,
 };
 
 static __init int ad5624r_spi_init(void)
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to