diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2009-08-29 11:04:57 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2009-08-29 11:04:57 +0000 |
commit | d10a32e4d5fdc4688e899f054f240db7d3f62777 (patch) | |
tree | aa8bbe9c005ea84d431a73829f0a6ec1e06d9169 | |
parent | 78809f8015952e2e70a3971f49cd20252226ea67 (diff) |
submatch functions used with config_found_sm() are required to invoke the
driver's ca_match function. (only offender in the whole tree)
ok deraadt@
-rw-r--r-- | sys/dev/gpio/gpio.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/dev/gpio/gpio.c b/sys/dev/gpio/gpio.c index 30ad168f3ad..cb5374e18e5 100644 --- a/sys/dev/gpio/gpio.c +++ b/sys/dev/gpio/gpio.c @@ -1,4 +1,4 @@ -/* $OpenBSD: gpio.c,v 1.10 2008/11/26 15:04:42 mbalmer Exp $ */ +/* $OpenBSD: gpio.c,v 1.11 2009/08/29 11:04:56 miod Exp $ */ /* * Copyright (c) 2008 Marc Balmer <mbalmer@openbsd.org> @@ -80,7 +80,10 @@ gpio_submatch(struct device *parent, void *match, void *aux) struct cfdata *cf = match; struct gpio_attach_args *ga = aux; - return (strcmp(ga->ga_dvname, cf->cf_driver->cd_name) == 0); + if (strcmp(ga->ga_dvname, cf->cf_driver->cd_name) != 0) + return (0); + + return ((*cf->cf_attach->ca_match)(parent, match, aux)); } void |