mbox series

[00/30,SRU,Jammy] Support Intel IPU6 MIPI camera on Alder Lake platforms

Message ID 20220117151928.954829-1-vicamo.yang@canonical.com
Headers show
Series Support Intel IPU6 MIPI camera on Alder Lake platforms | expand

Message

You-Sheng Yang Jan. 17, 2022, 3:18 p.m. UTC
BugLink: https://bugs.launchpad.net/bugs/1955383

[Impact]

To support Intel IPU6 MIPI camera on Alder Lake platforms.

[Fix]

Initial support for Intel IPU6 MIPI camera on Tiger Lake platforms has
been addressed by bug 1921345 and 1939539. They are backported from
https://github.com/intel/ipu6-drivers.

Further works to enable IPU6 camera on Alder Lake platforms depend on a
few more fixes from same ipu6-drivers repository, as well as an extra
https://github.com/intel/ivsc-driver for Intel Vision Sensing
Controller(IVSC).

[Test Case]

This depends on an integral of enablement components inclusive of the
kernel drivers that are being proposed, firmware, updates for the
userspace camera hardware abstration layer library and a gstreamer
element as what we have for Tiger Lake platforms.

[Where problems could occur]

It's confirmed Intel IPU6 MIPI camera doesn't support suspend at
streaming.

On Jammy, while intel_iommu is turned on in bug 1951440, it breaks
current IPU6 driver implementation and can be worked-around with
intel_iommu=off temporarily. A follow-up bug 1958004 has been filed.

Besides, since UBSAN is also on since Ubuntu 5.15 kernels, multiple
warnings have been detected and filed as bug 1958006. No function
impact observed so far.

[Other Info]

Before this, we did not submit IPU6 driver for generic kernel due to
the lack of a solid commitment from the vendor to upstream this
before kernel camera API is out. There is still no such commitment,
but during the process we've been able to address version migration
issues and we would continue to do so. We're getting to have the
confidence that it's possible to maintain and share the support for
generic Ubuntu users.

Fixes for oem-5.14 have been merged, so here we nominate for Jammy
only. This patchset is almost identical to that for oem-5.14 except
one additioanl fix for 5.15 kernel API change in "UBUNTU: SAUCE: Fix
build error for kernel 5.15".

Hao Yao (1):
  UBUNTU: SAUCE: IPU6 driver release for kernel 5.14 on 2021-11-01

Ignacio Hernandez (1):
  UBUNTU: SAUCE: Fix build error for kernel 5.15

Wang Yating (14):
  UBUNTU: SAUCE: intel ipu drivers first release
  UBUNTU: SAUCE: IPU driver release WW48
  UBUNTU: SAUCE: IPU driver release WW48 with MCU
  UBUNTU: SAUCE: IPU driver release WW52
  UBUNTU: SAUCE: IPU driver release WW04
  UBUNTU: SAUCE: IPU driver release WW14
  UBUNTU: SAUCE: Fix ov01a1s output mirror issue
  UBUNTU: SAUCE: integrate IPU6 builds
  UBUNTU: SAUCE: Fix ov01a1s IQ issues
  UBUNTU: SAUCE: intel/ipu6: Remove unnecessary video devices
  UBUNTU: SAUCE: change power control driver to acpi driver
  UBUNTU: SAUCE: IPU6 driver release for kernel 5.13
  UBUNTU: SAUCE: sensor HM11b1 brightness bugfix
  UBUNTU: SAUCE: Fix build error on Kernel 5.13

Wentong Wu (4):
  UBUNTU: SAUCE: intel visual sensing controller(VSC) driver first
    release
  UBUNTU: SAUCE: ivsc: return error when device not ready
  UBUNTU: SAUCE: ivsc: add soft dependencies for intel_vsc module
  UBUNTU: SAUCE: ivsc: add delay for acquire camera to wait firmware
    ready

Ye Xiang (7):
  UBUNTU: SAUCE: ljca: switch wait event to uninterruptible
  UBUNTU: SAUCE: mei-vsc: switch wait event to uninterruptible
  UBUNTU: SAUCE: mei_vsc: add ACPI HID for ADL
  UBUNTU: SAUCE: ljca: add multi ACPI HID support
  UBUNTU: SAUCE: mei_vsc: distinguish platform with different camera
    sensor
  UBUNTU: SAUCE: i2c-ljca: fix a potential issue
  UBUNTU: SAUCE: ljca: disable autosuspend by default

You-Sheng Yang (3):
  UBUNTU: [Config] updateconfigs for IPU6 driver
  UBUNTU: [Config] IPU6: enable OV01A10 sensor
  UBUNTU: [Config] ivsc: enable Intel VSC drivers

 .../config/amd64/config.common.amd64          |    6 +
 .../config/arm64/config.common.arm64          |    6 +
 .../config/armhf/config.common.armhf          |    5 +
 debian.master/config/config.common.ubuntu     |   10 +
 .../config/ppc64el/config.common.ppc64el      |    5 +
 .../config/s390x/config.common.s390x          |    3 +
 drivers/gpio/Kconfig                          |   11 +
 drivers/gpio/Makefile                         |    1 +
 drivers/gpio/gpio-ljca.c                      |  468 +++++
 drivers/i2c/busses/Kconfig                    |   10 +
 drivers/i2c/busses/Makefile                   |    1 +
 drivers/i2c/busses/i2c-ljca.c                 |  422 ++++
 drivers/media/i2c/Kconfig                     |   55 +
 drivers/media/i2c/Makefile                    |    5 +
 drivers/media/i2c/hm11b1.c                    | 1102 +++++++++++
 drivers/media/i2c/ov01a10.c                   |  934 +++++++++
 drivers/media/i2c/ov01a1s.c                   |  949 +++++++++
 drivers/media/i2c/power_ctrl_logic.c          |  147 ++
 drivers/media/i2c/power_ctrl_logic.h          |    9 +
 drivers/media/pci/Kconfig                     |    2 +-
 drivers/media/pci/intel/Kconfig               |   20 +
 drivers/media/pci/intel/Makefile              |   11 +-
 drivers/media/pci/intel/ipu-bus.c             |  254 +++
 drivers/media/pci/intel/ipu-bus.h             |   67 +
 drivers/media/pci/intel/ipu-buttress.c        | 1372 +++++++++++++
 drivers/media/pci/intel/ipu-buttress.h        |  128 ++
 drivers/media/pci/intel/ipu-cpd.c             |  465 +++++
 drivers/media/pci/intel/ipu-cpd.h             |  110 ++
 drivers/media/pci/intel/ipu-dma.c             |  406 ++++
 drivers/media/pci/intel/ipu-dma.h             |   19 +
 drivers/media/pci/intel/ipu-fw-com.c          |  496 +++++
 drivers/media/pci/intel/ipu-fw-com.h          |   48 +
 drivers/media/pci/intel/ipu-fw-isys.c         |  600 ++++++
 drivers/media/pci/intel/ipu-fw-isys.h         |  816 ++++++++
 drivers/media/pci/intel/ipu-fw-psys.c         |  430 ++++
 drivers/media/pci/intel/ipu-fw-psys.h         |  382 ++++
 .../media/pci/intel/ipu-isys-csi2-be-soc.c    |  341 ++++
 drivers/media/pci/intel/ipu-isys-csi2-be.c    |  325 +++
 drivers/media/pci/intel/ipu-isys-csi2-be.h    |   63 +
 drivers/media/pci/intel/ipu-isys-csi2.c       |  655 ++++++
 drivers/media/pci/intel/ipu-isys-csi2.h       |  164 ++
 drivers/media/pci/intel/ipu-isys-media.h      |   77 +
 drivers/media/pci/intel/ipu-isys-queue.c      | 1063 ++++++++++
 drivers/media/pci/intel/ipu-isys-queue.h      |  142 ++
 drivers/media/pci/intel/ipu-isys-subdev.c     |  650 ++++++
 drivers/media/pci/intel/ipu-isys-subdev.h     |  152 ++
 drivers/media/pci/intel/ipu-isys-tpg.c        |  311 +++
 drivers/media/pci/intel/ipu-isys-tpg.h        |   99 +
 drivers/media/pci/intel/ipu-isys-video.c      | 1748 +++++++++++++++++
 drivers/media/pci/intel/ipu-isys-video.h      |  178 ++
 drivers/media/pci/intel/ipu-isys.c            | 1355 +++++++++++++
 drivers/media/pci/intel/ipu-isys.h            |  227 +++
 drivers/media/pci/intel/ipu-mmu.c             |  858 ++++++++
 drivers/media/pci/intel/ipu-mmu.h             |   76 +
 drivers/media/pci/intel/ipu-pdata.h           |  242 +++
 drivers/media/pci/intel/ipu-psys-compat32.c   |  225 +++
 drivers/media/pci/intel/ipu-psys.c            | 1618 +++++++++++++++
 drivers/media/pci/intel/ipu-psys.h            |  217 ++
 drivers/media/pci/intel/ipu-trace.c           |  869 ++++++++
 drivers/media/pci/intel/ipu-trace.h           |  146 ++
 drivers/media/pci/intel/ipu.c                 |  823 ++++++++
 drivers/media/pci/intel/ipu.h                 |  109 +
 drivers/media/pci/intel/ipu6/Makefile         |   58 +
 .../media/pci/intel/ipu6/ipu-fw-resources.c   |  103 +
 .../intel/ipu6/ipu-platform-buttress-regs.h   |  317 +++
 .../intel/ipu6/ipu-platform-isys-csi2-reg.h   |  277 +++
 .../media/pci/intel/ipu6/ipu-platform-isys.h  |   26 +
 .../media/pci/intel/ipu6/ipu-platform-psys.h  |   78 +
 .../media/pci/intel/ipu6/ipu-platform-regs.h  |  333 ++++
 .../pci/intel/ipu6/ipu-platform-resources.h   |  103 +
 drivers/media/pci/intel/ipu6/ipu-platform.h   |   34 +
 drivers/media/pci/intel/ipu6/ipu-resources.c  |  851 ++++++++
 .../media/pci/intel/ipu6/ipu6-fw-resources.c  |  608 ++++++
 drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c |  513 +++++
 drivers/media/pci/intel/ipu6/ipu6-isys-csi2.h |   14 +
 drivers/media/pci/intel/ipu6/ipu6-isys-gpc.c  |  203 ++
 drivers/media/pci/intel/ipu6/ipu6-isys-phy.c  |  595 ++++++
 drivers/media/pci/intel/ipu6/ipu6-isys-phy.h  |  159 ++
 drivers/media/pci/intel/ipu6/ipu6-isys.c      |  174 ++
 .../media/pci/intel/ipu6/ipu6-l-scheduler.c   |  615 ++++++
 .../pci/intel/ipu6/ipu6-platform-resources.h  |  196 ++
 drivers/media/pci/intel/ipu6/ipu6-ppg.c       |  560 ++++++
 drivers/media/pci/intel/ipu6/ipu6-ppg.h       |   38 +
 drivers/media/pci/intel/ipu6/ipu6-psys-gpc.c  |  210 ++
 drivers/media/pci/intel/ipu6/ipu6-psys.c      | 1032 ++++++++++
 drivers/media/pci/intel/ipu6/ipu6.c           |  333 ++++
 .../pci/intel/ipu6/ipu6ep-fw-resources.c      |  393 ++++
 .../intel/ipu6/ipu6ep-platform-resources.h    |   42 +
 .../pci/intel/ipu6/ipu6se-fw-resources.c      |  194 ++
 .../intel/ipu6/ipu6se-platform-resources.h    |  103 +
 drivers/mfd/Kconfig                           |   10 +
 drivers/mfd/Makefile                          |    2 +
 drivers/mfd/ljca.c                            | 1191 +++++++++++
 drivers/misc/Kconfig                          |    1 +
 drivers/misc/Makefile                         |    1 +
 drivers/misc/ivsc/Kconfig                     |   40 +
 drivers/misc/ivsc/Makefile                    |    9 +
 drivers/misc/ivsc/intel_vsc.c                 |  250 +++
 drivers/misc/ivsc/intel_vsc.h                 |  177 ++
 drivers/misc/ivsc/mei_ace.c                   |  589 ++++++
 drivers/misc/ivsc/mei_ace_debug.c             |  696 +++++++
 drivers/misc/ivsc/mei_csi.c                   |  456 +++++
 drivers/misc/ivsc/mei_pse.c                   |  944 +++++++++
 drivers/misc/mei/Kconfig                      |    7 +
 drivers/misc/mei/Makefile                     |    4 +
 drivers/misc/mei/hw-vsc.c                     | 1637 +++++++++++++++
 drivers/misc/mei/hw-vsc.h                     |  378 ++++
 drivers/misc/mei/spi-vsc.c                    |  293 +++
 drivers/spi/Kconfig                           |   10 +
 drivers/spi/Makefile                          |    1 +
 drivers/spi/spi-ljca.c                        |  328 ++++
 drivers/usb/Kconfig                           |    2 +
 drivers/usb/Makefile                          |    2 +
 drivers/usb/intel_ulpss/Kconfig               |   11 +
 drivers/usb/intel_ulpss/Makefile              |    3 +
 drivers/usb/intel_ulpss/diag_stub.c           |  116 ++
 drivers/usb/intel_ulpss/diag_stub.h           |   19 +
 drivers/usb/intel_ulpss/gpio_stub.c           |  459 +++++
 drivers/usb/intel_ulpss/gpio_stub.h           |   13 +
 drivers/usb/intel_ulpss/i2c_stub.c            |  456 +++++
 drivers/usb/intel_ulpss/i2c_stub.h            |   21 +
 drivers/usb/intel_ulpss/mng_stub.c            |  244 +++
 drivers/usb/intel_ulpss/mng_stub.h            |   18 +
 .../usb/intel_ulpss/protocol_intel_ulpss.h    |  173 ++
 drivers/usb/intel_ulpss/ulpss_bridge.c        |  529 +++++
 drivers/usb/intel_ulpss/ulpss_bridge.h        |   77 +
 drivers/usb/intel_ulpss/usb_stub.c            |  285 +++
 drivers/usb/intel_ulpss/usb_stub.h            |   49 +
 include/linux/mfd/ljca.h                      |   47 +
 include/linux/vsc.h                           |   83 +
 include/media/ipu-isys.h                      |   44 +
 include/uapi/linux/ipu-isys.h                 |   15 +
 include/uapi/linux/ipu-psys.h                 |  121 ++
 133 files changed, 40479 insertions(+), 2 deletions(-)
 create mode 100644 drivers/gpio/gpio-ljca.c
 create mode 100644 drivers/i2c/busses/i2c-ljca.c
 create mode 100644 drivers/media/i2c/hm11b1.c
 create mode 100644 drivers/media/i2c/ov01a10.c
 create mode 100644 drivers/media/i2c/ov01a1s.c
 create mode 100644 drivers/media/i2c/power_ctrl_logic.c
 create mode 100644 drivers/media/i2c/power_ctrl_logic.h
 create mode 100644 drivers/media/pci/intel/Kconfig
 create mode 100644 drivers/media/pci/intel/ipu-bus.c
 create mode 100644 drivers/media/pci/intel/ipu-bus.h
 create mode 100644 drivers/media/pci/intel/ipu-buttress.c
 create mode 100644 drivers/media/pci/intel/ipu-buttress.h
 create mode 100644 drivers/media/pci/intel/ipu-cpd.c
 create mode 100644 drivers/media/pci/intel/ipu-cpd.h
 create mode 100644 drivers/media/pci/intel/ipu-dma.c
 create mode 100644 drivers/media/pci/intel/ipu-dma.h
 create mode 100644 drivers/media/pci/intel/ipu-fw-com.c
 create mode 100644 drivers/media/pci/intel/ipu-fw-com.h
 create mode 100644 drivers/media/pci/intel/ipu-fw-isys.c
 create mode 100644 drivers/media/pci/intel/ipu-fw-isys.h
 create mode 100644 drivers/media/pci/intel/ipu-fw-psys.c
 create mode 100644 drivers/media/pci/intel/ipu-fw-psys.h
 create mode 100644 drivers/media/pci/intel/ipu-isys-csi2-be-soc.c
 create mode 100644 drivers/media/pci/intel/ipu-isys-csi2-be.c
 create mode 100644 drivers/media/pci/intel/ipu-isys-csi2-be.h
 create mode 100644 drivers/media/pci/intel/ipu-isys-csi2.c
 create mode 100644 drivers/media/pci/intel/ipu-isys-csi2.h
 create mode 100644 drivers/media/pci/intel/ipu-isys-media.h
 create mode 100644 drivers/media/pci/intel/ipu-isys-queue.c
 create mode 100644 drivers/media/pci/intel/ipu-isys-queue.h
 create mode 100644 drivers/media/pci/intel/ipu-isys-subdev.c
 create mode 100644 drivers/media/pci/intel/ipu-isys-subdev.h
 create mode 100644 drivers/media/pci/intel/ipu-isys-tpg.c
 create mode 100644 drivers/media/pci/intel/ipu-isys-tpg.h
 create mode 100644 drivers/media/pci/intel/ipu-isys-video.c
 create mode 100644 drivers/media/pci/intel/ipu-isys-video.h
 create mode 100644 drivers/media/pci/intel/ipu-isys.c
 create mode 100644 drivers/media/pci/intel/ipu-isys.h
 create mode 100644 drivers/media/pci/intel/ipu-mmu.c
 create mode 100644 drivers/media/pci/intel/ipu-mmu.h
 create mode 100644 drivers/media/pci/intel/ipu-pdata.h
 create mode 100644 drivers/media/pci/intel/ipu-psys-compat32.c
 create mode 100644 drivers/media/pci/intel/ipu-psys.c
 create mode 100644 drivers/media/pci/intel/ipu-psys.h
 create mode 100644 drivers/media/pci/intel/ipu-trace.c
 create mode 100644 drivers/media/pci/intel/ipu-trace.h
 create mode 100644 drivers/media/pci/intel/ipu.c
 create mode 100644 drivers/media/pci/intel/ipu.h
 create mode 100644 drivers/media/pci/intel/ipu6/Makefile
 create mode 100644 drivers/media/pci/intel/ipu6/ipu-fw-resources.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-buttress-regs.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-isys-csi2-reg.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-isys.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-psys.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-regs.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-resources.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu-resources.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-fw-resources.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-csi2.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-gpc.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-phy.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-phy.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-l-scheduler.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-platform-resources.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-ppg.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-ppg.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-psys-gpc.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6-psys.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6ep-fw-resources.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6ep-platform-resources.h
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6se-fw-resources.c
 create mode 100644 drivers/media/pci/intel/ipu6/ipu6se-platform-resources.h
 create mode 100644 drivers/mfd/ljca.c
 create mode 100644 drivers/misc/ivsc/Kconfig
 create mode 100644 drivers/misc/ivsc/Makefile
 create mode 100644 drivers/misc/ivsc/intel_vsc.c
 create mode 100644 drivers/misc/ivsc/intel_vsc.h
 create mode 100644 drivers/misc/ivsc/mei_ace.c
 create mode 100644 drivers/misc/ivsc/mei_ace_debug.c
 create mode 100644 drivers/misc/ivsc/mei_csi.c
 create mode 100644 drivers/misc/ivsc/mei_pse.c
 create mode 100644 drivers/misc/mei/hw-vsc.c
 create mode 100644 drivers/misc/mei/hw-vsc.h
 create mode 100644 drivers/misc/mei/spi-vsc.c
 create mode 100644 drivers/spi/spi-ljca.c
 create mode 100644 drivers/usb/intel_ulpss/Kconfig
 create mode 100644 drivers/usb/intel_ulpss/Makefile
 create mode 100644 drivers/usb/intel_ulpss/diag_stub.c
 create mode 100644 drivers/usb/intel_ulpss/diag_stub.h
 create mode 100644 drivers/usb/intel_ulpss/gpio_stub.c
 create mode 100644 drivers/usb/intel_ulpss/gpio_stub.h
 create mode 100644 drivers/usb/intel_ulpss/i2c_stub.c
 create mode 100644 drivers/usb/intel_ulpss/i2c_stub.h
 create mode 100644 drivers/usb/intel_ulpss/mng_stub.c
 create mode 100644 drivers/usb/intel_ulpss/mng_stub.h
 create mode 100644 drivers/usb/intel_ulpss/protocol_intel_ulpss.h
 create mode 100644 drivers/usb/intel_ulpss/ulpss_bridge.c
 create mode 100644 drivers/usb/intel_ulpss/ulpss_bridge.h
 create mode 100644 drivers/usb/intel_ulpss/usb_stub.c
 create mode 100644 drivers/usb/intel_ulpss/usb_stub.h
 create mode 100644 include/linux/mfd/ljca.h
 create mode 100644 include/linux/vsc.h
 create mode 100644 include/media/ipu-isys.h
 create mode 100644 include/uapi/linux/ipu-isys.h
 create mode 100644 include/uapi/linux/ipu-psys.h

Comments

You-Sheng Yang March 11, 2022, 7:55 a.m. UTC | #1
Replaced by no change rebase in
https://lists.ubuntu.com/archives/kernel-team/2022-March/128576.html

On Mon, Jan 17, 2022 at 11:20 PM You-Sheng Yang
<vicamo.yang@canonical.com> wrote:
>
> BugLink: https://bugs.launchpad.net/bugs/1955383
>
> [Impact]
>
> To support Intel IPU6 MIPI camera on Alder Lake platforms.
>
> [Fix]
>
> Initial support for Intel IPU6 MIPI camera on Tiger Lake platforms has
> been addressed by bug 1921345 and 1939539. They are backported from
> https://github.com/intel/ipu6-drivers.
>
> Further works to enable IPU6 camera on Alder Lake platforms depend on a
> few more fixes from same ipu6-drivers repository, as well as an extra
> https://github.com/intel/ivsc-driver for Intel Vision Sensing
> Controller(IVSC).
>
> [Test Case]
>
> This depends on an integral of enablement components inclusive of the
> kernel drivers that are being proposed, firmware, updates for the
> userspace camera hardware abstration layer library and a gstreamer
> element as what we have for Tiger Lake platforms.
>
> [Where problems could occur]
>
> It's confirmed Intel IPU6 MIPI camera doesn't support suspend at
> streaming.
>
> On Jammy, while intel_iommu is turned on in bug 1951440, it breaks
> current IPU6 driver implementation and can be worked-around with
> intel_iommu=off temporarily. A follow-up bug 1958004 has been filed.
>
> Besides, since UBSAN is also on since Ubuntu 5.15 kernels, multiple
> warnings have been detected and filed as bug 1958006. No function
> impact observed so far.
>
> [Other Info]
>
> Before this, we did not submit IPU6 driver for generic kernel due to
> the lack of a solid commitment from the vendor to upstream this
> before kernel camera API is out. There is still no such commitment,
> but during the process we've been able to address version migration
> issues and we would continue to do so. We're getting to have the
> confidence that it's possible to maintain and share the support for
> generic Ubuntu users.
>
> Fixes for oem-5.14 have been merged, so here we nominate for Jammy
> only. This patchset is almost identical to that for oem-5.14 except
> one additioanl fix for 5.15 kernel API change in "UBUNTU: SAUCE: Fix
> build error for kernel 5.15".
>
> Hao Yao (1):
>   UBUNTU: SAUCE: IPU6 driver release for kernel 5.14 on 2021-11-01
>
> Ignacio Hernandez (1):
>   UBUNTU: SAUCE: Fix build error for kernel 5.15
>
> Wang Yating (14):
>   UBUNTU: SAUCE: intel ipu drivers first release
>   UBUNTU: SAUCE: IPU driver release WW48
>   UBUNTU: SAUCE: IPU driver release WW48 with MCU
>   UBUNTU: SAUCE: IPU driver release WW52
>   UBUNTU: SAUCE: IPU driver release WW04
>   UBUNTU: SAUCE: IPU driver release WW14
>   UBUNTU: SAUCE: Fix ov01a1s output mirror issue
>   UBUNTU: SAUCE: integrate IPU6 builds
>   UBUNTU: SAUCE: Fix ov01a1s IQ issues
>   UBUNTU: SAUCE: intel/ipu6: Remove unnecessary video devices
>   UBUNTU: SAUCE: change power control driver to acpi driver
>   UBUNTU: SAUCE: IPU6 driver release for kernel 5.13
>   UBUNTU: SAUCE: sensor HM11b1 brightness bugfix
>   UBUNTU: SAUCE: Fix build error on Kernel 5.13
>
> Wentong Wu (4):
>   UBUNTU: SAUCE: intel visual sensing controller(VSC) driver first
>     release
>   UBUNTU: SAUCE: ivsc: return error when device not ready
>   UBUNTU: SAUCE: ivsc: add soft dependencies for intel_vsc module
>   UBUNTU: SAUCE: ivsc: add delay for acquire camera to wait firmware
>     ready
>
> Ye Xiang (7):
>   UBUNTU: SAUCE: ljca: switch wait event to uninterruptible
>   UBUNTU: SAUCE: mei-vsc: switch wait event to uninterruptible
>   UBUNTU: SAUCE: mei_vsc: add ACPI HID for ADL
>   UBUNTU: SAUCE: ljca: add multi ACPI HID support
>   UBUNTU: SAUCE: mei_vsc: distinguish platform with different camera
>     sensor
>   UBUNTU: SAUCE: i2c-ljca: fix a potential issue
>   UBUNTU: SAUCE: ljca: disable autosuspend by default
>
> You-Sheng Yang (3):
>   UBUNTU: [Config] updateconfigs for IPU6 driver
>   UBUNTU: [Config] IPU6: enable OV01A10 sensor
>   UBUNTU: [Config] ivsc: enable Intel VSC drivers
>
>  .../config/amd64/config.common.amd64          |    6 +
>  .../config/arm64/config.common.arm64          |    6 +
>  .../config/armhf/config.common.armhf          |    5 +
>  debian.master/config/config.common.ubuntu     |   10 +
>  .../config/ppc64el/config.common.ppc64el      |    5 +
>  .../config/s390x/config.common.s390x          |    3 +
>  drivers/gpio/Kconfig                          |   11 +
>  drivers/gpio/Makefile                         |    1 +
>  drivers/gpio/gpio-ljca.c                      |  468 +++++
>  drivers/i2c/busses/Kconfig                    |   10 +
>  drivers/i2c/busses/Makefile                   |    1 +
>  drivers/i2c/busses/i2c-ljca.c                 |  422 ++++
>  drivers/media/i2c/Kconfig                     |   55 +
>  drivers/media/i2c/Makefile                    |    5 +
>  drivers/media/i2c/hm11b1.c                    | 1102 +++++++++++
>  drivers/media/i2c/ov01a10.c                   |  934 +++++++++
>  drivers/media/i2c/ov01a1s.c                   |  949 +++++++++
>  drivers/media/i2c/power_ctrl_logic.c          |  147 ++
>  drivers/media/i2c/power_ctrl_logic.h          |    9 +
>  drivers/media/pci/Kconfig                     |    2 +-
>  drivers/media/pci/intel/Kconfig               |   20 +
>  drivers/media/pci/intel/Makefile              |   11 +-
>  drivers/media/pci/intel/ipu-bus.c             |  254 +++
>  drivers/media/pci/intel/ipu-bus.h             |   67 +
>  drivers/media/pci/intel/ipu-buttress.c        | 1372 +++++++++++++
>  drivers/media/pci/intel/ipu-buttress.h        |  128 ++
>  drivers/media/pci/intel/ipu-cpd.c             |  465 +++++
>  drivers/media/pci/intel/ipu-cpd.h             |  110 ++
>  drivers/media/pci/intel/ipu-dma.c             |  406 ++++
>  drivers/media/pci/intel/ipu-dma.h             |   19 +
>  drivers/media/pci/intel/ipu-fw-com.c          |  496 +++++
>  drivers/media/pci/intel/ipu-fw-com.h          |   48 +
>  drivers/media/pci/intel/ipu-fw-isys.c         |  600 ++++++
>  drivers/media/pci/intel/ipu-fw-isys.h         |  816 ++++++++
>  drivers/media/pci/intel/ipu-fw-psys.c         |  430 ++++
>  drivers/media/pci/intel/ipu-fw-psys.h         |  382 ++++
>  .../media/pci/intel/ipu-isys-csi2-be-soc.c    |  341 ++++
>  drivers/media/pci/intel/ipu-isys-csi2-be.c    |  325 +++
>  drivers/media/pci/intel/ipu-isys-csi2-be.h    |   63 +
>  drivers/media/pci/intel/ipu-isys-csi2.c       |  655 ++++++
>  drivers/media/pci/intel/ipu-isys-csi2.h       |  164 ++
>  drivers/media/pci/intel/ipu-isys-media.h      |   77 +
>  drivers/media/pci/intel/ipu-isys-queue.c      | 1063 ++++++++++
>  drivers/media/pci/intel/ipu-isys-queue.h      |  142 ++
>  drivers/media/pci/intel/ipu-isys-subdev.c     |  650 ++++++
>  drivers/media/pci/intel/ipu-isys-subdev.h     |  152 ++
>  drivers/media/pci/intel/ipu-isys-tpg.c        |  311 +++
>  drivers/media/pci/intel/ipu-isys-tpg.h        |   99 +
>  drivers/media/pci/intel/ipu-isys-video.c      | 1748 +++++++++++++++++
>  drivers/media/pci/intel/ipu-isys-video.h      |  178 ++
>  drivers/media/pci/intel/ipu-isys.c            | 1355 +++++++++++++
>  drivers/media/pci/intel/ipu-isys.h            |  227 +++
>  drivers/media/pci/intel/ipu-mmu.c             |  858 ++++++++
>  drivers/media/pci/intel/ipu-mmu.h             |   76 +
>  drivers/media/pci/intel/ipu-pdata.h           |  242 +++
>  drivers/media/pci/intel/ipu-psys-compat32.c   |  225 +++
>  drivers/media/pci/intel/ipu-psys.c            | 1618 +++++++++++++++
>  drivers/media/pci/intel/ipu-psys.h            |  217 ++
>  drivers/media/pci/intel/ipu-trace.c           |  869 ++++++++
>  drivers/media/pci/intel/ipu-trace.h           |  146 ++
>  drivers/media/pci/intel/ipu.c                 |  823 ++++++++
>  drivers/media/pci/intel/ipu.h                 |  109 +
>  drivers/media/pci/intel/ipu6/Makefile         |   58 +
>  .../media/pci/intel/ipu6/ipu-fw-resources.c   |  103 +
>  .../intel/ipu6/ipu-platform-buttress-regs.h   |  317 +++
>  .../intel/ipu6/ipu-platform-isys-csi2-reg.h   |  277 +++
>  .../media/pci/intel/ipu6/ipu-platform-isys.h  |   26 +
>  .../media/pci/intel/ipu6/ipu-platform-psys.h  |   78 +
>  .../media/pci/intel/ipu6/ipu-platform-regs.h  |  333 ++++
>  .../pci/intel/ipu6/ipu-platform-resources.h   |  103 +
>  drivers/media/pci/intel/ipu6/ipu-platform.h   |   34 +
>  drivers/media/pci/intel/ipu6/ipu-resources.c  |  851 ++++++++
>  .../media/pci/intel/ipu6/ipu6-fw-resources.c  |  608 ++++++
>  drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c |  513 +++++
>  drivers/media/pci/intel/ipu6/ipu6-isys-csi2.h |   14 +
>  drivers/media/pci/intel/ipu6/ipu6-isys-gpc.c  |  203 ++
>  drivers/media/pci/intel/ipu6/ipu6-isys-phy.c  |  595 ++++++
>  drivers/media/pci/intel/ipu6/ipu6-isys-phy.h  |  159 ++
>  drivers/media/pci/intel/ipu6/ipu6-isys.c      |  174 ++
>  .../media/pci/intel/ipu6/ipu6-l-scheduler.c   |  615 ++++++
>  .../pci/intel/ipu6/ipu6-platform-resources.h  |  196 ++
>  drivers/media/pci/intel/ipu6/ipu6-ppg.c       |  560 ++++++
>  drivers/media/pci/intel/ipu6/ipu6-ppg.h       |   38 +
>  drivers/media/pci/intel/ipu6/ipu6-psys-gpc.c  |  210 ++
>  drivers/media/pci/intel/ipu6/ipu6-psys.c      | 1032 ++++++++++
>  drivers/media/pci/intel/ipu6/ipu6.c           |  333 ++++
>  .../pci/intel/ipu6/ipu6ep-fw-resources.c      |  393 ++++
>  .../intel/ipu6/ipu6ep-platform-resources.h    |   42 +
>  .../pci/intel/ipu6/ipu6se-fw-resources.c      |  194 ++
>  .../intel/ipu6/ipu6se-platform-resources.h    |  103 +
>  drivers/mfd/Kconfig                           |   10 +
>  drivers/mfd/Makefile                          |    2 +
>  drivers/mfd/ljca.c                            | 1191 +++++++++++
>  drivers/misc/Kconfig                          |    1 +
>  drivers/misc/Makefile                         |    1 +
>  drivers/misc/ivsc/Kconfig                     |   40 +
>  drivers/misc/ivsc/Makefile                    |    9 +
>  drivers/misc/ivsc/intel_vsc.c                 |  250 +++
>  drivers/misc/ivsc/intel_vsc.h                 |  177 ++
>  drivers/misc/ivsc/mei_ace.c                   |  589 ++++++
>  drivers/misc/ivsc/mei_ace_debug.c             |  696 +++++++
>  drivers/misc/ivsc/mei_csi.c                   |  456 +++++
>  drivers/misc/ivsc/mei_pse.c                   |  944 +++++++++
>  drivers/misc/mei/Kconfig                      |    7 +
>  drivers/misc/mei/Makefile                     |    4 +
>  drivers/misc/mei/hw-vsc.c                     | 1637 +++++++++++++++
>  drivers/misc/mei/hw-vsc.h                     |  378 ++++
>  drivers/misc/mei/spi-vsc.c                    |  293 +++
>  drivers/spi/Kconfig                           |   10 +
>  drivers/spi/Makefile                          |    1 +
>  drivers/spi/spi-ljca.c                        |  328 ++++
>  drivers/usb/Kconfig                           |    2 +
>  drivers/usb/Makefile                          |    2 +
>  drivers/usb/intel_ulpss/Kconfig               |   11 +
>  drivers/usb/intel_ulpss/Makefile              |    3 +
>  drivers/usb/intel_ulpss/diag_stub.c           |  116 ++
>  drivers/usb/intel_ulpss/diag_stub.h           |   19 +
>  drivers/usb/intel_ulpss/gpio_stub.c           |  459 +++++
>  drivers/usb/intel_ulpss/gpio_stub.h           |   13 +
>  drivers/usb/intel_ulpss/i2c_stub.c            |  456 +++++
>  drivers/usb/intel_ulpss/i2c_stub.h            |   21 +
>  drivers/usb/intel_ulpss/mng_stub.c            |  244 +++
>  drivers/usb/intel_ulpss/mng_stub.h            |   18 +
>  .../usb/intel_ulpss/protocol_intel_ulpss.h    |  173 ++
>  drivers/usb/intel_ulpss/ulpss_bridge.c        |  529 +++++
>  drivers/usb/intel_ulpss/ulpss_bridge.h        |   77 +
>  drivers/usb/intel_ulpss/usb_stub.c            |  285 +++
>  drivers/usb/intel_ulpss/usb_stub.h            |   49 +
>  include/linux/mfd/ljca.h                      |   47 +
>  include/linux/vsc.h                           |   83 +
>  include/media/ipu-isys.h                      |   44 +
>  include/uapi/linux/ipu-isys.h                 |   15 +
>  include/uapi/linux/ipu-psys.h                 |  121 ++
>  133 files changed, 40479 insertions(+), 2 deletions(-)
>  create mode 100644 drivers/gpio/gpio-ljca.c
>  create mode 100644 drivers/i2c/busses/i2c-ljca.c
>  create mode 100644 drivers/media/i2c/hm11b1.c
>  create mode 100644 drivers/media/i2c/ov01a10.c
>  create mode 100644 drivers/media/i2c/ov01a1s.c
>  create mode 100644 drivers/media/i2c/power_ctrl_logic.c
>  create mode 100644 drivers/media/i2c/power_ctrl_logic.h
>  create mode 100644 drivers/media/pci/intel/Kconfig
>  create mode 100644 drivers/media/pci/intel/ipu-bus.c
>  create mode 100644 drivers/media/pci/intel/ipu-bus.h
>  create mode 100644 drivers/media/pci/intel/ipu-buttress.c
>  create mode 100644 drivers/media/pci/intel/ipu-buttress.h
>  create mode 100644 drivers/media/pci/intel/ipu-cpd.c
>  create mode 100644 drivers/media/pci/intel/ipu-cpd.h
>  create mode 100644 drivers/media/pci/intel/ipu-dma.c
>  create mode 100644 drivers/media/pci/intel/ipu-dma.h
>  create mode 100644 drivers/media/pci/intel/ipu-fw-com.c
>  create mode 100644 drivers/media/pci/intel/ipu-fw-com.h
>  create mode 100644 drivers/media/pci/intel/ipu-fw-isys.c
>  create mode 100644 drivers/media/pci/intel/ipu-fw-isys.h
>  create mode 100644 drivers/media/pci/intel/ipu-fw-psys.c
>  create mode 100644 drivers/media/pci/intel/ipu-fw-psys.h
>  create mode 100644 drivers/media/pci/intel/ipu-isys-csi2-be-soc.c
>  create mode 100644 drivers/media/pci/intel/ipu-isys-csi2-be.c
>  create mode 100644 drivers/media/pci/intel/ipu-isys-csi2-be.h
>  create mode 100644 drivers/media/pci/intel/ipu-isys-csi2.c
>  create mode 100644 drivers/media/pci/intel/ipu-isys-csi2.h
>  create mode 100644 drivers/media/pci/intel/ipu-isys-media.h
>  create mode 100644 drivers/media/pci/intel/ipu-isys-queue.c
>  create mode 100644 drivers/media/pci/intel/ipu-isys-queue.h
>  create mode 100644 drivers/media/pci/intel/ipu-isys-subdev.c
>  create mode 100644 drivers/media/pci/intel/ipu-isys-subdev.h
>  create mode 100644 drivers/media/pci/intel/ipu-isys-tpg.c
>  create mode 100644 drivers/media/pci/intel/ipu-isys-tpg.h
>  create mode 100644 drivers/media/pci/intel/ipu-isys-video.c
>  create mode 100644 drivers/media/pci/intel/ipu-isys-video.h
>  create mode 100644 drivers/media/pci/intel/ipu-isys.c
>  create mode 100644 drivers/media/pci/intel/ipu-isys.h
>  create mode 100644 drivers/media/pci/intel/ipu-mmu.c
>  create mode 100644 drivers/media/pci/intel/ipu-mmu.h
>  create mode 100644 drivers/media/pci/intel/ipu-pdata.h
>  create mode 100644 drivers/media/pci/intel/ipu-psys-compat32.c
>  create mode 100644 drivers/media/pci/intel/ipu-psys.c
>  create mode 100644 drivers/media/pci/intel/ipu-psys.h
>  create mode 100644 drivers/media/pci/intel/ipu-trace.c
>  create mode 100644 drivers/media/pci/intel/ipu-trace.h
>  create mode 100644 drivers/media/pci/intel/ipu.c
>  create mode 100644 drivers/media/pci/intel/ipu.h
>  create mode 100644 drivers/media/pci/intel/ipu6/Makefile
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu-fw-resources.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-buttress-regs.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-isys-csi2-reg.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-isys.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-psys.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-regs.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform-resources.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu-platform.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu-resources.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-fw-resources.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-csi2.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-gpc.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-phy.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-phy.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-l-scheduler.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-platform-resources.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-ppg.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-ppg.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-psys-gpc.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-psys.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6ep-fw-resources.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6ep-platform-resources.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6se-fw-resources.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6se-platform-resources.h
>  create mode 100644 drivers/mfd/ljca.c
>  create mode 100644 drivers/misc/ivsc/Kconfig
>  create mode 100644 drivers/misc/ivsc/Makefile
>  create mode 100644 drivers/misc/ivsc/intel_vsc.c
>  create mode 100644 drivers/misc/ivsc/intel_vsc.h
>  create mode 100644 drivers/misc/ivsc/mei_ace.c
>  create mode 100644 drivers/misc/ivsc/mei_ace_debug.c
>  create mode 100644 drivers/misc/ivsc/mei_csi.c
>  create mode 100644 drivers/misc/ivsc/mei_pse.c
>  create mode 100644 drivers/misc/mei/hw-vsc.c
>  create mode 100644 drivers/misc/mei/hw-vsc.h
>  create mode 100644 drivers/misc/mei/spi-vsc.c
>  create mode 100644 drivers/spi/spi-ljca.c
>  create mode 100644 drivers/usb/intel_ulpss/Kconfig
>  create mode 100644 drivers/usb/intel_ulpss/Makefile
>  create mode 100644 drivers/usb/intel_ulpss/diag_stub.c
>  create mode 100644 drivers/usb/intel_ulpss/diag_stub.h
>  create mode 100644 drivers/usb/intel_ulpss/gpio_stub.c
>  create mode 100644 drivers/usb/intel_ulpss/gpio_stub.h
>  create mode 100644 drivers/usb/intel_ulpss/i2c_stub.c
>  create mode 100644 drivers/usb/intel_ulpss/i2c_stub.h
>  create mode 100644 drivers/usb/intel_ulpss/mng_stub.c
>  create mode 100644 drivers/usb/intel_ulpss/mng_stub.h
>  create mode 100644 drivers/usb/intel_ulpss/protocol_intel_ulpss.h
>  create mode 100644 drivers/usb/intel_ulpss/ulpss_bridge.c
>  create mode 100644 drivers/usb/intel_ulpss/ulpss_bridge.h
>  create mode 100644 drivers/usb/intel_ulpss/usb_stub.c
>  create mode 100644 drivers/usb/intel_ulpss/usb_stub.h
>  create mode 100644 include/linux/mfd/ljca.h
>  create mode 100644 include/linux/vsc.h
>  create mode 100644 include/media/ipu-isys.h
>  create mode 100644 include/uapi/linux/ipu-isys.h
>  create mode 100644 include/uapi/linux/ipu-psys.h
>
> --
> 2.33.1
>
>
> --
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team