How to make a driver for rtl2832 and fc0013 tuner? (SOLVED)

What works, and doesn't, for you. Be specific, and please include Puppy version.
Post Reply
Message
Author
Mercedes350se
Posts: 790
Joined: Wed 16 Apr 2008, 11:28

How to make a driver for rtl2832 and fc0013 tuner? (SOLVED)

#1 Post by Mercedes350se »

The subject line just about says it all.

I need a simple step by step guide.

I am running a frugal install of 4.1.2 with the 2.6.25.16 kernel.
Last edited by Mercedes350se on Thu 01 Aug 2013, 05:52, edited 1 time in total.

Mercedes350se
Posts: 790
Joined: Wed 16 Apr 2008, 11:28

#2 Post by Mercedes350se »

OK, I have found this:

Driver Installation in Linux

1. Download "v4l-dvb-(version)" source code from http://linuxtv.org/.

2. Copy the folder 'rtl2832u_linux_driver' and "v4l-dvb-(version)" source code to the desktop.

3. Click 'Applications' -> 'Accessories' -> 'Terminal' to enter the console mode.

4. Type 'cd /root/Desktop/rtl2832u_linux_driver' to enter the folder.

5. In the folder 'rtl2832u_linux_driver', type the following command to compile & install.


a. Type 'cp -f *.* /root/Desktop/v4l-dvb-(version)/linux/drivers/media/dvb/dvb-usb' to copy all files into v4l-dvb-(version) code.

b. add the following lines to Makefile in v4l-dvb-(version)/linux/drivers/media/dvb/dvb-usb.

dvb-usb-rtl2832u-objs = demod_rtl2832.o dvbt_demod_base.o dvbt_nim_base.o foundation.o math_mpi.o nim_rtl2832_fc2580.o rtl2832u.o rtl2832u_fe.o rtl2832u_io.o tuner_fc2580.o tuner_fc0012.o nim_rtl2832_fc0012.o tuner_e4000.o nim_rtl2832_e4000.o rtl2832u_ioctl.o nim_rtl2832_fc0013.o tuner_fc0013.o

obj-$(CONFIG_DVB_USB_RTL2832U) += dvb-usb-rtl2832u.o

c. add the following lines to Kconfig in v4l-dvb-(version)/linux/drivers/media/dvb/dvb-usb.

config DVB_USB_RTL2832U

tristate "Realtek RTL2832U DVB-T USB2.0 support"

depends on DVB_USB

help

Realtek RTL2832U DVB-T driver.


d. Type 'make clean'

d. Type 'make'

f. Type 'make install'

#if compile have error:

CC [M] v4l..../v4l/firedtv-1394.o

v4l..../v4l/firedtv-1394.c:21:17: error: dma.h: No such file or directory

v4l..../v4l/firedtv-1394.c:22:21: error: csr1212.h: No such file or directory

v4l..../v4l/firedtv-1394.c:23:23:.....

......................................

to solve:

[a]

please modify following lines to the v4l....\linux\drivers\media\dvb\Kconfig file

#comment "Supported FireWire (IEEE 1394) Adapters"

# depends on DVB_CORE && IEEE1394

#source "drivers/media/dvb/firewire/Kconfig"

and modify following lines to the v4l....\linux\drivers\media\dvb\Makefile file

#obj-$(CONFIG_DVB_FIREDTV) += firewire/

modify .config file

In the folder 'v4l.....' ,type the following command to modify .config

'sudo gedit v4l/.config'

modify "CONFIG_DVB_FIREDTV=m" change to "CONFIG_DVB_FIREDTV=n"

#obj-$(CONFIG_DVB_FIREDTV) += firewire/

6. Plug in our DVB-T USB device;

7. Type 'lsmod | grep dvb', and it will show

dvb_usb_rtl2832u
dvb_usb
dvb_core
i2c_core

Your driver has been installed successfully.

8. Install the applications --'Xine' and 'linuxtv-dvb-apps'.

Question:

I understand the v4l utilities are part of Puppy so how do I do the steps highlighted?

watchdog
Posts: 2021
Joined: Fri 28 Sep 2012, 18:04
Location: Italy

#3 Post by watchdog »

Mercedes350se wrote: I understand the v4l utilities are part of Puppy so how do I do the steps highlighted?
I have always compiled v4l-utils on my own in every puppy I used. V4l-utils are not part of Puppy.

Mercedes350se
Posts: 790
Joined: Wed 16 Apr 2008, 11:28

#4 Post by Mercedes350se »

watchdog, Thank you however I was simply echoing: "The video4linux subsystem was included on Kernel 2.2, and the dvb and remote controller subsystems was included in the 2.6 Kernel" on this site.

Irrespective of that:

1. What is actually contained in v4l-utils?

2. How did you compile them?

3. How do I accomplish my request in my first post?

watchdog
Posts: 2021
Joined: Fri 28 Sep 2012, 18:04
Location: Italy

#5 Post by watchdog »

Mercedes350se wrote:watchdog, Thank you however I was simply echoing: "The video4linux subsystem was included on Kernel 2.2, and the dvb and remote controller subsystems was included in the 2.6 Kernel" on this site.
I think it wants to say that the source code of v4l-utils from linuxtv.org is compatible with kernel linux from 2.6 on.
Mercedes350se wrote:Irrespective of that:

1. What is actually contained in v4l-utils?

2. How did you compile them?
I use it only for libv4l to make work quirky webcams for which the kernel driver fails to work. Read for example:

http://www.murga-linux.com/puppy/viewtopic.php?t=83232
Mercedes350se wrote:3. How do I accomplish my request in my first post?
I don't know. Surely you have learned more than me about your problem.

Mercedes350se
Posts: 790
Joined: Wed 16 Apr 2008, 11:28

#6 Post by Mercedes350se »

"Houston. We have pictures."

After considerable trial and error!

The method outlined in my post of Wed Jul 10, 2013 did not work.

The method that did work, in my case, is as follows:

1. Make directory /usr/src

2. Down load and extract to this directory the kernel-src-2.6.25.16-patched-puppy4.1.sfs from here

3. Download and extract to /usr/src the v4l-dvb version found here. Note the bz2, zip and gz down the left hand side of the page.

4. Open /usr/src/v4l-dvb-<version_number>/linux/drivers/media/common/tuners and copy the files from the supplied CD. For the tuner files I only copied the fc0013 files.

5. Open the Makefile and add

Code: Select all

obj-$(CONFIG_MEDIA_TUNER_FC0013) += fc0013.o
and save the file.

6. Open the Kconfig file and add

Code: Select all

select MEDIA_TUNER_FC0013 if !MEDIA_TUNER_CUSTOMISE
and also

Code: Select all

config MEDIA_TUNER_FC0013
	tristate "FC0013 silicon tuner"
	depends on VIDEO_MEDIA && I2C
	default m if MEDIA_TUNER_CUSTOMISE
	help
	  A driver for the silicon tuner FC0013.
and save the file.

7. Back track to the /usr/src directory and open the /v4l<etc, etc> directory. Then

Code: Select all

make
8. After, in my case, about 30 minutes the modules will be compiled and you should be rewarded with fc0013.ko (and all the others of course) in the /v4l directory.

9. Copy fc0013.ko into /lib/modules/2.6.25.16/kernel drivers/media/common/tuners

I didn't

Code: Select all

make install
because I didn't want all the other modules to be installed.

10. Reboot the machine, open xine, click DVB and pictures. I had set up the channels.conf file and everything else previously for the internal DVB-T card.

Interestingly the rtl2832 information/module/whatever required appeared to be already in the kernel of 4.1.2.
Last edited by Mercedes350se on Sun 04 Aug 2013, 07:46, edited 5 times in total.

gcmartin

#7 Post by gcmartin »

This thread presents an excellently structured procedure.

Wondering
Does the effort shown here, demonstrate a guide in this Thread started by @eDoc here?

Apple to apples?

Post Reply