Viewing file: max7301.h (946 B) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* SPDX-License-Identifier: GPL-2.0 */ #ifndef LINUX_SPI_MAX7301_H #define LINUX_SPI_MAX7301_H
#include <linux/gpio/driver.h>
/* * Some registers must be read back to modify. * To save time we cache them here in memory */ struct max7301 { struct mutex lock; u8 port_config[8]; /* field 0 is unused */ u32 out_level; /* cached output levels */ u32 input_pullup_active; struct gpio_chip chip; struct device *dev; int (*write)(struct device *dev, unsigned int reg, unsigned int val); int (*read)(struct device *dev, unsigned int reg); };
struct max7301_platform_data { /* number assigned to the first GPIO */ unsigned base; /* * bitmask controlling the pullup configuration, * * _note_ the 4 lowest bits are unused, because the first 4 * ports of the controller are not used, too. */ u32 input_pullup_active; };
extern int __max730x_remove(struct device *dev); extern int __max730x_probe(struct max7301 *ts); #endif
|