目前日期文章:201006 (5)

瀏覽方式: 標題列表 簡短摘要

  Man cannot love until after sad and revealing separation ,and bitter patience ,and desperate hardship. Darkness may hide the trees and the flowers from the eyes ,but it cannot hide love from the soul.


傑克鼠 發表在 痞客邦 PIXNET 留言(0) 人氣()

procfs是Linux下的一個虛擬檔案系統,當linux開機後核心所建立,方便使用者查看驅動程式、核心結構參數與以及記錄系統狀況等等,這個資落夾並不存於硬碟,所以檔案大小是0位元別以為它是空的,相反的它可是詳細記錄著系統所有的資訊。舉例而言,可以查看/proc/cpuinfo查詢CPU資訊、/proc/meminfo查詢記憶體資訊、/proc/interrupts查詢中斷設置、/proc/tty/driver/serial查詢串列資訊,當然前提是要有串列介面才能查詢。因此像ps這類型系統工具其實也不過是透過proc的檔案取得資訊,若是要開發系統效能監控等工具可以試著從/proc資料夾著手。


傑克鼠 發表在 痞客邦 PIXNET 留言(0) 人氣()

先前提過,想要在任何CPU上成功移值Android須,需要修改Linux kernel;想要周邊設備都正常工作,就需要編寫Driver。Linux kernel src是非常龐大的,這邊提供我記得的重點項目:

arch/arm/kernel/

  • entry-armv.S 中斷設置

 

include/asm-$(ARCH)/

  • io.h:定義硬體 I/O 的腳位
  • serial.h:定義可用的串列埠I/O 的腳位
  • time.h:real-time clock 相關的定義
  • irq.h:有關中斷的mask,與計時器中斷程式
  • irqs.h:定義目標板上的一些中斷來源
  • hardware.h:硬體相關的一些常數之定義

傑克鼠 發表在 痞客邦 PIXNET 留言(0) 人氣()

我們都知道Android核心是Linux,要編譯一個能在P750執行的核心就要搞定Linux上的Driver,例如螢幕、觸碰屏、鍵盤按鈕等等,完成這些Driver的編寫Android才能正常運作。而編寫Driver可以分兩步驟執行,第一步是先了解P750使用的IC,第二步驟就是了解控制電路與接線。本篇先來簡單的─了解P750使用的IC,要達到這個目的最直接的方式當然是把P750解體,所幸P750算是非常好拆的機子,拆解如下描述:
IMG_9520 IMG_9623

IMG_9624 IMG_9626

IMG_9628 IMG_9630

拆開很簡單,電池蓋拆開後把上方天線蓋直接拔開便可看到上下共四顆螺絲,轉開螺絲後照上圖用指甲或一字起子扳開即可把後蓋整個打開,如上面幾張圖。妳就會看到一個金屬EMC保護蓋,順手金屬蓋從兩側扳開,便會露出P750的核心部分。

傑克鼠 發表在 痞客邦 PIXNET 留言(2) 人氣()

把微軟WinMo介面的P750手機上移植Android,跟移植到ARM開發版有些不同,一方面ARM開發版電路是公開的、CPU上GPIO接腳都已知,IC也都是一目了然,這對編改Linux driver非常方便;第二個問題是Bootloader,P750上的bootloader已經是for WinMO,要改動這個 for Android並不是那麼容易,除了使用JTAG去燒寫外沒別的門路。

當然就會有人想,能不能有一個軟體介於Bootloader與Android核心之間做轉換介面?恩,正是如此,仿間將WinMo手機改成Android的正是用此種方法,不用動到原廠的Bootloader也能跑起Android,這軟體叫:HaRET(Handheld Reverse Engineering Tool)。

所以,只要能讓WinMO手機正常執行HaRET就是跨出改機的第一步,這個難度並不高,大部分WinMO手機都能順利跑起HaRET。

之後面對的就是Android Driver編寫的問題,這部分必須了解IC佈局和GPIO接腳,這會是一個重大工程,如果這一步卡住之後也不用再進行了。

研究IC與電路佈局時,順便建立一下開發環境,畢竟安裝Linux和下載Android Source是可以花掉一天的時間。

傑克鼠 發表在 痞客邦 PIXNET 留言(0) 人氣()

找更多相關文章與討論