mpc8xxx_gc 59 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = gpiochip_get_data(gc); mpc8xxx_gc 63 drivers/gpio/gpio-mpc8xxx.c gc->write_reg(mpc8xxx_gc->regs + GPIO_IBE, 0xffffffff); mpc8xxx_gc 88 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = gpiochip_get_data(gc); mpc8xxx_gc 91 drivers/gpio/gpio-mpc8xxx.c out_mask = gc->read_reg(mpc8xxx_gc->regs + GPIO_DIR); mpc8xxx_gc 92 drivers/gpio/gpio-mpc8xxx.c val = gc->read_reg(mpc8xxx_gc->regs + GPIO_DAT) & ~out_mask; mpc8xxx_gc 101 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = gpiochip_get_data(gc); mpc8xxx_gc 106 drivers/gpio/gpio-mpc8xxx.c return mpc8xxx_gc->direction_output(gc, gpio, val); mpc8xxx_gc 112 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = gpiochip_get_data(gc); mpc8xxx_gc 117 drivers/gpio/gpio-mpc8xxx.c return mpc8xxx_gc->direction_output(gc, gpio, val); mpc8xxx_gc 122 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = gpiochip_get_data(gc); mpc8xxx_gc 124 drivers/gpio/gpio-mpc8xxx.c if (mpc8xxx_gc->irq && offset < MPC8XXX_GPIO_PINS) mpc8xxx_gc 125 drivers/gpio/gpio-mpc8xxx.c return irq_create_mapping(mpc8xxx_gc->irq, offset); mpc8xxx_gc 132 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = irq_desc_get_handler_data(desc); mpc8xxx_gc 134 drivers/gpio/gpio-mpc8xxx.c struct gpio_chip *gc = &mpc8xxx_gc->gc; mpc8xxx_gc 137 drivers/gpio/gpio-mpc8xxx.c mask = gc->read_reg(mpc8xxx_gc->regs + GPIO_IER) mpc8xxx_gc 138 drivers/gpio/gpio-mpc8xxx.c & gc->read_reg(mpc8xxx_gc->regs + GPIO_IMR); mpc8xxx_gc 140 drivers/gpio/gpio-mpc8xxx.c generic_handle_irq(irq_linear_revmap(mpc8xxx_gc->irq, mpc8xxx_gc 148 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = irq_data_get_irq_chip_data(d); mpc8xxx_gc 149 drivers/gpio/gpio-mpc8xxx.c struct gpio_chip *gc = &mpc8xxx_gc->gc; mpc8xxx_gc 152 drivers/gpio/gpio-mpc8xxx.c raw_spin_lock_irqsave(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 154 drivers/gpio/gpio-mpc8xxx.c gc->write_reg(mpc8xxx_gc->regs + GPIO_IMR, mpc8xxx_gc 155 drivers/gpio/gpio-mpc8xxx.c gc->read_reg(mpc8xxx_gc->regs + GPIO_IMR) mpc8xxx_gc 158 drivers/gpio/gpio-mpc8xxx.c raw_spin_unlock_irqrestore(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 163 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = irq_data_get_irq_chip_data(d); mpc8xxx_gc 164 drivers/gpio/gpio-mpc8xxx.c struct gpio_chip *gc = &mpc8xxx_gc->gc; mpc8xxx_gc 167 drivers/gpio/gpio-mpc8xxx.c raw_spin_lock_irqsave(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 169 drivers/gpio/gpio-mpc8xxx.c gc->write_reg(mpc8xxx_gc->regs + GPIO_IMR, mpc8xxx_gc 170 drivers/gpio/gpio-mpc8xxx.c gc->read_reg(mpc8xxx_gc->regs + GPIO_IMR) mpc8xxx_gc 173 drivers/gpio/gpio-mpc8xxx.c raw_spin_unlock_irqrestore(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 178 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = irq_data_get_irq_chip_data(d); mpc8xxx_gc 179 drivers/gpio/gpio-mpc8xxx.c struct gpio_chip *gc = &mpc8xxx_gc->gc; mpc8xxx_gc 181 drivers/gpio/gpio-mpc8xxx.c gc->write_reg(mpc8xxx_gc->regs + GPIO_IER, mpc8xxx_gc 187 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = irq_data_get_irq_chip_data(d); mpc8xxx_gc 188 drivers/gpio/gpio-mpc8xxx.c struct gpio_chip *gc = &mpc8xxx_gc->gc; mpc8xxx_gc 193 drivers/gpio/gpio-mpc8xxx.c raw_spin_lock_irqsave(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 194 drivers/gpio/gpio-mpc8xxx.c gc->write_reg(mpc8xxx_gc->regs + GPIO_ICR, mpc8xxx_gc 195 drivers/gpio/gpio-mpc8xxx.c gc->read_reg(mpc8xxx_gc->regs + GPIO_ICR) mpc8xxx_gc 197 drivers/gpio/gpio-mpc8xxx.c raw_spin_unlock_irqrestore(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 201 drivers/gpio/gpio-mpc8xxx.c raw_spin_lock_irqsave(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 202 drivers/gpio/gpio-mpc8xxx.c gc->write_reg(mpc8xxx_gc->regs + GPIO_ICR, mpc8xxx_gc 203 drivers/gpio/gpio-mpc8xxx.c gc->read_reg(mpc8xxx_gc->regs + GPIO_ICR) mpc8xxx_gc 205 drivers/gpio/gpio-mpc8xxx.c raw_spin_unlock_irqrestore(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 217 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = irq_data_get_irq_chip_data(d); mpc8xxx_gc 218 drivers/gpio/gpio-mpc8xxx.c struct gpio_chip *gc = &mpc8xxx_gc->gc; mpc8xxx_gc 225 drivers/gpio/gpio-mpc8xxx.c reg = mpc8xxx_gc->regs + GPIO_ICR; mpc8xxx_gc 228 drivers/gpio/gpio-mpc8xxx.c reg = mpc8xxx_gc->regs + GPIO_ICR2; mpc8xxx_gc 235 drivers/gpio/gpio-mpc8xxx.c raw_spin_lock_irqsave(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 238 drivers/gpio/gpio-mpc8xxx.c raw_spin_unlock_irqrestore(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 243 drivers/gpio/gpio-mpc8xxx.c raw_spin_lock_irqsave(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 246 drivers/gpio/gpio-mpc8xxx.c raw_spin_unlock_irqrestore(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 250 drivers/gpio/gpio-mpc8xxx.c raw_spin_lock_irqsave(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 252 drivers/gpio/gpio-mpc8xxx.c raw_spin_unlock_irqrestore(&mpc8xxx_gc->lock, flags); mpc8xxx_gc 330 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc; mpc8xxx_gc 336 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gc = devm_kzalloc(&pdev->dev, sizeof(*mpc8xxx_gc), GFP_KERNEL); mpc8xxx_gc 337 drivers/gpio/gpio-mpc8xxx.c if (!mpc8xxx_gc) mpc8xxx_gc 340 drivers/gpio/gpio-mpc8xxx.c platform_set_drvdata(pdev, mpc8xxx_gc); mpc8xxx_gc 342 drivers/gpio/gpio-mpc8xxx.c raw_spin_lock_init(&mpc8xxx_gc->lock); mpc8xxx_gc 344 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gc->regs = of_iomap(np, 0); mpc8xxx_gc 345 drivers/gpio/gpio-mpc8xxx.c if (!mpc8xxx_gc->regs) mpc8xxx_gc 348 drivers/gpio/gpio-mpc8xxx.c gc = &mpc8xxx_gc->gc; mpc8xxx_gc 353 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gc->regs + GPIO_DAT, mpc8xxx_gc 355 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gc->regs + GPIO_DIR, NULL, mpc8xxx_gc 362 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gc->regs + GPIO_DAT, mpc8xxx_gc 364 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gc->regs + GPIO_DIR, NULL, mpc8xxx_gc 372 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gc->direction_output = gc->direction_output; mpc8xxx_gc 392 drivers/gpio/gpio-mpc8xxx.c gc->write_reg(mpc8xxx_gc->regs + GPIO_IBE, 0xffffffff); mpc8xxx_gc 394 drivers/gpio/gpio-mpc8xxx.c ret = gpiochip_add_data(gc, mpc8xxx_gc); mpc8xxx_gc 401 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gc->irqn = irq_of_parse_and_map(np, 0); mpc8xxx_gc 402 drivers/gpio/gpio-mpc8xxx.c if (!mpc8xxx_gc->irqn) mpc8xxx_gc 405 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gc->irq = irq_domain_add_linear(np, MPC8XXX_GPIO_PINS, mpc8xxx_gc 406 drivers/gpio/gpio-mpc8xxx.c &mpc8xxx_gpio_irq_ops, mpc8xxx_gc); mpc8xxx_gc 407 drivers/gpio/gpio-mpc8xxx.c if (!mpc8xxx_gc->irq) mpc8xxx_gc 411 drivers/gpio/gpio-mpc8xxx.c gc->write_reg(mpc8xxx_gc->regs + GPIO_IER, 0xffffffff); mpc8xxx_gc 412 drivers/gpio/gpio-mpc8xxx.c gc->write_reg(mpc8xxx_gc->regs + GPIO_IMR, 0); mpc8xxx_gc 417 drivers/gpio/gpio-mpc8xxx.c irq_set_chained_handler_and_data(mpc8xxx_gc->irqn, mpc8xxx_gc 418 drivers/gpio/gpio-mpc8xxx.c mpc8xxx_gpio_irq_cascade, mpc8xxx_gc); mpc8xxx_gc 421 drivers/gpio/gpio-mpc8xxx.c iounmap(mpc8xxx_gc->regs); mpc8xxx_gc 427 drivers/gpio/gpio-mpc8xxx.c struct mpc8xxx_gpio_chip *mpc8xxx_gc = platform_get_drvdata(pdev); mpc8xxx_gc 429 drivers/gpio/gpio-mpc8xxx.c if (mpc8xxx_gc->irq) { mpc8xxx_gc 430 drivers/gpio/gpio-mpc8xxx.c irq_set_chained_handler_and_data(mpc8xxx_gc->irqn, NULL, NULL); mpc8xxx_gc 431 drivers/gpio/gpio-mpc8xxx.c irq_domain_remove(mpc8xxx_gc->irq); mpc8xxx_gc 434 drivers/gpio/gpio-mpc8xxx.c gpiochip_remove(&mpc8xxx_gc->gc); mpc8xxx_gc 435 drivers/gpio/gpio-mpc8xxx.c iounmap(mpc8xxx_gc->regs);