[PATCH 1/5] usb: dwc3: xilinx: use device_get_match_data() in probe
Radhey Shyam Pandey <[email protected]>
| Newsgroups | org.kernel.vger.linux-usb,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
Use device_get_match_data() to obtain the platform init callback from the OF match table instead of calling of_match_node() and dereferencing match->data directly. Signed-off-by: Radhey Shyam Pandey <[email protected]> --- drivers/usb/dwc3/dwc3-xilinx.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/usb/dwc3/dwc3-xilinx.c b/drivers/usb/dwc3/dwc3-xilinx.c index b832505e1b04..1a8619854d6d 100644 --- a/drivers/usb/dwc3/dwc3-xilinx.c +++ b/drivers/usb/dwc3/dwc3-xilinx.c @@ -12,6 +12,7 @@ #include <linux/clk.h> #include <linux/of.h> #include <linux/platform_device.h> +#include <linux/property.h> #include <linux/dma-mapping.h> #include <linux/gpio/consumer.h> #include <linux/of_platform.h> @@ -279,7 +280,6 @@ static int dwc3_xlnx_probe(struct platform_device *pdev) struct dwc3_xlnx *priv_data; struct device *dev = &pdev->dev; struct device_node *np = dev->of_node; - const struct of_device_id *match; void __iomem *regs; int ret; @@ -291,9 +291,11 @@ static int dwc3_xlnx_probe(struct platform_device *pdev) if (IS_ERR(regs)) return dev_err_probe(dev, PTR_ERR(regs), "failed to map registers\n"); - match = of_match_node(dwc3_xlnx_of_match, pdev->dev.of_node); + priv_data->pltfm_init = device_get_match_data(dev); + if (!priv_data->pltfm_init) + return dev_err_probe(dev, -ENODEV, + "missing platform init handler\n"); - priv_data->pltfm_init = match->data; priv_data->regs = regs; priv_data->dev = dev; -- 2.43.0