|
|
@ -586,6 +586,7 @@ struct ventana gpio_cfg[GW_UNKNOWN] = { |
|
|
|
.rs485en = IMX_GPIO_NR(3, 24), |
|
|
|
.rs485en = IMX_GPIO_NR(3, 24), |
|
|
|
.dioi2c_en = IMX_GPIO_NR(4, 5), |
|
|
|
.dioi2c_en = IMX_GPIO_NR(4, 5), |
|
|
|
.pcie_sson = IMX_GPIO_NR(1, 20), |
|
|
|
.pcie_sson = IMX_GPIO_NR(1, 20), |
|
|
|
|
|
|
|
.otgpwr_en = IMX_GPIO_NR(3, 22), |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
/* GW51xx */ |
|
|
|
/* GW51xx */ |
|
|
@ -604,6 +605,7 @@ struct ventana gpio_cfg[GW_UNKNOWN] = { |
|
|
|
.gps_shdn = IMX_GPIO_NR(1, 2), |
|
|
|
.gps_shdn = IMX_GPIO_NR(1, 2), |
|
|
|
.vidin_en = IMX_GPIO_NR(5, 20), |
|
|
|
.vidin_en = IMX_GPIO_NR(5, 20), |
|
|
|
.wdis = IMX_GPIO_NR(7, 12), |
|
|
|
.wdis = IMX_GPIO_NR(7, 12), |
|
|
|
|
|
|
|
.otgpwr_en = IMX_GPIO_NR(3, 22), |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
/* GW52xx */ |
|
|
|
/* GW52xx */ |
|
|
@ -626,6 +628,7 @@ struct ventana gpio_cfg[GW_UNKNOWN] = { |
|
|
|
.wdis = IMX_GPIO_NR(7, 12), |
|
|
|
.wdis = IMX_GPIO_NR(7, 12), |
|
|
|
.msata_en = GP_MSATA_SEL, |
|
|
|
.msata_en = GP_MSATA_SEL, |
|
|
|
.rs232_en = GP_RS232_EN, |
|
|
|
.rs232_en = GP_RS232_EN, |
|
|
|
|
|
|
|
.otgpwr_en = IMX_GPIO_NR(3, 22), |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
/* GW53xx */ |
|
|
|
/* GW53xx */ |
|
|
@ -647,6 +650,7 @@ struct ventana gpio_cfg[GW_UNKNOWN] = { |
|
|
|
.wdis = IMX_GPIO_NR(7, 12), |
|
|
|
.wdis = IMX_GPIO_NR(7, 12), |
|
|
|
.msata_en = GP_MSATA_SEL, |
|
|
|
.msata_en = GP_MSATA_SEL, |
|
|
|
.rs232_en = GP_RS232_EN, |
|
|
|
.rs232_en = GP_RS232_EN, |
|
|
|
|
|
|
|
.otgpwr_en = IMX_GPIO_NR(3, 22), |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
/* GW54xx */ |
|
|
|
/* GW54xx */ |
|
|
@ -670,6 +674,7 @@ struct ventana gpio_cfg[GW_UNKNOWN] = { |
|
|
|
.wdis = IMX_GPIO_NR(5, 17), |
|
|
|
.wdis = IMX_GPIO_NR(5, 17), |
|
|
|
.msata_en = GP_MSATA_SEL, |
|
|
|
.msata_en = GP_MSATA_SEL, |
|
|
|
.rs232_en = GP_RS232_EN, |
|
|
|
.rs232_en = GP_RS232_EN, |
|
|
|
|
|
|
|
.otgpwr_en = IMX_GPIO_NR(3, 22), |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
/* GW551x */ |
|
|
|
/* GW551x */ |
|
|
@ -715,6 +720,7 @@ struct ventana gpio_cfg[GW_UNKNOWN] = { |
|
|
|
.pcie_rst = IMX_GPIO_NR(1, 0), |
|
|
|
.pcie_rst = IMX_GPIO_NR(1, 0), |
|
|
|
.vidin_en = IMX_GPIO_NR(5, 20), |
|
|
|
.vidin_en = IMX_GPIO_NR(5, 20), |
|
|
|
.wdis = IMX_GPIO_NR(7, 12), |
|
|
|
.wdis = IMX_GPIO_NR(7, 12), |
|
|
|
|
|
|
|
.otgpwr_en = IMX_GPIO_NR(3, 22), |
|
|
|
}, |
|
|
|
}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
@ -725,10 +731,6 @@ void setup_iomux_gpio(int board, struct ventana_board_info *info) |
|
|
|
/* iomux common to all Ventana boards */ |
|
|
|
/* iomux common to all Ventana boards */ |
|
|
|
SETUP_IOMUX_PADS(gw_gpio_pads); |
|
|
|
SETUP_IOMUX_PADS(gw_gpio_pads); |
|
|
|
|
|
|
|
|
|
|
|
/* OTG power off */ |
|
|
|
|
|
|
|
gpio_request(GP_USB_OTG_PWR, "usbotg_pwr"); |
|
|
|
|
|
|
|
gpio_direction_output(GP_USB_OTG_PWR, 0); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (board >= GW_UNKNOWN) |
|
|
|
if (board >= GW_UNKNOWN) |
|
|
|
return; |
|
|
|
return; |
|
|
|
|
|
|
|
|
|
|
@ -818,6 +820,12 @@ void setup_iomux_gpio(int board, struct ventana_board_info *info) |
|
|
|
gpio_direction_output(gpio_cfg[board].wdis, 1); |
|
|
|
gpio_direction_output(gpio_cfg[board].wdis, 1); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* OTG power off */ |
|
|
|
|
|
|
|
if (gpio_cfg[board].otgpwr_en) { |
|
|
|
|
|
|
|
gpio_request(gpio_cfg[board].otgpwr_en, "usbotg_pwr"); |
|
|
|
|
|
|
|
gpio_direction_output(gpio_cfg[board].otgpwr_en, 0); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/* sense vselect pin to see if we support uhs-i */ |
|
|
|
/* sense vselect pin to see if we support uhs-i */ |
|
|
|
gpio_request(GP_SD3_VSELECT, "sd3_vselect"); |
|
|
|
gpio_request(GP_SD3_VSELECT, "sd3_vselect"); |
|
|
|
gpio_direction_input(GP_SD3_VSELECT); |
|
|
|
gpio_direction_input(GP_SD3_VSELECT); |
|
|
|