Lines Matching refs:bank

214  * @bank: pin bank related to the domain
218 struct samsung_pin_bank *bank;
273 struct samsung_pin_bank *bank, int pin)
275 struct samsung_pin_bank_type *bank_type = bank->type;
283 reg = d->virt_base + bank->pctl_offset;
286 /* 4-bit bank type with 2 con regs */
294 spin_lock_irqsave(&bank->slock, flags);
298 val |= bank->eint_func << shift;
301 spin_unlock_irqrestore(&bank->slock, flags);
310 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd);
311 struct samsung_pinctrl_drv_data *d = bank->drvdata;
312 unsigned char index = EINT_OFFS(bank->eint_offset) + irqd->hwirq;
313 void __iomem *reg = d->virt_base + EINTMASK_REG(bank->eint_offset);
336 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd);
337 struct samsung_pinctrl_drv_data *d = bank->drvdata;
338 unsigned char index = EINT_OFFS(bank->eint_offset) + irqd->hwirq;
339 void __iomem *reg = d->virt_base + EINTPEND_REG(bank->eint_offset);
346 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd);
347 struct samsung_pinctrl_drv_data *d = bank->drvdata;
362 reg = d->virt_base + EINTCON_REG(bank->eint_offset);
363 shift = EINT_OFFS(bank->eint_offset) + irqd->hwirq;
371 s3c64xx_irq_set_function(d, bank, irqd->hwirq);
390 struct samsung_pin_bank *bank = h->host_data;
392 if (!(bank->eint_mask & (1 << hw)))
397 irq_set_chip_data(virq, bank);
460 struct samsung_pin_bank *bank;
471 bank = d->ctrl->pin_banks;
472 for (i = 0; i < d->ctrl->nr_banks; ++i, ++bank) {
476 if (bank->eint_type != EINT_TYPE_GPIO)
479 mask = bank->eint_mask;
482 bank->irq_domain = irq_domain_add_linear(bank->of_node,
483 nr_eints, &s3c64xx_gpio_irqd_ops, bank);
484 if (!bank->irq_domain) {
500 bank = d->ctrl->pin_banks;
502 for (i = 0; i < d->ctrl->nr_banks; ++i, ++bank) {
503 if (bank->eint_type != EINT_TYPE_GPIO)
506 data->domains[nr_domains++] = bank->irq_domain;
523 struct samsung_pinctrl_drv_data *d = ddata->bank->drvdata;
548 struct samsung_pinctrl_drv_data *d = ddata->bank->drvdata;
558 struct samsung_pin_bank *bank = ddata->bank;
559 struct samsung_pinctrl_drv_data *d = bank->drvdata;
587 s3c64xx_irq_set_function(d, bank, irqd->hwirq);
669 struct samsung_pin_bank *bank = ddata->bank;
671 if (!(bank->eint_mask & (1 << hw)))
705 struct samsung_pin_bank *bank;
738 bank = d->ctrl->pin_banks;
739 for (i = 0; i < d->ctrl->nr_banks; ++i, ++bank) {
746 if (bank->eint_type != EINT_TYPE_WKUP)
749 mask = bank->eint_mask;
758 ddata->bank = bank;
760 bank->irq_domain = irq_domain_add_linear(bank->of_node,
762 if (!bank->irq_domain) {
767 irq = bank->eint_offset;
768 mask = bank->eint_mask;
772 data->domains[irq] = bank->irq_domain;