From fbbf68d63c455a9bbbf86b989d4e860efa368976 Mon Sep 17 00:00:00 2001 From: Christian Taedcke Date: Fri, 6 Dec 2019 16:21:51 +0100 Subject: [PATCH] soc: silabs_exx32: Support all gpio ports on efm32jg and efm32pg This commit adds the remaining gpio ports I, J and K to the device tree and dts_fixup headers of the EFM32JG12B and EFM32PG12B SoCs. Signed-off-by: Christian Taedcke --- dts/arm/silabs/efm32_jg_pg_12b.dtsi | 24 +++++++++++++++++++++ soc/arm/silabs_exx32/efm32jg12b/dts_fixup.h | 4 ++++ soc/arm/silabs_exx32/efm32pg12b/dts_fixup.h | 3 +++ 3 files changed, 31 insertions(+) diff --git a/dts/arm/silabs/efm32_jg_pg_12b.dtsi b/dts/arm/silabs/efm32_jg_pg_12b.dtsi index 90d75bbe0a8..f9e51e98ce2 100644 --- a/dts/arm/silabs/efm32_jg_pg_12b.dtsi +++ b/dts/arm/silabs/efm32_jg_pg_12b.dtsi @@ -178,6 +178,30 @@ gpio-controller; #gpio-cells = <2>; }; + + gpioi: gpio@4000a180 { + compatible = "silabs,efm32-gpio-port"; + reg = <0x4000a180 0x30>; + label = "GPIO_I"; + gpio-controller; + #gpio-cells = <2>; + }; + + gpioj: gpio@4000a1c0 { + compatible = "silabs,efm32-gpio-port"; + reg = <0x4000a1c0 0x30>; + label = "GPIO_J"; + gpio-controller; + #gpio-cells = <2>; + }; + + gpiok: gpio@4000a1f0 { + compatible = "silabs,efm32-gpio-port"; + reg = <0x4000a1f0 0x30>; + label = "GPIO_K"; + gpio-controller; + #gpio-cells = <2>; + }; }; }; }; diff --git a/soc/arm/silabs_exx32/efm32jg12b/dts_fixup.h b/soc/arm/silabs_exx32/efm32jg12b/dts_fixup.h index f72de756107..b1a483c6fa5 100644 --- a/soc/arm/silabs_exx32/efm32jg12b/dts_fixup.h +++ b/soc/arm/silabs_exx32/efm32jg12b/dts_fixup.h @@ -25,5 +25,9 @@ #define DT_GPIO_GECKO_PORTD_NAME DT_SILABS_EFM32_GPIO_PORT_4000A090_LABEL #define DT_GPIO_GECKO_PORTE_NAME DT_SILABS_EFM32_GPIO_PORT_4000A0C0_LABEL #define DT_GPIO_GECKO_PORTF_NAME DT_SILABS_EFM32_GPIO_PORT_4000A0F0_LABEL +#define DT_GPIO_GECKO_PORTI_NAME DT_SILABS_EFM32_GPIO_PORT_4000A180_LABEL +#define DT_GPIO_GECKO_PORTJ_NAME DT_SILABS_EFM32_GPIO_PORT_4000A1C0_LABEL +#define DT_GPIO_GECKO_PORTK_NAME DT_SILABS_EFM32_GPIO_PORT_4000A1F0_LABEL + /* End of SoC Level DTS fixup file */ diff --git a/soc/arm/silabs_exx32/efm32pg12b/dts_fixup.h b/soc/arm/silabs_exx32/efm32pg12b/dts_fixup.h index 7fea7bed0eb..64b5703941d 100644 --- a/soc/arm/silabs_exx32/efm32pg12b/dts_fixup.h +++ b/soc/arm/silabs_exx32/efm32pg12b/dts_fixup.h @@ -25,5 +25,8 @@ #define DT_GPIO_GECKO_PORTD_NAME DT_SILABS_EFM32_GPIO_PORT_4000A090_LABEL #define DT_GPIO_GECKO_PORTE_NAME DT_SILABS_EFM32_GPIO_PORT_4000A0C0_LABEL #define DT_GPIO_GECKO_PORTF_NAME DT_SILABS_EFM32_GPIO_PORT_4000A0F0_LABEL +#define DT_GPIO_GECKO_PORTI_NAME DT_SILABS_EFM32_GPIO_PORT_4000A180_LABEL +#define DT_GPIO_GECKO_PORTJ_NAME DT_SILABS_EFM32_GPIO_PORT_4000A1C0_LABEL +#define DT_GPIO_GECKO_PORTK_NAME DT_SILABS_EFM32_GPIO_PORT_4000A1F0_LABEL /* End of SoC Level DTS fixup file */