static void uniphier_gpio_irq_mask(struct irq_data *data)
 {
        struct uniphier_gpio_priv *priv = data->chip_data;
-       u32 mask = BIT(data->hwirq);
+       u32 mask = BIT(irqd_to_hwirq(data));
 
        uniphier_gpio_reg_update(priv, UNIPHIER_GPIO_IRQ_EN, mask, 0);
 
 static void uniphier_gpio_irq_unmask(struct irq_data *data)
 {
        struct uniphier_gpio_priv *priv = data->chip_data;
-       u32 mask = BIT(data->hwirq);
+       u32 mask = BIT(irqd_to_hwirq(data));
 
        uniphier_gpio_reg_update(priv, UNIPHIER_GPIO_IRQ_EN, mask, mask);
 
 static int uniphier_gpio_irq_set_type(struct irq_data *data, unsigned int type)
 {
        struct uniphier_gpio_priv *priv = data->chip_data;
-       u32 mask = BIT(data->hwirq);
+       u32 mask = BIT(irqd_to_hwirq(data));
        u32 val = 0;
 
        if (type == IRQ_TYPE_EDGE_BOTH) {
        struct uniphier_gpio_priv *priv = domain->host_data;
        struct gpio_chip *chip = &priv->chip;
 
-       return gpiochip_lock_as_irq(chip, data->hwirq + UNIPHIER_GPIO_IRQ_OFFSET);
+       return gpiochip_lock_as_irq(chip,
+                       irqd_to_hwirq(data) + UNIPHIER_GPIO_IRQ_OFFSET);
 }
 
 static void uniphier_gpio_irq_domain_deactivate(struct irq_domain *domain,
        struct uniphier_gpio_priv *priv = domain->host_data;
        struct gpio_chip *chip = &priv->chip;
 
-       gpiochip_unlock_as_irq(chip, data->hwirq + UNIPHIER_GPIO_IRQ_OFFSET);
+       gpiochip_unlock_as_irq(chip,
+                       irqd_to_hwirq(data) + UNIPHIER_GPIO_IRQ_OFFSET);
 }
 
 static const struct irq_domain_ops uniphier_gpio_irq_domain_ops = {