forked from Qortal/Brooklyn
Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey!
100 lines
2.8 KiB
C
100 lines
2.8 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* Register constants and other forward declarations needed by the bma400
|
|
* sources.
|
|
*
|
|
* Copyright 2019 Dan Robertson <dan@dlrobertson.com>
|
|
*/
|
|
|
|
#ifndef _BMA400_H_
|
|
#define _BMA400_H_
|
|
|
|
#include <linux/bits.h>
|
|
#include <linux/regmap.h>
|
|
|
|
/*
|
|
* Read-Only Registers
|
|
*/
|
|
|
|
/* Status and ID registers */
|
|
#define BMA400_CHIP_ID_REG 0x00
|
|
#define BMA400_ERR_REG 0x02
|
|
#define BMA400_STATUS_REG 0x03
|
|
|
|
/* Acceleration registers */
|
|
#define BMA400_X_AXIS_LSB_REG 0x04
|
|
#define BMA400_X_AXIS_MSB_REG 0x05
|
|
#define BMA400_Y_AXIS_LSB_REG 0x06
|
|
#define BMA400_Y_AXIS_MSB_REG 0x07
|
|
#define BMA400_Z_AXIS_LSB_REG 0x08
|
|
#define BMA400_Z_AXIS_MSB_REG 0x09
|
|
|
|
/* Sensor time registers */
|
|
#define BMA400_SENSOR_TIME0 0x0a
|
|
#define BMA400_SENSOR_TIME1 0x0b
|
|
#define BMA400_SENSOR_TIME2 0x0c
|
|
|
|
/* Event and interrupt registers */
|
|
#define BMA400_EVENT_REG 0x0d
|
|
#define BMA400_INT_STAT0_REG 0x0e
|
|
#define BMA400_INT_STAT1_REG 0x0f
|
|
#define BMA400_INT_STAT2_REG 0x10
|
|
|
|
/* Temperature register */
|
|
#define BMA400_TEMP_DATA_REG 0x11
|
|
|
|
/* FIFO length and data registers */
|
|
#define BMA400_FIFO_LENGTH0_REG 0x12
|
|
#define BMA400_FIFO_LENGTH1_REG 0x13
|
|
#define BMA400_FIFO_DATA_REG 0x14
|
|
|
|
/* Step count registers */
|
|
#define BMA400_STEP_CNT0_REG 0x15
|
|
#define BMA400_STEP_CNT1_REG 0x16
|
|
#define BMA400_STEP_CNT3_REG 0x17
|
|
#define BMA400_STEP_STAT_REG 0x18
|
|
|
|
/*
|
|
* Read-write configuration registers
|
|
*/
|
|
#define BMA400_ACC_CONFIG0_REG 0x19
|
|
#define BMA400_ACC_CONFIG1_REG 0x1a
|
|
#define BMA400_ACC_CONFIG2_REG 0x1b
|
|
#define BMA400_CMD_REG 0x7e
|
|
|
|
/* Chip ID of BMA 400 devices found in the chip ID register. */
|
|
#define BMA400_ID_REG_VAL 0x90
|
|
|
|
#define BMA400_LP_OSR_SHIFT 5
|
|
#define BMA400_NP_OSR_SHIFT 4
|
|
#define BMA400_SCALE_SHIFT 6
|
|
|
|
#define BMA400_TWO_BITS_MASK GENMASK(1, 0)
|
|
#define BMA400_LP_OSR_MASK GENMASK(6, 5)
|
|
#define BMA400_NP_OSR_MASK GENMASK(5, 4)
|
|
#define BMA400_ACC_ODR_MASK GENMASK(3, 0)
|
|
#define BMA400_ACC_SCALE_MASK GENMASK(7, 6)
|
|
|
|
#define BMA400_ACC_ODR_MIN_RAW 0x05
|
|
#define BMA400_ACC_ODR_LP_RAW 0x06
|
|
#define BMA400_ACC_ODR_MAX_RAW 0x0b
|
|
|
|
#define BMA400_ACC_ODR_MAX_HZ 800
|
|
#define BMA400_ACC_ODR_MIN_WHOLE_HZ 25
|
|
#define BMA400_ACC_ODR_MIN_HZ 12
|
|
|
|
#define BMA400_SCALE_MIN 38357
|
|
#define BMA400_SCALE_MAX 306864
|
|
|
|
#define BMA400_NUM_REGULATORS 2
|
|
#define BMA400_VDD_REGULATOR 0
|
|
#define BMA400_VDDIO_REGULATOR 1
|
|
|
|
extern const struct regmap_config bma400_regmap_config;
|
|
|
|
int bma400_probe(struct device *dev, struct regmap *regmap, const char *name);
|
|
|
|
int bma400_remove(struct device *dev);
|
|
|
|
#endif
|