{"id":165,"date":"2008-05-04T12:51:44","date_gmt":"2008-05-04T02:51:44","guid":{"rendered":""},"modified":"2011-03-20T20:21:25","modified_gmt":"2011-03-20T09:21:25","slug":"mantis-drivers","status":"publish","type":"post","link":"https:\/\/riscy.biz\/index.php\/2008\/05\/04\/mantis-drivers\/","title":{"rendered":"Mantis drivers"},"content":{"rendered":"<p>\nThis is from www.verbraak.org\/wiki\/index.php\/Linux_Mantis_driver but his site seems to be down a lot so I have mirrored it here because I am trying to get my 1034 card to work with Linux.\n<\/p>\n<p>\n&nbsp;\n<\/p>\n<h1 class=\"firstHeading\">Linux Mantis driver<\/h1>\n<div id=\"bodyContent\">\n<h3 id=\"siteSub\">From My Interesting Version<\/h3>\n<div id=\"jump-to-nav\">\nJump to: <a href=\"http:\/\/www.verbraak.org\/wiki\/index.php\/Linux_Mantis_driver#column-one\">navigation<\/a>, <a href=\"http:\/\/www.verbraak.org\/wiki\/index.php\/Linux_Mantis_driver#searchInput\">search<\/a>\n<\/div>\n<p><!-- start content --><\/p>\n<p>\nCurrently the Mantis chipset driver for linux is in Alpha state.\n<\/p>\n<p>\nThis Mantis chipset is used on DVB board for reception of DVB-T, DVB-S, DVB-S2, DVB-C signals.\n<\/p>\n<p>\nIn this small Howto i explain how I got the mantis driver up and<br \/>\nrunning in my vanilla linux kernel.<br \/>\nI had to do it in this way because I also own two Hauppauge PVR cards<br \/>\n(PVR-350 and PVR-150) which do not work well with the mantis module.\n<\/p>\n<p>\nThis example has been tested with linux kernel source 2.6.22<br \/>\nand the ivtv driver from the linuxtv.org hg reposititory and the one<br \/>\nincluded in the kernel on a Fedora Core 6 setup.\n<\/p>\n<pre>\r\n<strong>WARNING:<\/strong> IVTV 0.10.3 and Mantis and kernel 2.6.21 and up do not work together.\r\nFrom kernel 2.6.22 the ivtv module is part of the kernel and you do not need to download it from the ivtvdriver.org website.\r\nTo get ivtv and the mantis working in kernel 2.6.21 and up you need to add <strong>extra<\/strong> module parameters to the <em>saa7115<\/em> module. \r\nSee the instructions at the end for this.\r\n<\/pre>\n<p><a name=\"Following_steps_you_need_to_take_.28short_ways_for_kernel_2.6.23.1.29:\" title=\"Following_steps_you_need_to_take_.28short_ways_for_kernel_2.6.23.1.29:\"><\/a><\/p>\n<h3><span class=\"editsection\">[<a href=\"http:\/\/www.verbraak.org\/wiki\/index.php?title=Linux_Mantis_driver&amp;action=edit&amp;section=1\" title=\"Edit section: Following steps you need to take (short ways for kernel 2.6.23.1):\">edit<\/a>]<\/span> <span class=\"mw-headline\">Following steps you need to take (<strong>short<\/strong> ways for kernel 2.6.23.1):<\/span><\/h3>\n<ul>\n<li> Download the <a href=\"http:\/\/www.verbraak.org\/mantis-2.6.23.1.patch\" title=\"http:\/\/www.verbraak.org\/mantis-2.6.23.1.patch\">patch file<\/a> for kernel 2.6.23.1.\n\t<\/li>\n<li> use your current kernel or take a kernel source tree from <a href=\"http:\/\/www.kernel.org\/\" title=\"http:\/\/www.kernel.org\">http:\/\/www.kernel.org<\/a>. Make sure you have the kernel headers\/sources files\/packages installed and you have the kernel up and running.\n\t<\/li>\n<li> Apply the patch.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; cd &lt;path to kernel source&gt;\r\n#&gt; patch -p1 &lt; &lt;path to mantis-2.6.23.1.patch file&gt;\/mantis-2.6.23.1.patch\r\n<\/pre>\n<ul>\n<li> Activate the mantis modules in your kernel config. Answer yes to the Mantis parts.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; make oldconfig\r\n<\/pre>\n<ul>\n<li> Compile.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; make\r\n#&gt; make modules_install\r\n<\/pre>\n<ul>\n<li> When you use your current kernel sources do load the modules\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; modprobe mantis\r\n#&gt; dmesg | grep -i dvb\r\nfound a VP-1034 PCI DVB-S\/DSS device on (02:05.0),\r\nDVB: registering new adapter (Mantis dvb adapter).\r\nmantis_frontend_init (0): Probing for MB86A16 (DVB-S\/DSS)\r\nmantis_frontend_init (0): found MB86A16 DVB-S\/DSS frontend @0x08\r\nDVB: registering frontend 0 (Fujitsu MB86A16 DVB-S)...\r\n<\/pre>\n<p><a name=\"Following_steps_you_need_to_take_.28long_way_for_kernels_2.6.21_and_up.29:\" title=\"Following_steps_you_need_to_take_.28long_way_for_kernels_2.6.21_and_up.29:\"><\/a><\/p>\n<h3><span class=\"editsection\">[<a href=\"http:\/\/www.verbraak.org\/wiki\/index.php?title=Linux_Mantis_driver&amp;action=edit&amp;section=2\" title=\"Edit section: Following steps you need to take (long way for kernels 2.6.21 and up):\">edit<\/a>]<\/span> <span class=\"mw-headline\">Following steps you need to take (<strong>long<\/strong> way for kernels 2.6.21 and up):<\/span><\/h3>\n<ul>\n<li> use your current kernel or take a kernel source tree from <a href=\"http:\/\/www.kernel.org\/\" title=\"http:\/\/www.kernel.org\">http:\/\/www.kernel.org<\/a>. Make sure you have the kernel headers\/sources files\/packages installed and you have the kernel up and running.\n\t<\/li>\n<li> Get the mantis dvb source tree from <a href=\"http:\/\/jusst.de\/hg\/mantis\/archive\/tip.tar.bz2\" title=\"http:\/\/jusst.de\/hg\/mantis\/archive\/tip.tar.bz2\">http:\/\/jusst.de\/hg\/mantis\/archive\/tip.tar.bz2<\/a>\n\t<\/li>\n<li> Copy the directory &lt;path to mantis<br \/>\n\ttree&gt;\/linux\/drivers\/media\/dvb\/mantis to &lt;path to kernel<br \/>\n\tsource&gt;\/drivers\/media\/dvb\/\n\t<\/li>\n<li> Add the following three lines to the file &lt;path to kernel<br \/>\n\tsource&gt;\/drivers\/media\/dvb\/Kconfig. Add them before the last entry in<br \/>\n\tthis file.\n\t<\/li>\n<\/ul>\n<pre>\r\ncomment &quot;Supported Mantis Adapters&quot;\r\ndepends on DVB_CORE &amp;&amp; PCI &amp;&amp; I2C\r\nsource &quot;drivers\/media\/dvb\/mantis\/Kconfig&quot;\r\n<\/pre>\n<ul>\n<li> Add the following option &quot;<strong>mantis\/<\/strong>&quot; to the file path to kernel source&gt;\/drivers\/media\/dvb\/Makefile. It should look like this\n\t<\/li>\n<\/ul>\n<pre>\r\n#\r\n# Makefile for the kernel multimedia device drivers.\r\n# \r\nobj-y       \u00a0:= dvb-core\/ frontends\/ ttpci\/ ttusb-dec\/ ttusb-budget\/ b2c2\/ bt8xx\/ cinergyT2\/ dvb-usb\/ pluto2\/ mantis\/\r\n<\/pre>\n<ul>\n<li> Copy the files &lt;path to mantis<br \/>\n\ttree&gt;\/linux\/drivers\/media\/dvb\/frontends\/mb86a16* to &lt;path to<br \/>\n\tkernel source&gt;\/drivers\/media\/dvb\/frontends\n\t<\/li>\n<li> Copy the files &lt;path to mantis<br \/>\n\ttree&gt;\/linux\/drivers\/media\/dvb\/frontends\/cu1216* to &lt;path to<br \/>\n\tkernel source&gt;\/drivers\/media\/dvb\/frontends\n\t<\/li>\n<li> Add the following lines to the file &lt;path to kernel source&gt;\/drivers\/media\/dvb\/frontends\/Kconfig just after the <strong>config DVB_TDA10086<\/strong>\n\t<\/li>\n<\/ul>\n<pre>\r\nconfig DVB_MB86A16\r\ntristate &quot;Fujitsu MB86A16 based&quot;\r\ndepends on DVB_CORE &amp;&amp; I2C\r\ndefault m\r\nhelp\r\nA DVB-S\/DSS tuner module. Say Y when you want to support this frontend.\r\nconfig DVB_CU1216\r\ntristate &quot;Philips CU1216 tuner based&quot;\r\ndepends on DVB_CORE &amp;&amp; I2C\r\ndefault m\r\nhelp\r\nA DVB-C tuner module. Say Y when you want to support this frontend.\r\n<\/pre>\n<ul>\n<li> Add the following two lines to the file &lt;path to kernel source&gt;\/drivers\/media\/dvb\/frontends\/Makefile\n\t<\/li>\n<\/ul>\n<pre>\r\nobj-$(CONFIG_DVB_MB86A16) += mb86a16.o\r\nobj-$(CONFIG_DVB_CU1216) += cu1216.o\r\n<\/pre>\n<ul>\n<li> Change in the file &lt;path to kernel<br \/>\n\tsource&gt;\/drivers\/media\/dvb\/frontends\/cu1216.c line 37 to look like<br \/>\n\tthis (ignore the line numbers)\n\t<\/li>\n<\/ul>\n<pre>\r\n     34 #include &lt;linux\/slab.h&gt;\r\n35  \r\n36 #include &quot;dvb_frontend.h&quot;\r\n37 #include &quot;..\/mantis\/mantis_core.h&quot;\r\n38 #include &quot;cu1216.h&quot;\r\n39 #include &quot;cu1216_regs.h&quot;\r\n<\/pre>\n<ul>\n<li> You can now compile your kernel in the normal way and install<br \/>\n\tthe modules. If you wish to make sure the Mantis modules have been<br \/>\n\tselected do a <em>make menuconfig<\/em>\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; cd &lt;path to kernelsource&gt;\r\n#&gt; make menuconfig\r\n#&gt; make\r\n#&gt; make modules_install\r\n<\/pre>\n<ul>\n<li> When you use your current kernel sources do load the modules\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; modprobe mantis\r\n#&gt; dmesg | grep -i dvb\r\nfound a VP-1034 PCI DVB-S\/DSS device on (02:05.0),\r\nDVB: registering new adapter (Mantis dvb adapter).\r\nmantis_frontend_init (0): Probing for MB86A16 (DVB-S\/DSS)\r\nmantis_frontend_init (0): found MB86A16 DVB-S\/DSS frontend @0x08\r\nDVB: registering frontend 0 (Fujitsu MB86A16 DVB-S)...\r\n<\/pre>\n<ul>\n<li> Check the output of the dmesg command to see if the mantis modules loaded. Sometimes a reboot of the system is needed.\n\t<\/li>\n<li> <strong>IMPORTANT:<\/strong> For kernels 2.6.21 and below the order in which you do the installations is also important. Every time you perform a <strong>make modules_install<\/strong> for the kernel you need to do the <strong>make install<\/strong> for the ivtv driver as well.\n\t<\/li>\n<\/ul>\n<p>\n<br \/>\nTo get the Hauppauge cards working do the following:\n<\/p>\n<ul>\n<li> The ivtv module is now part of the kernel since 2.6.22. So<br \/>\n\tcheck your kernel. If you have a kernel below 2.6.22 then do the<br \/>\n\tfollowing <\/li>\n<li> Get the ivtv source from <a href=\"http:\/\/dl.ivtvdriver.org\/ivtv\/archive\/0.10.x\/ivtv-0.10.5.tar.gz\" title=\"http:\/\/dl.ivtvdriver.org\/ivtv\/archive\/0.10.x\/ivtv-0.10.5.tar.gz\">http:\/\/dl.ivtvdriver.org\/ivtv\/archive\/0.10.x\/ivtv-0.10.5.tar.gz<\/a>. See <a href=\"http:\/\/www.ivtvdriver.org\/\" title=\"http:\/\/www.ivtvdriver.org\">http:\/\/www.ivtvdriver.org<\/a> for latest version.\n\t<\/li>\n<li> Extract the source, build and install it.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; tar -zxvpf ivtv-0.10.5.tar.gz\r\n#&gt; cd ivtv-0.10.5\r\n#&gt; make; make install\r\n<\/pre>\n<ul>\n<li> Install the <a href=\"http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz\" title=\"http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz\">ivtv firmware<\/a> files in \/lib\/firmware\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; cd \/lib\/firmware\r\n#&gt; wget <a href=\"http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz\" title=\"http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz\">http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz<\/a>\r\n#&gt; tar -zxvpf firmware.tar.gz\r\n<\/pre>\n<ul>\n<li> Load the ivtv modules:\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; modprobe ivtv\r\n#&gt; dmesg | grep -i ivtv\r\nivtv:  ==================== START INIT IVTV ====================\r\nivtv:  version 0.10.3 (development snapshot compiled on zo 20 mei 2007 08:57:55 CEST) loading\r\nivtv:  Linux version: 2.6.21.1 SMP mod_unload PENTIUM4 4KSTACKS \r\nivtv:  In case of problems please include the debug info between\r\nivtv:  the START INIT IVTV and END INIT IVTV lines, along with\r\nivtv:  any module options, when mailing the ivtv-users mailinglist.\r\nivtv0: Autodetected Hauppauge card (cx23415 based)\r\nivtv0: loaded v4l-cx2341x-enc.fw firmware (376836 bytes)\r\nivtv0: loaded v4l-cx2341x-dec.fw firmware (262144 bytes)\r\nivtv0: Encoder revision: 0x02060039\r\nivtv0: Decoder revision: 0x02020023\r\nivtv0: Autodetected Hauppauge WinTV PVR-350\r\ntuner 1-0061: chip found @ 0xc2 (ivtv i2c driver #0)\r\nsaa7115 1-0021: saa7115 found (1f7115d0e100000) @ 0x42 (ivtv i2c driver #0)\r\nsaa7127 1-0044: saa7127 found @ 0x88 (ivtv i2c driver #0)\r\nmsp3400 1-0040: MSP4418G-A2 found @ 0x80 (ivtv i2c driver #0)\r\nivtv0: Registered device video0 for encoder MPEG (4 MB)\r\nivtv0: Registered device video32 for encoder YUV (2 MB)\r\nivtv0: Registered device vbi0 for encoder VBI (1 MB)\r\nivtv0: Registered device video24 for encoder PCM audio (1 MB)\r\nivtv0: Registered device radio0 for encoder radio\r\nivtv0: Registered device video16 for decoder MPEG (1 MB)\r\nivtv0: Registered device vbi8 for decoder VBI (1 MB)\r\nivtv0: Registered device vbi16 for decoder VOUT\r\nivtv0: Registered device video48 for decoder YUV (1 MB)\r\nivtv0: loaded v4l-cx2341x-init.mpg firmware (155648 bytes)\r\nivtv0: Initialized Hauppauge WinTV PVR-350, card #0\r\nivtv:  ======================  NEXT CARD  ======================\r\nivtv1: Autodetected Hauppauge card (cx23416 based)\r\nivtv1: loaded v4l-cx2341x-enc.fw firmware (376836 bytes)\r\nivtv1: Encoder revision: 0x02060039\r\ntuner 2-0043: chip found @ 0x86 (ivtv i2c driver #1)\r\ntuner 2-0061: chip found @ 0xc2 (ivtv i2c driver #1)\r\nivtv1: Autodetected Hauppauge WinTV PVR-150\r\nivtv1: reopen i2c bus for IR-blaster support\r\ntuner 2-0043: chip found @ 0x86 (ivtv i2c driver #1)\r\ntuner 2-0061: chip found @ 0xc2 (ivtv i2c driver #1)\r\ncx25840 2-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #1)\r\nwm8775 2-001b: chip found @ 0x36 (ivtv i2c driver #1)\r\nivtv1: Registered device video1 for encoder MPEG (4 MB)\r\nivtv1: Registered device video33 for encoder YUV (2 MB)\r\nivtv1: Registered device vbi1 for encoder VBI (1 MB)\r\nivtv1: Registered device video25 for encoder PCM audio (1 MB)\r\nivtv1: Initialized Hauppauge WinTV PVR-150, card #1\r\nivtv:  ====================  END INIT IVTV  ====================\r\n<\/pre>\n<ul>\n<li> Check the output of the dmesg command. Sometimes a reboot is needed.\n\t<\/li>\n<\/ul>\n<p>\n<strong>When you are using kernel 2.6.21 and higher ivtv and mantis will<br \/>\nnog work together. Depening on which module loads first the mantis<br \/>\nmodule will freeze.<\/strong>\n<\/p>\n<p>\nTo resolve this problem you will have to add extra module parameters to the saa7115 module.<br \/>\nDo the following to determine the values for the module parameters:\n<\/p>\n<ul>\n<li> Get i2c bus number used by the Mantis driver.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; modprobe i2c-dev\r\n#&gt; i2cdetect -l\r\ni2c-3   i2c             ivtv i2c driver #1                      I2C adapter\r\ni2c-2   i2c             ivtv i2c driver #0                      I2C adapter\r\ni2c-1   smbus           Mantis I2C                              SMBus adapter\r\ni2c-0   smbus           SMBus I801 adapter at 0400              SMBus adapter\r\n<\/pre>\n<ul>\n<li> The i2c bus used by the Mantis driver is bus 1 (see i2c-1 part) in this example.\n\t<\/li>\n<li> Add the following line to your \/etc\/modprobe.conf\n\t<\/li>\n<\/ul>\n<pre>\r\noptions saa7115 ignore=1,0x25,1,0x24,1,0x21,1,0x20\r\n<\/pre>\n<ul>\n<li> Replace all the 1&#8217;s (one&#8217;s) with your i2c bus number leave the hexadecimal numbers intact.\n\t<\/li>\n<li> Now reboot your machine and both the mantis and the ivtv modules should load without a problem and work without a problem.\n\t<\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\nThis is from www.verbraak.org\/wiki\/index.php\/Linux_Mantis_driver but his site seems to be down a lot so I have mirrored it here because I am trying to get my 1034 card to work with Linux.\n<\/p>\n<p>\n&nbsp;\n<\/p>\n<h1 class=\"firstHeading\">Linux Mantis driver<\/h1>\n<div id=\"bodyContent\">\n<h3 id=\"siteSub\">From My Interesting Version<\/h3>\n<div id=\"jump-to-nav\">\nJump to: <a href=\"http:\/\/www.verbraak.org\/wiki\/index.php\/Linux_Mantis_driver#column-one\">navigation<\/a>, <a href=\"http:\/\/www.verbraak.org\/wiki\/index.php\/Linux_Mantis_driver#searchInput\">search<\/a>\n<\/div>\n<p><!-- start content --><\/p>\n<p>\nCurrently the Mantis chipset driver for linux is in Alpha state.\n<\/p>\n<p>\nThis Mantis chipset is used on DVB board for reception of DVB-T, DVB-S, DVB-S2, DVB-C signals.\n<\/p>\n<p>\nIn this small Howto i explain how I got the mantis driver up and<br \/>\nrunning in my vanilla linux kernel.<br \/>\nI had to do it in this way because I also own two Hauppauge PVR cards<br \/>\n(PVR-350 and PVR-150) which do not work well with the mantis module.\n<\/p>\n<p>\nThis example has been tested with linux kernel source 2.6.22<br \/>\nand the ivtv driver from the linuxtv.org hg reposititory and the one<br \/>\nincluded in the kernel on a Fedora Core 6 setup.\n<\/p>\n<pre>\r\n<strong>WARNING:<\/strong> IVTV 0.10.3 and Mantis and kernel 2.6.21 and up do not work together.\r\nFrom kernel 2.6.22 the ivtv module is part of the kernel and you do not need to download it from the ivtvdriver.org website.\r\nTo get ivtv and the mantis working in kernel 2.6.21 and up you need to add <strong>extra<\/strong> module parameters to the <em>saa7115<\/em> module. \r\nSee the instructions at the end for this.\r\n<\/pre>\n<p><a name=\"Following_steps_you_need_to_take_.28short_ways_for_kernel_2.6.23.1.29:\" title=\"Following_steps_you_need_to_take_.28short_ways_for_kernel_2.6.23.1.29:\"><\/a><\/p>\n<h3><span class=\"editsection\">[<a href=\"http:\/\/www.verbraak.org\/wiki\/index.php?title=Linux_Mantis_driver&amp;action=edit&amp;section=1\" title=\"Edit section: Following steps you need to take (short ways for kernel 2.6.23.1):\">edit<\/a>]<\/span> <span class=\"mw-headline\">Following steps you need to take (<strong>short<\/strong> ways for kernel 2.6.23.1):<\/span><\/h3>\n<ul>\n<li> Download the <a href=\"http:\/\/www.verbraak.org\/mantis-2.6.23.1.patch\" title=\"http:\/\/www.verbraak.org\/mantis-2.6.23.1.patch\">patch file<\/a> for kernel 2.6.23.1.\n\t<\/li>\n<li> use your current kernel or take a kernel source tree from <a href=\"http:\/\/www.kernel.org\/\" title=\"http:\/\/www.kernel.org\">http:\/\/www.kernel.org<\/a>. Make sure you have the kernel headers\/sources files\/packages installed and you have the kernel up and running.\n\t<\/li>\n<li> Apply the patch.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; cd &lt;path to kernel source&gt;\r\n#&gt; patch -p1 &lt; &lt;path to mantis-2.6.23.1.patch file&gt;\/mantis-2.6.23.1.patch\r\n<\/pre>\n<ul>\n<li> Activate the mantis modules in your kernel config. Answer yes to the Mantis parts.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; make oldconfig\r\n<\/pre>\n<ul>\n<li> Compile.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; make\r\n#&gt; make modules_install\r\n<\/pre>\n<ul>\n<li> When you use your current kernel sources do load the modules\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; modprobe mantis\r\n#&gt; dmesg | grep -i dvb\r\nfound a VP-1034 PCI DVB-S\/DSS device on (02:05.0),\r\nDVB: registering new adapter (Mantis dvb adapter).\r\nmantis_frontend_init (0): Probing for MB86A16 (DVB-S\/DSS)\r\nmantis_frontend_init (0): found MB86A16 DVB-S\/DSS frontend @0x08\r\nDVB: registering frontend 0 (Fujitsu MB86A16 DVB-S)...\r\n<\/pre>\n<p><a name=\"Following_steps_you_need_to_take_.28long_way_for_kernels_2.6.21_and_up.29:\" title=\"Following_steps_you_need_to_take_.28long_way_for_kernels_2.6.21_and_up.29:\"><\/a><\/p>\n<h3><span class=\"editsection\">[<a href=\"http:\/\/www.verbraak.org\/wiki\/index.php?title=Linux_Mantis_driver&amp;action=edit&amp;section=2\" title=\"Edit section: Following steps you need to take (long way for kernels 2.6.21 and up):\">edit<\/a>]<\/span> <span class=\"mw-headline\">Following steps you need to take (<strong>long<\/strong> way for kernels 2.6.21 and up):<\/span><\/h3>\n<ul>\n<li> use your current kernel or take a kernel source tree from <a href=\"http:\/\/www.kernel.org\/\" title=\"http:\/\/www.kernel.org\">http:\/\/www.kernel.org<\/a>. Make sure you have the kernel headers\/sources files\/packages installed and you have the kernel up and running.\n\t<\/li>\n<li> Get the mantis dvb source tree from <a href=\"http:\/\/jusst.de\/hg\/mantis\/archive\/tip.tar.bz2\" title=\"http:\/\/jusst.de\/hg\/mantis\/archive\/tip.tar.bz2\">http:\/\/jusst.de\/hg\/mantis\/archive\/tip.tar.bz2<\/a>\n\t<\/li>\n<li> Copy the directory &lt;path to mantis<br \/>\n\ttree&gt;\/linux\/drivers\/media\/dvb\/mantis to &lt;path to kernel<br \/>\n\tsource&gt;\/drivers\/media\/dvb\/\n\t<\/li>\n<li> Add the following three lines to the file &lt;path to kernel<br \/>\n\tsource&gt;\/drivers\/media\/dvb\/Kconfig. Add them before the last entry in<br \/>\n\tthis file.\n\t<\/li>\n<\/ul>\n<pre>\r\ncomment &quot;Supported Mantis Adapters&quot;\r\ndepends on DVB_CORE &amp;&amp; PCI &amp;&amp; I2C\r\nsource &quot;drivers\/media\/dvb\/mantis\/Kconfig&quot;\r\n<\/pre>\n<ul>\n<li> Add the following option &quot;<strong>mantis\/<\/strong>&quot; to the file path to kernel source&gt;\/drivers\/media\/dvb\/Makefile. It should look like this\n\t<\/li>\n<\/ul>\n<pre>\r\n#\r\n# Makefile for the kernel multimedia device drivers.\r\n# \r\nobj-y       \u00a0:= dvb-core\/ frontends\/ ttpci\/ ttusb-dec\/ ttusb-budget\/ b2c2\/ bt8xx\/ cinergyT2\/ dvb-usb\/ pluto2\/ mantis\/\r\n<\/pre>\n<ul>\n<li> Copy the files &lt;path to mantis<br \/>\n\ttree&gt;\/linux\/drivers\/media\/dvb\/frontends\/mb86a16* to &lt;path to<br \/>\n\tkernel source&gt;\/drivers\/media\/dvb\/frontends\n\t<\/li>\n<li> Copy the files &lt;path to mantis<br \/>\n\ttree&gt;\/linux\/drivers\/media\/dvb\/frontends\/cu1216* to &lt;path to<br \/>\n\tkernel source&gt;\/drivers\/media\/dvb\/frontends\n\t<\/li>\n<li> Add the following lines to the file &lt;path to kernel source&gt;\/drivers\/media\/dvb\/frontends\/Kconfig just after the <strong>config DVB_TDA10086<\/strong>\n\t<\/li>\n<\/ul>\n<pre>\r\nconfig DVB_MB86A16\r\ntristate &quot;Fujitsu MB86A16 based&quot;\r\ndepends on DVB_CORE &amp;&amp; I2C\r\ndefault m\r\nhelp\r\nA DVB-S\/DSS tuner module. Say Y when you want to support this frontend.\r\nconfig DVB_CU1216\r\ntristate &quot;Philips CU1216 tuner based&quot;\r\ndepends on DVB_CORE &amp;&amp; I2C\r\ndefault m\r\nhelp\r\nA DVB-C tuner module. Say Y when you want to support this frontend.\r\n<\/pre>\n<ul>\n<li> Add the following two lines to the file &lt;path to kernel source&gt;\/drivers\/media\/dvb\/frontends\/Makefile\n\t<\/li>\n<\/ul>\n<pre>\r\nobj-$(CONFIG_DVB_MB86A16) += mb86a16.o\r\nobj-$(CONFIG_DVB_CU1216) += cu1216.o\r\n<\/pre>\n<ul>\n<li> Change in the file &lt;path to kernel<br \/>\n\tsource&gt;\/drivers\/media\/dvb\/frontends\/cu1216.c line 37 to look like<br \/>\n\tthis (ignore the line numbers)\n\t<\/li>\n<\/ul>\n<pre>\r\n     34 #include &lt;linux\/slab.h&gt;\r\n35  \r\n36 #include &quot;dvb_frontend.h&quot;\r\n37 #include &quot;..\/mantis\/mantis_core.h&quot;\r\n38 #include &quot;cu1216.h&quot;\r\n39 #include &quot;cu1216_regs.h&quot;\r\n<\/pre>\n<ul>\n<li> You can now compile your kernel in the normal way and install<br \/>\n\tthe modules. If you wish to make sure the Mantis modules have been<br \/>\n\tselected do a <em>make menuconfig<\/em>\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; cd &lt;path to kernelsource&gt;\r\n#&gt; make menuconfig\r\n#&gt; make\r\n#&gt; make modules_install\r\n<\/pre>\n<ul>\n<li> When you use your current kernel sources do load the modules\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; modprobe mantis\r\n#&gt; dmesg | grep -i dvb\r\nfound a VP-1034 PCI DVB-S\/DSS device on (02:05.0),\r\nDVB: registering new adapter (Mantis dvb adapter).\r\nmantis_frontend_init (0): Probing for MB86A16 (DVB-S\/DSS)\r\nmantis_frontend_init (0): found MB86A16 DVB-S\/DSS frontend @0x08\r\nDVB: registering frontend 0 (Fujitsu MB86A16 DVB-S)...\r\n<\/pre>\n<ul>\n<li> Check the output of the dmesg command to see if the mantis modules loaded. Sometimes a reboot of the system is needed.\n\t<\/li>\n<li> <strong>IMPORTANT:<\/strong> For kernels 2.6.21 and below the order in which you do the installations is also important. Every time you perform a <strong>make modules_install<\/strong> for the kernel you need to do the <strong>make install<\/strong> for the ivtv driver as well.\n\t<\/li>\n<\/ul>\n<p>\n<br \/>\nTo get the Hauppauge cards working do the following:\n<\/p>\n<ul>\n<li> The ivtv module is now part of the kernel since 2.6.22. So<br \/>\n\tcheck your kernel. If you have a kernel below 2.6.22 then do the<br \/>\n\tfollowing <\/li>\n<li> Get the ivtv source from <a href=\"http:\/\/dl.ivtvdriver.org\/ivtv\/archive\/0.10.x\/ivtv-0.10.5.tar.gz\" title=\"http:\/\/dl.ivtvdriver.org\/ivtv\/archive\/0.10.x\/ivtv-0.10.5.tar.gz\">http:\/\/dl.ivtvdriver.org\/ivtv\/archive\/0.10.x\/ivtv-0.10.5.tar.gz<\/a>. See <a href=\"http:\/\/www.ivtvdriver.org\/\" title=\"http:\/\/www.ivtvdriver.org\">http:\/\/www.ivtvdriver.org<\/a> for latest version.\n\t<\/li>\n<li> Extract the source, build and install it.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; tar -zxvpf ivtv-0.10.5.tar.gz\r\n#&gt; cd ivtv-0.10.5\r\n#&gt; make; make install\r\n<\/pre>\n<ul>\n<li> Install the <a href=\"http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz\" title=\"http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz\">ivtv firmware<\/a> files in \/lib\/firmware\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; cd \/lib\/firmware\r\n#&gt; wget <a href=\"http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz\" title=\"http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz\">http:\/\/dl.ivtvdriver.org\/ivtv\/firmware\/firmware.tar.gz<\/a>\r\n#&gt; tar -zxvpf firmware.tar.gz\r\n<\/pre>\n<ul>\n<li> Load the ivtv modules:\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; modprobe ivtv\r\n#&gt; dmesg | grep -i ivtv\r\nivtv:  ==================== START INIT IVTV ====================\r\nivtv:  version 0.10.3 (development snapshot compiled on zo 20 mei 2007 08:57:55 CEST) loading\r\nivtv:  Linux version: 2.6.21.1 SMP mod_unload PENTIUM4 4KSTACKS \r\nivtv:  In case of problems please include the debug info between\r\nivtv:  the START INIT IVTV and END INIT IVTV lines, along with\r\nivtv:  any module options, when mailing the ivtv-users mailinglist.\r\nivtv0: Autodetected Hauppauge card (cx23415 based)\r\nivtv0: loaded v4l-cx2341x-enc.fw firmware (376836 bytes)\r\nivtv0: loaded v4l-cx2341x-dec.fw firmware (262144 bytes)\r\nivtv0: Encoder revision: 0x02060039\r\nivtv0: Decoder revision: 0x02020023\r\nivtv0: Autodetected Hauppauge WinTV PVR-350\r\ntuner 1-0061: chip found @ 0xc2 (ivtv i2c driver #0)\r\nsaa7115 1-0021: saa7115 found (1f7115d0e100000) @ 0x42 (ivtv i2c driver #0)\r\nsaa7127 1-0044: saa7127 found @ 0x88 (ivtv i2c driver #0)\r\nmsp3400 1-0040: MSP4418G-A2 found @ 0x80 (ivtv i2c driver #0)\r\nivtv0: Registered device video0 for encoder MPEG (4 MB)\r\nivtv0: Registered device video32 for encoder YUV (2 MB)\r\nivtv0: Registered device vbi0 for encoder VBI (1 MB)\r\nivtv0: Registered device video24 for encoder PCM audio (1 MB)\r\nivtv0: Registered device radio0 for encoder radio\r\nivtv0: Registered device video16 for decoder MPEG (1 MB)\r\nivtv0: Registered device vbi8 for decoder VBI (1 MB)\r\nivtv0: Registered device vbi16 for decoder VOUT\r\nivtv0: Registered device video48 for decoder YUV (1 MB)\r\nivtv0: loaded v4l-cx2341x-init.mpg firmware (155648 bytes)\r\nivtv0: Initialized Hauppauge WinTV PVR-350, card #0\r\nivtv:  ======================  NEXT CARD  ======================\r\nivtv1: Autodetected Hauppauge card (cx23416 based)\r\nivtv1: loaded v4l-cx2341x-enc.fw firmware (376836 bytes)\r\nivtv1: Encoder revision: 0x02060039\r\ntuner 2-0043: chip found @ 0x86 (ivtv i2c driver #1)\r\ntuner 2-0061: chip found @ 0xc2 (ivtv i2c driver #1)\r\nivtv1: Autodetected Hauppauge WinTV PVR-150\r\nivtv1: reopen i2c bus for IR-blaster support\r\ntuner 2-0043: chip found @ 0x86 (ivtv i2c driver #1)\r\ntuner 2-0061: chip found @ 0xc2 (ivtv i2c driver #1)\r\ncx25840 2-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #1)\r\nwm8775 2-001b: chip found @ 0x36 (ivtv i2c driver #1)\r\nivtv1: Registered device video1 for encoder MPEG (4 MB)\r\nivtv1: Registered device video33 for encoder YUV (2 MB)\r\nivtv1: Registered device vbi1 for encoder VBI (1 MB)\r\nivtv1: Registered device video25 for encoder PCM audio (1 MB)\r\nivtv1: Initialized Hauppauge WinTV PVR-150, card #1\r\nivtv:  ====================  END INIT IVTV  ====================\r\n<\/pre>\n<ul>\n<li> Check the output of the dmesg command. Sometimes a reboot is needed.\n\t<\/li>\n<\/ul>\n<p>\n<strong>When you are using kernel 2.6.21 and higher ivtv and mantis will<br \/>\nnog work together. Depening on which module loads first the mantis<br \/>\nmodule will freeze.<\/strong>\n<\/p>\n<p>\nTo resolve this problem you will have to add extra module parameters to the saa7115 module.<br \/>\nDo the following to determine the values for the module parameters:\n<\/p>\n<ul>\n<li> Get i2c bus number used by the Mantis driver.\n\t<\/li>\n<\/ul>\n<pre>\r\n#&gt; modprobe i2c-dev\r\n#&gt; i2cdetect -l\r\ni2c-3   i2c             ivtv i2c driver #1                      I2C adapter\r\ni2c-2   i2c             ivtv i2c driver #0                      I2C adapter\r\ni2c-1   smbus           Mantis I2C                              SMBus adapter\r\ni2c-0   smbus           SMBus I801 adapter at 0400              SMBus adapter\r\n<\/pre>\n<ul>\n<li> The i2c bus used by the Mantis driver is bus 1 (see i2c-1 part) in this example.\n\t<\/li>\n<li> Add the following line to your \/etc\/modprobe.conf\n\t<\/li>\n<\/ul>\n<pre>\r\noptions saa7115 ignore=1,0x25,1,0x24,1,0x21,1,0x20\r\n<\/pre>\n<ul>\n<li> Replace all the 1&#8217;s (one&#8217;s) with your i2c bus number leave the hexadecimal numbers intact.\n\t<\/li>\n<li> Now reboot your machine and both the mantis and the ivtv modules should load without a problem and work without a problem.\n\t<\/li>\n<\/ul>\n<\/div>\n<p> <a href=\"https:\/\/riscy.biz\/index.php\/2008\/05\/04\/mantis-drivers\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[36,19,9],"class_list":["post-165","post","type-post","status-publish","format-standard","hentry","category-computers","tag-dvb","tag-hardware","tag-linux"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/riscy.biz\/index.php\/wp-json\/wp\/v2\/posts\/165","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/riscy.biz\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/riscy.biz\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/riscy.biz\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/riscy.biz\/index.php\/wp-json\/wp\/v2\/comments?post=165"}],"version-history":[{"count":0,"href":"https:\/\/riscy.biz\/index.php\/wp-json\/wp\/v2\/posts\/165\/revisions"}],"wp:attachment":[{"href":"https:\/\/riscy.biz\/index.php\/wp-json\/wp\/v2\/media?parent=165"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/riscy.biz\/index.php\/wp-json\/wp\/v2\/categories?post=165"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/riscy.biz\/index.php\/wp-json\/wp\/v2\/tags?post=165"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}