blob: 616607955aafc4799d97da813e6c94b662596cab [file] [log] [blame]
Kyle Swenson8d8f6542021-03-15 11:02:55 -06001SI476x Driver Readme
2------------------------------------------------
3 Copyright (C) 2013 Andrey Smirnov <andrew.smirnov@gmail.com>
4
5TODO for the driver
6------------------------------
7
8- According to the SiLabs' datasheet it is possible to update the
9 firmware of the radio chip in the run-time, thus bringing it to the
10 most recent version. Unfortunately I couldn't find any mentioning of
11 the said firmware update for the old chips that I tested the driver
12 against, so for chips like that the driver only exposes the old
13 functionality.
14
15
16Parameters exposed over debugfs
17-------------------------------
18SI476x allow user to get multiple characteristics that can be very
19useful for EoL testing/RF performance estimation, parameters that have
20very little to do with V4L2 subsystem. Such parameters are exposed via
21debugfs and can be accessed via regular file I/O operations.
22
23The drivers exposes following files:
24
25* /sys/kernel/debug/<device-name>/acf
26 This file contains ACF(Automatically Controlled Features) status
27 information. The contents of the file is binary data of the
28 following layout:
29
30 Offset | Name | Description
31 ====================================================================
32 0x00 | blend_int | Flag, set when stereo separation has
33 | | crossed below the blend threshold
34 --------------------------------------------------------------------
35 0x01 | hblend_int | Flag, set when HiBlend cutoff
36 | | frequency is lower than threshold
37 --------------------------------------------------------------------
38 0x02 | hicut_int | Flag, set when HiCut cutoff
39 | | frequency is lower than threshold
40 --------------------------------------------------------------------
41 0x03 | chbw_int | Flag, set when channel filter
42 | | bandwidth is less than threshold
43 --------------------------------------------------------------------
44 0x04 | softmute_int | Flag indicating that softmute
45 | | attenuation has increased above
46 | | softmute threshold
47 --------------------------------------------------------------------
48 0x05 | smute | 0 - Audio is not soft muted
49 | | 1 - Audio is soft muted
50 --------------------------------------------------------------------
51 0x06 | smattn | Soft mute attenuation level in dB
52 --------------------------------------------------------------------
53 0x07 | chbw | Channel filter bandwidth in kHz
54 --------------------------------------------------------------------
55 0x08 | hicut | HiCut cutoff frequency in units of
56 | | 100Hz
57 --------------------------------------------------------------------
58 0x09 | hiblend | HiBlend cutoff frequency in units
59 | | of 100 Hz
60 --------------------------------------------------------------------
61 0x10 | pilot | 0 - Stereo pilot is not present
62 | | 1 - Stereo pilot is present
63 --------------------------------------------------------------------
64 0x11 | stblend | Stereo blend in %
65 --------------------------------------------------------------------
66
67
68* /sys/kernel/debug/<device-name>/rds_blckcnt
69 This file contains statistics about RDS receptions. It's binary data
70 has the following layout:
71
72 Offset | Name | Description
73 ====================================================================
74 0x00 | expected | Number of expected RDS blocks
75 --------------------------------------------------------------------
76 0x02 | received | Number of received RDS blocks
77 --------------------------------------------------------------------
78 0x04 | uncorrectable | Number of uncorrectable RDS blocks
79 --------------------------------------------------------------------
80
81* /sys/kernel/debug/<device-name>/agc
82 This file contains information about parameters pertaining to
83 AGC(Automatic Gain Control)
84
85 The layout is:
86 Offset | Name | Description
87 ====================================================================
88 0x00 | mxhi | 0 - FM Mixer PD high threshold is
89 | | not tripped
90 | | 1 - FM Mixer PD high threshold is
91 | | tripped
92 --------------------------------------------------------------------
93 0x01 | mxlo | ditto for FM Mixer PD low
94 --------------------------------------------------------------------
95 0x02 | lnahi | ditto for FM LNA PD high
96 --------------------------------------------------------------------
97 0x03 | lnalo | ditto for FM LNA PD low
98 --------------------------------------------------------------------
99 0x04 | fmagc1 | FMAGC1 attenuator resistance
100 | | (see datasheet for more detail)
101 --------------------------------------------------------------------
102 0x05 | fmagc2 | ditto for FMAGC2
103 --------------------------------------------------------------------
104 0x06 | pgagain | PGA gain in dB
105 --------------------------------------------------------------------
106 0x07 | fmwblang | FM/WB LNA Gain in dB
107 --------------------------------------------------------------------
108
109* /sys/kernel/debug/<device-name>/rsq
110 This file contains information about parameters pertaining to
111 RSQ(Received Signal Quality)
112
113 The layout is:
114 Offset | Name | Description
115 ====================================================================
116 0x00 | multhint | 0 - multipath value has not crossed
117 | | the Multipath high threshold
118 | | 1 - multipath value has crossed
119 | | the Multipath high threshold
120 --------------------------------------------------------------------
121 0x01 | multlint | ditto for Multipath low threshold
122 --------------------------------------------------------------------
123 0x02 | snrhint | 0 - received signal's SNR has not
124 | | crossed high threshold
125 | | 1 - received signal's SNR has
126 | | crossed high threshold
127 --------------------------------------------------------------------
128 0x03 | snrlint | ditto for low threshold
129 --------------------------------------------------------------------
130 0x04 | rssihint | ditto for RSSI high threshold
131 --------------------------------------------------------------------
132 0x05 | rssilint | ditto for RSSI low threshold
133 --------------------------------------------------------------------
134 0x06 | bltf | Flag indicating if seek command
135 | | reached/wrapped seek band limit
136 --------------------------------------------------------------------
137 0x07 | snr_ready | Indicates that SNR metrics is ready
138 --------------------------------------------------------------------
139 0x08 | rssiready | ditto for RSSI metrics
140 --------------------------------------------------------------------
141 0x09 | injside | 0 - Low-side injection is being used
142 | | 1 - High-side injection is used
143 --------------------------------------------------------------------
144 0x10 | afcrl | Flag indicating if AFC rails
145 --------------------------------------------------------------------
146 0x11 | valid | Flag indicating if channel is valid
147 --------------------------------------------------------------------
148 0x12 | readfreq | Current tuned frequency
149 --------------------------------------------------------------------
150 0x14 | freqoff | Signed frequency offset in units of
151 | | 2ppm
152 --------------------------------------------------------------------
153 0x15 | rssi | Signed value of RSSI in dBuV
154 --------------------------------------------------------------------
155 0x16 | snr | Signed RF SNR in dB
156 --------------------------------------------------------------------
157 0x17 | issi | Signed Image Strength Signal
158 | | indicator
159 --------------------------------------------------------------------
160 0x18 | lassi | Signed Low side adjacent Channel
161 | | Strength indicator
162 --------------------------------------------------------------------
163 0x19 | hassi | ditto fpr High side
164 --------------------------------------------------------------------
165 0x20 | mult | Multipath indicator
166 --------------------------------------------------------------------
167 0x21 | dev | Frequency deviation
168 --------------------------------------------------------------------
169 0x24 | assi | Adjacent channel SSI
170 --------------------------------------------------------------------
171 0x25 | usn | Ultrasonic noise indicator
172 --------------------------------------------------------------------
173 0x26 | pilotdev | Pilot deviation in units of 100 Hz
174 --------------------------------------------------------------------
175 0x27 | rdsdev | ditto for RDS
176 --------------------------------------------------------------------
177 0x28 | assidev | ditto for ASSI
178 --------------------------------------------------------------------
179 0x29 | strongdev | Frequency deviation
180 --------------------------------------------------------------------
181 0x30 | rdspi | RDS PI code
182 --------------------------------------------------------------------
183
184* /sys/kernel/debug/<device-name>/rsq_primary
185 This file contains information about parameters pertaining to
186 RSQ(Received Signal Quality) for primary tuner only. Layout is as
187 the one above.