Merge branch 'wwan-iosm-fw-flashing'
authorDavid S. Miller <davem@davemloft.net>
Mon, 20 Sep 2021 09:04:01 +0000 (10:04 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 20 Sep 2021 09:04:01 +0000 (10:04 +0100)
commit13f356f5dc9de17181fa255a379fde29eea060d4
treef7c57b33a1304c698db558a8a6a641fff44ddc7d
parentd44fd8604a4ab92119adb35f05fd87612af722b5
parent607d574aba6e2b3adb5cd5cff31194bd31a8048e
Merge branch 'wwan-iosm-fw-flashing'

M Chetan Kumar says:

====================
net: wwan: iosm: fw flashing & cd collection

This patch series brings-in support for M.2 7560 Device firmware flashing &
coredump collection using devlink.
- Driver Registers with Devlink framework.
- Register devlink params callback for configuring device params
  required in flashing or coredump flow.
- Implements devlink ops flash_update callback that programs modem
  firmware.
- Creates region & snapshot required for device coredump log collection.

On early detection of device in boot rom stage. Driver registers with
Devlink framework and establish transport channel for PSI (Primary Signed
Image) injection. Once PSI is injected to device, the device execution
stage details are read to determine whether device is in flash or
exception mode. The collected information is reported to devlink user
space application & based on this informationi, application proceeds with
either modem firmware flashing or coredump collection.

Refer to iosm devlink documentation for details on Devlink Params, flash
update and coredump collection command usage.

Note: Patches are interdependent. Need to apply complete patch series for
compilation.

Changes since v1:
  * Break down single patch into multiple patches.
  * IOSM Driver devlink documentation.
  * Fixes NULL parameter deference in ipc_devlink_flash_update() reported
    by smatch static checker.
  * Fixes memory leak in ipc_devlink_create_region().
  * Use kmemdup instead of kzalloc and memcpy in ipc_flash_boot_psi().
  * Fixes linux-net build error.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>