Clip+: LCD display (with FlynDice help)
[kugel-rb.git] / firmware / export / si4700.h
blobfcc71cb2827a53d09b646f80960821d5b2ad6dfd
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
9 * $Id$
11 * Tuner header for the Silicon Labs SI4700
13 * Copyright (C) 2008 Dave Chapman
15 * This program is free software; you can redistribute it and/or
16 * modify it under the terms of the GNU General Public License
17 * as published by the Free Software Foundation; either version 2
18 * of the License, or (at your option) any later version.
20 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
21 * KIND, either express or implied.
23 ****************************************************************************/
25 #ifndef _SI4700_H_
26 #define _SI4700_H_
28 #define HAVE_RADIO_REGION
30 struct si4700_region_data
32 unsigned char deemphasis; /* 0: 75us, 1: 50us */
33 unsigned char band; /* 0: us/europe, 1: japan */
34 unsigned char spacing; /* 0: us/australia (200kHz), 1: europe/japan (100kHz), 2: (50kHz) */
35 } __attribute__((packed));
37 extern const struct si4700_region_data si4700_region_data[TUNER_NUM_REGIONS];
39 struct si4700_dbg_info
41 uint16_t regs[16]; /* Read registers */
44 void si4700_init(void);
45 int si4700_set(int setting, int value);
46 int si4700_get(int setting);
47 void si4700_dbg_info(struct si4700_dbg_info *nfo);
49 #ifndef CONFIG_TUNER_MULTI
50 #define tuner_set si4700_set
51 #define tuner_get si4700_get
52 #endif
54 #endif /* _SI4700_H_ */