xref: /haiku/src/add-ons/kernel/drivers/audio/ac97/auich/io.h (revision c27f3926a089ccea811d8c3f669a857a7b7e1a73)
1130803f2SJérôme Duval /*
2130803f2SJérôme Duval  * Auich BeOS Driver for Intel Southbridge audio
3130803f2SJérôme Duval  *
4130803f2SJérôme Duval  * Copyright (c) 2003, Jerome Duval (jerome.duval@free.fr)
5130803f2SJérôme Duval  *
6130803f2SJérôme Duval  * Original code : BeOS Driver for Intel ICH AC'97 Link interface
7130803f2SJérôme Duval  * Copyright (c) 2002, Marcus Overhagen <marcus@overhagen.de>
8130803f2SJérôme Duval  *
9130803f2SJérôme Duval  * All rights reserved.
10130803f2SJérôme Duval  * Redistribution and use in source and binary forms, with or without modification,
11130803f2SJérôme Duval  * are permitted provided that the following conditions are met:
12130803f2SJérôme Duval  *
13130803f2SJérôme Duval  * - Redistributions of source code must retain the above copyright notice,
14130803f2SJérôme Duval  *   this list of conditions and the following disclaimer.
15130803f2SJérôme Duval  * - Redistributions in binary form must reproduce the above copyright notice,
16130803f2SJérôme Duval  *   this list of conditions and the following disclaimer in the documentation
17130803f2SJérôme Duval  *   and/or other materials provided with the distribution.
18130803f2SJérôme Duval  *
19130803f2SJérôme Duval  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20130803f2SJérôme Duval  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21130803f2SJérôme Duval  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22130803f2SJérôme Duval  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
23130803f2SJérôme Duval  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24130803f2SJérôme Duval  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
25130803f2SJérôme Duval  * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26130803f2SJérôme Duval  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
27130803f2SJérôme Duval  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
28130803f2SJérôme Duval  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29130803f2SJérôme Duval  *
30130803f2SJérôme Duval  */
31130803f2SJérôme Duval #ifndef _IO_H_
32130803f2SJérôme Duval #define _IO_H_
33130803f2SJérôme Duval 
34130803f2SJérôme Duval #include "config.h"
35130803f2SJérôme Duval 
36*c27f3926SJérôme Duval uint8  auich_reg_read_8(device_config *config, uint8 regno);
37*c27f3926SJérôme Duval uint16 auich_reg_read_16(device_config *config, uint8 regno);
38*c27f3926SJérôme Duval uint32 auich_reg_read_32(device_config *config, uint8 regno);
39130803f2SJérôme Duval 
40*c27f3926SJérôme Duval void auich_reg_write_8(device_config *config, uint8 regno, uint8 value);
41*c27f3926SJérôme Duval void auich_reg_write_16(device_config *config, uint8 regno, uint16 value);
42*c27f3926SJérôme Duval void auich_reg_write_32(device_config *config, uint8 regno, uint32 value);
43130803f2SJérôme Duval 
44*c27f3926SJérôme Duval uint16 auich_codec_read(device_config *config, uint8 regno);
45*c27f3926SJérôme Duval void auich_codec_write(device_config *config, uint8 regno, uint16 value);
46130803f2SJérôme Duval 
47130803f2SJérôme Duval #endif
48