aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/rpmsg/virtio_rpmsg_bus.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/rpmsg/virtio_rpmsg_bus.c b/drivers/rpmsg/virtio_rpmsg_bus.c
index 4a4374cc6a59..495fa0a282d3 100644
--- a/drivers/rpmsg/virtio_rpmsg_bus.c
+++ b/drivers/rpmsg/virtio_rpmsg_bus.c
@@ -33,6 +33,7 @@
33#include <linux/wait.h> 33#include <linux/wait.h>
34#include <linux/rpmsg.h> 34#include <linux/rpmsg.h>
35#include <linux/mutex.h> 35#include <linux/mutex.h>
36#include <linux/of_device.h>
36 37
37/** 38/**
38 * struct virtproc_info - virtual remote processor state 39 * struct virtproc_info - virtual remote processor state
@@ -175,11 +176,12 @@ static int rpmsg_dev_match(struct device *dev, struct device_driver *drv)
175 const struct rpmsg_device_id *ids = rpdrv->id_table; 176 const struct rpmsg_device_id *ids = rpdrv->id_table;
176 unsigned int i; 177 unsigned int i;
177 178
178 for (i = 0; ids[i].name[0]; i++) 179 if (ids)
179 if (rpmsg_id_match(rpdev, &ids[i])) 180 for (i = 0; ids[i].name[0]; i++)
180 return 1; 181 if (rpmsg_id_match(rpdev, &ids[i]))
182 return 1;
181 183
182 return 0; 184 return of_driver_match_device(dev, drv);
183} 185}
184 186
185static int rpmsg_uevent(struct device *dev, struct kobj_uevent_env *env) 187static int rpmsg_uevent(struct device *dev, struct kobj_uevent_env *env)