20 #include <linux/slab.h>
21 #include <linux/types.h>
25 #include <mach/common.h>
27 #include <mach/hardware.h>
32 static unsigned int devboard_pins[] = {
56 #define SDHC2_CD IOMUX_TO_GPIO(MX31_PIN_ATA_DIOR)
57 #define SDHC2_WP IOMUX_TO_GPIO(MX31_PIN_ATA_DIOW)
59 static int devboard_sdhc2_get_ro(
struct device *
dev)
82 "sdhc2-card-detect", data);
96 static void devboard_sdhc2_exit(
struct device *dev,
void *data)
104 .get_ro = devboard_sdhc2_get_ro,
105 .init = devboard_sdhc2_init,
106 .exit = devboard_sdhc2_exit,
109 #define SEL0 IOMUX_TO_GPIO(MX31_PIN_DTR_DCE1)
110 #define SEL1 IOMUX_TO_GPIO(MX31_PIN_DSR_DCE1)
111 #define SEL2 IOMUX_TO_GPIO(MX31_PIN_RI_DCE1)
112 #define SEL3 IOMUX_TO_GPIO(MX31_PIN_DCD_DCE1)
114 static void devboard_init_sel_gpios(
void)
118 gpio_export(
SEL0,
true);
123 gpio_export(
SEL1,
true);
128 gpio_export(
SEL2,
true);
133 gpio_export(
SEL3,
true);
136 #define USB_PAD_CFG (PAD_CTL_DRV_MAX | PAD_CTL_SRE_FAST | PAD_CTL_HYS_CMOS | \
137 PAD_CTL_ODE_CMOS | PAD_CTL_100K_PU)
158 #define USBH1_VBUSEN_B IOMUX_TO_GPIO(MX31_PIN_NFRE_B)
159 #define USBH1_MODE IOMUX_TO_GPIO(MX31_PIN_NFALE)
161 static int devboard_isp1105_init(
struct usb_phy *otg)
180 static int devboard_isp1105_set_vbus(
struct usb_otg *otg,
bool on)
191 .init = devboard_usbh1_hw_init,
195 static int __init devboard_usbh1_init(
void)
210 phy->
label =
"ISP1105";
211 phy->
init = devboard_isp1105_init;
212 phy->
otg->set_vbus = devboard_isp1105_set_vbus;
214 usbh1_pdata.otg =
phy;
218 return PTR_ERR(pdev);
243 devboard_init_sel_gpios();
247 devboard_usbh1_init();