1 | /*************************************************************************************
|
---|
2 | * Copyright (C) 2005 Bogdan D. [email protected]
|
---|
3 | *
|
---|
4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this
|
---|
5 | * software and associated documentation files (the "Software"), to deal in the Software
|
---|
6 | * without restriction, including without limitation the rights to use, copy, modify,
|
---|
7 | * merge, publish, distribute, sublicense, and/or sell copies of the Software,
|
---|
8 | * and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
---|
9 | *
|
---|
10 | * The above copyright notice and this permission notice shall be included in all copies or
|
---|
11 | * substantial portions of the Software.
|
---|
12 | *
|
---|
13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
---|
14 | * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
|
---|
15 | * AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM,
|
---|
16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
---|
17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
---|
18 | *
|
---|
19 | * Except as contained in this notice, the name of the author shall not be used in advertising or
|
---|
20 | * otherwise to promote the sale, use or other dealings in this Software without prior written
|
---|
21 | * authorization from the author.
|
---|
22 | *
|
---|
23 | * Revision 1.3 2005/09/24 21:56:00 bogdand
|
---|
24 | * Changed the license to a X/MIT one
|
---|
25 | *
|
---|
26 | * Revision 1.2 2005/07/01 22:43:11 daniels
|
---|
27 | * Change all misc.h and os.h references to <X11/foo.h>.
|
---|
28 | *
|
---|
29 | *
|
---|
30 | ************************************************************************************/
|
---|
31 |
|
---|
32 | #ifndef __UDA1380_H__
|
---|
33 | #define __UDA1380_H__
|
---|
34 |
|
---|
35 | #include "xf86i2c.h"
|
---|
36 |
|
---|
37 | typedef struct {
|
---|
38 | I2CDevRec d;
|
---|
39 |
|
---|
40 | CARD16 analog_mixer_settings; /* register 0x03 */
|
---|
41 |
|
---|
42 | } UDA1380Rec, *UDA1380Ptr;
|
---|
43 |
|
---|
44 | #define UDA1380_ADDR_1 0x30
|
---|
45 | #define UDA1380_ADDR_2 0x34
|
---|
46 |
|
---|
47 | UDA1380Ptr Detect_uda1380(I2CBusPtr b, I2CSlaveAddr addr);
|
---|
48 | Bool uda1380_init(UDA1380Ptr t);
|
---|
49 | void uda1380_shutdown(UDA1380Ptr t);
|
---|
50 | void uda1380_setvolume(UDA1380Ptr t, INT32);
|
---|
51 | void uda1380_mute(UDA1380Ptr t, Bool);
|
---|
52 | void uda1380_setparameters(UDA1380Ptr t);
|
---|
53 | void uda1380_getstatus(UDA1380Ptr t);
|
---|
54 | void uda1380_dumpstatus(UDA1380Ptr t);
|
---|
55 |
|
---|
56 | #define UDA1380SymbolsList \
|
---|
57 | "Detect_uda1380", \
|
---|
58 | "uda1380_init", \
|
---|
59 | "uda1380_shutdown", \
|
---|
60 | "uda1380_setvolume", \
|
---|
61 | "uda1380_mute", \
|
---|
62 | "uda1380_setparameters", \
|
---|
63 | "uda1380_getstatus", \
|
---|
64 | "uda1380_dumpstatus"
|
---|
65 |
|
---|
66 | #define xf86_Detect_uda1380 ((UDA1380Ptr (*)(I2CBusPtr, I2CSlaveAddr))LoaderSymbol("Detect_uda1380"))
|
---|
67 | #define xf86_uda1380_init ((Bool (*)(UDA1380Ptr))LoaderSymbol("uda1380_init"))
|
---|
68 | #define xf86_uda1380_shutdown ((void (*)(UDA1380Ptr))LoaderSymbol("uda1380_shutdown"))
|
---|
69 | #define xf86_uda1380_setvolume ((void (*)(UDA1380Ptr, CARD16))LoaderSymbol("uda1380_setvolume"))
|
---|
70 | #define xf86_uda1380_mute ((void (*)(UDA1380Ptr, Bool))LoaderSymbol("uda1380_mute"))
|
---|
71 | #define xf86_uda1380_setparameters ((void (*)(UDA1380Ptr))LoaderSymbol("uda1380_setparameters"))
|
---|
72 | #define xf86_uda1380_getstatus ((void (*)(UDA1380Ptr))LoaderSymbol("uda1380_getstatus"))
|
---|
73 | #define xf86_uda1380_dumpstatus ((void (*)(UDA1380Ptr))LoaderSymbol("uda1380_dumpstatus"))
|
---|
74 |
|
---|
75 | #endif
|
---|