diff --git a/drivers/gpio/gpiolib-shared.c b/drivers/gpio/gpiolib-shared.c index 6acfec73b734..8c9ac9d93304 100644 --- a/drivers/gpio/gpiolib-shared.c +++ b/drivers/gpio/gpiolib-shared.c @@ -449,9 +449,14 @@ static bool gpio_shared_dev_is_reset_gpio(struct device *consumer, int gpio_shared_add_proxy_lookup(struct device *consumer, struct fwnode_handle *fwnode, const char *con_id, unsigned long lflags) { - const char *dev_id = dev_name(consumer); struct gpio_shared_entry *entry; struct gpio_shared_ref *ref; + const char *dev_id; + + if (!consumer) + return -EOPNOTSUPP; + + dev_id = dev_name(consumer); list_for_each_entry(entry, &gpio_shared_list, list) { list_for_each_entry(ref, &entry->refs, list) {