summaryrefslogtreecommitdiff
path: root/drivers/mfd/m4sensorhub-reg.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/mfd/m4sensorhub-reg.h')
-rw-r--r--drivers/mfd/m4sensorhub-reg.h188
1 files changed, 188 insertions, 0 deletions
diff --git a/drivers/mfd/m4sensorhub-reg.h b/drivers/mfd/m4sensorhub-reg.h
new file mode 100644
index 00000000000..087726c064e
--- /dev/null
+++ b/drivers/mfd/m4sensorhub-reg.h
@@ -0,0 +1,188 @@
+/*
+ * Copyright (c) 2013, Motorola, Inc. All Rights Reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/***************************** WARNING ******************************
+ * *
+ * DO NOT EDIT THIS FILE *
+ * *
+ * This is an auto-generated file based on register maps in the *
+ * M4 Sensor Hub source tree. *
+ * *
+ ***************************** WARNING *****************************/
+
+#ifndef __M4SENSORHUB_MEM_INTERNAL_H__
+#define __M4SENSORHUB_MEM_INTERNAL_H__
+static const struct {
+ enum m4sensorhub_type type; /* Type of register */
+ unsigned short offset; /* Offset into type's memory */
+ unsigned short size; /* Size of register in bytes */
+} register_info_tbl[M4SH_REG__NUM] = {
+ [M4SH_REG_ACCEL_VERSION] = {M4SH_TYPE_ACCEL, 0x0, 1},
+ [M4SH_REG_ACCEL_DUMMY] = {M4SH_TYPE_ACCEL, 0x1, 1},
+ [M4SH_REG_ACCEL_SAMPLERATE] = {M4SH_TYPE_ACCEL, 0x2, 2},
+ [M4SH_REG_ACCEL_X] = {M4SH_TYPE_ACCEL, 0x4, 4},
+ [M4SH_REG_ACCEL_Y] = {M4SH_TYPE_ACCEL, 0x8, 4},
+ [M4SH_REG_ACCEL_Z] = {M4SH_TYPE_ACCEL, 0xc, 4},
+ [M4SH_REG_ACCEL_SCALEDMAGSQUARED] = {M4SH_TYPE_ACCEL, 0x10, 4},
+ [M4SH_REG_ACCEL_MAGNITUDE] = {M4SH_TYPE_ACCEL, 0x14, 4},
+ [M4SH_REG_ACCEL_TILT] = {M4SH_TYPE_ACCEL, 0x18, 2},
+ [M4SH_REG_ACCEL_ORIENTATION] = {M4SH_TYPE_ACCEL, 0x1a, 2},
+ [M4SH_REG_TEMP_VERSION] = {M4SH_TYPE_TEMP, 0x0, 1},
+ [M4SH_REG_TEMP_DUMMY] = {M4SH_TYPE_TEMP, 0x1, 1},
+ [M4SH_REG_TEMP_SAMPLERATE] = {M4SH_TYPE_TEMP, 0x2, 2},
+ [M4SH_REG_TEMP_EXTRNLTEMP] = {M4SH_TYPE_TEMP, 0x4, 2},
+ [M4SH_REG_TEMP_INTRNLTEMP] = {M4SH_TYPE_TEMP, 0x6, 2},
+ [M4SH_REG_GENERAL_UTC] = {M4SH_TYPE_GENERAL, 0x0, 4},
+ [M4SH_REG_GENERAL_LOCALTIMEZONE] = {M4SH_TYPE_GENERAL, 0x4, 2},
+ [M4SH_REG_GENERAL_VERSION] = {M4SH_TYPE_GENERAL, 0x6, 1},
+ [M4SH_REG_GENERAL_INTERRUPT0ENABLE] = {M4SH_TYPE_GENERAL, 0x7, 1},
+ [M4SH_REG_GENERAL_INTERRUPT1ENABLE] = {M4SH_TYPE_GENERAL, 0x8, 1},
+ [M4SH_REG_GENERAL_INTERRUPT0STATUS] = {M4SH_TYPE_GENERAL, 0x9, 1},
+ [M4SH_REG_GENERAL_INTERRUPT1STATUS] = {M4SH_TYPE_GENERAL, 0xa, 1},
+ [M4SH_REG_PRESSURE_VERSION] = {M4SH_TYPE_PRESSURE, 0x0, 1},
+ [M4SH_REG_PRESSURE_DUMMY] = {M4SH_TYPE_PRESSURE, 0x1, 1},
+ [M4SH_REG_PRESSURE_SAMPLERATE] = {M4SH_TYPE_PRESSURE, 0x2, 2},
+ [M4SH_REG_PRESSURE_PRESSURE] = {M4SH_TYPE_PRESSURE, 0x4, 4},
+ [M4SH_REG_PRESSURE_REFERENCEALTITUDE] = {M4SH_TYPE_PRESSURE, 0x8, 4},
+ [M4SH_REG_PRESSURE_SEALEVELPRESSURE] = {M4SH_TYPE_PRESSURE, 0xc, 4},
+ [M4SH_REG_PRESSURE_ABSOLUTEALTITUDE] = {M4SH_TYPE_PRESSURE, 0x10, 4},
+ [M4SH_REG_PRESSURE_TEMPERATURE] = {M4SH_TYPE_PRESSURE, 0x14, 2},
+ [M4SH_REG_PRESSURE_ISVALID] = {M4SH_TYPE_PRESSURE, 0x16, 1},
+ [M4SH_REG_PEDOMETER_VERSION] = {M4SH_TYPE_PEDOMETER, 0x0, 1},
+ [M4SH_REG_PEDOMETER_TESTCMD] = {M4SH_TYPE_PEDOMETER, 0x1, 1},
+ [M4SH_REG_PEDOMETER_ACTIVITY] = {M4SH_TYPE_PEDOMETER, 0x2, 1},
+ [M4SH_REG_PEDOMETER_EQUIPMENTTYPE] = {M4SH_TYPE_PEDOMETER, 0x3, 1},
+ [M4SH_REG_PEDOMETER_TOTALSTEPS] = {M4SH_TYPE_PEDOMETER, 0x4, 2},
+ [M4SH_REG_PEDOMETER_FLOORSCLIMBED] = {M4SH_TYPE_PEDOMETER, 0x6, 2},
+ [M4SH_REG_PEDOMETER_TOTATDISTANCE] = {M4SH_TYPE_PEDOMETER, 0x8, 4},
+ [M4SH_REG_PEDOMETER_CURRENTSPEED] = {M4SH_TYPE_PEDOMETER, 0xc, 4},
+ [M4SH_REG_PEDOMETER_REPORTEDDISTANCE] = {M4SH_TYPE_PEDOMETER, 0x10, 4},
+ [M4SH_REG_PEDOMETER_USERDISTANCE] = {M4SH_TYPE_PEDOMETER, 0x14, 4},
+ [M4SH_REG_TCMD_OPCODE] = {M4SH_TYPE_TCMD, 0x0, 1},
+ [M4SH_REG_LOG_LOGENABLE] = {M4SH_TYPE_LOG, 0x0, 8},
+ [M4SH_REG_LOG_ISLOGIMMEDIATE] = {M4SH_TYPE_LOG, 0x8, 1},
+ [M4SH_REG_FUSION_VERSION] = {M4SH_TYPE_FUSION, 0x0, 1},
+ [M4SH_REG_FUSION_DUMMY] = {M4SH_TYPE_FUSION, 0x1, 1},
+ [M4SH_REG_FUSION_SAMPLERATE] = {M4SH_TYPE_FUSION, 0x2, 2},
+ [M4SH_REG_FUSION_EULERPITCH] = {M4SH_TYPE_FUSION, 0x4, 4},
+ [M4SH_REG_FUSION_EULERROLL] = {M4SH_TYPE_FUSION, 0x8, 4},
+ [M4SH_REG_FUSION_EULERYAW] = {M4SH_TYPE_FUSION, 0xc, 4},
+ [M4SH_REG_FUSION_LOCALX] = {M4SH_TYPE_FUSION, 0x10, 4},
+ [M4SH_REG_FUSION_LOCALY] = {M4SH_TYPE_FUSION, 0x14, 4},
+ [M4SH_REG_FUSION_LOCALZ] = {M4SH_TYPE_FUSION, 0x18, 4},
+ [M4SH_REG_FUSION_WORLDX] = {M4SH_TYPE_FUSION, 0x1c, 4},
+ [M4SH_REG_FUSION_WORLDY] = {M4SH_TYPE_FUSION, 0x20, 4},
+ [M4SH_REG_FUSION_WORLDZ] = {M4SH_TYPE_FUSION, 0x24, 4},
+ [M4SH_REG_FUSION_HEADING] = {M4SH_TYPE_FUSION, 0x28, 2},
+ [M4SH_REG_FUSION_HEADING_ACCURACY] = {M4SH_TYPE_FUSION, 0x2a, 1},
+ [M4SH_REG_COMPASS_VERSION] = {M4SH_TYPE_COMPASS, 0x0, 1},
+ [M4SH_REG_COMPASS_DUMMY] = {M4SH_TYPE_COMPASS, 0x1, 1},
+ [M4SH_REG_COMPASS_SAMPLERATE] = {M4SH_TYPE_COMPASS, 0x2, 2},
+ [M4SH_REG_COMPASS_X] = {M4SH_TYPE_COMPASS, 0x4, 4},
+ [M4SH_REG_COMPASS_Y] = {M4SH_TYPE_COMPASS, 0x8, 4},
+ [M4SH_REG_COMPASS_Z] = {M4SH_TYPE_COMPASS, 0xc, 4},
+ [M4SH_REG_COMPASS_ACCURACY] = {M4SH_TYPE_COMPASS, 0x10, 1},
+ [M4SH_REG_GYRO_VERSION] = {M4SH_TYPE_GYRO, 0x0, 1},
+ [M4SH_REG_GYRO_DUMMY] = {M4SH_TYPE_GYRO, 0x1, 1},
+ [M4SH_REG_GYRO_SAMPLERATE] = {M4SH_TYPE_GYRO, 0x2, 2},
+ [M4SH_REG_GYRO_X] = {M4SH_TYPE_GYRO, 0x4, 4},
+ [M4SH_REG_GYRO_Y] = {M4SH_TYPE_GYRO, 0x8, 4},
+ [M4SH_REG_GYRO_Z] = {M4SH_TYPE_GYRO, 0xc, 4},
+ [M4SH_REG_METS_VERSION] = {M4SH_TYPE_METS, 0x0, 1},
+ [M4SH_REG_METS_METSACTIVITY] = {M4SH_TYPE_METS, 0x1, 1},
+ [M4SH_REG_METS_MSSAMPLETIME] = {M4SH_TYPE_METS, 0x2, 2},
+ [M4SH_REG_METS_METS] = {M4SH_TYPE_METS, 0x4, 4},
+ [M4SH_REG_METS_CALORIES] = {M4SH_TYPE_METS, 0x8, 4},
+ [M4SH_REG_USERSETTINGS_VERSION] = {M4SH_TYPE_USERSETTINGS, 0x0, 1},
+ [M4SH_REG_USERSETTINGS_USERAGE] = {M4SH_TYPE_USERSETTINGS, 0x1, 1},
+ [M4SH_REG_USERSETTINGS_USERGENDER] = {M4SH_TYPE_USERSETTINGS, 0x2, 1},
+ [M4SH_REG_USERSETTINGS_USERHEIGHT] = {M4SH_TYPE_USERSETTINGS, 0x3, 1},
+ [M4SH_REG_USERSETTINGS_USERWEIGHT] = {M4SH_TYPE_USERSETTINGS, 0x4, 2},
+ [M4SH_REG_USERSETTINGS_SCREENSTATUS] = {M4SH_TYPE_USERSETTINGS, 0x6, 1},
+ [M4SH_REG_USERSETTINGS_RTCRESET] = {M4SH_TYPE_USERSETTINGS, 0x7, 1},
+ [M4SH_REG_POWER_VERSION] = {M4SH_TYPE_POWER, 0x0, 1},
+ [M4SH_REG_POWER_DUMMY] = {M4SH_TYPE_POWER, 0x1, 1},
+ [M4SH_REG_POWER_STILLMODETIMEOUT] = {M4SH_TYPE_POWER, 0x2, 2},
+ [M4SH_REG_POWER_MOTIONDURATION] = {M4SH_TYPE_POWER, 0x4, 1},
+ [M4SH_REG_POWER_MOTIONTHRESHOLD] = {M4SH_TYPE_POWER, 0x5, 1},
+ [M4SH_REG_POWER_NOMOTIONDURATION] = {M4SH_TYPE_POWER, 0x6, 1},
+ [M4SH_REG_POWER_NOMOTIONTHRESHOLD] = {M4SH_TYPE_POWER, 0x7, 1},
+ [M4SH_REG_LOCATION_VERSION] = {M4SH_TYPE_LOCATION, 0x0, 1},
+ [M4SH_REG_LOCATION_SOURCE] = {M4SH_TYPE_LOCATION, 0x1, 1},
+ [M4SH_REG_LOCATION_SPEED] = {M4SH_TYPE_LOCATION, 0x2, 2},
+ [M4SH_REG_LOCATION_LATITUDE] = {M4SH_TYPE_LOCATION, 0x4, 4},
+ [M4SH_REG_LOCATION_LONGITUDE] = {M4SH_TYPE_LOCATION, 0x8, 4},
+ [M4SH_REG_LOCATION_ALTITUDE] = {M4SH_TYPE_LOCATION, 0xc, 2},
+ [M4SH_REG_DOWNLOAD_COMMAND] = {M4SH_TYPE_DOWNLOAD, 0x0, 1},
+ [M4SH_REG_DOWNLOAD_STATUS] = {M4SH_TYPE_DOWNLOAD, 0x1, 1},
+ [M4SH_REG_DOWNLOAD_SIZE] = {M4SH_TYPE_DOWNLOAD, 0x2, 2},
+ [M4SH_REG_DOWNLOAD_CHECKSUM] = {M4SH_TYPE_DOWNLOAD, 0x4, 4},
+ [M4SH_REG_DOWNLOAD_FILENAME] = {M4SH_TYPE_DOWNLOAD, 0x8, 16},
+ [M4SH_REG_DOWNLOAD_PACKET] = {M4SH_TYPE_DOWNLOAD, 0x18, 2048},
+ [M4SH_REG_AUDIO_VERSION] = {M4SH_TYPE_AUDIO, 0x0, 1},
+ [M4SH_REG_AUDIO_ENABLE] = {M4SH_TYPE_AUDIO, 0x1, 1},
+ [M4SH_REG_AUDIO_DUMMY] = {M4SH_TYPE_AUDIO, 0x2, 2},
+ [M4SH_REG_AUDIO_TOTALPACKETS] = {M4SH_TYPE_AUDIO, 0x4, 4},
+ [M4SH_REG_TIMEPIECE_VERSION] = {M4SH_TYPE_TIMEPIECE, 0x0, 1},
+ [M4SH_REG_TIMEPIECE_ENABLE] = {M4SH_TYPE_TIMEPIECE, 0x1, 1},
+ [M4SH_REG_TIMEPIECE_SAMPLERATE] = {M4SH_TYPE_TIMEPIECE, 0x2, 2},
+ [M4SH_REG_TIMEPIECE_OFFSETSTEPS] = {M4SH_TYPE_TIMEPIECE, 0x4, 4},
+ [M4SH_REG_WRIST_VERSION] = {M4SH_TYPE_WRIST, 0x0, 1},
+ [M4SH_REG_WRIST_ENABLE] = {M4SH_TYPE_WRIST, 0x1, 1},
+ [M4SH_REG_WRIST_INTERRUPTREASON] = {M4SH_TYPE_WRIST, 0x2, 1},
+ [M4SH_REG_WRIST_HOSTRESPONSE] = {M4SH_TYPE_WRIST, 0x3, 1},
+ [M4SH_REG_WRIST_FMONCHIP] = {M4SH_TYPE_WRIST, 0x4, 2},
+ [M4SH_REG_WRIST_FMONFILE] = {M4SH_TYPE_WRIST, 0x6, 2},
+ [M4SH_REG_GESTURE_VERSION] = {M4SH_TYPE_GESTURE, 0x0, 1},
+ [M4SH_REG_GESTURE_GESTURE1] = {M4SH_TYPE_GESTURE, 0x1, 1},
+ [M4SH_REG_GESTURE_CONFIDENCE1] = {M4SH_TYPE_GESTURE, 0x2, 1},
+ [M4SH_REG_GESTURE_VALUE1] = {M4SH_TYPE_GESTURE, 0x3, 1},
+ [M4SH_REG_GESTURE_GESTURE2] = {M4SH_TYPE_GESTURE, 0x4, 1},
+ [M4SH_REG_GESTURE_CONFIDENCE2] = {M4SH_TYPE_GESTURE, 0x5, 1},
+ [M4SH_REG_GESTURE_VALUE2] = {M4SH_TYPE_GESTURE, 0x6, 1},
+ [M4SH_REG_GESTURE_GESTURE3] = {M4SH_TYPE_GESTURE, 0x7, 1},
+ [M4SH_REG_GESTURE_CONFIDENCE3] = {M4SH_TYPE_GESTURE, 0x8, 1},
+ [M4SH_REG_GESTURE_VALUE3] = {M4SH_TYPE_GESTURE, 0x9, 1},
+ [M4SH_REG_PASSIVE_TIMESTAMP] = {M4SH_TYPE_PASSIVE, 0x0, 48},
+ [M4SH_REG_PASSIVE_STEPS] = {M4SH_TYPE_PASSIVE, 0x30, 48},
+ [M4SH_REG_PASSIVE_METS] = {M4SH_TYPE_PASSIVE, 0x60, 48},
+ [M4SH_REG_PASSIVE_FLOORSCLIMBED] = {M4SH_TYPE_PASSIVE, 0x90, 48},
+};
+
+static const unsigned int bank_size_tbl[M4SH_TYPE__NUM] = {
+ [M4SH_TYPE_ACCEL] = 28,
+ [M4SH_TYPE_TEMP] = 8,
+ [M4SH_TYPE_GENERAL] = 11,
+ [M4SH_TYPE_PRESSURE] = 23,
+ [M4SH_TYPE_PEDOMETER] = 24,
+ [M4SH_TYPE_TCMD] = 1,
+ [M4SH_TYPE_LOG] = 9,
+ [M4SH_TYPE_FUSION] = 43,
+ [M4SH_TYPE_COMPASS] = 17,
+ [M4SH_TYPE_GYRO] = 16,
+ [M4SH_TYPE_METS] = 12,
+ [M4SH_TYPE_USERSETTINGS] = 8,
+ [M4SH_TYPE_POWER] = 8,
+ [M4SH_TYPE_LOCATION] = 14,
+ [M4SH_TYPE_DOWNLOAD] = 2072,
+ [M4SH_TYPE_AUDIO] = 8,
+ [M4SH_TYPE_TIMEPIECE] = 8,
+ [M4SH_TYPE_WRIST] = 8,
+ [M4SH_TYPE_GESTURE] = 10,
+ [M4SH_TYPE_PASSIVE] = 192,
+};
+#endif /*__M4SENSORHUB_MEM_INTERNAL_H__ */