• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ****************************************************************************
11  ****************************************************************************/
12 #ifndef AKM8975_H
13 #define AKM8975_H
14 
15 #include <linux/ioctl.h>
16 
17 #define AK8975_MODE_SNG_MEASURE 0x01
18 #define AK8975_MODE_SELF_TEST 0x08
19 #define AK8975_MODE_FUSE_ACCESS 0x0F
20 #define AK8975_MODE_POWER_DOWN 0x00
21 
22 #define RBUFF_SIZE 8
23 
24 #define AK8975_REG_WIA 0x00
25 #define AK8975_REG_INFO 0x01
26 #define AK8975_REG_ST1 0x02
27 #define AK8975_REG_HXL 0x03
28 #define AK8975_REG_HXH 0x04
29 #define AK8975_REG_HYL 0x05
30 #define AK8975_REG_HYH 0x06
31 #define AK8975_REG_HZL 0x07
32 #define AK8975_REG_HZH 0x08
33 #define AK8975_REG_ST2 0x09
34 #define AK8975_REG_CNTL 0x0A
35 #define AK8975_REG_RSV 0x0B
36 #define AK8975_REG_ASTC 0x0C
37 #define AK8975_REG_TS1 0x0D
38 #define AK8975_REG_TS2 0x0E
39 #define AK8975_REG_I2CDIS 0x0F
40 
41 #define AK8975_FUSE_ASAX 0x10
42 #define AK8975_FUSE_ASAY 0x11
43 #define AK8975_FUSE_ASAZ 0x12
44 
45 #define AKMIO 0xA1
46 
47 #define ECS_IOCTL_WRITE _IOW(AKMIO, 0x02, char[5])
48 #define ECS_IOCTL_READ _IOWR(AKMIO, 0x03, char[5])
49 #define ECS_IOCTL_GETDATA _IOR(AKMIO, 0x08, char[RBUFF_SIZE])
50 #define ECS_IOCTL_SET_YPR _IOW(AKMIO, 0x0C, short[12])
51 #define ECS_IOCTL_GET_OPEN_STATUS _IOR(AKMIO, 0x0D, int)
52 #define ECS_IOCTL_GET_CLOSE_STATUS _IOR(AKMIO, 0x0E, int)
53 #define ECS_IOCTL_GET_DELAY _IOR(AKMIO, 0x30, short)
54 
55 #define ECS_IOCTL_APP_SET_MFLAG _IOW(AKMIO, 0x11, short)
56 #define ECS_IOCTL_APP_GET_MFLAG _IOW(AKMIO, 0x12, short)
57 #define ECS_IOCTL_APP_SET_AFLAG _IOW(AKMIO, 0x13, short)
58 #define ECS_IOCTL_APP_GET_AFLAG _IOR(AKMIO, 0x14, short)
59 #define ECS_IOCTL_APP_SET_DELAY _IOW(AKMIO, 0x18, short)
60 #define ECS_IOCTL_APP_GET_DELAY ECS_IOCTL_GET_DELAY
61 #define ECS_IOCTL_APP_SET_MVFLAG _IOW(AKMIO, 0x19, short)
62 #define ECS_IOCTL_APP_GET_MVFLAG _IOR(AKMIO, 0x1A, short)
63 #define ECS_IOCTL_APP_SET_TFLAG _IOR(AKMIO, 0x15, short)
64 
65 #define ECS_INTR 140
66 
67 struct akm8975_platform_data {
68  int intr;
69 };
70 
71 #endif
72 
73