blob: 677512566f15d334018fe490cd3f0dc60c3d7f02 [file] [log] [blame]
Mauro Carvalho Chehabc0d01382016-07-17 20:44:13 -03001.. include:: <isonum.txt>
2
3
4The SI476x Driver
5=================
6
7Copyright |copy| 2013 Andrey Smirnov <andrew.smirnov@gmail.com>
Andrey Smirnovb879a9c2013-04-18 20:46:08 -03008
9TODO for the driver
Mauro Carvalho Chehabc0d01382016-07-17 20:44:13 -030010-------------------
Andrey Smirnovb879a9c2013-04-18 20:46:08 -030011
12- According to the SiLabs' datasheet it is possible to update the
13 firmware of the radio chip in the run-time, thus bringing it to the
14 most recent version. Unfortunately I couldn't find any mentioning of
15 the said firmware update for the old chips that I tested the driver
16 against, so for chips like that the driver only exposes the old
17 functionality.
18
19
20Parameters exposed over debugfs
21-------------------------------
22SI476x allow user to get multiple characteristics that can be very
23useful for EoL testing/RF performance estimation, parameters that have
24very little to do with V4L2 subsystem. Such parameters are exposed via
25debugfs and can be accessed via regular file I/O operations.
26
27The drivers exposes following files:
28
29* /sys/kernel/debug/<device-name>/acf
30 This file contains ACF(Automatically Controlled Features) status
31 information. The contents of the file is binary data of the
32 following layout:
33
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030034 .. tabularcolumns:: |p{7ex}|p{12ex}|L|
35
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030036 ============= ============== ====================================
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030037 Offset Name Description
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030038 ============= ============== ====================================
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030039 0x00 blend_int Flag, set when stereo separation has
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030040 crossed below the blend threshold
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030041 0x01 hblend_int Flag, set when HiBlend cutoff
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030042 frequency is lower than threshold
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030043 0x02 hicut_int Flag, set when HiCut cutoff
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030044 frequency is lower than threshold
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030045 0x03 chbw_int Flag, set when channel filter
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030046 bandwidth is less than threshold
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030047 0x04 softmute_int Flag indicating that softmute
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030048 attenuation has increased above
49 softmute threshold
50 0x05 smute 0 - Audio is not soft muted
51 1 - Audio is soft muted
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030052 0x06 smattn Soft mute attenuation level in dB
53 0x07 chbw Channel filter bandwidth in kHz
54 0x08 hicut HiCut cutoff frequency in units of
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030055 100Hz
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030056 0x09 hiblend HiBlend cutoff frequency in units
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030057 of 100 Hz
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030058 0x10 pilot 0 - Stereo pilot is not present
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030059 1 - Stereo pilot is present
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030060 0x11 stblend Stereo blend in %
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030061 ============= ============== ====================================
Andrey Smirnovb879a9c2013-04-18 20:46:08 -030062
63
64* /sys/kernel/debug/<device-name>/rds_blckcnt
65 This file contains statistics about RDS receptions. It's binary data
66 has the following layout:
67
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030068 .. tabularcolumns:: |p{7ex}|p{12ex}|L|
69
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030070 ============= ============== ====================================
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030071 Offset Name Description
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030072 ============= ============== ====================================
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030073 0x00 expected Number of expected RDS blocks
74 0x02 received Number of received RDS blocks
75 0x04 uncorrectable Number of uncorrectable RDS blocks
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030076 ============= ============== ====================================
Andrey Smirnovb879a9c2013-04-18 20:46:08 -030077
78* /sys/kernel/debug/<device-name>/agc
79 This file contains information about parameters pertaining to
80 AGC(Automatic Gain Control)
81
82 The layout is:
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030083
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030084 .. tabularcolumns:: |p{7ex}|p{12ex}|L|
85
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030086 ============= ============== ====================================
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030087 Offset Name Description
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030088 ============= ============== ====================================
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030089 0x00 mxhi 0 - FM Mixer PD high threshold is
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030090 not tripped
91 1 - FM Mixer PD high threshold is
92 tripped
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030093 0x01 mxlo ditto for FM Mixer PD low
94 0x02 lnahi ditto for FM LNA PD high
95 0x03 lnalo ditto for FM LNA PD low
96 0x04 fmagc1 FMAGC1 attenuator resistance
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -030097 (see datasheet for more detail)
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -030098 0x05 fmagc2 ditto for FMAGC2
99 0x06 pgagain PGA gain in dB
100 0x07 fmwblang FM/WB LNA Gain in dB
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300101 ============= ============== ====================================
Andrey Smirnovb879a9c2013-04-18 20:46:08 -0300102
103* /sys/kernel/debug/<device-name>/rsq
104 This file contains information about parameters pertaining to
105 RSQ(Received Signal Quality)
106
107 The layout is:
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300108
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300109 .. tabularcolumns:: |p{7ex}|p{12ex}|p{60ex}|
110
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300111 ============= ============== ====================================
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300112 Offset Name Description
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300113 ============= ============== ====================================
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300114 0x00 multhint 0 - multipath value has not crossed
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300115 the Multipath high threshold
116 1 - multipath value has crossed
117 the Multipath high threshold
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300118 0x01 multlint ditto for Multipath low threshold
119 0x02 snrhint 0 - received signal's SNR has not
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300120 crossed high threshold
121 1 - received signal's SNR has
122 crossed high threshold
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300123 0x03 snrlint ditto for low threshold
124 0x04 rssihint ditto for RSSI high threshold
125 0x05 rssilint ditto for RSSI low threshold
126 0x06 bltf Flag indicating if seek command
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300127 reached/wrapped seek band limit
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300128 0x07 snr_ready Indicates that SNR metrics is ready
129 0x08 rssiready ditto for RSSI metrics
130 0x09 injside 0 - Low-side injection is being used
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300131 1 - High-side injection is used
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300132 0x10 afcrl Flag indicating if AFC rails
133 0x11 valid Flag indicating if channel is valid
134 0x12 readfreq Current tuned frequency
135 0x14 freqoff Signed frequency offset in units of
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300136 2ppm
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300137 0x15 rssi Signed value of RSSI in dBuV
138 0x16 snr Signed RF SNR in dB
139 0x17 issi Signed Image Strength Signal
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300140 indicator
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300141 0x18 lassi Signed Low side adjacent Channel
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300142 Strength indicator
Mauro Carvalho Chehabe6530622016-08-20 09:26:42 -0300143 0x19 hassi ditto fpr High side
144 0x20 mult Multipath indicator
145 0x21 dev Frequency deviation
146 0x24 assi Adjacent channel SSI
147 0x25 usn Ultrasonic noise indicator
148 0x26 pilotdev Pilot deviation in units of 100 Hz
149 0x27 rdsdev ditto for RDS
150 0x28 assidev ditto for ASSI
151 0x29 strongdev Frequency deviation
152 0x30 rdspi RDS PI code
Mauro Carvalho Chehabf1668f12016-07-17 20:32:28 -0300153 ============= ============== ====================================
Andrey Smirnovb879a9c2013-04-18 20:46:08 -0300154
155* /sys/kernel/debug/<device-name>/rsq_primary
156 This file contains information about parameters pertaining to
157 RSQ(Received Signal Quality) for primary tuner only. Layout is as
158 the one above.