mbox series

[0/2] pinctrl:at91-pio4:add support for pullup/down

Message ID 20221007151647.98222-1-Ryan.Wanner@microchip.com
Headers show
Series pinctrl:at91-pio4:add support for pullup/down | expand

Message

Ryan Wanner Oct. 7, 2022, 3:16 p.m. UTC
From: Ryan Wanner <Ryan.Wanner@microchip.com>

This patch set adds support for pull up/down pinctl configuration.
The implementation is based off of other pinctl drivers that have
implemented line bias configurations.

The second patch addes a case for PIN_CONFIG_PERSIST_STATE
this shows up becuse the gpiod api passes this into the new config_set
function that was just implemented. Looking at other drivers like TI
driver, added the ENOTSUPP to the switch case for that state flag.

How this was tested was by using a gpio program that I created to test
configuration from userspace. This program was run in the
background using & then using gpioinfo function checked if the change
has been detected by the gpiod api. Then using devmem reading the
regester making sure that the correct bit was set. The registers where
checked before and during the program is being run, making sure the
change happens.

In the program Pin 127 would be passed into the test program. Before
the program was ran devmem for pin 127 config register. After
the progam is running in the background devmem for the same status
register is called, the result is showing the change in pinconfig.
The device used to test was the SAMA5D27_som1_ek.

Ryan Wanner (2):
  pinctrl: at91-pio4: Add configuration to userspace
  pinctrl: at91-pio4: Add persist state case in config

 drivers/pinctrl/pinctrl-at91-pio4.c | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

Comments

Nicolas Ferre Oct. 10, 2022, 9:11 a.m. UTC | #1
On 07/10/2022 at 17:16, Ryan.Wanner@microchip.com wrote:
> From: Ryan Wanner <Ryan.Wanner@microchip.com>
> 
> This patch set adds support for pull up/down pinctl configuration.
> The implementation is based off of other pinctl drivers that have
> implemented line bias configurations.
> 
> The second patch addes a case for PIN_CONFIG_PERSIST_STATE
> this shows up becuse the gpiod api passes this into the new config_set
> function that was just implemented. Looking at other drivers like TI
> driver, added the ENOTSUPP to the switch case for that state flag.
> 
> How this was tested was by using a gpio program that I created to test
> configuration from userspace. This program was run in the

Tested using the ioctl GPIO_V2_GET_LINE_IOCTL and with the configs flags:
GPIO_V2_LINE_FLAG_BIAS_PULL_DOWN, GPIO_V2_LINE_FLAG_BIAS_PULL_UP and 
GPIO_V2_LINE_FLAG_BIAS_DISABLED.

> background using & then using gpioinfo function checked if the change
> has been detected by the gpiod api. Then using devmem reading the
> regester making sure that the correct bit was set. The registers where
> checked before and during the program is being run, making sure the
> change happens.
> 
> In the program Pin 127 would be passed into the test program. Before
> the program was ran devmem for pin 127 config register. After
> the progam is running in the background devmem for the same status
> register is called, the result is showing the change in pinconfig.
> The device used to test was the SAMA5D27_som1_ek.

Same here, on sama5d27 som1 ek board:
Tested-by: Nicolas Ferre <nicolas.ferre@microchip.com>

Thanks, best regards,
   Nicolas

> 
> Ryan Wanner (2):
>    pinctrl: at91-pio4: Add configuration to userspace
>    pinctrl: at91-pio4: Add persist state case in config
> 
>   drivers/pinctrl/pinctrl-at91-pio4.c | 26 ++++++++++++++++++++++++++
>   1 file changed, 26 insertions(+)
>