drivers/iio/accel/kionix-kx022a.h

Source file repositories/reference/linux-study-clean/drivers/iio/accel/kionix-kx022a.h

File Facts

System
Linux kernel
Corpus path
drivers/iio/accel/kionix-kx022a.h
Extension
.h
Size
5733 bytes
Lines
207
Domain
Driver Families
Bucket
drivers/iio
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct kx022a_chip_info {
	const char *name;
	const struct regmap_config *regmap_config;
	const int (*scale_table)[2];
	const int scale_table_size;
	const struct iio_chan_spec *channels;
	unsigned int num_channels;
	unsigned int fifo_length;
	u16 buf_smp_lvl_mask;
	u8 who;
	u8 id;
	u8 cntl;
	u8 cntl2;
	u8 odcntl;
	u8 buf_cntl1;
	u8 buf_cntl2;
	u8 buf_clear;
	u8 buf_status1;
	u8 buf_read;
	u8 inc1;
	u8 inc4;
	u8 inc5;
	u8 inc6;
	u8 xout_l;
	int (*get_fifo_bytes_available)(struct kx022a_data *);
};

int kx022a_probe_internal(struct device *dev, const struct kx022a_chip_info *chip_info);

extern const struct kx022a_chip_info kx022a_chip_info;
extern const struct kx022a_chip_info kx132_chip_info;
extern const struct kx022a_chip_info kx134_chip_info;
extern const struct kx022a_chip_info kx132acr_chip_info;
extern const struct kx022a_chip_info kx134acr_chip_info;

#endif

Annotation

Implementation Notes