ラベル A1 の投稿を表示しています。 すべての投稿を表示
ラベル A1 の投稿を表示しています。 すべての投稿を表示

2012年7月23日月曜日

ICSとSDカード

オフィシャルなテストアーカイブがちょろちょろ出ているが、基本的にSDカードがマウントされない病になっている。

で、個人的にごそごそしてみた結果、mountはできるようになった。
内部SDは、USBストレージとして認識されている。
外部SDは、REMOVABLE SD CARDとして認識されている。
内部SDをUSBストレージとして扱うのが(ICSの仕様的に)正しいのかどうか分からんが、、、

で、外部SDは /mnt/sdcard/removable_sdcard に mountされる都合、USBストレージの容量計算がおかしくなっている。
合計容量は692Mなのに、内訳のその他が4.15GBて。
この辺りが、内部SDやら外部SDやらの仕様を混乱させている元だと思うのだが。。。。
個人的に、外部SDのマウントポイントは/sdcard とは無関係にするべきだと思う。

んで、ここまではできるんだけど、問題が無いわけではない。
たとえば、SDカードのマウント解除が正しく動かない。
あと、パッチをどう作るか悩んでいる。

う゛ーん。

2012年7月10日火曜日

A107I0_A404_001_011_0116_US

久々にうpされてたICS。
2G版の場合、patch-mbr2GB_HackD5を使って領域拡張すればフルインストールは問題なし。

パッケージの内容は前回のもの(一瞬で消されたけど)とさほど変わっていない。
動作レスポンスも変わらない。もっさりの場面ではもっさり。


# df
Filesystem             Size   Used   Free   Blksize
/dev                   222M    32K   222M   4096
/mnt/asec              222M     0K   222M   4096
/mnt/obb               222M     0K   222M   4096
/system                416M   395M    20M   1024
/cache                 170M     5M   164M   1024
/data                  472M   154M   317M   1024
/.secure                32M     4M    27M   1024


/system は20Mほど余ってるからまだ大丈夫か。

で、/mnt/sdcardは相変らずmountされない。
しかし、「設定」-「ストレージ」メニューは正常に動くようになってるので一歩前進。
「設定」-「開発者向けオプション」が動かないけど、debugオンになってるので母艦から作業はできる。っていうか、VIDとPIDがまた変わってるジャン。VID=04E8, PID=6860

その他、安定度が増しているんだろうけど、詳しくは不明。
ストレージ周りが徐々に動き出してるのでそのうち直りそうな予感。
っていうか、voldは動いてるんだけどなぁ。

もう少し、ログを眺めながら調べてみるかなー。




2012年6月19日火曜日

repartitionパッチ

以下の内容はとても危険です。
最悪、本体から起動できなくなる可能性があります。
実行については完全自己責任で行うこと。
念のため、CWMがブートできるbootable SDくらいは用意しよう。

以上、警告はしたので死んでも知らん

んで、2G版のA1で内部ストレージの領域配分を変更するパッチなのだ。
以下、2G版での話。

2643でのデフォルトの各領域の配分は、こんな感じ。
mmcblk0p1    /system        277M
mmcblk0p2    /cache          92M
mmcblk0p3    /data          337M
mmcblk0p4    /.secure        32M
mmcblk0p5    /mnt/sdcard      1G
個人的な話、/data領域が狭いので自力でrepatitionしたものを使ってたんだけど、ICSをテストするのにさらに再配置が必要になったので、簡単にデフォルトに戻すことも含めてrepatiotionパッチにしてみた。

狭い /data 領域。さらに、ICSを入れるには /system 領域も狭い。あまり利用価値の無い /mnt/sdcard 領域。
それらをリサイズ、再配置しなおすrepatiotionパッチがここにある
patch-mbr2GB_2643Hack.zip
patch-mbr2GB_HackD5.zip
patch-mbr_2643.zip
の3本。

それぞれの領域配分はこんな感じ。

●patch-mbr2GB_2643Hack.zip 
patch-mbr2GB_2643Hack.zip は 2643ベースの領域配分で、/data領域を1G近くまで拡張したもの。
2643向け。ICSはインストールできない。
mmcblk0p1    /system        283M
mmcblk0p2    /cache          94M
mmcblk0p3    /data          961M
mmcblk0p4    /.secure        32M
mmcblk0p5    /mnt/sdcard    419M

●patch-mbr2GB_HackD5.zip
patch-mbr2GB_HackD5.zip はICSインストール向けの再配分。オフィシャルテスト版のICSがそのままインストールできる。
/data領域はあまり広げてない。/mnt/sdcardに余裕があるのでまだやろうと思えば広げられる。
mmcblk0p1    /system        416M
mmcblk0p2    /cache         170M
mmcblk0p3    /data          472M
mmcblk0p4    /.secure        32M
mmcblk0p5    /mnt/sdcard    691M


●patch-mbr_2643.zip
patch-mbr_2643.zip は2643のデフォルト領域配分に戻すパッチ。なんとなく2Gと16Gに対応している。
repatiotionパッチを試したけど、元に戻したいときはこれを使ってインストールしなおす。2643向け。
16GBの人は海外カスタムROM入れて勝手に領域変更されたのを2643デフォルトに戻したいときなんかに使用できる。

で、具体的に何をしているのかと言うと、パーティションテーブルを焼き直しているだけ。
mbr2GB.img が2G版のパーティションデータ。mbr16GB.imgが16G版用。
各配分にあわせて中身を書き直している。
興味のある人はダンプしてみればいい。
ちなみに、このテーブルを書き直すツールも存在している。
A1partition.exeでググれば見つかるはず。
ただし、使用には十分注意すること。やってることの意味が分からないなら使用するべきではない。


●使い方

注意事項。
これを使用すると、領域全てが完全に消去される。
内部SDに保存してあるデータ、インストールしたアプリ、全部消えるので注意。
必要ならバックアップを取るべし。

repatiotionパッチを使用する前提として、本体には2643オフィシャルのリカバリツールがインストールされていること。
CWMではダメ。
もし、CWMを入れているなら2643ROWに書き戻しておく。
(CWMでも適用動作はするが、CWMがcache領域を掴んでしまい結局失敗する)

  • repatiotionパッチをSDカードにコピーしてupdate.zipにリネームする。
  • A1にSDカードを刺し、リカバリメニューを起動させる。
  • 自動的にrepatiotionパッチが実行されるのでしばらく待つ。
  • パッチが終了したら電源が切れる。

ここまでの状態では、パーティションを切りなおしフォーマットしただけ。
OSであるAndroidも入ってないのでブートもしない。
続いて、ROMをインストールする。

  • SDカードに2643_ROWなり、オフィシャルテスト版ICSなりを入れて、リカバリメニューからアップデートする。
  • もしくは、bootable SDからCWMを起動してROMのzipをインストールすればOK。

個人的にはbootable SDからやる方をおすすめ。
何か問題が起きてもリカバリをブートできるってのは安心できる。
あと場合によって、wipe date(ファクトリーリセット)でもしとけばいいかも。
ちなみに、ICSの初回起動はとても遅い。

もし、ロゴループに陥ったら、wipe date(ファクトリーリセット)で復旧するかも。

2012年6月16日土曜日

A107I0_A404_001_008_0108_US

一瞬、アップされてたアーカイブのスクショ。


FTP鯖に今は無い。
xdaフォーラムを探せば入手可能。スリム版もあるみたいだけど試してない。
Wifiが直ってるらしい。あと、ホームとかアプリの整理が行われている。

こうなってくると、ICSのリリースが現実味をおびてくるなぁ。

ICSアップデート時には、パーティション再配置が必要だから全ワイプになることは必須。
2Gの扱いがどうなるかちょっと気になるな。

2012年6月10日日曜日

レスキューSDディスクの作り方


CWMが起動できるbootable SDの作り方。

bootable SDカードは一度作ったら、使いまわせるのが便利。
ただ、作るための敷居が高いので、使用してる人は少ないと思う。

で、ハックネタを探してXDAをウロウロしてたときに、bootable SD から CWMがブートできる内容を見つけて試したことがある。
そのときは、なるほど、と思ったんだけど、改めて考えてみると、コレって本体のリカバリブートが死亡したときの最終手段に使えるってことに気づいた。

いわゆる、レスキューSDディスクって感じか。
っていうか、CWMを本体に入れる必要も無くなるわな。
SDの抜き差しは面倒だけど、保険の意味で人柱な人は1枚作っておいたほうが良いかもしれない。

んで、その比較的簡単な作り方があったので紹介しておく。

元になった
スレッドはこれ
[IdeaPad A1] Recovery not work, bootloop- solved!!!

記事はこれ
http://forum.xda-developers.com/showpost.php?p=25950501&postcount=39


(1)解決A1_07のダウンロード
タッチパネルファームウェア用のツール、通称「解決A1_07」をダウンロードする。
http://115.com/file/clykyncr
からダウンロードして、アーカイブを解凍する。解凍パスワードは bbs.lenovomobile.com
中身はexeが1本、zipが1本、pdfが1本。pdfはドキュメントなので読んどくといい。
ファイル名は字化けしているかもしれないのでリネームする。
ここでは、burnin1.exe, CL1_1.09A_for_5.zip, Document.pdf とした。
さらに、CL1_1.09A_for_5.zip を解凍して、CL1_1.09B_for_5.img を取り出しておく。

使用するのは、burnin1.exe, CL1_1.09B_for_5.img の2本のみ。

このツールは、A1のタッチパネルの調整を行うためのツールをbootable SDに焼くツールだ。これで焼いたSDをA1に入れてブートするとツールが立ち上がる。
が、今回はそのツールは使用しない。bootable SDを作ってくれるところが重要。


(2)cwm-5.0.2.7-rev3-ideapad-a1のダウンロード
ググればすぐ分かるので割愛。
アーカイブを解凍しておく。
必要なのは、recovery.ubファイル。


(3)その他準備
2G以上のSDカードが必要。
今回は手元に転がっていた4Gを使用してみた。
これ1枚作っておくと、お守り代わりになるので保存用にしておこう。


(4)bootable SDを作る
・母艦PCにSDカードを挿す。
・burnin1.exeを実行。
・burnin1.exe上部 Please choose the disk をSDカードのドライブに変更。
・burnin1.exe下左 Img file path に CL1_1.09B_for_5.imgを指定。
・その横の、Burnin ボタンを押す。その他の箇所はいじらない。
・プログレスが進むので焼き上がるのを待つ。
・焼けたら、burnin1.exeを終了して、SDカードを取り外し。

これで、bootable SD が完成した。
このSDをA1に挿してブートすれば、タッチパネルのツールが起動する(が、今回は使用しない)


(5)CWMを入れる
・再度、SDカードを母艦PCに挿す。
・認識されたSDの中身をエクスプローラなどで見ると、MLO, u-boot.bin, uImage が入っているはず。
・CWMのrecovery.ubをコピーする。
・コピーした recovery.ub を recovery.img にリネームする。
・SDカードをPCから取り外す。

以上で レスキューSD の出来上がり。

ブートの仕方は、
レスキューSD を挿して、ふつーにリカバリモードを立ち上げる要領(Vol- + Power)で起動するだけ。
起動に失敗しても、本体側のリカバリが起動するので慌てなくてもよい。

CWMが起動したら、SDを入れ替えて好きなzipを焼くなりすればOK。
例えば、本体リカバリがおかしくなって、update.zipが焼けなくなってしまったとき。
そんなとき、レスキューSDでブート、とりあえず2643ROWに焼き戻すことができるはず。

今更ながら、便利だと気付いた俺。

2012年6月9日土曜日

テスト版 ICS 4.0.4 の中身


とりあえず、画面キャプチャなど。




解析しながら動作を見ているので、すべてについて確認できていないが、分かってる範囲でレビュ。2G版での話なので16G版は若干、動作が違うかもしれない。

●インストール
2G版、16G版ともに、アーカイブのままだと多くの人はインストールできないはず。
原因は、/system領域が足りずにDisk Fullになり、インストールの途中で中断してしまうからだ。
失敗した状態でブートは走るけど、途中でロゴループに入る。
2643ROWを書き戻してやれば元に戻るはず。

結局、パーティションテーブルを書き直して領域の再配置、必要な領域を確保してインストールした。
海外フォーラムなどでもインストール方法が色々試されている。
方法については後ほど記事を書こうかと思う。

●問題点
/mnt/sdcard がmountされない。おかげで、外部SDカードが見えない。
この問題から発して、カメラでSDカードを入れろと叱られたり、設定-ストレージが使用できなかったりする。
USBでPCに接続してストレージとしての使用もできない。
ちなみに、SDカードの挿抜は認識してるので、処理の問題だと思う。
スリープ復帰のWiFiが不安定だったりすることがある。ONし直せば戻る。
フォントが中華。

●体感動作
一番気になるところだろう。
初期ブート時やキャッシュが効いていない状況では固まることがたまにある。
バックグラウンドで処理が走っていると、てき面に遅いと感じる。
しかし、キャッシュやメモリ状態が落ち着けばそれなりに動く。。。が、2.3.4に比べてモッサリ感は否めない。
全く使い物にならないわけではないが、モッサリを許容できない人は止めといたほうがいい。

●アプリなどの動作
Youtubeは特に問題なく動作。動画も見た限り、カクついたりすることはない。
マーケットもOK。
GPSも初期化に時間が必要かもしれないが、動作に問題なし。
adb接続も可能。ただし、VIDとPIDが変更になっているので、android_winusb.infにデバイス情報を追加する必要がある。
;Lenovo A1
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_D002
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_D002&MI_01
その他、mount情報などはこちら

2012年6月8日金曜日

A1はICSの夢を見るか

とりあえず、夢は見られるようだ。

オフィシャルテスト版アップデータ
A107I0_A404_001_007_0091_US.zip

色々、小細工したけど。

2012年4月11日水曜日

.de カーネル

えーっと。
fur Lenovo IdeaPad A1 - Kernel Versionen で、公開されているハックカーネルを動かしてみた。
A1に直接アップデートするのはアレだし、せっかくなのでSDブートを使って試した。
タッチボタンのバックライト点灯とオーバークロックカーネルなんだけど、SDブートしてもちゃんと動く。

写真では分かりにくいかもしれないけど、ビルド番号が変わってる。
タッチボタンのライトはディスプレイON時は点きっぱなし。
タッチボタンのバックライトは個人的にハックしたカーネルがあるんだけど、外部からデバイス制御ができるようになれば面白いな。

ハック環境が整ってきたので、色んなファームやカーネルが登場するのを期待。

kernelをSDカードからブートする

なんだか、更新が久しぶり。4月は忙しい。
が、何もしてなかったわけじゃなく、kernelハックをごそごそやってた。

kernel sourceがリリースされて、有志のハックが本格的に始まっている。
xdaのフォーラムとかで徐々に成果が報告されているので、個人的にも色々いじってみている最中だ。

で、少し前に、ハックkernelを簡単に動かす方法として、SDカードからブートする方法が公開されていた。[DEV] Lenovo Ideapad A1 Kernel Development/Testing

しかし、このフォーラムの記事通り作業をしても上手くいかない場合がある。
実は私がハマった一人だ(笑)

bootableなSDカードを作るのは結構シビアで、ディスク領域のファイル配置やパーティションの切り方にも気を使う必要がある。
上記フォーラムでは、bootableなSDカードの生成に omap3-mkcard.sh というスクリプトを使用しているが、これで上手くいかない場合、手動でSDカードを作る必要がある。
その方法をメモしておく。

使用した環境は、VMware 上の Ubuntu 10.04 LTS(64bit)
最初に、gconf-editor を使って、Ubuntuのドライブオートマウントを切っておく。
オートマウントされると、SD内のファイル配置が壊されたりするので、念のため切っておくほうが良い。
方法は、「gconf-editor media_automount」でググれば分かるはず。

次に、上記フォーラムより必要なファイルをダウンロードしておく。
MLO
u-boot.bin
omap3-mkcard.sh    (今回は使用しない)
ramdisk-cm7.ub    (CM7環境の人はこれを使用)
ramdisk-row-2643.ub  (2643環境の人はこれを使用)
それとは別に、ブートさせるカーネルイメージ uImage を準備する。
これは通常、kernelソースからビルドしたものを用意すればいい。
今回はテスト用に2375_ROWのカーネルを使用してみる。
ファームのアーカイブから uImage を取り出しておく。

以下、面倒なのでrootにて作業している。

まず、bootableなSDカードを作る。

Ubuntu環境にSDカードを刺し、デバイス位置を確認する。
# dmesg
[ 1452.618571] sd 7:0:0:0: [sdb] Assuming drive cache: write through
[ 1452.618580]  sdb: sdb1
[ 1452.639529] sd 7:0:0:0: [sdb] Attached SCSI removable disk
仮に、/dev/sdb がSDカードとする。各自の環境に合わせて読みかえるべし。

で、パーティションを手動で切っていく。
既存のパーティションは削除してまっさらにする。
# fdisk /dev/sdb

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): p

Disk /dev/sdb: 2041 MB, 2041577472 bytes
255 heads, 63 sectors/track, 248 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         248     1992028    c  W95 FAT32 (LBA)

Command (m for help): d
Selected partition 1

Command (m for help): p

Disk /dev/sdb: 2041 MB, 2041577472 bytes
255 heads, 63 sectors/track, 248 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
次に、エキスパートモードを使用してディスクパラメータを設定する。
head = 255
sector = 63
シリンダはディスク容量(上記、赤文字)から計算する。
cylinder = ディスク容量 / head / sector / 512
         = 2041577472 / 255 / 63 / 512
         = 248.208
小数切捨 = 248
Command (m for help): x

Expert command (m for help): h
Number of heads (1-256, default 63): 255

Expert command (m for help): s
Number of sectors (1-63, default 62): 63
Warning: setting sector offset for DOS compatiblity

Expert command (m for help): c
Number of cylinders (1-1048576, default 1020): 248

Expert command (m for help): r
パーティションを切って、パーティションタイプを指定する。
第1パーティションは、FAT32、サイズ64M、Boot。
第2パーティションは、Linux、サイズ残り全部。
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-248, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-248, default 248): +64M

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (10-248, default 10):
Using default value 10
Last cylinder, +cylinders or +size{K,M,G} (10-248, default 248):
Using default value 248

Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list codes): c
Changed system type of partition 1 to c (W95 FAT32 (LBA))

Command (m for help): t
Partition number (1-4): 2
Hex code (type L to list codes): 83

Command (m for help): a
Partition number (1-4): 1

Command (m for help): p

Disk /dev/sdb: 2041 MB, 2041577472 bytes
255 heads, 63 sectors/track, 248 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1           9       72261    c  W95 FAT32 (LBA)
/dev/sdb2              10         248     1919767+  83  Linux
以上でパーティションはOK。
テーブルの書き込み。
Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
各パーティションをフォーマットして使えるようにする。
第1パーティション。/dev/sdb1 VFAT、ラベル名 boot
# mkfs.vfat -c -F 32 -n "boot" /dev/sdb1
第2パーティション。/dev/sdb2 ext3、ラベル名 rootfs
# mke2fs -j -L "rootfs" /dev/sdb2
さてさて、これでSDカードがフォーマットされたので、ブートに必要なファイルをコピーして環境を作っていく。

まず、boot領域。
ここには、MLO, u-boot.bin, uImage を配置する。
mountポイントを /media/tmp/ としてmount。ダウンロードしておいたファイルをコピー。
コピーする順番があるらしく、MLOを一番にコピーする必要がある。
# mount /dev/sdb1 /media/tmp/
# cp ~/MLO /media/tmp/
# cp ~/u-boot.bin /media/tmp/
# cp ~/uImage /media/tmp/
# umount /media/tmp/
次に、rootfs領域。
ここにはブート時に使用する/ファイルシステムを置いておく。
ダウンロードしたramdiskイメージを解凍して展開する。
2643の環境を使用する場合の例。
# mount /dev/sdb2 /media/tmp/
# dd if=~/ramdisk-row-2643.ub of=/media/tmp/ramdisk.img.gz bs=64 skip=1
# cd /media/tmp
# gunzip ramdisk.img.gz
# cpio -idmv < ramdisk.img
/media/tmp/ 内に / 以下のファイルシステムが展開される。
最後に、
# cd
# umount /media/tmp/
して、おしまい。

A1の電源を切り、作成したSDカードを刺して電源ONすれば、SD側のカーネルをロードして起動してくるはず。
設定-タブレット情報からカーネルバージョンやビルド番号を確認しておく。

もし、SD側のカーネルを読まないで起動してたり、Lenovoロゴでループする場合はSDカードがおかしいので作り直し。
結構、シビアなのでブートさせるまでに苦労するかもしれない。

しかし、これができるとハックカーネルを手軽に試せるのでとても便利。
本体の環境を壊さずに、SDカードの差し替えだけで済むのは画期的。
デバッグにも使えるし。
自家製のカーネルを放り込んで試すのが楽になってうれしい限り。

2012年3月1日木曜日

Nintendo Wireless Keyboardテスト版

以下、完全自己責任で。

ニンテンドーワイヤレスキーボード用のキーレイアウトとマップファイル。
ネタ用テスト版。インストールはリカバリメニューからのupdate.zip方式で。


patch-Nintendo_Wireless_Keyboard_signed.zip
http://www.mediafire.com/download.php?cestt9ry7cftzyf

基本、キートップの通りに出るはず、、たぶん。

一部キーは機能が入れ替わってるので注意。
全角/半角キーはBACKボタンと同じ。ESCキーとして考えればおk。
家マークはHOMEボタン。
ControlキーはVOLUME_DOWNボタン。某ターミナルアプリでCtlコードを送るときに使う。

CAPS_LOCKは使用できない。

Fn+1~6で、MUTE, VOLUME_UP, VOLUME_DOWN, MEDIA_PREVIOUS, MEDIA_PLAY_PAUSE, MEDIA_NEXT が割り当てられている。

ちなみに、カーソルキーはポートレイト(縦置き)時に正しく動くマッピングなのでランドスケープ(横置き)の時は方向が90度ずれる。
慣れてくれー。

私は実機を持ってないので実際に動くかどうかは未確認。
人柱な方、動作報告してもらえると助かります。待ってますm(__)m

あくまでもテスト版なので直リンクは避けてください。

2012年2月27日月曜日

2643_ROWリリース

やっとリリース解禁。
予想通り、各国版も同時リリースになった。

アーカイブ内容はotatest版と全く同じなので、先行アプデしてる人は特に必要なし。

以下、自己責任で。
2643_ROW向けの何かは、何か - 2643_ROW用に在り。
Bluetoothキーボードの何か も使用可。

2012年2月23日木曜日

Source探訪

ソースのビルドができないって腐ってみても仕方ないので、リファレンスのカーネルソースとのDiffを取りながら、A1のコードをダラダラと流し読みしてみた。

コードの修正が入ってるところには、コメントが入ってるようで修正箇所は分かりやすかった。

気になるところをいくつか拾うと、

OPP動作クロックが cpufreq34xx.c あたりで定義されてたりして。
オーバークロックなんてどうなの?とか妄想したり。
できる方法があるのかなー。

USB関係には結構な修正が入ってたりする。
まだ詳しく見てないけど、OTG関係は処理が死んでるのかな?
直すのに広範囲になる感じがするなぁ。

ホームやバックのタッチボタンのLED
drivers/input/touchscreen/mg-i2c-ts.c で、2秒タイマーをセットして、OFFにする消灯処理をやってる。
これを殺すか、点灯時間延長すればいいっぽい。

カメラ周りとかビデオ周りはまだ見てない。


とは言うものの、カーネルの構築も自家カーネルの動作も検証されてないから本当に動かせるかどうか分からんな。

でも、とりあえず、ワクワクしてきた。

2643シリーズとkernel source

突然、otatestに現れた各国版の2643ファーム
A107W0_A234_001_015_2643_GR.zip
A107W0_A234_001_015_2643_TR.zip
A107W0_A234_001_015_2643_US.zip
差分をとってみると、どれもフレームワークバージョンは2643_ROWと同じ。
異なっているのは、プリインストールのアプリとフォントの有無だけで中身はほぼ同じものと考えていい。
2643シリーズが出揃ったと言うことは、リリースが近いと思われる。

うちの2643_ROWは全く快調に動いてるので、安定化版のファームとしてここで一旦落ち着けようと言うことなのかもしれない。
ROW版だけ2525_ROWがリリースされたのは、フォントの件と実験の意味合いがあったのだろうか。
今となっては、2375と共に早く葬り去るべきバージョンだと思う。


今日はもうひとつ。

A1用のカーネルソースが公開された。
ここ数日、フォーラムで予告されてた動きが実現して、個人的には嬉しい。
早速落としてみた。

が、、、、いくつかのファイルが足りない。
がーーん!makeできない。
ちなみに、コードの一部にA1固有の情報がハードコードされているのは確認してるので、本物のソースである可能性は高い。

で、手元にあるリファレンスのカーネルソースとの差分をとりながら、足りないファイルを補充してみたりしたけど、、、、
やってられるかっ!!(-_-メ
ってくらい、色々足らない。
面倒くさいからあきらめた。

lenovoよ。。。
ガッカリだ。


再リリースを待つ。

2012年2月14日火曜日

2643_ROW

久しぶりのotatest更新。

A107W0_A234_001_015_2643_ROW.zip

早速、アップデートして使用中。
rootパッチ、BTキーボードパッチ、GPSログ削除パッチはそのまま使用可能。

バージョン番号を見ると、2643_SC派生と思われる。。。が、中身の比較をすると、Androidフレームワークバージョンが2643_SCより新しいものになっている。
カーネルはSC版と同じく、
# cat /proc/version
Linux version 2.6.35.7 (njcl1@ubuntu) (gcc version 4.4.3 (GCC) ) #0 PREEMPT Fri Dec 30 15:41:42 CST 2011

# uname -a
Linux localhost 2.6.35.7 #0 PREEMPT Fri Dec 30 15:41:42 CST 2011 armv7l GNU/Linux
CPUクロックレンジは300MHz~1GHz

2525_ROWと比較すると、2525_ROW と 2643_SCとの差分の何かで示したライブラリやカーネルが変更されているので、ベースは2643_SCでフレームワークを新しくしたということだろう。

このファームの特徴は、

・日本語フォントに正式対応した。
デフォルトで /system/fonts/MTLmr3m.ttf を読み込むようになっているので、メニューのフォントも美しい。
ナイスだlenovo。

・Googleマップ 6.2.0に対応した。
死なずに動く。

・デフォルトのアプリに修正が入っている。
ギャラリーのピンチ拡縮は嬉しい。音楽もUIが変わった。

まだ未対応なのは、URLインテント。

内容的にいい感じで修正が入ってると思う。
ROW版の動きがあるってことはいいことだ。
これで安定していれば、当面の問題は取り除かれたバージョンになるんじゃないかな。
ぼちぼちバラしながら色々いじってみよう。

次のSC版の修正がちょっぴり楽しみ。
ICSは無理だろうなぁ。

2012年1月23日月曜日

2525_ROW と 2643_SCとの差分の何か

■コレは何?

2525_ROW向け。
2525_ROWと2643_SC版を比較し、その差分ファイルの一部をまとめた何か。
何がどうなるか分かりません。保証もありません。
自爆覚悟でどうぞ。何かたち倉庫に在り。


■差分ファイル一覧
/system/lib/libandroid_servers.so
/system/lib/libcamera.so
/system/lib/libmedia.so
/system/lib/libstagefright.so
/system/lib/libsurfaceflinger.so
/system/lib/libsurfaceflinger_client.so
/system/lib/libsysutils.so
/system/lib/libcircle.so

u-boot.bin
uImage
ramdisk-uboot.img
recovery_mmc.img
mga.mga

fuse
mg_up

■何が変わったのか?

相変わらずlenovoからリリース情報がアナウンスされないので、2643_SCでの改修内容がさっぱり分からない。
更新されたファイルから分かることは、描画関係のライブラリに修正が入っている。
あと、カーネル&ブートイメージも変更されている。

タッチパネルのファーム関連(mga.mga, mg_up)も異なってるんだけど処理がコメントアウトされているので更新は実行されない。
ファイルを入れとく意味は無いんだけどね。

常時使用しているけど、安定しているように見える。
んが、2525のせいか2643のせいか不明だが、たまーにスリープ復帰からWifi再接続に失敗してることがある。
ま、常にじゃないので気にしない。
それ以外は特に問題なし。

skypeでフロントカメラ表示が天地逆になってるのは相変わらず。
なんだか取り込み範囲が変わったような気がするけど??気のせいか。
以前はskypeでのバックカメラは全く使えなかったように記憶してるんだが、このファームでは使用できる。
だが、これでは顔見ながらチャットはできない。
鏡でも置くか。

カーネル情報は、
# cat /proc/version
Linux version 2.6.35.7 (njcl1@ubuntu) (gcc version 4.4.3 (GCC) ) #0 PREEMPT Fri Dec 30 15:41:42 CST 2011

# uname -a
Linux localhost 2.6.35.7 #0 PREEMPT Fri Dec 30 15:41:42 CST 2011 armv7l GNU/Linux
CPUクロックレンジは300MHz~1GHz

ファームを戻すには、2525_ROWを上書きでアップデート。

以上。

2012年1月20日金曜日

2525_JP_font

2525_ROW向けの日本語フォントをインスコするような気がする何か。

/system/fonts/DroidSansJapanese.ttf ファイルをインストールして、
/system/fonts/MTLmr3m.ttf を削除する。

役立たずなファイルは削除して/system領域を空ける方向で。
すでに、JP_font何かを当ててる人が使用すると、MTLmr3m.ttfを削除する何かとして利用可。
お約束は自己責任。何かたち倉庫に在り。

2643らしきもの

2525_ROWと同時にリリースされてた2643_SC。
なんだかSC版ばっかり更新されて悔しい(笑)
2525_ROWの間違い修正版を出してくれ>lenovo

で、
2643_SCから2525_ROWとの差分+ブートイメージを取り出して混ぜてみた。
基本的にフレームワーク周りは変更していないので見た目は2525_ROWのまま。
ロック画面も変更なし。
今のところ特に問題なく動いてる。

2012年1月14日土曜日

GPSログを削除するだけの何か

面倒くさいけど、今後のこともあるし必要にかられて作った。
何かたち倉庫「何か - 共通」に置いとく。

要するに、

/data/gps/log ディレクトリを削除するだけの何か

デス。
patch-del_gpslog_signed.zipとは別物。
違いは、glconfig.xmlの修正は行わない。

2375_ROWから上位ファームにアップデートした人が対象。
ただし、patch-del_gpslog_signed.zipを当ててた人は必要はない。
元から2375_ROWより上位のファームだった人も必要ない。

ま、心配だって言うなら当てても害は無いけど。

使用にあたっては自己責任で。

otatest版2525_ROWの正体


あくまでも、otatest版なので正式ファームではないことに注意。
一部、2525ファームが適用されたものが出回ってるらしいけど、検証のしようがないのでそれとは違うという認識で。
正式版の A107W0_A234_001_014_2525_ROW がリリースされた。
中身は旧otatest版と変わらないので、以下の内容はそのまま当てはまる。

つまり、全くのテスト版。
lenovoはバカかと本気で思い始めた。本当にありがとうございました(笑)

で、
2375_ROWとの差異から新しくなっているファイルがどの中華バージョンに該当するかチェックしてみた。
Diff比較。

ファイル名 該当SCバージョン
/system/bin/debuggerd 除外
/system/bin/glgps 2493
/system/lib/dsp/m4venc_sn.dll64P 2493
/system/lib/dsp/mp4vdec_sn.dll64P 2493
/system/lib/libcamera.so タイムスタンプ
/system/lib/libhardware_legacy.so 2493
/system/lib/libOMX.TI.Video.Decoder.so 2493
/system/lib/libskia.so 2493
/system/lib/libwebcore.so 該当なし
/ramdisk-uboot.img 該当なし
/recovery_mmc.img 2493
/u-boot.bin 2493
/uImage 該当なし
/META-INF/com/google/android/updater-script 除外
/system/app/.default_workspace.xml 除外
/system/bin/getBTMac.sh 2493
/system/etc/gps/glconfig.xml 2493
/system/etc/apns-conf.xml 2493
/system/build.prop 除外
/system/app/TelephonyProvider.apk 除外
/system/app/TelephonyProvider.odex 除外
/system/fonts/MTLmr3m.ttf 該当なし
/system/proprietary/wifi/apsta.bin 2493
/mg_up 2493
/mga.mga 2493

ベースは2493_SC。
日本語フォントファイルは入ってる。(/system/fonts/MTLmr3m.ttf)GPSログ問題も解消されている。(/system/etc/gps/glconfig.xml)
2586_SCで更新されていたタッチパネルのファームは含まれていない。ていうか、タッチパネルのファームアップデート処理は殺されてるので無関係。
また、ブートイメージもSC版とは異なるものになっているようだが、何か変わっているのか不明。
対応中華バージョンが該当しないファイルは2525_ROWオリジナルのものだけど、ビルド情報の違いだけかもしれないので機能強化なのか不明な点が多い。
少なくとも、最新SC版に近い内容になっている感じ。

実動チェックしてみたら、フォントは全く反映されていない。DroidSansJapanese.ttfにリネームしてないのが原因。ダメジャン。
この時点で、lenovo側に日本語フォントを正しく反映した結果を検証できる人が居ないってのが分かる(笑)

あと、GPSログの生成は停止されているけど、すでに作られているログは削除されない。
削除パッチは必要か。。。。
URLインテントは未修正。


カーネル情報は

# cat /proc/version
Linux version 2.6.35.7 (kevin@ubuntu) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) ) #0 PREEMPT Tue Nov 15 11:16:24 CST 2011

# uname -a
Linux localhost 2.6.35.7 #0 PREEMPT Tue Nov 15 11:16:24 CST 2011 armv7l GNU/Linux

CPUクロックレンジは300MHz~1GHz

# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
300000
# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
1000000
# cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq
300000
# cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
1000000

全体的におしいファーム。
フォントが反映されない時点でテスト版。

ここに置いてある、パッチは全部使用できるはず。
ま、2493パッチは当てる必要はないと思うけど。

2011年12月31日土曜日

2586カーネルの何か

■コレは何?

カーネルブートイメージを2586_SC版に入れ替える何か。
ブートアニメーションは変わりません(笑)
何がどうなるか分かりません。保証もありません。
自爆覚悟でどうぞ。何かたち倉庫に在り。

■中身はこんな感じ。
u-boot.bin
uImage
recovery_mmc.img
mga.mga

fuse
mg_up

タッチパネルのファームも入れてるけど、更新されない機体もあるっぽい。
うちのは、ファーム更新必要ないよって蹴られた。
ログにこんな形跡が残る。
====== Read SW version======
the sw_ver is  FB********,the input ver is FB********,the compare err = -7
the input version is in the beginning range!
the sw_ver is  FB********,the input ver is FB********,the compare err = -1
the input version is out the ending range!
Forbid to upadte the Touch Firmware
[Touch Update]: The SW version is out of the range, no need to update the FW!

■何が変わったのか?

2375のカーネル情報
# cat /proc/version
Linux version 2.6.35.7 (root@ubuntool) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) ) #13 PREEMPT Mon Oct 17 20:09:18 CST 2011

# uname -a
Linux localhost 2.6.35.7 #13 PREEMPT Mon Oct 17 20:09:18 CST 2011 armv7l GNU/Linux

2586のカーネル情報
# cat /proc/version
Linux version 2.6.35.7 (root@ubuntool) (gcc version 4.4.3 (GCC) ) #69 PREEMPT Tue Dec 6 15:51:57 CST 2011

# uname -a
Linux localhost 2.6.35.7 #69 PREEMPT Tue Dec 6 15:51:57 CST 2011 armv7l GNU/Linux

大きな変更点は、CPUの動作周波数レンジが変更になってる。
2375は300MHz~1000MHz。
2586は600MHz~1000MHz。
# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
600000
# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
1000000
# cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq
600000
# cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
1000000
可変動作クロックは主にバッテリー駆動時に負荷程度によって変化する。
AC接続時はバッテリー時とは異なる動作クロック制御になってる。
最低クロックの引き上げで、ランチャ動作がマシになったかもしれないが気のせいかもしれない。
もちろん、デメリットも考えられる。
実測してないけど、消費電力が上がる=バッテリー持ちが悪くなると言う傾向があるはず。

他の変更点はカーネルに組み込まれてるモジュールが若干異なるっぽい。

一週間ほど使用して、今のところは特に問題なく動作している。
ま、一般的なメリットは全く無いパッチかも。

戻すには、オリジナルの2375_ROWを上書きでupdate。
ただし、タッチパネルのファームは戻らないので注意。
自己責任で。