si470x_reg.h revision 1.1 1 1.1 jakllsch /* $NetBSD: si470x_reg.h,v 1.1 2013/01/13 01:15:02 jakllsch Exp $ */
2 1.1 jakllsch
3 1.1 jakllsch /*
4 1.1 jakllsch * Copyright (c) 2012 Jonathan A. Kollasch
5 1.1 jakllsch * All rights reserved.
6 1.1 jakllsch *
7 1.1 jakllsch * Redistribution and use in source and binary forms, with or without
8 1.1 jakllsch * modification, are permitted provided that the following conditions
9 1.1 jakllsch * are met:
10 1.1 jakllsch * 1. Redistributions of source code must retain the above copyright
11 1.1 jakllsch * notice, this list of conditions and the following disclaimer.
12 1.1 jakllsch * 2. Redistributions in binary form must reproduce the above copyright
13 1.1 jakllsch * notice, this list of conditions and the following disclaimer in the
14 1.1 jakllsch * documentation and/or other materials provided with the distribution.
15 1.1 jakllsch *
16 1.1 jakllsch * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 1.1 jakllsch * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
18 1.1 jakllsch * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19 1.1 jakllsch * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
20 1.1 jakllsch * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
21 1.1 jakllsch * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
22 1.1 jakllsch * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
23 1.1 jakllsch * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 1.1 jakllsch * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
25 1.1 jakllsch * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
26 1.1 jakllsch * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 1.1 jakllsch */
28 1.1 jakllsch
29 1.1 jakllsch #ifndef _DEV_IC_SI470X_REG_H_
30 1.1 jakllsch #define _DEV_IC_SI470X_REG_H_
31 1.1 jakllsch
32 1.1 jakllsch #define __BIT16(x) ((uint16_t)__BIT(x))
33 1.1 jakllsch #define __BITS16(x, y) ((uint16_t)__BITS((x), (y)))
34 1.1 jakllsch
35 1.1 jakllsch #define SI470X_DEVICEID 0x00
36 1.1 jakllsch #define SI470X_PN __BITS16(15, 12)
37 1.1 jakllsch #define SI470X_MFGID __BITS16(11, 0)
38 1.1 jakllsch
39 1.1 jakllsch #define SI470X_CHIPID 0x01
40 1.1 jakllsch #define SI470X_REV __BITS16(15, 10)
41 1.1 jakllsch #define SI470X_DEV __BITS16(9, 6)
42 1.1 jakllsch #define SI470X_FIRMWARE __BITS16(5, 0)
43 1.1 jakllsch
44 1.1 jakllsch #define SI470X_POWERCFG 0x02
45 1.1 jakllsch #define SI470X_DSMUTE __BIT16(15)
46 1.1 jakllsch #define SI470X_DMUTE __BIT16(14)
47 1.1 jakllsch #define SI470X_MONO __BIT16(13)
48 1.1 jakllsch #define SI470X_RDSM __BIT16(11)
49 1.1 jakllsch #define SI470X_SKMODE __BIT16(10)
50 1.1 jakllsch #define SI470X_SEEKUP __BIT16(9)
51 1.1 jakllsch #define SI470X_SEEK __BIT16(8)
52 1.1 jakllsch #define SI470X_DISABLE __BIT16(6)
53 1.1 jakllsch #define SI470X_ENABLE __BIT16(0)
54 1.1 jakllsch
55 1.1 jakllsch #define SI470X_CHANNEL 0x03
56 1.1 jakllsch #define SI470X_TUNE __BIT16(15)
57 1.1 jakllsch #define SI470X_CHAN __BITS16(9, 0)
58 1.1 jakllsch
59 1.1 jakllsch #define SI470X_SYSCONFIG1 0x04
60 1.1 jakllsch #define SI470X_RDSIEN __BIT16(15)
61 1.1 jakllsch #define SI470X_STCIEN __BIT16(14)
62 1.1 jakllsch #define SI470X_RDS __BIT16(12)
63 1.1 jakllsch #define SI470X_DE __BIT16(11)
64 1.1 jakllsch #define SI470X_AGCD __BIT16(10)
65 1.1 jakllsch #define SI470X_BLNDADJ __BITS16(7, 6)
66 1.1 jakllsch #define SI470X_GPIO3 __BITS16(5, 4)
67 1.1 jakllsch #define SI470X_GPIO2 __BITS16(3, 2)
68 1.1 jakllsch #define SI470X_GPIO1 __BITS16(1, 0)
69 1.1 jakllsch
70 1.1 jakllsch #define SI470X_SYSCONFIG2 0x05
71 1.1 jakllsch #define SI470X_SEEKTH __BITS16(15, 8)
72 1.1 jakllsch #define SI470X_BAND __BITS16(7, 6)
73 1.1 jakllsch #define SI470X_SPACE __BITS16(5, 4)
74 1.1 jakllsch #define SI470X_VOLUME __BITS16(3, 0)
75 1.1 jakllsch
76 1.1 jakllsch #define SI470X_SYSCONFIG3 0x06
77 1.1 jakllsch #define SI470X_SMUTER __BITS16(15, 14)
78 1.1 jakllsch #define SI470X_SMUTEA __BITS16(13, 12)
79 1.1 jakllsch #define SI470X_VOLEXT __BIT16(8)
80 1.1 jakllsch #define SI470X_SKSNR __BITS16(7, 4)
81 1.1 jakllsch #define SI470X_SKCNT __BITS16(3, 0)
82 1.1 jakllsch
83 1.1 jakllsch #define SI470X_TEST1 0x07
84 1.1 jakllsch #define SI470X_XOSCEN __BIT16(15)
85 1.1 jakllsch #define SI470X_AHIZEN __BIT16(14)
86 1.1 jakllsch
87 1.1 jakllsch #define SI470X_TEST2 0x08
88 1.1 jakllsch
89 1.1 jakllsch #define SI470X_BOOTCONFIG 0x09
90 1.1 jakllsch
91 1.1 jakllsch #define SI470X_STATUSRSSI 0x0a
92 1.1 jakllsch #define SI470X_RDSR __BIT16(15)
93 1.1 jakllsch #define SI470X_STC __BIT16(14)
94 1.1 jakllsch #define SI470X_SF_BL __BIT16(13)
95 1.1 jakllsch #define SI470X_AFCRL __BIT16(12)
96 1.1 jakllsch #define SI470X_RDSS __BIT16(11)
97 1.1 jakllsch #define SI470X_BLERA __BITS16(9, 10)
98 1.1 jakllsch #define SI470X_ST __BIT16(8)
99 1.1 jakllsch #define SI470X_RSSI __BITS16(7, 0)
100 1.1 jakllsch
101 1.1 jakllsch #define SI470X_READCHANNEL 0x0b
102 1.1 jakllsch #define SI470X_BLERB __BITS16(15, 14)
103 1.1 jakllsch #define SI470X_BLERC __BITS16(13, 12)
104 1.1 jakllsch #define SI470X_BLERD __BITS16(11, 10)
105 1.1 jakllsch #define SI470X_READCHAN __BITS16(9, 0)
106 1.1 jakllsch
107 1.1 jakllsch #define SI470X_RDSA 0x0c
108 1.1 jakllsch #define SI470X_RDSB 0x0d
109 1.1 jakllsch #define SI470X_RDSC 0x0e
110 1.1 jakllsch #define SI470X_RDSD 0x0f
111 1.1 jakllsch
112 1.1 jakllsch #endif /* _DEV_IC_SI470X_REG_H_ */
113