@@ -782,6 +782,42 @@ static const struct mhi_pci_dev_info mhi_telit_fe990a_info = {
782782 .mru_default = 32768 ,
783783};
784784
785+ static const struct mhi_channel_config mhi_telit_fn920c04_channels [] = {
786+ MHI_CHANNEL_CONFIG_UL_SBL (2 , "SAHARA" , 32 , 0 ),
787+ MHI_CHANNEL_CONFIG_DL_SBL (3 , "SAHARA" , 32 , 0 ),
788+ MHI_CHANNEL_CONFIG_UL (4 , "DIAG" , 64 , 1 ),
789+ MHI_CHANNEL_CONFIG_DL (5 , "DIAG" , 64 , 1 ),
790+ MHI_CHANNEL_CONFIG_UL (14 , "QMI" , 32 , 0 ),
791+ MHI_CHANNEL_CONFIG_DL (15 , "QMI" , 32 , 0 ),
792+ MHI_CHANNEL_CONFIG_UL (32 , "DUN" , 32 , 0 ),
793+ MHI_CHANNEL_CONFIG_DL (33 , "DUN" , 32 , 0 ),
794+ MHI_CHANNEL_CONFIG_UL_FP (34 , "FIREHOSE" , 32 , 0 ),
795+ MHI_CHANNEL_CONFIG_DL_FP (35 , "FIREHOSE" , 32 , 0 ),
796+ MHI_CHANNEL_CONFIG_UL (92 , "DUN2" , 32 , 1 ),
797+ MHI_CHANNEL_CONFIG_DL (93 , "DUN2" , 32 , 1 ),
798+ MHI_CHANNEL_CONFIG_HW_UL (100 , "IP_HW0" , 128 , 2 ),
799+ MHI_CHANNEL_CONFIG_HW_DL (101 , "IP_HW0" , 128 , 3 ),
800+ };
801+
802+ static const struct mhi_controller_config modem_telit_fn920c04_config = {
803+ .max_channels = 128 ,
804+ .timeout_ms = 50000 ,
805+ .num_channels = ARRAY_SIZE (mhi_telit_fn920c04_channels ),
806+ .ch_cfg = mhi_telit_fn920c04_channels ,
807+ .num_events = ARRAY_SIZE (mhi_telit_fn990_events ),
808+ .event_cfg = mhi_telit_fn990_events ,
809+ };
810+
811+ static const struct mhi_pci_dev_info mhi_telit_fn920c04_info = {
812+ .name = "telit-fn920c04" ,
813+ .config = & modem_telit_fn920c04_config ,
814+ .bar_num = MHI_PCI_DEFAULT_BAR_NUM ,
815+ .dma_data_width = 32 ,
816+ .sideband_wake = false,
817+ .mru_default = 32768 ,
818+ .edl_trigger = true,
819+ };
820+
785821static const struct mhi_pci_dev_info mhi_netprisma_lcur57_info = {
786822 .name = "netprisma-lcur57" ,
787823 .edl = "qcom/prog_firehose_sdx24.mbn" ,
@@ -806,6 +842,9 @@ static const struct mhi_pci_dev_info mhi_netprisma_fcun69_info = {
806842static const struct pci_device_id mhi_pci_id_table [] = {
807843 {PCI_DEVICE (PCI_VENDOR_ID_QCOM , 0x0116 ),
808844 .driver_data = (kernel_ulong_t ) & mhi_qcom_sa8775p_info },
845+ /* Telit FN920C04 (sdx35) */
846+ {PCI_DEVICE_SUB (PCI_VENDOR_ID_QCOM , 0x011a , 0x1c5d , 0x2020 ),
847+ .driver_data = (kernel_ulong_t ) & mhi_telit_fn920c04_info },
809848 { PCI_DEVICE (PCI_VENDOR_ID_QCOM , 0x0304 ),
810849 .driver_data = (kernel_ulong_t ) & mhi_qcom_sdx24_info },
811850 { PCI_DEVICE_SUB (PCI_VENDOR_ID_QCOM , 0x0306 , PCI_VENDOR_ID_QCOM , 0x010c ),
0 commit comments