| 0686a818 | 06-Mar-2025 |
Jeffrey Hugo <[email protected]> |
bus: mhi: host: Fix race between unprepare and queue_buf
A client driver may use mhi_unprepare_from_transfer() to quiesce incoming data during the client driver's tear down. The client driver might
bus: mhi: host: Fix race between unprepare and queue_buf
A client driver may use mhi_unprepare_from_transfer() to quiesce incoming data during the client driver's tear down. The client driver might also be processing data at the same time, resulting in a call to mhi_queue_buf() which will invoke mhi_gen_tre(). If mhi_gen_tre() runs after mhi_unprepare_from_transfer() has torn down the channel, a panic will occur due to an invalid dereference leading to a page fault.
This occurs because mhi_gen_tre() does not verify the channel state after locking it. Fix this by having mhi_gen_tre() confirm the channel state is valid, or return error to avoid accessing deinitialized data.
Cc: [email protected] # 6.8 Fixes: b89b6a863dd5 ("bus: mhi: host: Add spinlock to protect WP access when queueing TREs") Signed-off-by: Jeffrey Hugo <[email protected]> Signed-off-by: Jeff Hugo <[email protected]> Reviewed-by: Krishna Chaitanya Chundru <[email protected]> Reviewed-by: Youssef Samir <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Reviewed-by: Troy Hanson <[email protected]> Link: https://lore.kernel.org/r/[email protected] [mani: added stable tag] Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|
| cba6bdfd | 05-Dec-2024 |
Mrinmay Sarkar <[email protected]> |
bus: mhi: host: pci_generic: Add support for SA8775P endpoint
Add MHI controller config for SA8775P endpoint. SA8775P supports IP_SW usecase only. Hence use separate configuration to enable IP_SW ch
bus: mhi: host: pci_generic: Add support for SA8775P endpoint
Add MHI controller config for SA8775P endpoint. SA8775P supports IP_SW usecase only. Hence use separate configuration to enable IP_SW channels.
Signed-off-by: Mrinmay Sarkar <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Link: https://lore.kernel.org/r/[email protected] [mani: updated commit message and removed 'modem' reference in config] Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|
| f88f1d09 | 17-Jan-2025 |
Matthew Leung <[email protected]> |
bus: mhi: host: Add a policy to enable image transfer via BHIe in PBL
Currently, MHI host only performs firmware transfer via BHI in PBL and BHIe from SBL. To support BHIe transfer directly from PBL
bus: mhi: host: Add a policy to enable image transfer via BHIe in PBL
Currently, MHI host only performs firmware transfer via BHI in PBL and BHIe from SBL. To support BHIe transfer directly from PBL, a policy needs to be added.
With this policy, BHIe will be used to transfer firmware in PBL if the MHI controller has BHIe regs, sets seg_len, and does not set fbc_download. The intention is to transfer firmware using BHIe in PBL without further BHIe transfers in SBL.
Signed-off-by: Matthew Leung <[email protected]> Reviewed-by: Youssef Samir <[email protected]> Reviewed-by: Jeffrey Hugo <[email protected]> Signed-off-by: Jeffrey Hugo <[email protected]> Reviewed-by: Jacek Lawrynowicz <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
show more ...
|
| 9241459b | 12-Dec-2024 |
Vivek Pernamitta <[email protected]> |
bus: mhi: host: pci_generic: Add support for QDU100 device
Add MHI controller configuration for QDU100 device.
The Qualcomm X100 5G RAN Accelerator card is designed to enhance Open vRAN servers by
bus: mhi: host: pci_generic: Add support for QDU100 device
Add MHI controller configuration for QDU100 device.
The Qualcomm X100 5G RAN Accelerator card is designed to enhance Open vRAN servers by offloading CPUs from intensive 5G baseband functions.
Link: https://docs.qualcomm.com/bundle/publicresource/87-79371-1_REV_A_Qualcomm_X100_5G_RAN_Accelerator_Card_Product_Brief.pdf
Signed-off-by: Vivek Pernamitta <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|
| bd23e836 | 04-Oct-2024 |
Manivannan Sadhasivam <[email protected]> |
bus: mhi: host: pci_generic: Use pcim_iomap_region() to request and map MHI BAR
Use of both pcim_iomap_regions() and pcim_iomap_table() APIs are deprecated. Hence, switch to pcim_iomap_region() API
bus: mhi: host: pci_generic: Use pcim_iomap_region() to request and map MHI BAR
Use of both pcim_iomap_regions() and pcim_iomap_table() APIs are deprecated. Hence, switch to pcim_iomap_region() API which handles both the request and map of the MHI BAR region.
Cc: Loic Poulain <[email protected]> Reviewed-by: Mayank Rana <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|
| 23388a1b | 04-Oct-2024 |
Carl Vanderlip <[email protected]> |
bus: mhi: host: Switch trace_mhi_gen_tre fields to native endian
Each of the __field() macros were triggering sparse warnings similar to: trace.h:87:1: sparse: sparse: cast to restricted __le64 trac
bus: mhi: host: Switch trace_mhi_gen_tre fields to native endian
Each of the __field() macros were triggering sparse warnings similar to: trace.h:87:1: sparse: sparse: cast to restricted __le64 trace.h:87:1: sparse: sparse: restricted __le64 degrades to integer trace.h:87:1: sparse: sparse: restricted __le64 degrades to integer
Change each little endian type to its similarly sized native integer. Convert inputs into native endian.
Reported-by: kernel test robot <[email protected]> Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ Fixes: ceeb64f41fe6 ("bus: mhi: host: Add tracing support") Signed-off-by: Carl Vanderlip <[email protected]> Reviewed-by: Jeffrey Hugo <[email protected]> Reviewed-by: Mayank Rana <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|
| 84a5ae5b | 25-Jul-2024 |
Slark Xiao <[email protected]> |
bus: mhi: host: pci_generic: Enable EDL trigger for Foxconn modems
All Foxconn modems support generic EDL trigger to flash the firmware. Hence, enable the EDL trigger using mhi_pci_dev_info::edl_tri
bus: mhi: host: pci_generic: Enable EDL trigger for Foxconn modems
All Foxconn modems support generic EDL trigger to flash the firmware. Hence, enable the EDL trigger using mhi_pci_dev_info::edl_trigger.
Signed-off-by: Slark Xiao <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Link: https://lore.kernel.org/r/[email protected] [mani: Reworded the subject and description] Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|
| a7bc66fe | 25-Jul-2024 |
Slark Xiao <[email protected]> |
bus: mhi: host: pci_generic: Update EDL firmware path for Foxconn modems
Foxconn uses a unique firmware for their MHI based modems. So the generic firmware from Qcom won't work. Hence, update the ED
bus: mhi: host: pci_generic: Update EDL firmware path for Foxconn modems
Foxconn uses a unique firmware for their MHI based modems. So the generic firmware from Qcom won't work. Hence, update the EDL firmware path to include the 'foxconn' subdirectory based on the modem SoC so that the Foxconn specific firmware could be used.
Respective firmware will be upstreamed to linux-firmware repo.
Cc: [email protected] # 6.11 Fixes: bf30a75e6e00 ("bus: mhi: host: Add support for Foxconn SDX72 modems") Signed-off-by: Slark Xiao <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Link: https://lore.kernel.org/r/[email protected] [mani: Reworded the subject and description] Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|
| 969db85b | 27-Aug-2024 |
Mank Wang <[email protected]> |
bus: mhi: host: pci_generic: Add support for Netprisma LCUR57 and FCUN69
Add Netprisma LCUR57 and FCUN69 hardware revision:
LCUR57: 02:00.0 Unassigned class [ff00]: Device 203e:1000 Subsystem: Dev
bus: mhi: host: pci_generic: Add support for Netprisma LCUR57 and FCUN69
Add Netprisma LCUR57 and FCUN69 hardware revision:
LCUR57: 02:00.0 Unassigned class [ff00]: Device 203e:1000 Subsystem: Device 203e:1000
FCUN69: 02:00.0 Unassigned class [ff00]: Device 203e:1001 Subsystem: Device 203e:1001
Both of these modules create IP interfaces through MBIM. And these modules can be checked for successful recognition through the following command: $ mmcli -L /org/freedesktop/ModemManager1/Modem/0 [NetPrisma] LCUR57-WWD
$ mmcli -L /org/freedesktop/ModemManager1/Modem/0 [NetPrisma] FCUN69-WWD
Signed-off-by: Mank Wang <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Link: https://lore.kernel.org/r/PH7PR22MB30386647BE2D813B502226CF81942@PH7PR22MB3038.namprd22.prod.outlook.com Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|
| 8e54aced | 23-Aug-2024 |
Kunwu Chan <[email protected]> |
bus: mhi: host: make mhi_bus_type const
Now that the driver core can properly handle constant struct bus_type, move the mhi_bus_type variable to be a constant structure as well, placing it into read
bus: mhi: host: make mhi_bus_type const
Now that the driver core can properly handle constant struct bus_type, move the mhi_bus_type variable to be a constant structure as well, placing it into read-only memory which can not be modified at runtime.
Suggested-by: Greg Kroah-Hartman <[email protected]> Signed-off-by: Kunwu Chan <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|
| bf30a75e | 01-Jul-2024 |
Slark Xiao <[email protected]> |
bus: mhi: host: Add support for Foxconn SDX72 modems
Add support for Foxconn SDX72 based modems, T99W515 and DW5934E. Existing SDX55 channel/event configs are reused with the custom ready_timeout_ms
bus: mhi: host: Add support for Foxconn SDX72 modems
Add support for Foxconn SDX72 based modems, T99W515 and DW5934E. Existing SDX55 channel/event configs are reused with the custom ready_timeout_ms value to workaround firmware issue.
Signed-off-by: Slark Xiao <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Link: https://lore.kernel.org/r/[email protected] [mani: reworded subject and description] Signed-off-by: Manivannan Sadhasivam <[email protected]>
show more ...
|