2 * stmp378x: AUDIOOUT register definitions
4 * Copyright (c) 2008 Freescale Semiconductor
5 * Copyright 2008 Embedded Alley Solutions, Inc All Rights Reserved.
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 #define REGS_AUDIOOUT_BASE (STMP3XXX_REGS_BASE + 0x48000)
22 #define REGS_AUDIOOUT_PHYS 0x80048000
23 #define REGS_AUDIOOUT_SIZE 0x2000
25 #define HW_AUDIOOUT_CTRL 0x0
26 #define BM_AUDIOOUT_CTRL_RUN 0x00000001
27 #define BP_AUDIOOUT_CTRL_RUN 0
28 #define BM_AUDIOOUT_CTRL_FIFO_ERROR_IRQ_EN 0x00000002
29 #define BM_AUDIOOUT_CTRL_FIFO_OVERFLOW_IRQ 0x00000004
30 #define BM_AUDIOOUT_CTRL_FIFO_UNDERFLOW_IRQ 0x00000008
31 #define BM_AUDIOOUT_CTRL_WORD_LENGTH 0x00000040
32 #define BM_AUDIOOUT_CTRL_CLKGATE 0x40000000
33 #define BM_AUDIOOUT_CTRL_SFTRST 0x80000000
35 #define HW_AUDIOOUT_STAT 0x10
37 #define HW_AUDIOOUT_DACSRR 0x20
38 #define BM_AUDIOOUT_DACSRR_SRC_FRAC 0x00001FFF
39 #define BP_AUDIOOUT_DACSRR_SRC_FRAC 0
40 #define BM_AUDIOOUT_DACSRR_SRC_INT 0x001F0000
41 #define BP_AUDIOOUT_DACSRR_SRC_INT 16
42 #define BM_AUDIOOUT_DACSRR_SRC_HOLD 0x07000000
43 #define BP_AUDIOOUT_DACSRR_SRC_HOLD 24
44 #define BM_AUDIOOUT_DACSRR_BASEMULT 0x70000000
45 #define BP_AUDIOOUT_DACSRR_BASEMULT 28
47 #define HW_AUDIOOUT_DACVOLUME 0x30
48 #define BM_AUDIOOUT_DACVOLUME_MUTE_RIGHT 0x00000100
49 #define BM_AUDIOOUT_DACVOLUME_MUTE_LEFT 0x01000000
50 #define BM_AUDIOOUT_DACVOLUME_EN_ZCD 0x02000000
52 #define HW_AUDIOOUT_DACDEBUG 0x40
54 #define HW_AUDIOOUT_HPVOL 0x50
55 #define BM_AUDIOOUT_HPVOL_MUTE 0x01000000
56 #define BM_AUDIOOUT_HPVOL_EN_MSTR_ZCD 0x02000000
58 #define HW_AUDIOOUT_PWRDN 0x70
59 #define BM_AUDIOOUT_PWRDN_HEADPHONE 0x00000001
60 #define BP_AUDIOOUT_PWRDN_HEADPHONE 0
61 #define BM_AUDIOOUT_PWRDN_CAPLESS 0x00000010
62 #define BM_AUDIOOUT_PWRDN_ADC 0x00000100
63 #define BM_AUDIOOUT_PWRDN_DAC 0x00001000
64 #define BM_AUDIOOUT_PWRDN_RIGHT_ADC 0x00010000
65 #define BM_AUDIOOUT_PWRDN_SPEAKER 0x01000000
67 #define HW_AUDIOOUT_REFCTRL 0x80
68 #define BM_AUDIOOUT_REFCTRL_VAG_VAL 0x000000F0
69 #define BP_AUDIOOUT_REFCTRL_VAG_VAL 4
70 #define BM_AUDIOOUT_REFCTRL_ADC_REFVAL 0x00000F00
71 #define BP_AUDIOOUT_REFCTRL_ADC_REFVAL 8
72 #define BM_AUDIOOUT_REFCTRL_ADJ_VAG 0x00001000
73 #define BM_AUDIOOUT_REFCTRL_ADJ_ADC 0x00002000
74 #define BM_AUDIOOUT_REFCTRL_BIAS_CTRL 0x00030000
75 #define BP_AUDIOOUT_REFCTRL_BIAS_CTRL 16
76 #define BM_AUDIOOUT_REFCTRL_LOW_PWR 0x00080000
77 #define BM_AUDIOOUT_REFCTRL_VBG_ADJ 0x00700000
78 #define BP_AUDIOOUT_REFCTRL_VBG_ADJ 20
79 #define BM_AUDIOOUT_REFCTRL_XTAL_BGR_BIAS 0x01000000
80 #define BM_AUDIOOUT_REFCTRL_RAISE_REF 0x02000000
82 #define HW_AUDIOOUT_ANACTRL 0x90
83 #define BM_AUDIOOUT_ANACTRL_HP_CLASSAB 0x00000010
84 #define BM_AUDIOOUT_ANACTRL_HP_HOLD_GND 0x00000020
86 #define HW_AUDIOOUT_TEST 0xA0
87 #define BM_AUDIOOUT_TEST_HP_I1_ADJ 0x00C00000
88 #define BP_AUDIOOUT_TEST_HP_I1_ADJ 22
90 #define HW_AUDIOOUT_BISTCTRL 0xB0
92 #define HW_AUDIOOUT_BISTSTAT0 0xC0
94 #define HW_AUDIOOUT_BISTSTAT1 0xD0
96 #define HW_AUDIOOUT_ANACLKCTRL 0xE0
97 #define BM_AUDIOOUT_ANACLKCTRL_CLKGATE 0x80000000
99 #define HW_AUDIOOUT_DATA 0xF0
101 #define HW_AUDIOOUT_SPEAKERCTRL 0x100
102 #define BM_AUDIOOUT_SPEAKERCTRL_MUTE 0x01000000
104 #define HW_AUDIOOUT_VERSION 0x200