原创 從零開始寫觸屏代碼

首先劃分一下結構: 從驅動功能上看: 1.報點。(包涵了設備初始化,input設備的註冊,中斷的註冊,中斷處理函數等功能) 2.虛擬按鍵。(這裏之需要建立合適的sys節點就可以了) 3.FW升級。(上層提供FW的文件指針和大小等參數,驅動

原创 感覺四年來也沒什麼進步

1.接下來的計劃就是利用以前學的東西多寫一些博客,多學學別人的學習方法。 2.定時整理學過的東西,定時自己好好學習學習! 3.有步驟的學習。

原创 如果利用高通內部定時器輸出固定時間的pwm波形

項目開發過程中,有些設備需要pwm去驅動,例如馬達。在馬達運動過程中算法需要對馬達的具體步數進行設置,由於sleep和定時器都存在不精確的問題,這時候需要高通PMIC內部寄存器來對pwm時間進行設置。 設置方法主要參考qpnp_leds.

原创 adb fastboot SecureCRT flash_tool 和VNC工具的安裝使用

在裸機狀態下: 首先要安裝java,要不然即使後續工作做好,也不會識別fastboot的。 編譯AndroidL的話,要用java 1.7,以後用1.6的機會會越來越少。 安裝方法:sudo apt-get install openjdk

原创 MTK 增加usb轉串口modem調試步驟

1.MTK在上層默認是支持雙卡操作的,應該在上層將其改爲單卡操作。 2.MTK RIL層是支持mux協議轉換的,和谷歌原生RIL的差距也比較大,這個地方也要改到改掉。具體涉及到device.mk init.rc  init.modem.r

原创 Ubuntu14.04系統下搜狗拼音輸入法遇到的問題

使用過程中輸入法遇到異常,重裝n次仍未解決問題. 後無意中發現一種方法解決了此問題: 1.徹底卸載搜狗拼音輸入法 http://jingyan.baidu.com/article/9faa723154c3dc473d28cb41.html

原创 Android L 如何使用fastboot

安全原因,fastboot 在android上不能像以前那樣直接用了. 同事看了下代碼發現android還是給留了一條後路的. 直接進入主題: 前面和以前一樣 執行:fastboot flash boot  boot.img 之前 執行:

原创 device tree在觸屏中的實際應用

/* 首先是在dtsi中定義一些和設備(觸屏)相關的重要變量。 定義這些個變量的目的就是在不同項目中,去讀取與該項目對應 的dtsi文件,對於觸屏,提高了代碼的兼容性,使內核代碼更清晰明瞭。 */ /*首先看一下dtsi文件裏寫了什

原创 關於一個合格的驅動工程師

有些驅動工程師比較膚淺,對什麼的瞭解都只是泛泛瞭解,不深入。 所以要做一個合格的驅動工程師應該瞭解的具體一些,不要只是知道改哪裏就完事兒了! 要有打破砂鍋問到底的精神 還有就是學習別人的優點 比如說小A雖然腦袋不好使,但是一直在學習,每天

原创 最近的工作

最近工作節奏比較亂 主要是在負責藍牙,led燈效,hdmi in相關的工作. 每個模塊的bug都不少 而且很多bug都是隨着需求的變更而產生的. 藍牙目前的問題主要是遙控器會休眠,休眠喚醒的過程中,按鍵相應沒有那麼快.耗時主要消耗在遙控器

原创 安卓宏預編譯的實現方法

項目需求: 同一套代碼的情形下,通過項目文件定義一些宏來控制代碼的編譯和代碼的邏輯控制。 例如在kernel中: #ifdef xxx .......   #else ...... #endif  --------------------

原创 SDM670 AMSS代碼編譯

  Ubuntu16.04系統下AMSS代碼的編譯 上週高通給的SDM670代碼剛剛釋放,嘗試進行了modem的編譯工作。 首先是編譯工具的準備,按照高通文檔的描述,需要以下工具: 一、工具安裝 1.Snapdragon LLVM Arm

原创 利用uinput模擬touchscreen

  如下代碼,利用了uinput模擬touchscreen,並實現了一個折線的滑動,在820上測試PASS。   #ifndef _GNU_SOURCE #define _GNU_SOURCE #endif #include <stdi

原创 MT6735平臺專網模塊死機問題彙總

關於各種專網模塊死機問題的分析: 一共是有 5 種死機情形,一起來看一下: 1. 第一種是關機過程中產生的死機問題://ZP101模塊 [ 363.781309]<2>-(2)[1:init][<ffffffc0001a9d3c>] ch