linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Paul Menzel <pmenzel@molgen.mpg.de>
To: Greg KH <gregkh@linuxfoundation.org>
Cc: Wang Yating <yating.wang@intel.com>,
	Christoph Jechlitschek <christoph.jechlitschek@intel.com>,
	Hao Yao <hao.yao@intel.com>, Andy Yeh <andy.yeh@intel.com>,
	Sakari Ailus <sakari.ailus@linux.intel.com>,
	Bingbu Cao <bingbu.cao@intel.com>,
	Tianshu Qiu <tian.shu.qiu@intel.com>,
	linux-media@vger.kernel.org,
	Mark Pearson <markpearson@lenovo.com>,
	Dell.Client.Kernel@dell.com, linux-kernel@vger.kernel.org,
	Guenter Roeck <groeck@google.com>,
	Sergey Senozhatsky <senozhatsky@chromium.org>,
	Andy Whitcroft <apw@canonical.com>,
	Kai-Heng Feng <kai.heng.feng@canonical.com>,
	Christian Schaller <cschalle@redhat.com>,
	Wouter Bolsterlee <wouter@bolsterl.ee>,
	Miguel Palhas <mpalhas@gmail.com>,
	it+linux-media@molgen.mpg.de
Subject: Missing MIPI IPU6 camera driver for Intel Alder Lake laptops
Date: Thu, 11 Aug 2022 10:23:26 +0200	[thread overview]
Message-ID: <52c87d91-422d-fca0-4dd5-bbaa559c81b6@molgen.mpg.de> (raw)

[-- Attachment #1: Type: text/plain, Size: 2841 bytes --]

[Cc: folks from IPU6 external driver, IPU3 maintainers, Dell, Lenovo, 
Chromium, Canonical/Ubuntu, Red Hat]

Dear Greg,


I am writing you, because I remember you – at least – were active 
several years ago in getting good upstream driver support into the Linux 
kernel.

It looks like the driver for the MIPI IPU6 camera of Intel Alder Lake 
based laptops, for example, Lenovo ThinkPad X1 Carbon and Dell XPS 13 
9315/9320, is not in the upstream Linux kernel.

With Ubuntu’s OEM image pre-installed by Dell, and on Google Chromebooks 
the camera is supposedly working [1]. There is a GitHub project with a 
repository for the Linux kernel patches [2], but the patches – as 
expected, and known from other external drivers, and Android drivers – 
do not build against all Linux kernel versions [3]. A request to 
upstream the drivers was opened at the end of March [4], and got the 
reply below in July:

> Intel is not ready yet to provide technical support to various Linux
> distro and all OEM devices at this moment with Intel IPU6 github.
> 
> Intel is supporting Dell laptop and their MIPI camera functionality
> on Ubuntu with release/integration support from Canonical. If you are
> using Dell devices, please refer to the devices listed in this link.
> (https://wiki.ubuntu.com/Dell) You can learn the latest updates from
> the installation guide.
The patches were integrated into ChromiumOS’ Linux kernel tree – for 
specific version, like 5.15 [5], and the same for Ubuntu 22.04 with 
Linux 5.15 – only in June [6]. A lot of that (redundant) work seems to 
be done by the Intel developers involved also in the GitHub project.

In the last seven or so years Linux upstream driver support worked well 
for me – especially with Intel hardware –, so I wanted to make you (and 
others) aware of the situation, and hope, that you could do something 
about the situation. With the current situation I can only recommend to 
FLOSS users to *not* buy these devices.


Kind regards,

Paul


PS: The proprietary firmware is also not in the linux-firmware 
repository [7], and the user space packages [8] are also not packaged 
yet for some distributions like Debian.

PPS: VA-API support also does not work [9].

[1]: https://ubuntu.com/certified/202203-30070
[2]: https://github.com/intel/ipu6-drivers
[3]: https://github.com/intel/ipu6-drivers/issues/13
[4]: https://github.com/intel/ipu6-drivers/issues/22
[5]: 
https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3034663
[6]: 
https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/jammy/log/drivers/media/pci/intel
[7]: https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1955383
[8]: 
https://launchpad.net/~oem-solutions-group/+archive/ubuntu/intel-ipu6/+packages
[9]: https://github.com/intel/media-driver/issues/1371

[-- Attachment #2: lspci-nn.txt --]
[-- Type: text/plain, Size: 2622 bytes --]

$ lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation Device [8086:4602] (rev 06)
00:02.0 VGA compatible controller [0300]: Intel Corporation Alder Lake-UP4 GT2 [Iris Xe Graphics] [8086:46aa] (rev 0c)
00:04.0 Signal processing controller [1180]: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant [8086:461d] (rev 06)
00:05.0 Multimedia controller [0480]: Intel Corporation Device [8086:465d] (rev 06)
00:06.0 PCI bridge [0604]: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 [8086:464d] (rev 06)
00:07.0 PCI bridge [0604]: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #0 [8086:466e] (rev 06)
00:07.1 PCI bridge [0604]: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #1 [8086:463f] (rev 06)
00:08.0 System peripheral [0880]: Intel Corporation 12th Gen Core Processor Gaussian & Neural Accelerator [8086:464f] (rev 06)
00:0d.0 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 USB Controller [8086:461e] (rev 06)
00:0d.2 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #0 [8086:463e] (rev 06)
00:12.0 Serial controller [0700]: Intel Corporation Device [8086:51fc] (rev 01)
00:14.0 USB controller [0c03]: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller [8086:51ed] (rev 01)
00:14.2 RAM memory [0500]: Intel Corporation Alder Lake PCH Shared SRAM [8086:51ef] (rev 01)
00:14.3 Network controller [0280]: Intel Corporation Alder Lake-P PCH CNVi WiFi [8086:51f0] (rev 01)
00:15.0 Serial bus controller [0c80]: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 [8086:51e8] (rev 01)
00:15.1 Serial bus controller [0c80]: Intel Corporation Alder Lake PCH Serial IO I2C Controller #1 [8086:51e9] (rev 01)
00:16.0 Communication controller [0780]: Intel Corporation Alder Lake PCH HECI Controller [8086:51e0] (rev 01)
00:1e.0 Communication controller [0780]: Intel Corporation Alder Lake PCH UART #0 [8086:51a8] (rev 01)
00:1e.2 Serial bus controller [0c80]: Intel Corporation Device [8086:51aa] (rev 01)
00:1e.3 Serial bus controller [0c80]: Intel Corporation Device [8086:51ab] (rev 01)
00:1f.0 ISA bridge [0601]: Intel Corporation Device [8086:5187] (rev 01)
00:1f.3 Multimedia audio controller [0401]: Intel Corporation Device [8086:51cc] (rev 01)
00:1f.4 SMBus [0c05]: Intel Corporation Alder Lake PCH-P SMBus Host Controller [8086:51a3] (rev 01)
00:1f.5 Serial bus controller [0c80]: Intel Corporation Alder Lake-P PCH SPI Controller [8086:51a4] (rev 01)
01:00.0 Non-Volatile memory controller [0108]: Phison Electronics Corporation Device [1987:5019] (rev 01)

             reply	other threads:[~2022-08-11  8:23 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-11  8:23 Paul Menzel [this message]
2022-08-11 13:54 ` Missing MIPI IPU6 camera driver for Intel Alder Lake laptops Laurent Pinchart
2022-08-11 15:02   ` Greg KH
2022-08-11 15:08     ` Laurent Pinchart
2022-08-11 15:30       ` Greg KH
2022-08-15  2:06         ` Sergey Senozhatsky
2022-08-15  5:22           ` Laurent Pinchart
2022-08-15  6:36           ` Greg KH
2022-08-15  6:43             ` Sergey Senozhatsky
2022-08-15  7:02               ` Greg KH
2022-08-15  7:07                 ` Sergey Senozhatsky
2022-08-15  7:14                   ` Greg KH
2022-08-15  7:24                     ` Sergey Senozhatsky
2022-08-15  7:40                       ` Laurent Pinchart
2022-08-15 15:14                         ` [External] " Mark Pearson
2022-08-17  9:35                           ` Laurent Pinchart
2022-08-15  7:59                       ` Greg KH
2022-08-17  8:09                     ` Sakari Ailus
2022-08-17  8:14                       ` Greg KH
2022-08-17  9:49                       ` Sergey Senozhatsky
2022-08-15  7:15                   ` Laurent Pinchart
2022-08-15  9:47               ` Sakari Ailus
2022-09-22 13:06     ` Sakari Ailus
2023-05-26 10:51       ` Muhammad Usama Anjum
2023-05-26 11:13         ` Laurent Pinchart
2023-05-28 21:13         ` Sakari Ailus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52c87d91-422d-fca0-4dd5-bbaa559c81b6@molgen.mpg.de \
    --to=pmenzel@molgen.mpg.de \
    --cc=Dell.Client.Kernel@dell.com \
    --cc=andy.yeh@intel.com \
    --cc=apw@canonical.com \
    --cc=bingbu.cao@intel.com \
    --cc=christoph.jechlitschek@intel.com \
    --cc=cschalle@redhat.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=groeck@google.com \
    --cc=hao.yao@intel.com \
    --cc=it+linux-media@molgen.mpg.de \
    --cc=kai.heng.feng@canonical.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=markpearson@lenovo.com \
    --cc=mpalhas@gmail.com \
    --cc=sakari.ailus@linux.intel.com \
    --cc=senozhatsky@chromium.org \
    --cc=tian.shu.qiu@intel.com \
    --cc=wouter@bolsterl.ee \
    --cc=yating.wang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).