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

11/03/2015

Asus x205taでUbuntu14.04LTSを使う タッチパッド対策

5月くらいから、Asus x205taにUbuntu14.04をインストールして使っておりましたが、(LinuxMintはやめた)タッチパッドが、スクロールできなかったり、タップ無効にできなかったりで、不便でしたが治りました。

LinuxMint等、Ubuntu派生ディストリはこの方法で行けると思われます。

といっても、カーネルが対応したというだけのこと。ただのマウスっぽく認識していたところ、カーネル4.3以上でタッチパッドとして認識するようになりました。

4.3以上で対応するということは、前情報で知っていたので、kernel ppaにて、 まだか、まだかと、こまめにチェックしてカーネル取っ替え引っ替えしていたところ、4.3の安定版が提供され始めたのでインストール

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.3-wily/

↑から、

linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb
linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb
linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb

をもらってきて、$sudo dpkg -i linux*

だけで、タッチパッドがまともになりました。カーネルモジュールや、X11関連の設定ファイルは特にイジらなくてもよさげ。これで、2本指スクロール。タップ無効ができて快適になりました。



が、しばらく使っていて、よくフリーズする。経験即で、カーネル4.2以上だとx205taは固まる頻度が高い感じがする。acpiとi2cのなんかっぽい情報は、web上で、ちらほら見かけますが、このカーネルバージョン(あるいはビルドオプション)でも、今一つのよう。現時点で、安定性を重視するならタッチパッド諦めて、4.1系を使っていたほうが無難かも。

あと、サウンドとblue toothは依然、認識せず。パーフェクトになるには、まだまだカーネル開発が進むのを待つ必要がありそうです。カーネルソースを自力でイジればいいんでしょうが、ヘタレなので今の所、待ちのスタンスで(笑)

今日は以上です。


8/29/2015

Asus x205ta にLinuxMintインストール&Wifi、MicroSD有効化(Ubuntu, Debianにも)

最近、商売気が強くなってきたUbuntuより、LinuxMintに乗り換えたほうが幸せな予感と思い、試運転も含めてインストール。

インストール手順を記録。

1. http://www.linuxmint.com/よりLinux Mint 17.2 Cinnamon 64bit版をダウンロード

2. Universal USB Installerを使ってUSBメモリにインストールディスクを書き込む

3. bootia32.efiをもらってきてUSBメモリの「/EFI/BOOT/」にコピー

4. x205taのBIOS設定でSecure Boot ControlをDisableにしておく、インストール段階では内蔵Wifiが使えないのでUSBのWifiアダプタか、有線LANアダプタでもつないで、どうにかインターネットに繋がるようにしておく。

5. USBメモリから起動して、普通にインストール。キーボードが勝手に連打されたりする現象があったりするのでパスワード入力とか気をつける。現象は後でアップデートすると治るのでとりあえず我慢。

6. インストール後、このままでは、32bitUEFIの関係で再起動してもSSDから起動しないので、USBメモリのGrubを使ってSSD内のLinuxMintを起動する。USBメモリから起動し、Grubの起動選択画面で、「ctrl-c」でプロンプトに落ちて、以下を入力。(ちなみにタブで補完できる)

> linux (hd1,gpt2)/boot/vmlinuz-3.16-0-38-generic root=/dev/mmcblk0p2 reboot=pci,force
> initrd (hd1,gpt2)/boot/initrd-3.16-0-38-generic 
> boot

7. 32bitUEFI用Grubをインストール。これでSSDから直接起動できる。以前、Ubuntu14.04のインストールを試した時はEFIバリアブルへブートローダーの登録に失敗していて、面倒くさいことになっていたが、このバージョンのLinuxMintでは問題なかった。これでUSBメモリ無しで自力で起動。

$ sudo apt-get install grub-efi-ia32

7. このままだと、内蔵Wifi、MicroSDカードリーダー等が使えない。これはカーネルをかなり新しめにバージョンアップし、ゴニョゴニョすると解決する。チップセットが新しいのでカーネルのドライバ対応が追いついていないんですね。http://kernel.ubuntu.com/~kernel-ppa/mainline/より新し目のカーネルパッケージをもらってくる。今回はv4.1.6-unstable/を使用。

$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.1.6-unstable/linux-headers-4.1.6-040106-generic_4.1.6-040106.201508170230_amd64.deb
$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.1.6-unstable/linux-headers-4.1.6-040106_4.1.6-040106.201508170230_all.deb
$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.1.6-unstable/linux-image-4.1.6-040106-generic_4.1.6-040106.201508170230_amd64.deb
$ sudo dpkg -i linux*


8. Wifiチップのファームウェアをセットアップ

$ wget https://android.googlesource.com/platform/hardware/broadcom/wlan/+archive/master/bcmdhd/firmware/bcm43341.tar.gz
$ tar -zxvf bcm43341.tar.gz
$ sudo cp fw_bcm43341.bin /lib/firmware/brcm/brcmfmac43340-sdio.bin
$ sudo cp /sys/firmware/efi/efivars/nvram-74b00bd9-805a-4d61-b51f-43268123d113 /lib/firmware/brcm/brcmfmac43340-sdio.txt


sysfsutilsをインストール

$ sudo apt-get install sysfsutils


「/etc/sysfs.conf 」に以下を追記

bus/platform/drivers/sdhci-acpi/INT33BB:00/power/control = on


7. MicroSDカードリーダーを有効化する。「/etc/modprobe.d/sdhci.conf」に以下を追記(無ければ新規作成)

options sdhci debug_quirks=0x8000

で、以下を実行

$ sudo update-initramfs -u -k all

これで、再起動すれば、めでたく、内蔵Wifiとカードリーダーが使えてるはず。これで、かなり実用度アップ。

現時点では、オーディオはダメですが、いずれカーネルが対応すれば使える日もくることを期待しつつ。あと、タッチパッドの2本指スクロールや、タップ無効が効かないのが地味に不便。ただのマウスとして認識しているのかもしれない。対策知っている方いらっしゃいましたら、ぜひ教えて頂きたいです。

今回はこれくらいで。


参考URL: https://wiki.debian.org/InstallingDebianOn/Asus/X205TA



5/13/2015

Asus x205taにUbuntu14.04LTSをインストール

Asus x205taがコスパが良くUbuntuマシンにしようと思って買ったもののBay trailのPCはすんなりとはインストールできないとわかって、Windowsで我慢してたが、重い腰を上げてチャレンジ。

問題は、BIOSが32bit UEFIでレガシBIOS互換モジュール無しなところ。
つまり32bit UEFIブートしかできない。がしかし、Ubuntuを含め、32bit版のインストールディスクではUEFIブートをサポートしていない。(というか、Linuxカーネルが32bitでUEFIをサポートしない方針っぽい)64bitのインストールディスクは64bitUEFIブートしかサポートしていない。というめんどくさいことになっているのです。Linuxサイドでは、64bit CPUにわざわざ32bit UEFIを使うなんてことが想定外なのでしょう。

Bay trailは64bitでも動くのだが、このマシンを含め、最近の低価格タブレットのマシンでは、なぜか、32bit UEFIを実装している。インテルさんの都合か、BIOSベンダーさんの都合か、大した理由などないのか、まあいいや。

一日こねくりまわして、何とかできたので手順をざっくりまとめておく。


1. Ubuntu14.04の64bit版インストールディスクをダウンロードする。
    http://www.ubuntu.com/download/desktop

2. Universal USB Installerをダウンロードする。(Windowsで作業する場合。別のLinuxマシンがある人はddとかで。)
    http://www.pendrivelinux.com/universal-usb-installer-easy-as-1-2-3/

3. Universal USB Installerを使って、USBメモリにUbuntuのインストールディスクを書き込む。

4. bootia32.efiをダウンロード。32bitUEFIブートしてGrubを起動させるためのEFIアプリケーション。自力でビルドすることもできそうだが、せっかくなので、実績ある有志の成果物を使わせて頂く。
    https://github.com/jfwells/linux-asus-t100ta/blob/master/boot/bootia32.efi
    (ちなみに、LinuxMintやUbuntu14.10、Ubuntu15.04のインストールディスクももこいつで起動できた)

5. USBに書き込んだインストールディスクの中の「/EFI/BOOT/」ディレクトリにbootia32.efiをコピー。

6. x205ta側の設定。起動時に「f2」キーを押してBIOS設定画面に入り、Security->Secure Boot Menu->Secure Boot ControlをDisableに。いわゆるセキュアブートを無効にする。あと、Advanced->USB Configuration->USB Controller SelectをEHCIにしておいたほうが無難なようだ。あと、内臓Wifiが使えないので、USBのWifiアダプタをつけとく。

7. USB刺して、再起動。起動時に「esc」キーで、ブートデバイス選択画面に入って、「UEFI: USB MassStorage Device」を選択。USBから起動。

8. Ubuntuを普通にインストールして、再起動。だが、このままでは起動してくれない。というのも、64bitのインストールディスクは64bitUEFIマシンを想定していて32bitUEFIブート用のGrubをインストールしてくれないから。なので、まずは、USBインストールディスクのGrubでマシンにインストールされたUbuntuを立ち上げるという方法を採る。USBインストールディスクからマシンを起動Grubメニューで「c」キーを押し、Grubのコマンドラインに入り、以下を入力

$ linux (hd1,gpt2)/boot/vmlinuz-3.13-0-52-generic root=/dev/mmcblk0p2 reboot=pci,force
$ initrd (hd1,gpt2)/boot/initrd-3.13-0-52-generic 
$ boot

めでたく起動したら、32bit UEFIブートを何とかする。ネットを見て回っていると、grubのソースをビルドしてバイナリ作ってインストールという方法を取っている記事を見かけることが多かったが、パッケージで何とかしてみる。「grub-efi-ia32」をインストール。

$ sudo apt-get install grub-efi-ia32

で、たぶん、本来これだけでいいっぽいのだが、これのインストール中に「efibootmgr」が実行され、EFIのバリアブルにブートローダーを登録するのに失敗している。というか、EFIバリアブルにアクセスできてなさそうな感じ。「Try modprobe efivars」とでるが、やっても駄目だった。これはカーネルモジュールの問題なのか、UEFIが32bitだからなのか、原因不明。とは言え、モノはそろっているし、そもそもファイル名だけの話っぽいので、さしあたって、今回はファイル入れ替え作戦で回避

$ cd /boot/efi/EFI/ubuntu
$ sudo cp grubx64.efi grubx64.efi.bak
$ sudo cp grubia32.efi grubx64.efi

ちょっとスマートではないが、他にいい方法思いついたらまた試してみる。恐らく、何らかの方法でEFIバリアブルに、grubia32.efiを登録できればいいと思われる。不思議なのは、どこかの段階で、ubuntu/grubx64.efiは登録されているということ。

なので、この環境で、手順さえ踏めば行ける気がするのだが。(これをやる前に、15.04のインストールを試みたので、その名残の可能性もある) 

追記:その後、改めてUbuntu15.04のインストールを試したところ、Ubuntuのインストール途中で、grub-efi-amd64-signedのエラーでクラッシュ。これを無視して、USBから起動させ、apt-get install grub-efi-ia32したところ、efivarsに関する問題も出ず。

ファイル入れ替えはせずに普通に起動。インストーラがクラッシュしているので、なんか気持ち悪いが、使えるには使えそうな感触。逆に言えば、15.04のカーネルか、efibootmgrあたりで問題が修正されているのかもしれない。 で、再起動。試行錯誤したなかで、上手く行った部分だけ、まとめるとこんな感じ。手順抜けてる可能性もあります。この通りやっても上手く行かないこともあるかも。そしたら、連絡ください。試行錯誤思い出します。以下のページが非常に参考になりました。先人の知恵に感謝致します。


http://brownbro.github.io/blog/2015/01/15/asus-x205ta-with-lubuntu/ http://sturmflut.github.io/linux/ubuntu/2015/01/21/installing-ubuntu-15.04-on-baytrail-tablets/ http://www.geocities.jp/cowfish_lactoria/mstick1-euc.html http://orumin.blogspot.jp/2013/01/grubefi.html