APPLIED/cmnt: [SRU][linux-firmware][Jammy][PULL] Add firmware for Intel Visual Sensing Controller

Juerg Haefliger juerg.haefliger at canonical.com
Wed Jan 5 13:04:13 UTC 2022


Applied to linux-firmware jammy branch.

Note that I changed the 'backported from' lines to:

(backported from commit <HASH> github.com/intel/ivsc-firmware)
[vicamo: correct paths, WHENCE.ubuntu]

...Juerg


> BugLink: https://bugs.launchpad.net/bugs/1956426
> 
> [Impact]
> 
> Need firmware blob for Intel Visual Sensing Controller for IPU6 cameras on
> Intel Alder Lake platforms.
> 
> [Fix]
> 
> Two commits from upstream repo https://github.com/intel/ivsc-firmware main
> branch. While Intel has no plan to upstream their IPU6 driver before
> kernel camera API is out, the firmware blobs will probably stay where they
> are until the plan changed.
> 
> [Test Case]
> 
> This would take both kernel and firmware fixes, as well as updates for
> the userspace middleware, gstreamer element plugin, to enable the device.
> With all of them in position, one should be able to browse camera with
> legacy camera apps like cheese.
> 
> [Where problems could occur]
> 
> It's confirmed Intel IPU6 MIPI camera doesn't support suspend at
> streaming.
> 
> [Other Info]
> 
> This is a follow-up for bug 1955383, which at the time being SRU-ed, Intel
> has not yet published these ivsc fw for redistribution.
> 
> ----------------------------------------------------------------
> 
> The following changes since commit a951474d58f985abb4b770983e732fe1e18859ec:
> 
>   UBUNTU: [Packaging] Downgrade firmware-sof-signed depends to recommends (2022-01-04 16:07:13 +0100)
> 
> are available in the Git repository at:
> 
>   https://git.launchpad.net/~vicamo/ubuntu/+source/linux-firmware bug-1956426/intel-vsc-fw/jammy-pull
> 
> for you to fetch changes up to 8b75f745c45d85bc94cb5c04a7fa1d1c91497d93:
> 
>   UBUNTU: SAUCE: firmware: add support of more sensors (2022-01-05 16:11:07 +0800)
> 
> ----------------------------------------------------------------
> Wentong Wu (2):
>       UBUNTU: SAUCE: first release of ivsc firmware binaries
>       UBUNTU: SAUCE: firmware: add support of more sensors
> 
>  LICENSE.ivsc_firmware                        |  38 +++++++++++++++++++++
>  WHENCE.ubuntu                                |  49 +++++++++++++++++++++++++++
>  vsc/soc_a1_prod/ivsc_fw.bin                  | Bin 0 -> 962320 bytes
>  vsc/soc_a1_prod/ivsc_pkg_hi556_0.bin         | Bin 0 -> 730204 bytes
>  vsc/soc_a1_prod/ivsc_pkg_himx11b1_0.bin      | Bin 0 -> 730204 bytes
>  vsc/soc_a1_prod/ivsc_pkg_ovti01a0_0.bin      | Bin 0 -> 726108 bytes
>  vsc/soc_a1_prod/ivsc_pkg_ovti01af_0.bin      | Bin 0 -> 726108 bytes
>  vsc/soc_a1_prod/ivsc_pkg_ovti01as_0.bin      | Bin 0 -> 726108 bytes
>  vsc/soc_a1_prod/ivsc_pkg_ovti02c1_0.bin      | Bin 0 -> 722012 bytes
>  vsc/soc_a1_prod/ivsc_pkg_ovti2740_0.bin      | Bin 0 -> 726108 bytes
>  vsc/soc_a1_prod/ivsc_pkg_ovti5678_0.bin      | Bin 0 -> 726108 bytes
>  vsc/soc_a1_prod/ivsc_pkg_ovti9734_0.bin      | Bin 0 -> 730204 bytes
>  vsc/soc_a1_prod/ivsc_pkg_ovti9738_0.bin      | Bin 0 -> 730204 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_hi556_0_1.bin    | Bin 0 -> 4100 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_himx11b1_0_1.bin | Bin 0 -> 4100 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_ovti01a0_0_1.bin | Bin 0 -> 4100 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_ovti01af_0_1.bin | Bin 0 -> 4100 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_ovti01as_0_1.bin | Bin 0 -> 4100 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_ovti02c1_0_1.bin | Bin 0 -> 4100 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_ovti2740_0_1.bin | Bin 0 -> 4100 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_ovti5678_0_1.bin | Bin 0 -> 4100 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_ovti9734_0_1.bin | Bin 0 -> 4100 bytes
>  vsc/soc_a1_prod/ivsc_skucfg_ovti9738_0_1.bin | Bin 0 -> 4100 bytes
>  23 files changed, 87 insertions(+)
>  create mode 100644 LICENSE.ivsc_firmware
>  create mode 100644 vsc/soc_a1_prod/ivsc_fw.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_hi556_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_himx11b1_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_ovti01a0_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_ovti01af_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_ovti01as_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_ovti02c1_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_ovti2740_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_ovti5678_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_ovti9734_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_pkg_ovti9738_0.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_hi556_0_1.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_himx11b1_0_1.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_ovti01a0_0_1.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_ovti01af_0_1.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_ovti01as_0_1.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_ovti02c1_0_1.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_ovti2740_0_1.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_ovti5678_0_1.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_ovti9734_0_1.bin
>  create mode 100644 vsc/soc_a1_prod/ivsc_skucfg_ovti9738_0_1.bin
> 
> diff --git a/LICENSE.ivsc_firmware b/LICENSE.ivsc_firmware
> new file mode 100644
> index 000000000000..9296d82e8305
> --- /dev/null
> +++ b/LICENSE.ivsc_firmware
> @@ -0,0 +1,38 @@
> +Copyright (c) Intel Corporation.
> +
> +Redistribution.  Redistribution and use in binary form, without
> +modification, are permitted provided that the following conditions are
> +met:
> +
> +* Redistributions must reproduce the above copyright notice and the
> +  following disclaimer in the documentation and/or other materials
> +  provided with the distribution.
> +* Neither the name of Intel Corporation nor the names of its suppliers
> +  may be used to endorse or promote products derived from this software
> +  without specific prior written permission.
> +* No reverse engineering, decompilation, or disassembly of this software
> +  is permitted.
> +
> +Limited patent license.  Intel Corporation grants a world-wide,
> +royalty-free, non-exclusive license under patents it now or hereafter
> +owns or controls to make, have made, use, import, offer to sell and
> +sell ("Utilize") this software, but solely to the extent that any
> +such patent is necessary to Utilize the software alone, or in
> +combination with an operating system licensed under an approved Open
> +Source license as listed by the Open Source Initiative at
> +http://opensource.org/licenses.  The patent license shall not apply to
> +any other combinations which include this software.  No hardware per
> +se is licensed hereunder.
> +
> +DISCLAIMER.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
> +CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
> +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
> +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> +COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
> +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
> +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
> +OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
> +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
> +TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
> +USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
> +DAMAGE.
> diff --git a/WHENCE.ubuntu b/WHENCE.ubuntu
> index aa3c3381e5e8..7b37da155b6a 100644
> --- a/WHENCE.ubuntu
> +++ b/WHENCE.ubuntu
> @@ -157,5 +157,54 @@ File: intel/ipu6ep_fw.bin
>  Licence: Redistributable. See LICENSE.ipu6_firmware for details.
>  Also available from https://github.com/intel/ipu6-camera-bins/blob/main/LICENSE
>  
> +--------------------------------------------------------------------------
> +
> +Driver: mei-vsc - Intel Vision Sensing Controller device with ME interface
> +
> +File: vsc/soc_a1_prod/ivsc_fw.bin
> +Link: vsc/soc_a1_prod/ivsc_fw_a1_prod.bin -> ivsc_fw.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_hi556_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_hi556_0_a1_prod.bin -> ivsc_pkg_hi556_0.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_himx11b1_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_himx11b1_0_a1_prod.bin -> ivsc_pkg_himx11b1_0.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_ovti01a0_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_ovti01a0_0_a1_prod.bin -> ivsc_pkg_ovti01a0_0.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_ovti01af_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_ovti01af_0_a1_prod.bin -> ivsc_pkg_ovti01af_0.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_ovti01as_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_ovti01as_0_a1_prod.bin -> ivsc_pkg_ovti01as_0.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_ovti02c1_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_ovti02c1_0_a1_prod.bin -> ivsc_pkg_ovti02c1_0.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_ovti2740_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_ovti2740_0_a1_prod.bin -> ivsc_pkg_ovti2740_0.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_ovti5678_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_ovti5678_0_a1_prod.bin -> ivsc_pkg_ovti5678_0.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_ovti9734_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_ovti9734_0_a1_prod.bin -> ivsc_pkg_ovti9734_0.bin
> +File: vsc/soc_a1_prod/ivsc_pkg_ovti9738_0.bin
> +Link: vsc/soc_a1_prod/ivsc_pkg_ovti9738_0_a1_prod.bin -> ivsc_pkg_ovti9738_0.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_hi556_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_hi556_0_1_a1_prod.bin -> ivsc_skucfg_hi556_0_1.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_himx11b1_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_himx11b1_0_1_a1_prod.bin -> ivsc_skucfg_himx11b1_0_1.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_ovti01a0_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_ovti01a0_0_1_a1_prod.bin -> ivsc_skucfg_ovti01a0_0_1.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_ovti01af_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_ovti01af_0_1_a1_prod.bin -> ivsc_skucfg_ovti01af_0_1.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_ovti01as_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_ovti01as_0_1_a1_prod.bin -> ivsc_skucfg_ovti01as_0_1.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_ovti02c1_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_ovti02c1_0_1_a1_prod.bin -> ivsc_skucfg_ovti02c1_0_1.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_ovti2740_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_ovti2740_0_1_a1_prod.bin -> ivsc_skucfg_ovti2740_0_1.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_ovti5678_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_ovti5678_0_1_a1_prod.bin -> ivsc_skucfg_ovti5678_0_1.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_ovti9734_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_ovti9734_0_1_a1_prod.bin -> ivsc_skucfg_ovti9734_0_1.bin
> +File: vsc/soc_a1_prod/ivsc_skucfg_ovti9738_0_1.bin
> +Link: vsc/soc_a1_prod/ivsc_skucfg_ovti9738_0_1_a1_prod.bin -> ivsc_skucfg_ovti9738_0_1.bin
> +
> +Licence: Redistributable. See LICENSE.ivsc_firmware for details.
> +Also available from https://github.com/intel/ivsc-firmware/blob/main/LICENSE
>  
>  --------------------------------------------------------------------------
> diff --git a/vsc/soc_a1_prod/ivsc_fw.bin b/vsc/soc_a1_prod/ivsc_fw.bin
> new file mode 100644
> index 000000000000..75570481adb1
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_fw.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_hi556_0.bin b/vsc/soc_a1_prod/ivsc_pkg_hi556_0.bin
> new file mode 100644
> index 000000000000..5e8f9a298fa3
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_hi556_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_himx11b1_0.bin b/vsc/soc_a1_prod/ivsc_pkg_himx11b1_0.bin
> new file mode 100644
> index 000000000000..6b9a84386d65
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_himx11b1_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_ovti01a0_0.bin b/vsc/soc_a1_prod/ivsc_pkg_ovti01a0_0.bin
> new file mode 100644
> index 000000000000..dcd63546baec
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_ovti01a0_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_ovti01af_0.bin b/vsc/soc_a1_prod/ivsc_pkg_ovti01af_0.bin
> new file mode 100644
> index 000000000000..dcd63546baec
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_ovti01af_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_ovti01as_0.bin b/vsc/soc_a1_prod/ivsc_pkg_ovti01as_0.bin
> new file mode 100644
> index 000000000000..dcd63546baec
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_ovti01as_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_ovti02c1_0.bin b/vsc/soc_a1_prod/ivsc_pkg_ovti02c1_0.bin
> new file mode 100644
> index 000000000000..5d4b323f425d
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_ovti02c1_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_ovti2740_0.bin b/vsc/soc_a1_prod/ivsc_pkg_ovti2740_0.bin
> new file mode 100644
> index 000000000000..3ccdfe9a4589
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_ovti2740_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_ovti5678_0.bin b/vsc/soc_a1_prod/ivsc_pkg_ovti5678_0.bin
> new file mode 100644
> index 000000000000..f256e3df402c
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_ovti5678_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_ovti9734_0.bin b/vsc/soc_a1_prod/ivsc_pkg_ovti9734_0.bin
> new file mode 100644
> index 000000000000..304a60c4cc49
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_ovti9734_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_pkg_ovti9738_0.bin b/vsc/soc_a1_prod/ivsc_pkg_ovti9738_0.bin
> new file mode 100644
> index 000000000000..4d3bf7616c32
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_pkg_ovti9738_0.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_hi556_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_hi556_0_1.bin
> new file mode 100644
> index 000000000000..1c20e4e5c667
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_hi556_0_1.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_himx11b1_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_himx11b1_0_1.bin
> new file mode 100644
> index 000000000000..87cb375a9a5d
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_himx11b1_0_1.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_ovti01a0_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_ovti01a0_0_1.bin
> new file mode 100644
> index 000000000000..92b334a22657
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_ovti01a0_0_1.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_ovti01af_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_ovti01af_0_1.bin
> new file mode 100644
> index 000000000000..92b334a22657
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_ovti01af_0_1.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_ovti01as_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_ovti01as_0_1.bin
> new file mode 100644
> index 000000000000..92b334a22657
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_ovti01as_0_1.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_ovti02c1_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_ovti02c1_0_1.bin
> new file mode 100644
> index 000000000000..83de5b70d9b7
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_ovti02c1_0_1.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_ovti2740_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_ovti2740_0_1.bin
> new file mode 100644
> index 000000000000..8fe84c003024
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_ovti2740_0_1.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_ovti5678_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_ovti5678_0_1.bin
> new file mode 100644
> index 000000000000..5f5c4fdad28a
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_ovti5678_0_1.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_ovti9734_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_ovti9734_0_1.bin
> new file mode 100644
> index 000000000000..1db6887abb35
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_ovti9734_0_1.bin differ
> diff --git a/vsc/soc_a1_prod/ivsc_skucfg_ovti9738_0_1.bin b/vsc/soc_a1_prod/ivsc_skucfg_ovti9738_0_1.bin
> new file mode 100644
> index 000000000000..8fe84c003024
> Binary files /dev/null and b/vsc/soc_a1_prod/ivsc_skucfg_ovti9738_0_1.bin differ
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20220105/6a480720/attachment-0001.sig>


More information about the kernel-team mailing list