⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 linux-drivers-media-video-tea5767_c.htm

📁 这是一款聚电视和收音为一体的微处理器 C++ 源代码,成果奉献,供广大的底层软件开发者学习和参考
💻 HTM
📖 第 1 页 / 共 5 页
字号:
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L220" name=L220>220</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_dbg">tuner_dbg</A> (<I>"TEA5767 radio HIGH LO inject xtal @ 13 MHz\n"</I>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L221" name=L221>221</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[2] |= <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_HIGH_LO_INJECT">TEA5767_HIGH_LO_INJECT</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L222" name=L222>222</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[4] |= <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_PLLREF_ENABLE">TEA5767_PLLREF_ENABLE</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L223" name=L223>223</A>                 div = (frq * (4000 / 16) + 700000 + 225000 + 25000) / 50000;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L224" name=L224>224</A>                 break;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L225" name=L225>225</A>         case TEA5767_LOW_LO_13MHz:
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L226" name=L226>226</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_dbg">tuner_dbg</A> (<I>"TEA5767 radio LOW LO inject xtal @ 13 MHz\n"</I>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L227" name=L227>227</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L228" name=L228>228</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[4] |= <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_PLLREF_ENABLE">TEA5767_PLLREF_ENABLE</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L229" name=L229>229</A>                 div = (frq * (4000 / 16) - 700000 - 225000 + 25000) / 50000;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L230" name=L230>230</A>                 break;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L231" name=L231>231</A>         case TEA5767_LOW_LO_32768:
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L232" name=L232>232</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_dbg">tuner_dbg</A> (<I>"TEA5767 radio LOW LO inject xtal @ 32,768 MHz\n"</I>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L233" name=L233>233</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[3] |= <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_XTAL_32768">TEA5767_XTAL_32768</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L234" name=L234>234</A>                 <B><I>/* const 700=4000*175 Khz - to adjust freq to right value */</I></B>
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L235" name=L235>235</A>                 div = ((frq * (4000 / 16) - 700000 - 225000) + 16384) &gt;&gt; 15;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L236" name=L236>236</A>                 break;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L237" name=L237>237</A>         case TEA5767_HIGH_LO_32768:
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L238" name=L238>238</A>         default:
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L239" name=L239>239</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_dbg">tuner_dbg</A> (<I>"TEA5767 radio HIGH LO inject xtal @ 32,768 MHz\n"</I>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L240" name=L240>240</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L241" name=L241>241</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[2] |= <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_HIGH_LO_INJECT">TEA5767_HIGH_LO_INJECT</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L242" name=L242>242</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[3] |= <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_XTAL_32768">TEA5767_XTAL_32768</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L243" name=L243>243</A>                 div = ((frq * (4000 / 16) + 700000 + 225000) + 16384) &gt;&gt; 15;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L244" name=L244>244</A>                 break;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L245" name=L245>245</A>         }
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L246" name=L246>246</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[0] = (div &gt;&gt; 8) &amp; 0x3f;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L247" name=L247>247</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[1] = div &amp; 0xff;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L248" name=L248>248</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L249" name=L249>249</A>         if (5 != (<A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A> = <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_master_send">i2c_master_send</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>, 5)))
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L250" name=L250>250</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_warn">tuner_warn</A>(<I>"i2c i/o error: rc == %d (should be 5)\n"</I>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L251" name=L251>251</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L252" name=L252>252</A>         if (<A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_debug">tuner_debug</A>) {
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L253" name=L253>253</A>                 if (5 != (<A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A> = <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_master_recv">i2c_master_recv</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>, 5)))
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L254" name=L254>254</A>                         <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_warn">tuner_warn</A>(<I>"i2c i/o error: rc == %d (should be 5)\n"</I>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L255" name=L255>255</A>                 else
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L256" name=L256>256</A>                         <A href="http://www.linux-m32r.org/lxr/http/ident?i=tea5767_status_dump">tea5767_status_dump</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L257" name=L257>257</A>         }
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L258" name=L258>258</A> }
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L259" name=L259>259</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L260" name=L260>260</A> static int <A href="http://www.linux-m32r.org/lxr/http/ident?i=tea5767_signal">tea5767_signal</A>(struct <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_client">i2c_client</A> *<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>)
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L261" name=L261>261</A> {
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L262" name=L262>262</A>         unsigned char <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[5];
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L263" name=L263>263</A>         int <A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L264" name=L264>264</A>         struct <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner">tuner</A> *t = <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_get_clientdata">i2c_get_clientdata</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L265" name=L265>265</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L266" name=L266>266</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=memset">memset</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>, 0, sizeof(<A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>));
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L267" name=L267>267</A>         if (5 != (<A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A> = <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_master_recv">i2c_master_recv</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>, 5)))
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L268" name=L268>268</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_warn">tuner_warn</A>(<I>"i2c i/o error: rc == %d (should be 5)\n"</I>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L269" name=L269>269</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L270" name=L270>270</A>         return ((<A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[3] &amp; <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_ADC_LEVEL_MASK">TEA5767_ADC_LEVEL_MASK</A>) &lt;&lt; 8);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L271" name=L271>271</A> }
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L272" name=L272>272</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L273" name=L273>273</A> static int <A href="http://www.linux-m32r.org/lxr/http/ident?i=tea5767_stereo">tea5767_stereo</A>(struct <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_client">i2c_client</A> *<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>)
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L274" name=L274>274</A> {
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L275" name=L275>275</A>         unsigned char <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[5];
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L276" name=L276>276</A>         int <A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L277" name=L277>277</A>         struct <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner">tuner</A> *t = <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_get_clientdata">i2c_get_clientdata</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L278" name=L278>278</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L279" name=L279>279</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=memset">memset</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>, 0, sizeof(<A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>));
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L280" name=L280>280</A>         if (5 != (<A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A> = <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_master_recv">i2c_master_recv</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>, 5)))
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L281" name=L281>281</A>                 <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_warn">tuner_warn</A>(<I>"i2c i/o error: rc == %d (should be 5)\n"</I>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L282" name=L282>282</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L283" name=L283>283</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A> = <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[2] &amp; <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_STEREO_MASK">TEA5767_STEREO_MASK</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L284" name=L284>284</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L285" name=L285>285</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner_dbg">tuner_dbg</A>(<I>"TEA5767 radio ST GET = %02x\n"</I>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L286" name=L286>286</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L287" name=L287>287</A>         return ((<A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[2] &amp; <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_STEREO_MASK">TEA5767_STEREO_MASK</A>) ? <A href="http://www.linux-m32r.org/lxr/http/ident?i=V4L2_TUNER_SUB_STEREO">V4L2_TUNER_SUB_STEREO</A> : 0);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L288" name=L288>288</A> }
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L289" name=L289>289</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L290" name=L290>290</A> static void <A href="http://www.linux-m32r.org/lxr/http/ident?i=tea5767_standby">tea5767_standby</A>(struct <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_client">i2c_client</A> *<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>)
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L291" name=L291>291</A> {
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L292" name=L292>292</A>         unsigned char <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[5];
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L293" name=L293>293</A>         struct <A href="http://www.linux-m32r.org/lxr/http/ident?i=tuner">tuner</A> *t = <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_get_clientdata">i2c_get_clientdata</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>);
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L294" name=L294>294</A>         unsigned div, <A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L295" name=L295>295</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L296" name=L296>296</A>         div = (87500 * 4 + 700 + 225 + 25) / 50; <B><I>/* Set frequency to 87.5 MHz */</I></B>
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L297" name=L297>297</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[0] = (div &gt;&gt; 8) &amp; 0x3f;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L298" name=L298>298</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[1] = div &amp; 0xff;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L299" name=L299>299</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[2] = <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_PORT1_HIGH">TEA5767_PORT1_HIGH</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L300" name=L300>300</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[3] = <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_PORT2_HIGH">TEA5767_PORT2_HIGH</A> | <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_HIGH_CUT_CTRL">TEA5767_HIGH_CUT_CTRL</A> |
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L301" name=L301>301</A>                     <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_ST_NOISE_CTL">TEA5767_ST_NOISE_CTL</A> | <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_JAPAN_BAND">TEA5767_JAPAN_BAND</A> | <A href="http://www.linux-m32r.org/lxr/http/ident?i=TEA5767_STDBY">TEA5767_STDBY</A>;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L302" name=L302>302</A>         <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>[4] = 0;
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L303" name=L303>303</A> 
<A href="http://www.linux-m32r.org/lxr/http/source/drivers/media/video/tea5767.c#L304" name=L304>304</A>         if (5 != (<A href="http://www.linux-m32r.org/lxr/http/ident?i=rc">rc</A> = <A href="http://www.linux-m32r.org/lxr/http/ident?i=i2c_master_send">i2c_master_send</A>(<A href="http://www.linux-m32r.org/lxr/http/ident?i=c">c</A>, <A href="http://www.linux-m32r.org/lxr/http/ident?i=buffer">buffer</A>, 5)))
<A hr

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -