「AMD Catalyst」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
1行目: 1行目:
 
[[Category:グラフィック]]
 
[[Category:グラフィック]]
 
[[Category:X サーバー]]
 
[[Category:X サーバー]]
[[en:ATI Catalyst]]
+
[[en:AMD Catalyst]]
[[es:ATI Catalyst]]
+
[[es:AMD Catalyst]]
 
[[fr:ATI#Catalyst]]
 
[[fr:ATI#Catalyst]]
 
[[it:AMD Catalyst]]
 
[[it:AMD Catalyst]]
37行目: 37行目:
 
*[catalyst-stable]; Radeon HD 5xxx 以降で必要な標準 Catalyst ドライバー、最新の stable ドライバー。
 
*[catalyst-stable]; Radeon HD 5xxx 以降で必要な標準 Catalyst ドライバー、最新の stable ドライバー。
 
*[catalyst-hd234k]; Radeon HD 2xxx, 3xxx, 4xxx カードで必要な legacy Catalyst ドライバー。
 
*[catalyst-hd234k]; Radeon HD 2xxx, 3xxx, 4xxx カードで必要な legacy Catalyst ドライバー。
 
{{Warning|
 
* レガシーな Catalyst ドライバーは Xorg 1.13 をサポートしていません。このドライバーを使いたい場合、Xorg 1.12 に戻すための方法が書かれている [[#Xorg リポジトリ]] を見て下さい。
 
}}
 
   
 
リポジトリのどれかを有効にするには、{{ic|/etc/pacman.conf}} を編集して、そこに記述してある'''他のどのリポジトリよりも先に'''選択したリポジトリを追加する必要があります。
 
リポジトリのどれかを有効にするには、{{ic|/etc/pacman.conf}} を編集して、そこに記述してある'''他のどのリポジトリよりも先に'''選択したリポジトリを追加する必要があります。
92行目: 88行目:
 
* ''lib32-catalyst-libgl'' - 任意、64ビット環境での32ビットの OpenGL サポートに必要
 
* ''lib32-catalyst-libgl'' - 任意、64ビット環境での32ビットの OpenGL サポートに必要
 
* ''lib32-opencl-catalyst'' - 任意、64ビット環境での32ビットの OpenCL サポートに必要
 
* ''lib32-opencl-catalyst'' - 任意、64ビット環境での32ビットの OpenCL サポートに必要
 
Intel/AMD のグラフィックカードが搭載されているハイブリッドのノートブックを使っている場合は、インストールするパッケージは少し違います:
 
 
* ''catalyst-hook''
 
* ''catalyst-utils-pxp''
 
* ''lib32-catalyst-utils-pxp'' - 任意、64ビット環境での32ビットの OpenGL サポートに必要
 
   
 
{{Note|もし pacman が '''libgl''' を削除するよう言ってきた場合、削除しても問題ありません。}}
 
{{Note|もし pacman が '''libgl''' を削除するよう言ってきた場合、削除しても問題ありません。}}
126行目: 116行目:
 
AUR にはリポジトリには'''ない'''パッケージもいくつか存在します。これらのパッケージには所謂 ''Catalyst-total'' やベータバージョンが含まれます:
 
AUR にはリポジトリには'''ない'''パッケージもいくつか存在します。これらのパッケージには所謂 ''Catalyst-total'' やベータバージョンが含まれます:
 
* {{AUR|catalyst-total}}
 
* {{AUR|catalyst-total}}
* {{AUR|catalyst-total-pxp}}
 
 
* {{AUR|catalyst-total-hd234k}}
 
* {{AUR|catalyst-total-hd234k}}
 
* {{AUR|catalyst-test}}
 
* {{AUR|catalyst-test}}
   
 
{{AUR|catalyst-total}} パッケージは AUR ユーザーの生活を楽にするために作られています。ドライバーとカーネルユーティリティ、32bit のカーネルユーティリティをビルドします。上で簡単に説明されている {{AUR|catalyst-hook}} パッケージもビルドします (詳しい説明は下のセクションにあります)。
 
{{AUR|catalyst-total}} パッケージは AUR ユーザーの生活を楽にするために作られています。ドライバーとカーネルユーティリティ、32bit のカーネルユーティリティをビルドします。上で簡単に説明されている {{AUR|catalyst-hook}} パッケージもビルドします (詳しい説明は下のセクションにあります)。
 
{{AUR|catalyst-total-pxp}} は実験的な powerXpress サポートを有効にして Catalyst をビルドします。
 
   
 
=== ドライバーの設定 ===
 
=== ドライバーの設定 ===
150行目: 137行目:
   
 
# aticonfig --initial
 
# aticonfig --initial
 
{{Note|PowerXpress に問題が発生する場合 {{AUR|catalyst-total-pxp}} をインストールする必要があるかもしれません。}}
 
   
 
2つモニターがあって両方使いたい場合、下のコマンドを実行することができます。このコマンドでは最初のスクリーンの上に2番目のスクリーンがくる dual head 設定を生成します。
 
2つモニターがあって両方使いたい場合、下のコマンドを実行することができます。このコマンドでは最初のスクリーンの上に2番目のスクリーンがくる dual head 設定を生成します。
213行目: 198行目:
 
==== kernel mode setting を無効化 ====
 
==== kernel mode setting を無効化 ====
   
{{Note|{{ic|catalyst-utils-pxp}} {{ic|catalyst-total-pxp}} を使っている場合は intel のドライバーが KMS を必要とするので KMS を無効化してはいけません。}}
+
{{Note|powerXpress テクノロジー (あるいは amd-intel ハイブリッドグラフィック) を使っている場合は intel のドライバーが KMS を必要とするので KMS を無効化してはいけません。}}
   
 
ドライバーがまだ [[Kernel Mode Setting|KMS]] を利用できないので、kernel mode setting を無効にするのは重要です。KMS を無効化しないと、tty を切り替えたり DE からシャットダウンしようとした時にシステムがフリーズします。
 
ドライバーがまだ [[Kernel Mode Setting|KMS]] を利用できないので、kernel mode setting を無効にするのは重要です。KMS を無効化しないと、tty を切り替えたり DE からシャットダウンしようとした時にシステムがフリーズします。
258行目: 243行目:
   
 
この機能を Arch で使うために必要なことは:
 
この機能を Arch で使うために必要なことは:
* [[Arch User Repository|AUR]] から {{AUR|catalyst-total-pxp}} パッケージを入手・ビルドする、もしくは
+
* [[Arch User Repository|AUR]] から {{AUR|catalyst-total}} / {{AUR|catalyst-test}} パッケージを入手・ビルドする、もしくは
* [catalyst] リポジトリから '''catalyst-utils-pxp''' パッケージをインストールする (必要ならば lib32-catalyst-utils-pxp も)
+
* [catalyst] リポジトリから '''catalyst-libgl''' と '''catalyst-utils''' パッケージをインストールする。
   
Intel の IGP に切り替えるには {{pkg|mesa-libgl}} パッケージと Intel のドライバー ({{pkg|xf86-video-intel}}) をインストールする必要があります。
+
Intel の IGP に切り替えるには {{pkg|mesa}} パッケージと Intel のドライバー ({{pkg|xf86-video-intel}}) をインストールする必要があります。
   
  +
{{Note|Catalyst は最新の intel ドライバーと問題を起こすことがあります。その場合は [[Arch Linux Archive]] から {{pkg|xf86-video-intel}} を前のバージョンにダウングレードしたり、[[#Xorg リポジトリ]] を使って xorg-server パッケージもダウングレードしてください。}}
{{Note|'''With the latest version of Catalyst, version 13.1 (not Catalyst legacy) ChrisXY was able to work on the newest {{pkg|xorg-server}} (version 1.13.1), {{pkg|mesa}} 9.0.1 and {{pkg|xf86-video-intel}} 2.20.18'''.
 
 
Catalyst 13.1 以下では、新しい Intel のドライバーと問題が発生するため、一番最後に動作していた {{pkg|xf86-video-intel}} のバージョンである 2.20.2-2 まで、最新のバージョンからダウングレードする必要があります (ただしダウングレードする前に最新バージョンのテストを行うことを推奨します。動作する可能性は常にあります)。
 
 
{{pkg|xf86-video-intel}} 2.20.2-2 は xorg-server 1.12 でだけ動き、これは ''xorg112 リポジトリ''に含まれています。使いたい場合は xorg-sever もダウングレードする必要があります。詳しくは [[#Xorg リポジトリ]] を見て下さい。}}
 
   
 
以下のコマンドを使うことで、内蔵・ディスクリート GPU の切り替えができます:
 
以下のコマンドを使うことで、内蔵・ディスクリート GPU の切り替えができます:
328行目: 309行目:
   
 
バックポートリポジトリを使いたい場合、{{ic|/etc/pacman.conf}} を編集して、(Catalyst リポジトリを含む) '''他のどのリポジトリよりも前に'''リポジトリを追加する必要があります。
 
バックポートリポジトリを使いたい場合、{{ic|/etc/pacman.conf}} を編集して、(Catalyst リポジトリを含む) '''他のどのリポジトリよりも前に'''リポジトリを追加する必要があります。
  +
  +
=== xorg117 ===
  +
Catalyst は xorg-server 1.18 をサポートしていません。
  +
{{bc|<nowiki>
  +
[xorg117]
  +
Server = http://catalyst.wirephire.com/repo/xorg117/$arch
  +
## Mirrors, if the primary server does not work or is too slow:
  +
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/xorg117/$arch
  +
#Server = http://mirror.hactar.bz/Vi0L0/xorg117/$arch
  +
</nowiki>}}
   
 
=== xorg116 ===
 
=== xorg116 ===
Catalyst は xorg-server 1.17 をサポートしていません。
+
Catalyst 15.7 未満は xorg-server 1.17 をサポートしていません。
 
{{bc|<nowiki>
 
{{bc|<nowiki>
 
[xorg116]
 
[xorg116]
386行目: 377行目:
   
 
=== Catalyst-hook ===
 
=== Catalyst-hook ===
{{AUR|Catalyst-hook}} はシステムをシャットダウン・再起動した時に (アップデートの後など、必要な場合にのみ) 自動的に {{ic|fglrx}} モジュールをリビルドする [[systemd|systemd]] サービスです。
+
{{AUR|Catalyst-hook}} はシステムをシャットダウン・再起動した時に (アップデートの後など、必要な場合にのみ) 自動的に {{ic|fglrx}} モジュールをリビルドする [[systemd]] サービスです。
   
 
このパッケージを使う前に {{Grp|base-devel}} グループと {{Pkg|linux-headers}} パッケージ (あなたの使っているカーネルに対応するもの) がインストールされているか確認してください。
 
このパッケージを使う前に {{Grp|base-devel}} グループと {{Pkg|linux-headers}} パッケージ (あなたの使っているカーネルに対応するもの) がインストールされているか確認してください。
421行目: 412行目:
 
{{AUR|catalyst-generator}} は {{ic|fglrx}} モジュールをビルドして pacman 互換の {{ic|<nowiki>catalyst-${kernver}</nowiki>}} パッケージを作り、インストールすることができるパッケージです。コマンドを手動で実行する必要があるところが [[#Catalyst-hook]] との主な違いです。Catalyst-hook は新しいカーネルがインストールされた時に自動で行います。
 
{{AUR|catalyst-generator}} は {{ic|fglrx}} モジュールをビルドして pacman 互換の {{ic|<nowiki>catalyst-${kernver}</nowiki>}} パッケージを作り、インストールすることができるパッケージです。コマンドを手動で実行する必要があるところが [[#Catalyst-hook]] との主な違いです。Catalyst-hook は新しいカーネルがインストールされた時に自動で行います。
   
generator は [[makepkg|makepkg]] を使って {{ic|<nowiki>catalyst-${kernver}</nowiki>}} パッケージを作成し、[[pacman|pacman]] でインストールします。{{ic|${kernver}}} はそれぞれのパッケージが作成されたときのカーネルのバージョンになります (例: 2.6.35-ARCH カーネルを使っている場合 catalyst-2.6.35-ARCH パッケージが作成されます)。
+
generator は [[makepkg]] を使って {{ic|<nowiki>catalyst-${kernver}</nowiki>}} パッケージを作成し、[[pacman]] でインストールします。{{ic|<nowiki>${kernver}</nowiki>}} はそれぞれのパッケージが作成されたときのカーネルのバージョンになります (例: 2.6.35-ARCH カーネルを使っている場合 catalyst-2.6.35-ARCH パッケージが作成されます)。
   
 
非特権ユーザー (root 以外、安全な方法) で現在起動しているカーネルのために {{ic|<nowiki>catalyst-${kernver}</nowiki>}} パッケージをビルド・インストールするには、{{ic|catalyst_build_module}} を使って下さい。root パスワードを求められ、パッケージのインストールに進みます。
 
非特権ユーザー (root 以外、安全な方法) で現在起動しているカーネルのために {{ic|<nowiki>catalyst-${kernver}</nowiki>}} パッケージをビルド・インストールするには、{{ic|catalyst_build_module}} を使って下さい。root パスワードを求められ、パッケージのインストールに進みます。
436行目: 427行目:
   
 
# 非特権ユーザーでパッケージをビルドできます。
 
# 非特権ユーザーでパッケージをビルドできます。
  +
# fakeroot 環境でモジュールをビルドします。
# it is building modules in a fakeroot environment;
 
  +
# ファイルが散らばることはありません、[[pacman]] がファイルの場所を把握します。
# it is not throwing files here and there, [[pacman]] always knows where they are;
 
  +
# 使用したことを覚えておくだけで十分です。
# all you have to do is to remember to use it
 
   
 
{{Note|{{ic|<nowiki>catalyst-{kernver}</nowiki>}} パッケージをビルドするときに以下の警告が表示されても:
 
{{Note|{{ic|<nowiki>catalyst-{kernver}</nowiki>}} パッケージをビルドするときに以下の警告が表示されても:
454行目: 445行目:
 
現在'''"ヘテロジニアスコンピューティング"'''の名のもとに AMD はそれらの多くを提供しており、ありがたいことにコンピューティングツールのほとんどが Linux でも利用可能です。
 
現在'''"ヘテロジニアスコンピューティング"'''の名のもとに AMD はそれらの多くを提供しており、ありがたいことにコンピューティングツールのほとんどが Linux でも利用可能です。
   
AUR や [catalyst] リポジトリから、AMD が提供している主なツールのパッケージをインストールできます: [https://aur.archlinux.org/packages/amdapp-aparapi amdapp-aparapi], [https://aur.archlinux.org/packages/amdapp-sdk amdapp-sdk], [https://aur.archlinux.org/packages/amdapp-codexl amdapp-codexl].
+
AUR や [catalyst] リポジトリから、AMD が提供している主なツールのパッケージをインストールできます:
  +
* {{AUR|amdapp-aparapi}}
  +
* {{AUR|amdapp-sdk}}
  +
* {{AUR|amdapp-codexl}}
   
 
APP は Accelerated Parallel Processing の略称です。
 
APP は Accelerated Parallel Processing の略称です。
505行目: 499行目:
 
$ mplayer -vo vaapi:gl movie.avi
 
$ mplayer -vo vaapi:gl movie.avi
   
これらのオプションは mplayer の設定ファイルに追記することができます、[[MPlayer|MPlayer]] を見て下さい。
+
これらのオプションは mplayer の設定ファイルに追記することができます、[[MPlayer]] を見て下さい。
   
 
'''smplayer''' の場合:
 
'''smplayer''' の場合:
606行目: 600行目:
 
*(あなたのシステムに存在する場合) {{ic|/etc/profile.d/ati-flgrx.sh}} や {{ic|/etc/profile.d/lib32-catalyst}} を削除する必要があるかもしれません、そうしないと {{ic|r600_dri.so}} のロードが失敗して 3D サポートが得られません。}}
 
*(あなたのシステムに存在する場合) {{ic|/etc/profile.d/ati-flgrx.sh}} や {{ic|/etc/profile.d/lib32-catalyst}} を削除する必要があるかもしれません、そうしないと {{ic|r600_dri.so}} のロードが失敗して 3D サポートが得られません。}}
   
{{Note|{{ic|/etc/pacman.conf}} から非公式リポジトリを削除して {{ic|# pacman -Syu}} を実行してください。非公式リポジトリには {{ic|catalyst}} を使うために古くなった Xorg パッケージが含まれており、{{Pkg|xf86-video-ati}} パッケージは[[Official Repositories|公式リポジトリ]]にある最新の Xorg パッケージを必要としているからです。}}
+
{{Note|{{ic|/etc/pacman.conf}} から非公式リポジトリを削除して {{ic|# pacman -Syu}} を実行してください。非公式リポジトリには {{ic|catalyst}} を使うために古くなった Xorg パッケージが含まれており、{{Pkg|xf86-video-ati}} パッケージは[[公式リポジトリ]]にある最新の Xorg パッケージを必要としているからです。}}
   
 
また、以下の手順に従って下さい:
 
また、以下の手順に従って下さい:
614行目: 608行目:
 
* {{ic|/etc/X11/xorg.conf}} を削除するかバックアップする。
 
* {{ic|/etc/X11/xorg.conf}} を削除するかバックアップする。
 
* {{AUR|catalyst-hook}} パッケージをインストールしていた場合は、systemd サービスを無効にしておく。
 
* {{AUR|catalyst-hook}} パッケージをインストールしていた場合は、systemd サービスを無効にしておく。
* [[kernel parameters|カーネルパラメータ]]で {{ic|nomodeset}} オプションを使っていて [[Kernel Mode Setting|KMS]] をこれから使う場合、オプションを削除する。
+
* [[カーネルパラメータ]]で {{ic|nomodeset}} オプションを使っていて [[Kernel Mode Setting|KMS]] をこれから使う場合、オプションを削除する。
 
* 他のドライバーをインストールする前に'''再起動'''をする。
 
* 他のドライバーをインストールする前に'''再起動'''をする。
   
662行目: 656行目:
 
=== 再起動したり startx した後に真っ黒な画面で完全にロックしたりハングアップする ===
 
=== 再起動したり startx した後に真っ黒な画面で完全にロックしたりハングアップする ===
   
ブートローダーのカーネルオプション行に {{ic|nomodeset}} オプションをちゃんと追加したかどうか確かめて下さい ([[#kernel mode setting を無効化]]を参照)。
+
ブートローダーのカーネルオプション行に {{ic|nomodeset}} オプションをちゃんと追加したかどうか確かめて下さい ([[#kernel mode setting を無効化]]を参照)。インストールした Xorg のバージョンと使用している Linux カーネルのバージョンが Catalyst と互換性があることも確認してください
   
レガシードライバー ({{ic|catalyst-hd234k}}) を使っていて黒画面が出る場合は、[[#&#91;xorg111&#93;]] を使って xorg-server を 1.11 にダウングレードしてみてください。
+
レガシードライバー ({{ic|catalyst-hd234k}}) を使っていて黒画面が出る場合は、[[#xorg112]] を使って xorg-server を 1.12 にダウングレードしてみてください。
   
 
==== 欠陥のある ACPI ハードウェアコール ====
 
==== 欠陥のある ACPI ハードウェアコール ====
737行目: 731行目:
 
==== Video fails to resume from suspend2ram ====
 
==== Video fails to resume from suspend2ram ====
   
フレームバッファが有効になっている場合 ATI のプロプライエタリ Catalyst ドライバーはサスペンド状態から復帰できません。フレームバッファを無効にするには、[[kernel parameters|カーネルパラメータ]]に {{ic|1=vga=0}} を追加してください。
+
フレームバッファが有効になっている場合 ATI のプロプライエタリ Catalyst ドライバーはサスペンド状態から復帰できません。フレームバッファを無効にするには、[[カーネルパラメータ]]に {{ic|1=vga=0}} を追加してください。
   
 
=== システムがフリーズする・ハードが固まる ===
 
=== システムがフリーズする・ハードが固まる ===
746行目: 740行目:
 
=== ハードウェアが衝突する ===
 
=== ハードウェアが衝突する ===
   
  +
特定のバージョンの nForce3 チップセット (例: nForce 3 250Gb) で Radeon カードを使用すると 3D アクセラレーションが機能しません。現在この問題の原因は不明ですが、いくつかのソースによると、nVIDIA のドライバーで Windows を起動してからシステムを最輝度言うするとアクセラレーションが使えるようになるという報告があります。以下のコマンドを実行することで確認できます (nForce3 搭載環境):
Radeon cards used in conjunction with some versions of the nForce3 chipset (e.g. nForce 3 250Gb) won't have 3D acceleration. Currently the cause of this issue is unknown, but some sources indicate that it may be possible to get acceleration with this combination of hardware by booting Windows with the drivers from nVIDIA and then rebooting the system. This can be verified by getting output something similar to this (using an nForce3-based system):
 
   
 
{{hc|<nowiki>$ dmesg | grep agp</nowiki>|
 
{{hc|<nowiki>$ dmesg | grep agp</nowiki>|
754行目: 748行目:
 
}}
 
}}
   
  +
以下のコマンドを実行したときに以下のような出力がされる場合、バグが存在します:
and also if issuing the following command gets you the following output:
 
   
 
{{hc|<nowiki>$ tail -n 100 /var/log/Xorg.0.log | grep agp</nowiki>|
 
{{hc|<nowiki>$ tail -n 100 /var/log/Xorg.0.log | grep agp</nowiki>|
 
(EE) fglrx(0): [agp] unable to acquire AGP, error "xf86_ENODEV"}}
 
(EE) fglrx(0): [agp] unable to acquire AGP, error "xf86_ENODEV"}}
   
  +
場合によっては、マザーボードの BIOS をダウングレードすると解決するとも言われていますが、どんな場合でも確実にそうなるとは保証できません。また、BIOS のダウングレードを失敗するとハードウェアが使えなくなる可能性があるため注意してください。
you have this bug.
 
   
  +
詳しくは [http://bugzilla.kernel.org/show_bug.cgi?id=6350/ こちらのバグレポート] を見て下さい。
Some sources indicate that in some situations, downgrading the motherboard BIOS may help, but this cannot be verified in all cases. Also, '''a bad BIOS downgrade can render your hardware useless, so beware.'''
 
 
See [http://bugzilla.kernel.org/show_bug.cgi?id=6350/ this bugreport] for more information and a potential fix.
 
   
 
=== 動画を再生している時に一時的にハングする ===
 
=== 動画を再生している時に一時的にハングする ===
796行目: 788行目:
 
aticonfig: No supported adaptaters detected
 
aticonfig: No supported adaptaters detected
   
手動で {{ic|etc/X11/xorg.conf}} ファイルにデバイスを設定したり、昔の問題なく動いていた /etc/ati/control ファイルをコピーする (推奨 - ウォーターマークの問題も解決します) ことで Catalyst を動かすことができるかもしれません。
+
手動で {{ic|etc/X11/xorg.conf}} ファイルにデバイスを設定したり、昔の問題なく動いていた {{ic|/etc/ati/control}} ファイルをコピーする (推奨 - ウォーターマークの問題も解決します) ことで Catalyst を動かすことができるかもしれません。
   
  +
古いコントロールファイルを入手するには、AMD から前のバージョンの fglrx をダウンロードして {{ic|--extract driver}} パラメータを付けて実行してください。コントロールファイルは {{ic|driver/common/etc/ati/control}} にできます。抽出されたファイルをシステムファイルに上書きして Xorg を再起動してください。別のバージョンのファイルを試すことができます。
To get an older control file, download a previous version of fglrx from AMD and run it with {{ic|--extract driver}} parameter. You'll find the control file in {{ic|driver/common/etc/ati/control}}. Copy the extracted file over the system file and restart Xorg. You can try different versions of the file.
 
   
To set your model in {{ic|xorg.conf}}, edit the device section of {{ic|/etc/X11/xorg.conf}} to:
+
{{ic|xorg.conf}} でモデルを設定するには、{{ic|/etc/X11/xorg.conf}} の device セクションを以下のように編集します:
   
 
{{hc|/etc/X11/xorg.conf|
 
{{hc|/etc/X11/xorg.conf|
809行目: 801行目:
 
}}
 
}}
   
  +
{{ic|****}} はあなたのデバイスの製品番号に置き換えてください (例: HD6870 なら 6870 で、E-350 APU なら 6310)。
Where {{ic|****}} should be replaced with your device's marketing number (e.g. 6870 for the HD 6870 and 6310 for the E-350 APU).
 
   
Xorg will start and it is possible to use {{ic|amdcccle}} instead of {{ic|aticonfig}}. There will be an "AMD Unsupported hardware" watermark.
+
Xorg を起動したら {{ic|aticonfig}} の代わりに {{ic|amdcccle}} を使うことができます。"AMD Unsupported hardware" ウォーターマークが表示されます。
   
  +
以下のスクリプトを使うことでこのウォーターマークを削除できます:
You can remove this watermark using the following script:
 
   
 
#!/bin/sh
 
#!/bin/sh
821行目: 813行目:
 
done
 
done
   
  +
それからマシンを再起動してください。
and then reboot your machine.
 
   
 
=== Chromium の WebGL サポート ===
 
=== Chromium の WebGL サポート ===
879行目: 871行目:
   
 
=== Dual Screen Setup: general problems with acceleration, OpenGL, compositing, performance ===
 
=== Dual Screen Setup: general problems with acceleration, OpenGL, compositing, performance ===
  +
xinerama と xrandr12 を無効化してみてください。
Try to disable xinerama and xrandr12. Check out ie. this way:
 
   
  +
以下のコマンドを入力してシステムを再起動してください:
Type those commands:
 
 
# aticonfig --initial
 
# aticonfig --initial
 
# aticonfig --set-pcs-str="DDX,EnableRandR12,FALSE"
 
# aticonfig --set-pcs-str="DDX,EnableRandR12,FALSE"
  +
{{ic|/etc/X11/xorg.conf}} で xinerama が無効になっているか確認して、無効になっていなかったらシステムを再起動します。
Then reboot your system. In {{ic|/etc/X11/xorg.conf}} check that xinerama is disabled, if it's not disable it and reboot your system.
 
   
 
Next run {{ic|amdcccle}} and pick up amdcccle → display manager → multi-display → multidisplay desktop with display(s) 2.
 
Next run {{ic|amdcccle}} and pick up amdcccle → display manager → multi-display → multidisplay desktop with display(s) 2.
891行目: 883行目:
   
 
=== VariBright 機能を無効にする ===
 
=== VariBright 機能を無効にする ===
次のコマンドを実行すれば VariBright が無効になります:
+
[http://support.hp.com/vn-en/document/c02848104 Vari-Bright] はディスプレイパネルが使用する電力を動的に調整することで節電する機能です。次のコマンドを実行すれば VariBright が無効になります:
 
# aticonfig --set-pcs-u32=MCIL,PP_UserVariBrightEnable,0
 
# aticonfig --set-pcs-u32=MCIL,PP_UserVariBrightEnable,0
   
911行目: 903行目:
 
$ hwinfo --framebuffer
 
$ hwinfo --framebuffer
 
適切な解像度を一つ選んで、ブートローダーの kernel 行にコピーペーストしてください。{{ic|1=vga=0x03d4}} みたいな感じです。
 
適切な解像度を一つ選んで、ブートローダーの kernel 行にコピーペーストしてください。{{ic|1=vga=0x03d4}} みたいな感じです。
  +
  +
=== X セッションから TTY に切り替えるとモニターのバックライトが付いた黒画面が表示される ===
  +
フレームバッファドライバーとして [[uvesafb]] を使って下さい。さらに、{{ic|uvesafb}} を使うことで TTY の解像度を設定できます。
   
 
=== TTY を切り替えてから X のセッションに戻るとマウスカーソルしか表示されない ===
 
=== TTY を切り替えてから X のセッションに戻るとマウスカーソルしか表示されない ===
925行目: 920行目:
 
Workaround is pretty simple and was found by M132. Here are the steps, do everything in "AMD Catalyst Control Center" (amdcccle) application:
 
Workaround is pretty simple and was found by M132. Here are the steps, do everything in "AMD Catalyst Control Center" (amdcccle) application:
   
1. Enable Tear-Free, it will set 3D V-Sync option to "Always on".
+
1. Tear-Free を有効にすると 3D V-Sync オプションが "Always on" になります。
2. Set 3D V-Sync to "Always Off".
+
2. 3D V-Sync "Always Off" に設定してください。
  +
3. Tear-Free が有効になっていることを確認します。
3. Make sure Tear-Free is still on.
 
  +
4. X を再起動 / 再ログインしてください。
4. Restart X / Re-login.
 
   
 
It is working well on KDE 4.11.x, but in case of problems M132 suggests: "Try disabling "Detect refresh rate" and specify monitor's refresh rate in the Composite plugin."
 
It is working well on KDE 4.11.x, but in case of problems M132 suggests: "Try disabling "Detect refresh rate" and specify monitor's refresh rate in the Composite plugin."
939行目: 934行目:
 
# aticonfig --set-pcs-u32=MCIL,PP_PhmUseDummyBackEnd,0
 
# aticonfig --set-pcs-u32=MCIL,PP_PhmUseDummyBackEnd,0
 
[http://ati.cchtml.com/show_bug.cgi?id=711 バグの詳細]
 
[http://ati.cchtml.com/show_bug.cgi?id=711 バグの詳細]
  +
  +
=== Plasma を使っている場合に Chromium の表示がおかしくなる ===
  +
chromium を実行するときに以下のように {{ic|--disable-gpu}} オプションを追加してください (例: {{ic|/usr/share/applications/chromium.desktop}} ファイル):
  +
# cat /usr/share/applications/chromium.desktop | grep -i exec
  +
Exec=chromium %U --disable-gpu
  +
  +
=== Xorg がクラッシュする ===
  +
  +
==== Xorg のバージョンがサポートされていない ====
  +
  +
Linux カーネルのバージョンがサポートされていても Xorg のバージョンがサポートされていない場合、以下のようなエラーメッセージを残して Xorg はクラッシュします:
  +
  +
(WW) fglrx: No matching Device section for instance (BusID PCI:0@0:17:0) found
  +
(...)
  +
/usr/bin/Xorg.bin: symbol lookup error: /usr/lib/xorg/modules/drivers/fglrx_drv.so: undefined symbol: GlxInitVisuals2D
  +
xinit: giving up
  +
xinit: unable to connect to X server: Connection refused
  +
xinit: server error
  +
  +
例: fglrx 15.20.3 は Xorg 1.17 をサポートしていません。
  +
  +
このエラーを解決するには、Xorg をダウングレードする必要があります。詳しくは [https://gist.github.com/anonymous/9ea8d3774f7afce3a605] を見て下さい。
   
 
== 参照 ==
 
== 参照 ==

2015年11月25日 (水) 17:42時点における版

関連記事

ATI/AMD のビデオカードを使っている人は AMD のプロプライエタリなドライバー (catalystAUR) かオープンソースドライバー (xf86-video-ati) のどちらかを選ぶことができます。この記事ではプロプライエタリドライバーについて記述します。

AMD の Linux ドライバーパッケージ catalyst は以前 fglrx (FireGL and Radeon X) と呼ばれていました。パッケージの名前が変わっただけで、カーネルモジュールはそのまま元の fglrx.ko というファイル名になっています。従って、以下で fglrx という名前を使っている時はカーネルモジュールのことを指していて、パッケージではありません。

Catalyst パッケージは公式リポジトリでは提供されていません。過去、開発の質・速度に問題があるとして Catalyst は公式の Arch サポートから外されました。少しの間リポジトリに戻った後、2013年4月に再びサポートが切られて、それからずっと公式リポジトリからは削除されています。

オープンソースドライバと比べると、Catalyst は 2D グラフィックと 3D レンダリング両方で素晴らしいパフォーマンスを発揮し電源管理のサポートも優れています。ただしマルチディスプレイのサポートはあまり充実していません。サポートされているデバイスはチップセット R600 以降を使っている (Radeon HD 2xxx 以降の) ATI/AMD Radeon ビデオカードです。Xorg の decoder ringこの表で、モデル名 (X1900, HD4850) とチップ名 (R580, RV770) を見比べることができます。

目次

インストール

Catalyst をあなたのシステムにインストール方法は3つあります。一つは (Arch の非公式 Catalyst メンテナである) Vi0L0 のリポジトリを使うことです。このリポジトリには必要なパッケージが全て含まれています。二番目の方法は AUR を使うことで、Vi0L0 によって作られた、彼のリポジトリで彼がパッケージを作成するために使っているのと同じものが提供されています。最後に、AMD から直接ドライバーをインストールできます。

方法を選ぶ前に、どのドライバーが必要なのか知る必要があります。Catalyst 12.4 から、AMD は Radeon HD 2xxx, 3xxx, 4xxx カードの開発を legacy Catalyst ドライバーに分割しています。Radeon HD 5xxx 以降では、標準の Catalyst ドライバーを使います。また、必要なドライバーがどれかにかかわらず、Catalyst ユーティリティが必要になります。

ノート: インストールの方法の後には、その方法にかかわらず、誰もがやる必要がある設定について記述しています。

ドライバーのインストール

非公式リポジトリからインストール

もし AUR からパッケージをビルドするのが気に入らないなら、この方法を使って下さい。このリポジトリは非公式の Catalyst メンテナである Vi0L0 によって管理されています。全てのパッケージには署名がされているので安心して使うことができます。この記事の後ろの方で書かれているように、Vi0L0 は ATI グラフィックカードを動作させるために必要な他の多くのパッケージにも関わっています。

Vi0L0 は3つの異なる Catalyst リポジトリを保持しており、それぞれ異なるドライバーが置かれています:

  • [catalyst]; Radeon HD 5xxx 以降で必要な標準 Catalyst ドライバー、(stable か beta かを問わず) 最新の Catalyst リリースを含んでいます。
  • [catalyst-stable]; Radeon HD 5xxx 以降で必要な標準 Catalyst ドライバー、最新の stable ドライバー。
  • [catalyst-hd234k]; Radeon HD 2xxx, 3xxx, 4xxx カードで必要な legacy Catalyst ドライバー。

リポジトリのどれかを有効にするには、/etc/pacman.conf を編集して、そこに記述してある他のどのリポジトリよりも先に選択したリポジトリを追加する必要があります。

  • [catalyst] の場合、次を追加してください:
[catalyst]
Server = http://catalyst.wirephire.com/repo/catalyst/$arch
  • [catalyst-stable] の場合、次を追加してください:
[catalyst-stable]
Server = http://catalyst.wirephire.com/repo/catalyst/$arch
  • [catalyst-hd234k] の場合、次を追加してください:
[catalyst-hd234k]
Server = http://catalyst.wirephire.com/repo/catalyst-hd234k/$arch

また、Vi0L0 の GPG 鍵を追加して pacman がリポジトリを信頼するようにしてください。

# pacman-key --keyserver pgp.mit.edu --recv-keys 0xabed422d653c3094
# pacman-key --lsign-key 0xabed422d653c3094
ヒント: catalyst.wirephire.com は帯域限界に達すると落ちたり (過去にありました)、あなたの地域では遅すぎたりするかもしれないので、goll [1] (ドイツ) や rtsinformatique [2] (フランス) によってリポジトリミラーが提供されています。ただしこれらのミラーが常時利用できるという保証はありません:
[catalyst]
#Server = http://70.239.162.206/catalyst-mirror/repo/catalyst/$arch
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/catalyst/$arch
[catalyst-stable]
#Server = http://70.239.162.206/catalyst-mirror/repo/catalyst/$arch
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/catalyst/$arch
[catalyst-hd234k]
#Server = http://70.239.162.206/catalyst-mirror/repo/catalyst-hd234k/$arch
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/catalyst-hd234k/$arch

あなたの住んでいる地域に一番近いミラーの行をアンコメントしてください。ミラーが落ちた場合にそなえて他のミラーも記述しておくと良いでしょう。

リポジトリのミラーリングは rsync://mirror.rts-informatique.fr::archlinux-catalyst を使えば簡単にできます。

リポジトリを追加したら、pacman のデータベースを更新して以下のパッケージをインストールしてください:

  • catalyst-hook
  • catalyst-utils
  • catalyst-libgl
  • opencl-catalyst - 任意、OpenCL サポートに必要
  • lib32-catalyst-utils - 任意、64ビット環境での32ビットの OpenGL サポートに必要
  • lib32-catalyst-libgl - 任意、64ビット環境での32ビットの OpenGL サポートに必要
  • lib32-opencl-catalyst - 任意、64ビット環境での32ビットの OpenCL サポートに必要
ノート: もし pacman が libgl を削除するよう言ってきた場合、削除しても問題ありません。
警告: catalyst パッケージは Vi0L0 のリポジトリから削除されました。代わりに catalyst-hook を使って下さい。
  • catalyst-hook にはシステムのシャットダウン・再起動時に fglrx モジュールを自動的に更新する systemd のサービスが入っています。#Catalyst-hook にこの説明があります。

catalyst-hook と自動更新が気に入らないのであれば catalyst-generator を使うことができます。

  • catalyst-generatorfglrx モジュールを pacman 互換のパッケージとして生成します。よりセキュアで KISS 原則に沿っていますが、手動で操作する必要があります。詳しくは #Catalyst-generator を見て下さい。

以上のパッケージの詳細は #ツール にあります。 最後に、リポジトリには xvba-videoAUR パッケージと AMDOverdriveCtrl パッケージが含まれています。前者はビデオアクセラレーションを有効にするもので、#ビデオアクセラレーション で説明してます。後者は制御やアンダークロックをするための GUI で #GPU/Mem の周波数、温度、ファンスピード、オーバークロックユーティリティ で説明しています。そして #OpenCL や OpenGL を使った開発 で説明されている OpenCL/OpenGL 開発者 のためのツールパックが含まれています。

AUR からインストール

Catalyst をインストールする二番目の方法は AUR です。あなたのコンピュータにあわせてパッケージをビルドしたい場合、この方法を使って下さい。ただし AUR は Catalyst をインストールするのに一番面倒臭い方法です。一番作業量が多く、また、カーネルを更新する度に手動でアップデートする必要があります。

警告: Catalyst パッケージを AUR からインストールする場合、カーネルが更新される度に Catalyst をリビルドする必要があります。そうしないと X の起動が失敗するようになります

上で述べられている Vi0L0 の非公式リポジトリにあるパッケージは全て AUR でも利用可能です:

AUR にはリポジトリにはないパッケージもいくつか存在します。これらのパッケージには所謂 Catalyst-total やベータバージョンが含まれます:

catalyst-totalAUR パッケージは AUR ユーザーの生活を楽にするために作られています。ドライバーとカーネルユーティリティ、32bit のカーネルユーティリティをビルドします。上で簡単に説明されている catalyst-hookAUR パッケージもビルドします (詳しい説明は下のセクションにあります)。

ドライバーの設定

あなたが選んだ方法でドライバーをインストールした後は、X を設定して Catalyst を動作させる必要があります。また、起動時にモジュールがロードされるようにしなくてはなりません。さらに、KMS を無効にする必要があります。

X の設定

X を設定するために、xorg.conf ファイルを作成する必要があります。Catalyst はこのファイルを作成・修正するための aticonfig ツールを提供しています。 また、このツールを使えばカードのほとんど全てを設定することができ、/etc/ati/amdpcsdb ファイルにアクセスします。aticonfig のオプションを全て見るには、次を実行して下さい:

# aticonfig --help | less
警告: xorg.conf ファイルは /etc/X11/xorg.conf.d/ にある全てを上書きするので /etc/X11/ にコミットする前に --output オプションを使って下さい。
ノート: To adhere to the new config location use # aticonfig [...] --output to adapt the Device section to /etc/X11/xorg.conf.d/20-radeon.conf. The drawback is that many aticonfig options rely on an xorg.conf, and will be unavailable.

ここで Catalyst を設定してください。モニターがひとつだけの場合、次を実行して下さい:

# aticonfig --initial

2つモニターがあって両方使いたい場合、下のコマンドを実行することができます。このコマンドでは最初のスクリーンの上に2番目のスクリーンがくる dual head 設定を生成します。

# aticonfig --initial=dual-head --screen-layout=above
ノート: デュアルモニタの設定について詳しくは #Double Screen (Dual Head / Dual Screen / Xinerama) を見て下さい。

Xorg ページに並べられた Xorg.conf のサンプルの一つと生成されたファイルを比較することができます。

現在のバージョンの Xorg は起動時にほとんどのオプションを自動で認識しますが、デフォルトのバージョンが変わった時のためオプションを指定しておいたほうがいいかもしれません。

参考までに以下に (注釈が付いた) 例を示します。# が付いたエントリは必須で、## が付いたエントリは必要に応じて追加してください:

/etc/X11/xorg.conf
Section "ServerLayout"
        Identifier     "Arch"
        Screen      0  "Screen0" 0 0          # 0's are necessary.
EndSection
Section "Module"
        Load [...]
        [...]
EndSection
Section "Monitor"
        Identifier   "Monitor0"
        [...]
EndSection
Section "Device"
        Identifier  "Card0"
        Driver      "fglrx"                         # Essential.
        BusID       "PCI:1:0:0"                     # Recommended if autodetect fails.
        Option      "OpenGLOverlay" "0"             ##
        Option      "XAANoOffscreenPixmaps" "false" ##
EndSection
Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        DefaultDepth    24
        SubSection "Display"
                Viewport   0 0
                Depth     24                        # Should not change from '24'
                Modes "1280x1024" "2048x1536"       ## 1st value=default resolution, 2nd=maximum.
                Virtual 1664 1200                   ## (x+64, y) to workaround potential OGL rect. artifacts/
        EndSubSection                               ## fixed in Catalyst 9.8
EndSection
Section "DRI"
        Mode 0666                                   # May help enable direct rendering.
EndSection
ノート: Catalyst をアップデートするときは毎回amdpcsdb ファイルを次の方法で削除してください: X を終了し, /etc/ati/amdpcsdb を削除して, X を起動してそれから amdcccle を実行 - これをしないと amdcccle で Catalyst のバージョンが誤って表示されることがあります。

Catalyst についてもっと詳しい情報が必要な場合は、このスレッドを見て下さい。

起動時にモジュールをロード

radeon が自動でロードされないようにブラックリストに入れる必要があります。/etc/modprobe.d/modprobe.conf に blacklist radeon を追加してください。また、radeon が /etc/modules-load.d/ 下のファイルによってロードされていないことを確認してください。詳しくは、カーネルモジュール#ブラックリストを見て下さい。

それから fglrx モジュールが自動でロードされるようにしなくてはなりません。/etc/modules-load.d/ 下にあるモジュールファイルを使うか、新しいファイルを作って fglrx を追加してください。

kernel mode setting を無効化

ノート: powerXpress テクノロジー (あるいは amd-intel ハイブリッドグラフィック) を使っている場合は intel のドライバーが KMS を必要とするので KMS を無効化してはいけません。

ドライバーがまだ KMS を利用できないので、kernel mode setting を無効にするのは重要です。KMS を無効化しないと、tty を切り替えたり DE からシャットダウンしようとした時にシステムがフリーズします。

kernel mode setting を無効化するには、nomodesetカーネルパラメータに追加してください。

確認作業

再起動した後ログインが成功したら、fglrx が正しく動作しているか以下のコマンドで確認することができます:

$ lsmod | grep fglrx
$ fglrxinfo

出力がされたら、動作しています。最後に、$ startx か GDM/KDM を使って X を起動して、ダイレクトレンダリングが有効になっているかを端末で以下のコマンドを実行して確認してください:

$ glxinfo | grep "direct rendering"

"direct rendering: yes" と表示されれば問題ありません!glxinfo コマンドが見つからないときは mesa-demos パッケージをインストールしてください。

ノート: glxgears の代わりのテストとして次を使うこともできます: $ fgl_glxgears
警告: Xorg の最近のバージョンでは、ライブラリのパスは変更されています。そのためインストールしても libGL.so を正しくロードできないことがしばしばあります。GL が動作しない場合はこれを確認してください。詳細はトラブルシューティングのセクションを読んで下さい。

カスタムカーネル

ノート: パッケージの作成を経験したことが全くない場合は、最初に ABS のページを読んでおいたほうがスムーズに事が進みます。

カスタムカーネルで catalyst をインストールしたい場合、catalyst-$kernel パッケージを自分でビルドする必要があります:

  1. Catalyst から PKGBUILDcatalyst.install ファイルを取得してください。
  2. PKGBUILD を編集してください。2つ修正が必要です:
    1. pkgname=catalystpkgname=catalyst-$kernel_name に変更してください、$kernel_name はあなたが自由に決めてください (例: custom, mm, themostawesomekernelever)。
    2. linux の依存を $kernel_name に変更してください。
  3. パッケージをビルドしてインストールしてください。makepkg -imakepkg を実行してから # pacman -U pkgname.pkg.tar.gz を実行して下さい。
ノート:
  • 複数のカーネルを使っている場合は、全てのカーネルに対して catalyst-utilsAUR パッケージをインストールする必要があります。カーネルが衝突することはありません。
  • catalyst-generatorAURcatalyst-{kernver} パッケージを作ることができるので、全ての手順を手動で行う必要はありません。詳しくはツールのセクションを見て下さい。

PowerXpress サポート

PowerXpress テクノロジを使うことでノートブックで内蔵グラフィックス (IGP) と外付け (ディスクリート) グラフィックスの2つのグラフィックカードを切り替えることができるようになり、バッテリー寿命を伸ばしつつ 3D レンダリングのパフォーマンスを向上させることが可能です。

この機能を Arch で使うために必要なことは:

  • AUR から catalyst-totalAUR / catalyst-testAUR パッケージを入手・ビルドする、もしくは
  • [catalyst] リポジトリから catalyst-libglcatalyst-utils パッケージをインストールする。

Intel の IGP に切り替えるには mesa パッケージと Intel のドライバー (xf86-video-intel) をインストールする必要があります。

ノート: Catalyst は最新の intel ドライバーと問題を起こすことがあります。その場合は Arch Linux Archive から xf86-video-intel を前のバージョンにダウングレードしたり、#Xorg リポジトリ を使って xorg-server パッケージもダウングレードしてください。

以下のコマンドを使うことで、内蔵・ディスクリート GPU の切り替えができます:

# aticonfig --px-igpu    #for integrated GPU
# aticonfig --px-dgpu    #for discrete GPU

fglrx が fglrx の内部で AMD カード用に設定された /etc/X11/xorg.conf を必要とすることは覚えておいて下さい。

また、pxp_switch_catalyst 切り替えスクリプトを使うことで以下の便利な操作が行えます:

  • xorg.conf の切り替え - xorg.conf の名前を xorg.conf.cat (fglrx) もしくは xorg.conf.oth (intel) に変更してあなたの選択によって xorg.conf にシンボリックリンクを作成します。
  • aticonfig --px-Xgpu の実行。
  • switchlibGL の実行。
  • fglrx/etc/modules-load.d/catalyst.conf から追加・削除。

使用方法:

# pxp_switch_catalyst amd
# pxp_switch_catalyst intel

Intel のドライバーを使って X を実行している時に問題が発生する場合は "UXA" アクセラレーションの強制を試して下さい; xorg.conf に、以下のように Option "AccelMethod" "uxa" を指定するだけです:

/etc/X11/xorg.conf
Section "Device"
        Identifier  "Intel Graphics"
        Driver      "intel"
        #Option      "AccelMethod"  "sna"
        Option      "AccelMethod"  "uxa"
        #Option      "AccelMethod"  "xaa"
EndSection

2つの X サーバーを同時に実行する (1つは Intel ドライバーを使い、もう1つは fglrx を使う)

(PowerXpress に関しては) fglrx はよくクラッシュするので、メインの X サーバーでは Intel ドライバーを使い、3D アクセラレーションが必要な2番目の X サーバーで fglrx を使うというのは良いアイデアと言えます。しかしながら、aticonfigamdcccle を使って内蔵 GPU からディスクリート GPU に切り替えるだけでは2番目の X を起動する際に様々なバグが噴出することになります。

(それぞれ別のドライバーを使う) 2つの X サーバーを同時に動かすには、まず Catalyst で完全に X 環境をセットアップしてから xorg.conf を一時的に退避させて下さい (例えば、/etc/X11/xorg.conf.fglrx)。次に X を起動すると、デフォルトで fglrx の代わりに Intel ドライバーが使われます。

fglrx を使って2番目の X サーバーを起動するために、X を起動する前に適当な場所 (/etc/X11/xorg.conf) に xorg.conf を戻して下さい。この方法を使うことで動作している X セッションを切り替えることも可能です。fglrx を使って行ったら、xorg.conf をまた別のところに移動して下さい。

この方法の欠点は Intel ドライバーを使って 3D アクセラレーションを得られないということです。ただし、2D アクセラレーションは完全に機能します。それだけでなく、完全に安定したデスクトップを使うことができます。

AMD 使用時 (pxp_switch_catalyst amd) の PowerXpress ラップトップと外部・外付モニターの問題

AMD だけのモードで PowerXpress ラップトップを使うと (つまりディスクリートカードで全てを表示するように設定している場合)、画面が乱れたり二重になる等の問題が生じることがあります。これは既知の問題で、7xxxM シリーズのカードで起こります。

この乱れはモニターのどれかを回転したりスケールすることで消えます。そのため xrandr を使えばこの問題を修正できます:

xrandr --output HDMI1 --left-of LVDS1 --primary --scale 1x1 --output LVDS1 --scale 1.0001x1.0001

Xorg リポジトリ

Catalyst は更新が遅いことで有名です。そのため、アップストリームから落ちてきた新しい Xorg が Catalyst との互換性を破壊してしまうことがよくあります。つまり Catalyst ユーザーは Xorg パッケージを更新から除外するか、更新を止めておく必要がある Xorg パッケージだけを保持しているバックポートリポジトリを使う必要があるということです。Vi0L0 がこの勤めを果たしており、複数のバックポートリポジトリを提供しています。

pacman を使ってパッケージの更新を止めたい場合は、pacman#アップグレードさせないパッケージを設定 を見て下さい。更新を止める必要があるパッケージは、以下の通りです:

  • xorg-server-*
  • xf86-input-*
  • xf86-video-*

バックポートリポジトリを使いたい場合、/etc/pacman.conf を編集して、(Catalyst リポジトリを含む) 他のどのリポジトリよりも前にリポジトリを追加する必要があります。

xorg117

Catalyst は xorg-server 1.18 をサポートしていません。

[xorg117]
Server = http://catalyst.wirephire.com/repo/xorg117/$arch
## Mirrors, if the primary server does not work or is too slow:
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/xorg117/$arch
#Server = http://mirror.hactar.bz/Vi0L0/xorg117/$arch

xorg116

Catalyst 15.7 未満は xorg-server 1.17 をサポートしていません。

[xorg116]
Server = http://catalyst.wirephire.com/repo/xorg116/$arch
## Mirrors, if the primary server does not work or is too slow:
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/xorg116/$arch
#Server = http://mirror.hactar.bz/Vi0L0/xorg116/$arch

xorg115

Catalyst 14.9 未満は xorg-server 1.16 をサポートしていません。

[xorg115]
Server = http://catalyst.wirephire.com/repo/xorg115/$arch
## Mirrors, if the primary server does not work or is too slow:
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/xorg115/$arch
#Server = http://mirror.hactar.bz/Vi0L0/xorg115/$arch

xorg114

Catalyst 14.1 未満は xorg-server 1.15 をサポートしていません。

[xorg114]
Server = http://catalyst.wirephire.com/repo/xorg114/$arch
## Mirrors, if the primary server does not work or is too slow:
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/xorg114/$arch
#Server = http://mirror.hactar.bz/Vi0L0/xorg114/$arch

xorg113

Catalyst 13.6 未満は xorg-server 1.14 をサポートしていません。

[xorg113]
Server = http://catalyst.wirephire.com/repo/xorg113/$arch
## Mirrors, if the primary server does not work or is too slow:
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/xorg113/$arch
#Server = http://mirror.hactar.bz/Vi0L0/xorg113/$arch

xorg112

Catalyst 12.10 未満と Catalyst Legacy は xorg-server 1.13 をサポートしていません。

[xorg112]
Server = http://catalyst.wirephire.com/repo/xorg112/$arch
## Mirrors, if the primary server does not work or is too slow:
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/xorg112/$arch
#Server = http://mirror.hactar.bz/Vi0L0/xorg112/$arch

ツール

Catalyst-hook

Catalyst-hookAUR はシステムをシャットダウン・再起動した時に (アップデートの後など、必要な場合にのみ) 自動的に fglrx モジュールをリビルドする systemd サービスです。

このパッケージを使う前に base-devel グループと linux-headers パッケージ (あなたの使っているカーネルに対応するもの) がインストールされているか確認してください。

自動アップデートを有効にするには、catalyst-hook.service を有効にしてください:

# systemctl enable catalyst-hook
# systemctl start catalyst-hook

このパッケージを使って fglrx モジュールを手動でビルドすることもできます。カーネルが更新された後に catalyst_build_module スクリプトを実行するだけです:

# catalyst_build_module all

技術的な詳細:

catalyst-hook.service は systemd の「流れ」を止めて catalyst-hook のジョブが完了するまで systemd を待機させます。

catalyst-hook.servicecatalyst_build_module check 関数を呼び出し fglrx のリビルドが本当に必要なのかどうか確認します。

check 関数は fglrx モジュールが存在しているのかをチェックします:

  • 存在しない場合は、モジュールをビルドします。
  • 存在している場合は、2つの値を比較してリビルドが必要か判断します。

比較する値は /usr/lib/modules/<kernel_version>/build/Module.symvers ファイル (このファイルはカーネルのリリースがあるたびに異なった内容になります) の md5sum です。最初の値は既存の Module.symvers ファイルの md5sum です。2番目の値は fglrx モジュール作成時にある Module.symvers ファイルの md5sum になります。この値は catalyst_build_module スクリプトによって fglrx モジュールに組み込まれます。

値が異なっている場合は、新しい fglrx モジュールをコンパイルします。

/usr/lib/modules/ ディレクトリ全体がチェックされ、必要に応じてインストールされているカーネル全てのためにモジュールがビルドされます。ビルドやリビルドが不要な場合、プロセス全体で systemd によって終了されるまでたった数ミリ秒しかかかりません。

Catalyst-generator

catalyst-generatorAURfglrx モジュールをビルドして pacman 互換の catalyst-${kernver} パッケージを作り、インストールすることができるパッケージです。コマンドを手動で実行する必要があるところが #Catalyst-hook との主な違いです。Catalyst-hook は新しいカーネルがインストールされた時に自動で行います。

generator は makepkg を使って catalyst-${kernver} パッケージを作成し、pacman でインストールします。${kernver} はそれぞれのパッケージが作成されたときのカーネルのバージョンになります (例: 2.6.35-ARCH カーネルを使っている場合 catalyst-2.6.35-ARCH パッケージが作成されます)。

非特権ユーザー (root 以外、安全な方法) で現在起動しているカーネルのために catalyst-${kernver} パッケージをビルド・インストールするには、catalyst_build_module を使って下さい。root パスワードを求められ、パッケージのインストールに進みます。

このパッケージの使い方の概要は以下の通りです:

  1. root で: catalyst_build_module remove。このコマンドは使用されていない catalyst-{kernver} パッケージを全て削除します。
  2. 通常ユーザーで: catalyst_build_module ${kernver}${kernver} はアップデートしたカーネルのバージョンに置き換えて下さい。例: catalyst_build_module 2.6.36-ARCHcatalyst_build_module all を使うことでインストールされているカーネル全てに catalyst-{kernver} をビルドすることもできます。
  3. catalyst-generator を削除したい場合、catalyst-generator を削除する前に root で次のコマンドを実行すると良いでしょう: catalyst_build_module remove_allこのコマンドはシステムの全ての catalyst-{kernver} パッケージを削除します。

Catalyst-generator isn't able to remove all those catalyst-{kernver} packages automatically while being removed because there can not be more than one instance of pacman running. If you forget to run # catalyst_build_module remove_all before using # pacman -R catalyst-generator catalyst-generator will tell you which catalyst-{kernver} packages you will have to remove manually after removing catalyst-generator itself.

Catalyst-generator は最も安全で KISS フレンドリーな方法です、なぜなら:

  1. 非特権ユーザーでパッケージをビルドできます。
  2. fakeroot 環境でモジュールをビルドします。
  3. ファイルが散らばることはありません、pacman がファイルの場所を把握します。
  4. 使用したことを覚えておくだけで十分です。
ノート: catalyst-{kernver} パッケージをビルドするときに以下の警告が表示されても:
WARNING: Package contains reference to $srcdir
WARNING: '.pkg' is not a valid archive extension.
気にしないで下さい、問題ありません。

OpenCL や OpenGL を使った開発

数年前から AMD は OpenCL・OpenGL 開発のためのツールを開発しています。

現在"ヘテロジニアスコンピューティング"の名のもとに AMD はそれらの多くを提供しており、ありがたいことにコンピューティングツールのほとんどが Linux でも利用可能です。

AUR や [catalyst] リポジトリから、AMD が提供している主なツールのパッケージをインストールできます:

APP は Accelerated Parallel Processing の略称です。

amdapp-aparapi

AMD の Aparapi は Java においてデータの並列処理を表現するための API と、相性が良い処理の Java バイトコードを OpenCL に変換して様々な GPU デバイスで実行できるようにするランタイムコンポーネントです。Aparapi は GPU で実行できなかった場合、Java のスレッドプールで実行されます。

Aparapi については ここ に詳しい情報が書かれています。

amdapp-sdk (旧名 amdstream)

AMD APP Software Development Kit (SDK) は AMD によって作成された完全な開発プラットフォームで、これを使えば AMD APP テクノロジーによるアクセラレーションが効いたアプリケーションを簡単に素早く開発することができます。あなたの C/C++ アプリケーションで OpenCL, Bolt, C++ AMP を使ったアクセラレーションがすぐ始められるように、この SDK ではサンプルやドキュメント、その他素材を提供しています。

バージョン 2.8 から amdapp-sdk は aparapiUtil と aparapi のサンプルを提供しています。パッケージは [catalyst] リポジトリから利用可能です; amdapp-aparapiAUR パッケージに依存しています。AUR のパッケージは aparapi のアディションが必要かどうか決めることができます。

バージョン 2.8 からプロファイラ機能は CodeXL に移され提供されなくなりました。

AMD APP SDK については ここ から詳しい情報を見ることができます。

amdapp-codexl

CodeXL は OpenCL と OpenGL のデバッガとプロファイラで、静的な OpenCL カーネルアナライザが付属しています。有名な gDEBugger の上で動くように書かれた GUI アプリケーションであり、x86_64 でだけ利用可能です。

CodeXL についての詳細は ここ にあります。

機能

ティアフリーレンダリング

Catalyst 11.1 にある、Tear Free Desktop 機能は 2D, 3D そして動画アプリケーションのティアリングを減らします。トリプルバッファリングと垂直同期を追加しているようです。GPU 処理が増えるので注意してください。

'Tear Free Desktop' を有効にするには amdcccle を実行して: Display OptionsTear Free

もしくは root で次を実行して下さい:

# aticonfig --set-pcs-u32=DDX,EnableTearFreeDesktop,1

無効にするには、また amdcccle を使うか、次を root で実行して下さい:

# aticonfig --del-pcs-key=DDX,EnableTearFreeDesktop

ビデオアクセラレーション

Video Acceleration API (VA API) は Linux/UNIX ベースのオペレーティングシステムで動画処理の GPU 支援を提供するためのオープンソースのソフトウェアライブラリ (libVA) と API の仕様です。様々なエントリーポイント (VLD, IDCT, Motion Compensation, deblocking) でハードウェア支援のビデオデコードを有効にすることで普遍的な符号化方式 (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, VC-1/WMV3) で動作します。

VA-API は xvba-videoAUR という名前のプロプライエタリのバックエンドを (2009年11月に) 得たことで、XvBA (X-Video Bitstream Acceleration API designed by AMD) ライブラリを通して VA-API を使ってプログラミングされたアプリケーションが AMD Radeons UVD2 チップセットを活用にできるようになりました。

ノート: catalyst-testcatalyst-total を使用する場合は xvba-videoAUR パッケージをインストールする必要はありません。代わりにシンボリックリンクが使われます。

XvBA サポートと xvba-video は依然として開発途上にありますが、既にほとんどの場合で問題なく動きます。プロプライエタリの xvba-videoAUR パッケージをビルド (もしくは Vi0L0 のリポジトリからインストール) してください。そのバージョンで問題が発生したときは、libva-xvba-driverAUR のどちらかをインストールしてください。そして mplayer-vaapiAURlibva もインストールしてください。動画プレイヤーがビデオ出力に vaapi:gl を使うように設定します:

$ mplayer -vo vaapi:gl movie.avi

これらのオプションは mplayer の設定ファイルに追記することができます、MPlayer を見て下さい。

smplayer の場合:

Options → Preferences → General → Video (tab) → Output driver: User Defined : vaapi:gl
Options → Preferences → General → Video (tab) → Double buffering on
Options → Preferences → General → General → Screenshots → Turn screenshots off
Options → Preferences → Performance → Threads for decoding: 1 (to turn off -lavdopts parameter)
ノート: If Tear Free Desktop is enabled it's better to use:
Options → Preferences → General → Video (tab) → Output driver: vaapi

If Video Output vaapi:gl isn't working - please check:

vaapi, vaapi:gl2 or simply xv(0 - AMD Radeon AVIVO Video).

VLC の場合:

Tools → Preferences → Input & Codecs → Use GPU accelerated decoding

amdcccle で v-sync を有効にすると良いかもしれません:

3D → More Settings → Wait for vertical refresh = Always On
ノート: If you are using Compiz/KWin, the only way to avoid video flickering is to watch videos in full-screen and only when Unredirect Fullscreen is off. In compiz you need to set Redirected Direct Rendering in General Options of ccsm. If it is still flickering, try to disable this option in CCSM. It's off by default in KWin, but if you see flickering try to turn "Suspend desktop effects for fullscreen windows" on or off in System SettingsDesktop EffectsAdvanced.

GPU/Mem の周波数、温度、ファンスピード、オーバークロックユーティリティ

GPU/Mem クロックを取得するには: $ aticonfig --od-getclocks

ファンのスピードを取得するには: $ aticonfig --pplib-cmd "get fanspeed 0"

温度を取得するには: $ aticonfig --odgt

ファンのスピードを設定するには: $ aticonfig --pplib-cmd "set fanspeed 0 50" Query Index: 50, Speed in percent

オーバークロックやアンダークロックをする場合 ATi Overclocking Utility (とてもシンプルで、動かすには qt が必要です) のような GUI を使うのが簡単です。古くなっているかもしれませんが、ここ から入手することができます。

また、このような操作をするためのより複雑なユーティリティとして AMDOverdriveCtrl があります。ホームページは ここ です。AUR の amdoverdrivectrlAUR か Vi0L0 の非公式リポジトリから Arch パッケージをビルドできます。

Double Screen (Dual Head / Dual Screen / Xinerama)

イントロダクション

警告: you should know that there isn't one specific solution because each setup differs and needs its own configuration. That's why you will have to adapt the steps below to your own needs. It is possible that you have to try more than once. Therefore, you should save your working /etc/X11/xorg.conf before you start modifying and you must be able to recover from a command-line environment.
  • In this chapter, we will describe the installation of two different-sized screens on only one graphics card with two different output ports (DVI + HDMI) using a "BIG Desktop" configuration.
  • The Xinerama solution has some inconveniences, especially because it is not compatible with XrandR. For that very reason, you should not use this solution, because XrandR is a must for our later configuration.
  • The Dual Head solution would allow you to have 2 different sessions (one for each screen). It could be what you want, but you will not be able to move windows from one screen to another. If you have only one screen, you will have to define the mouse inside your Xorg session for each of the two sessions inside the Server Layout section.

ATI Documentation

ATI Catalyst Control Center

ATI によって提供されているとても便利な GUI ツールで、出来る限り試す価値があります。起動するには、ターミナルを開いて次のコマンドを実行してください:

$ {kdesu/gksu} amdcccle
警告: GUI で直接 sudo を使わないで下さい。sudo はユーザーアカウント情報の入った管理者権限を与えます。代わりに、gksu (GNOME) または kdesu (KDE) を使って下さい。

インストール

Before we start, make sure that your hardware is plugged in correctly, that power is on and that you know your hardware characteristics (screen dimensions, sizes, refreshment rates, etc.) Normally, both screens are recognized during boot time but not necessarily identified properly, especially if you are not using any Xorg base configuration file (/etc/X11/xorg.conf) but relying on the hot-plugging feature.

The first step is to make sure that you screens will be recognized by your DE and by X. For this, you need to generate a basic Xorg configuration file for your two screens:

# aticonfig --initial --desktop-setup=horizontal --overlay-on=1

もしくは:

# aticonfig --initial=dual-head --screen-layout=left
ノート: overlay is important because it allows you to have 1 pixel (or more) shared between the 2 screens.
ヒント: For the other possible and available options, do not hesitate to type aticonfig --help inside a terminal to display all available command lines.

Now you should have a basic Xorg configuration file that you can edit to add your screen resolutions. It is important to use the precise resolution, especially if you have screens of different sizes. These resolutions have to be added in the "Screen" section:

SubSection "Display"
    Depth     24
    Modes     "X-resolution screen 1xY-resolution screen 1" "Xresolution screen 2xY-resolution screen 2"
EndSubSection

From now on, instead of editing the xorg.conf file manually, let us use the ATI GUI tool. Restart X to be sure that your two screens are properly supported and that the resolutions are properly recognized (Screens must be independent, not mirrored).

設定

Now you will only have to launch the ATI control center with root privileges, go to the display menu and choose how you would like to set your configuration (small arrow of the drop down menu). A last restart of X and you should be done!

Before you restart X, do not hesitate to verify your new xorg.conf file. At this stage, inside the "Display" sub-section of the "Screen" section, you should see a "Virtual" command line, of which the resolution should be the sum of both screens. The "Server Layout" section says all the rest.

アンインストール

ドライバーが動作しなかったりオープンソースドライバーを試したい場合は、catalystcatalyst-utils パッケージを削除してください。catalyst-generatorAUR, catalyst-hookAUR, lib32-catalyst-utilsAUR パッケージがインストールされている場合はこれらも削除するべきです。

警告:
  • catalyst-utilsAUR (や lib32-catalyst-utilsAUR) を削除するために # pacman -Rdd を使う必要があるかもしれません。パッケージには gl 関連のファイルが含まれており多くのパッケージがこれに依存しているからです。xf86-video-ati をインストールすれば依存関係はまた元通りになります。
  • (あなたのシステムに存在する場合) /etc/profile.d/ati-flgrx.sh/etc/profile.d/lib32-catalyst を削除する必要があるかもしれません、そうしないと r600_dri.so のロードが失敗して 3D サポートが得られません。
ノート: /etc/pacman.conf から非公式リポジトリを削除して # pacman -Syu を実行してください。非公式リポジトリには catalyst を使うために古くなった Xorg パッケージが含まれており、xf86-video-ati パッケージは公式リポジトリにある最新の Xorg パッケージを必要としているからです。

また、以下の手順に従って下さい:

  • /etc/modprobe.d/blacklist-radeon.conf ファイルがある場合、削除する。もしくはファイルの中の blacklist radeon という行をコメントアウトする。
  • /etc/modules-load.d 下にブート時に fglrx モジュールをロードするファイルがある場合は、ファイルを削除するか fglrx を含む行をコメントアウトする。
  • /etc/X11/xorg.conf を削除するかバックアップする。
  • catalyst-hookAUR パッケージをインストールしていた場合は、systemd サービスを無効にしておく。
  • カーネルパラメータnomodeset オプションを使っていて KMS をこれから使う場合、オプションを削除する。
  • 他のドライバーをインストールする前に再起動をする。

トラブルシューティング

コマンドラインでしか起動できない場合、おそらく /etc/X11/xorg.conf に問題が存在します。

You can parse the whole /var/log/Xorg.0.log or, for clues:

$ grep '(EE)' /var/log/Xorg.0.log
$ grep '(WW)' /var/log/Xorg.0.log

何が起こっているかわからない場合は、最初にフォーラムを検索してください。それから thread specific to ATI/AMD にメッセージを投稿してください。xorg.conf や上のコマンドで得られた情報を加えるようにしましょう。

atieventsd.service が起動しない

公式リポジトリから acpid をインストールしてください。そして acpid サービスを起動・有効化してください。

それでもサービスが起動しない場合は、/usr/lib/systemd/system/atieventsd.service を編集して acpid.socketacpid.service に変更してください。

GDM が起動しない

xorg-server パッケージをダウングレードするか、LightDM など別のディスプレイマネージャを使うようにしてください。

3D の Wine アプリケーションがフリーズする

3D の Wine アプリケーションを使っていてハングする場合、TLS を無効にする必要があります。aticonfig を使うか /etc/X11/xorg.conf を編集してください。aticonfig を使う場合:

# aticonfig --tls=off

/etc/X11/xorg.conf を編集する場合; まず root でファイルを開いて Device セクションに Option "UseFastTLS" "off" を追加してください。

解決法のどちらかを行った後、X を再起動すれば変更が適用されます。

ビデオカラーの問題

vaapi:gl を使って動画のちらつきを減らすことができますが、ビデオアクセラレーションは効きません:

  • -vo vaapi スイッチを付けずに mplayer を実行する。
  • smplayer を起動して Options → Preferences → Advanced → Options for MPlayer → Options: -vo vaapi から -vo vaapi を削除する。

さらに smplayer では安全にスクリーンショットをオンにできるようになります。

KWin とコンポジット

OpenGL でのレンダリングが遅い場合 XRender を使うといいかもしれません。ただし、カードによっては XRender は OpenGL よりも遅くなります。 また XRender を使うことで画面が (例えば Konsole をリサイズした時に) 乱れる問題が解決することもあります。

再起動したり startx した後に真っ黒な画面で完全にロックしたりハングアップする

ブートローダーのカーネルオプション行に nomodeset オプションをちゃんと追加したかどうか確かめて下さい (#kernel mode setting を無効化を参照)。インストールした Xorg のバージョンと使用している Linux カーネルのバージョンが Catalyst と互換性があることも確認してください。

レガシードライバー (catalyst-hd234k) を使っていて黒画面が出る場合は、#xorg112 を使って xorg-server を 1.12 にダウングレードしてみてください。

欠陥のある ACPI ハードウェアコール

fglrx がシステムの ACPI ハードウェアコールときちんと連携できずに、fglrx が自動で無効になって画面が表示されなくなることがあります。

このような場合、次を実行してみて下さい:

$ aticonfig --acpi-services=off

ログアウトした後に KDM が表示されない

Catalyst プロプライエタリドライバーを動かしていて、ログアウトしたとき予期される KDM 画面の代わりにコンソール (tty1) が表示される場合、ログアウトする度に X サーバーを再起動するよう KDM を設定する必要があります。[X-:*-Core] と書かれたセクションの下にある以下の行をアンコメントしてください:

/usr/share/config/kdm/kdmrc
TerminateServer=True

これで KDE からログアウトした時 KDM が表示されるはずです。

ダイレクトレンダリングが機能しない

この問題はプロプライエタリの Catalyst ドライバーを使っていると起こることがあります。

警告: catalyst をインストール・更新した後にシステムの再起動をしなかった場合もこのエラーが表示されます。ドライバーを動作させるために fglrx.ko モジュールのロードが必要だからです。

ダイレクトレンダリングに問題が起こるときは、コマンドプロンプトから次を実行してください:

$ LIBGL_DEBUG=verbose glxinfo > /dev/null

通常、このコマンドによって出力されたメッセージの最初の方に、どうしてダイレクトレンダリングができなかったのかを説明しているエラーメッセージが表示されます。

Common errors and their solutions, are:

libGL error: XF86DRIQueryDirectRenderingCapable returned false
  • Ensure that you are loading the correct agp modules for your AGP chipset before you load the fglrx kernel module. To determine which agp modules you'll need, run # hwdetect --show-agp. Then open your /etc/modules-load.d/fglrx.conf and add the agp module on a line before the fglrx line.
libGL error: failed to open DRM: Operation not permitted
libGL error: reverting to (slow) indirect rendering
libGL: OpenDriver: trying /usr/lib/xorg/modules/dri//fglrx_dri.so
libGL error: dlopen /usr/lib/xorg/modules/dri//fglrx_dri.so failed
(/usr/lib/xorg/modules/dri//fglrx_dri.so: cannot open shared object file: No such file or directory)
libGL error: unable to find driver: fglrx_dri.so
  • Something has not been installed correctly. If the paths in the error message are /usr/X11R6/lib/modules/dri/fglrx_dri.so, then ensure you've logged completely out of your system, then back in. If you're using a graphical login manager (gdm, kdm, xdm), ensure that /etc/profile is sourced every time you log in. This is usually accomplished by adding source /etc/profile into ~/.xsession or ~/.xinitrc, but this may vary between login managers.
  • If the paths above in your error message are /usr/lib/xorg/modules/dri/fglrx_dri.so, then something has not been correctly installed. Try reinstalling the catalystAUR package.

Errors such as:

fglrx: libGL version undetermined - OpenGL module is using glapi fallback

could be caused by having multiple versions of libGL.so on your system. The command below should return the following output:

$ locate libGL.s
/usr/lib/libGL.so
/usr/lib/libGL.so.1
/usr/lib/libGL.so.1.2

These are the only three libGL.so files you should have on your system. If you have any more (e.g. /usr/X11R6/lib/libGL.so.1.2), then remove them. This should fix your problem.

You might not get any error to indicate that this is a problem. If you are using X11R7, make sure you do not have these files on your system:

/usr/X11R6/lib/libGL.so.1.2
/usr/X11R6/lib/libGL.so.1

ハイバネート・スリープの問題

Video fails to resume from suspend2ram

フレームバッファが有効になっている場合 ATI のプロプライエタリ Catalyst ドライバーはサスペンド状態から復帰できません。フレームバッファを無効にするには、カーネルパラメータvga=0 を追加してください。

システムがフリーズする・ハードが固まる

  • 従来 radeonfb フレームバッファドライバーがこのような問題を引き起こすとして知られてきました。あなたのカーネルが radeonfb サポートを含めている場合、他のカーネルを使って問題が解決しないか確かめて下さい。
  • DE を終了するとき (シャットダウン、サスペンド、tty の切り替えなど) にシステムがフリーズする場合、おそらく KMS の無効化を忘れています (#kernel mode setting を無効化を見て下さい)。

ハードウェアが衝突する

特定のバージョンの nForce3 チップセット (例: nForce 3 250Gb) で Radeon カードを使用すると 3D アクセラレーションが機能しません。現在この問題の原因は不明ですが、いくつかのソースによると、nVIDIA のドライバーで Windows を起動してからシステムを最輝度言うするとアクセラレーションが使えるようになるという報告があります。以下のコマンドを実行することで確認できます (nForce3 搭載環境):

$ dmesg | grep agp
agpgart: Detected AGP bridge 0
agpgart: Setting up Nforce3 AGP.
agpgart: aperture base > 4G

以下のコマンドを実行したときに以下のような出力がされる場合、バグが存在します:

$ tail -n 100 /var/log/Xorg.0.log | grep agp
(EE) fglrx(0): [agp] unable to acquire AGP, error "xf86_ENODEV"

場合によっては、マザーボードの BIOS をダウングレードすると解決するとも言われていますが、どんな場合でも確実にそうなるとは保証できません。また、BIOS のダウングレードを失敗するとハードウェアが使えなくなる可能性があるため注意してください。

詳しくは こちらのバグレポート を見て下さい。

動画を再生している時に一時的にハングする

プロプライエタリの Catalyst を使っていると起こる問題です。

mplayer の再生時、数秒間ランダムに一時的なハングアップが起こる場合、システムログに以下のような出力がされてないか確認してください:

/var/log/messages.log
Nov 28 18:31:56 pandemonium [<c01c64a6>] ? proc_get_sb+0xc6/0x160
Nov 28 18:31:56 pandemonium [<c01c64a6>] ? proc_get_sb+0xc6/0x160
Nov 28 18:31:56 pandemonium [<f8bc628c>] ? ip_firegl_ioctl+0x1c/0x30 [fglrx]
Nov 28 18:31:56 pandemonium [<c01c64a6>] ? proc_get_sb+0xc6/0x160
Nov 28 18:31:56 pandemonium [<c0197038>] ? vfs_ioctl+0x78/0x90
Nov 28 18:31:56 pandemonium [<c01970b7>] ? do_vfs_ioctl+0x67/0x2f0
Nov 28 18:31:56 pandemonium [<c01973a6>] ? sys_ioctl+0x66/0x70
Nov 28 18:31:56 pandemonium [<c0103ef3>] ? sysenter_do_call+0x12/0x33
Nov 28 18:31:56 pandemonium [<c01c64a6>] ? proc_get_sb+0xc6/0x160
Nov 28 18:31:56 pandemonium =======================

nopatnomodeset カーネルパラメータ を追加すれば直ります。

"aticonfig: No supported adapters detected"

次を実行した時に:

# aticonfig --initial

AMD GPU (または APU) を使っているのに次のメッセージが表示される場合:

aticonfig: No supported adaptaters detected

手動で etc/X11/xorg.conf ファイルにデバイスを設定したり、昔の問題なく動いていた /etc/ati/control ファイルをコピーする (推奨 - ウォーターマークの問題も解決します) ことで Catalyst を動かすことができるかもしれません。

古いコントロールファイルを入手するには、AMD から前のバージョンの fglrx をダウンロードして --extract driver パラメータを付けて実行してください。コントロールファイルは driver/common/etc/ati/control にできます。抽出されたファイルをシステムファイルに上書きして Xorg を再起動してください。別のバージョンのファイルを試すことができます。

xorg.conf でモデルを設定するには、/etc/X11/xorg.conf の device セクションを以下のように編集します:

/etc/X11/xorg.conf
Section "Device"
        Identifier "ATI radeon ****"
        Driver     "fglrx"
EndSection

**** はあなたのデバイスの製品番号に置き換えてください (例: HD6870 なら 6870 で、E-350 APU なら 6310)。

Xorg を起動したら aticonfig の代わりに amdcccle を使うことができます。"AMD Unsupported hardware" ウォーターマークが表示されます。

以下のスクリプトを使うことでこのウォーターマークを削除できます:

#!/bin/sh
DRIVER=/usr/lib/xorg/modules/drivers/fglrx_drv.so
for x in $(objdump -d $DRIVER|awk '/call/&&/EnableLogo/{print "\\x"$2"\\x"$3"\\x"$4"\\x"$5"\\x"$6}'); do
   sed -i "s/$x/\x90\x90\x90\x90\x90/g" $DRIVER
done

それからマシンを再起動してください。

Chromium の WebGL サポート

Google は Chromium/Chrome ブラウザの中で Linux の Catalyst ドライバーを WebGL サポートから外しています。

WebGL をオンにするには /usr/share/applications/chromium.desktop ファイルを編集して次のように --ignore-gpu-blacklist フラグを Exec 行に追加してください:

/usr/share/applications/chromium.desktop
Exec=chromium %U --ignore-gpu-blacklist

コンソールから同じ --ignore-gpu-blacklist フラグを使って chromium を実行することもできます:

$ chromium --ignore-gpu-blacklist
警告: Catalyst は GL_ARB_robustness 拡張をサポートしていないので、悪意のあるサイトが WebGL を使ってあなたのグラフィックカードに DoS 攻撃をしかける可能性があります。詳細は これ を読んで下さい。

Adobe の flashplugin を使って Flash ビデオを見ているとラグ・フリーズが発生する

/etc/adobe/mms.cfg を以下のように編集してください:

/etc/adobe/mms.cfg
#EnableLinuxHWVideoDecode=1
OverrideGPUValidation=true

KDE を使っている場合は System SettingsDesktop EffectsAdvanced にある "Suspend desktop effects for fullscreen windows" のチェックを外して下さい。

GNOME3 でウィンドウを移動するとラグ・遅れが発生する

以下の方法が、ほとんどの人に効果があります。

次の行を ~/.profile/etc/profile に追加してください:

export CLUTTER_VBLANK=none

X サーバーを再起動するかシステムを再起動してください。

フル画面の 1920x1080 の解像度が使われない (アンダースキャン)

通常、これは HDMI 接続を使ってモニタや TV をコンピュータに接続している時に発生します。

amdcccle GUI を使って、ディスプレイを選択して調整を選び、アンダースキャンを 0% (aticonfig のデフォルトのアンダースキャンは 15% です) に設定してください。

もしくは、aticonfig を使って同じようにアンダースキャンを無効にすることもできます:

# aticonfig --set-pcs-val=MCIL,DigitalHDTVDefaultUnderscan,0

新しいバージョン (例えば 12.11) で、Catalyst のコントロールセンターがオーバースキャン設定の保存に失敗する場合は、/etc/ati/amdpcsdb を次のように編集してください:

/etc/ati/amdpcsdb
TVEnableOverscan=V0

それから一度ログアウトしてからログインしなおしてください。

Dual Screen Setup: general problems with acceleration, OpenGL, compositing, performance

xinerama と xrandr12 を無効化してみてください。

以下のコマンドを入力してシステムを再起動してください:

# aticonfig --initial
# aticonfig --set-pcs-str="DDX,EnableRandR12,FALSE"

/etc/X11/xorg.conf で xinerama が無効になっているか確認して、無効になっていなかったらシステムを再起動します。

Next run amdcccle and pick up amdcccle → display manager → multi-display → multidisplay desktop with display(s) 2.

Reboot again and set up your display layout whatever you desire.

VariBright 機能を無効にする

Vari-Bright はディスプレイパネルが使用する電力を動的に調整することで節電する機能です。次のコマンドを実行すれば VariBright が無効になります:

# aticonfig --set-pcs-u32=MCIL,PP_UserVariBrightEnable,0

Hybrid/PowerXpress: ディスクリート GPU をオフにする

catalyst-total-pxpAUR や catalyst-utils-pxp を使っていて内蔵 GPU に切り替えてもディスクリート GPU の動作が止まらないことがあります。電力が消費されシステムの温度が高くなります。

内蔵 GPU が intel の GPU である場合、vgaswitcheroo を使ってディスクリート GPU をオフにできるかもしれません。できないこともあります。

acpi_call を確認することもできます。MrDeepPurple がオフにするためのスクリプトを用意しており、起動時やシステムを復帰させたときに systemd のサービスファイルでスクリプトを呼ぶことができます。スクリプトは以下のとおりです:

#!/bin/sh
libglx=$(/usr/lib/fglrx/switchlibglx query)
modprobe acpi_call
if [ "$libglx" = "intel" ]; then
    echo '\_SB.PCI0.PEG0.PEGP._OFF' > /proc/acpi/call
fi

X セッションから TTY に切り替えると画面が表示されなくなったり解像度が低くなる

catalyst 13.2 beta で起こる、この"機能"の回避策は vga=792 のような vga= カーネルオプションを使うことです。サポートされている解像度のリストは次のコマンドで調べられます:

$ hwinfo --framebuffer

適切な解像度を一つ選んで、ブートローダーの kernel 行にコピーペーストしてください。vga=0x03d4 みたいな感じです。

X セッションから TTY に切り替えるとモニターのバックライトが付いた黒画面が表示される

フレームバッファドライバーとして uvesafb を使って下さい。さらに、uvesafb を使うことで TTY の解像度を設定できます。

TTY を切り替えてから X のセッションに戻るとマウスカーソルしか表示されない

このバグが発生するときは、xorg.conf ファイルの 'Device' セクションに以下を追加してみてください:

Option      "XAANoOffscreenPixmaps" "true"

また、polkit 認証エージェントをインストールして実行してみてください。プログラムがパスワードを求めているのに、パスワードのダイアログボックスを表示するための認証エージェントがインストールされていない場合に、このバグが発生することがあります。

30 FPS / Tear-Free / V-Sync バグ

Catalyst 13.6 beta から存在するバグで、まだ今も (13.9) 修正がされていません。

After enabling "Tear-Free" functionality every freshly started OpenGL application is lagging, often generates only 30 FPS, it also touches composited desktop.

Workaround is pretty simple and was found by M132. Here are the steps, do everything in "AMD Catalyst Control Center" (amdcccle) application:

1. Tear-Free を有効にすると 3D V-Sync オプションが "Always on" になります。
2. 3D V-Sync を "Always Off" に設定してください。
3. Tear-Free が有効になっていることを確認します。
4. X を再起動 / 再ログインしてください。

It is working well on KDE 4.11.x, but in case of problems M132 suggests: "Try disabling "Detect refresh rate" and specify monitor's refresh rate in the Composite plugin."

バックライトの調整が動作しない

バックライトの調整に問題が起こるときは、次のコマンドを実行してみてください:

# aticonfig --set-pcs-u32=MCIL,PP_PhmUseDummyBackEnd,1

これによって FPS が落ちると報告しているユーザーもいます。デフォルトに戻すには、次を実行:

# aticonfig --set-pcs-u32=MCIL,PP_PhmUseDummyBackEnd,0

バグの詳細

Plasma を使っている場合に Chromium の表示がおかしくなる

chromium を実行するときに以下のように --disable-gpu オプションを追加してください (例: /usr/share/applications/chromium.desktop ファイル):

# cat /usr/share/applications/chromium.desktop | grep -i exec
Exec=chromium %U --disable-gpu

Xorg がクラッシュする

Xorg のバージョンがサポートされていない

Linux カーネルのバージョンがサポートされていても Xorg のバージョンがサポートされていない場合、以下のようなエラーメッセージを残して Xorg はクラッシュします:

(WW) fglrx: No matching Device section for instance (BusID PCI:0@0:17:0) found
(...)
/usr/bin/Xorg.bin: symbol lookup error: /usr/lib/xorg/modules/drivers/fglrx_drv.so: undefined symbol: GlxInitVisuals2D
xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error

例: fglrx 15.20.3 は Xorg 1.17 をサポートしていません。

このエラーを解決するには、Xorg をダウングレードする必要があります。詳しくは [3] を見て下さい。

参照