| /* 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_ */ |