内蔵カメラは検出されません。 Lenovo P14 AMD

内蔵カメラは検出されません。 Lenovo P14 AMD

Lenovo P14 AMDノートブックでQtile Window ManagerでGaruda Linuxを使用していますが、内蔵カメラは機能しません。 Cheeseとさまざまなウェブサイト(Jitsi、Google Hangoutsなど)を試しましたが、常に「デバイスが見つかりません」と表示されます。

video*にファイルがありません/dev/

Linuxバージョン:Linux linux 5.19.9-zen1-1-zen

ランニングlsusb:

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0489:e0cd Foxconn / Hon Hai Wireless_Device
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

いくつかのシステム情報:

Graphics:
  Device-1: AMD Cezanne vendor: Lenovo driver: amdgpu v: kernel arch: GCN-5.1
    code: Vega-2 process: TSMC n7 (7nm) built: 2018-21 pcie: gen: 3
    speed: 8 GT/s lanes: 16 link-max: gen: 4 speed: 16 GT/s ports:
    active: HDMI-A-1,eDP-1 empty: DP-1,DP-2 bus-ID: 07:00.0
    chip-ID: 1002:1638 class-ID: 0300
  Display: x11 server: X.Org v: 21.1.4 compositor: Picom v: git-c4107
    driver: X: loaded: amdgpu unloaded: modesetting alternate: fbdev,vesa
    gpu: amdgpu display-ID: :0 screens: 1
  Message: Unable to show GL data. Required tool glxinfo missing.

この問題を解決するためにどのような措置を講じることができるのかわかりません。

答え1

https://github.com/djrscallly/miix-510-cameras Miix 510 LenovoでLinuxを実行するために必要な事項に対する書面による答えです。

ああ!彼らの仕事をしますか?

一種の。 Surface_cameraドライバとov2680ドライバをロードした後(非常に悪い)画像を撮影できます。 ov5648ドライバはまだ機能していません。このドライバでやるべきことはまだたくさんあり、その後libcameraでも役に立つ方法で動作するようにすることができます。これはなぜそんなに難しいのですか?

いくつかの質問があります:

The cameras are powered off by default behind a PMIC called a TPS68470, identified as INT3472 in the ACPI tables. The ACPI tables don't define an I2cSerialBus2 section for the PMIC, so its driver never realises that it's present.
The TPS68470 driver doesn't actually turn it on; there are 3 GPIO lines into the PMIC defined in the ACPI tables, but they're off by default and the PMIC driver doesn't toggle them. They're also not named in the ACPI tables so it's not a simple matter to determine which ones are the power lines and which the reset pin. In my case, 1 and 2 were power and 0 was reset, so the chip can be turned on like so:

$ sudo gpioset gpiochip0 122=1 143=1

このステップの前に、PMICまたはカメラのi2cインターフェースは有効になりません。つまり、どこにもまったく表示されません。デバイスの電源が入ったら、i2cDetect を使用してデバイスを表示できます。

OV2680は0x10に位置します。 TPS68470は0x48の装置です。 0x0cに何があるのか​​わかりません。これはoc5648に定義されている2つの可能なアドレスの1つですが、そのチップのPMICを開くと0x36にあることがわかりました。本当に誰が気になりますか?とにかくカメラの電源が入っているので、センサーにIDを尋ねると、話すべき音ではないことを確認できます。 OV2680データシートは、対応するIDがレジスタ0x300aにあることを示します。

$ sudo i2cDetect -r -y 7

関連情報