2012年6月8日 星期五

git repository with large files settings

In some circumstances, we have to allow developers to put large files into git repository, but that would
usually encounter mmap/malloc memory space shortage errors in git.

To fix this issue,  we have to upgrade git version to 1.7.10+ and add the following settings to ~/.gitconfig

[core]
    packedGitWindowSize = 128m
    packedGitLimit = 128m
    bigFileThreshold = 128m
[pack]
    compression = 1
    windowMemory = 128m
    threads = 1
    window = 1
    depth = 1
    deltaCacheSize = 1
    packSizeLimit = 128m

vendor BSP Linux kernel 版本選擇

用了 Vendor  的 Android BSP,就必須跟著提供的 Linux kernel 版本走,但是如果用的
第三方晶片、模組廠只給 binary driver,driver 又鎖定特定版本介面,這時候只好跟
著找其中的交集,或是差異最小的版本。

比較可能有出問題的就是 audio alsa, video v4l2, wifi 的 wext, cfg80211 等介面差異。

晶片線路內部供電與外部供電

在追 sdcard 的 vmmc1 regulator 設定時,發現 TI 的設計是透過 PMIC 再給 vmmc1
電源,但回過來想既然 SoC 都有電了,為什麼就 mmc1 controller 要外部給電?

問了 Ken Chen 才知道有幾種可能,一種是數位跟類比電源差異,第二種可能是特定
的 bus 介面需要將電源切出來另外在 BUS 傳輸協定中獨立控制電源開關,第三種可
能是晶片本身有的電壓跟外部供電的 controller 電壓不同。

外部供電或內部供電的差異,也是有可以研究的地方。