diff options
Diffstat (limited to 'src/drivers/i2c/sx9360/chip.h')
-rw-r--r-- | src/drivers/i2c/sx9360/chip.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/drivers/i2c/sx9360/chip.h b/src/drivers/i2c/sx9360/chip.h new file mode 100644 index 0000000000..397ea3f5d2 --- /dev/null +++ b/src/drivers/i2c/sx9360/chip.h @@ -0,0 +1,40 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#ifndef __DRIVERS_I2C_SX9360_CHIP_H__ +#define __DRIVERS_I2C_SX9360_CHIP_H__ + +#include <acpi/acpi_device.h> +#include <device/i2c_simple.h> + +struct drivers_i2c_sx9360_config { + /* Device Description */ + const char *desc; + + /* ACPI _UID */ + unsigned int uid; + + /* Bus speed in Hz, default is I2C_SPEED_FAST */ + enum i2c_speed speed; + + /* Use GPIO-based interrupt instead of IO-APIC */ + struct acpi_gpio irq_gpio; + + /* IO-APIC interrupt */ + struct acpi_irq irq; + + /* + * Registers definition in the kernel source tree at: + * Documentation/devicetree/bindings/iio/proximity/semtech,sx9360.yaml + */ + + /* Raw Proximity filter strength: When not set, disabled. */ + uint32_t proxraw_strength; + + /* Average Proximity filter strength: When not set, disabled. */ + uint32_t avg_pos_strength; + + /* Capacitance measure resolution. Driver default: 128. */ + uint32_t resolution; +}; + +#endif /* __DRIVERS_I2C_SX9360_CHIP_H__ */ |