summaryrefslogtreecommitdiffstats
path: root/sys/dev/gpio/gpiobus.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/gpio/gpiobus.c')
-rw-r--r--sys/dev/gpio/gpiobus.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/sys/dev/gpio/gpiobus.c b/sys/dev/gpio/gpiobus.c
index efff2c0..9579fe2 100644
--- a/sys/dev/gpio/gpiobus.c
+++ b/sys/dev/gpio/gpiobus.c
@@ -131,6 +131,30 @@ gpiobus_print_pins(struct gpiobus_ivar *devi, char *buf, size_t buflen)
strlcat(buf, tmp, buflen);
}
+device_t
+gpiobus_attach_bus(device_t dev)
+{
+ device_t busdev;
+
+ busdev = device_add_child(dev, "gpiobus", -1);
+ if (busdev == NULL)
+ return (NULL);
+ if (device_add_child(dev, "gpioc", -1) == NULL) {
+ device_delete_child(dev, busdev);
+ return (NULL);
+ }
+ bus_generic_attach(dev);
+
+ return (busdev);
+}
+
+int
+gpiobus_detach_bus(device_t dev)
+{
+
+ return (bus_generic_detach(dev));
+}
+
int
gpiobus_init_softc(device_t dev)
{
OpenPOWER on IntegriCloud