.. | .. |
---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
---|
1 | 2 | /* |
---|
2 | 3 | * Copyright (C) 2013 Oskar Andero <oskar.andero@gmail.com> |
---|
3 | 4 | * Copyright (C) 2014 Rose Technology |
---|
.. | .. |
---|
26 | 27 | * MCP3553 |
---|
27 | 28 | * |
---|
28 | 29 | * Datasheet can be found here: |
---|
29 | | - * http://ww1.microchip.com/downloads/en/DeviceDoc/21293C.pdf mcp3001 |
---|
30 | | - * http://ww1.microchip.com/downloads/en/DeviceDoc/21294E.pdf mcp3002 |
---|
31 | | - * http://ww1.microchip.com/downloads/en/DeviceDoc/21295d.pdf mcp3004/08 |
---|
| 30 | + * https://ww1.microchip.com/downloads/en/DeviceDoc/21293C.pdf mcp3001 |
---|
| 31 | + * https://ww1.microchip.com/downloads/en/DeviceDoc/21294E.pdf mcp3002 |
---|
| 32 | + * https://ww1.microchip.com/downloads/en/DeviceDoc/21295d.pdf mcp3004/08 |
---|
32 | 33 | * http://ww1.microchip.com/downloads/en/DeviceDoc/21290D.pdf mcp3201 |
---|
33 | 34 | * http://ww1.microchip.com/downloads/en/DeviceDoc/21034D.pdf mcp3202 |
---|
34 | 35 | * http://ww1.microchip.com/downloads/en/DeviceDoc/21298c.pdf mcp3204/08 |
---|
35 | | - * http://ww1.microchip.com/downloads/en/DeviceDoc/21700E.pdf mcp3301 |
---|
| 36 | + * https://ww1.microchip.com/downloads/en/DeviceDoc/21700E.pdf mcp3301 |
---|
36 | 37 | * http://ww1.microchip.com/downloads/en/DeviceDoc/21950D.pdf mcp3550/1/3 |
---|
37 | | - * |
---|
38 | | - * This program is free software; you can redistribute it and/or modify |
---|
39 | | - * it under the terms of the GNU General Public License version 2 as |
---|
40 | | - * published by the Free Software Foundation. |
---|
41 | 38 | */ |
---|
42 | 39 | |
---|
43 | 40 | #include <linux/err.h> |
---|
44 | 41 | #include <linux/delay.h> |
---|
45 | 42 | #include <linux/spi/spi.h> |
---|
46 | 43 | #include <linux/module.h> |
---|
| 44 | +#include <linux/mod_devicetable.h> |
---|
47 | 45 | #include <linux/iio/iio.h> |
---|
48 | 46 | #include <linux/regulator/consumer.h> |
---|
49 | 47 | |
---|
.. | .. |
---|
167 | 165 | case mcp3550_60: |
---|
168 | 166 | case mcp3551: |
---|
169 | 167 | case mcp3553: { |
---|
170 | | - u32 raw = be32_to_cpup((u32 *)adc->rx_buf); |
---|
| 168 | + u32 raw = be32_to_cpup((__be32 *)adc->rx_buf); |
---|
171 | 169 | |
---|
172 | 170 | if (!(adc->spi->mode & SPI_CPOL)) |
---|
173 | 171 | raw <<= 1; /* strip Data Ready bit in SPI mode 0,0 */ |
---|
.. | .. |
---|
387 | 385 | adc = iio_priv(indio_dev); |
---|
388 | 386 | adc->spi = spi; |
---|
389 | 387 | |
---|
390 | | - indio_dev->dev.parent = &spi->dev; |
---|
391 | | - indio_dev->dev.of_node = spi->dev.of_node; |
---|
392 | 388 | indio_dev->name = spi_get_device_id(spi)->name; |
---|
393 | 389 | indio_dev->modes = INDIO_DIRECT_MODE; |
---|
394 | 390 | indio_dev->info = &mcp320x_info; |
---|
.. | .. |
---|
424 | 420 | adc->transfer[1].len++; |
---|
425 | 421 | |
---|
426 | 422 | /* conversions are started by asserting CS pin for 8 usec */ |
---|
427 | | - adc->start_conv_transfer.delay_usecs = 8; |
---|
| 423 | + adc->start_conv_transfer.delay.value = 8; |
---|
| 424 | + adc->start_conv_transfer.delay.unit = SPI_DELAY_UNIT_USECS; |
---|
428 | 425 | spi_message_init_with_transfers(&adc->start_conv_msg, |
---|
429 | 426 | &adc->start_conv_transfer, 1); |
---|
430 | 427 | |
---|
.. | .. |
---|
473 | 470 | return 0; |
---|
474 | 471 | } |
---|
475 | 472 | |
---|
476 | | -#if defined(CONFIG_OF) |
---|
477 | 473 | static const struct of_device_id mcp320x_dt_ids[] = { |
---|
478 | 474 | /* NOTE: The use of compatibles with no vendor prefix is deprecated. */ |
---|
479 | 475 | { .compatible = "mcp3001" }, |
---|
.. | .. |
---|
501 | 497 | { } |
---|
502 | 498 | }; |
---|
503 | 499 | MODULE_DEVICE_TABLE(of, mcp320x_dt_ids); |
---|
504 | | -#endif |
---|
505 | 500 | |
---|
506 | 501 | static const struct spi_device_id mcp320x_id[] = { |
---|
507 | 502 | { "mcp3001", mcp3001 }, |
---|
.. | .. |
---|
524 | 519 | static struct spi_driver mcp320x_driver = { |
---|
525 | 520 | .driver = { |
---|
526 | 521 | .name = "mcp320x", |
---|
527 | | - .of_match_table = of_match_ptr(mcp320x_dt_ids), |
---|
| 522 | + .of_match_table = mcp320x_dt_ids, |
---|
528 | 523 | }, |
---|
529 | 524 | .probe = mcp320x_probe, |
---|
530 | 525 | .remove = mcp320x_remove, |
---|