From 221bdc7aba07642f9e7d83dee309eb4da3012781 Mon Sep 17 00:00:00 2001 From: David Brownell Date: Tue, 17 Jul 2007 04:04:03 -0700 Subject: [PATCH] --- yaml --- r: 60783 b: refs/heads/master c: c06e677aed0c86480b01faa894967daa8aa3568a h: refs/heads/master i: 60781: d165e7d43a9db979682b1780d3ee5dedd7a85b24 60779: e696b80008a84e28bde0c6a9cc4e2866061846c0 60775: 556d1aa81a65306248c5a98230cacbcd07d801b5 60767: 36ab7479d02ae9dad4e124606a28f81d620eec1f v: v3 --- [refs] | 2 +- trunk/drivers/hwmon/lm70.c | 4 ++++ trunk/include/linux/spi/spi.h | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 69d711997fdc..638b7e3fd808 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: dccd573bb02aa011a4a7146c02c409ac0bd722a0 +refs/heads/master: c06e677aed0c86480b01faa894967daa8aa3568a diff --git a/trunk/drivers/hwmon/lm70.c b/trunk/drivers/hwmon/lm70.c index 7eaae3834e15..275d392eca61 100644 --- a/trunk/drivers/hwmon/lm70.c +++ b/trunk/drivers/hwmon/lm70.c @@ -96,6 +96,10 @@ static int __devinit lm70_probe(struct spi_device *spi) struct lm70 *p_lm70; int status; + /* signaling is SPI_MODE_0 on a 3-wire link (shared SI/SO) */ + if ((spi->mode & (SPI_CPOL|SPI_CPHA)) || !(spi->mode & SPI_3WIRE)) + return -EINVAL; + p_lm70 = kzalloc(sizeof *p_lm70, GFP_KERNEL); if (!p_lm70) return -ENOMEM; diff --git a/trunk/include/linux/spi/spi.h b/trunk/include/linux/spi/spi.h index 1be5ea059477..302b81d1d117 100644 --- a/trunk/include/linux/spi/spi.h +++ b/trunk/include/linux/spi/spi.h @@ -76,6 +76,7 @@ struct spi_device { #define SPI_MODE_3 (SPI_CPOL|SPI_CPHA) #define SPI_CS_HIGH 0x04 /* chipselect active high? */ #define SPI_LSB_FIRST 0x08 /* per-word bits-on-wire */ +#define SPI_3WIRE 0x10 /* SI/SO signals shared */ u8 bits_per_word; int irq; void *controller_state;