色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于一位驅(qū)動工程師的感悟

工程師人生 ? 來源:網(wǎng)絡(luò)整理 ? 作者:工程師4 ? 2018-06-01 18:04 ? 次閱讀

不知不覺做驅(qū)動再過2個月就3年了,可以說這3年學(xué)習(xí)到的很多,老大或者同事們的指教,針對性通過百度等搜索等,還有就是自己一邊工作一邊自己 研究到的知識,解決問題的能力也是慢慢積累起來的。

這二年多來一直在做驅(qū)動,由開始開始接觸調(diào)試LCD TP等等,每次會重復(fù)做事,但是自己學(xué)習(xí)到的也很多,學(xué)會分析關(guān)鍵問題,掌握一些驅(qū)動調(diào)試方法,其實(shí)調(diào)試驅(qū)動來說一個printk真的夠了,再強(qiáng)大不過了,調(diào)試過高通modem側(cè)代碼后發(fā)現(xiàn)kernel是多么好調(diào)試。

再調(diào)試LCD中首先研究懂得了一些平臺操作display的流程與kernel背光操作,之后解決問題就很熟手了。比較難的就是調(diào)試qct的lk里面的lcd顯示與開機(jī)logo保持,這些感覺對于剛開始做驅(qū)動還是蠻吃力的那段時間壓力很大,期間會使用delay來調(diào)試lk與kernel剛啟動出現(xiàn)的問題,比與說在lk里面logo消失或者kernel剛啟動時消失,調(diào)試過一次lcd lk display后后面不亮的或者其它問題的都很好解決了,當(dāng)然是qct的,調(diào)試qrd就輕松多了,主要是問題比較少。啟動時顯示出現(xiàn)問題使用delay就很好查了,有的可能說串口輸出,但是實(shí)踐證明delay是最實(shí)用的。當(dāng)然串口輸出調(diào)試確實(shí)很好比如死機(jī)等等,很強(qiáng)大,個人感覺只要可以輸出log,就很難存在解決不了的問題。

對于TP,無非采樣上報,屬于i2c設(shè)備同時屬于input設(shè)備,調(diào)試期間遇見的更多是FAE優(yōu)化抗干擾與報點(diǎn),睡眠電流,喚醒不能工作等問題。相比lcd簡單的多。搞lcd tp差不多了,感覺掌握的很好,問題出現(xiàn)可以快速解決了,之后又搞了charge與batt,同時像休眠問題也在搞,后面一直從事電源管理方面的。charge與batt個人感覺功能ok后后續(xù)還是需要試用期間慢慢優(yōu)化的,特別是電量不準(zhǔn)確問題,做qct出現(xiàn)過插上charger后不能充電問題,還有許多其他的問題量產(chǎn)前都會慢慢出現(xiàn),個人覺得只要熟悉Linuxpower部分解決不是很難的,還是那句話linux kernel出現(xiàn)的問題由于有printk最容易解決的,除非是硬件問題。

是的驅(qū)動與硬件經(jīng)常相互指責(zé),當(dāng)出現(xiàn)問題的時候。再說camera,只記得第一年搞過高通realease出來的一個sense模組,還有一個需要在其它平臺移植過來的驅(qū)動,調(diào)試過程中無非上上電,拉下RST,移植中出現(xiàn)空指針等,解決完遇見的問題后camera最終會亮起來,當(dāng)然之后還需要tunning。這個是個很費(fèi)力的活,同時很耗時間。以后沒有干過camera了,個人覺得還是繼續(xù)研究linux kernel里面的為好,畢竟是做驅(qū)動,而不是去為了camera效果一直去tunning。tunning需要專門的人去做,一旦專門tunning就很難有時間做別的活了。當(dāng)然有些公司給tunnning camera的待遇很好,即使這樣我也不會動心去深入搞這塊。個人愛好等不一樣,后面一直專注于linux kernel。

所在公司不光做手機(jī)還會集成其它的模塊,這樣開發(fā)起來相比只做手機(jī)的難度大了許多,很多東西自己得去研究。比如集成第三方modem,驅(qū)動工程師活也多,雖然一般廠家會提供驅(qū)動但是適配到新的平臺難免有許多問題,甚至很嚴(yán)重的問題需要分析解決。

開發(fā)難度上層最大,但是驅(qū)動是基礎(chǔ),所以穩(wěn)定性等要求比較高。比如集成UART掛載的模塊,會涉及到串口通訊驅(qū)動與數(shù)據(jù)流等問題。還有sdio接口的模塊比如網(wǎng)卡 特別功能的T卡等模塊,這里簡單的說下可熱插拔的sdio設(shè)備,當(dāng)插入設(shè)備時,首先sdcc host會出發(fā)中斷,在core.c里面會根據(jù)協(xié)議來detect是什么接口設(shè)備是sd還是sdio還是mmc,檢測到后會出現(xiàn)log:new high speed xxxx,之后就加載驅(qū)動。

說下usb,拿usb接口的網(wǎng)卡來說下usb流程,首先當(dāng)kernel啟動時hub會檢測到usb設(shè)備,通過2次RST port來獲取設(shè)備描敘符,設(shè)置address,我們在驅(qū)動里面需要找到對應(yīng)的驅(qū)動,對于usb網(wǎng)卡來說,在driver/net/usb下面有許多類似的驅(qū)動程序,可以找到最匹配的一個來使用,加入獲取到的PID VID CALSS等信息,host會通過這些信息來match對應(yīng)的usb設(shè)備接口,當(dāng)然許多usb設(shè)備不止一個接口,usb通訊可以理解為多個高通串口,這里很可能需要根據(jù)不同的CLASS或者INTERFACE來加載不同的驅(qū)動,對于網(wǎng)卡驅(qū)動來說有自己driver模型而不需要字符設(shè)備等供上層交互,usb設(shè)備驅(qū)動是linux最復(fù)雜點(diǎn)的,就說這么多。

等到集成到AP上的模塊可以正常工作后,你會發(fā)現(xiàn)幾乎每個模塊由于使用到了linux下面的總線,會導(dǎo)致休眠不了,不同的接口都需要自己研究處理,讓kernel休眠下來,這部分很多需要自己的摸索。尤其是usb驅(qū)動的休眠是最不好處理的,涉及到runtime機(jī)制。對于手機(jī)廠家來說調(diào)驅(qū)動更多的是他們家的外設(shè),通常都有模板。

但是對于集成更多功能的嵌入式產(chǎn)品來說,功能很豐富,附加值高,開發(fā)難度更多,大量的上層需要自己做,就做驅(qū)動而言,首先底層需要提供一個類似字符設(shè)備或者misc設(shè)備接口等供上層讀寫,驅(qū)動寫好后需要寫個簡單的測試程序來open write read文件,再跟下kernel里面的數(shù)據(jù)流,查查硬件通訊有沒有問題,模塊接收到?jīng)]有,會不會丟數(shù)據(jù)等等,這些穩(wěn)定性會在后期暴漏出來慢慢改進(jìn)。等一切ok后就是kernel里面的睡眠與喚醒了,當(dāng)然還有第三方模塊自己的功耗問題這個第三方負(fù)責(zé)了。

去年經(jīng)歷過一個很難解決的問題就是高端平臺上1080P LCD偶爾會藍(lán)屏的問題,但是通常一周可能才出現(xiàn)一次左右,甚至不會出現(xiàn)。當(dāng)時頂著壓力花費(fèi)很久最終還是解決了。提case給高通,他們給的不能解決,最后是自己硬著頭皮解決的,這個問題難在復(fù)現(xiàn)bug很難,后來發(fā)現(xiàn)某個大廠這個平臺上都有這個問題,很慶幸自己能解決大廠不能解決的問題。

解決后高通支持反過來問如何解決的?倒是很滋潤。對于高通支持工程師我想說,他們支持越來越慢,很多時候完全靠自己,居然有時說沒有機(jī)器,但是每次關(guān)閉case還是習(xí)慣性好評。

從去年開始可以給公司解決一些比較難的底層問題到現(xiàn)在領(lǐng)導(dǎo)把LCD等外設(shè)交給新入職的調(diào)試,個人能力慢慢成長,現(xiàn)在還是很關(guān)注linux kernel里面一些驅(qū)動等研究,解決一些有難度的問題。雖說說不上精通linux kernel但是可以說非常熟悉,產(chǎn)品底層出現(xiàn)問題可以快速定位分析。個人感覺即使做驅(qū)動十年也談不上精通,畢竟linux kerne是個系統(tǒng)內(nèi)核,精髓在內(nèi)存管理等等,說精通恐怕只有那些提交linux改進(jìn)優(yōu)化系統(tǒng)內(nèi)核的人。

前段時間看過別人評價做mtk驅(qū)動的,說怎么怎么簡單,害了年輕人,個人很慶幸當(dāng)時入職選擇了做高通驅(qū)動。之前也是可以選擇做mtk驅(qū)動的或者wince的。再加上這家公司技術(shù)實(shí)力還是比較牛逼的在業(yè)界。自己做高通,就我熟知的kernel代碼確實(shí)很漂亮,外國人寫的質(zhì)量很高,同時設(shè)備驅(qū)動很豐富,對于剛參加工作的人確實(shí)很有益處,學(xué)到的非常的多。對于mtk自己沒有做過,雖然別人說怎么怎么樣,但是國產(chǎn)的畢竟跑起來的也是很牛逼的。個人覺得知識在于深入研究才會長能力。以后有機(jī)會倒是想多接觸幾個平臺。但是做linux驅(qū)動的感覺與平臺關(guān)系也不是很大,畢竟Linux大的框架擺在那里。

記得剛?cè)肼殨r干活很急很浮躁,恨不得一下功能就ok。但是現(xiàn)在干活更多的是享受,一種積累,一種深入發(fā)掘的過程。做產(chǎn)品更多的是關(guān)注是自己后期試用來找出或者測試出來的問題,同時定位解決問題。

后續(xù)個人發(fā)展方向:研究音頻方面,之前自己也學(xué)習(xí)了不少,但是沒有親自做過,這些都是別人負(fù)責(zé)的,自己也會拿手機(jī)去debug比如耳機(jī)插拔 按鍵 speaker等。這些都是簡單的,軟件上更多的是底層通道切換等等。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • lcd
    lcd
    +關(guān)注

    關(guān)注

    34

    文章

    4426

    瀏覽量

    167463
  • 驅(qū)動
    +關(guān)注

    關(guān)注

    12

    文章

    1840

    瀏覽量

    85287
收藏 人收藏

    評論

    相關(guān)推薦

    笑死,掌握眼識別資深硬件工程師的訣竅了!# #電路知識 #電工 #硬核拆解

    硬件工程師
    MDD辰達(dá)半導(dǎo)體
    發(fā)布于 :2024年12月20日 17:48:17

    尋求專業(yè)工程師幫助設(shè)計USB多口充電器

    嗨, 我正在開發(fā)款USB多口充電器,現(xiàn)尋求一位專業(yè)工程師或產(chǎn)品設(shè)計的幫助。希望能夠與有經(jīng)驗的工程師合作,共同完成產(chǎn)品設(shè)計。以下是我們的需
    發(fā)表于 08-05 12:03

    正是拼的年紀(jì)|65歲電子工程師上班VLOG #65歲退休 #電子工程師 #搞笑 #上班vlog

    電子工程師
    安泰小課堂
    發(fā)布于 :2024年07月25日 11:31:02

    嵌入式軟件工程師如何提升自己?

    ,可以為自己的職業(yè)生涯打下堅實(shí)的基礎(chǔ),并實(shí)現(xiàn)個人的職業(yè)目標(biāo)。愿每一位嵌入式軟件工程師都能在這個充滿挑戰(zhàn)和機(jī)遇的領(lǐng)域中取得成功!
    發(fā)表于 06-12 11:20

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    嵌入式軟件工程師和硬件工程師的區(qū)別? 嵌入式軟件工程師 嵌入式軟件工程師是軟件開發(fā)領(lǐng)域中的種專業(yè)工程師
    發(fā)表于 05-16 11:00

    大廠電子工程師常見面試題#電子工程師 #硬件工程師 #電路知識 #面試題

    電子工程師電路
    安泰小課堂
    發(fā)布于 :2024年04月30日 17:33:15

    為何國外工程師偏愛使用for(;;)來實(shí)現(xiàn)MCU死循環(huán)?

    一位工程師發(fā)現(xiàn),國外工程師在給demo在做死循環(huán)時用的是for(;;),而不是常用的while(1)。這僅僅是個人習(xí)慣的問題,還是有更深層次的含義?
    發(fā)表于 04-01 11:26 ?645次閱讀
    為何國外<b class='flag-5'>工程師</b>偏愛使用for(;;)來實(shí)現(xiàn)MCU死循環(huán)?

    一位硬件工程師的歷練之路:從入門學(xué)習(xí)理論到... #搞笑 #硬件工程師 #電子工程師 #揚(yáng)興科技

    硬件工程師揚(yáng)興科技
    揚(yáng)興科技
    發(fā)布于 :2024年03月13日 17:50:21

    企業(yè)老工程師和高校老師有啥區(qū)別

    電子工程師硬件
    電子發(fā)燒友網(wǎng)官方
    發(fā)布于 :2024年02月28日 17:50:00

    如何搞崩個硬件工程師心態(tài)?試試對ta說這幾句

    硬件工程師
    揚(yáng)興科技
    發(fā)布于 :2024年02月20日 18:05:49
    主站蜘蛛池模板: 色宅男午夜电影网站| 午夜AV亚洲一码二中文字幕青青 | 免费在线观看黄色网址| 色欲久久精品AV无码| 伊人网综合网| 吃奶啃奶玩乳漫画| 极品少妇粉嫩小泬啪啪AV| 皮皮色狼网| 伊人精品视频直播| 姑娘视频日本在线播放| 久久久久久久久久久福利观看| 三级网站视频| 最好看中文字幕国语| 国产精品永久免费视频| 欧美阿v天堂视频在99线| 亚洲理论片在线中文字幕| 超碰免费视频公开观看| 久久网站视频| 亚洲AV成人片色在线观看网站 | 欧美不卡一区二区三区| 亚洲午夜精品aaa级久久久久| 成年人视频免费在线观看| 久久夜色撩人精品国产| 小小水蜜桃免费影院| va亚洲va天堂va视频在线| 久久久无码精品亚洲A片软件| 四虎永久免费网址| 奶头被客人吸得又红又肿| 午夜在线观看免费完整直播网| 99视频精品全部免费观看| 久久99精品国产免费观看| 午夜伦理yy44008影院| 草莓西瓜樱桃香蕉直播视频| 毛片亚洲毛片亚洲毛片| 亚洲欧美日韩另类精品一区二区三区| 第一精品福利导福航| 嗯啊哈啊好棒用力插啊| 中国xxxxx69| 精品国产露脸久久AV麻豆| 同居了嫂子在线观看| 吃春药后的女教师|