1 /*
2 ** =============================================================================
3 ** Copyright (c) 2016 Texas Instruments Inc.
4 **
5 ** This program is free software; you can redistribute it and/or modify it under
6 ** the terms of the GNU General Public License as published by the Free Software
7 ** Foundation; version 2.
8 **
9 ** This program is distributed in the hope that it will be useful, but WITHOUT
10 ** ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11 ** FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12 **
13 ** You should have received a copy of the GNU General Public License along with
14 ** this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
15 ** Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 **
17 ** File:
18 ** tas2557-misc.h
19 **
20 ** Description:
21 ** header file for tas2557-misc.c
22 **
23 ** =============================================================================
24 */
26 #ifndef _TAS2557_MISC_H
27 #define _TAS2557_MISC_H
29 #define FW_NAME_SIZE 64
30 #define FW_DESCRIPTION_SIZE 256
31 #define PROGRAM_BUF_SIZE (5 + FW_NAME_SIZE + FW_DESCRIPTION_SIZE)
32 #define CONFIGURATION_BUF_SIZE (8 + FW_NAME_SIZE + FW_DESCRIPTION_SIZE)
34 #define TIAUDIO_CMD_REG_WITE 1
35 #define TIAUDIO_CMD_REG_READ 2
36 #define TIAUDIO_CMD_DEBUG_ON 3
37 #define TIAUDIO_CMD_PROGRAM 4
38 #define TIAUDIO_CMD_CONFIGURATION 5
39 #define TIAUDIO_CMD_FW_TIMESTAMP 6
40 #define TIAUDIO_CMD_CALIBRATION 7
41 #define TIAUDIO_CMD_SAMPLERATE 8
42 #define TIAUDIO_CMD_BITRATE 9
43 #define TIAUDIO_CMD_DACVOLUME 10
44 #define TIAUDIO_CMD_SPEAKER 11
45 #define TIAUDIO_CMD_FW_RELOAD 12
47 #define TAS2557_MAGIC_NUMBER 0x32353535 /* '2557' */
49 #define SMARTPA_SPK_DAC_VOLUME _IOWR(TAS2557_MAGIC_NUMBER, 1, unsigned long)
50 #define SMARTPA_SPK_POWER_ON _IOWR(TAS2557_MAGIC_NUMBER, 2, unsigned long)
51 #define SMARTPA_SPK_POWER_OFF _IOWR(TAS2557_MAGIC_NUMBER, 3, unsigned long)
52 #define SMARTPA_SPK_SWITCH_PROGRAM _IOWR(TAS2557_MAGIC_NUMBER, 4, unsigned long)
53 #define SMARTPA_SPK_SWITCH_CONFIGURATION _IOWR(TAS2557_MAGIC_NUMBER, 5, unsigned long)
54 #define SMARTPA_SPK_SWITCH_CALIBRATION _IOWR(TAS2557_MAGIC_NUMBER, 6, unsigned long)
55 #define SMARTPA_SPK_SET_SAMPLERATE _IOWR(TAS2557_MAGIC_NUMBER, 7, unsigned long)
56 #define SMARTPA_SPK_SET_BITRATE _IOWR(TAS2557_MAGIC_NUMBER, 8, unsigned long)
58 extern int tas2557_register_misc(struct tas2557_priv *pTAS2557);
59 extern int tas2557_deregister_misc(struct tas2557_priv *pTAS2557);
61 #endif /* _TAS2557_MISC_H */