Commit 14485de4 authored by Rob Herring's avatar Rob Herring Committed by Greg Kroah-Hartman
Browse files

usb: Use device_get_match_data()



Use preferred device_get_match_data() instead of of_match_device() to
get the driver match data. With this, adjust the includes to explicitly
include the correct headers.

Signed-off-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20231009211356.3242037-16-robh@kernel.org


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent c19473d2
Loading
Loading
Loading
Loading
+5 −6
Original line number Diff line number Diff line
@@ -9,9 +9,9 @@
#include <linux/dma-mapping.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_platform.h>
#include <linux/phy/phy.h>
#include <linux/platform_device.h>
#include <linux/property.h>
#include <linux/usb/chipidea.h>
#include <linux/usb/hcd.h>
#include <linux/usb/ulpi.h>
@@ -51,8 +51,8 @@ static int ci_hdrc_usb2_probe(struct platform_device *pdev)
	struct device *dev = &pdev->dev;
	struct ci_hdrc_usb2_priv *priv;
	struct ci_hdrc_platform_data *ci_pdata = dev_get_platdata(dev);
	const struct ci_hdrc_platform_data *data;
	int ret;
	const struct of_device_id *match;

	if (!ci_pdata) {
		ci_pdata = devm_kmalloc(dev, sizeof(*ci_pdata), GFP_KERNEL);
@@ -61,11 +61,10 @@ static int ci_hdrc_usb2_probe(struct platform_device *pdev)
		*ci_pdata = ci_default_pdata;	/* struct copy */
	}

	match = of_match_device(ci_hdrc_usb2_of_match, &pdev->dev);
	if (match && match->data) {
	data = device_get_match_data(&pdev->dev);
	if (data)
		/* struct copy */
		*ci_pdata = *(struct ci_hdrc_platform_data *)match->data;
	}
		*ci_pdata = *data;

	priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
	if (!priv)
+6 −15
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@

#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/of_device.h>
#include <linux/of.h>
#include <linux/usb/of.h>
#include <linux/pci_ids.h>
#include <linux/pci.h>
@@ -968,26 +968,17 @@ typedef void (*set_params_cb)(struct dwc2_hsotg *data);

int dwc2_init_params(struct dwc2_hsotg *hsotg)
{
	const struct of_device_id *match;
	set_params_cb set_params;

	dwc2_set_default_params(hsotg);
	dwc2_get_device_properties(hsotg);

	match = of_match_device(dwc2_of_match_table, hsotg->dev);
	if (match && match->data) {
		set_params = match->data;
	set_params = device_get_match_data(hsotg->dev);
	if (set_params) {
		set_params(hsotg);
	} else if (!match) {
		const struct acpi_device_id *amatch;
		const struct pci_device_id *pmatch = NULL;

		amatch = acpi_match_device(dwc2_acpi_match, hsotg->dev);
		if (amatch && amatch->driver_data) {
			set_params = (set_params_cb)amatch->driver_data;
			set_params(hsotg);
		} else if (!amatch)
			pmatch = pci_match_id(dwc2_pci_ids, to_pci_dev(hsotg->dev->parent));
	} else {
		const struct pci_device_id *pmatch =
			pci_match_id(dwc2_pci_ids, to_pci_dev(hsotg->dev->parent));

		if (pmatch && pmatch->driver_data) {
			set_params = (set_params_cb)pmatch->driver_data;
+3 −7
Original line number Diff line number Diff line
@@ -27,9 +27,10 @@
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/moduleparam.h>
#include <linux/of.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/of_platform.h>
#include <linux/platform_device.h>
#include <linux/dma-mapping.h>
#include <linux/usb/ch9.h>
#include <linux/usb/gadget.h>
@@ -2471,17 +2472,12 @@ static const struct of_device_id qe_udc_match[];
static int qe_udc_probe(struct platform_device *ofdev)
{
	struct qe_udc *udc;
	const struct of_device_id *match;
	struct device_node *np = ofdev->dev.of_node;
	struct qe_ep *ep;
	unsigned int ret = 0;
	unsigned int i;
	const void *prop;

	match = of_match_device(qe_udc_match, &ofdev->dev);
	if (!match)
		return -EINVAL;

	prop = of_get_property(np, "mode", NULL);
	if (!prop || strcmp(prop, "peripheral"))
		return -ENODEV;
@@ -2493,7 +2489,7 @@ static int qe_udc_probe(struct platform_device *ofdev)
		return -ENOMEM;
	}

	udc->soc_type = (unsigned long)match->data;
	udc->soc_type = (unsigned long)device_get_match_data(&ofdev->dev);
	udc->usb_regs = of_iomap(np, 0);
	if (!udc->usb_regs) {
		ret = -ENOMEM;
+1 −6
Original line number Diff line number Diff line
@@ -240,7 +240,6 @@ static void onboard_hub_attach_usb_driver(struct work_struct *work)

static int onboard_hub_probe(struct platform_device *pdev)
{
	const struct of_device_id *of_id;
	struct device *dev = &pdev->dev;
	struct onboard_hub *hub;
	unsigned int i;
@@ -250,11 +249,7 @@ static int onboard_hub_probe(struct platform_device *pdev)
	if (!hub)
		return -ENOMEM;

	of_id = of_match_device(onboard_hub_match, &pdev->dev);
	if (!of_id)
		return -ENODEV;

	hub->pdata = of_id->data;
	hub->pdata = device_get_match_data(&pdev->dev);
	if (!hub->pdata)
		return -EINVAL;