顯示具有 科技 標籤的文章。 顯示所有文章
顯示具有 科技 標籤的文章。 顯示所有文章

Bootloader for several different Chip venodr platform

Long time no see everyone.

Tried to write some technical post about Andorid smartphone, and storage device before.

But, it's long time ago.

This time, let's talk about bootloader for Qualcomm, Samsung LSI, Nvidia, TI, STE, and even INTEL.

There are one famous open sourced bootloader, uboot.

For the above platforms, some of them use uboot as basic root and porting their own configuration.

The chip vendors which apply uboot as base include Samsung LSI, TI, STE, INTEL.

So, all the phone maker that develop system on these platform should release their bootloader due to GPL.

It's clear that not everyone want their own code will be visible to all the user so some phone maker will create their own bootloader to replace the opensourced one.

For Qualcomm & Nvidia, they develop their own bootloader for all the clients.

Qualcomm bootloader is named LK(little kernel) for Android and Nvidia develop their portable bootloader for not only Android but other OS.

Not sure about other OS excepts Android.

There might be some difference for all the other OS about the usage of bootloader.

After tracing so many different bootloader code, we could say it was quite different to Linux kernel.

The functionality was limited, and the flexibility was limit by some hard-coded.

But it's really difficult to monitoring all these because there is almost no overlap in bootloader between different platform.

For kernel, we could even refer another kernel to solve some issues.

Samsung Galaxy S3 LTE 韓國KT電信版 開箱文

PC064494
很突然,用了16個月的S2突然死了...因為2年合約還有8個月,當時分期付款的手機尾款還有23萬韓元得陪,然後未滿18個月沒法用47萬元續約S3,得加10萬...
如果不換S3,修S2得花13萬~~決定放棄! 換S3!!!
不過因為沒有酒紅色,挑了跟S2白色不一樣的藍色買了!

用到目前兩周滿意! 不過一開始用的驚奇跟喜歡,已經隨著時間久,適應後,已經沒覺得這麼酷了!

工作滿三年心得2009/8/24~2012/8/23@台灣(ASUS&HTC)&韓國(SAMSUNG)

P5123800
三年了~不是太長的經驗,不過卻已經換了三家公司,也從台灣換到韓國來了...
<~大家七夕情人節快樂~>

從HTC one X vs Samsung Galaxy S3看手機將來發展(補One S事件@5/31)

*礙於科技機密...沒法明確寫出Samsung新手機的SPEC等的細節.

不過眾SmartPhone maker近來的新機器,實在感覺漸漸的缺了新意.
Android機器的開發也是,感覺到boundry在即...不過不影響手機業中短期內的持續成長空間!

HTC One 系列這次的release看似突然的在HW spec上有了大幅的進步,其實不然.
用了一直沒在手機chip上發展得很好的Nvidia的Quadcore Tegra3,拿掉SD跟電池.
另外用了Qualcomm 8960的one XL看來是LTE市場的主要機種,不過同樣缺了SD&電池.
機器也沒因此變得又薄又輕,犧牲掉的跟增進的部分可以感覺到瓶頸浮現.

Samsung Galaxy S & Galaxy S II在市場上銷售成果,除了Iphone外創下不錯的紀錄.
也因此這幾個月來S3的 rumor不斷,市場的期待與關注也不亞於iphone發表

有幸在找第一份工作時候挑到了Android smartphone,也才能在這兩年內深深參與了這短期內
飛快發展的智慧手機產業,一路從ASUS,HTC,到現在的Samsung,著實感覺自己好幸運,
可以在這現階段最火燙的產業裡學習...

在這Samsung就快要發表新手機的前夕,突然想到了接下來該何去何從好?
從feature phone跳到smartphone的user持續增加,smartphone佔手機市場的比例持續增加,
Samsung, Apple等手機廠這兩三年內成長勢必持續.
大概也都還有好多年的好營收好淨利~待在手機廠應該可以穩穩的開心賺錢^^

但是對chip廠或系統廠的RD來說,解決的bug似乎一天比一天空虛無聊.
接下來,怎麼讓storage容量更大速度更快,eMMC, SD, NAND, 甚至是可能會接棒的UFS.
怎麼讓相機更強,又要不讓機器變厚變重,如果這十分容易,那現在DSLR應該不會這麼大台.
怎麼讓手機更人性化,如果人的手指沒法一夕之間變小隻變細,螢幕是沒法縮小的了.
但是變大這本來就有違科技發展,因為像是件反而容易做的事~
只能讓機器更是著聽懂人類的話跟人類互動,不過這發展了可能有近20年也不見什麼大突破.
連語音輸入法都還沒能很厲害的情況下,都沒法辨識精確的情況下,先別提機器要能"回應".
電池一點一點的發展,CHIP卻很快很快的變多核變高頻,storage變大,RAM變大,兩者互相制衡.
充電技術也還沒能大幅的從有線跳脫到遠距離的無線或是其他更便利的方式.
感覺一切都碰到瓶頸,手機大概就這麼停在S II或是S3的時代,龜速前進吧~

究竟,繼手機之後下一個要火紅或是大舉進入人類生活的科技產品會是什麼呢~?
似乎應該趕緊找到看法,盡早卡位了!!!

************************* 近期火紅的HTC one S事件 ****************************

到韓國來發現Samsung跟台灣用的Qualcomm Chip常會稍稍不太一樣...
像8260是搭3G MODEM,HTC主要用這顆~
samsung這用比較多的是8060,這顆是沒有MODEM的~
平板用手機也用,如果出有LTE的市場,就加個Qualcomm支援LTE的MODEM~

很明確的...8260,8060之類的機器比起8960的確是舊一代了~
8260A,這玩意一直到padphone才聽過...samsung似乎沒有案子用這顆~
8260A像是為了3G市場特別開出來的,他跟8960的AP應該是相同的~只是MODEM換了~

naming稍稍不是太合理,8260A跟8260感覺差異大了些...
由於Qualcomm沒拿coretex A9做四核~直接拼8960 coretex A15做雙核,感覺跳了一階~
所以拿8260賣貴貴的話...是真的不這麼理想...

OneX的4核在時間上看來就是8260跟8960(8260A)這兩代之間的產品~
OneXL,出AT&T的是用8960~
Samsung S3跟oneX類似~有4核,也有8960

目前HTC這個one S最大的爭議主要是兩個...
i. 國外用了S4,怎麼台灣換了S3,(看來內部應該是兩個不同的案子無誤~不是突然改的~)
ii. 這個定價稍稍不合理了...除非一開賣就是17900定價,14900售價之類的~

大部分一樣名字的機器,再不同市場用不同的chip主要會是LTE,3G的差異~
或是特定carrier有特別需求~像是US,或是Japan,Korean的差異有時候會大點~
one S名字不變,8260A換8260,理由不太理解.台灣電信商要求的嗎??? 怎麼不乾脆別用One S這名
*猜想是用了one S這名字,這機器的獲利可以稍稍拉高些~

****************** 趁這次回台灣,把玩到了HTC One X ****************************

一握起來,就已經分出勝負了...
One X的背蓋左右兩側,比起營幕左右兩次要凸出些,也沒有圓滑點處理...
手一握,就有種因為手指握感不適的feel....這跟當初一握到S3時候的感覺差異太懸殊...

雖然螢幕大不少,但握著S3,感覺不比握著S2要大多少,
OneX因為左右兩側的背後凸起,感覺不太一樣!

另外,OneX 99連拍看來雞肋...最佳畫面只挑一張....拍到99機率幾乎0,自己從中選也是太便利...
是不是還有其他特點沒試到這幾天找找,然後再去店內把玩把玩展示機~

不過目前看來S3應該還是樂勝..

來韓國可以買-Philips 3D刮鬍刀開箱(RQ1280CC)-我的第一把電動刮鬍刀

PC133133
第一次買電動刮鬍刀,過去都是手動的,希望這把可以用的長長久久,所以挑了最高檔的直接買了!
挑了Philips 3D系列的RQ1280CC,韓國跟台灣有的系列稍稍有落差,特別找了兩地都有的款式.
而1280是兩地都有販售的系列中最高階,所以就決定是他了!

來韓國好幾個月了,一般來說這裡大部分的東西要比台灣貴一些,目前為止找到韓國比較便宜的不多,
最優先會想到的是化妝品,保養品,這個也已經買過不少,然後是這次買電動刮鬍刀的過程比價發現!
韓國電動刮鬍刀要比台灣便宜上很多很多,有到韓國也需要刮鬍刀是可以在這裡選購的!
只是插頭不一樣得轉接一下,但是電壓是110,220通吃的!

總價花了266000韓幣,約台幣7xxx元(隨匯率改變有波動),台灣PCHOME售價16880...
韓國一般網路通路大概3x萬韓幣,台灣實體通路應該可以比PCHOME再便宜一些,
不過整體來說還是便宜好一些,所以在韓國買是會划算點的^^

Samsung GALAXY S II 白色開箱文

P8261961
排隊等了兩天總算等到了!!! GALAXY S2白色!!!
原先除了得排隊等之外,黑色的優惠價格白色沒法享有,
公司區域內撥打免費的方案白色也沒法跟.

今天拿到手機的時候,價格跟黑色一樣,並且內線照常可以申請!
所以唯一的差異只剩下多等了兩天! 好險沒有衝動辦黑色!!!

YADI護腕滑鼠墊開箱文

P7211300
趁著幫老媽挑滑鼠還有滑鼠墊的同時,也給自己買個新滑鼠墊^^
順發購入價$199

A4雙飛燕Q3-400滑鼠開箱文-老媽學電腦的第一隻滑鼠^^ (還有PC Park滑鼠墊)

P7211297
只先教會了老媽用左鍵還有滾輪,所以挑滑鼠的時候,就只挑單純左右鍵+滾輪的光學有線鼠.
挑了很多款,最終選了A4雙飛燕Q3-400!!! 在順發購入$299,另外滑鼠墊花了$99

ACER TimelineX 3830TG 筆電開箱文

P7101187
這次買筆電計畫帶去韓國,使用兩年,希望能挑到台在兩年內能不出問題的機器^^
第一台NB是ASUS W3J, 14吋雙核,這次想挑台在輕薄些的機器

Candidate有,ASUS U36JC, ASUS U31SD, ACER 3830TG
最中先剔除掉的是U36JC, 主因是CPU效能
然後U31SD vs ACER 3830TG
U31SD優勢: 7200轉硬碟 + 4G RAM + 可以拿到便宜價格
3830TG優勢: 2G顯卡 + USB3.0x1 + 外型勝(見仁見智)

最終選了3830TG, 有一部分也是想換個品牌試試~

Android公仔第一代+第二代開箱

P4270614

趁著公司團購,買了第一代的基本款綠色罐頭Android公仔,
然後隨機買了一隻第二代的公仔.

左邊第一代的盒子,Android圖驣是實心的,右邊第二代的圖驣是空心的,設計的很潮啊!
P4270607

Olympus XZ-1 vs Panasonic LX5

SANY5205

先是買了Panasonic LX5,然後帶去日本拍了十分的照片回來.
接著買了Olympus XZ-1,目前主要的隨身機. 也拍了他們兩個外觀的差異.
這次帶著他們兩到新莊棒球場來拍拍照,順便比一比他們拍出來的照片的差異吧!

For better image quality and quantity, pay for Flickr pro account already

I have two account of web album, Google Picasa & Yahoo Flickr.

For the increasing amount of camera image content in this blog, I need to enlarge the size of them by paying money to get more quantity and more ability of the album.

Temporarily, I pay Flickr for one year just about 5 minutes before.
The main reason is the quality of image.
Flickr get better quality because of the larger size of image.
Also, Picasa image seems something wrong in blog tool of most popular article, it could show image.

But it's really hard to make decision because Picasa is much easier for managing and uploading.

From now, I have to find out suitable tools to use or need more effort on maintaining.

There will be much more image taken by Lumix LX5, and might include another Camera soon.
The coming set will be thousands of image about my trip to Japan Kansai.

Panasonic Lumix LX5開箱文

2011-02-18 21.33.01

這次看相機看了約幾個禮拜的時間,期間看過的相機很多....考慮要買的也不少....
最近,網路上點閱率最高的幾個大概是:Panasonic GF2, Canon S95, Olympus XZ-1這幾台...
不過一開始看相機的時候是先看上了Nikon S8100,Sony WX5, TX9, Fuji F300EX, Canon IXUS210
然後看上幾台天涯機,其中最注意的是Canon SX30IS.

期間到過相機王,億華去看相機,不過由於都只能拿著沒拆封的機器或是拆封但是沒電的機子...
實機看完還是沒有辦法多給出些結論....

最終突然有天LX5閃過眼前,這驚鴻一瞥留下滿深的印象...
這下子,過去看過的機器都暫時的退位了,稍稍比較雷同的剩XZ-1...
沒特別多考慮他倆的差異,就直接做了決定買LX5....

要天涯就差望遠稍稍不夠遠,要高檔就差不能換鏡頭....

列一下幾個重要些的規格(這幾個功能是開始看之後才開始學著關注的....):
1/1.63吋CCD
24mm-90mm
3.8倍光學變焦
最大光圈F2.0 – F3.3
1cm 的超微距

接著,來看看機器開箱照的模樣吧....
2011-02-18 21.28.42

Android Smart Phone: Battery

It's a whole new topic for me.
Also, it's a quite important part of phone or even some other hand held device.

Battery capacity by hardware or Software gas gauge, battery state (Charging by AC or USB), battery or process temperature, and low power state detect and shut down device.
There might be more relative issue that I don't mention.

Let's talk about Software Gas Gauge because I focus on this recently.
The purpose of SW Gas Gauge is measure the capacity of battery.
The main idea is that calculate the voltage of battery by software.
The items that we could get from device are Vbat (detected by ADC from chip or PMU) & Vout (also from ADC results).

Vtarget = Vbat + Vsense.
The problem is how to measure Vsence by Vout.

Vsense = Isense *Rsense (we know Rsense)
Isense = Vout / Rout (we know Vout & Rout)

After this we get target V for battery capacity measurement.
We need OCV(Open Circuit Voltage) table to look up corresponding Capacity from Voltage.

However, the capacity are not really accurate.
We have fix the error of charging and non-charging separately.
For Charging, we have to measure the jump up voltage of AC & USB individually.
Then, measure the Vtarget:
Vtarget = = Vbat + Vsense - Verror (Verror are related to AC or USB connected)

Garmin-ASUS A50開箱文

總算等到了...Garmin-ASUS A50.
不多說,直接開始開箱!

從外觀看起!
SANY4711
##CONTINUE##
配件齊全,車充+車架
SANY4710

還沒拆封的A50,看起來螢幕OK大吧~
SANY4716
SANY4717

女生拿起來有這麼一點點感覺它稍稍大了點齁?
SANY4718

附件,USB線,USB轉3.5耳機線,電池,插座轉接頭,
SANY4719

正面,感覺黑的很有質感!
SANY4720

背面SHOW出已經消失的GA雙品牌MARK,將來大家買的會是ASUS牌掛Garmin導航
SANY4721

這玩意兒第一次看到的時候覺得很新奇,這次拆封感覺就比較普通了.
SANY4722

第一次開機擔心電池沒啥電,直接還沒開機就先接上充電器,
畫面會直接跳進充電畫面,還沒撕開保護膜就已經感覺到質感不賴!
SANY4727

機器右側相機拍照實體鍵+車架用的凹槽+音量鍵
SANY4732

上方只有開機鍵,suspend/resume也是靠它.
SANY4733

左側空無一物,只有車架連接槽
SANY4734

下方有收音孔+MINI USB孔
SANY4735

SD是可熱插拔的,SIM卡需移除電池,
SANY4739

SANY4740



最後補上剛上市的廣告^^

Schedule of Android Smartphone development

For every generation of Android system, we could find out one corresponding kernel version.
The main effort of development is not only Android system but also need to take kernel part.

For example, the next generation of Android 2.3 we call Gingerbread use Linux kernel 2.6.35.
The developer will get the BSP(Board Support Package) from platform provider (ex: Qualcomm).
But the BSP will be later than Google's release about few month.
Platform provider, such as Nvidia and Qualcomm, porting Linux kernel 2.6.35 to their platform and also do some little change on Android release.

Before system developer get the official release of BSP, they could do some earlier job on it.
The existing version of Android 2.2, Froyo, use Linux kernel 2.6.32.
The possible porting schedule before BSP release might be porting Gingerbread AOSP(Android Open Source Project) with kernel 2.6.32,
and harder one is porting Linux 2.6.35 on platform with Froyo because kernel is hardware-dependent.
Finally, try to merge 2.6.35 & Pure Gingerbread release from Google.
The purpose of these jobs is shorter the TTM (time to market).

Multiple Storage Device Support in Froyo Mount Service & Volume Daemon

It's a whole new structure in Froyo Mount Service & Volume Daemon compared with previous.
Some developer need to support multiple storage device on their Smartphone or Tablet(pad).

There are several type of solution,
two folder are /storage (phone storage) & /storage/sdcard (external SD)
or /storage & /sdcard
The different folder setting need the different code modification.
I have done a little modification to support state & folder decision from two.

The coming issue is about App to SD card.
There are some configures that need to be changed to enable App to SD from Qualcomm & Nvidia release.

But, I found some problem after I enable this function.
The first one is quite easy, could user install/move their app to another device differed to SD?
I might need to avoid app to another storage device. (fix by modifying package manager service)

The second one is about USB Mass storage (file transfer mode).
Once we want to support two storage, we need to take card about the flow of UMS.
The solution of me is a stack that is suitable for one internal storage and another external SD.
But, it will become much complicated if we got three or more storage device that could shared by file transfer mode.
Stack is still one possible solution but need redundant movement.

Actually, the next problem seems severe.
If I remove the SD card without safe unmount, the app in SD card will crash and become weird.
Now, I keep fixing these issue.

Some more issue is about notification and state flow change.

Android Smartphone- Pure Android & Customized Android

Android smartphone becomes popular recently.
There are two kind of Android smartphone.
The first one is pure Android system, like Google Nexus one or Moto Droid.
The Android on them are almost open source from Google.

The second type is about some change by developer, HTC, or Garmin-Asus.
But, the range of modification is still quite different.

I am not familiar with HTC SW development.
Let's talk about customized Android system in Garmin-Asus.
Recently, A50 & A10 are released.
User could find out the big different between traditional Android & Garmin-Asus system.

The big three in Donut are whole new UI called breeze UI , just like HTC use sense UI.
In A10 with Eclair, user could choose the new version of Breeze UI or previous Big 3 version.

This kind of modification are not only about UI in A10 & A50, lots of resident AP content are changed.
That's why the develop period is longer than other Android system.
Also, the cooperation between two company spent more time on discussion.

Recently, I get back to try to porting pure Android from Qualcomm's open source.
This is quite different to previous case.

Handle Two Storage Component-Froyo All New Volume Daemon

The original Volume Daemon in Froyo can only support one SD storage.
For our specific requirement, we need to handle two storage by Vold.
One is internal storage and another is SD card.

For SD card, it just follows the Android Vold.
But the internal storage can't be removed, we could handle it just follow Vold or create a new code flow.
In Eclair & Donut, this seems not a big problem because system property are used for volume state.

There is no default system property in Froyo.
Also, MountService & VolumeManagement are totally different to previous Vold.
The purpose is to allow SD card follow the original setting & to use internal storage to store photos or something else if there is no SD card.
I got some possible idea to handle it but need more discussion with the AP owner.

This will be done soon.

Porting Froyo Kernel

This is new version of Linux kernel, V2.6.32.
Donut and Eclair use V2.6.29 with Qualcomm 7x27.

This is the first time I porting the SD/eMMC driver.
Because the important usage of eMMC in our device, I have to finish my part before lots of other drivers.

After adding supported NAND list and getting NAND UUID, the first step is enabling SDCC1 & SDCC3.
Then, make sure the power setting and GPIO configuration for SD/eMMC are ready.
Most important part is some necessary modification on eMMC for system & apk storage.
Request interrupt for SD insertion/removal.

The next one might be porting new Volume Daemon in Froyo.
SD card is already mounted successfully by new Vold now.
Some more change are needed for our internal storage (eMMC) about Vold.