summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorguoyin.chen <guoyin.chen@freescale.com>2012-12-18 17:47:29 +0800
committerTapani <tapani@vmail.me>2013-03-29 11:41:57 +0800
commit8e2767d8e6ba0013e6cf088fc05f9161968570d4 (patch)
tree357e3863eb1871838a3ef8aeeed76a110ca95d7a /arch
parentf4ec9060d9e6b32d188c0bb732fce4cd97a8a430 (diff)
ENGR00237520 mx6q_sabresd: Move power control to pcie driver
Keep power supply of pcie by setting the flag pcie_power_always_on Signed-off-by: guoyin.chen <guoyin.chen@freescale.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-mx6/board-mx6q_sabresd.c33
1 files changed, 1 insertions, 32 deletions
diff --git a/arch/arm/mach-mx6/board-mx6q_sabresd.c b/arch/arm/mach-mx6/board-mx6q_sabresd.c
index 7e6ae6a5c2d8..089c52f7d14a 100644
--- a/arch/arm/mach-mx6/board-mx6q_sabresd.c
+++ b/arch/arm/mach-mx6/board-mx6q_sabresd.c
@@ -1462,31 +1462,6 @@ static int __init imx6q_init_audio(void)
return 0;
}
-#ifndef CONFIG_IMX_PCIE
-static void pcie_3v3_power(void)
-{
- /* disable PCIE_3V3 first */
- gpio_request(SABRESD_PCIE_PWR_EN, "pcie_3v3_en");
- gpio_direction_output(SABRESD_PCIE_PWR_EN, 0);
- mdelay(10);
- /* enable PCIE_3V3 again */
- gpio_set_value(SABRESD_PCIE_PWR_EN, 1);
- gpio_free(SABRESD_PCIE_PWR_EN);
-}
-
-static void pcie_3v3_reset(void)
-{
- /* reset miniPCIe */
- gpio_request(SABRESD_PCIE_RST_B_REVB, "pcie_reset_rebB");
- gpio_direction_output(SABRESD_PCIE_RST_B_REVB, 0);
- /* The PCI Express Mini CEM specification states that PREST# is
- deasserted minimum 1ms after 3.3vVaux has been applied and stable*/
- mdelay(1);
- gpio_set_value(SABRESD_PCIE_RST_B_REVB, 1);
- gpio_free(SABRESD_PCIE_RST_B_REVB);
-}
-#endif
-
static void gps_power_on(bool on)
{
/* Enable/disable aux_3v15 */
@@ -1738,6 +1713,7 @@ static const struct imx_pcie_platform_data mx6_sabresd_pcie_data __initconst = {
.pcie_rst = SABRESD_PCIE_RST_B_REVB,
.pcie_wake_up = SABRESD_PCIE_WAKE_B,
.pcie_dis = SABRESD_PCIE_DIS_B,
+ .pcie_power_always_on = 1,
};
static int __init early_enable_lcd_ldb(char *p)
@@ -1977,13 +1953,6 @@ static void __init mx6_sabresd_board_init(void)
gpio_direction_output(SABRESD_AUX_5V_EN, 1);
gpio_set_value(SABRESD_AUX_5V_EN, 1);
-#ifndef CONFIG_IMX_PCIE
- /* enable pcie 3v3 power without pcie driver */
- pcie_3v3_power();
- mdelay(10);
- pcie_3v3_reset();
-#endif
-
gps_power_on(true);
/* Register charger chips */
platform_device_register(&sabresd_max8903_charger_1);