aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2016-09-01 05:44:39 -0400
committerJonathan Cameron <jic23@kernel.org>2016-09-18 06:27:18 -0400
commitab04f734b08a404550ba5f8391307bad2145acff (patch)
tree6b6879bd4c737206317fc649fc5fe5b22c9d200b
parentbf96f6e80cef4b9a234e8ce81aa2e333ca7ce599 (diff)
iio: accel: kxsd9: Do away with the write2 helper
This is just a masquerading register write function, so use the register write function instead. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Tested-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
-rw-r--r--drivers/iio/accel/kxsd9-spi.c10
-rw-r--r--drivers/iio/accel/kxsd9.c4
-rw-r--r--drivers/iio/accel/kxsd9.h2
3 files changed, 2 insertions, 14 deletions
diff --git a/drivers/iio/accel/kxsd9-spi.c b/drivers/iio/accel/kxsd9-spi.c
index ec9d00d5340f..a49c10cd7634 100644
--- a/drivers/iio/accel/kxsd9-spi.c
+++ b/drivers/iio/accel/kxsd9-spi.c
@@ -25,15 +25,6 @@ static int kxsd9_spi_writereg(struct kxsd9_transport *tr, u8 address, u8 val)
25 return spi_write(spi, tr->tx, 2); 25 return spi_write(spi, tr->tx, 2);
26} 26}
27 27
28static int kxsd9_spi_write2(struct kxsd9_transport *tr, u8 b1, u8 b2)
29{
30 struct spi_device *spi = tr->trdev;
31
32 tr->tx[0] = b1;
33 tr->tx[1] = b2;
34 return spi_write(spi, tr->tx, 2);
35}
36
37static int kxsd9_spi_readval(struct kxsd9_transport *tr, u8 address) 28static int kxsd9_spi_readval(struct kxsd9_transport *tr, u8 address)
38{ 29{
39 struct spi_device *spi = tr->trdev; 30 struct spi_device *spi = tr->trdev;
@@ -70,7 +61,6 @@ static int kxsd9_spi_probe(struct spi_device *spi)
70 transport->trdev = spi; 61 transport->trdev = spi;
71 transport->readreg = kxsd9_spi_readreg; 62 transport->readreg = kxsd9_spi_readreg;
72 transport->writereg = kxsd9_spi_writereg; 63 transport->writereg = kxsd9_spi_writereg;
73 transport->write2 = kxsd9_spi_write2;
74 transport->readval = kxsd9_spi_readval; 64 transport->readval = kxsd9_spi_readval;
75 spi->mode = SPI_MODE_0; 65 spi->mode = SPI_MODE_0;
76 spi_setup(spi); 66 spi_setup(spi);
diff --git a/drivers/iio/accel/kxsd9.c b/drivers/iio/accel/kxsd9.c
index e2033374bfef..a787ec236608 100644
--- a/drivers/iio/accel/kxsd9.c
+++ b/drivers/iio/accel/kxsd9.c
@@ -184,10 +184,10 @@ static int kxsd9_power_up(struct kxsd9_state *st)
184{ 184{
185 int ret; 185 int ret;
186 186
187 ret = st->transport->write2(st->transport, 0x0d, 0x40); 187 ret = st->transport->writereg(st->transport, KXSD9_REG_CTRL_B, 0x40);
188 if (ret) 188 if (ret)
189 return ret; 189 return ret;
190 return st->transport->write2(st->transport, 0x0c, 0x9b); 190 return st->transport->writereg(st->transport, KXSD9_REG_CTRL_C, 0x9b);
191}; 191};
192 192
193static const struct iio_info kxsd9_info = { 193static const struct iio_info kxsd9_info = {
diff --git a/drivers/iio/accel/kxsd9.h b/drivers/iio/accel/kxsd9.h
index 28845c3440e9..b6328e88b56f 100644
--- a/drivers/iio/accel/kxsd9.h
+++ b/drivers/iio/accel/kxsd9.h
@@ -11,7 +11,6 @@ struct kxsd9_transport;
11 * @trdev: transport device such as SPI or I2C 11 * @trdev: transport device such as SPI or I2C
12 * @readreg(): function to read a byte from an address in the device 12 * @readreg(): function to read a byte from an address in the device
13 * @writereg(): function to write a byte to an address in the device 13 * @writereg(): function to write a byte to an address in the device
14 * @write2(): function to write two consecutive bytes to the device
15 * @readval(): function to read a 16bit value from the device 14 * @readval(): function to read a 16bit value from the device
16 * @rx: cache aligned read buffer 15 * @rx: cache aligned read buffer
17 * @tx: cache aligned write buffer 16 * @tx: cache aligned write buffer
@@ -20,7 +19,6 @@ struct kxsd9_transport {
20 void *trdev; 19 void *trdev;
21 int (*readreg) (struct kxsd9_transport *tr, u8 address); 20 int (*readreg) (struct kxsd9_transport *tr, u8 address);
22 int (*writereg) (struct kxsd9_transport *tr, u8 address, u8 val); 21 int (*writereg) (struct kxsd9_transport *tr, u8 address, u8 val);
23 int (*write2) (struct kxsd9_transport *tr, u8 b1, u8 b2);
24 int (*readval) (struct kxsd9_transport *tr, u8 address); 22 int (*readval) (struct kxsd9_transport *tr, u8 address);
25 u8 rx[KXSD9_STATE_RX_SIZE] ____cacheline_aligned; 23 u8 rx[KXSD9_STATE_RX_SIZE] ____cacheline_aligned;
26 u8 tx[KXSD9_STATE_TX_SIZE]; 24 u8 tx[KXSD9_STATE_TX_SIZE];