linux-arm-msm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] bus: mhi: host: pci_generic: Add more Foxconn T99W696 modem
@ 2025-07-29  8:57 Slark Xiao
  2025-08-18  8:14 ` Manivannan Sadhasivam
  0 siblings, 1 reply; 4+ messages in thread
From: Slark Xiao @ 2025-07-29  8:57 UTC (permalink / raw)
  To: mani; +Cc: mhi, linux-arm-msm, linux-kernel, Slark Xiao

There are more platforms need support Foxconn T99W696 modem.
This requirement comes from Lenovo side since they want 1 platform
to correspond to 1 modem SKU.

Signed-off-by: Slark Xiao <slark_xiao@163.com>
---
 drivers/bus/mhi/host/pci_generic.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
index 4edb5bb476ba..1fc43f1b86be 100644
--- a/drivers/bus/mhi/host/pci_generic.c
+++ b/drivers/bus/mhi/host/pci_generic.c
@@ -932,6 +932,24 @@ static const struct pci_device_id mhi_pci_id_table[] = {
 	/* Foxconn T99W696.00, Foxconn SKU */
 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe146),
 		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
+	/* Foxconn T99W696.05, Lenovo T14 */
+	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe150),
+		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
+	/* Foxconn T99W696.06, Lenovo T15 */
+	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe151),
+		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
+	/* Foxconn T99W696.07, Lenovo T16 */
+	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe152),
+		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
+	/* Foxconn T99W696.08, Lenovo P14s */
+	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe153),
+		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
+	/* Foxconn T99W696.09, Lenovo P16s */
+	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe154),
+		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
+	/* Foxconn T99W696.10, Lenovo P1 */
+	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe155),
+		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
 	{ PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0308),
 		.driver_data = (kernel_ulong_t) &mhi_qcom_sdx65_info },
 	/* Telit FN990B40 (sdx72) */
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] bus: mhi: host: pci_generic: Add more Foxconn T99W696 modem
  2025-07-29  8:57 [PATCH] bus: mhi: host: pci_generic: Add more Foxconn T99W696 modem Slark Xiao
@ 2025-08-18  8:14 ` Manivannan Sadhasivam
  2025-08-18 10:45   ` Slark Xiao
  0 siblings, 1 reply; 4+ messages in thread
From: Manivannan Sadhasivam @ 2025-08-18  8:14 UTC (permalink / raw)
  To: Slark Xiao; +Cc: mhi, linux-arm-msm, linux-kernel

On Tue, Jul 29, 2025 at 04:57:26PM GMT, Slark Xiao wrote:
> There are more platforms need support Foxconn T99W696 modem.
> This requirement comes from Lenovo side since they want 1 platform
> to correspond to 1 modem SKU.
> 
> Signed-off-by: Slark Xiao <slark_xiao@163.com>
> ---
>  drivers/bus/mhi/host/pci_generic.c | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
> index 4edb5bb476ba..1fc43f1b86be 100644
> --- a/drivers/bus/mhi/host/pci_generic.c
> +++ b/drivers/bus/mhi/host/pci_generic.c
> @@ -932,6 +932,24 @@ static const struct pci_device_id mhi_pci_id_table[] = {
>  	/* Foxconn T99W696.00, Foxconn SKU */
>  	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe146),
>  		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> +	/* Foxconn T99W696.05, Lenovo T14 */
> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe150),
> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> +	/* Foxconn T99W696.06, Lenovo T15 */
> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe151),
> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> +	/* Foxconn T99W696.07, Lenovo T16 */
> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe152),
> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> +	/* Foxconn T99W696.08, Lenovo P14s */
> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe153),
> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> +	/* Foxconn T99W696.09, Lenovo P16s */
> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe154),
> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> +	/* Foxconn T99W696.10, Lenovo P1 */
> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe155),
> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },

Since all T99W696 derivatives are using the same config, can't you use below?

	PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, PCI_ANY_ID),
		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },

I'm presumed that all 0x0308 based modems are T99W696 derivatives.

- Mani

-- 
மணிவண்ணன் சதாசிவம்

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re:Re: [PATCH] bus: mhi: host: pci_generic: Add more Foxconn T99W696 modem
  2025-08-18  8:14 ` Manivannan Sadhasivam
@ 2025-08-18 10:45   ` Slark Xiao
  2025-08-18 16:26     ` Manivannan Sadhasivam
  0 siblings, 1 reply; 4+ messages in thread
From: Slark Xiao @ 2025-08-18 10:45 UTC (permalink / raw)
  To: Manivannan Sadhasivam; +Cc: mhi, linux-arm-msm, linux-kernel



At 2025-08-18 16:14:28, "Manivannan Sadhasivam" <mani@kernel.org> wrote:
>On Tue, Jul 29, 2025 at 04:57:26PM GMT, Slark Xiao wrote:
>> There are more platforms need support Foxconn T99W696 modem.
>> This requirement comes from Lenovo side since they want 1 platform
>> to correspond to 1 modem SKU.
>> 
>> Signed-off-by: Slark Xiao <slark_xiao@163.com>
>> ---
>>  drivers/bus/mhi/host/pci_generic.c | 18 ++++++++++++++++++
>>  1 file changed, 18 insertions(+)
>> 
>> diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
>> index 4edb5bb476ba..1fc43f1b86be 100644
>> --- a/drivers/bus/mhi/host/pci_generic.c
>> +++ b/drivers/bus/mhi/host/pci_generic.c
>> @@ -932,6 +932,24 @@ static const struct pci_device_id mhi_pci_id_table[] = {
>>  	/* Foxconn T99W696.00, Foxconn SKU */
>>  	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe146),
>>  		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
>> +	/* Foxconn T99W696.05, Lenovo T14 */
>> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe150),
>> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
>> +	/* Foxconn T99W696.06, Lenovo T15 */
>> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe151),
>> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
>> +	/* Foxconn T99W696.07, Lenovo T16 */
>> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe152),
>> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
>> +	/* Foxconn T99W696.08, Lenovo P14s */
>> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe153),
>> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
>> +	/* Foxconn T99W696.09, Lenovo P16s */
>> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe154),
>> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
>> +	/* Foxconn T99W696.10, Lenovo P1 */
>> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe155),
>> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
>
>Since all T99W696 derivatives are using the same config, can't you use below?
>
>	PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, PCI_ANY_ID),
>		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
>
>I'm presumed that all 0x0308 based modems are T99W696 derivatives.
>
>- Mani
>
Hi Mani,
Yeah, this is really helpful.
So shall I update the previous T99W696 IDs with this new match case?

Thanks
>-- 
>மணிவண்ணன் சதாசிவம்

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] bus: mhi: host: pci_generic: Add more Foxconn T99W696 modem
  2025-08-18 10:45   ` Slark Xiao
@ 2025-08-18 16:26     ` Manivannan Sadhasivam
  0 siblings, 0 replies; 4+ messages in thread
From: Manivannan Sadhasivam @ 2025-08-18 16:26 UTC (permalink / raw)
  To: Slark Xiao; +Cc: mhi, linux-arm-msm, linux-kernel

On Mon, Aug 18, 2025 at 06:45:04PM GMT, Slark Xiao wrote:
> 
> 
> At 2025-08-18 16:14:28, "Manivannan Sadhasivam" <mani@kernel.org> wrote:
> >On Tue, Jul 29, 2025 at 04:57:26PM GMT, Slark Xiao wrote:
> >> There are more platforms need support Foxconn T99W696 modem.
> >> This requirement comes from Lenovo side since they want 1 platform
> >> to correspond to 1 modem SKU.
> >> 
> >> Signed-off-by: Slark Xiao <slark_xiao@163.com>
> >> ---
> >>  drivers/bus/mhi/host/pci_generic.c | 18 ++++++++++++++++++
> >>  1 file changed, 18 insertions(+)
> >> 
> >> diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
> >> index 4edb5bb476ba..1fc43f1b86be 100644
> >> --- a/drivers/bus/mhi/host/pci_generic.c
> >> +++ b/drivers/bus/mhi/host/pci_generic.c
> >> @@ -932,6 +932,24 @@ static const struct pci_device_id mhi_pci_id_table[] = {
> >>  	/* Foxconn T99W696.00, Foxconn SKU */
> >>  	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe146),
> >>  		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> >> +	/* Foxconn T99W696.05, Lenovo T14 */
> >> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe150),
> >> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> >> +	/* Foxconn T99W696.06, Lenovo T15 */
> >> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe151),
> >> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> >> +	/* Foxconn T99W696.07, Lenovo T16 */
> >> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe152),
> >> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> >> +	/* Foxconn T99W696.08, Lenovo P14s */
> >> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe153),
> >> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> >> +	/* Foxconn T99W696.09, Lenovo P16s */
> >> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe154),
> >> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> >> +	/* Foxconn T99W696.10, Lenovo P1 */
> >> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, 0xe155),
> >> +		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> >
> >Since all T99W696 derivatives are using the same config, can't you use below?
> >
> >	PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x0308, PCI_VENDOR_ID_FOXCONN, PCI_ANY_ID),
> >		.driver_data = (kernel_ulong_t) &mhi_foxconn_t99w696_info },
> >
> >I'm presumed that all 0x0308 based modems are T99W696 derivatives.
> >
> >- Mani
> >
> Hi Mani,
> Yeah, this is really helpful.
> So shall I update the previous T99W696 IDs with this new match case?
> 

Yes please.

- Mani

-- 
மணிவண்ணன் சதாசிவம்

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-08-18 16:26 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-29  8:57 [PATCH] bus: mhi: host: pci_generic: Add more Foxconn T99W696 modem Slark Xiao
2025-08-18  8:14 ` Manivannan Sadhasivam
2025-08-18 10:45   ` Slark Xiao
2025-08-18 16:26     ` Manivannan Sadhasivam

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).