char: xillybus: remove direct dependency on DT functions
Subsystems (2)
PATCH 1/1 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 <[email protected]>
Cc Greg Kroah-Hartman <[email protected]>
Signed-off-by Rob Herring <[email protected]>
--- drivers/char/xillybus/Kconfig | 4 ++-- drivers/char/xillybus/xillybus_of.c | 12 ++++-------- 2 files changed, 6 insertions(+), 10 deletions(-)
drivers/char/xillybus/Kconfig +2 -2
@@ -4,7 +4,7 @@ config XILLYBUS tristate "Xillybus generic FPGA interface" - depends on PCI || (OF_ADDRESS && OF_IRQ) + depends on PCI || OF select CRC32 help Xillybus is a generic interface for peripherals designed on
@@ -24,7 +24,7 @@ config XILLYBUS_PCIE config XILLYBUS_OF tristate "Xillybus over Device Tree" - depends on OF_ADDRESS && OF_IRQ && HAS_DMA + depends on OF && HAS_DMA help Set to M if you want Xillybus to find its resources from the Open Firmware Flattened Device Tree. If the target is an embedded
drivers/char/xillybus/xillybus_of.c +4 -8
@@ -15,10 +15,6 @@#include <linux/slab.h> #include <linux/platform_device.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 "xillybus.h"
@@ -123,7 +119,7 @@ static int xilly_drv_probe(struct platform_device *op)struct xilly_endpoint *endpoint;int rc;int irq; -struct resource res; +struct resource *res;struct xilly_endpoint_hardware *ephw = &of_hw;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); - rc =of_address_to_resource (dev->of_node,0 , &res); - endpoint->registers =devm_ioremap_resource (dev, &res); + res =platform_get_resource (op,IORESOURCE_MEM ,0 ); + endpoint->registers =devm_ioremap_resource (dev, res);if (IS_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);
--
2.14.1
Eli Billauer
maintainerHello Rob,
I've had issues with my Gmail account recently, so I saw the patch only today. I was on my way to Ack it, when I got the mail announcing it has been applied.
So thanks, and sorry for not responding earlier.
Regards,
Eli
Quoted 79 lines · Rob Herring
Drivers generally should not need to depend directly on
OF_ADDRESSorOF_IRQ. Convert xillybus to use the preferredplatform_get_resource()andplatform_get_irq()functions to remove this dependency.Cc Eli Billauer<[email protected]>Cc Greg Kroah-Hartman<[email protected]>Signed-off-by Rob Herring<[email protected]>--- drivers/char/xillybus/Kconfig | 4 ++-- drivers/char/xillybus/xillybus_of.c | 12 ++++-------- 2 files changed, 6 insertions(+), 10 deletions(-)drivers/char/xillybus/Kconfig +2
-2@@ -4,7 +4,7 @@ config XILLYBUS tristate "Xillybus generic FPGA interface" - depends on PCI || (OF_ADDRESS&& OF_IRQ) + depends on PCI || OF select CRC32 help Xillybus is a generic interface for peripherals designed on@@ -24,7 +24,7 @@ config XILLYBUS_PCIE config XILLYBUS_OF tristate "Xillybus over Device Tree" - depends on OF_ADDRESS&& OF_IRQ&& HAS_DMA + depends on OF&& HAS_DMA help Set to M if you want Xillybus to find its resources from the Open Firmware Flattened Device Tree. If the target is an embeddeddrivers/char/xillybus/xillybus_of.c +4
-9@@ -15,10 +15,6 @@#include <linux/slab.h> #include <linux/platform_device.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 "xillybus.h" @@ -123,7 +119,7 @@ static int xilly_drv_probe(struct platform_device *op)struct xilly_endpoint *endpoint;int rc;int irq; -struct resource res; +struct resource *res;struct xilly_endpoint_hardware *ephw =&of_hw;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); - rc =of_address_to_resource (dev->of_node,0 ,&res); - endpoint->registers =devm_ioremap_resource (dev,&res); + res =platform_get_resource (op,IORESOURCE_MEM ,0 ); + endpoint->registers =devm_ioremap_resource (dev, res);if (IS_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); --2.14.1