hlwd               60 drivers/gpio/gpio-hlwd.c 	struct hlwd_gpio *hlwd =
hlwd               68 drivers/gpio/gpio-hlwd.c 	spin_lock_irqsave(&hlwd->gpioc.bgpio_lock, flags);
hlwd               69 drivers/gpio/gpio-hlwd.c 	pending = ioread32be(hlwd->regs + HW_GPIOB_INTFLAG);
hlwd               70 drivers/gpio/gpio-hlwd.c 	pending &= ioread32be(hlwd->regs + HW_GPIOB_INTMASK);
hlwd               73 drivers/gpio/gpio-hlwd.c 	emulated_pending = hlwd->edge_emulation & pending;
hlwd               78 drivers/gpio/gpio-hlwd.c 		level = ioread32be(hlwd->regs + HW_GPIOB_INTLVL);
hlwd               84 drivers/gpio/gpio-hlwd.c 			    hlwd->regs + HW_GPIOB_INTLVL);
hlwd               87 drivers/gpio/gpio-hlwd.c 		iowrite32be(emulated_pending, hlwd->regs + HW_GPIOB_INTFLAG);
hlwd               90 drivers/gpio/gpio-hlwd.c 		rising &= hlwd->rising_edge;
hlwd               91 drivers/gpio/gpio-hlwd.c 		falling &= hlwd->falling_edge;
hlwd               96 drivers/gpio/gpio-hlwd.c 	spin_unlock_irqrestore(&hlwd->gpioc.bgpio_lock, flags);
hlwd              101 drivers/gpio/gpio-hlwd.c 		int irq = irq_find_mapping(hlwd->gpioc.irq.domain, hwirq);
hlwd              111 drivers/gpio/gpio-hlwd.c 	struct hlwd_gpio *hlwd =
hlwd              114 drivers/gpio/gpio-hlwd.c 	iowrite32be(BIT(data->hwirq), hlwd->regs + HW_GPIOB_INTFLAG);
hlwd              119 drivers/gpio/gpio-hlwd.c 	struct hlwd_gpio *hlwd =
hlwd              124 drivers/gpio/gpio-hlwd.c 	spin_lock_irqsave(&hlwd->gpioc.bgpio_lock, flags);
hlwd              125 drivers/gpio/gpio-hlwd.c 	mask = ioread32be(hlwd->regs + HW_GPIOB_INTMASK);
hlwd              127 drivers/gpio/gpio-hlwd.c 	iowrite32be(mask, hlwd->regs + HW_GPIOB_INTMASK);
hlwd              128 drivers/gpio/gpio-hlwd.c 	spin_unlock_irqrestore(&hlwd->gpioc.bgpio_lock, flags);
hlwd              133 drivers/gpio/gpio-hlwd.c 	struct hlwd_gpio *hlwd =
hlwd              138 drivers/gpio/gpio-hlwd.c 	spin_lock_irqsave(&hlwd->gpioc.bgpio_lock, flags);
hlwd              139 drivers/gpio/gpio-hlwd.c 	mask = ioread32be(hlwd->regs + HW_GPIOB_INTMASK);
hlwd              141 drivers/gpio/gpio-hlwd.c 	iowrite32be(mask, hlwd->regs + HW_GPIOB_INTMASK);
hlwd              142 drivers/gpio/gpio-hlwd.c 	spin_unlock_irqrestore(&hlwd->gpioc.bgpio_lock, flags);
hlwd              151 drivers/gpio/gpio-hlwd.c static void hlwd_gpio_irq_setup_emulation(struct hlwd_gpio *hlwd, int hwirq,
hlwd              157 drivers/gpio/gpio-hlwd.c 	level = ioread32be(hlwd->regs + HW_GPIOB_INTLVL);
hlwd              158 drivers/gpio/gpio-hlwd.c 	state = ioread32be(hlwd->regs + HW_GPIOB_IN) & BIT(hwirq);
hlwd              161 drivers/gpio/gpio-hlwd.c 	iowrite32be(level, hlwd->regs + HW_GPIOB_INTLVL);
hlwd              163 drivers/gpio/gpio-hlwd.c 	hlwd->edge_emulation |= BIT(hwirq);
hlwd              164 drivers/gpio/gpio-hlwd.c 	hlwd->rising_edge &= ~BIT(hwirq);
hlwd              165 drivers/gpio/gpio-hlwd.c 	hlwd->falling_edge &= ~BIT(hwirq);
hlwd              167 drivers/gpio/gpio-hlwd.c 		hlwd->rising_edge |= BIT(hwirq);
hlwd              169 drivers/gpio/gpio-hlwd.c 		hlwd->falling_edge |= BIT(hwirq);
hlwd              174 drivers/gpio/gpio-hlwd.c 	struct hlwd_gpio *hlwd =
hlwd              179 drivers/gpio/gpio-hlwd.c 	spin_lock_irqsave(&hlwd->gpioc.bgpio_lock, flags);
hlwd              181 drivers/gpio/gpio-hlwd.c 	hlwd->edge_emulation &= ~BIT(data->hwirq);
hlwd              185 drivers/gpio/gpio-hlwd.c 		level = ioread32be(hlwd->regs + HW_GPIOB_INTLVL);
hlwd              187 drivers/gpio/gpio-hlwd.c 		iowrite32be(level, hlwd->regs + HW_GPIOB_INTLVL);
hlwd              190 drivers/gpio/gpio-hlwd.c 		level = ioread32be(hlwd->regs + HW_GPIOB_INTLVL);
hlwd              192 drivers/gpio/gpio-hlwd.c 		iowrite32be(level, hlwd->regs + HW_GPIOB_INTLVL);
hlwd              197 drivers/gpio/gpio-hlwd.c 		hlwd_gpio_irq_setup_emulation(hlwd, data->hwirq, flow_type);
hlwd              200 drivers/gpio/gpio-hlwd.c 		spin_unlock_irqrestore(&hlwd->gpioc.bgpio_lock, flags);
hlwd              204 drivers/gpio/gpio-hlwd.c 	spin_unlock_irqrestore(&hlwd->gpioc.bgpio_lock, flags);
hlwd              210 drivers/gpio/gpio-hlwd.c 	struct hlwd_gpio *hlwd;
hlwd              214 drivers/gpio/gpio-hlwd.c 	hlwd = devm_kzalloc(&pdev->dev, sizeof(*hlwd), GFP_KERNEL);
hlwd              215 drivers/gpio/gpio-hlwd.c 	if (!hlwd)
hlwd              218 drivers/gpio/gpio-hlwd.c 	hlwd->regs = devm_platform_ioremap_resource(pdev, 0);
hlwd              219 drivers/gpio/gpio-hlwd.c 	if (IS_ERR(hlwd->regs))
hlwd              220 drivers/gpio/gpio-hlwd.c 		return PTR_ERR(hlwd->regs);
hlwd              231 drivers/gpio/gpio-hlwd.c 	iowrite32be(0xffffffff, hlwd->regs + HW_GPIO_OWNER);
hlwd              233 drivers/gpio/gpio-hlwd.c 	res = bgpio_init(&hlwd->gpioc, &pdev->dev, 4,
hlwd              234 drivers/gpio/gpio-hlwd.c 			hlwd->regs + HW_GPIOB_IN, hlwd->regs + HW_GPIOB_OUT,
hlwd              235 drivers/gpio/gpio-hlwd.c 			NULL, hlwd->regs + HW_GPIOB_DIR, NULL,
hlwd              245 drivers/gpio/gpio-hlwd.c 	hlwd->gpioc.ngpio = ngpios;
hlwd              248 drivers/gpio/gpio-hlwd.c 	iowrite32be(0, hlwd->regs + HW_GPIOB_INTMASK);
hlwd              249 drivers/gpio/gpio-hlwd.c 	iowrite32be(0xffffffff, hlwd->regs + HW_GPIOB_INTFLAG);
hlwd              258 drivers/gpio/gpio-hlwd.c 		hlwd->irq = platform_get_irq(pdev, 0);
hlwd              259 drivers/gpio/gpio-hlwd.c 		if (hlwd->irq < 0) {
hlwd              261 drivers/gpio/gpio-hlwd.c 				 hlwd->irq);
hlwd              262 drivers/gpio/gpio-hlwd.c 			return hlwd->irq;
hlwd              265 drivers/gpio/gpio-hlwd.c 		hlwd->irqc.name = dev_name(&pdev->dev);
hlwd              266 drivers/gpio/gpio-hlwd.c 		hlwd->irqc.irq_mask = hlwd_gpio_irq_mask;
hlwd              267 drivers/gpio/gpio-hlwd.c 		hlwd->irqc.irq_unmask = hlwd_gpio_irq_unmask;
hlwd              268 drivers/gpio/gpio-hlwd.c 		hlwd->irqc.irq_enable = hlwd_gpio_irq_enable;
hlwd              269 drivers/gpio/gpio-hlwd.c 		hlwd->irqc.irq_set_type = hlwd_gpio_irq_set_type;
hlwd              271 drivers/gpio/gpio-hlwd.c 		girq = &hlwd->gpioc.irq;
hlwd              272 drivers/gpio/gpio-hlwd.c 		girq->chip = &hlwd->irqc;
hlwd              280 drivers/gpio/gpio-hlwd.c 		girq->parents[0] = hlwd->irq;
hlwd              285 drivers/gpio/gpio-hlwd.c 	return devm_gpiochip_add_data(&pdev->dev, &hlwd->gpioc, hlwd);