[PATCH v1] bus: mhi: host: pci_generic: Add support for EM929x and set MRU to 32768 for better performance.

Adam Xue posted 1 patch 6 months, 2 weeks ago
drivers/bus/mhi/host/pci_generic.c | 4 ++++
1 file changed, 4 insertions(+)
[PATCH v1] bus: mhi: host: pci_generic: Add support for EM929x and set MRU to 32768 for better performance.
Posted by Adam Xue 6 months, 2 weeks ago
Add MHI controller config for EM929x. It uses the same configuration
as EM919x. Also set the MRU to 32768 to improve downlink throughput.

02:00.0 Unassigned class [ff00]: Qualcomm Technologies, Inc Device 0308
	Subsystem: Device 18d7:0301

Signed-off-by: Adam Xue <zxue@semtech.com>
---
 drivers/bus/mhi/host/pci_generic.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
index 03aa88795209..9bf8e7991745 100644
--- a/drivers/bus/mhi/host/pci_generic.c
+++ b/drivers/bus/mhi/host/pci_generic.c
@@ -695,6 +695,7 @@ static const struct mhi_pci_dev_info mhi_sierra_em919x_info = {
 	.config = &modem_sierra_em919x_config,
 	.bar_num = MHI_PCI_DEFAULT_BAR_NUM,
 	.dma_data_width = 32,
+	.mru_default = 32768,
 	.sideband_wake = false,
 };
 
@@ -813,6 +814,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 },
+	/* EM929x (sdx65), use the same configuration as EM919x */
+	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, 0x18d7, 0x0301),
+		.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 },
-- 
2.45.2


To view our privacy policy, including the types of personal information we collect, process and share, and the rights and options you have in this respect, see www.semtech.com/legal.
Re: [PATCH v1] bus: mhi: host: pci_generic: Add support for EM929x and set MRU to 32768 for better performance.
Posted by Manivannan Sadhasivam 5 months, 2 weeks ago
On Wed, 28 May 2025 10:59:43 -0700, Adam Xue wrote:
> Add MHI controller config for EM929x. It uses the same configuration
> as EM919x. Also set the MRU to 32768 to improve downlink throughput.
> 
> 02:00.0 Unassigned class [ff00]: Qualcomm Technologies, Inc Device 0308
> 	Subsystem: Device 18d7:0301
> 
> 
> [...]

Applied, thanks!

[1/1] bus: mhi: host: pci_generic: Add support for EM929x and set MRU to 32768 for better performance.
      commit: bd78a01cdee3d2333f70e659f3c1b4ffc3fd5c42

Best regards,
-- 
Manivannan Sadhasivam <mani@kernel.org>
Re: [PATCH v1] bus: mhi: host: pci_generic: Add support for EM929x and set MRU to 32768 for better performance.
Posted by Manivannan Sadhasivam 6 months ago
On Wed, May 28, 2025 at 10:59:43AM -0700, Adam Xue wrote:

+ Thomas and Aleksander (for EM919X related question)

> Add MHI controller config for EM929x. It uses the same configuration
> as EM919x. Also set the MRU to 32768 to improve downlink throughput.
> 

This also affects the EM919X modem. So I want either Thomas or Aleksander to
confirm that it doesn't cause any regression.

Rest looks good to me.

- Mani

> 02:00.0 Unassigned class [ff00]: Qualcomm Technologies, Inc Device 0308
> 	Subsystem: Device 18d7:0301
> 
> Signed-off-by: Adam Xue <zxue@semtech.com>
> ---
>  drivers/bus/mhi/host/pci_generic.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
> index 03aa88795209..9bf8e7991745 100644
> --- a/drivers/bus/mhi/host/pci_generic.c
> +++ b/drivers/bus/mhi/host/pci_generic.c
> @@ -695,6 +695,7 @@ static const struct mhi_pci_dev_info mhi_sierra_em919x_info = {
>  	.config = &modem_sierra_em919x_config,
>  	.bar_num = MHI_PCI_DEFAULT_BAR_NUM,
>  	.dma_data_width = 32,
> +	.mru_default = 32768,
>  	.sideband_wake = false,
>  };
>  
> @@ -813,6 +814,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 },
> +	/* EM929x (sdx65), use the same configuration as EM919x */
> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, 0x18d7, 0x0301),
> +		.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 },
> -- 
> 2.45.2
> 
> 
> To view our privacy policy, including the types of personal information we collect, process and share, and the rights and options you have in this respect, see www.semtech.com/legal.

-- 
மணிவண்ணன் சதாசிவம்
Re: [PATCH v1] bus: mhi: host: pci_generic: Add support for EM929x and set MRU to 32768 for better performance.
Posted by Aleksander Morgado 5 months, 4 weeks ago
On Tue, Jun 17, 2025 at 11:27 AM Manivannan Sadhasivam <mani@kernel.org> wrote:
>
> On Wed, May 28, 2025 at 10:59:43AM -0700, Adam Xue wrote:
>
> + Thomas and Aleksander (for EM919X related question)
>
> > Add MHI controller config for EM929x. It uses the same configuration
> > as EM919x. Also set the MRU to 32768 to improve downlink throughput.
> >
>
> This also affects the EM919X modem. So I want either Thomas or Aleksander to
> confirm that it doesn't cause any regression.
>
> Rest looks good to me.
>
> - Mani
>
> > 02:00.0 Unassigned class [ff00]: Qualcomm Technologies, Inc Device 0308
> >       Subsystem: Device 18d7:0301
> >
> > Signed-off-by: Adam Xue <zxue@semtech.com>
> > ---
> >  drivers/bus/mhi/host/pci_generic.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
> > index 03aa88795209..9bf8e7991745 100644
> > --- a/drivers/bus/mhi/host/pci_generic.c
> > +++ b/drivers/bus/mhi/host/pci_generic.c
> > @@ -695,6 +695,7 @@ static const struct mhi_pci_dev_info mhi_sierra_em919x_info = {
> >       .config = &modem_sierra_em919x_config,
> >       .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
> >       .dma_data_width = 32,
> > +     .mru_default = 32768,

I cannot test this now, I need to look for the EM9191 that I know I
have somewhere, but this default MRU update feels right. Hopefully
Thomas can verify.
Re: [PATCH v1] bus: mhi: host: pci_generic: Add support for EM929x and set MRU to 32768 for better performance.
Posted by Thomas Perrot 5 months, 3 weeks ago
Hello,

On Tue, 2025-06-17 at 16:58 +0200, Aleksander Morgado wrote:
> On Tue, Jun 17, 2025 at 11:27 AM Manivannan Sadhasivam
> <mani@kernel.org> wrote:
> > 
> > On Wed, May 28, 2025 at 10:59:43AM -0700, Adam Xue wrote:
> > 
> > + Thomas and Aleksander (for EM919X related question)
> > 
> > > Add MHI controller config for EM929x. It uses the same
> > > configuration
> > > as EM919x. Also set the MRU to 32768 to improve downlink
> > > throughput.
> > > 
> > 
> > This also affects the EM919X modem. So I want either Thomas or
> > Aleksander to
> > confirm that it doesn't cause any regression.

Sorry, I no longer have the modem to test.

Kind regards,
Thomas Perrot

> > 
> > Rest looks good to me.
> > 
> > - Mani
> > 
> > > 02:00.0 Unassigned class [ff00]: Qualcomm Technologies, Inc
> > > Device 0308
> > >       Subsystem: Device 18d7:0301
> > > 
> > > Signed-off-by: Adam Xue <zxue@semtech.com>
> > > ---
> > >  drivers/bus/mhi/host/pci_generic.c | 4 ++++
> > >  1 file changed, 4 insertions(+)
> > > 
> > > diff --git a/drivers/bus/mhi/host/pci_generic.c
> > > b/drivers/bus/mhi/host/pci_generic.c
> > > index 03aa88795209..9bf8e7991745 100644
> > > --- a/drivers/bus/mhi/host/pci_generic.c
> > > +++ b/drivers/bus/mhi/host/pci_generic.c
> > > @@ -695,6 +695,7 @@ static const struct mhi_pci_dev_info
> > > mhi_sierra_em919x_info = {
> > >       .config = &modem_sierra_em919x_config,
> > >       .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
> > >       .dma_data_width = 32,
> > > +     .mru_default = 32768,
> 
> I cannot test this now, I need to look for the EM9191 that I know I
> have somewhere, but this default MRU update feels right. Hopefully
> Thomas can verify.
> 

-- 
Thomas Perrot, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com