From: Jagan Teki <ja...@amarulasolutions.com>

Add imx6_pcie_toggle_power on board file using dm_gpio_*
calls for OF_CONTROL configs.

Cc: Stefano Babic <sba...@denx.de>
Cc: Fabio Estevam <fabio.este...@nxp.com>
Cc: Michael Trimarchi <mich...@amarulasolutions.com>
Signed-off-by: Jagan Teki <ja...@amarulasolutions.com>
---
Changes for v4, v3, v2:
- none

 board/freescale/mx6sabresd/mx6sabresd.c | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/board/freescale/mx6sabresd/mx6sabresd.c 
b/board/freescale/mx6sabresd/mx6sabresd.c
index 1631dbc..f4e14be 100644
--- a/board/freescale/mx6sabresd/mx6sabresd.c
+++ b/board/freescale/mx6sabresd/mx6sabresd.c
@@ -533,6 +533,36 @@ int overwrite_console(void)
        return 1;
 }
 
+#ifdef CONFIG_OF_CONTROL
+int imx6_pcie_toggle_power(void)
+{
+#ifdef CONFIG_PCIE_IMX_POWER_GPIO
+       struct gpio_desc toggle;
+       int ret;
+
+       ret = dm_gpio_lookup_name("GPIO3_19", &toggle);
+       if (ret) {
+               printf("Cannot get GPIO3_19\n");
+               return ret;
+       }
+
+       ret = dm_gpio_request(&toggle, "toggle");
+       if (ret) {
+               printf("Cannot request GPIO3_19\n");
+               return ret;
+       }
+
+       dm_gpio_set_dir_flags(&toggle, GPIOD_IS_OUT);
+
+       dm_gpio_set_value(&toggle, 0);
+       mdelay(20);
+       dm_gpio_set_value(&toggle, 1);
+       mdelay(20);
+#endif
+       return 0;
+}
+#endif
+
 #ifndef CONFIG_OF_CONTROL
 int board_eth_init(bd_t *bis)
 {
-- 
1.9.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to