linux/include/linux/bma150.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2/*
   3 * Copyright (c) 2011 Bosch Sensortec GmbH
   4 * Copyright (c) 2011 Unixphere
   5 */
   6
   7#ifndef _BMA150_H_
   8#define _BMA150_H_
   9
  10#define BMA150_DRIVER           "bma150"
  11
  12#define BMA150_RANGE_2G         0
  13#define BMA150_RANGE_4G         1
  14#define BMA150_RANGE_8G         2
  15
  16#define BMA150_BW_25HZ          0
  17#define BMA150_BW_50HZ          1
  18#define BMA150_BW_100HZ         2
  19#define BMA150_BW_190HZ         3
  20#define BMA150_BW_375HZ         4
  21#define BMA150_BW_750HZ         5
  22#define BMA150_BW_1500HZ        6
  23
  24struct bma150_cfg {
  25        bool any_motion_int;            /* Set to enable any-motion interrupt */
  26        bool hg_int;                    /* Set to enable high-G interrupt */
  27        bool lg_int;                    /* Set to enable low-G interrupt */
  28        unsigned char any_motion_dur;   /* Any-motion duration */
  29        unsigned char any_motion_thres; /* Any-motion threshold */
  30        unsigned char hg_hyst;          /* High-G hysterisis */
  31        unsigned char hg_dur;           /* High-G duration */
  32        unsigned char hg_thres;         /* High-G threshold */
  33        unsigned char lg_hyst;          /* Low-G hysterisis */
  34        unsigned char lg_dur;           /* Low-G duration */
  35        unsigned char lg_thres;         /* Low-G threshold */
  36        unsigned char range;            /* one of BMA0150_RANGE_xxx */
  37        unsigned char bandwidth;        /* one of BMA0150_BW_xxx */
  38};
  39
  40struct bma150_platform_data {
  41        struct bma150_cfg cfg;
  42        int (*irq_gpio_cfg)(void);
  43};
  44
  45#endif /* _BMA150_H_ */
  46