Skip to content

About This Project

This repository contains reference drivers and configurations for Intel MIPI CSI cameras, supporting various sensor modules and Image Processing Units (IPUs).

Table of Contents
  1. Supported Sensors
  2. Supported Ubuntu and Kernel Version
  3. Directory Structure
  4. Setup Procedure
  5. Contributing
  6. Security
  7. Code of Conduct
  8. License

Supported Sensors

GMSL Sensor User Guide Vendor IPU6EP IPU6EPMTL IPU75XA IPU8
AR0233+GW5300 User Guide Sensing
AR0234 User Guide D3 Embedded ✅*
AR0820+GW5300 User Guide Sensing
D457 User Guide RealSense
ISX031 User Guide D3 Embedded ✅*
ISX031 User Guide Leopard Imaging ✅*
ISX031 User Guide Sensing ✅*
MIPI Sensor User Guide Vendor IPU6EP IPU6EPMTL IPU75XA IPU8
AR0234 User Guide D3 Embedded ✅*
AR0830+AP1302 User Guide Leopard Imaging ✅* ✅*
IMX415 User Guide Leopard Imaging ✅*
IMX586 User Guide Leopard Imaging ✅*
ISX031 User Guide D3 Embedded ✅*
ISX031 User Guide Sensing ✅* ✅* ✅*
OV13B10 User Guide Leopard Imaging

Note:
Items marked with ✅ are enabled by BIOS and ASL method.
Items marked with ✅* are enabled by BIOS method ONLY.
Items marked with ❌ are not enabled by BIOS or ASL method.

Note:
IPU6EP represents TWL platforms;
IPU6EPMTL represents MTL and ARL platforms;
IPU75XA represents PTL platforms;
IPU8 represents NVL platforms.


Supported Ubuntu and Kernel Version

IPU Version Ubuntu Version Intel Kernel Overlay Canonical Kernel BIOS support ASL support
IPU6EP 24.04.4 6.12
24.04.4 6.18 (BKC) 6.17
26.04 6.18 7.0
IPU6EPMTL 24.04.4 6.12
24.04.4 6.18 (BKC) 6.17 ✅*
26.04 6.18 7.0 ✅*
IPU75XA 24.04.4 6.17
24.04.4 6.18 (BKC) 6.17 ✅*
26.04 6.18 7.0 ✅*
IPU8 24.04.4 7.0
26.04 7.0

Note:
✅* indicates that ASL support is NOT AVAILABLE for 6.18 (BKC) by default. Please rebuild the 6.18 Kernel Overlay with ASL support enabled. For more details, please refer to doc/acpi/kernelspace.md.
To use Intel BKC, please refer here for more details.


Directory Structure

Directory Description
acpi/ Host ASL source files for different configurations
config/ Host middleware configuration files
drivers/ Host Linux kernel drivers for supported sensors
doc/ Host Documentation guide for kernelspace and userspace configuration
include/ Host Header files for driver compilation
script/ Host Utility scripts

Setup Procedure

  1. Find your desired target platform and desired Ubuntu/Kernel from the table above.

  2. Setup your target platform. Follow section below.

    To use Intel BKC, Follow section below.

  3. DKMS build your kernel drivers. Follow section below.

  4. Install required software dependencies on your target platform. Follow section below.

  5. Setup your Hardware. Follow section below.

  6. Configure ACPI to match with Hardware setup.

    For BIOS Configuration method, go to BIOS Configuration.

    For ACPI ASL Configuration method, go to ACPI ASL Configuration.

  7. Boot and verify the setup using media-ctl. Go to Setup Verification.

  8. Enjoy your camera stream! Go to Stream Verification.


Expand to show detailed setup steps

Software Setup - Ubuntu and Kernel

Intel BKC using Getting Started Guide (GSG)

Show details

Note: GSG requires granted access to Intel® RDC portal. Please contact your Intel representative for access.

Skip this section if you do not have access. Use default Canonical Kernel version that comes with the Ubuntu Image instead.

  1. Download Getting Started Guide from table below and setup according to your target Platform.
  2. Under section Getting Started with Ubuntu with Kernel Overlay, follow ALL instructions to avoid missing dependencies.
  3. Under section Auto Script Installation, download Ubuntu Kernel Overlay Auto Installer Script from platform-respective Software Packages.
  4. Run installer script to install Intel Kernel Overlay and Intel BKC on your target platform.

Reminder: All collaterals below can be downloaded in rdc.intel.com with proper granted access.

Platform Getting Started Guide Software Package
ARL 828853 831484
MTL 779460 790840
TWL 793827 803960
PTL 858119 860689

Reference: Intel® IPU6 Enabling Partners Technical Collaterals Advisory

(Back to Setup Procedure)

Canonical Kernel

Canonical Kernel version comes with the Ubuntu Image by default. Make sure the kernel version is supported here.

(Back to Setup Procedure)


Software Setup - Userspace

Build and install these software dependencies in your target system:

Utility Tools

Show details

v4l-utils with version >= 1.30 is mandatory for GMSL setup.
acpica with version >= 20260408 is mandatory for ACPI ASL setup.

Tool Repository Tag Steps to setup
v4l-utils v4l-utils stable-1.30 Build from repo
acpica acpica 20260408 Refer here

Intel IPU Camera Software Stack

Show details
IPU Version ipu-camera-bins ipu-camera-hal icamerasrc
IPU6EP, IPU6EPMTL d9421fef539f24fc80c27002d5da753e193b0670 5aa9a3bd3d5582667915d93b0128a02953adbbbc 7517af78f49a18dde6de86042055aa14ebe6d184
IPU75XA adf55525ab9d370828723b1ff8bee76ed7a492e8 a17d17718e8df9e74940fac32beda016836ef43b 7517af78f49a18dde6de86042055aa14ebe6d184
IPU8 adf55525ab9d370828723b1ff8bee76ed7a492e8 a17d17718e8df9e74940fac32beda016836ef43b 7517af78f49a18dde6de86042055aa14ebe6d184

Media Driver

Note:
Build from source only if you are using Canonical Kernel with PTL.
Skip this step if you are using Intel BKC.

RECOMMENDED if you want to have DMABuf support.

Show List
Component Repository Tag Build Step
libva libva 2.23.0 Follow build steps in repo
gmmlib gmmlib intel-gmmlib-22.10.0 Follow build steps in repo
media-driver media-driver intel-media-26.1.5 Follow build steps in repo

(back to Setup Procedure)


Software Setup - Kernel Driver DKMS Build

Initialize and update current repository recursively to ensure all dependencies are correctly fetched.

git checkout main
git submodule update --init --recursive

Build and install modules using DKMS

sudo dkms remove ipu-camera-sensor/0.1
sudo rm -rf /usr/src/ipu-camera-sensor-0.1/

sudo dkms add .
sudo dkms build -m ipu-camera-sensor -v 0.1
sudo dkms install -m ipu-camera-sensor -v 0.1 --force

(back to Setup Procedure)


Hardware Setup

  1. Reference Hardware setup can be found in doc/{sensor} and respective userspace.md files.

(back to Setup Procedure)


ACPI Setup - BIOS Configuration

  1. Power cycle target system with sensors connected.
  2. Import sensor profile into BIOS, under section BIOS Configuration Table in respective userspace.md.

(back to Setup Procedure)


ACPI Setup - ASL Configuration

ASL Configuration is added since release/26Q2.1.

  1. Turn off all Camera related BIOS setting.
  2. Create own ASL source file using reference ASL source file in ../../acpi/{ipu}. Follow section here.
  3. Compile and load ASL source into GRUB. Follow section here

(back to Setup Procedure)


Setup Verification

Note: Minimum media-ctl version required = (1.30)

  1. Verify sensor setup using media-ctl -p.

(back to Setup Procedure)


Stream Verification

  1. Reference stream verification for different sensor setup can be found in doc/{sensor} and respective userspace.md files.

(back to Setup Procedure)


Contributing

Please read CONTRIBUTING.md for guidelines on contributing to this project.

Security

For security concerns, please see SECURITY.md.

Code of Conduct

This project follows our Code of Conduct.

License

Files in config/ and script/ are licensed under the Apache License 2.0. See LICENSE-APACHE for details.

Files in acpi/, drivers/ and include/ are licensed under the GPL-2.0 License. See LICENSE-GPL for details.

(back to top)

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Security policy

Stars

12 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages