lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 27 Apr 2020 13:45:00 +0200 From: Thomas Gleixner <tglx@...utronix.de> To: Michael Walle <michael@...le.cc>, Andy Shevchenko <andriy.shevchenko@...ux.intel.com>, linux-gpio@...r.kernel.org, devicetree@...r.kernel.org, linux-kernel@...r.kernel.org, linux-hwmon@...r.kernel.org, linux-pwm@...r.kernel.org, linux-watchdog@...r.kernel.org, linux-arm-kernel@...ts.infradead.org Cc: Linus Walleij <linus.walleij@...aro.org>, Bartosz Golaszewski <bgolaszewski@...libre.com>, Rob Herring <robh+dt@...nel.org>, Jean Delvare <jdelvare@...e.com>, Guenter Roeck <linux@...ck-us.net>, Lee Jones <lee.jones@...aro.org>, Thierry Reding <thierry.reding@...il.com>, Uwe Kleine-König <u.kleine-koenig@...gutronix.de>, Wim Van Sebroeck <wim@...ux-watchdog.org>, Shawn Guo <shawnguo@...nel.org>, Li Yang <leoyang.li@....com>, Jason Cooper <jason@...edaemon.net>, Marc Zyngier <maz@...nel.org>, Mark Brown <broonie@...nel.org>, Greg Kroah-Hartman <gregkh@...uxfoundation.org>, Michael Walle <michael@...le.cc> Subject: Re: [PATCH v3 11/16] gpio: add support for the sl28cpld GPIO controller Michael Walle <michael@...le.cc> writes: > +struct sl28cpld_gpio { > + struct regmap_irq_chip irq_chip; > + struct regmap_irq_chip_data *irq_data; > +}; > + > +static const struct regmap_irq sl28cpld_gpio_irqs[] = { > + REGMAP_IRQ_REG_LINE(0, 8), > + REGMAP_IRQ_REG_LINE(1, 8), > + REGMAP_IRQ_REG_LINE(2, 8), > + REGMAP_IRQ_REG_LINE(3, 8), > + REGMAP_IRQ_REG_LINE(4, 8), > + REGMAP_IRQ_REG_LINE(5, 8), > + REGMAP_IRQ_REG_LINE(6, 8), > + REGMAP_IRQ_REG_LINE(7, 8), > +}; This is exactly the same as the one in the irq chip patch. > +static int sl28cpld_gpio_irq_init(struct device *dev, > + struct sl28cpld_gpio *gpio, > + struct regmap *regmap, unsigned int base, > + int irq) > +{ > + struct regmap_irq_chip *irq_chip = &gpio->irq_chip; > + > + irq_chip->name = "sl28cpld-gpio-irq", > + irq_chip->irqs = sl28cpld_gpio_irqs; > + irq_chip->num_irqs = ARRAY_SIZE(sl28cpld_gpio_irqs); > + irq_chip->num_regs = 1; > + irq_chip->status_base = base + GPIO_REG_IP; > + irq_chip->mask_base = base + GPIO_REG_IE; > + irq_chip->mask_invert = true, > + irq_chip->ack_base = base + GPIO_REG_IP; > + > + return devm_regmap_add_irq_chip_np(dev, dev_of_node(dev), regmap, > + irq, IRQF_SHARED | IRQF_ONESHOT, 0, > + irq_chip, &gpio->irq_data); > +} And this looks pretty familiar as well. What's the point of duplicating that code? Thanks, tglx
Powered by blists - more mailing lists