~vicamo/+git/ubuntu-kernel:bug-1997936/fm350-fw-update-failure/oem-6.0

Last commit made on 2022-12-13
Get this branch:
git clone -b bug-1997936/fm350-fw-update-failure/oem-6.0 https://git.launchpad.net/~vicamo/+git/ubuntu-kernel
Only You-Sheng Yang can upload to this branch. If you are You-Sheng Yang please log in for upload directions.

Branch merges

Branch information

Name:
bug-1997936/fm350-fw-update-failure/oem-6.0
Repository:
lp:~vicamo/+git/ubuntu-kernel

Recent commits

88681fb... by You-Sheng Yang

Bug 1997936: FM350 FW update failure

b76b2fd... by M Chetan Kumar <email address hidden>

net: wwan: t7xx: Enable devlink based fw flashing and coredump collection

BugLink: https://bugs.launchpad.net/somerville/+bug/1997936

This patch brings-in support for t7xx wwan device firmware flashing &
coredump collection using devlink.

Driver Registers with Devlink framework.
Implements devlink ops flash_update callback that programs modem firmware.
Creates region & snapshot required for device coredump log collection.
On early detection of wwan device in fastboot mode driver sets up CLDMA0 HW
tx/rx queues for raw data transfer then registers with devlink framework.
Upon receiving firmware image & partition details driver sends fastboot
commands for flashing the firmware.

In this flow the fastboot command & response gets exchanged between driver
and device. Once firmware flashing is success completion status is reported
to user space application.

Below is the devlink command usage for firmware flashing

$devlink dev flash pci/$BDF file ABC.img component ABC

Note: ABC.img is the firmware to be programmed to "ABC" partition.

In case of coredump collection when wwan device encounters an exception
it reboots & stays in fastboot mode for coredump collection by host driver.
On detecting exception state driver collects the core dump, creates the
devlink region & reports an event to user space application for dump
collection. The user space application invokes devlink region read command
for dump collection.

Below are the devlink commands used for coredump collection.

devlink region new pci/$BDF/mr_dump
devlink region read pci/$BDF/mr_dump snapshot $ID address $ADD length $LEN
devlink region del pci/$BDF/mr_dump snapshot $ID

Signed-off-by: M Chetan Kumar <email address hidden>
Signed-off-by: Devegowda Chandrashekar <email address hidden>
Signed-off-by: Mishra Soumya Prakash <email address hidden>
Signed-off-by: David S. Miller <email address hidden>
(cherry picked from commit 87dae9e70bf7be2bd8a3c561fe3ddf666eb8a7a4)
Signed-off-by: You-Sheng Yang (vicamo) <email address hidden>

b6035cc... by Haijun Liu <email address hidden>

net: wwan: t7xx: PCIe reset rescan

https://bugs.launchpad.net/somerville/+bug/1997936

PCI rescan module implements "rescan work queue". In firmware flashing
or coredump collection procedure WWAN device is programmed to boot in
fastboot mode and a work item is scheduled for removal & detection.
The WWAN device is reset using APCI call as part driver removal flow.
Work queue rescans pci bus at fixed interval for device detection,
later when device is detect work queue exits.

Signed-off-by: Haijun Liu <email address hidden>
Co-developed-by: Madhusmita Sahu <email address hidden>
Signed-off-by: Madhusmita Sahu <email address hidden>
Signed-off-by: Ricardo Martinez <email address hidden>
Signed-off-by: M Chetan Kumar <email address hidden>
Signed-off-by: Devegowda Chandrashekar <email address hidden>
Signed-off-by: David S. Miller <email address hidden>
(cherry picked from commit 140424d90165d83c75b23ead7c3573bb6dd74f50)
Signed-off-by: You-Sheng Yang (vicamo) <email address hidden>

2766f95... by Haijun Liu <email address hidden>

net: wwan: t7xx: Infrastructure for early port configuration

BugLink: https://bugs.launchpad.net/somerville/+bug/1997936

To support cases such as FW update or Core dump, the t7xx device
is capable of signaling the host that a special port needs
to be created before the handshake phase.

This patch adds the infrastructure required to create the
early ports which also requires a different configuration of
CLDMA queues.

Signed-off-by: Haijun Liu <email address hidden>
Co-developed-by: Madhusmita Sahu <email address hidden>
Signed-off-by: Madhusmita Sahu <email address hidden>
Signed-off-by: Ricardo Martinez <email address hidden>
Signed-off-by: Devegowda Chandrashekar <email address hidden>
Signed-off-by: M Chetan Kumar <email address hidden>
Signed-off-by: David S. Miller <email address hidden>
(cherry picked from commit 007f26f0d68e28509d369fe0e71845e095bdd955)
Signed-off-by: You-Sheng Yang (vicamo) <email address hidden>

7d877af... by You-Sheng Yang

UBUNTU: SAUCE: net: wwan: t7xx: skip timeout error in pm_init

BugLink: https://bugs.launchpad.net/somerville/+bug/1997936
Signed-off-by: You-Sheng Yang (vicamo) <email address hidden>

63472c2... by You-Sheng Yang

Revert "net: wwan: t7xx: use union to group port type specific data"

This reverts commit e2804719986d245b77d8dc4fcee1db83b7f11833.

2db0061... by You-Sheng Yang

Revert "net: wwan: t7xx: Add port for modem logging"

This reverts commit 68f90704c02d3913cec0c008ae6a0aedee43b511.

31ce124... by You-Sheng Yang

Experimental linux-oem-6.0/jammy changes

33190c6... by Szuying Chen <email address hidden>

thunderbolt: Add support for ASMedia NVM image format

BugLink: https://bugs.launchpad.net/amd/+bug/1989001

Add support for ASMedia specific NVM image format. This makes it
possible to upgrade the NVM firmware of ASMedia routers in addition to
Intel ones.

Signed-off-by: Szuying Chen <email address hidden>
Signed-off-by: Mika Westerberg <email address hidden>
(cherry picked from commit a52958321bbb4e8b2b4ab5849b8cbb0202b1029d linux-next)
Signed-off-by: You-Sheng Yang (vicamo) <email address hidden>

0ca58e9... by Szuying Chen <email address hidden>

thunderbolt: Move vendor specific NVM handling into nvm.c

BugLink: https://bugs.launchpad.net/amd/+bug/1989001

As there will be more USB4 devices that support NVM firmware upgrade from
various vendors, it makes sense to split out the Intel specific NVM
image handling from the generic code. This moves the Intel specific NVM
handling into a new structure that will be matched by the device type
and the vendor ID. Do this for both routers and retimers.

This makes it easier to extend the NVM support to cover new vendors and
NVM image formats in the future.

Signed-off-by: Szuying Chen <email address hidden>
Signed-off-by: Mika Westerberg <email address hidden>
(cherry picked from commit aef9c693e7e550954fc526b919342cc7d8047ed1 linux-next)
Signed-off-by: You-Sheng Yang (vicamo) <email address hidden>