char: xillybus: remove direct dependency on DT functions

Drivers generally should not need to depend directly on OF_ADDRESS or
OF_IRQ. Convert xillybus to use the preferred platform_get_resource() and
platform_get_irq() functions to remove this dependency.

Cc: Eli Billauer <eli.billauer@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Rob Herring 2018-01-04 16:45:39 -06:00 committed by Greg Kroah-Hartman
parent e940c10875
commit 74d83a5d74
2 changed files with 6 additions and 10 deletions

View File

@ -4,7 +4,7 @@
config XILLYBUS config XILLYBUS
tristate "Xillybus generic FPGA interface" tristate "Xillybus generic FPGA interface"
depends on PCI || (OF_ADDRESS && OF_IRQ) depends on PCI || OF
select CRC32 select CRC32
help help
Xillybus is a generic interface for peripherals designed on Xillybus is a generic interface for peripherals designed on
@ -24,7 +24,7 @@ config XILLYBUS_PCIE
config XILLYBUS_OF config XILLYBUS_OF
tristate "Xillybus over Device Tree" tristate "Xillybus over Device Tree"
depends on OF_ADDRESS && OF_IRQ && HAS_DMA depends on OF && HAS_DMA
help help
Set to M if you want Xillybus to find its resources from the Set to M if you want Xillybus to find its resources from the
Open Firmware Flattened Device Tree. If the target is an embedded Open Firmware Flattened Device Tree. If the target is an embedded

View File

@ -15,10 +15,6 @@
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/of.h> #include <linux/of.h>
#include <linux/of_irq.h>
#include <linux/of_address.h>
#include <linux/of_device.h>
#include <linux/of_platform.h>
#include <linux/err.h> #include <linux/err.h>
#include "xillybus.h" #include "xillybus.h"
@ -123,7 +119,7 @@ static int xilly_drv_probe(struct platform_device *op)
struct xilly_endpoint *endpoint; struct xilly_endpoint *endpoint;
int rc; int rc;
int irq; int irq;
struct resource res; struct resource *res;
struct xilly_endpoint_hardware *ephw = &of_hw; struct xilly_endpoint_hardware *ephw = &of_hw;
if (of_property_read_bool(dev->of_node, "dma-coherent")) if (of_property_read_bool(dev->of_node, "dma-coherent"))
@ -136,13 +132,13 @@ static int xilly_drv_probe(struct platform_device *op)
dev_set_drvdata(dev, endpoint); dev_set_drvdata(dev, endpoint);
rc = of_address_to_resource(dev->of_node, 0, &res); res = platform_get_resource(op, IORESOURCE_MEM, 0);
endpoint->registers = devm_ioremap_resource(dev, &res); endpoint->registers = devm_ioremap_resource(dev, res);
if (IS_ERR(endpoint->registers)) if (IS_ERR(endpoint->registers))
return PTR_ERR(endpoint->registers); return PTR_ERR(endpoint->registers);
irq = irq_of_parse_and_map(dev->of_node, 0); irq = platform_get_irq(op, 0);
rc = devm_request_irq(dev, irq, xillybus_isr, 0, xillyname, endpoint); rc = devm_request_irq(dev, irq, xillybus_isr, 0, xillyname, endpoint);