platform/x86: pcengines-apuv2: add mpcie reset gpio export
authorFlorian Eckert <fe@dev.tdt.de>
Fri, 26 Jul 2019 06:21:15 +0000 (08:21 +0200)
committerAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Tue, 30 Jul 2019 11:14:25 +0000 (14:14 +0300)
On APUx we have also mpcie2/mpcie3 reset pins. To make it possible to reset
the ports from the userspace, add the definition to this platform
device. The gpio can then be exported by the legancy gpio subsystem to
toggle the mpcie reset pin.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Acked-by: Enrico Weigelt <info@metux.net>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
drivers/platform/x86/pcengines-apuv2.c

index e4c68ef..5670365 100644 (file)
@@ -32,6 +32,8 @@
 #define APU2_GPIO_REG_LED3             AMD_FCH_GPIO_REG_GPIO59_DEVSLP1
 #define APU2_GPIO_REG_MODESW           AMD_FCH_GPIO_REG_GPIO32_GE1
 #define APU2_GPIO_REG_SIMSWAP          AMD_FCH_GPIO_REG_GPIO33_GE2
+#define APU2_GPIO_REG_MPCIE2           AMD_FCH_GPIO_REG_GPIO59_DEVSLP0
+#define APU2_GPIO_REG_MPCIE3           AMD_FCH_GPIO_REG_GPIO51
 
 /* order in which the gpio lines are defined in the register list */
 #define APU2_GPIO_LINE_LED1            0
@@ -39,6 +41,8 @@
 #define APU2_GPIO_LINE_LED3            2
 #define APU2_GPIO_LINE_MODESW          3
 #define APU2_GPIO_LINE_SIMSWAP         4
+#define APU2_GPIO_LINE_MPCIE2          5
+#define APU2_GPIO_LINE_MPCIE3          6
 
 /* gpio device */
 
@@ -48,6 +52,8 @@ static int apu2_gpio_regs[] = {
        [APU2_GPIO_LINE_LED3]           = APU2_GPIO_REG_LED3,
        [APU2_GPIO_LINE_MODESW]         = APU2_GPIO_REG_MODESW,
        [APU2_GPIO_LINE_SIMSWAP]        = APU2_GPIO_REG_SIMSWAP,
+       [APU2_GPIO_LINE_MPCIE2]         = APU2_GPIO_REG_MPCIE2,
+       [APU2_GPIO_LINE_MPCIE3]         = APU2_GPIO_REG_MPCIE3,
 };
 
 static const char * const apu2_gpio_names[] = {
@@ -56,6 +62,8 @@ static const char * const apu2_gpio_names[] = {
        [APU2_GPIO_LINE_LED3]           = "front-led3",
        [APU2_GPIO_LINE_MODESW]         = "front-button",
        [APU2_GPIO_LINE_SIMSWAP]        = "simswap",
+       [APU2_GPIO_LINE_MPCIE2]         = "mpcie2_reset",
+       [APU2_GPIO_LINE_MPCIE3]         = "mpcie3_reset",
 };
 
 static const struct amd_fch_gpio_pdata board_apu2 = {