|
Surface Go 2 のLinux-Surfaceカーネルをダウングレードする
Surface Go 2 のLinux-Surfaceカーネルをダウングレードする
概要
更新履歴
目次
はじめに
-
Surface Go 2のカメラを擬似的にモーションセンサー/人感センサーに仕立てて使うために,Linux-Surfaceカーネルをインストールしていた.
- しかし,3台目からカメラが認識されなくなった.
- 状況を調べ,結果的に1台目,2台目のセットアップ後,linux-surfaceカーネルがバージョンアップされ,それが原因で認識されなくなったことが判明.
- よって,問題なく動作したバージョンにダウングレードして,これ以降,バージョンアップされない様に固定化した.
- 調査手順の記録,設定をこの文書で掲載する.
Surfaceの内蔵カメラが認識されない
$ cam --list 2>&1 | grep -i camera🆑
[0:01:41.967085342] [1196] INFO Camera camera_manager.cpp:284 libcamera v0.2.0
Available cameras:
ujpadmin@okachimachi:~$
- カメラがリストされないのでカメラを認識してない.
- libcameraを確認する.
ujpadmin@okachimachi:~$ ls /usr/lib/x86_64-linux-gnu/libcamera/🆑
ipa_ipu3.so ipa_ipu3.so.sign ipa_vimc.so ipa_vimc.so.sign ipu3_ipa_proxy vimc_ipa_proxy
ujpadmin@okachimachi:~$
/dev/mediaへのアクセス権
ujpadmin@okachimachi:~$ cam --list 2>&1 | head -30🆑
[0:06:24.203516283] [1348] INFO Camera camera_manager.cpp:284 libcamera v0.2.0
[0:06:24.211848127] [1352] ERROR MediaDevice media_device.cpp:483 /dev/media1[]: Failed to open media device at /dev/media1: Permission denied🈁
[0:06:24.211882348] [1352] INFO DeviceEnumerator
device_enumerator.cpp:224 Unable to populate media device /dev/media1
(Permission denied), skipping
[0:06:24.211902058] [1352] WARN DeviceEnumerator
device_enumerator_udev.cpp:174 Failed to add device for
'/sys/devices/pci0000:00/0000:00:05.0/media1', skipping
[0:06:24.213465598] [1352] ERROR MediaDevice media_device.cpp:483 /dev/media0[]: Failed to open media device at /dev/media0: Permission denied🈁
[0:06:24.213488780] [1352] INFO DeviceEnumerator
device_enumerator.cpp:224 Unable to populate media device /dev/media0
(Permission denied), skipping
[0:06:24.213506683] [1352] WARN DeviceEnumerator
device_enumerator_udev.cpp:174 Failed to add device for
'/sys/devices/pci0000:00/0000:00:14.3/media0', skipping
Available cameras:
ujpadmin@okachimachi:~$
- /dev/media0と/dev/media1へのアクセス権がない.
- 確認する.
ujpadmin@okachimachi:~$ ls -la /dev/media*🆑
crw-rw---- 1 root video 237, 0 May 3 19:02 /dev/media0
crw-rw---- 1 root video 237, 1 May 3 19:02 /dev/media1
ujpadmin@okachimachi:~$
ujpadmin@okachimachi:~$ groups server🆑
server : server adm cdrom sudo dip plugdev lxd
ujpadmin@okachimachi:~$
- serverユーザがvideoグループに入ってない.
- 追加する.
ujpadmin@okachimachi:~$ sudo usermod -aG video server🆑
ujpadmin@okachimachi:~$
- serverユーザをログアウトして,再度ログインする.
ujpadmin@okachimachi:~$ groups🆑
server adm cdrom sudo dip video🈁 plugdev lxd
ujpadmin@okachimachi:~$
- videoグループに所属できた.
- カメラ一覧をリストする.
ujpadmin@okachimachi:~$ cam --list 2>&1 | grep -i camera🆑
[0:08:09.466732948] [1435] INFO Camera camera_manager.cpp:284 libcamera v0.2.0
Available cameras:
ujpadmin@okachimachi:~$
カーネルがカメラを認識しているか確認.
ujpadmin@okachimachi:~$ sudo dmesg | grep -i -E "ipu3|ov8865|ov5693|cio2|camera"🆑
[sudo] password for server:🔑
[ 8.544372] ipu3_imgu: module is from the staging directory, the quality is unknown, you have been warned.
[ 8.554023] ipu3-imgu 0000:00:05.0: device 0x1919 (rev: 0x1)
[ 8.554068] ipu3-imgu 0000:00:05.0: physical base address 0x00000000b1000000, 4194304 bytes
[ 8.626525] ipu3-cio2 0000:00:14.3: Found supported sensor INT33BE:00
[ 8.630520] ipu3-cio2 0000:00:14.3: Found supported sensor INT347A:00
[ 8.631688] ipu3-cio2 0000:00:14.3: Found supported sensor INT347E:00
[ 8.632238] ipu3-cio2 0000:00:14.3: Connected 3 cameras
[ 8.633467] ipu3-cio2 0000:00:14.3: device 0x9d32 (rev: 0x1)
[ 8.660357] ov5693 i2c-INT33BE:00: supply dovdd not found, using dummy regulator
[ 8.660453] ov5693 i2c-INT33BE:00: supply dvdd not found, using dummy regulator
[ 8.791085] ipu3-imgu 0000:00:05.0: loaded firmware
version irci_irci_ecr-master_20161208_0213_20170112_1500, 17 binaries,
1212984 bytes
[ 10.830927] ov8865 i2c-INT347A:00: Instantiated dw9719 VCM
ujpadmin@okachimachi:~$
- カメラは認識されているが,センサー名がSurface 1台目・2台目とちがう.
- INT33BE・INT347A・INT347EというACPIデバイス名で接続されている.
- libcameraのバージョンを確認.
ujpadmin@okachimachi:~$ cam --list 2>&1 | cat🆑
[0:09:59.037679170] [1456] INFO Camera camera_manager.cpp:284 libcamera v0.2.0
Available cameras:
ujpadmin@okachimachi:~$
ujpadmin@okachimachi:~$ sudo cam --list 2>&1 | grep -i camera🆑
[0:10:05.193736798] [1464] INFO Camera camera_manager.cpp:284 libcamera v0.2.0
Available cameras:
ujpadmin@okachimachi:~$
v4l2で確認
-
V4L2(Video for Linux 2)は,LinuxカーネルでWebカメラ,TVチューナー,ビデオキャプチャデバイスを扱うための標準的なAPI/フレームワーク.
これで認識されているか確認.
ujpadmin@okachimachi:~$ v4l2-ctl --list-devices🆑
Command 'v4l2-ctl' not found, but can be installed with:
sudo apt install v4l-utils🈁
ujpadmin@okachimachi:~$
- ソフトウェアが入ってなかった.
- v4l-utilsをインストール.
sudo apt install v4l-utils🆑
ujpadmin@okachimachi:~$ v4l2-ctl --list-devices🆑
ipu3-imgu (PCI:0000:00:05.0):
/dev/video4
/dev/video5
/dev/video6
/dev/video7
/dev/video8
/dev/video9
/dev/video10
/dev/video11
/dev/video12
/dev/video13
/dev/media1
Intel IPU3 CIO2 (PCI:0000:00:14.3):
/dev/video0
/dev/video1
/dev/video2
/dev/video3
/dev/media0
ujpadmin@okachimachi:~$
- デバイスは認識されている.
- libcameraがIPAモジュールを見つけられていない可能がある.
- IPAモジュールの署名確認.
ujpadmin@okachimachi:~$ ls -la /usr/lib/x86_64-linux-gnu/libcamera/🆑
total 352
drwxr-xr-x 2 root root 4096 May 3 18:56 .
drwxr-xr-x 50 root root 40960 May 3 19:13 ..
-rw-r--r-- 1 root root 125256 Apr 15 2024 ipa_ipu3.so
-rw-r--r-- 1 root root 256 Apr 15 2024 ipa_ipu3.so.sign
-rw-r--r-- 1 root root 31048 Apr 15 2024 ipa_vimc.so
-rw-r--r-- 1 root root 256 Apr 15 2024 ipa_vimc.so.sign
-rwxr-xr-x 1 root root 76264 Apr 15 2024 ipu3_ipa_proxy
-rwxr-xr-x 1 root root 63976 Apr 15 2024 vimc_ipa_proxy
ujpadmin@okachimachi:~$
- 署名ファイルはある.
- 環境変数を設定してリストを取り出してみる.
ujpadmin@okachimachi:~$ LIBCAMERA_IPA_MODULE_PATH=/usr/lib/x86_64-linux-gnu/libcamera cam --list 2>&1🆑
[0:11:20.751134951] [1651] INFO Camera camera_manager.cpp:284 libcamera v0.2.0
Available cameras:
ujpadmin@okachimachi:~$
他のSurfaceとセンサードライバーが違う(INT33BE等)可能性の確認
ujpadmin@okachimachi:~$ sudo dmesg | grep -i -E "ov5693|ov8865|INT33BE|INT347A|INT347E|tps68470|regulator"🆑
[ 8.023464] int3472-tps68470 i2c-INT3472:05: TPS68470 REVID: 0x21
[ 8.626525] ipu3-cio2 0000:00:14.3: Found supported sensor INT33BE:00
[ 8.630520] ipu3-cio2 0000:00:14.3: Found supported sensor INT347A:00
[ 8.631688] ipu3-cio2 0000:00:14.3: Found supported sensor INT347E:00
[ 8.660357] ov5693 i2c-INT33BE:00: supply dovdd not found, using dummy regulator🈁
[ 8.660453] ov5693 i2c-INT33BE:00: supply dvdd not found, using dummy regulator🈁
[ 8.729033] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 10.698726] ov7251 i2c-INT347E:00: OV7251 revision 7 (1F) detected at address 0x60
[ 10.830927] ov8865 i2c-INT347A:00: Instantiated dw9719 VCM
ujpadmin@okachimachi:~$
- ov5693でsupply dovdd not foundエラーが出ている.
- 電源レギュレーターが見つかっていないのが原因.
- tps68470のレギュレータードライバーを確認.
ujpadmin@okachimachi:~$ sudo dmesg | grep -i tps68470🆑
[ 8.023464] int3472-tps68470 i2c-INT3472:05: TPS68470 REVID: 0x21
ujpadmin@okachimachi:~$
- ロード済みのカーネルモジュールの一覧からtpsを探す.
ujpadmin@okachimachi:~$ lsmod | grep -i tps🆑
leds_tps68470 12288 0
gpio_tps68470 12288 3
intel_skl_int3472_tps68470 20480 0
tps68470_regulator 12288 6
clk_tps68470 12288 3
intel_skl_int3472_common 16384 2 intel_skl_int3472_tps68470,intel_skl_int3472_discrete
ujpadmin@okachimachi:~$
ujpadmin@okachimachi:~$ # ls /sys/class/regulator/ | head -20🆑
regulator.0
regulator.1
regulator.2
regulator.3
regulator.4
regulator.5
regulator.6
regulator.7
regulator.8
ujpadmin@okachimachi:~$
- tps68470レギュレーターは動いている.
- ov5693の
supply dovdd not foundは警告で、ダミーレギュレーターで動作するはず.
- 他の原因を探る.
メディアコントローラAPIから信号の流れを確認
- LinuxのメディアコントローラーAPIを操作するmedia-ctlツールを利用.
- /dev/media0という,IPU3 CIO2(カメラ入力)のメディアコントローラ.
- カメラセンサーからCSI-2レシーバー,CIO2バッファまでの信号の流れを-pオプションで表示する.
ujpadmin@okachimachi:~$ # media-ctl -d /dev/media0 -p 2>&1 | head -40🆑
Media controller API version 6.19.8
Media device information
------------------------
driver ipu3-cio2
model Intel IPU3 CIO2
serial
bus info PCI:0000:00:14.3
hw revision 0x0
driver version 6.19.8
Device topology
- entity 1: ipu3-csi2 0 (2 pads, 1 link, 0 routes)
type V4L2 subdev subtype Unknown flags 0
pad0: Sink
pad1: Source
-> "ipu3-cio2 0":0 [ENABLED,IMMUTABLE]
- entity 4: ipu3-cio2 0 (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<- "ipu3-csi2 0":1 [ENABLED,IMMUTABLE]
- entity 10: ipu3-csi2 1 (2 pads, 1 link, 0 routes)
type V4L2 subdev subtype Unknown flags 0
pad0: Sink
pad1: Source
-> "ipu3-cio2 1":0 [ENABLED,IMMUTABLE]
- entity 13: ipu3-cio2 1 (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video1
pad0: Sink
<- "ipu3-csi2 1":1 [ENABLED,IMMUTABLE]
- entity 19: ipu3-csi2 2 (2 pads, 1 link, 0 routes)
type V4L2 subdev subtype Unknown flags 0
pad0: Sink
pad1: Source
ujpadmin@okachimachi:~$
- Surface Go 2の1台目と比べると、センサー(
ov8865やov5693)がCSI-2に接続されていない.
ipu3-csi2 0のpad0にセンサーが繋がっていないのが原因.
- カーネルのバージョンを確認.
ujpadmin@okachimachi:~$ uname -r🆑
6.19.8-surface-2🈁
ujpadmin@okachimachi:~
ujpadmin@okachimachi:~$ media-ctl -d /dev/media0 -p 2>&1 | grep -i "ov\|sensor\|ENABLED"🆑
-> "ipu3-cio2 0":0 [ENABLED,IMMUTABLE]
<- "ipu3-csi2 0":1 [ENABLED,IMMUTABLE]
-> "ipu3-cio2 1":0 [ENABLED,IMMUTABLE]
<- "ipu3-csi2 1":1 [ENABLED,IMMUTABLE]
-> "ipu3-cio2 2":0 [ENABLED,IMMUTABLE]
<- "ipu3-csi2 2":1 [ENABLED,IMMUTABLE]
-> "ipu3-cio2 3":0 [ENABLED,IMMUTABLE]
<- "ipu3-csi2 3":1 [ENABLED,IMMUTABLE]
- entity 37: ov5693 4-0036 (1 pad, 0 link, 0 routes)
type V4L2 subdev subtype Sensor flags 0
- entity 39: ov8865 2-0010 (1 pad, 0 link, 0 routes)
type V4L2 subdev subtype Sensor flags 0
- entity 41: ov7251 3-0060 (1 pad, 0 link, 0 routes)
type V4L2 subdev subtype Sensor flags 0
ujpadmin@okachimachi:~$
- センサー(
ov5693、ov8865、ov7251)が認識されているのにCSI-2へのリンクが0(未接続)になっている.
- Surface 1台目では
[ENABLED]リンクがあったが,このカーネル(6.19.8)ではリンクが張られてない.
- カーネルバージョンの違いが原因.
- 1台目は
6.18.7-surface-1,3台目は6.19.8-surface-2.
古いカーネルに戻す
現在のカーネルを確認
ujpadmin@okachimachi:~$ dpkg -l | grep linux-image🆑
ii
linux-image-6.19.8-surface-2
6.19.8-surface-2
amd64
Linux
kernel, version
6.19.8-surface-2
ii
linux-image-6.8.0-111-generic
6.8.0-111.111
amd64
Signed
kernel image
generic
ii
linux-image-generic
6.8.0-111.111
amd64
Generic
Linux kernel
image
ii
linux-image-surface
6.19.8-surface-2
amd64
ujpadmin@okachimachi:~$
ujpadmin@okachimachi:~$ # ls /boot/vmlinuz*
/boot/vmlinuz /boot/vmlinuz-6.19.8-surface-2 /boot/vmlinuz-6.8.0-111-generic /boot/vmlinuz.old
ujpadmin@okachimachi:~$
apt-cacheでキャッシュにある利用可能なsurfaceカーネルのバージョン確認
ujpadmin@okachimachi:~$ apt-cache showpkg linux-image-surface | grep -i "6.18\|6.19"🆑
6.19.8-surface-2
(/var/lib/apt/lists/pkg.surfacelinux.com_debian_dists_release_main_binary-amd64_Packages)
(/var/lib/dpkg/status)
6.19.8-surface-2 - linux-image-6.19.8-surface-2 (5 6.19.8-surface-2) iptsd (0 (null))
6.19.8-surface-2 -
ujpadmin@okachimachi:~$
過去バージョンが入手できるか確認.
ujpadmin@okachimachi:~$ apt-cache policy linux-image-surface🆑
linux-image-surface:
Installed: 6.19.8-surface-2
Candidate: 6.19.8-surface-2
Version table:
*** 6.19.8-surface-2 500
500 https://pkg.surfacelinux.com/debian release/main amd64 Packages
100 /var/lib/dpkg/status
ujpadmin@okachimachi:~$
- リポジトリに,6.19.8しかない.正しく動いたバージョンをダウンロードできない.
- Surface Go 2の1台目からdebパッケージを持ってくることを検討.
1台目のSurface Go 2で確認
ujpadmin@serveradmin:~$ dpkg -l | grep "6.18.7-surface"🆑
ii
linux-headers-6.18.7-surface-1
6.18.7-surface-1
amd64
Linux
kernel headers
for 6.18.7-surface-1 on amd64
ii
linux-headers-surface
6.18.7-surface-1
amd64
ii
linux-image-6.18.7-surface-1
6.18.7-surface-1
amd64
Linux
kernel, version
6.18.7-surface-1
ii
linux-image-surface
6.18.7-surface-1
amd64
ujpadmin@serveradmin:~$
ujpadmin@serveradmin:~$ ls /var/cache/apt/archives/ | grep "6.18.7-surface"🆑
ujpadmin@serveradmin:~$
githubからダウンロード&インストール
- パッケージをwgetコマンドで入手して,インストールする
ujpadmin@okachimachi:~$ wget
https://github.com/linux-surface/linux-surface/releases/download/debian-6.18.7-1/linux-image-6.18.7-surface-1_6.18.7-surface-1_amd64.deb🆑
--2026-05-04 16:28:48--
https://github.com/linux-surface/linux-surface/releases/download/debian-6.18.7-1/linux-image-6.18.7-surface-1_6.18.7-surface-1_amd64.deb
Resolving github.com (github.com)... 20.27.177.113
Connecting to github.com (github.com)|20.27.177.113|:443... connected.
HTTP request sent, awaiting response... 302 Found
ー略ー
linux-image-6.18.7-surface-1_6.18.7-surfa
100%[=====================================================================================>]
88.38M 8.72MB/s in 9.6s
2026-05-04 16:28:59 (9.18 MB/s) - ‘linux-image-6.18.7-surface-1_6.18.7-surface-1_amd64.deb’ saved [92678798/92678798]
ujpadmin@okachimachi:~$
ujpadmin@okachimachi:~$ wget
https://github.com/linux-surface/linux-surface/releases/download/debian-6.18.7-1/linux-headers-6.18.7-surface-1_6.18.7-surface-1_amd64.deb🆑
--2026-05-04 16:29:05--
https://github.com/linux-surface/linux-surface/releases/download/debian-6.18.7-1/linux-headers-6.18.7-surface-1_6.18.7-surface-1_amd64.deb
Resolving github.com (github.com)... 20.27.177.113
Connecting to github.com (github.com)|20.27.177.113|:443... connected.
HTTP request sent, awaiting response... 302 Found
ー略ー
HTTP request sent, awaiting response... 200 OK
Length: 11281778 (11M) [application/octet-stream]
Saving to: ‘linux-headers-6.18.7-surface-1_6.18.7-surface-1_amd64.deb’
linux-headers-6.18.7-surface-1_6.18.7-sur
100%[=====================================================================================>]
10.76M 9.82MB/s in 1.1s
2026-05-04 16:29:07 (9.82 MB/s) - ‘linux-headers-6.18.7-surface-1_6.18.7-surface-1_amd64.deb’ saved [11281778/11281778]
ujpadmin@okachimachi:~$
ujpadmin@okachimachi:~$ sudo dpkg -i linux-image-6.18.7-surface-1_6.18.7-surface-1_amd64.deb🆑
[sudo] password for server:
Selecting previously unselected package linux-image-6.18.7-surface-1.
(Reading database ... 131397 files and directories currently installed.)
Preparing to unpack linux-image-6.18.7-surface-1_6.18.7-surface-1_amd64.deb ...
Unpacking linux-image-6.18.7-surface-1 (6.18.7-surface-1) ...
Setting up linux-image-6.18.7-surface-1 (6.18.7-surface-1) ...
update-initramfs: Generating /boot/initrd.img-6.18.7-surface-1
Sourcing file `/etc/default/grub'
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.19.8-surface-2
Found initrd image: /boot/initrd.img-6.19.8-surface-2
Found linux image: /boot/vmlinuz-6.18.7-surface-1
Found initrd image: /boot/initrd.img-6.18.7-surface-1
Found linux image: /boot/vmlinuz-6.8.0-111-generic
Found initrd image: /boot/initrd.img-6.8.0-111-generic
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings ...
done
ujpadmin@okachimachi:~$
ujpadmin@okachimachi:~$ sudo dpkg -i linux-headers-6.18.7-surface-1_6.18.7-surface-1_amd64.deb🆑
Selecting previously unselected package linux-headers-6.18.7-surface-1.
(Reading database ... 139512 files and directories currently installed.)
Preparing to unpack linux-headers-6.18.7-surface-1_6.18.7-surface-1_amd64.deb ...
Unpacking linux-headers-6.18.7-surface-1 (6.18.7-surface-1) ...
Setting up linux-headers-6.18.7-surface-1 (6.18.7-surface-1) ...
ujpadmin@okachimachi:~$
grubの設定を更新
-
カーネルをインストールしたので,grubの情報を更新.
ujpadmin@okachimachi:~$ sudo update-grub🆑
Sourcing file `/etc/default/grub'
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.19.8-surface-2
Found initrd image: /boot/initrd.img-6.19.8-surface-2
Found linux image: /boot/vmlinuz-6.18.7-surface-1
Found initrd image: /boot/initrd.img-6.18.7-surface-1
Found linux image: /boot/vmlinuz-6.8.0-111-generic
Found initrd image: /boot/initrd.img-6.8.0-111-generic
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings ...
done
ujpadmin@okachimachi:~$
- UEFI Firmware Settingのメニューに追加された.
- OSを再起動する.
ujpadmin@okachimachi:~$ sudo reboot🆑
Broadcast message from root@okachimachi on pts/1 (Mon 2026-05-04 16:34:29 JST):
The system will reboot now!
ujpadmin@okachimachi:~$ Connection to 192.168.20.61 closed by remote host.
Connection to 192.168.20.61 closed.
OS起動時にFirmwareの選択
-
再起動時に,再起動後にGRUBで6.18.7-surface-1を選択する.
- Surface Go 2のセキュアブートを解除しておいて,赤いバーと鍵が開いたアイコンが表示されたらESCキーを押す.

- UEFI Firmware Settingsを選択.
- Ubuntu,with Linux 6.18.7-surface-1を選択.
- linuxが起動する.
カーネルとカメラが認識されているか確認
- 指定されたカーネルで起動しているか確認し,カメラが認識されているか確認.
ujpadmin@okachimachi:~$ uname -r🆑
6.18.7-surface-1
ujpadmin@okachimachi:~$
ujpadmin@okachimachi:~$ cam --list 2>&1 | grep -i camera🆑
[0:01:23.965851820] [1456] INFO Camera camera_manager.cpp:284 libcamera v0.2.0
[0:01:24.103441658] [1462] INFO IPU3 ipu3.cpp:1141 Registered Camera[0] "\_SB_.PCI0.LNK0" connected to CSI-2 receiver 0
[0:01:24.105209933] [1462] INFO IPU3 ipu3.cpp:1141 Registered Camera[1] "\_SB_.PCI0.LNK1" connected to CSI-2 receiver 1
Available cameras:
1: Internal back camera (\_SB_.PCI0.LNK0)🈁
2: Internal front camera (\_SB_.PCI0.LNK1)🈁
ujpadmin@okachimachi:~$
フレーム認識テストでカメラ動作確認
-
作業用ディレクトリを作成してカメラからキャプチャーする.
ujpadmin@okachimachi:~$ mkdir -p /tmp/cam_test🆑
ujpadmin@okachimachi:~$ cam -c 2 --stream=width=640,height=480 --capture=5 --file=/tmp/cam_test/ 2>/dev/null🆑
Using camera \_SB_.PCI0.LNK1 as cam0
cam0: Capture 5 frames
131.859994 (0.00 fps) cam0-stream0 seq: 000000 bytesused: 307200/153600
131.877725 (56.40 fps) cam0-stream0 seq: 000001 bytesused: 307200/153600
131.895088 (57.59 fps) cam0-stream0 seq: 000002 bytesused: 307200/153600
131.912605 (57.09 fps) cam0-stream0 seq: 000003 bytesused: 307200/153600
131.929409 (59.51 fps) cam0-stream0 seq: 000004 bytesused: 307200/153600
ujpadmin@okachimachi:~$ ls -la /tmp/cam_test/🆑
total 2268
drwxrwxr-x 2 server server 4096 May 4 16:39 .
drwxrwxrwt 14 root root 4096 May 4 16:39 ..
-rw-rw-r-- 1 server server 460800 May 4 16:39 frame-cam0-stream0-000000.bin
-rw-rw-r-- 1 server server 460800 May 4 16:39 frame-cam0-stream0-000001.bin
-rw-rw-r-- 1 server server 460800 May 4 16:39 frame-cam0-stream0-000002.bin
-rw-rw-r-- 1 server server 460800 May 4 16:39 frame-cam0-stream0-000003.bin
-rw-rw-r-- 1 server server 460800 May 4 16:39 frame-cam0-stream0-000004.bin
ujpadmin@okachimachi:~$
-
フレームファイルが作成されているので,動作確認完了.
apt upgradeでlinux-image-surfaceとlinux-headers-surfaceが更新されない様に固定する
- linux-surface カーネル6.18.7ではカメラは正しく動いたが,6.19.8だと動かなかった.
- apt upgradeでバージョンアップされると動かなくなる可能性があるので,バージョンアップされない様に固定する.
ujpadmin@okachimachi:~$ sudo apt-mark hold linux-image-surface linux-headers-surface🆑
[sudo] password for server:🔑
linux-image-surface set on hold.
linux-headers-surface set on hold.
ujpadmin@okachimachi:~$
ujpadmin@okachimachi:~$ apt-mark showhold🆑
linux-headers-surface
linux-image-surface
ujpadmin@okachimachi:~$
-
ホールドを解除できることを確認し,再度ホールドする.
ujpadmin@okachimachi:~$ sudo apt-mark unhold linux-image-surface linux-headers-surface🆑
Canceled hold on linux-image-surface.
Canceled hold on linux-headers-surface.
ujpadmin@okachimachi:~$ apt-mark showhold🆑
ujpadmin@okachimachi:~$ sudo apt-mark hold linux-image-surface linux-headers-surface🆑
linux-image-surface set on hold.
linux-headers-surface set on hold.
ujpadmin@okachimachi:~$
- これで安定しそう.今後は動作されるカーネルのバージョンを待つ感じか.
|
|