** Description changed:

  Considering that the deb2snap work is ongoing, a full update of fwupd is
  unlikely. So I'd like to SRU some quirks to enable fwupd to work with
  Pixart touchpads such as `093A:4F01`.
  
  I'll fill this bug with more info.
  
  The target is resolute, which currently ships 1.2.1. Now the SRU
  template happens:
  
  [Impact]
  
-  * fwupd 2.1.1 in Resolute, 2.1.6 in sotnking  do not recognise four PixArt
-    touchpad product IDs: `HIDRAW\VEN_093A&DEV_4F01`, `4F02`, `4F0D`, `4F0E`. 
On
-    laptops with these the `pixart_tp` plugin never binds, so the device is 
absent
-    from `fwupdmgr get-devices` and cannot be updated using fwupd.
+  * fwupd 2.1.1 in Resolute, 2.1.6 in sotnking  do not recognise four PixArt
+    touchpad product IDs: `HIDRAW\VEN_093A&DEV_4F01`, `4F02`, `4F0D`, `4F0E`. 
On
+    laptops with these the `pixart_tp` plugin never binds, so the device is 
absent
+    from `fwupdmgr get-devices` and cannot be updated using fwupd.
  
-  * The enablement is a quirk-file addition: four new `[HIDRAW\...]` stanzas
-    mapping the PIDs to the existing `pixart_tp` plugin. No new code paths
-    or GTypes. Backported from `ec8e62c0a`.
+  * The enablement is a quirk-file addition: four new `[HIDRAW\...]` stanzas
+    mapping the PIDs to the existing `pixart_tp` plugin. No new code paths
+    or GTypes. Backported from `ec8e62c0a`.
  
-  * Three further upstream commits are included for resolute, because enabling
-    the PIDs makes the `pixart_tp` write path reachable and that path has three
-    integer in 2.1.1:
+  * Three further upstream commits are included for resolute, because enabling
+    the PIDs makes the `pixart_tp` write path reachable and that path has three
+    integer in 2.1.1:
  
-    - `dab8aa782` — erase-loop counter in `fu_pixart_tp_device_write_section()`
-      is a `guint8` compared against a `guint` chunk count; wraps past 256.
-    - `061b3481b` — flash sector index cast to `guint8` with no range check, 
so a
-      target flash start beyond 1 MB silently wrapped and erased the wrong
-      sector. Widened to `guint` with an explicit `sector > G_MAXUINT8` check.
-    - `35679d37b` — matching chunk-count guard in
-      `fu_pixart_tp_device_write_sector()`.
+    - `dab8aa782` — erase-loop counter in `fu_pixart_tp_device_write_section()`
+      is a `guint8` compared against a `guint` chunk count; wraps past 256.
+    - `061b3481b` — flash sector index cast to `guint8` with no range check, 
so a
+      target flash start beyond 1 MB silently wrapped and erased the wrong
+      sector. Widened to `guint` with an explicit `sector > G_MAXUINT8` check.
+    - `35679d37b` — matching chunk-count guard in
+      `fu_pixart_tp_device_write_sector()`.
  
  [Test Plan]
  
  Requires hardware with a 093A:{4F01,4F02,4F0D,4F0E} touchpad.
  
  Before the proposed version the touchpad is absent from
  `sudo fwupdmgr get-devices --show-all`, and
  `sudo fwupdtool get-devices --plugins=pixart_tp --verbose` shows no device
  claimed by the plugin.
  
  After updating to the proposed version the touchpad is listed, handled by 
`pixart_tp`,
  with a firmware version and the GUID for its PID:
  
  | PID  | GUID                                 |
  | ---- | ------------------------------------ |
  | 4F01 | 1c8ab7e8-eb64-5729-9084-d2f3039fbc88 |
  | 4F02 | 1c9157be-a59b-5fac-82b7-2b51701888a5 |
  | 4F0D | 4827c4ca-8a12-591f-8869-8357571170df |
  | 4F0E | f2cf3818-3c12-54b0-964c-d9b94e632479 |
  
  Testing the write path is currently not possible, because there is yet no
  update available on LVFS.
  
  [Where problems could occur]
  
-  * An error in the quirk file could lead to failing to parse and not detect 
any
-    pixart touchpads anymore.
+  * An error in the quirk file could lead to failing to parse and not detect 
any
+    pixart touchpads anymore.
  
-  * A new error for all PixArt touchpads.
-    `fu_pixart_tp_device_flash_erase_sector()` now returns
-    `FWUPD_ERROR_INVALID_DATA` where it previously truncated silently.  If a 
device
-    legitimately addresses at or above 1 MB, `fwupdmgr install` now can fail 
with
-    "sector 0x... exceeds maximum". This can show up on the old devices.
+  * A new error for all PixArt touchpads.
+    `fu_pixart_tp_device_flash_erase_sector()` now returns
+    `FWUPD_ERROR_INVALID_DATA` where it previously truncated silently.  If a 
device
+    legitimately addresses at or above 1 MB, `fwupdmgr install` now can fail 
with
+    "sector 0x... exceeds maximum". This can show up on the old devices.
  
  [Other Info]
  
-  * Upstream commits:
-    - `ec8e62c0a4c50758adb43c4faac8b0baab28cde1` - Add PID 4F01, 4F02, 4F0D, 
4F0E - 2.1.8
-    - `dab8aa7820aa09fa53922630832a6c986ee1887c` - Use guint for chunk 
iteration - 2.1.2
-    - `061b3481bafe846bc86737702b00f733b09712bc` - Fix sector index truncation 
- 2.1.2
-    - `35679d37b0dbe7d69ba3b163a090d9c38adf7f32` - Fix narrow/wide comparison 
- 2.1.3
+  * Upstream commits:
+    - `ec8e62c0a4c50758adb43c4faac8b0baab28cde1` - Add PID 4F01, 4F02, 4F0D, 
4F0E - 2.1.8
+    - `dab8aa7820aa09fa53922630832a6c986ee1887c` - Use guint for chunk 
iteration - 2.1.2
+    - `061b3481bafe846bc86737702b00f733b09712bc` - Fix sector index truncation 
- 2.1.2
+    - `35679d37b0dbe7d69ba3b163a090d9c38adf7f32` - Fix narrow/wide comparison 
- 2.1.3
  
-  * hardening is bundled with a quirks-only SRU, because the defects are only
-    reachable once a write is attempted, and this SRU is what makes writes
-    possible on this hardware.
+  * hardening is bundled with a quirks-only SRU, because the defects are only
+    reachable once a write is attempted, and this SRU is what makes writes
+    possible on this hardware.
  
-  * note on `061b3481b`. Upstream also modifies
-    `fu-pixart-tp-plp239-device.c`, which does not exist in 2.1.1 (added later 
by
-    `2535bbfcd`). Those chunks are dropped. This is documented in the patch 
header.
+  * note on `061b3481b`. Upstream also modifies
+    `fu-pixart-tp-plp239-device.c`, which does not exist in 2.1.1 (added later 
by
+    `2535bbfcd`). Those chunks are dropped. This is documented in the patch 
header.
+ 
+  * Currently building in
+ https://launchpad.net/~aglinserer/+archive/ubuntu/fwupd-2169954

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2169954

Title:
  [SRU] enable Pixart touchpads

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/fwupd/+bug/2169954/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to