Lines Matching refs:data
1220 static void pistachio_gpio_irq_ack(struct irq_data *data)
1222 struct pistachio_gpio_bank *bank = irqd_to_bank(data);
1224 gpio_mask_writel(bank, GPIO_INTERRUPT_STATUS, data->hwirq, 0);
1227 static void pistachio_gpio_irq_mask(struct irq_data *data)
1229 struct pistachio_gpio_bank *bank = irqd_to_bank(data);
1231 gpio_mask_writel(bank, GPIO_INTERRUPT_EN, data->hwirq, 0);
1232 gpiochip_disable_irq(&bank->gpio_chip, irqd_to_hwirq(data));
1235 static void pistachio_gpio_irq_unmask(struct irq_data *data)
1237 struct pistachio_gpio_bank *bank = irqd_to_bank(data);
1239 gpiochip_enable_irq(&bank->gpio_chip, irqd_to_hwirq(data));
1240 gpio_mask_writel(bank, GPIO_INTERRUPT_EN, data->hwirq, 1);
1243 static unsigned int pistachio_gpio_irq_startup(struct irq_data *data)
1245 struct gpio_chip *chip = irq_data_get_irq_chip_data(data);
1247 pistachio_gpio_direction_input(chip, data->hwirq);
1248 pistachio_gpio_irq_unmask(data);
1253 static int pistachio_gpio_irq_set_type(struct irq_data *data, unsigned int type)
1255 struct pistachio_gpio_bank *bank = irqd_to_bank(data);
1259 gpio_mask_writel(bank, GPIO_INPUT_POLARITY, data->hwirq, 1);
1260 gpio_mask_writel(bank, GPIO_INTERRUPT_TYPE, data->hwirq,
1262 gpio_mask_writel(bank, GPIO_INTERRUPT_EDGE, data->hwirq,
1266 gpio_mask_writel(bank, GPIO_INPUT_POLARITY, data->hwirq, 0);
1267 gpio_mask_writel(bank, GPIO_INTERRUPT_TYPE, data->hwirq,
1269 gpio_mask_writel(bank, GPIO_INTERRUPT_EDGE, data->hwirq,
1273 gpio_mask_writel(bank, GPIO_INTERRUPT_TYPE, data->hwirq,
1275 gpio_mask_writel(bank, GPIO_INTERRUPT_EDGE, data->hwirq,
1279 gpio_mask_writel(bank, GPIO_INPUT_POLARITY, data->hwirq, 1);
1280 gpio_mask_writel(bank, GPIO_INTERRUPT_TYPE, data->hwirq,
1284 gpio_mask_writel(bank, GPIO_INPUT_POLARITY, data->hwirq, 0);
1285 gpio_mask_writel(bank, GPIO_INTERRUPT_TYPE, data->hwirq,
1293 irq_set_handler_locked(data, handle_level_irq);
1295 irq_set_handler_locked(data, handle_edge_irq);
1344 static void pistachio_gpio_irq_print_chip(struct irq_data *data,
1347 struct pistachio_gpio_bank *bank = irqd_to_bank(data);