aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMihai Sain2022-05-25 13:32:08 +0300
committerEugen Hristev2022-06-30 15:49:00 +0300
commitc1cadac7933cbc3f81e9096843bffff8751baff9 (patch)
treec0e512fa9d5084254f9a1ac7816e9e3daf25f5d4
parent38200202997289c39454187da8f07c97eac70833 (diff)
gpio: atmel_pio4: add support for PIO_PORTE
Add support for gpio PORT E, which is available on e.g. sama7g5 SoC. Signed-off-by: Mihai Sain <mihai.sain@microchip.com>
-rw-r--r--arch/arm/mach-at91/include/mach/atmel_pio4.h1
-rw-r--r--drivers/gpio/atmel_pio4.c5
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/mach-at91/include/mach/atmel_pio4.h b/arch/arm/mach-at91/include/mach/atmel_pio4.h
index c3bd9140dfe..b712be8051a 100644
--- a/arch/arm/mach-at91/include/mach/atmel_pio4.h
+++ b/arch/arm/mach-at91/include/mach/atmel_pio4.h
@@ -74,6 +74,7 @@ struct atmel_pio4_port {
#define AT91_PIO_PORTB 0x1
#define AT91_PIO_PORTC 0x2
#define AT91_PIO_PORTD 0x3
+#define AT91_PIO_PORTE 0x4
int atmel_pio4_set_gpio(u32 port, u32 pin, u32 config);
int atmel_pio4_set_a_periph(u32 port, u32 pin, u32 config);
diff --git a/drivers/gpio/atmel_pio4.c b/drivers/gpio/atmel_pio4.c
index bea609db9df..77a76c1d505 100644
--- a/drivers/gpio/atmel_pio4.c
+++ b/drivers/gpio/atmel_pio4.c
@@ -36,6 +36,11 @@ static struct atmel_pio4_port *atmel_pio4_port_base(u32 port)
case AT91_PIO_PORTD:
base = (struct atmel_pio4_port *)ATMEL_BASE_PIOD;
break;
+#if (ATMEL_PIO_PORTS > 4)
+ case AT91_PIO_PORTE:
+ base = (struct atmel_pio4_port *)ATMEL_BASE_PIOE;
+ break;
+#endif
default:
printf("Error: Atmel PIO4: Failed to get PIO base of port#%d!\n",
port);