mbox series

[0/3,SRU,Unstable,Oracular] Support Integrated Sensor Hub (ISH) for Intel Lunar Lake platform

Message ID 20240909164612.3574008-1-vicamo.yang@canonical.com
Headers show
Series Support Integrated Sensor Hub (ISH) for Intel Lunar Lake platform | expand

Message

You-Sheng Yang Sept. 9, 2024, 4:46 p.m. UTC
BugLink: https://bugs.launchpad.net/bugs/2071698

[Impact]

Starting from Intel Lunar Lake, the ISH firmware will reside in system root as
separated blobs, and the kernel driver is responsible for loading a preferred
one based on DMI info.

[Fix]

Kernel fixes in linux-next:
* aa4674c525e1e hid: intel-ish-hid: Add support for vendor customized firmware
  loading
* 641361538b68d HID: intel-ish-hid: Use CPU generation string in driver_data
* 87de1615194ee Documentation: hid: intel-ish-hid: Add vendor custom firmware
  loading

linux-firmware in upstream tag 20240709:
* 33a8b2a7f604 linux-firmware: Add ISH firmware file for Intel Lunar Lake
  platform

[Test Case]

dmesg dumps:
```
intel_ish_ipc 0000:00:12.0: ISH loader: firmware loaded. size:748032
ish-hid {33AECD58-B679-4E54-9BD9-A04D34F0C226}: [hid-ish]: enum_devices_done OK, num_hid_devices=2
hid-generic 001F:8087:0AC2.0005: hidraw4: SENSOR HUB HID v2.00 Device [hid-ishtp 8087:0AC2] on
hid-generic 001F:8087:0AC2.0006: hidraw5: SENSOR HUB HID v2.00 Device [hid-ishtp 8087:0AC2] on
hid-sensor-hub 001F:8087:0AC2.0005: hidraw4: SENSOR HUB HID v2.00 Device [hid-ishtp 8087:0AC2] on
hid-sensor-hub 001F:8087:0AC2.0006: hidraw5: SENSOR HUB HID v2.00 Device [hid-ishtp 8087:0AC2] on
```

[Where problems could occur]

This is to include generic blob provided by Intel for all Lunar Lake platforms.
It may not be stable, may not be functional, and may have various problems until
the hardware vendor submit their own.

[Other Info]

Nominated for linux/oracular, linux-oem-6.11/noble, linux-firmware/oracular and
linux-firmware/noble.

Zhang Lixu (3):
  Documentation: hid: intel-ish-hid: Add vendor custom firmware loading
  HID: intel-ish-hid: Use CPU generation string in driver_data
  hid: intel-ish-hid: Add support for vendor customized firmware loading

 Documentation/hid/intel-ish-hid.rst         |  29 +++++
 drivers/hid/intel-ish-hid/ipc/pci-ish.c     |  10 +-
 drivers/hid/intel-ish-hid/ishtp/ishtp-dev.h |   8 +-
 drivers/hid/intel-ish-hid/ishtp/loader.c    | 121 +++++++++++++++++++-
 4 files changed, 159 insertions(+), 9 deletions(-)

Comments

Timo Aaltonen Sept. 10, 2024, 6:04 a.m. UTC | #1
You-Sheng Yang kirjoitti 9.9.2024 klo 19.46:
> BugLink: https://bugs.launchpad.net/bugs/2071698
> 
> [Impact]
> 
> Starting from Intel Lunar Lake, the ISH firmware will reside in system root as
> separated blobs, and the kernel driver is responsible for loading a preferred
> one based on DMI info.
> 
> [Fix]
> 
> Kernel fixes in linux-next:
> * aa4674c525e1e hid: intel-ish-hid: Add support for vendor customized firmware
>    loading
> * 641361538b68d HID: intel-ish-hid: Use CPU generation string in driver_data
> * 87de1615194ee Documentation: hid: intel-ish-hid: Add vendor custom firmware
>    loading
> 
> linux-firmware in upstream tag 20240709:
> * 33a8b2a7f604 linux-firmware: Add ISH firmware file for Intel Lunar Lake
>    platform
> 
> [Test Case]
> 
> dmesg dumps:
> ```
> intel_ish_ipc 0000:00:12.0: ISH loader: firmware loaded. size:748032
> ish-hid {33AECD58-B679-4E54-9BD9-A04D34F0C226}: [hid-ish]: enum_devices_done OK, num_hid_devices=2
> hid-generic 001F:8087:0AC2.0005: hidraw4: SENSOR HUB HID v2.00 Device [hid-ishtp 8087:0AC2] on
> hid-generic 001F:8087:0AC2.0006: hidraw5: SENSOR HUB HID v2.00 Device [hid-ishtp 8087:0AC2] on
> hid-sensor-hub 001F:8087:0AC2.0005: hidraw4: SENSOR HUB HID v2.00 Device [hid-ishtp 8087:0AC2] on
> hid-sensor-hub 001F:8087:0AC2.0006: hidraw5: SENSOR HUB HID v2.00 Device [hid-ishtp 8087:0AC2] on
> ```
> 
> [Where problems could occur]
> 
> This is to include generic blob provided by Intel for all Lunar Lake platforms.
> It may not be stable, may not be functional, and may have various problems until
> the hardware vendor submit their own.
> 
> [Other Info]
> 
> Nominated for linux/oracular, linux-oem-6.11/noble, linux-firmware/oracular and
> linux-firmware/noble.
> 
> Zhang Lixu (3):
>    Documentation: hid: intel-ish-hid: Add vendor custom firmware loading
>    HID: intel-ish-hid: Use CPU generation string in driver_data
>    hid: intel-ish-hid: Add support for vendor customized firmware loading
> 
>   Documentation/hid/intel-ish-hid.rst         |  29 +++++
>   drivers/hid/intel-ish-hid/ipc/pci-ish.c     |  10 +-
>   drivers/hid/intel-ish-hid/ishtp/ishtp-dev.h |   8 +-
>   drivers/hid/intel-ish-hid/ishtp/loader.c    | 121 +++++++++++++++++++-
>   4 files changed, 159 insertions(+), 9 deletions(-)
> 

applied to oracular, thanks