1 /***************************************************************************
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
9 * Tuner abstraction layer
11 * Copyright (C) 2004 Jörg Hohensohn
13 * This program is free software; you can redistribute it and/or
14 * modify it under the terms of the GNU General Public License
15 * as published by the Free Software Foundation; either version 2
16 * of the License, or (at your option) any later version.
18 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
19 * KIND, either express or implied.
21 ****************************************************************************/
27 /** Settings to the tuner layer **/
30 RADIO_ALL
= -1, /* debug */
37 /* Put new general-purpose settings above this line */
38 __RADIO_SET_STANDARD_LAST
41 /** Readback from the tuner layer **/
47 /* RADIO_EVENT is an event that requests a screen update */
50 /* Put new general-purpose readback values above this line */
51 __RADIO_GET_STANDARD_LAST
55 /** Readback from the tuner RDS layer **/
61 /* Put new general-purpose readback values above this line */
62 __RADIO_GET_RDS_INFO_STANDARD_LAST
68 /* Basic region information */
78 /* Add new regions above this line */
87 int deemphasis
; /* in microseconds, usually 50 or 75 */
90 extern const struct fm_region_data fm_region_data
[TUNER_NUM_REGIONS
];
94 #if (CONFIG_PLATFORM & PLATFORM_HOSTED)
95 int tuner_set(int setting
, int value
);
96 int tuner_get(int setting
);
98 char* tuner_get_rds_info(int setting
);
102 #ifdef CONFIG_TUNER_MULTI
103 extern int tuner_detect_type(void);
104 extern int (*tuner_set
)(int setting
, int value
);
105 extern int (*tuner_get
)(int setting
);
106 #endif /* CONFIG_TUNER_MULTI */
108 /** Sanyo LV24020LP **/
109 #if (CONFIG_TUNER & LV24020LP)
110 /* Sansa c200, e200 */
111 #include "lv24020lp.h"
114 /** Samsung S1A0903X01 **/
115 #if (CONFIG_TUNER & S1A0903X01)
116 /* Ondio FM, FM Recorder */
117 #include "s1a0903x01.h"
120 /** Philips TEA5760 **/
121 #if (CONFIG_TUNER & TEA5760)
125 /** Philips TEA5767 **/
126 #if (CONFIG_TUNER & TEA5767)
127 /* Ondio FM, FM Recorder, Recorder V2, iRiver h100/h300, iAudio x5 */
131 /* Silicon Labs 4700 */
132 #if (CONFIG_TUNER & SI4700)
136 /* RDA micro RDA5802 */
137 #if (CONFIG_TUNER & RDA5802)
141 /* Apple remote tuner */
142 #if (CONFIG_TUNER & IPOD_REMOTE_TUNER)
143 #include "ipod_remote_tuner.h"
146 #endif /* PLATFORM_HOSTED */
148 /* Additional messages that get enumerated after tuner driver headers */
153 __RADIO_SET_ADDITIONAL_START
= __RADIO_SET_STANDARD_LAST
-1,
154 #ifdef HAVE_RADIO_REGION
164 __RADIO_GET_ADDITIONAL_START
= __RADIO_GET_STANDARD_LAST
-1,
171 void tuner_init(void) INIT_ATTR
;
173 #endif /* #if CONFIG_TUNER */
175 #endif /* __TUNER_H__ */