2021-08-11 09:00:36

by Slark Xiao

[permalink] [raw]
Subject: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

Foxconn SDX55 T77W175 device is working in PCIe mode normally.
You can find it in drivers/bus/mhi/pci_geneirc.c file.
But in some scenario, we need to capture the memory dump once it crashed.
So a diag port driver is needed.

Signed-off-by: Slark Xiao <[email protected]>
---
drivers/usb/serial/qcserial.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c
index 83da8236e3c8..d8b58aea3c60 100644
--- a/drivers/usb/serial/qcserial.c
+++ b/drivers/usb/serial/qcserial.c
@@ -111,6 +111,7 @@ static const struct usb_device_id id_table[] = {
{USB_DEVICE(0x16d8, 0x8002)}, /* CMDTech Gobi 2000 Modem device (VU922) */
{USB_DEVICE(0x05c6, 0x9204)}, /* Gobi 2000 QDL device */
{USB_DEVICE(0x05c6, 0x9205)}, /* Gobi 2000 Modem device */
+ {USB_DEVICE(0x05c6, 0x901d)}, /* Foxconn SDX55 QDL */

/* Gobi 3000 devices */
{USB_DEVICE(0x03f0, 0x371d)}, /* HP un2430 Gobi 3000 QDL */
--
2.25.1



2021-08-11 11:00:16

by Sergei Shtylyov

[permalink] [raw]
Subject: Re: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

Hello!

On 11.08.2021 11:56, Slark Xiao wrote:

> Foxconn SDX55 T77W175 device is working in PCIe mode normally.
> You can find it in drivers/bus/mhi/pci_geneirc.c file.

pci_generic? :-)

> But in some scenario, we need to capture the memory dump once it crashed.
> So a diag port driver is needed.
>
> Signed-off-by: Slark Xiao <[email protected]>
[...]

MBR, Sergei

2021-08-11 11:46:11

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

On Wed, Aug 11, 2021 at 04:56:35PM +0800, Slark Xiao wrote:
> Foxconn SDX55 T77W175 device is working in PCIe mode normally.
> You can find it in drivers/bus/mhi/pci_geneirc.c file.
> But in some scenario, we need to capture the memory dump once it crashed.
> So a diag port driver is needed.
>
> Signed-off-by: Slark Xiao <[email protected]>
> ---
> drivers/usb/serial/qcserial.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c
> index 83da8236e3c8..d8b58aea3c60 100644
> --- a/drivers/usb/serial/qcserial.c
> +++ b/drivers/usb/serial/qcserial.c
> @@ -111,6 +111,7 @@ static const struct usb_device_id id_table[] = {
> {USB_DEVICE(0x16d8, 0x8002)}, /* CMDTech Gobi 2000 Modem device (VU922) */
> {USB_DEVICE(0x05c6, 0x9204)}, /* Gobi 2000 QDL device */
> {USB_DEVICE(0x05c6, 0x9205)}, /* Gobi 2000 Modem device */
> + {USB_DEVICE(0x05c6, 0x901d)}, /* Foxconn SDX55 QDL */

Why is this not sorted?

And the subject needs some work still...

thanks,

greg k-h

2021-08-11 12:04:41

by Bjørn Mork

[permalink] [raw]
Subject: Re: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

Slark Xiao <[email protected]> writes:

> diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c
> index 83da8236e3c8..d8b58aea3c60 100644
> --- a/drivers/usb/serial/qcserial.c
> +++ b/drivers/usb/serial/qcserial.c
> @@ -111,6 +111,7 @@ static const struct usb_device_id id_table[] = {
> {USB_DEVICE(0x16d8, 0x8002)}, /* CMDTech Gobi 2000 Modem device (VU922) */
> {USB_DEVICE(0x05c6, 0x9204)}, /* Gobi 2000 QDL device */
> {USB_DEVICE(0x05c6, 0x9205)}, /* Gobi 2000 Modem device */
> + {USB_DEVICE(0x05c6, 0x901d)}, /* Foxconn SDX55 QDL */

I assume this device will expose other serial functions when booted in
application USB mode? But probably not with a Gobi 2k layout... Maybe
add the application device ID to some USB serial driver too, and include
the QDL device ID there as well to reduce confusion?

Could you provide a view of the default USB descriptors in both QDL and
application mode? E.g from lsusb -v or /sys/kernel/debug/usb/devices?


Bjørn

2021-08-12 01:49:38

by Slark Xiao

[permalink] [raw]
Subject: Re:Re: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

















At 2021-08-11 18:58:09, "Sergei Shtylyov" <[email protected]> wrote:
>Hello!
>
>On 11.08.2021 11:56, Slark Xiao wrote:
>
>> Foxconn SDX55 T77W175 device is working in PCIe mode normally.
>> You can find it in drivers/bus/mhi/pci_geneirc.c file.
>
> pci_generic? :-)
>
>> But in some scenario, we need to capture the memory dump once it crashed.
>> So a diag port driver is needed.
>>
>> Signed-off-by: Slark Xiao <[email protected]>
>[...]
>
>MBR, Sergei

Hi Sergei,
Yes, I didn't mix them up. Our product supports 3 modes: PCIE only, USB only, and PCIE+USB.
Normally, it would be PCIE mode. When we want to reproduce some crash issue, we will switch it from PCIE mode to PCIE+USB mode.
In this scenario, the USB port is used for capturing memory dump as our tool is designed based on Qualcomm USB Sahara protocol.

Thanks.

2021-08-12 01:57:19

by Slark Xiao

[permalink] [raw]
Subject: Re:Re: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

















At 2021-08-11 19:42:20, "Greg KH" <[email protected]> wrote:
>On Wed, Aug 11, 2021 at 04:56:35PM +0800, Slark Xiao wrote:
>> Foxconn SDX55 T77W175 device is working in PCIe mode normally.
>> You can find it in drivers/bus/mhi/pci_geneirc.c file.
>> But in some scenario, we need to capture the memory dump once it crashed.
>> So a diag port driver is needed.
>>
>> Signed-off-by: Slark Xiao <[email protected]>
>> ---
>> drivers/usb/serial/qcserial.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c
>> index 83da8236e3c8..d8b58aea3c60 100644
>> --- a/drivers/usb/serial/qcserial.c
>> +++ b/drivers/usb/serial/qcserial.c
>> @@ -111,6 +111,7 @@ static const struct usb_device_id id_table[] = {
>> {USB_DEVICE(0x16d8, 0x8002)}, /* CMDTech Gobi 2000 Modem device (VU922) */
>> {USB_DEVICE(0x05c6, 0x9204)}, /* Gobi 2000 QDL device */
>> {USB_DEVICE(0x05c6, 0x9205)}, /* Gobi 2000 Modem device */
>> + {USB_DEVICE(0x05c6, 0x901d)}, /* Foxconn SDX55 QDL */
>
>Why is this not sorted?
>
>And the subject needs some work still...
>
>thanks,
>
>greg k-h

Hi Greg,
Sorry, can you show me where should I put it at?
According to Bjørn comment, I think I need to create a new layout for Foxconn SDX55 device.

Thanks.

2021-08-12 02:40:44

by Slark Xiao

[permalink] [raw]
Subject: Re:Re: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

















At 2021-08-11 20:01:57, "Bjørn Mork" <[email protected]> wrote:
>Slark Xiao <[email protected]> writes:
>
>> diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c
>> index 83da8236e3c8..d8b58aea3c60 100644
>> --- a/drivers/usb/serial/qcserial.c
>> +++ b/drivers/usb/serial/qcserial.c
>> @@ -111,6 +111,7 @@ static const struct usb_device_id id_table[] = {
>> {USB_DEVICE(0x16d8, 0x8002)}, /* CMDTech Gobi 2000 Modem device (VU922) */
>> {USB_DEVICE(0x05c6, 0x9204)}, /* Gobi 2000 QDL device */
>> {USB_DEVICE(0x05c6, 0x9205)}, /* Gobi 2000 Modem device */
>> + {USB_DEVICE(0x05c6, 0x901d)}, /* Foxconn SDX55 QDL */
>
>I assume this device will expose other serial functions when booted in
>application USB mode? But probably not with a Gobi 2k layout... Maybe
>add the application device ID to some USB serial driver too, and include
>the QDL device ID there as well to reduce confusion?
>
>Could you provide a view of the default USB descriptors in both QDL and
>application mode? E.g from lsusb -v or /sys/kernel/debug/usb/devices?
>
>
>Bjørn

Hi Bjørn,
Thank you for your good advice. Actually it's my typo for 'QDL'. It should be 'Diag' port.
Please see my local setting for PCIE+USB mode:

jbd@jbd-ThinkPad-P1-Gen-4:~/git/net-next$ lsusb | grep 05c6
Bus 003 Device 003: ID 05c6:901d Qualcomm, Inc. Qualcomm HS-USB Android Diag 901D
jbd@jbd-ThinkPad-P1-Gen-4:~$ lspci | grep Foxconn
0000:08:00.0 Wireless controller [0d40]: Foxconn International, Inc. Device e0ab

One more, should I add a new layout for Qualcomm SDX55 platform? As there are G1K,G2K, SIERRA and HUAWEI layout, none of them includes Qualcomm SDX55.

Thanks

2021-08-12 08:17:17

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: Re: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

On Thu, Aug 12, 2021 at 09:52:56AM +0800, Slark Xiao wrote:
> At 2021-08-11 19:42:20, "Greg KH" <[email protected]> wrote:
> >On Wed, Aug 11, 2021 at 04:56:35PM +0800, Slark Xiao wrote:
> >> Foxconn SDX55 T77W175 device is working in PCIe mode normally.
> >> You can find it in drivers/bus/mhi/pci_geneirc.c file.
> >> But in some scenario, we need to capture the memory dump once it crashed.
> >> So a diag port driver is needed.
> >>
> >> Signed-off-by: Slark Xiao <[email protected]>
> >> ---
> >> drivers/usb/serial/qcserial.c | 1 +
> >> 1 file changed, 1 insertion(+)
> >>
> >> diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c
> >> index 83da8236e3c8..d8b58aea3c60 100644
> >> --- a/drivers/usb/serial/qcserial.c
> >> +++ b/drivers/usb/serial/qcserial.c
> >> @@ -111,6 +111,7 @@ static const struct usb_device_id id_table[] = {
> >> {USB_DEVICE(0x16d8, 0x8002)}, /* CMDTech Gobi 2000 Modem device (VU922) */
> >> {USB_DEVICE(0x05c6, 0x9204)}, /* Gobi 2000 QDL device */
> >> {USB_DEVICE(0x05c6, 0x9205)}, /* Gobi 2000 Modem device */
> >> + {USB_DEVICE(0x05c6, 0x901d)}, /* Foxconn SDX55 QDL */
> >
> >Why is this not sorted?
> >
> >And the subject needs some work still...
> >
> >thanks,
> >
> >greg k-h
>
> Hi Greg,
> Sorry, can you show me where should I put it at?

If it belongs in this list, then it should be in sorted order, which you
did not do here, so that would be a good idea, right?

> According to Bj?rn comment, I think I need to create a new layout for Foxconn SDX55 device.

That is up to you and Bj?rn to work out :)

thanks,

greg k-h

2021-08-12 11:08:59

by Slark Xiao

[permalink] [raw]
Subject: Re:Re: Re: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

















At 2021-08-12 14:46:54, "Greg KH" <[email protected]> wrote:
>On Thu, Aug 12, 2021 at 09:52:56AM +0800, Slark Xiao wrote:
>> At 2021-08-11 19:42:20, "Greg KH" <[email protected]> wrote:
>> >On Wed, Aug 11, 2021 at 04:56:35PM +0800, Slark Xiao wrote:
>> >> Foxconn SDX55 T77W175 device is working in PCIe mode normally.
>> >> You can find it in drivers/bus/mhi/pci_geneirc.c file.
>> >> But in some scenario, we need to capture the memory dump once it crashed.
>> >> So a diag port driver is needed.
>> >>
>> >> Signed-off-by: Slark Xiao <[email protected]>
>> >> ---
>> >> drivers/usb/serial/qcserial.c | 1 +
>> >> 1 file changed, 1 insertion(+)
>> >>
>> >> diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c
>> >> index 83da8236e3c8..d8b58aea3c60 100644
>> >> --- a/drivers/usb/serial/qcserial.c
>> >> +++ b/drivers/usb/serial/qcserial.c
>> >> @@ -111,6 +111,7 @@ static const struct usb_device_id id_table[] = {
>> >> {USB_DEVICE(0x16d8, 0x8002)}, /* CMDTech Gobi 2000 Modem device (VU922) */
>> >> {USB_DEVICE(0x05c6, 0x9204)}, /* Gobi 2000 QDL device */
>> >> {USB_DEVICE(0x05c6, 0x9205)}, /* Gobi 2000 Modem device */
>> >> + {USB_DEVICE(0x05c6, 0x901d)}, /* Foxconn SDX55 QDL */
>> >
>> >Why is this not sorted?
>> >
>> >And the subject needs some work still...
>> >
>> >thanks,
>> >
>> >greg k-h
>>
>> Hi Greg,
>> Sorry, can you show me where should I put it at?
>
>If it belongs in this list, then it should be in sorted order, which you
>did not do here, so that would be a good idea, right?
>
>> According to Bjørn comment, I think I need to create a new layout for Foxconn SDX55 device.
>
>That is up to you and Bjørn to work out :)
>
>thanks,
>
>greg k-h

Hi Greg, Bjørn,
How about move this change to /drivers/usb/serial/option.c ? I just test it and everything is ok for my device.
And then we can ignore the layout issue.

Thanks

2021-08-12 11:54:48

by Sergei Shtylyov

[permalink] [raw]
Subject: Re: [PATCH] [v2,1/1] This aims to support Foxconn SDX55

Hello!

On 12.08.2021 4:08, Slark Xiao wrote:

> HI Sergei,
>   Yes. Our produt has 3 mode: PCIe mode only, USB mode only, and PCIE+USB.
>   When we need to reproduce some crash issue, we will let it enter into
> PCIE+USB mode.
>   In this scenario, USB would have a diag port to capture memory dump.

That's all fine, I was just pointing out the typo. :-)
Couldn't open your another reply...

> At 2021-08-11 18:58:09, "Sergei Shtylyov" <[email protected]> wrote:
>>Hello!
>>
>>On 11.08.2021 11:56, Slark Xiao wrote:
>>
>>> Foxconn SDX55 T77W175 device is working in PCIe mode normally.
>>> You can find it in drivers/bus/mhi/pci_geneirc.c file.
>>
>> pci_generic? :-)
>>
>>> But in some scenario, we need to capture the memory dump once it crashed.
>>> So a diag port driver is needed.
>>>
>>> Signed-off-by: Slark Xiao <[email protected]>

[...]

MBR, Sergei