imx: ventana: default msata/pci mux to pci before PCI enumeration
authorTim Harvey <tharvey@gateworks.com>
Sat, 9 May 2015 01:28:34 +0000 (18:28 -0700)
committerStefano Babic <sbabic@denx.de>
Fri, 15 May 2015 17:21:25 +0000 (19:21 +0200)
PCI enumeration occurs early, before we fully configure our GPIO's. Make
sure we steer the MSATA/PCI mux to PCI in board_init to ensure PCI is
selected before enumeration.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
board/gateworks/gw_ventana/gw_ventana.c

index 8cfc1f2d5ac95befbca6fde9c8e96e3dbb733f43..cf866ca472ff11eed87f6421838451fe33cc9642 100644 (file)
@@ -1174,13 +1174,10 @@ static void setup_board_gpio(int board)
        gpio_direction_output(GP_RS232_EN, (hwconfig("rs232")) ? 0 : 1);
 
        /* MSATA Enable */
-       gpio_request(GP_MSATA_SEL, "msata_en");
        if (is_cpu_type(MXC_CPU_MX6Q) &&
            test_bit(EECONFIG_SATA, info->config)) {
                gpio_direction_output(GP_MSATA_SEL,
                                      (hwconfig("msata")) ?  1 : 0);
-       } else {
-               gpio_direction_output(GP_MSATA_SEL, 0);
        }
 
 #if !defined(CONFIG_CMD_PCI)
@@ -1435,6 +1432,10 @@ int board_init(void)
                /* GW522x Uses GPIO3_IO23 for PCIE_RST# */
                if (board_type == GW52xx && ventana_info.model[4] == '2')
                        gpio_cfg[board_type].pcie_rst = IMX_GPIO_NR(3, 23);
+
+               /* MSATA Enable - default to PCI */
+               gpio_request(GP_MSATA_SEL, "msata_en");
+               gpio_direction_output(GP_MSATA_SEL, 0);
        }
 
        return 0;