From 6da36d5993e6970331979b8710a4632ee796cf2d Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Wed, 10 Dec 2025 16:27:37 +0900 Subject: [PATCH] 6.12-stable patches added patches: bus-mhi-host-pci_generic-add-telit-fn920c04-modem-support.patch bus-mhi-host-pci_generic-add-telit-fn990b40-modem-support.patch --- ...ric-add-telit-fn920c04-modem-support.patch | 83 +++++++++++++++++++ ...ric-add-telit-fn990b40-modem-support.patch | 56 +++++++++++++ queue-6.12/series | 2 + 3 files changed, 141 insertions(+) create mode 100644 queue-6.12/bus-mhi-host-pci_generic-add-telit-fn920c04-modem-support.patch create mode 100644 queue-6.12/bus-mhi-host-pci_generic-add-telit-fn990b40-modem-support.patch diff --git a/queue-6.12/bus-mhi-host-pci_generic-add-telit-fn920c04-modem-support.patch b/queue-6.12/bus-mhi-host-pci_generic-add-telit-fn920c04-modem-support.patch new file mode 100644 index 0000000000..f374557cbe --- /dev/null +++ b/queue-6.12/bus-mhi-host-pci_generic-add-telit-fn920c04-modem-support.patch @@ -0,0 +1,83 @@ +From stable+bounces-198224-greg=kroah.com@vger.kernel.org Wed Dec 3 22:54:10 2025 +From: Fabio Porcedda +Date: Wed, 3 Dec 2025 14:53:52 +0100 +Subject: bus: mhi: host: pci_generic: Add Telit FN920C04 modem support +To: stable@vger.kernel.org, Greg Kroah-Hartman +Cc: linux-arm-msm@vger.kernel.org, mhi@lists.linux.dev, Daniele Palmas , Manivannan Sadhasivam , Fabio Porcedda +Message-ID: + +From: Daniele Palmas + +commit 6348f62ef7ecc5855b710a7d4ea682425c38bb80 upstream. + +Add SDX35 based modem Telit FN920C04. + +$ lspci -vv +01:00.0 Unassigned class [ff00]: Qualcomm Device 011a + Subsystem: Device 1c5d:2020 + +Signed-off-by: Daniele Palmas +Signed-off-by: Manivannan Sadhasivam +Reviewed-by: Manivannan Sadhasivam +Link: https://patch.msgid.link/20250401093458.2953872-1-dnlplm@gmail.com +Signed-off-by: Fabio Porcedda +Signed-off-by: Greg Kroah-Hartman +--- + drivers/bus/mhi/host/pci_generic.c | 39 +++++++++++++++++++++++++++++++++++++ + 1 file changed, 39 insertions(+) + +--- a/drivers/bus/mhi/host/pci_generic.c ++++ b/drivers/bus/mhi/host/pci_generic.c +@@ -698,6 +698,42 @@ static const struct mhi_pci_dev_info mhi + .mru_default = 32768, + }; + ++static const struct mhi_channel_config mhi_telit_fn920c04_channels[] = { ++ MHI_CHANNEL_CONFIG_UL_SBL(2, "SAHARA", 32, 0), ++ MHI_CHANNEL_CONFIG_DL_SBL(3, "SAHARA", 32, 0), ++ MHI_CHANNEL_CONFIG_UL(4, "DIAG", 64, 1), ++ MHI_CHANNEL_CONFIG_DL(5, "DIAG", 64, 1), ++ MHI_CHANNEL_CONFIG_UL(14, "QMI", 32, 0), ++ MHI_CHANNEL_CONFIG_DL(15, "QMI", 32, 0), ++ MHI_CHANNEL_CONFIG_UL(32, "DUN", 32, 0), ++ MHI_CHANNEL_CONFIG_DL(33, "DUN", 32, 0), ++ MHI_CHANNEL_CONFIG_UL_FP(34, "FIREHOSE", 32, 0), ++ MHI_CHANNEL_CONFIG_DL_FP(35, "FIREHOSE", 32, 0), ++ MHI_CHANNEL_CONFIG_UL(92, "DUN2", 32, 1), ++ MHI_CHANNEL_CONFIG_DL(93, "DUN2", 32, 1), ++ MHI_CHANNEL_CONFIG_HW_UL(100, "IP_HW0", 128, 2), ++ MHI_CHANNEL_CONFIG_HW_DL(101, "IP_HW0", 128, 3), ++}; ++ ++static const struct mhi_controller_config modem_telit_fn920c04_config = { ++ .max_channels = 128, ++ .timeout_ms = 50000, ++ .num_channels = ARRAY_SIZE(mhi_telit_fn920c04_channels), ++ .ch_cfg = mhi_telit_fn920c04_channels, ++ .num_events = ARRAY_SIZE(mhi_telit_fn990_events), ++ .event_cfg = mhi_telit_fn990_events, ++}; ++ ++static const struct mhi_pci_dev_info mhi_telit_fn920c04_info = { ++ .name = "telit-fn920c04", ++ .config = &modem_telit_fn920c04_config, ++ .bar_num = MHI_PCI_DEFAULT_BAR_NUM, ++ .dma_data_width = 32, ++ .sideband_wake = false, ++ .mru_default = 32768, ++ .edl_trigger = true, ++}; ++ + static const struct mhi_pci_dev_info mhi_netprisma_lcur57_info = { + .name = "netprisma-lcur57", + .edl = "qcom/prog_firehose_sdx24.mbn", +@@ -720,6 +756,9 @@ static const struct mhi_pci_dev_info mhi + + /* Keep the list sorted based on the PID. New VID should be added as the last entry */ + static const struct pci_device_id mhi_pci_id_table[] = { ++ /* Telit FN920C04 (sdx35) */ ++ {PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x011a, 0x1c5d, 0x2020), ++ .driver_data = (kernel_ulong_t) &mhi_telit_fn920c04_info }, + { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0304), + .driver_data = (kernel_ulong_t) &mhi_qcom_sdx24_info }, + { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0306, PCI_VENDOR_ID_QCOM, 0x010c), diff --git a/queue-6.12/bus-mhi-host-pci_generic-add-telit-fn990b40-modem-support.patch b/queue-6.12/bus-mhi-host-pci_generic-add-telit-fn990b40-modem-support.patch new file mode 100644 index 0000000000..08dc9d59a5 --- /dev/null +++ b/queue-6.12/bus-mhi-host-pci_generic-add-telit-fn990b40-modem-support.patch @@ -0,0 +1,56 @@ +From stable+bounces-198225-greg=kroah.com@vger.kernel.org Wed Dec 3 22:54:14 2025 +From: Fabio Porcedda +Date: Wed, 3 Dec 2025 14:53:53 +0100 +Subject: bus: mhi: host: pci_generic: Add Telit FN990B40 modem support +To: stable@vger.kernel.org, Greg Kroah-Hartman +Cc: linux-arm-msm@vger.kernel.org, mhi@lists.linux.dev, Daniele Palmas , Manivannan Sadhasivam , Fabio Porcedda +Message-ID: <5091bf715f9ecf449b270af23352be15e4560df7.1764769310.git.fabio.porcedda@gmail.com> + +From: Daniele Palmas + +commit 00559ba3ae740e7544b48fb509b2b97f56615892 upstream. + +Add SDX72 based modem Telit FN990B40, reusing FN920C04 configuration. + +01:00.0 Unassigned class [ff00]: Qualcomm Device 0309 + Subsystem: Device 1c5d:201a + +Signed-off-by: Daniele Palmas +[mani: added sdx72 in the comment to identify the chipset] +Signed-off-by: Manivannan Sadhasivam +Link: https://patch.msgid.link/20250716091836.999364-1-dnlplm@gmail.com +Signed-off-by: Fabio Porcedda +Signed-off-by: Greg Kroah-Hartman +--- + drivers/bus/mhi/host/pci_generic.c | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +--- a/drivers/bus/mhi/host/pci_generic.c ++++ b/drivers/bus/mhi/host/pci_generic.c +@@ -734,6 +734,16 @@ static const struct mhi_pci_dev_info mhi + .edl_trigger = true, + }; + ++static const struct mhi_pci_dev_info mhi_telit_fn990b40_info = { ++ .name = "telit-fn990b40", ++ .config = &modem_telit_fn920c04_config, ++ .bar_num = MHI_PCI_DEFAULT_BAR_NUM, ++ .dma_data_width = 32, ++ .sideband_wake = false, ++ .mru_default = 32768, ++ .edl_trigger = true, ++}; ++ + static const struct mhi_pci_dev_info mhi_netprisma_lcur57_info = { + .name = "netprisma-lcur57", + .edl = "qcom/prog_firehose_sdx24.mbn", +@@ -779,6 +789,9 @@ static const struct pci_device_id mhi_pc + .driver_data = (kernel_ulong_t) &mhi_telit_fe990a_info }, + { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0308), + .driver_data = (kernel_ulong_t) &mhi_qcom_sdx65_info }, ++ /* Telit FN990B40 (sdx72) */ ++ { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0309, 0x1c5d, 0x201a), ++ .driver_data = (kernel_ulong_t) &mhi_telit_fn990b40_info }, + { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0309), + .driver_data = (kernel_ulong_t) &mhi_qcom_sdx75_info }, + { PCI_DEVICE(PCI_VENDOR_ID_QUECTEL, 0x1001), /* EM120R-GL (sdx24) */ diff --git a/queue-6.12/series b/queue-6.12/series index 5856d06a25..e5bcd1740d 100644 --- a/queue-6.12/series +++ b/queue-6.12/series @@ -45,3 +45,5 @@ comedi-check-device-s-attached-status-in-compat-ioctls.patch staging-rtl8723bs-fix-out-of-bounds-read-in-rtw_get_ie-parser.patch staging-rtl8723bs-fix-stack-buffer-overflow-in-onassocreq-ie-parsing.patch staging-rtl8723bs-fix-out-of-bounds-read-in-onbeacon-esr-ie-parsing.patch +bus-mhi-host-pci_generic-add-telit-fn920c04-modem-support.patch +bus-mhi-host-pci_generic-add-telit-fn990b40-modem-support.patch -- 2.47.3