Message ID | MEYP282MB26974DA32942DE35F636FA41BB08A@MEYP282MB2697.AUSP282.PROD.OUTLOOK.COM (mailing list archive) |
---|---|
Headers | show |
Series | net: wwan: t7xx: fw flashing & coredump support | expand |
Thu, Aug 03, 2023 at 04:18:06AM CEST, songjinjian@hotmail.com wrote: >From: Jinjian Song <jinjian.song@fibocom.com> > >Adds support for t7xx wwan device firmware flashing & coredump collection >using devlink. > >On early detection of wwan device in fastboot mode driver sets up CLDMA0 HW >tx/rx queues for raw data transfer and then registers to devlink framework. >On user space application issuing command for firmware update the driver >sends fastboot flash command & firmware to program NAND. > >In flashing procedure the fastboot command & response are exchanged between >driver and device. Once firmware flashing is success, user space application >get modem event by sysfs interface. > >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 Interesting. Makes me wonder why you didn't mention the "fastboot" param in the cover letter... > >Jinjian Song (6): > net: wwan: t7xx: Infrastructure for early port configuration > net: wwan: t7xx: Driver registers with Devlink framework > net: wwan: t7xx: Implements devlink ops of firmware flashing > net: wwan: t7xx: Creates region & snapshot for coredump log collection > net: wwan: t7xx: Adds sysfs attribute of modem event > net: wwan: t7xx: Devlink documentation > > Documentation/networking/devlink/index.rst | 1 + > Documentation/networking/devlink/t7xx.rst | 232 +++++++ > drivers/net/wwan/Kconfig | 1 + > drivers/net/wwan/t7xx/Makefile | 4 +- > drivers/net/wwan/t7xx/t7xx_hif_cldma.c | 47 +- > drivers/net/wwan/t7xx/t7xx_hif_cldma.h | 18 +- > drivers/net/wwan/t7xx/t7xx_modem_ops.c | 5 +- > drivers/net/wwan/t7xx/t7xx_pci.c | 79 ++- > drivers/net/wwan/t7xx/t7xx_pci.h | 19 + > drivers/net/wwan/t7xx/t7xx_port.h | 6 + > drivers/net/wwan/t7xx/t7xx_port_ap_msg.c | 78 +++ > drivers/net/wwan/t7xx/t7xx_port_ap_msg.h | 11 + > drivers/net/wwan/t7xx/t7xx_port_devlink.c | 723 +++++++++++++++++++++ > drivers/net/wwan/t7xx/t7xx_port_devlink.h | 85 +++ > drivers/net/wwan/t7xx/t7xx_port_proxy.c | 118 +++- > drivers/net/wwan/t7xx/t7xx_port_proxy.h | 14 + > drivers/net/wwan/t7xx/t7xx_port_wwan.c | 27 +- > drivers/net/wwan/t7xx/t7xx_reg.h | 28 +- > drivers/net/wwan/t7xx/t7xx_state_monitor.c | 137 +++- > drivers/net/wwan/t7xx/t7xx_state_monitor.h | 1 + > 20 files changed, 1556 insertions(+), 78 deletions(-) > create mode 100644 Documentation/networking/devlink/t7xx.rst > create mode 100644 drivers/net/wwan/t7xx/t7xx_port_ap_msg.c > create mode 100644 drivers/net/wwan/t7xx/t7xx_port_ap_msg.h > create mode 100644 drivers/net/wwan/t7xx/t7xx_port_devlink.c > create mode 100644 drivers/net/wwan/t7xx/t7xx_port_devlink.h > >-- >2.34.1 > >
Thu, Aug 03, 2023 at 04:18:06AM CEST, songjinjian@hotmail.com wrote: >From: Jinjian Song <jinjian.song@fibocom.com> > >>Adds support for t7xx wwan device firmware flashing & coredump collection >>using devlink. >Interesting. Makes me wonder why you didn't mention the "fastboot" param >in the cover letter... Thanks for your review, sorry I forget to add here from ptach 6 Devlink documentation + $ devlink dev param set pci/0000:bdf name fastboot value 1 cmode driverinit + +The devlink param fastboot is set to true via devlink param command, by +passing name ``fastboot``, value ``1`` and cmode ``driverinit``. + +:: + + $ devlink dev reload pci/0000:$bdf action driver_reinit + +The wwan device is put into fastboot mode via devlink reload command, by +passing ``driver_reinit`` action. I will add here. > >>Jinjian Song (6): >> net: wwan: t7xx: Infrastructure for early port configuration >> net: wwan: t7xx: Driver registers with Devlink framework >> net: wwan: t7xx: Implements devlink ops of firmware flashing >> net: wwan: t7xx: Creates region & snapshot for coredump log collection >> net: wwan: t7xx: Adds sysfs attribute of modem event >> net: wwan: t7xx: Devlink documentation
From: Jinjian Song <jinjian.song@fibocom.com> Adds support for t7xx wwan device firmware flashing & coredump collection using devlink. On early detection of wwan device in fastboot mode driver sets up CLDMA0 HW tx/rx queues for raw data transfer and then registers to devlink framework. On user space application issuing command for firmware update the driver sends fastboot flash command & firmware to program NAND. In flashing procedure the fastboot command & response are exchanged between driver and device. Once firmware flashing is success, user space application get modem event by sysfs interface. 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 Jinjian Song (6): net: wwan: t7xx: Infrastructure for early port configuration net: wwan: t7xx: Driver registers with Devlink framework net: wwan: t7xx: Implements devlink ops of firmware flashing net: wwan: t7xx: Creates region & snapshot for coredump log collection net: wwan: t7xx: Adds sysfs attribute of modem event net: wwan: t7xx: Devlink documentation Documentation/networking/devlink/index.rst | 1 + Documentation/networking/devlink/t7xx.rst | 232 +++++++ drivers/net/wwan/Kconfig | 1 + drivers/net/wwan/t7xx/Makefile | 4 +- drivers/net/wwan/t7xx/t7xx_hif_cldma.c | 47 +- drivers/net/wwan/t7xx/t7xx_hif_cldma.h | 18 +- drivers/net/wwan/t7xx/t7xx_modem_ops.c | 5 +- drivers/net/wwan/t7xx/t7xx_pci.c | 79 ++- drivers/net/wwan/t7xx/t7xx_pci.h | 19 + drivers/net/wwan/t7xx/t7xx_port.h | 6 + drivers/net/wwan/t7xx/t7xx_port_ap_msg.c | 78 +++ drivers/net/wwan/t7xx/t7xx_port_ap_msg.h | 11 + drivers/net/wwan/t7xx/t7xx_port_devlink.c | 723 +++++++++++++++++++++ drivers/net/wwan/t7xx/t7xx_port_devlink.h | 85 +++ drivers/net/wwan/t7xx/t7xx_port_proxy.c | 118 +++- drivers/net/wwan/t7xx/t7xx_port_proxy.h | 14 + drivers/net/wwan/t7xx/t7xx_port_wwan.c | 27 +- drivers/net/wwan/t7xx/t7xx_reg.h | 28 +- drivers/net/wwan/t7xx/t7xx_state_monitor.c | 137 +++- drivers/net/wwan/t7xx/t7xx_state_monitor.h | 1 + 20 files changed, 1556 insertions(+), 78 deletions(-) create mode 100644 Documentation/networking/devlink/t7xx.rst create mode 100644 drivers/net/wwan/t7xx/t7xx_port_ap_msg.c create mode 100644 drivers/net/wwan/t7xx/t7xx_port_ap_msg.h create mode 100644 drivers/net/wwan/t7xx/t7xx_port_devlink.c create mode 100644 drivers/net/wwan/t7xx/t7xx_port_devlink.h