[FreeBSD-users-jp 95940] Re: Dual boot on dynabookN51(その3 -- scfb driver)補足

Tomoaki AOKI junchoon @ dec.sakura.ne.jp
2016年 8月 15日 (月) 08:18:20 UTC


青木@名古屋です。

On Mon, 15 Aug 2016 07:18:18 +0900
maruyama at ism.ac.jp (丸山直昌) wrote:

> 青木 様
> 
> 統計数理研究所の丸山です。
> 
> 色々お教え頂き、有難うございます。自分で調べて少しわかったのすが、まだ解
> 決には至っていません。
> 
> まず、ドライバですが、
> 
> [maruyama at surya{44}] ~% pkg info|grep xf86-input
> xf86-input-keyboard-1.8.1      X.Org keyboard input driver
> xf86-input-mouse-1.9.1_1       X.Org mouse input driver
> xf86-input-synaptics-1.8.2_1   X.Org synaptics input driver
> 
> となっているので、 synaptics でしょう。PC-BSD10.3のインストールメディア
> に収められているパッケージのディレクトリを見ても
> 
> [maruyama at pc01{80}] /INST% ls -alg dist/packages/All/xf86-input*
> -rw-r--r--  1 root  wheel   9120  3月 26 07:19 dist/packages/All/xf86-input-keyboard-1.8.1.txz
> -rw-r--r--  1 root  wheel  31124  3月 26 07:15 dist/packages/All/xf86-input-mouse-1.9.1_1.txz
> -rw-r--r--  1 root  wheel  47436  3月 26 09:49 dist/packages/All/xf86-input-synaptics-1.8.2_1.txz
> 
> なので、他のドライバの可能性は無いと思います。

synapticsドライバだと基本的にタッチパッド(スライドパッド,グライド
ポイント,物によりクリックパッドとも)のドライバのような気がするの
ですが、Touchscreenのサポートも含まれているのでしょうか?

 ※何か引っかかる点があって、xf86-input-synapticsのテストは見送り、
  moused任せのトライアルしかせず、一番欲しかった機能がT420採用の
  タッチパッドのモデルでは動作しないらしいことが判明し、テストを
  打ち切ったもので。 何に引っ掛かったのかは既に記憶が定かでは
  ありませんが、必要な何かと設定が競合したのだったと思います。


> で、
> 
> >> # タッチスクリーン機能を持っていて PC-BSDが動かせるマシンを他に持ってい
> >> # ないので、実験しにくいなー。「xorg.conf 自動生成機能」のソースを読むし
> >> # かないかな?
> 
> と私は書きましたが。これは「外れ」でした。どこを見ても synaptics とか
> usbconfigという文字列を見つけることができません。/var/log/Xorg.0.log を
> 見てもsynaptics というのは全く現れていません。気がついたのは
> 
> /usr/local/share/X11/xorg.conf.d/50-synaptics.conf
> 
> というファイルです。man synaptics を見ると
> 
> NOTES
>        Configuration  through  InputClass sections is recommended in X servers
>        1.8  and  later.  See  xorg.conf.d(5)  for  more  details.  An  example
>        xorg.conf.d snippet is provided in ${sourcecode}/conf/50-synaptics.conf
> 
> と書いてあります(でも xorg-server-1.17.4,1なんだけど)。で、
> /var/log/messages を見ると
> 
> Aug 15 05:48:59 surya kernel: ugen0.5: <ELAN> at usbus0
> 
> というのはあるのですが、これに応じて device が生えた形跡は全くありません。
> /dev の下を見ても、それらしい device を見つけることができません。手動で
> input device を /etc/X11/xorg.conf に追加する実験をやろうにも、device が
> なくてはどうにもなりませんよね。
> 
> という訳で、「どうやったら touch screen の device が生えてくるか」が今私
> の前に立ちはだかっている問題のように思います。何か思い当たる点があればお
> 教えください。

FreeBSDのデフォルトを引き継いでいるとすればですが、現状、以前はHAL
(sysutils/hal)で入力デバイスの接続/切断を認識していたのですが、
現在のデフォルトではFreeBSDのdevdの枠組みを使用するようになっています。

 ※私も細かいメカニズムを把握できている訳ではありませんが...。

従って、この段階でXに接続/切断/構成を通達すべき入力デバイスとして
認識されていなければ、X側ではどうしようもないのです。

 ※/dev以下にエントリを生やすのはdevfsのお仕事なのでまた別途。
  但し、これもdevdからの通達を受けて動作する筈です。

PS/2接続だとloader.confの設定で

 hw.psm.synaptics_support="1"

を入れないとPS/2接続のsynapticデバイスの拡張機能は正しく機能しない
のですが、 USB接続ならこれは無関係の筈です。

とりあえず対応するugen(アプリケーションに制御を委ねるための汎用
ドライバだったと思います)は生えており、Touchscreen ELANと種別や
ベンダ名も取得できているので、行けそうな気はするのですが。

FreeBSDの/usr/src/sys/dev/usb/以下をgrepしてもTouchscreenの文字は
引っかからないので、PC-BSDで独自に追加しているのではないかと思います。

 ※ELANというベンダー名はあります。


> なお PC-BSDハンドブックの
> 
> > 2.2.2. Touch Screens
> > PC-BSD(R) should automatically detect USB-based touch screen devices. If
> > your display is USB and is not auto-detected, send the output of
> > usbconfig and your /etc/X11/xorg.conf file using the Report a bug tool.
> 
> の記述は何か舌足らずのように思います。50-synaptics.conf を使っているのな
> ら、/etc/X11/xorg.conf は無関係のはずで、本気で bug report が欲しいのな
> ら/var/log/messages と /var/log/Xorg.0.log じゃないのかな?

設定の競合の問題を確認したい(余計な設定が含まれていて
50-synaptiX11/xorg.conf.dcs.conf の設定が正常に機能していない恐れがあ
る)ということでは?その上で問題の所在が特定できなければご指摘のファイル
その他の提供を求められるかと。

 ※/usr/local/etc/X11/xorg.conf.dの設定は動的なものかと思いますので、
  まずは(存在すれば)/etc/X11/xorg.conf,/usr/local/etc/X11/xorg.conf
  とデフォルト値・自動検出値での静的な設定を行った上でそちらに流れる
  のでは?

> 要するに PC-BSD で touch screen を使った人間は世界に一人もいないという証
> 拠のようにも見えます。

ELAN以外のタッチスクリーンで動作しているものがあるのかもしれません。
ノイズばかりで有力な情報に行き当たっていませんが、ELANのものはsynaptics
ドライバでは駄目、という可能性もありますし。

駄目元ですが、xf86-input-evdevを試してみるのはいかが?

 https://www.freebsd.org/cgi/man.cgi?query=evdev&sektion=4x&apropos=0&manpath=FreeBSD+10.3-RELEASE+and+Ports

PC-BSDでFreeBSD標準に追加して(カーネル側ドライバで)タッチスクリーンを
サポートできている場合、いけそうな気がするのですが。

ZFSをお使いで、/usr/local及び/var/dbを独立したデータセットにして
おられれば、この2箇所(さらに下にもデータセットを作っていればそこも)
のスナップショットを取得しておいてからインストールすれば、試して駄目
ならすぐrollbackして元通りですが、UFSだったりこれらのデータセットが
独立させていなければ辛いでしょうか。


> ---- /usr/local/share/X11/xorg.conf.d/50-synaptics.conf の内容
> # Example xorg.conf.d snippet that assigns the touchpad driver
> # to all touchpads. See xorg.conf.d(5) for more information on
> # InputClass.
> # DO NOT EDIT THIS FILE, your distribution will likely overwrite
> # it when updating. Copy (and rename) this file into
> # /etc/X11/xorg.conf.d first.
> # Additional options may be added in the form of
> #   Option "OptionName" "value"
> #
> Section "InputClass"
>         Identifier "touchpad catchall"
>         Driver "synaptics"
>         MatchIsTouchpad "on"
> # This option is recommend on all Linux systems using evdev, but cannot be
> # enabled by default. See the following link for details:
> # http://who-t.blogspot.com/2010/11/how-to-ignore-configuration-errors.html
> #       MatchDevicePath "/dev/input/event*"
> EndSection
> 
> Section "InputClass"
>         Identifier "touchpad ignore duplicates"
>         MatchIsTouchpad "on"
>         MatchOS "Linux"
>         MatchDevicePath "/dev/input/mouse*"
>         Option "Ignore" "on"
> EndSection
> 
> # This option enables the bottom right corner to be a right button on clickpads
> # and the right and middle top areas to be right / middle buttons on clickpads
> # with a top button area.
> # This option is only interpreted by clickpads.
> Section "InputClass"
>         Identifier "Default clickpad buttons"
>         MatchDriver "synaptics"
>         Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
>         Option "SecondarySoftButtonAreas" "58% 0 0 15% 42% 58% 0 15%"
> EndSection
> 
> # This option disables software buttons on Apple touchpads.
> # This option is only interpreted by clickpads.
> Section "InputClass"
>         Identifier "Disable clickpad buttons on Apple touchpads"
>         MatchProduct "Apple|bcm5974"
>         MatchDriver "synaptics"
>         Option "SoftButtonAreas" "0 0 0 0 0 0 0 0"
> EndSection
> 
> --------
> 丸山直昌@統計数理研究所
> 


-- 
青木 知明  [Tomoaki AOKI]    <junchoon at dec.sakura.ne.jp>


freebsd-users-jp メーリングリストの案内