|
私の現在の愛機「ひまわり2号」は、Debian GNU/Linux lenny(testing)を入れてあります。以前に etch をインストールするところでも書きましたが、X Window System の設定で、generic な VESA のドライバで動かしていました。気になってはいたのですが……。 別にそのままでも良いのですが、使えるならば使ってみたいというのが人情です。どうせ貧弱な環境ですが、少しばかり手をかけるのにお金はかかりません。メモリを積めるだけ積んだ様に、使えるならばとことん使ってみようと考えているのです。それに、自分の勉強にもなりますし。 ということで、乗っかっているビデオチップをそれなりのドライバで動かして、ハードウェアアクセラレーションも有効にしてみよう、というのを目標にイジろうとしました。まあ、そんな軽い気持ちだったのです。まあ、ずいぶん前のマシンですし、有効にしたところでそんなに速くなることは無いかもしれませんが( X の generic 以外のビデオチップドライバを動かした経験もありませんので分かりませんけど……)。 以下その試行錯誤の記録。調べてみただけだけど。 DynaBook Satellite 1860 SA170P/5モデル モデルナンバー PS18617P5G?? 私のパソコンの裏には PS18617P5G423 という記述があります。 液晶ディスプレイ 15型TFTカラー液晶 1,024×768ドット グラフィックアクセラレーター Trident社製 CyberBLADE XP2?? ビデオ RAM 32MB(DDR) Xの設定で Trident の CyberBLADE XP2 であることが認識させることができれば、それで動きそうです。いろいろと Web を検索したり、man ページやドキュメントを読んでみました。何らかのことを /etc/X11/xorg.conf に書き込めば良いのだと思って……。 ところがです。この CyberBLADE XP2 に関するドキュメントが、ちっとも引っかかりません。たしかに、このビデオチップを動かそうとして困っている人がいる様です。メーリングリストなどが検索でヒットします。でも読んでみると、私と同じく VESA のドライバで動きましたというものばかり。あらわに Trident の CyberBLADE XP2 である!として xorg.conf に書いて設定している人がいない様です(あるいは、それを Web 上に公開している人がいない)。 そこで、思い出したのがインストールの時。インストールの時に、ビデオカード(チップ)を自動で検出できるのですが、インストールの時にはうまくいきませんでした。まさかサポートされていないのか?という疑問が。 インストールの時の自動認識は、サポートしているビデオカードのリストと、デバイスから帰ってくる認識IDを比較して判断しています。もし、そのリストにカードが入っていないとすると、間違いなく自動では認識されません。 使われるであろうドライバは、trident(trident_drv) だと思われるので、まず、man trident をしてみました。 $ man trident NAME trident - Trident video driver (中略) SUPPORTED HARDWARE The trident driver supports PCI,AGP and ISA video cards based on the following Trident chips: Blade Blade3D, CyberBlade series i1, i7 (DSTN), i1, i1 (DSTN), Ai1, Ai1 (DSTN), CyberBlade/e4, CyberBladeXP, CyberBladeAi1/XP, BladeXP Image 3DImage975, 3DImage985, Cyber9520, Cyber9525, Cyber9397, Cyber9397DVD ProVidia 9682, 9685, Cyber9382, Cyber9385, Cyber9388 TGUI 9440AGi, 9660, 9680 ISA/VLBus 8900C, 8900D, 9000, 9200CXr, Cyber9320, 9400CXi, 9440AGi These cards have been ported but need further testing and may not work. (以下略) むう。やっぱり無い。CyberBladeXP やその派生はあるものの、CyberBladeXP2 は、やはりありません。なんとなく、CyberBladeXP であると無理やり設定すれば動くかもしれない等と考えてみましたが、やる前にもう少し調べてみました。 まずは、ビデオカードがどう認識されているか調べました。lspci をすると、 01:00.0 VGA compatible controller: Trident Microsystems Unknown device 9960 (rev 89) (prog-if 00 [VGA]) これは VGA のコントローラーが、PCI バスの 01:00.0 についていて、そのデバイスのIDは 9960 であると報告してきています。 locate でファイルの名前にあたりをつけて調べると、/usr/src/linux/include/video/trident.h というファイルが引っかかります(これは Debian 固有で、他のディストリビューション≪あるいはBSDなど≫、では違う場所かもしれません。とにかくカーネルのソースが置いてあるところです)。同じ /usr/src/linux/include/video/ 内に、他のビデオチップのファイルがあるので、おそらくこれです。ヴィヴァ!オープンソース! (注意:/usr/src/linux/include/video/trident.h は、コンソールフレームバッファの方で X とは無関係です。X に関係があるのは、xserver-xorg-video-trident のソースです。こちらにも、同じく定義はありません。thanx! http://kmuto.jp) /usr/src/linux/include/video/trident.h の中身はこうなっています。 /* PCI IDS of supported cards temporarily here */ #define CYBER9320 0x9320 #define CYBER9388 0x9388 #define CYBER9382 0x9382 /* the real PCI id for this is 9660 */ #define CYBER9385 0x9385 /* ditto */ #define CYBER9397 0x9397 #define CYBER9397DVD 0x939A #define CYBER9520 0x9520 #define CYBER9525DVD 0x9525 #define TGUI9660 0x9660 #define IMAGE975 0x9750 #define IMAGE985 0x9850 #define BLADE3D 0x9880 #define CYBERBLADEE4 0x9540 #define CYBERBLADEi7 0x8400 #define CYBERBLADEi7D 0x8420 #define CYBERBLADEi1 0x8500 #define CYBERBLADEi1D 0x8520 #define CYBERBLADEAi1 0x8600 #define CYBERBLADEAi1D 0x8620 #define CYBERBLADEXPAi1 0x8820 #define CYBERBLADEXPm8 0x9910 #define CYBERBLADEXPm16 0x9930 各チップのIDが定義してありますが、デバイスID 9960 の CyberBladeXP2 は、定義されていません。ようするにやっぱりサポートされていないということです。 おそらくは、この定義を使って自動判別及び trident_drv が書かれているので、この定義を書き直してドライバをコンパイルし直さないと動かないでしょう。 man にも書いてあることを信じれば、チップを定義はしてあるものの、ちゃんと動くかはテストしないといけないみたいですね(ある程度はテストされていると期待してしまうのだけれど……)。 今後どうするか? 1:諦めて今のまま使う。 2:ひょっとしたら、ドライバを書き直さなくてもハードウェアアクセラレーションを有効にできるかもしれないので、その辺を調べてみる。 3:リクエストを出してみる。誰か書いてくれるかも。 4:とうとうドライバを書くことに手を染める(数値計算をするようなプログラムは仕事で書いていますが、システムに関係するソースを書き換えたりしたことはありません)。 多分1が濃厚ではありますが、4はちょっとやってみたいという欲望(?)があります。挫折しそうだけど。結構調べたけど情報がないと言うことは、メーカーが情報を出して無いのかな? VESA のドライバで通常の使用は問題ないのだから、それを使いなさいということなのかしら?個々のドライバをサポートするよりは、そっちの方がいいからと……。2は無いと思うけど、調べ方が悪かったかしらん。 とりあえず、もうちょっと調べてみます。
|

- >
- コンピュータとインターネット
- >
- コンピュータ
- >
- UNIX



shuseiさん<<それはおそらくCyberBladeXPとその派生のみに有効なんではないでしょうか?一応ドライバのソースを覗きましたが、私の使っているCyberBladeXP2は、定義すらありません。lspci のテーブルにも載っていなかったくらいなので(ポストはしときましたが)、サポートされていないんだと思います。
この場合、インストールの時にはvesaを呼んで欲しいのですが、自動判別だとtridentだと分かってしまうので、tridentのドライバを呼んでしまいます。インストール中か後に、vesaを呼ぶようにすれば問題はないのですが。
リンク先に示してあるドライバがもしかしたらサポートしているのかな?時間のある時に見てみることにします。
2008/3/31(月) 午後 5:36
いきなりですいませんでした。
自分はLinuxを勉強したくて昔買ったノートでできればって事でやってるのですが、自分が入れたいOSがディスプレイのエラーか何かで入らなくてUTUBUNU?を入れたんですが画面サイズ設定ができなくてやる気にもならずウダウダしてますwww
時間ある時でいいんでやってみてください。
よろしくお願いします。
2008/4/3(木) 午後 4:44 [ shuse ]
shuseiさん<<なるほど。Linuxに挑戦されているのですね。Ubuntuですか。Ubuntuは、Debianをベースにしているので、私でも分かることがあるかもしれません。
書かれている感じからすると、インストール自体はうまく行っていて、X window system がうまく行っていないような様子ですね。立ち上げるとログインプロンプトは出ていませんか?出ているならば、ログインしてDebianならdpkg-reconfigure x-window-system で、X の再設定が出来ます(パッケージ名が違うかもしれませんが、調べてみてください)。Ubuntuも一緒かな?そこで、あるいはインストールの時のビデオカードの自動検出を無しにして、vesa ドライバが読み込まれるようにしてみてください(これは、xorg-confを手でいじってもできます)。
この辺の事とお持ちのノートの型番から、使われているビデオチップが何かを検索して調べてみると、解決法にたどり着けると思います。頑張って見てください。
2008/4/3(木) 午後 11:58
私も東芝PCの CyberBLADE XP2の罠に捕まっています。
Linuxの画面が液晶中央に小さくしか出ないです。LANで繋いでWindows機からGUI画面を見る方法があれば教えて欲しいです。どだい、そんなこと無理か。
2008/5/3(土) 午後 9:06 [ xyz ]
xyzさん<<どこのディストリビューションのどのヴァージョンをどういうハードでお使いなのか分からないので何とも言えませんが、私は15in.1124×768@61Hz(モニターのフルで)使えているので、Xの設定の問題だと思われます。私が遭遇した状況と類似のもののようですが、コメントだけでは何が問題かはっきりとはわかりません。
CyberBLADEXP2は記事にある通り、
1:lspciで出てこない(私が既に報告して取り込まれたはずなので、新しめのものには既に入っている可能性が有ります)。
2:Xの設定時のチップの自動検出で、tridentドライバーを読み込むようになってしまうが、tridentドライバーはCyberBLADEXP2に対応していない。
という2つの問題があります。結局は2つめが問題なのですが。
2008/5/3(土) 午後 11:21
xyzさん(続き)>>回避するには、インストール時及びその後のXの設定で、チップの自動検出をやめて手動でベンダー名を「unknown」あるいは「generic」(詳しくは覚えていませんが、そんなようなものでした)というものを選ぶ必要があります。解像度は自動検出で構いません。むしろここは自動検出に任せて何も設定しない方がいい(Debianの場合ですが他でも一緒?)でしょう。これでVESA(標準の)ドライバーを読み込むようにすればいいだけです。
Xの設定ツールをコンソールか狭くてもGUIで動かす、それがダメならば再インストール時のXの設定で、上記のことに気をつけてやってみてください。ダメもとでやる価値はあると思いますよ。
ネットワークは詳しくないのですが、そういうツールを私は知りません。
2008/5/3(土) 午後 11:22
ありがとうございます。私は東芝satellite 1860 SA220P/5x機に、FedoraCore6を入れています。インストール時、ベンダー名をunknounなどと色々試みましたが(詳細は忘れましたが)、画面そのものが表示できなかったり、縞模様になってうまくいかなかった記憶があります。近く、Fedora8かCentOS5に入れ替えたいと思っていますので、そのときにご示唆の方法を是非試したいと思います。
>私は15in.1124×768@61Hz(モニターのフルで)使えているので、
ということなので、うまくいく可能性がありそうですね。やる気が出てきました。
2008/5/5(月) 午後 0:41 [ xyz ]
xyzさん>>http://blogs.yahoo.co.jp/mindrefugee307/37945201.html
一応まとめて置きました。lspciは確認したら今の私の環境ではCyberBLADE XP2だと出ました。いつから出るようになったのかな?
ほぼ同じハード構成ですが、モニターが1400×1050なんですね。私はやったこと無いですが、VESA 1400 1050 で検索したら、ちゃんとみてませんが、どうも出来るみたいな情報が引っかかりました。
FedoraかCentOSをお使いになりたいみたいですが、入れ替えるなら、お時間があれば Debian をテストするという選択肢もあります。Debian でうまくいくかどうか試してみて、うまく行ったら目的のものにxorg.confを移して試してみるということができます。Fedora や CentOS で dexconf は動かないよなあ、多分。
頑張ってみてください。
2008/5/5(月) 午後 2:25
「まとめ」を拝見しました。私はFedoraに拘っているわけではないのですが、PCにDVDドライブが付いていないので、雑誌記事やWebの情報を参考にUSBメモリかPXEで入れたいと思っていただけなのです。Debianは何となく難しそうで、様子が分かりませんがTryして見ます。ありがとうございます。
2008/5/5(月) 午後 3:05 [ xyz ]
xyzさん<<私もDVDドライブ欲しい。誰か、くれ!
私のはCD-Rも焼けないCDドライブなんですが。他所でCD一枚焼いて後はネットワークだよりです。netinst イメージかCDの一枚目(jigdo で作る)があれば十分なので。
debian の USB インストールは、debian が無いとダメそうですね。
debian もお持ちの PC なら GUI インストールは可能なので、そんなに他のディストリビューションと難易度は変わらないと思いますが……。難しいかな?
ところで、xrandr というコマンドは試しました?xorg.conf がおかしければ結局ダメかな?
2008/5/5(月) 午後 3:54
れふじさん。ありがとうございます。
xrandr というコマンドをググッて勉強してみます。
2008/5/5(月) 午後 8:37 [ xyz ]
xyzさん<<私がざっと見たところでは、インテルのドライバなら855resolution か915(だったかな?)resolution が必要かもしれません。vesaドライバだとどうするんだろう。何もいらないのかな?
とにかくFedoraであろうとCentOSであろうと、vesaドライバとしかるべきxorg.confということだと思います。
インストールの時は、画面はどうでしょう。フルに使えてます?インストーラーによっては、ブート時にオプションを付ける必要があるかもしれません。(古い情報かも)
それぞれディストリビューションの X の設定ツールがあると思いますが、その時の詳しさ度(?)を最大、最小両方試すと言うのも手です。あとは、log を見るしかないですね。エラーを吐いている部分をググるとか。
ま、私がお助けできるのはこの辺までかな?後はドキュメントをよく読んで、どうしてもダメなら各ディストリビューションのメーリングリストに聞いてみる方がいいでしょう。
それでは、健闘を祈ります。あ、もしうまく行ったら、どうしたらうまく行ったか教えて下さるとありがたいです。
2008/5/6(火) 午前 0:06
れふじさん。たびたびどうもありがとうございます。
当初、FC4を入れ、昨年FC6(クリーンインストール)に入れ直したのですが、いずれも、x.orgを色々変えてみましたがうまくいかなかったのです。インストール時は画面がフルに使えていま気がします。連休も明け、また忙しくなりますので、OS入れ替えは暫く後になりますが、やった結果はご報告するつもりです。と、言うより、その作業の途中でまたお知恵を拝借することになると思いますので、その時はよろしくお願い致します。まず、Debianをいれてみようかなという気になりつつあります。
2008/5/6(火) 午後 1:38 [ xyz ]
xyzさん<<お持ちのSVGA+のモニターサイズは、設定にちょっと手順が必要な記述が散見されました。VESAのデフォルトサイズではないかも?おそらくは、ちょっと古い情報で、新しめのものにはそのあたりが改善されているのかもしれませんね(希望的観測)。
xorg7.3 だと、画面サイズはxorg.conf の Mode ではなく xrandr を使わないといけないみたいです(未確認)。
いろいろと変わっているので、早めのアップグレードが吉のような気がします。古いものでやるより新しいものでやった方が、情報の取捨選択も楽ですし。その上でトラブルがあるようならば、報告を上げた方がよさそうですね。
2008/5/6(火) 午後 5:05
あ、xrandrはサポートされてるものしか使えないっぽいです(未確認情報)。てことは、やはりxorg.conf...
試しに私のところでxrandr をやってみましたが、x が再起動してしまって、1024×768 に戻りますね。ううむ。ちゃんとやれば使えるのか?ディスプレイのサイズがまともに入ってないのが気になる。
2008/5/6(火) 午後 5:56
http://wiki.x.org/wiki/FAQVideoModes#head-d174fd476064edf62ed05d71d8a91b3dc4307324
ううむ。気になる記述。これが正しいなら無理ってことか?
もしくはこれ?
Option "ModeSetClearScreen" "boolean"
Clear the screen on mode set. Some BIOSes seem to be broken in the sense that the newly set video mode is bogus if they are asked to clear the screen during mode setting. If you experience problems try to turn this option off. Default: on.
2008/5/6(火) 午後 6:41
れふじさん。画面の95%ぐらいの大きさで表示できました!OSを入れ替える前に現装のFC6でxorg.confを変更してみました。そうしたら、きれいに表示ができました!感謝です!以下は、その xorg.confの抜粋です。
Section "Monitor" HorizSync 28-50、VertRefresh 43-75、Section "Screen" Identifier "Screen0" DefaultDepth 24、SubSection "Display" Modes "1280x1024"。
Identifierを "Default Screen"とするとエラーが出ます。また、私のPCのSPEC表には内部ディスプレイ表示機能 1400×1050とありますが、Modes を "1400×1050"にすると黒い画面しか出ませんでした。
英文のコメントはまだ読んでいません。まさか液晶が壊れるとは書いてないでしょうね?
2008/5/6(火) 午後 9:26 [ xyz ]
xyzさん<<おおっ!良かったですね。わざわざご報告ありがとうございます。1400x1050は、無理かもと思っていたので(リンク先参照)。言われてみれば1280x1024で我慢できればそれでいいような気はしますね。大して大きさは変わらないし。
ModeSetClearScreen は、BIOS の設定をクリアしないというvesaのオプションです。これで出来るようになるかはわかりませんけれど。
何が起きていたのかはまだ分りませんが、とりあえずおめでとうございます。いろいろ弄る前にとにかくxorg.confをどこかにコピーしておきましょう!良かった良かった。
2008/5/6(火) 午後 9:54
xyzさん(書き忘れ)<<Identifierのところは、ディストリビューションの設定ツールによるものだと思うので、そうなったんでしょう。
2008/5/6(火) 午後 9:58
答えは簡単だった、FC4で可能だったことは、CentOS5でも可能だった。
1450X1050(数千の色)で、フルスクリーンで使用可能、
行ったことは、FC4のシステムのディスプレイで設定したXorg.confを単純にコピーすればOKのようだ、障害出る可能性もあるので自己責任
行ってください。
2010/7/16(金) 午前 1:58 [ 困った ]