€•B4Œsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)”}”(hhh]”(hŒ pending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…””}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ-/translations/zh_CN/admin-guide/media/saa7134”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/zh_TW/admin-guide/media/saa7134”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/it_IT/admin-guide/media/saa7134”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/ja_JP/admin-guide/media/saa7134”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/ko_KR/admin-guide/media/saa7134”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒPortuguese (Brazilian)”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/pt_BR/admin-guide/media/saa7134”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒSpanish”…””}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/sp_SP/admin-guide/media/saa7134”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)”}”(hŒ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…””}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³ŒG/var/lib/git/docbuild/linux/Documentation/admin-guide/media/saa7134.rst”h´KubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒThe saa7134 driver”h]”hŒThe saa7134 driver”…””}”(hhÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhÊh²hh³hÇh´KubhŒ paragraph”“”)”}”(hŒAuthor Gerd Hoffmann”h]”hŒAuthor Gerd Hoffmann”…””}”(hhßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhhÊh²hubhÞ)”}”(hŒPThis is a v4l2/oss device driver for saa7130/33/34/35 based capture / TV boards.”h]”hŒPThis is a v4l2/oss device driver for saa7130/33/34/35 based capture / TV boards.”…””}”(hhíh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K hhÊh²hubhÉ)”}”(hhh]”(hÎ)”}”(hŒStatus”h]”hŒStatus”…””}”(hhþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhûh²hh³hÇh´KubhÞ)”}”(hŒGAlmost everything is working. video, sound, tuner, radio, mpeg ts, ...”h]”hŒGAlmost everything is working. video, sound, tuner, radio, mpeg ts, ...”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khhûh²hubhÞ)”}”(hŒ˜As with bttv, card-specific tweaks are needed. Check CARDLIST for a list of known TV cards and saa7134-cards.c for the drivers card configuration info.”h]”hŒ˜As with bttv, card-specific tweaks are needed. Check CARDLIST for a list of known TV cards and saa7134-cards.c for the drivers card configuration info.”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khhûh²hubeh}”(h]”Œstatus”ah ]”h"]”Œstatus”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´KubhÉ)”}”(hhh]”(hÎ)”}”(hŒBuild”h]”hŒBuild”…””}”(hj3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhj0h²hh³hÇh´KubhÞ)”}”(hŒŒOnce you pick up a Kernel source, you should configure, build, install and boot the new kernel. You'll need at least these config options::”h]”hŒOnce you pick up a Kernel source, you should configure, build, install and boot the new kernel. You’ll need at least these config options:”…””}”(hjAh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khj0h²hubhŒ literal_block”“”)”}”(hX./scripts/config -e PCI ./scripts/config -e INPUT ./scripts/config -m I2C ./scripts/config -m MEDIA_SUPPORT ./scripts/config -e MEDIA_PCI_SUPPORT ./scripts/config -e MEDIA_ANALOG_TV_SUPPORT ./scripts/config -e MEDIA_DIGITAL_TV_SUPPORT ./scripts/config -e MEDIA_RADIO_SUPPORT ./scripts/config -e RC_CORE ./scripts/config -e MEDIA_SUBDRV_AUTOSELECT ./scripts/config -m VIDEO_SAA7134 ./scripts/config -e SAA7134_ALSA ./scripts/config -e VIDEO_SAA7134_RC ./scripts/config -e VIDEO_SAA7134_DVB ./scripts/config -e VIDEO_SAA7134_GO7007”h]”hX./scripts/config -e PCI ./scripts/config -e INPUT ./scripts/config -m I2C ./scripts/config -m MEDIA_SUPPORT ./scripts/config -e MEDIA_PCI_SUPPORT ./scripts/config -e MEDIA_ANALOG_TV_SUPPORT ./scripts/config -e MEDIA_DIGITAL_TV_SUPPORT ./scripts/config -e MEDIA_RADIO_SUPPORT ./scripts/config -e RC_CORE ./scripts/config -e MEDIA_SUBDRV_AUTOSELECT ./scripts/config -m VIDEO_SAA7134 ./scripts/config -e SAA7134_ALSA ./scripts/config -e VIDEO_SAA7134_RC ./scripts/config -e VIDEO_SAA7134_DVB ./scripts/config -e VIDEO_SAA7134_GO7007”…””}”hjQsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jOh³hÇh´Khj0h²hubhÞ)”}”(hŒ&To build and install, you should run::”h]”hŒ%To build and install, you should run:”…””}”(hj_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K.hj0h²hubjP)”}”(hŒ,make && make modules_install && make install”h]”hŒ,make && make modules_install && make install”…””}”hjmsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jOh³hÇh´K0hj0h²hubhÞ)”}”(hŒMOnce the new Kernel is booted, saa7134 driver should be loaded automatically.”h]”hŒMOnce the new Kernel is booted, saa7134 driver should be loaded automatically.”…””}”(hj{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K2hj0h²hubhÞ)”}”(hŒ¨Depending on the card you might have to pass ``card=`` as insmod option. If so, please check Documentation/admin-guide/media/saa7134-cardlist.rst for valid choices.”h]”(hŒ-Depending on the card you might have to pass ”…””}”(hj‰h²hh³Nh´NubhŒliteral”“”)”}”(hŒ ``card=``”h]”hŒ card=”…””}”(hj“h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‘hj‰ubhŒn as insmod option. If so, please check Documentation/admin-guide/media/saa7134-cardlist.rst for valid choices.”…””}”(hj‰h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K4hj0h²hubhÞ)”}”(hŒóOnce you have your card type number, you can pass a modules configuration via a file (usually, it is either ``/etc/modules.conf`` or some file at ``/etc/modules-load.d/``, but the actual place depends on your distribution), with this content::”h]”(hŒlOnce you have your card type number, you can pass a modules configuration via a file (usually, it is either ”…””}”(hj«h²hh³Nh´Nubj’)”}”(hŒ``/etc/modules.conf``”h]”hŒ/etc/modules.conf”…””}”(hj³h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‘hj«ubhŒ or some file at ”…””}”(hj«h²hh³Nh´Nubj’)”}”(hŒ``/etc/modules-load.d/``”h]”hŒ/etc/modules-load.d/”…””}”(hjÅh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‘hj«ubhŒH, but the actual place depends on your distribution), with this content:”…””}”(hj«h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K8hj0h²hubjP)”}”(hŒ=options saa7134 card=13 # Assuming that your card type is #13”h]”hŒ=options saa7134 card=13 # Assuming that your card type is #13”…””}”hjÝsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jOh³hÇh´K=hj0h²hubeh}”(h]”Œbuild”ah ]”h"]”Œbuild”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´KubhÉ)”}”(hhh]”(hÎ)”}”(hŒChanges / Fixes”h]”hŒChanges / Fixes”…””}”(hjöh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhjóh²hh³hÇh´KAubhÞ)”}”(hŒ]Please mail to linux-media AT vger.kernel.org unified diffs against the linux media git tree:”h]”hŒ]Please mail to linux-media AT vger.kernel.org unified diffs against the linux media git tree:”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KChjóh²hubhŒ block_quote”“”)”}”(hŒ#https://git.linuxtv.org/media.git/ ”h]”hÞ)”}”(hŒ"https://git.linuxtv.org/media.git/”h]”hŒ reference”“”)”}”(hjh]”hŒ"https://git.linuxtv.org/media.git/”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”juh1jhjubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KFhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´KFhjóh²hubhÞ)”}”(hŒÝThis is done by committing a patch at a clone of the git tree and submitting the patch using ``git send-email``. Don't forget to describe at the lots what it changes / which problem it fixes / whatever it is good for ...”h]”(hŒ]This is done by committing a patch at a clone of the git tree and submitting the patch using ”…””}”(hj8h²hh³Nh´Nubj’)”}”(hŒ``git send-email``”h]”hŒgit send-email”…””}”(hj@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‘hj8ubhŒp. Don’t forget to describe at the lots what it changes / which problem it fixes / whatever it is good for ...”…””}”(hj8h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KHhjóh²hubeh}”(h]”Œ changes-fixes”ah ]”h"]”Œchanges / fixes”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´KAubhÉ)”}”(hhh]”(hÎ)”}”(hŒKnown Problems”h]”hŒKnown Problems”…””}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhj`h²hh³hÇh´KOubhŒ bullet_list”“”)”}”(hhh]”hŒ list_item”“”)”}”(hŒËThe tuner for the flyvideos isn't detected automatically and the default might not work for you depending on which version you have. There is a ``tuner=`` insmod option to override the driver's default. ”h]”hÞ)”}”(hŒÊThe tuner for the flyvideos isn't detected automatically and the default might not work for you depending on which version you have. There is a ``tuner=`` insmod option to override the driver's default.”h]”(hŒ’The tuner for the flyvideos isn’t detected automatically and the default might not work for you depending on which version you have. There is a ”…””}”(hj|h²hh³Nh´Nubj’)”}”(hŒ ``tuner=``”h]”hŒtuner=”…””}”(hj„h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‘hj|ubhŒ2 insmod option to override the driver’s default.”…””}”(hj|h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KQhjxubah}”(h]”h ]”h"]”h$]”h&]”uh1jvhjsh²hh³hÇh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ*”uh1jqh³hÇh´KQhj`h²hubeh}”(h]”Œknown-problems”ah ]”h"]”Œknown problems”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´KOubhÉ)”}”(hhh]”(hÎ)”}”(hŒCredits”h]”hŒCredits”…””}”(hjµh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhj²h²hh³hÇh´KVubhÞ)”}”(hŒkandrew.stevens@philips.com + werner.leeb@philips.com for providing saa7134 hardware specs and sample board.”h]”(j)”}”(hŒandrew.stevens@philips.com”h]”hŒandrew.stevens@philips.com”…””}”(hjÇh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œ!mailto:andrew.stevens@philips.com”uh1jhjÃubhŒ + ”…””}”(hjÃh²hh³Nh´Nubj)”}”(hŒwerner.leeb@philips.com”h]”hŒwerner.leeb@philips.com”…””}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œmailto:werner.leeb@philips.com”uh1jhjÃubhŒ7 for providing saa7134 hardware specs and sample board.”…””}”(hjÃh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KXhj²h²hubeh}”(h]”Œcredits”ah ]”h"]”Œcredits”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´KVubeh}”(h]”Œthe-saa7134-driver”ah ]”h"]”Œthe saa7134 driver”ah$]”h&]”uh1hÈhhh²hh³hÇh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÇuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)”}”(hÍNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”j(Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÇŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(jjÿj-j*jðjíj]jZj¯j¬júj÷uŒ nametypes”}”(j‰j-‰jð‰j]‰j¯‰jú‰uh}”(jÿhÊj*hûjíj0jZjój¬j`j÷j²uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.