blob: 7b40a8c2247153cc2285561b9510cd5ab8936c45 [file] [log] [blame]
/*
$License:
Copyright (C) 2011 InvenSense Corporation, All Rights Reserved.
$
*/
/*******************************************************************************
*
* $Id: slave.h 5732 2011-07-07 01:11:34Z vbhatt $
*
*******************************************************************************/
#ifndef SLAVE_H
#define SLAVE_H
/**
* @addtogroup SLAVEDL
*
* @{
* @file slave.h
* @brief Top level descriptions for Accelerometer support
*
*/
#include "mltypes.h"
#include "linux/mpu.h"
/* ------------ */
/* - Defines. - */
/* ------------ */
/*--- default accel support - selection ---*/
#define ACCEL_ST_LIS331 0
#define ACCEL_KIONIX_KXTF9 1
#define ACCEL_BOSCH 0
#define ACCEL_ADI 0
#define ACCEL_SLAVEADDR_INVALID 0x00
#define ACCEL_SLAVEADDR_LIS331 0x18
#define ACCEL_SLAVEADDR_LSM303 0x18
#define ACCEL_SLAVEADDR_LIS3DH 0x18
#define ACCEL_SLAVEADDR_KXSD9 0x18
#define ACCEL_SLAVEADDR_KXTF9 0x0F
#define ACCEL_SLAVEADDR_BMA150 0x38
#define ACCEL_SLAVEADDR_BMA222 0x08
#define ACCEL_SLAVEADDR_BMA250 0x18
#define ACCEL_SLAVEADDR_ADXL34X 0x53
#define ACCEL_SLAVEADDR_ADXL34X_ALT 0x1D /* alternative addr */
#define ACCEL_SLAVEADDR_MMA8450 0x1C
#define ACCEL_SLAVEADDR_MMA845X 0x1C
#define ACCEL_SLAVEADDR_INVENSENSE 0x68
/*
Define default accelerometer to use if no selection is made
*/
#if ACCEL_ST_LIS331
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_LIS331
#define DEFAULT_ACCEL_ID ACCEL_ID_LIS331
#endif
#if ACCEL_ST_LSM303
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_LSM303
#define DEFAULT_ACCEL_ID ACCEL_ID_LSM303DLX
#endif
#if ACCEL_KIONIX_KXSD9
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_KXSD9
#define DEFAULT_ACCEL_ID ACCEL_ID_KXSD9
#endif
#if ACCEL_KIONIX_KXTF9
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_KXTF9
#define DEFAULT_ACCEL_ID ACCEL_ID_KXTF9
#endif
#if ACCEL_BOSCH
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_BMA150
#define DEFAULT_ACCEL_ID ACCEL_ID_BMA150
#endif
#if ACCEL_BMA222
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_BMA222
#define DEFAULT_ACCEL_ID ACCEL_ID_BMA222
#endif
#if ACCEL_BOSCH
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_BMA250
#define DEFAULT_ACCEL_ID ACCEL_ID_BMA250
#endif
#if ACCEL_ADI
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_ADXL34X
#define DEFAULT_ACCEL_ID ACCEL_ID_ADXL34X
#endif
#if ACCEL_MMA8450
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_MMA8450
#define DEFAULT_ACCEL_ID ACCEL_ID_MMA8450
#endif
#if ACCEL_MMA845X
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_MMA845X
#define DEFAULT_ACCEL_ID ACCEL_ID_MMA845X
#endif
/*--- if no default accelerometer was selected ---*/
#ifndef DEFAULT_ACCEL_SLAVEADDR
#define DEFAULT_ACCEL_SLAVEADDR ACCEL_SLAVEADDR_INVALID
#endif
#define USE_COMPASS_AICHI 0
#define USE_COMPASS_AKM 0
#define USE_COMPASS_YAS529 0
#define USE_COMPASS_YAS530 0
#define USE_COMPASS_HMC5883 0
#define USE_COMPASS_MMC314X 0
#define USE_COMPASS_HSCDTD002B 0
#define USE_COMPASS_HSCDTD004A 0
#define COMPASS_SLAVEADDR_INVALID 0x00
#define COMPASS_SLAVEADDR_AKM_BASE 0x0C
#define COMPASS_SLAVEADDR_AKM 0x0E
#define COMPASS_SLAVEADDR_AMI304 0x0E
#define COMPASS_SLAVEADDR_AMI305 0x0F /*Slave address for AMI 305/306*/
#define COMPASS_SLAVEADDR_AMI306 0x0E /*Slave address for AMI 305/306*/
#define COMPASS_SLAVEADDR_YAS529 0x2E
#define COMPASS_SLAVEADDR_YAS530 0x2E
#define COMPASS_SLAVEADDR_HMC5883 0x1E
#define COMPASS_SLAVEADDR_MMC314X 0x30
#define COMPASS_SLAVEADDR_HSCDTD00XX 0x0C
/*
Define default compass to use if no selection is made
*/
#if USE_COMPASS_AKM
#define DEFAULT_COMPASS_TYPE COMPASS_ID_AK8975
#endif
#if USE_COMPASS_AICHI
#define DEFAULT_COMPASS_TYPE COMPASS_ID_AMI30X
#endif
#if USE_COMPASS_YAS529
#define DEFAULT_COMPASS_TYPE COMPASS_ID_YAS529
#endif
#if USE_COMPASS_YAS530
#define DEFAULT_COMPASS_TYPE COMPASS_ID_YAS530
#endif
#if USE_COMPASS_HMC5883
#define DEFAULT_COMPASS_TYPE COMPASS_ID_HMC5883
#endif
#if USE_COMPASS_MMC314X
#define DEFAULT_COMPASS_TYPE COMPASS_ID_MMC314X
#endif
#if USE_COMPASS_HSCDTD002B
#define DEFAULT_COMPASS_TYPE COMPASS_ID_HSCDTD002B
#endif
#if USE_COMPASS_HSCDTD004A
#define DEFAULT_COMPASS_TYPE COMPASS_ID_HSCDTD004A
#endif
#ifndef DEFAULT_COMPASS_TYPE
#define DEFAULT_COMPASS_TYPE ID_INVALID
#endif
#endif // SLAVE_H
/**
* @}
*/