Samsung RV515 を drm-kmod に変更する2019年03月03日 14時22分19秒

ports の drm に更新する。下調べをしておいた手順を基に Samsung RV515 で試してみた。

まずは、pkg で drm-kmod をインストール。

# pkg install drm-kmod
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 3 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        drm-kmod: g20180930
        drm-legacy-kmod: g20181031_1
        gpu-firmware-kmod: g20180825
一部では、drm-legacy-kmod はすぐに削除されると噂もされているが、そんな予定はないそうだ。

そして、startx で X を起動。そして kldstat を点検。この機種では、radeonkms が使われているのが分かる。

% kldstat
 1   49   0x800000  1ad57e8 kernel
...
 9    1 0x19027000   105000 radeonkms.ko
10    1 0x1912c000    4e000 drm2.ko
11    4 0x1917a000     7000 iicbus.ko
12    1 0x19181000     5000 iic.ko
13    1 0x19186000     7000 iicbb.ko
14    1 0x1918d000     5000 radeonkmsfw_PALM_pfp.ko
15    1 0x19192000     5000 radeonkmsfw_PALM_me.ko
16    1 0x19197000     4000 radeonkmsfw_SUMO_rlc.ko
AMD 製の CPU を使っていたら amdgpu と radeonkms があるらしいが、この機種は radeonkms の様だ。そこで、kld_list="/boot/modules/radeonkms.ko" を /etc/rc.conf に追加。次回の起動時にこちらから読み込まれる。

vigr で /etc/groups を編集。video グループに自分を追加する。

# vigr
video:*:44:uyota
不特定多数が X を起動する場合はちょっと手間がかかりそう。そのような末端は XDM などで、既に X が起動済みかな。

そして、shutdown -r now で再起動し、点検

% kldstat
Id Refs Address        Size Name
 1   87   0x800000  1ad57e8 kernel
...
 5    1 0x1900d000   10c000 radeonkms.ko
 6    1 0x19119000    4e000 drm2.ko
 7    4 0x19167000     7000 iicbus.ko
 8    1 0x1916e000     5000 iic.ko
 9    1 0x19173000     7000 iicbb.ko
10    1 0x1917a000     3000 radeon_PALM_pfp_bin.ko
11    1 0x1917d000     3000 radeon_PALM_me_bin.ko
12    1 0x19180000     2000 radeon_SUMO_rlc_bin.ko
この出力は、drm-kmod に移行前と全く同じ。しかし、kldstat -v で詳細を調べると /boot/modules から読み込まれているのが判る。
 5    1 0x1900d000   10c000 radeonkms.ko (/boot/modules/radeonkms.ko)
        Contains modules:
                 Id Name
                529 vgapci/radeonkms
                534 drmn/radeon_atom_hw_i2c
                531 radeon_iicbb/iicbb
                533 radeon_hw_i2c/iicbus
                530 drmn/radeon_iicbb
                532 drm/radeon_hw_i2c

前回次回