[PATCH 0/2][SRU][F] Add Intel IPU6 firmware

You-Sheng Yang vicamo.yang at canonical.com
Fri Mar 26 06:58:35 UTC 2021


BugLink: https://bugs.launchpad.net/bugs/1921345

[Impact]

There are new platforms with MIPI camera based on Intel IPU6(Imaging
Processing Unit version 6) currently unsupported in Ubuntu.

[Fix]

Intel IPU6 can be enabled by integration of following kernel driver,
firmware, userspace HAL libraries as well as a GStreamer source element:

  * https://github.com/intel/ipu6-drivers
  * https://github.com/intel/ipu6-camera-bins
  * https://github.com/intel/ipu6-camera-hal
  * https://github.com/intel/icamerasrc

This patchset took firmware blobs from intel/ipu6-camera-bins.

[Test Case]

With kernel/firmware properly installed, the hardware should be ready for
further development:

  $ dmesg | grep ipu
  intel-ipu6 intel-ipu: enabling device (0000 -> 0002)
  intel-ipu6 intel-ipu: Device 0x9a19 (rev: 0x1)
  intel-ipu6 intel-ipu: physical base address 0x6054000000
  intel-ipu6 intel-ipu: mapped as: 0x0000000097793328
  intel-ipu6 intel-ipu: IPU in secure mode
  intel-ipu6 intel-ipu: IPC reset done
  intel-ipu6 intel-ipu: cpd file name: intel/ipu6_fw.bin
  intel-ipu6 intel-ipu: FW version: 20201222
  intel-ipu6 intel-ipu: Sending BOOT_LOAD to CSE
  intel-ipu6 intel-ipu: Sending AUTHENTICATE_RUN to CSE
  intel-ipu6 intel-ipu: CSE authenticate_run done
  intel-ipu6 intel-ipu: IPU driver version 1.0
  intel-ipu6-psys intel-ipu6-psys0: pkg_dir entry count:8
  intel-ipu6-psys intel-ipu6-psys0: psys probe minor: 0
  intel-ipu6-isys intel-ipu6-isys0: bind ov01a1s 20-0036 nlanes is 1
port is 1
  intel-ipu6-isys intel-ipu6-isys0: All sensor registration completed.
  intel-ipu6-isys intel-ipu6-isys0: stream on ov01a1s 20-0036

There should be nearly 24 video4linux devices created under /dev.

[Where problems could occur]

MIPI camera through Intel IPU6 takes also firmware blobs loaded in
runtime from user space, and addtional softwares are also required to
fully enable it for oridinary use. The exposed video devices are hidden
from general users and a relay daemon+v4l2loopback is used to enable
use from existing applications.

This firmware blob is specific for IPU6 and is not used by any other
party.

[Other Info]

So far Intel has no plan to commit this driver to upstream yet, so it's
only nominated for focal. It will only be nominated to other series
when the plan/requirements have changed.

You-Sheng Yang (2):
  intel-ipu6: Add IPU6 firmware files
  intel-ipu6: update IPU6 Release_20210121 WW04 firmware files

 LICENSE.ipu6_firmware |  38 ++++++++++++++++++++++++++++++++++++++
 WHENCE.ubuntu         |  10 ++++++++++
 intel/ipu6_fw.bin     | Bin 0 -> 466944 bytes
 3 files changed, 48 insertions(+)
 create mode 100644 LICENSE.ipu6_firmware
 create mode 100644 intel/ipu6_fw.bin

-- 
2.30.2




More information about the kernel-team mailing list