162306a36Sopenharmony_ci.. SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci 362306a36Sopenharmony_ci.. include:: <isonum.txt> 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciThe SI476x Driver 762306a36Sopenharmony_ci================= 862306a36Sopenharmony_ci 962306a36Sopenharmony_ciCopyright |copy| 2013 Andrey Smirnov <andrew.smirnov@gmail.com> 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ciTODO for the driver 1262306a36Sopenharmony_ci------------------- 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci- According to the SiLabs' datasheet it is possible to update the 1562306a36Sopenharmony_ci firmware of the radio chip in the run-time, thus bringing it to the 1662306a36Sopenharmony_ci most recent version. Unfortunately I couldn't find any mentioning of 1762306a36Sopenharmony_ci the said firmware update for the old chips that I tested the driver 1862306a36Sopenharmony_ci against, so for chips like that the driver only exposes the old 1962306a36Sopenharmony_ci functionality. 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ciParameters exposed over debugfs 2362306a36Sopenharmony_ci------------------------------- 2462306a36Sopenharmony_ciSI476x allow user to get multiple characteristics that can be very 2562306a36Sopenharmony_ciuseful for EoL testing/RF performance estimation, parameters that have 2662306a36Sopenharmony_civery little to do with V4L2 subsystem. Such parameters are exposed via 2762306a36Sopenharmony_cidebugfs and can be accessed via regular file I/O operations. 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ciThe drivers exposes following files: 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci* /sys/kernel/debug/<device-name>/acf 3262306a36Sopenharmony_ci This file contains ACF(Automatically Controlled Features) status 3362306a36Sopenharmony_ci information. The contents of the file is binary data of the 3462306a36Sopenharmony_ci following layout: 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci .. tabularcolumns:: |p{7ex}|p{12ex}|L| 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci ============= ============== ==================================== 3962306a36Sopenharmony_ci Offset Name Description 4062306a36Sopenharmony_ci ============= ============== ==================================== 4162306a36Sopenharmony_ci 0x00 blend_int Flag, set when stereo separation has 4262306a36Sopenharmony_ci crossed below the blend threshold 4362306a36Sopenharmony_ci 0x01 hblend_int Flag, set when HiBlend cutoff 4462306a36Sopenharmony_ci frequency is lower than threshold 4562306a36Sopenharmony_ci 0x02 hicut_int Flag, set when HiCut cutoff 4662306a36Sopenharmony_ci frequency is lower than threshold 4762306a36Sopenharmony_ci 0x03 chbw_int Flag, set when channel filter 4862306a36Sopenharmony_ci bandwidth is less than threshold 4962306a36Sopenharmony_ci 0x04 softmute_int Flag indicating that softmute 5062306a36Sopenharmony_ci attenuation has increased above 5162306a36Sopenharmony_ci softmute threshold 5262306a36Sopenharmony_ci 0x05 smute 0 - Audio is not soft muted 5362306a36Sopenharmony_ci 1 - Audio is soft muted 5462306a36Sopenharmony_ci 0x06 smattn Soft mute attenuation level in dB 5562306a36Sopenharmony_ci 0x07 chbw Channel filter bandwidth in kHz 5662306a36Sopenharmony_ci 0x08 hicut HiCut cutoff frequency in units of 5762306a36Sopenharmony_ci 100Hz 5862306a36Sopenharmony_ci 0x09 hiblend HiBlend cutoff frequency in units 5962306a36Sopenharmony_ci of 100 Hz 6062306a36Sopenharmony_ci 0x10 pilot 0 - Stereo pilot is not present 6162306a36Sopenharmony_ci 1 - Stereo pilot is present 6262306a36Sopenharmony_ci 0x11 stblend Stereo blend in % 6362306a36Sopenharmony_ci ============= ============== ==================================== 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci* /sys/kernel/debug/<device-name>/rds_blckcnt 6762306a36Sopenharmony_ci This file contains statistics about RDS receptions. It's binary data 6862306a36Sopenharmony_ci has the following layout: 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci .. tabularcolumns:: |p{7ex}|p{12ex}|L| 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci ============= ============== ==================================== 7362306a36Sopenharmony_ci Offset Name Description 7462306a36Sopenharmony_ci ============= ============== ==================================== 7562306a36Sopenharmony_ci 0x00 expected Number of expected RDS blocks 7662306a36Sopenharmony_ci 0x02 received Number of received RDS blocks 7762306a36Sopenharmony_ci 0x04 uncorrectable Number of uncorrectable RDS blocks 7862306a36Sopenharmony_ci ============= ============== ==================================== 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci* /sys/kernel/debug/<device-name>/agc 8162306a36Sopenharmony_ci This file contains information about parameters pertaining to 8262306a36Sopenharmony_ci AGC(Automatic Gain Control) 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ci The layout is: 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci .. tabularcolumns:: |p{7ex}|p{12ex}|L| 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci ============= ============== ==================================== 8962306a36Sopenharmony_ci Offset Name Description 9062306a36Sopenharmony_ci ============= ============== ==================================== 9162306a36Sopenharmony_ci 0x00 mxhi 0 - FM Mixer PD high threshold is 9262306a36Sopenharmony_ci not tripped 9362306a36Sopenharmony_ci 1 - FM Mixer PD high threshold is 9462306a36Sopenharmony_ci tripped 9562306a36Sopenharmony_ci 0x01 mxlo ditto for FM Mixer PD low 9662306a36Sopenharmony_ci 0x02 lnahi ditto for FM LNA PD high 9762306a36Sopenharmony_ci 0x03 lnalo ditto for FM LNA PD low 9862306a36Sopenharmony_ci 0x04 fmagc1 FMAGC1 attenuator resistance 9962306a36Sopenharmony_ci (see datasheet for more detail) 10062306a36Sopenharmony_ci 0x05 fmagc2 ditto for FMAGC2 10162306a36Sopenharmony_ci 0x06 pgagain PGA gain in dB 10262306a36Sopenharmony_ci 0x07 fmwblang FM/WB LNA Gain in dB 10362306a36Sopenharmony_ci ============= ============== ==================================== 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci* /sys/kernel/debug/<device-name>/rsq 10662306a36Sopenharmony_ci This file contains information about parameters pertaining to 10762306a36Sopenharmony_ci RSQ(Received Signal Quality) 10862306a36Sopenharmony_ci 10962306a36Sopenharmony_ci The layout is: 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_ci .. tabularcolumns:: |p{7ex}|p{12ex}|p{60ex}| 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ci ============= ============== ==================================== 11462306a36Sopenharmony_ci Offset Name Description 11562306a36Sopenharmony_ci ============= ============== ==================================== 11662306a36Sopenharmony_ci 0x00 multhint 0 - multipath value has not crossed 11762306a36Sopenharmony_ci the Multipath high threshold 11862306a36Sopenharmony_ci 1 - multipath value has crossed 11962306a36Sopenharmony_ci the Multipath high threshold 12062306a36Sopenharmony_ci 0x01 multlint ditto for Multipath low threshold 12162306a36Sopenharmony_ci 0x02 snrhint 0 - received signal's SNR has not 12262306a36Sopenharmony_ci crossed high threshold 12362306a36Sopenharmony_ci 1 - received signal's SNR has 12462306a36Sopenharmony_ci crossed high threshold 12562306a36Sopenharmony_ci 0x03 snrlint ditto for low threshold 12662306a36Sopenharmony_ci 0x04 rssihint ditto for RSSI high threshold 12762306a36Sopenharmony_ci 0x05 rssilint ditto for RSSI low threshold 12862306a36Sopenharmony_ci 0x06 bltf Flag indicating if seek command 12962306a36Sopenharmony_ci reached/wrapped seek band limit 13062306a36Sopenharmony_ci 0x07 snr_ready Indicates that SNR metrics is ready 13162306a36Sopenharmony_ci 0x08 rssiready ditto for RSSI metrics 13262306a36Sopenharmony_ci 0x09 injside 0 - Low-side injection is being used 13362306a36Sopenharmony_ci 1 - High-side injection is used 13462306a36Sopenharmony_ci 0x10 afcrl Flag indicating if AFC rails 13562306a36Sopenharmony_ci 0x11 valid Flag indicating if channel is valid 13662306a36Sopenharmony_ci 0x12 readfreq Current tuned frequency 13762306a36Sopenharmony_ci 0x14 freqoff Signed frequency offset in units of 13862306a36Sopenharmony_ci 2ppm 13962306a36Sopenharmony_ci 0x15 rssi Signed value of RSSI in dBuV 14062306a36Sopenharmony_ci 0x16 snr Signed RF SNR in dB 14162306a36Sopenharmony_ci 0x17 issi Signed Image Strength Signal 14262306a36Sopenharmony_ci indicator 14362306a36Sopenharmony_ci 0x18 lassi Signed Low side adjacent Channel 14462306a36Sopenharmony_ci Strength indicator 14562306a36Sopenharmony_ci 0x19 hassi ditto for High side 14662306a36Sopenharmony_ci 0x20 mult Multipath indicator 14762306a36Sopenharmony_ci 0x21 dev Frequency deviation 14862306a36Sopenharmony_ci 0x24 assi Adjacent channel SSI 14962306a36Sopenharmony_ci 0x25 usn Ultrasonic noise indicator 15062306a36Sopenharmony_ci 0x26 pilotdev Pilot deviation in units of 100 Hz 15162306a36Sopenharmony_ci 0x27 rdsdev ditto for RDS 15262306a36Sopenharmony_ci 0x28 assidev ditto for ASSI 15362306a36Sopenharmony_ci 0x29 strongdev Frequency deviation 15462306a36Sopenharmony_ci 0x30 rdspi RDS PI code 15562306a36Sopenharmony_ci ============= ============== ==================================== 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ci* /sys/kernel/debug/<device-name>/rsq_primary 15862306a36Sopenharmony_ci This file contains information about parameters pertaining to 15962306a36Sopenharmony_ci RSQ(Received Signal Quality) for primary tuner only. Layout is as 16062306a36Sopenharmony_ci the one above. 161