[PATCH 2/2] usb: chipidea: usbmisc: Add support for i.MX51 CPU
Alexander Shiyan
shc_work at mail.ru
Sun Nov 10 02:18:21 EST 2013
This adds i.MX51 as the next user of the usbmisc driver.
Since the functional is similar i.MX53, we just rename the
definitions and add an alias for the new CPU.
Signed-off-by: Alexander Shiyan <shc_work at mail.ru>
---
drivers/usb/chipidea/usbmisc_imx.c | 40 +++++++++++++++++++++-----------------
1 file changed, 22 insertions(+), 18 deletions(-)
diff --git a/drivers/usb/chipidea/usbmisc_imx.c b/drivers/usb/chipidea/usbmisc_imx.c
index 4381c5a6..f348ebb 100644
--- a/drivers/usb/chipidea/usbmisc_imx.c
+++ b/drivers/usb/chipidea/usbmisc_imx.c
@@ -25,12 +25,12 @@
#define MX27_H2_PM_BIT BIT(16)
#define MX27_OTG_PM_BIT BIT(24)
-#define MX53_USB_OTG_PHY_CTRL_0_OFFSET 0x08
-#define MX53_USB_UH2_CTRL_OFFSET 0x14
-#define MX53_USB_UH3_CTRL_OFFSET 0x18
-#define MX53_BM_OVER_CUR_DIS_H1 BIT(5)
-#define MX53_BM_OVER_CUR_DIS_OTG BIT(8)
-#define MX53_BM_OVER_CUR_DIS_UHx BIT(30)
+#define MX5_USB_OTG_PHY_CTRL_0_OFFSET 0x08
+#define MX5_USB_UH2_CTRL_OFFSET 0x14
+#define MX5_USB_UH3_CTRL_OFFSET 0x18
+#define MX5_BM_OVER_CUR_DIS_H1 BIT(5)
+#define MX5_BM_OVER_CUR_DIS_OTG BIT(8)
+#define MX5_BM_OVER_CUR_DIS_UHx BIT(30)
#define MX6_BM_OVER_CUR_DIS BIT(7)
@@ -102,7 +102,7 @@ static int usbmisc_imx27_init(struct imx_usbmisc_data *data)
return 0;
}
-static int usbmisc_imx53_init(struct imx_usbmisc_data *data)
+static int usbmisc_imx5_init(struct imx_usbmisc_data *data)
{
void __iomem *reg = NULL;
unsigned long flags;
@@ -115,20 +115,20 @@ static int usbmisc_imx53_init(struct imx_usbmisc_data *data)
spin_lock_irqsave(&usbmisc->lock, flags);
switch (data->index) {
case 0:
- reg = usbmisc->base + MX53_USB_OTG_PHY_CTRL_0_OFFSET;
- val = readl(reg) | MX53_BM_OVER_CUR_DIS_OTG;
+ reg = usbmisc->base + MX5_USB_OTG_PHY_CTRL_0_OFFSET;
+ val = readl(reg) | MX5_BM_OVER_CUR_DIS_OTG;
break;
case 1:
- reg = usbmisc->base + MX53_USB_OTG_PHY_CTRL_0_OFFSET;
- val = readl(reg) | MX53_BM_OVER_CUR_DIS_H1;
+ reg = usbmisc->base + MX5_USB_OTG_PHY_CTRL_0_OFFSET;
+ val = readl(reg) | MX5_BM_OVER_CUR_DIS_H1;
break;
case 2:
- reg = usbmisc->base + MX53_USB_UH2_CTRL_OFFSET;
- val = readl(reg) | MX53_BM_OVER_CUR_DIS_UHx;
+ reg = usbmisc->base + MX5_USB_UH2_CTRL_OFFSET;
+ val = readl(reg) | MX5_BM_OVER_CUR_DIS_UHx;
break;
case 3:
- reg = usbmisc->base + MX53_USB_UH3_CTRL_OFFSET;
- val = readl(reg) | MX53_BM_OVER_CUR_DIS_UHx;
+ reg = usbmisc->base + MX5_USB_UH3_CTRL_OFFSET;
+ val = readl(reg) | MX5_BM_OVER_CUR_DIS_UHx;
break;
}
if (reg && val)
@@ -166,8 +166,8 @@ static const struct usbmisc_ops imx27_usbmisc_ops = {
.init = usbmisc_imx27_init,
};
-static const struct usbmisc_ops imx53_usbmisc_ops = {
- .init = usbmisc_imx53_init,
+static const struct usbmisc_ops imx5_usbmisc_ops = {
+ .init = usbmisc_imx5_init,
};
static const struct usbmisc_ops imx6q_usbmisc_ops = {
@@ -204,8 +204,12 @@ static const struct of_device_id usbmisc_imx_dt_ids[] = {
.data = &imx27_usbmisc_ops,
},
{
+ .compatible = "fsl,imx51-usbmisc",
+ .data = &imx5_usbmisc_ops,
+ },
+ {
.compatible = "fsl,imx53-usbmisc",
- .data = &imx53_usbmisc_ops,
+ .data = &imx5_usbmisc_ops,
},
{
.compatible = "fsl,imx6q-usbmisc",
--
1.8.1.5
More information about the linux-arm-kernel
mailing list