* [PATCH v2 1/1] bus: mhi: pci_generic: add Telit FN980 v1 hardware revision
@ 2022-04-27 7:26 Daniele Palmas
2022-04-27 8:01 ` Manivannan Sadhasivam
2022-04-27 8:27 ` Manivannan Sadhasivam
0 siblings, 2 replies; 3+ messages in thread
From: Daniele Palmas @ 2022-04-27 7:26 UTC (permalink / raw)
To: Manivannan Sadhasivam; +Cc: mhi, linux-arm-msm, Daniele Palmas
Add Telit FN980 v1 hardware revision:
01:00.0 Unassigned class [ff00]: Qualcomm Device [17cb:0306]
Subsystem: Device [1c5d:2000]
Signed-off-by: Daniele Palmas <dnlplm@gmail.com>
---
V2: rebased after mhi_pci_id_table reordering
---
drivers/bus/mhi/host/pci_generic.c | 38 ++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)
diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
index 8858f3bf4f04..8e453b74e6cd 100644
--- a/drivers/bus/mhi/host/pci_generic.c
+++ b/drivers/bus/mhi/host/pci_generic.c
@@ -446,6 +446,41 @@ static const struct mhi_pci_dev_info mhi_sierra_em919x_info = {
.sideband_wake = false,
};
+static const struct mhi_channel_config mhi_telit_fn980_hw_v1_channels[] = {
+ MHI_CHANNEL_CONFIG_UL(14, "QMI", 32, 0),
+ MHI_CHANNEL_CONFIG_DL(15, "QMI", 32, 0),
+ MHI_CHANNEL_CONFIG_UL(20, "IPCR", 16, 0),
+ MHI_CHANNEL_CONFIG_DL_AUTOQUEUE(21, "IPCR", 16, 0),
+ MHI_CHANNEL_CONFIG_HW_UL(100, "IP_HW0", 128, 1),
+ MHI_CHANNEL_CONFIG_HW_DL(101, "IP_HW0", 128, 2),
+};
+
+static struct mhi_event_config mhi_telit_fn980_hw_v1_events[] = {
+ MHI_EVENT_CONFIG_CTRL(0, 128),
+ MHI_EVENT_CONFIG_HW_DATA(1, 1024, 100),
+ MHI_EVENT_CONFIG_HW_DATA(2, 2048, 101)
+};
+
+static struct mhi_controller_config modem_telit_fn980_hw_v1_config = {
+ .max_channels = 128,
+ .timeout_ms = 20000,
+ .num_channels = ARRAY_SIZE(mhi_telit_fn980_hw_v1_channels),
+ .ch_cfg = mhi_telit_fn980_hw_v1_channels,
+ .num_events = ARRAY_SIZE(mhi_telit_fn980_hw_v1_events),
+ .event_cfg = mhi_telit_fn980_hw_v1_events,
+};
+
+static const struct mhi_pci_dev_info mhi_telit_fn980_hw_v1_info = {
+ .name = "telit-fn980-hwv1",
+ .fw = "qcom/sdx55m/sbl1.mbn",
+ .edl = "qcom/sdx55m/edl.mbn",
+ .config = &modem_telit_fn980_hw_v1_config,
+ .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
+ .dma_data_width = 32,
+ .mru_default = 32768,
+ .sideband_wake = false,
+};
+
/* 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[] = {
{ PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0304),
@@ -453,6 +488,9 @@ static const struct pci_device_id mhi_pci_id_table[] = {
/* EM919x (sdx55), use the same vid:pid as qcom-sdx55m */
{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0306, 0x18d7, 0x0200),
.driver_data = (kernel_ulong_t) &mhi_sierra_em919x_info },
+ /* Telit FN980 hardware revision v1 */
+ { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0306, 0x1C5D, 0x2000),
+ .driver_data = (kernel_ulong_t) &mhi_telit_fn980_hw_v1_info },
{ PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0306),
.driver_data = (kernel_ulong_t) &mhi_qcom_sdx55_info },
{ PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0308),
--
2.32.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v2 1/1] bus: mhi: pci_generic: add Telit FN980 v1 hardware revision
2022-04-27 7:26 [PATCH v2 1/1] bus: mhi: pci_generic: add Telit FN980 v1 hardware revision Daniele Palmas
@ 2022-04-27 8:01 ` Manivannan Sadhasivam
2022-04-27 8:27 ` Manivannan Sadhasivam
1 sibling, 0 replies; 3+ messages in thread
From: Manivannan Sadhasivam @ 2022-04-27 8:01 UTC (permalink / raw)
To: Daniele Palmas; +Cc: mhi, linux-arm-msm
On Wed, Apr 27, 2022 at 09:26:48AM +0200, Daniele Palmas wrote:
> Add Telit FN980 v1 hardware revision:
>
> 01:00.0 Unassigned class [ff00]: Qualcomm Device [17cb:0306]
> Subsystem: Device [1c5d:2000]
>
> Signed-off-by: Daniele Palmas <dnlplm@gmail.com>
Reviewed-by: Manivannan Sadhasivam <mani@kernel.org>
Thanks,
Mani
> ---
> V2: rebased after mhi_pci_id_table reordering
> ---
> drivers/bus/mhi/host/pci_generic.c | 38 ++++++++++++++++++++++++++++++
> 1 file changed, 38 insertions(+)
>
> diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
> index 8858f3bf4f04..8e453b74e6cd 100644
> --- a/drivers/bus/mhi/host/pci_generic.c
> +++ b/drivers/bus/mhi/host/pci_generic.c
> @@ -446,6 +446,41 @@ static const struct mhi_pci_dev_info mhi_sierra_em919x_info = {
> .sideband_wake = false,
> };
>
> +static const struct mhi_channel_config mhi_telit_fn980_hw_v1_channels[] = {
> + MHI_CHANNEL_CONFIG_UL(14, "QMI", 32, 0),
> + MHI_CHANNEL_CONFIG_DL(15, "QMI", 32, 0),
> + MHI_CHANNEL_CONFIG_UL(20, "IPCR", 16, 0),
> + MHI_CHANNEL_CONFIG_DL_AUTOQUEUE(21, "IPCR", 16, 0),
> + MHI_CHANNEL_CONFIG_HW_UL(100, "IP_HW0", 128, 1),
> + MHI_CHANNEL_CONFIG_HW_DL(101, "IP_HW0", 128, 2),
> +};
> +
> +static struct mhi_event_config mhi_telit_fn980_hw_v1_events[] = {
> + MHI_EVENT_CONFIG_CTRL(0, 128),
> + MHI_EVENT_CONFIG_HW_DATA(1, 1024, 100),
> + MHI_EVENT_CONFIG_HW_DATA(2, 2048, 101)
> +};
> +
> +static struct mhi_controller_config modem_telit_fn980_hw_v1_config = {
> + .max_channels = 128,
> + .timeout_ms = 20000,
> + .num_channels = ARRAY_SIZE(mhi_telit_fn980_hw_v1_channels),
> + .ch_cfg = mhi_telit_fn980_hw_v1_channels,
> + .num_events = ARRAY_SIZE(mhi_telit_fn980_hw_v1_events),
> + .event_cfg = mhi_telit_fn980_hw_v1_events,
> +};
> +
> +static const struct mhi_pci_dev_info mhi_telit_fn980_hw_v1_info = {
> + .name = "telit-fn980-hwv1",
> + .fw = "qcom/sdx55m/sbl1.mbn",
> + .edl = "qcom/sdx55m/edl.mbn",
> + .config = &modem_telit_fn980_hw_v1_config,
> + .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
> + .dma_data_width = 32,
> + .mru_default = 32768,
> + .sideband_wake = false,
> +};
> +
> /* 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[] = {
> { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0304),
> @@ -453,6 +488,9 @@ static const struct pci_device_id mhi_pci_id_table[] = {
> /* EM919x (sdx55), use the same vid:pid as qcom-sdx55m */
> { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0306, 0x18d7, 0x0200),
> .driver_data = (kernel_ulong_t) &mhi_sierra_em919x_info },
> + /* Telit FN980 hardware revision v1 */
> + { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0306, 0x1C5D, 0x2000),
> + .driver_data = (kernel_ulong_t) &mhi_telit_fn980_hw_v1_info },
> { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0306),
> .driver_data = (kernel_ulong_t) &mhi_qcom_sdx55_info },
> { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0308),
> --
> 2.32.0
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v2 1/1] bus: mhi: pci_generic: add Telit FN980 v1 hardware revision
2022-04-27 7:26 [PATCH v2 1/1] bus: mhi: pci_generic: add Telit FN980 v1 hardware revision Daniele Palmas
2022-04-27 8:01 ` Manivannan Sadhasivam
@ 2022-04-27 8:27 ` Manivannan Sadhasivam
1 sibling, 0 replies; 3+ messages in thread
From: Manivannan Sadhasivam @ 2022-04-27 8:27 UTC (permalink / raw)
To: Daniele Palmas; +Cc: mhi, linux-arm-msm
On Wed, Apr 27, 2022 at 09:26:48AM +0200, Daniele Palmas wrote:
> Add Telit FN980 v1 hardware revision:
>
> 01:00.0 Unassigned class [ff00]: Qualcomm Device [17cb:0306]
> Subsystem: Device [1c5d:2000]
>
> Signed-off-by: Daniele Palmas <dnlplm@gmail.com>
Applied to mhi-next!
Thanks,
Mani
> ---
> V2: rebased after mhi_pci_id_table reordering
> ---
> drivers/bus/mhi/host/pci_generic.c | 38 ++++++++++++++++++++++++++++++
> 1 file changed, 38 insertions(+)
>
> diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
> index 8858f3bf4f04..8e453b74e6cd 100644
> --- a/drivers/bus/mhi/host/pci_generic.c
> +++ b/drivers/bus/mhi/host/pci_generic.c
> @@ -446,6 +446,41 @@ static const struct mhi_pci_dev_info mhi_sierra_em919x_info = {
> .sideband_wake = false,
> };
>
> +static const struct mhi_channel_config mhi_telit_fn980_hw_v1_channels[] = {
> + MHI_CHANNEL_CONFIG_UL(14, "QMI", 32, 0),
> + MHI_CHANNEL_CONFIG_DL(15, "QMI", 32, 0),
> + MHI_CHANNEL_CONFIG_UL(20, "IPCR", 16, 0),
> + MHI_CHANNEL_CONFIG_DL_AUTOQUEUE(21, "IPCR", 16, 0),
> + MHI_CHANNEL_CONFIG_HW_UL(100, "IP_HW0", 128, 1),
> + MHI_CHANNEL_CONFIG_HW_DL(101, "IP_HW0", 128, 2),
> +};
> +
> +static struct mhi_event_config mhi_telit_fn980_hw_v1_events[] = {
> + MHI_EVENT_CONFIG_CTRL(0, 128),
> + MHI_EVENT_CONFIG_HW_DATA(1, 1024, 100),
> + MHI_EVENT_CONFIG_HW_DATA(2, 2048, 101)
> +};
> +
> +static struct mhi_controller_config modem_telit_fn980_hw_v1_config = {
> + .max_channels = 128,
> + .timeout_ms = 20000,
> + .num_channels = ARRAY_SIZE(mhi_telit_fn980_hw_v1_channels),
> + .ch_cfg = mhi_telit_fn980_hw_v1_channels,
> + .num_events = ARRAY_SIZE(mhi_telit_fn980_hw_v1_events),
> + .event_cfg = mhi_telit_fn980_hw_v1_events,
> +};
> +
> +static const struct mhi_pci_dev_info mhi_telit_fn980_hw_v1_info = {
> + .name = "telit-fn980-hwv1",
> + .fw = "qcom/sdx55m/sbl1.mbn",
> + .edl = "qcom/sdx55m/edl.mbn",
> + .config = &modem_telit_fn980_hw_v1_config,
> + .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
> + .dma_data_width = 32,
> + .mru_default = 32768,
> + .sideband_wake = false,
> +};
> +
> /* 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[] = {
> { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0304),
> @@ -453,6 +488,9 @@ static const struct pci_device_id mhi_pci_id_table[] = {
> /* EM919x (sdx55), use the same vid:pid as qcom-sdx55m */
> { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0306, 0x18d7, 0x0200),
> .driver_data = (kernel_ulong_t) &mhi_sierra_em919x_info },
> + /* Telit FN980 hardware revision v1 */
> + { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0306, 0x1C5D, 0x2000),
> + .driver_data = (kernel_ulong_t) &mhi_telit_fn980_hw_v1_info },
> { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0306),
> .driver_data = (kernel_ulong_t) &mhi_qcom_sdx55_info },
> { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0308),
> --
> 2.32.0
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-04-27 8:28 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-27 7:26 [PATCH v2 1/1] bus: mhi: pci_generic: add Telit FN980 v1 hardware revision Daniele Palmas
2022-04-27 8:01 ` Manivannan Sadhasivam
2022-04-27 8:27 ` Manivannan Sadhasivam
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox