Commit b4a41387 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

[media] doc-rst: add documentation for si470x

Convert it to ReST and add to media/v4l-drivers book.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent 9cbfcd7c
...@@ -35,4 +35,5 @@ License". ...@@ -35,4 +35,5 @@ License".
radiotrack radiotrack
saa7134 saa7134
sh_mobile_ceu_camera sh_mobile_ceu_camera
si470x
zr364xx zr364xx
Driver for USB radios for the Silicon Labs Si470x FM Radio Receivers .. include:: <isonum.txt>
Copyright (c) 2009 Tobias Lorenz <tobias.lorenz@gmx.net> The Silicon Labs Si470x FM Radio Receivers driver
=================================================
Copyright |copy| 2009 Tobias Lorenz <tobias.lorenz@gmx.net>
Information from Silicon Labs Information from Silicon Labs
============================= -----------------------------
Silicon Laboratories is the manufacturer of the radio ICs, that nowadays are the Silicon Laboratories is the manufacturer of the radio ICs, that nowadays are the
most often used radio receivers in cell phones. Usually they are connected with most often used radio receivers in cell phones. Usually they are connected with
I2C. But SiLabs also provides a reference design, which integrates this IC, I2C. But SiLabs also provides a reference design, which integrates this IC,
...@@ -16,9 +20,11 @@ http://www.silabs.com/usbradio ...@@ -16,9 +20,11 @@ http://www.silabs.com/usbradio
Supported ICs Supported ICs
============= -------------
The following ICs have a very similar register set, so that they are or will be The following ICs have a very similar register set, so that they are or will be
supported somewhen by the driver: supported somewhen by the driver:
- Si4700: FM radio receiver - Si4700: FM radio receiver
- Si4701: FM radio receiver, RDS Support - Si4701: FM radio receiver, RDS Support
- Si4702: FM radio receiver - Si4702: FM radio receiver
...@@ -30,14 +36,17 @@ supported somewhen by the driver: ...@@ -30,14 +36,17 @@ supported somewhen by the driver:
- Si4707: Dedicated weather band radio receiver with SAME decoder, RDS Support - Si4707: Dedicated weather band radio receiver with SAME decoder, RDS Support
- Si4708: Smallest FM receivers - Si4708: Smallest FM receivers
- Si4709: Smallest FM receivers, RDS Support - Si4709: Smallest FM receivers, RDS Support
More information on these can be downloaded here: More information on these can be downloaded here:
http://www.silabs.com/products/mcu/Pages/USBFMRadioRD.aspx http://www.silabs.com/products/mcu/Pages/USBFMRadioRD.aspx
Supported USB devices Supported USB devices
===================== ---------------------
Currently the following USB radios (vendor:product) with the Silicon Labs si470x Currently the following USB radios (vendor:product) with the Silicon Labs si470x
chips are known to work: chips are known to work:
- 10c4:818a: Silicon Labs USB FM Radio Reference Design - 10c4:818a: Silicon Labs USB FM Radio Reference Design
- 06e1:a155: ADS/Tech FM Radio Receiver (formerly Instant FM Music) (RDX-155-EF) - 06e1:a155: ADS/Tech FM Radio Receiver (formerly Instant FM Music) (RDX-155-EF)
- 1b80:d700: KWorld USB FM Radio SnapMusic Mobile 700 (FM700) - 1b80:d700: KWorld USB FM Radio SnapMusic Mobile 700 (FM700)
...@@ -45,8 +54,10 @@ chips are known to work: ...@@ -45,8 +54,10 @@ chips are known to work:
Software Software
======== --------
Testing is usually done with most application under Debian/testing: Testing is usually done with most application under Debian/testing:
- fmtools - Utility for managing FM tuner cards - fmtools - Utility for managing FM tuner cards
- gnomeradio - FM-radio tuner for the GNOME desktop - gnomeradio - FM-radio tuner for the GNOME desktop
- gradio - GTK FM radio tuner - gradio - GTK FM radio tuner
...@@ -54,8 +65,12 @@ Testing is usually done with most application under Debian/testing: ...@@ -54,8 +65,12 @@ Testing is usually done with most application under Debian/testing:
- radio - ncurses-based radio application - radio - ncurses-based radio application
- mplayer - The Ultimate Movie Player For Linux - mplayer - The Ultimate Movie Player For Linux
- v4l2-ctl - Collection of command line video4linux utilities - v4l2-ctl - Collection of command line video4linux utilities
For example, you can use: For example, you can use:
v4l2-ctl -d /dev/radio0 --set-ctrl=volume=10,mute=0 --set-freq=95.21 --all
.. code-block:: none
v4l2-ctl -d /dev/radio0 --set-ctrl=volume=10,mute=0 --set-freq=95.21 --all
There is also a library libv4l, which can be used. It's going to have a function There is also a library libv4l, which can be used. It's going to have a function
for frequency seeking, either by using hardware functionality as in radio-si470x for frequency seeking, either by using hardware functionality as in radio-si470x
...@@ -69,30 +84,48 @@ There is currently no project for making TMC sentences human readable. ...@@ -69,30 +84,48 @@ There is currently no project for making TMC sentences human readable.
Audio Listing Audio Listing
============= -------------
USB Audio is provided by the ALSA snd_usb_audio module. It is recommended to USB Audio is provided by the ALSA snd_usb_audio module. It is recommended to
also select SND_USB_AUDIO, as this is required to get sound from the radio. For also select SND_USB_AUDIO, as this is required to get sound from the radio. For
listing you have to redirect the sound, for example using one of the following listing you have to redirect the sound, for example using one of the following
commands. Please adjust the audio devices to your needs (/dev/dsp* and hw:x,x). commands. Please adjust the audio devices to your needs (/dev/dsp* and hw:x,x).
If you just want to test audio (very poor quality): If you just want to test audio (very poor quality):
cat /dev/dsp1 > /dev/dsp
.. code-block:: none
cat /dev/dsp1 > /dev/dsp
If you use sox + OSS try: If you use sox + OSS try:
sox -2 --endian little -r 96000 -t oss /dev/dsp1 -t oss /dev/dsp
.. code-block:: none
sox -2 --endian little -r 96000 -t oss /dev/dsp1 -t oss /dev/dsp
or using sox + alsa: or using sox + alsa:
sox --endian little -c 2 -S -r 96000 -t alsa hw:1 -t alsa -r 96000 hw:0
.. code-block:: none
sox --endian little -c 2 -S -r 96000 -t alsa hw:1 -t alsa -r 96000 hw:0
If you use arts try: If you use arts try:
arecord -D hw:1,0 -r96000 -c2 -f S16_LE | artsdsp aplay -B -
.. code-block:: none
arecord -D hw:1,0 -r96000 -c2 -f S16_LE | artsdsp aplay -B -
If you use mplayer try: If you use mplayer try:
mplayer -radio adevice=hw=1.0:arate=96000 \
-rawaudio rate=96000 \ .. code-block:: none
radio://<frequency>/capture
mplayer -radio adevice=hw=1.0:arate=96000 \
-rawaudio rate=96000 \
radio://<frequency>/capture
Module Parameters Module Parameters
================= -----------------
After loading the module, you still have access to some of them in the sysfs After loading the module, you still have access to some of them in the sysfs
mount under /sys/module/radio_si470x/parameters. The contents of read-only files mount under /sys/module/radio_si470x/parameters. The contents of read-only files
(0444) are not updated, even if space, band and de are changed using private (0444) are not updated, even if space, band and de are changed using private
...@@ -100,7 +133,8 @@ video controls. The others are runtime changeable. ...@@ -100,7 +133,8 @@ video controls. The others are runtime changeable.
Errors Errors
====== ------
Increase tune_timeout, if you often get -EIO errors. Increase tune_timeout, if you often get -EIO errors.
When timed out or band limit is reached, hw_freq_seek returns -EAGAIN. When timed out or band limit is reached, hw_freq_seek returns -EAGAIN.
...@@ -109,7 +143,8 @@ If you get any errors from snd_usb_audio, please report them to the ALSA people. ...@@ -109,7 +143,8 @@ If you get any errors from snd_usb_audio, please report them to the ALSA people.
Open Issues Open Issues
=========== -----------
V4L minor device allocation and parameter setting is not perfect. A solution is V4L minor device allocation and parameter setting is not perfect. A solution is
currently under discussion. currently under discussion.
...@@ -125,5 +160,6 @@ functions in the kernel. ...@@ -125,5 +160,6 @@ functions in the kernel.
Other useful information and links Other useful information and links
================================== ----------------------------------
http://www.silabs.com/usbradio http://www.silabs.com/usbradio
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment