1/* SPDX-License-Identifier: GPL-2.0 */ 2/* Copyright 2022 William Breathitt Gray */ 3#ifndef _IDIO_16_H_ 4#define _IDIO_16_H_ 5 6struct device; 7struct regmap; 8struct regmap_irq; 9 10/** 11 * struct idio_16_regmap_config - Configuration for the IDIO-16 register map 12 * @parent: parent device 13 * @map: regmap for the IDIO-16 device 14 * @regmap_irqs: descriptors for individual IRQs 15 * @num_regmap_irqs: number of IRQ descriptors 16 * @irq: IRQ number for the IDIO-16 device 17 * @no_status: device has no status register 18 * @filters: device has input filters 19 */ 20struct idio_16_regmap_config { 21 struct device *parent; 22 struct regmap *map; 23 const struct regmap_irq *regmap_irqs; 24 int num_regmap_irqs; 25 unsigned int irq; 26 bool no_status; 27 bool filters; 28}; 29 30int devm_idio_16_regmap_register(struct device *dev, const struct idio_16_regmap_config *config); 31 32#endif /* _IDIO_16_H_ */ 33