All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tung Pham <Tung.Pham@silabs.com>
To: Johan Hovold <johan@kernel.org>
Cc: Pho Tran <photranvan0712@gmail.com>,
	"gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>,
	"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Hung Nguyen <Hung.Nguyen@silabs.com>,
	Pho Tran <Pho.Tran@silabs.com>
Subject: RE: [PATCH v12] USB: serial: cp210x: Add support for GPIOs on CP2108
Date: Thu, 20 May 2021 15:11:54 +0000	[thread overview]
Message-ID: <CO1PR11MB4882BE3951A2CDFC8F060B58812A9@CO1PR11MB4882.namprd11.prod.outlook.com> (raw)
In-Reply-To: <YKNnBckiw4fLIuQL@hovoldconsulting.com>

[-- Attachment #1: Type: text/plain, Size: 1248 bytes --]



-----Original Message-----
From: Johan Hovold <johan@kernel.org> 
Sent: Tuesday, May 18, 2021 2:05 PM
To: Tung Pham <Tung.Pham@silabs.com>
Cc: Pho Tran <photranvan0712@gmail.com>; gregkh@linuxfoundation.org; linux-usb@vger.kernel.org; linux-kernel@vger.kernel.org; Hung Nguyen <Hung.Nguyen@silabs.com>; Pho Tran <Pho.Tran@silabs.com>
Subject: Re: [PATCH v12] USB: serial: cp210x: Add support for GPIOs on CP2108

CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.


On Tue, May 18, 2021 at 03:18:06AM +0000, Tung Pham wrote:
> Dear Johan Hovold.
> Do you agree and approve with this path?.

> I'm still waiting for you to confirm that you have tested the patch with different pin configurations in eeprom. The first few iterations > > clearly weren't tested and I don't want to waste more time reviewing it before it's tested as I believe I mentioned in my last mail.

> Johan

-> we have tested pass the GPIO of cp2108:
Case1: all 16 GPIO are configured as GPIO function.
Case2: all 16 GPIO are configured as alternative functions (not GPIO).
Please see attached file for more detail.
Thanks.
Tung Pham.

[-- Attachment #2: test_case_1.txt --]
[-- Type: text/plain, Size: 6704 bytes --]

root@ubuntu:/sys/class/gpio# ls
export  gpiochip496  unexport
root@ubuntu:/sys/class/gpio# echo 496 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 497 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 498 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 499 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 500 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 501 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 502 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 503 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 504 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 505 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 506 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 507 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 508 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 509 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 510 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo 511 > /sys/class/gpio/export
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio496/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio497/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio498/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio499/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio500/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio501/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio502/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio503/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio504/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio505/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio506/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio507/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio508/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio509/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio510/direction
root@ubuntu:/sys/class/gpio# echo out > /sys/class/gpio/gpio511/direction
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio496/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio497/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio498/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio499/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio500/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio501/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio502/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio503/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio504/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio505/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio506/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio507/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio508/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio509/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio510/value
root@ubuntu:/sys/class/gpio# echo 1   > /sys/class/gpio/gpio511/value
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio496/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio497/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio498/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio499/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio500/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio501/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio502/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio503/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio504/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio505/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio506/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio507/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio508/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio509/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio510/value
1
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio511/value
1
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio496/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio497/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio498/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio499/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio500/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio501/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio502/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio503/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio504/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio505/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio506/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio507/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio508/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio509/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio510/value
root@ubuntu:/sys/class/gpio# echo 0   > /sys/class/gpio/gpio511/value
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio496/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio497/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio498/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio499/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio500/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio501/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio502/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio503/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio504/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio505/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio506/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio507/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio508/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio509/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio510/value
0
root@ubuntu:/sys/class/gpio# cat /sys/class/gpio/gpio511/value
0

[-- Attachment #3: test_case_2.txt --]
[-- Type: text/plain, Size: 1775 bytes --]

root@ubuntu:/sys/class/gpio# ls
export  gpiochip496  unexport
root@ubuntu:/sys/class/gpio# echo 496 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 497 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 498 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 499 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 500 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 501 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 502 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 503 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 504 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 505 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 506 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 507 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 508 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 509 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 510 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# echo 511 > /sys/class/gpio/export
bash: echo: write error: No such device
root@ubuntu:/sys/class/gpio# 

[-- Attachment #4: scripts.txt --]
[-- Type: text/plain, Size: 3762 bytes --]

echo 496 > /sys/class/gpio/export
echo 497 > /sys/class/gpio/export
echo 498 > /sys/class/gpio/export
echo 499 > /sys/class/gpio/export
echo 500 > /sys/class/gpio/export
echo 501 > /sys/class/gpio/export
echo 502 > /sys/class/gpio/export
echo 503 > /sys/class/gpio/export
echo 504 > /sys/class/gpio/export
echo 505 > /sys/class/gpio/export
echo 506 > /sys/class/gpio/export
echo 507 > /sys/class/gpio/export
echo 508 > /sys/class/gpio/export
echo 509 > /sys/class/gpio/export
echo 510 > /sys/class/gpio/export
echo 511 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio496/direction
echo out > /sys/class/gpio/gpio497/direction
echo out > /sys/class/gpio/gpio498/direction
echo out > /sys/class/gpio/gpio499/direction
echo out > /sys/class/gpio/gpio500/direction
echo out > /sys/class/gpio/gpio501/direction
echo out > /sys/class/gpio/gpio502/direction
echo out > /sys/class/gpio/gpio503/direction
echo out > /sys/class/gpio/gpio504/direction
echo out > /sys/class/gpio/gpio505/direction
echo out > /sys/class/gpio/gpio506/direction
echo out > /sys/class/gpio/gpio507/direction
echo out > /sys/class/gpio/gpio508/direction
echo out > /sys/class/gpio/gpio509/direction
echo out > /sys/class/gpio/gpio510/direction
echo out > /sys/class/gpio/gpio511/direction
echo 1   > /sys/class/gpio/gpio496/value
echo 1   > /sys/class/gpio/gpio497/value
echo 1   > /sys/class/gpio/gpio498/value
echo 1   > /sys/class/gpio/gpio499/value
echo 1   > /sys/class/gpio/gpio500/value
echo 1   > /sys/class/gpio/gpio501/value
echo 1   > /sys/class/gpio/gpio502/value
echo 1   > /sys/class/gpio/gpio503/value
echo 1   > /sys/class/gpio/gpio504/value
echo 1   > /sys/class/gpio/gpio505/value
echo 1   > /sys/class/gpio/gpio506/value
echo 1   > /sys/class/gpio/gpio507/value
echo 1   > /sys/class/gpio/gpio508/value
echo 1   > /sys/class/gpio/gpio509/value
echo 1   > /sys/class/gpio/gpio510/value
echo 1   > /sys/class/gpio/gpio511/value
cat /sys/class/gpio/gpio496/value
cat /sys/class/gpio/gpio497/value
cat /sys/class/gpio/gpio498/value
cat /sys/class/gpio/gpio499/value
cat /sys/class/gpio/gpio500/value
cat /sys/class/gpio/gpio501/value
cat /sys/class/gpio/gpio502/value
cat /sys/class/gpio/gpio503/value
cat /sys/class/gpio/gpio504/value
cat /sys/class/gpio/gpio505/value
cat /sys/class/gpio/gpio506/value
cat /sys/class/gpio/gpio507/value
cat /sys/class/gpio/gpio508/value
cat /sys/class/gpio/gpio509/value
cat /sys/class/gpio/gpio510/value
cat /sys/class/gpio/gpio511/value
echo 0   > /sys/class/gpio/gpio496/value
echo 0   > /sys/class/gpio/gpio497/value
echo 0   > /sys/class/gpio/gpio498/value
echo 0   > /sys/class/gpio/gpio499/value
echo 0   > /sys/class/gpio/gpio500/value
echo 0   > /sys/class/gpio/gpio501/value
echo 0   > /sys/class/gpio/gpio502/value
echo 0   > /sys/class/gpio/gpio503/value
echo 0   > /sys/class/gpio/gpio504/value
echo 0   > /sys/class/gpio/gpio505/value
echo 0   > /sys/class/gpio/gpio506/value
echo 0   > /sys/class/gpio/gpio507/value
echo 0   > /sys/class/gpio/gpio508/value
echo 0   > /sys/class/gpio/gpio509/value
echo 0   > /sys/class/gpio/gpio510/value
echo 0   > /sys/class/gpio/gpio511/value
cat /sys/class/gpio/gpio496/value
cat /sys/class/gpio/gpio497/value
cat /sys/class/gpio/gpio498/value
cat /sys/class/gpio/gpio499/value
cat /sys/class/gpio/gpio500/value
cat /sys/class/gpio/gpio501/value
cat /sys/class/gpio/gpio502/value
cat /sys/class/gpio/gpio503/value
cat /sys/class/gpio/gpio504/value
cat /sys/class/gpio/gpio505/value
cat /sys/class/gpio/gpio506/value
cat /sys/class/gpio/gpio507/value
cat /sys/class/gpio/gpio508/value
cat /sys/class/gpio/gpio509/value
cat /sys/class/gpio/gpio510/value
cat /sys/class/gpio/gpio511/value


  reply	other threads:[~2021-05-20 15:12 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-18  3:18 [PATCH v12] USB: serial: cp210x: Add support for GPIOs on CP2108 Tung Pham
2021-05-18  7:04 ` Johan Hovold
2021-05-20 15:11   ` Tung Pham [this message]
2021-05-21  8:07     ` Johan Hovold
2021-06-09  3:06       ` Tung Pham
2021-06-09  7:33         ` Johan Hovold
  -- strict thread matches above, loose matches on Subject: below --
2021-04-26  9:12 tu pham
2021-06-10 13:26 ` Johan Hovold
2021-06-13  9:45   ` Tung Pham
2021-06-16 14:38     ` Johan Hovold

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CO1PR11MB4882BE3951A2CDFC8F060B58812A9@CO1PR11MB4882.namprd11.prod.outlook.com \
    --to=tung.pham@silabs.com \
    --cc=Hung.Nguyen@silabs.com \
    --cc=Pho.Tran@silabs.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=johan@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=photranvan0712@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.