misc: ft8xx: convert to gpio_dt_spec

Convert SPI usage to `struct gpio_dt_spec`.

Signed-off-by: Kumar Gala <galak@kernel.org>
diff --git a/drivers/misc/ft8xx/ft8xx_drv.c b/drivers/misc/ft8xx/ft8xx_drv.c
index 548d5b1..2aa4ca2 100644
--- a/drivers/misc/ft8xx/ft8xx_drv.c
+++ b/drivers/misc/ft8xx/ft8xx_drv.c
@@ -23,8 +23,7 @@
 					 0);
 
 /* GPIO int line */
-#define IRQ_PIN DT_GPIO_PIN(NODE_ID, irq_gpios)
-static const struct device *int_ft8xx_dev;
+static const struct gpio_dt_spec irq_gpio = GPIO_DT_SPEC_INST_GET(0, irq_gpios);
 
 static struct gpio_callback irq_cb_data;
 
@@ -64,25 +63,23 @@
 	/* TODO: Verify if such entry in DTS is present.
 	 * If not, use polling mode.
 	 */
-	int_ft8xx_dev = device_get_binding(DT_GPIO_LABEL(NODE_ID, irq_gpios));
-	if (!int_ft8xx_dev) {
+	if (!device_is_ready(irq_gpio.port)) {
+		LOG_ERR("GPIO device %s is not ready", irq_gpio.port->name);
 		return -ENODEV;
 	}
 
-	ret = gpio_pin_configure(int_ft8xx_dev, IRQ_PIN,
-			GPIO_INPUT | DT_GPIO_FLAGS(NODE_ID, irq_gpios));
+	ret = gpio_pin_configure_dt(&irq_gpio, GPIO_INPUT);
 	if (ret != 0) {
 		return ret;
 	}
 
-	ret = gpio_pin_interrupt_configure(int_ft8xx_dev, IRQ_PIN,
-			GPIO_INT_EDGE_TO_ACTIVE);
+	ret = gpio_pin_interrupt_configure_dt(&irq_gpio, GPIO_INT_EDGE_TO_ACTIVE);
 	if (ret != 0) {
 		return ret;
 	}
 
-	gpio_init_callback(&irq_cb_data, ft8xx_drv_irq_triggered, BIT(IRQ_PIN));
-	gpio_add_callback(int_ft8xx_dev, &irq_cb_data);
+	gpio_init_callback(&irq_cb_data, ft8xx_drv_irq_triggered, BIT(irq_gpio.pin));
+	gpio_add_callback(irq_gpio.port, &irq_cb_data);
 
 	return 0;
 }