** Also affects: linux-oem-6.11 (Ubuntu)
Importance: Undecided
Status: New
** Also affects: usbio-drivers (Ubuntu Noble)
Importance: Undecided
Status: New
** Also affects: linux-oem-6.11 (Ubuntu Noble)
Importance: Undecided
Status: New
** Changed in: linux-oem-6.11 (Ubuntu Noble)
Status: New => Fix Committed
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux-oem-6.11 in Ubuntu.
https://bugs.launchpad.net/bugs/2102186
Title:
wrong packet header size calculation
Status in linux-oem-6.11 package in Ubuntu:
New
Status in usbio-drivers package in Ubuntu:
Fix Released
Status in linux-oem-6.11 source package in Noble:
Fix Committed
Status in usbio-drivers source package in Noble:
New
Status in linux-oem-6.11 source package in Oracular:
New
Status in usbio-drivers source package in Oracular:
In Progress
Status in linux-oem-6.11 source package in Plucky:
New
Status in usbio-drivers source package in Plucky:
Fix Committed
Status in linux-oem-6.11 source package in Questing:
New
Status in usbio-drivers source package in Questing:
Fix Released
Bug description:
[SRU Justification]
[ Impact ]
This is a necessary part to enable Intel IPU6 MIPI camera on another
Intel Arrow Lake platform.
In addition, in bug 2071821 at enabling Intel MIPI camera for Intel
Lunar Lake platform on Dell XPS 13 9350, the request frame header size
changed to reflect protocol 1.0 updates -- the value field in struct
gpio_rw_packet is not included in the outgoing frame of a GPIO_READ
operation. An work-around now known as https://github.com/intel/usbio-
drivers/pull/14 was proposed by Intel and was then carried in Ubuntu
usbio-drivers package since version
0~git202408092230.70c524c5-0ubuntu1 in Oracular.
The pull request is to:
1. If the platform is Lunar Lake and it has a special gpio-usbio
device -- function `is_gpio_hid_v1_0` returns true -- then it omits
the last four bytes,
2. else, transfer whatever is given.
Since then, the work-around is never merged as Intel promised, and
finally it received an official solution as
https://github.com/intel/usbio-
drivers/commit/b022c9a73d9ff9d455a913dd478b047228d844e2.
However, this fix is more like an fix for another typo and is not
logical equivalent to the original hack. This fix corrects the line
with `sizeof(header)` to `sizeof(*header)`, which effectively reduces
4 bytes as the original hack did, but this time, globally to every
platform, every configuration.
While the proposal is to drop that PR-14 in favor of this sizeof fix,
the net effect is that for every device doesn't get matched from the
`is_gpio_hid_v1_0` function, the xfer len will be reduced to 4 bytes.
This was considered causing regression on all other devices with an
older usbio protocol then 1.0 as mentioned in
https://github.com/intel/usbio-drivers/pull/14#discussion_r1693451687,
but the Intel CVS team claimed this is never an issue, the pull
request is never a candidate to be merged, and Intel has verified all
the related devices.
While we don't really have a 0.7 usbio firmware device to verify, and
that can also be an engineering sample that couldn't actually exist in
public, the proposal is then justified.
[ Test Plan ]
1. This is a critical part for enabling a new Intel Arrow Lake
platform, and we also picked a few devices inclusive of
OASM4-DVT2-C2-202312-33214, a MTL platform with gpio-usbio.
2. For existing platforms, this should be an drop-in replacement to
existing systems. Just install intel-usbio-dkms from -proposed pocket
and reboot to same kernel.
$ sudo apt-get install intel-usbio-dkms
3. For the new ARL system, install following packages to create a
verification environtment:
$ sudo apt-get install --no-install-recommends --yes \
linux-oem-24.04b \
intel-ipu6-dkms \
intel-usbio-dkms \
v4l2loopback-dkms \
gstreamer1.0-icamera \
libcamhal-ipu6epmtl \
v4l2-relayd
4. Verify webcam working on http://webcamtests.com
[ Where problems could occur ]
We don't have the firmware source to verify the protocol changes, and
we don't own a device that matches a potential regression concern.
Still worry about a potential regression, but I don't have a proof.
[ Other Info ]
The device enablement is on linux-oem-6.11. Nominate updates to
Oracular, Plucky, and Questing.
========== original bug report ==========
The work-around proposed by driver vendor,
https://git.launchpad.net/ubuntu/+source/usbio-
drivers/tree/debian/patches/0003-mfd-usbio-gpio-read-payload-
reduces-4-bytes.patch?h=applied/ubuntu/devel, is wrong. A corrected
version is now merged in the upstream as
https://github.com/intel/usbio-
drivers/commit/b022c9a73d9ff9d455a913dd478b047228d844e2 .
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-oem-6.11/+bug/2102186/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp