diff --git a/drivers/ioexpander/gpio.c b/drivers/ioexpander/gpio.c index 2d5ffa9b35f..d7f1e966fa9 100644 --- a/drivers/ioexpander/gpio.c +++ b/drivers/ioexpander/gpio.c @@ -183,7 +183,7 @@ static int gpio_ioctl(FAR struct file *filep, int cmd, unsigned long arg) */ case GPIO_WRITE: - if (dev->output) + if (dev->gp_output) { FAR struct gpio_output_dev_s *outdev = (FAR struct gpio_output_dev_s *)dev; @@ -204,7 +204,7 @@ static int gpio_ioctl(FAR struct file *filep, int cmd, unsigned long arg) */ case GPIO_READ: - if (dev->output) + if (dev->gp_output) { FAR struct gpio_output_dev_s *outdev = (FAR struct gpio_output_dev_s *)dev; @@ -242,7 +242,7 @@ int gpio_input_register(FAR struct gpio_input_dev_s *dev, int minor) { char devname[16]; - DEBUGASSERT((unsigned int)minor < 100); + DEBUGASSERT(dev != NULL && !dev->output && (unsigned int)minor < 100); snprintf(devname, 16, "/dev/gpin%u", (unsigned int)minor); return register_driver(devname, &g_gpio_input_ops, 0444, dev); @@ -260,7 +260,7 @@ int gpio_output_register(FAR struct gpio_output_dev_s *dev, int minor) { char devname[16]; - DEBUGASSERT((unsigned int)minor < 100); + DEBUGASSERT(dev != NULL && dev->output && (unsigned int)minor < 100); snprintf(devname, 16, "/dev/gpout%u", (unsigned int)minor); return register_driver(devname, &g_gpio_output_ops, 0222, dev); diff --git a/include/nuttx/ioexpander/gpio.h b/include/nuttx/ioexpander/gpio.h index 5d6e7917467..1e5ae50cc73 100644 --- a/include/nuttx/ioexpander/gpio.h +++ b/include/nuttx/ioexpander/gpio.h @@ -70,16 +70,16 @@ struct gpio_common_dev_s { - bool output; - uint8_t unused[3]; + bool gp_output; + uint8_t gp_unused[3]; }; /* The interface to a GPIO input pin */ struct gpio_input_dev_s { - bool output; - uint8_t unused[3]; + bool gpin_output; + uint8_t gpin_unused[3]; CODE int (*gpin_read)(FAR struct gpio_input_dev_s *dev); }; @@ -87,8 +87,8 @@ struct gpio_input_dev_s struct gpio_output_dev_s { - bool output; - uint8_t unused[3]; + bool gpout_output; + uint8_t gpout_unused[3]; CODE int (*gpout_read)(FAR struct gpio_output_dev_s *dev); CODE int (*gpout_write)(FAR struct gpio_output_dev_s *dev, int value); };