forked from Minki/linux
can: mcp251x: Make use of device property API
Make use of device property API in this driver so that both OF based system and ACPI based system can use this driver. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
This commit is contained in:
parent
b4cb76961c
commit
8de29a5c34
@ -33,8 +33,7 @@
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/netdevice.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_device.h>
|
||||
#include <linux/property.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/spi/spi.h>
|
||||
@ -894,7 +893,7 @@ static int mcp251x_open(struct net_device *net)
|
||||
priv->tx_skb = NULL;
|
||||
priv->tx_len = 0;
|
||||
|
||||
if (!spi->dev.of_node)
|
||||
if (!dev_fwnode(&spi->dev))
|
||||
flags = IRQF_TRIGGER_FALLING;
|
||||
|
||||
ret = request_threaded_irq(spi->irq, NULL, mcp251x_can_ist,
|
||||
@ -986,8 +985,7 @@ MODULE_DEVICE_TABLE(spi, mcp251x_id_table);
|
||||
|
||||
static int mcp251x_can_probe(struct spi_device *spi)
|
||||
{
|
||||
const struct of_device_id *of_id = of_match_device(mcp251x_of_match,
|
||||
&spi->dev);
|
||||
const void *match = device_get_match_data(&spi->dev);
|
||||
struct mcp251x_platform_data *pdata = dev_get_platdata(&spi->dev);
|
||||
struct net_device *net;
|
||||
struct mcp251x_priv *priv;
|
||||
@ -1024,8 +1022,8 @@ static int mcp251x_can_probe(struct spi_device *spi)
|
||||
priv->can.clock.freq = freq / 2;
|
||||
priv->can.ctrlmode_supported = CAN_CTRLMODE_3_SAMPLES |
|
||||
CAN_CTRLMODE_LOOPBACK | CAN_CTRLMODE_LISTENONLY;
|
||||
if (of_id)
|
||||
priv->model = (enum mcp251x_model)of_id->data;
|
||||
if (match)
|
||||
priv->model = (enum mcp251x_model)match;
|
||||
else
|
||||
priv->model = spi_get_device_id(spi)->driver_data;
|
||||
priv->net = net;
|
||||
|
Loading…
Reference in New Issue
Block a user