/* SPDX-License-Identifier: GPL-2.0 */ /* Copyright 2022 William Breathitt Gray */ #ifndef _IDIO_16_H_ #define _IDIO_16_H_ struct device; struct regmap; struct regmap_irq; /** * struct idio_16_regmap_config - Configuration for the IDIO-16 register map * @parent: parent device * @map: regmap for the IDIO-16 device * @regmap_irqs: descriptors for individual IRQs * @num_regmap_irqs: number of IRQ descriptors * @irq: IRQ number for the IDIO-16 device * @no_status: device has no status register * @filters: device has input filters */ struct idio_16_regmap_config { struct device *parent; struct regmap *map; const struct regmap_irq *regmap_irqs; int num_regmap_irqs; unsigned int irq; bool no_status; bool filters; }; int devm_idio_16_regmap_register(struct device *dev, const struct idio_16_regmap_config *config); #endif /* _IDIO_16_H_ */