Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ca632a0d authored by George Cherian's avatar George Cherian Committed by Felipe Balbi
Browse files

usb: dwc3: omap: remove x_major calculation from revision register



Remove the x_major calculation logic from the wrapper revision register
to differentiate between OMAP5 and AM437x. This was done to find the
register offsets of wrapper register. Now that We do it using dt
compatible, remove the whole logic.

Signed-off-by: default avatarGeorge Cherian <george.cherian@ti.com>
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent 66847062
Loading
Loading
Loading
Loading
+7 −32
Original line number Original line Diff line number Diff line
@@ -77,10 +77,6 @@
#define USBOTGSS_DEV_EBC_EN			0x0110
#define USBOTGSS_DEV_EBC_EN			0x0110
#define USBOTGSS_DEBUG_OFFSET			0x0600
#define USBOTGSS_DEBUG_OFFSET			0x0600


/* REVISION REGISTER */
#define USBOTGSS_REVISION_XMAJOR(reg)		((reg >> 8) & 0x7)
#define USBOTGSS_REVISION_XMAJOR1		1
#define USBOTGSS_REVISION_XMAJOR2		2
/* SYSCONFIG REGISTER */
/* SYSCONFIG REGISTER */
#define USBOTGSS_SYSCONFIG_DMADISABLE		(1 << 16)
#define USBOTGSS_SYSCONFIG_DMADISABLE		(1 << 16)


@@ -129,7 +125,6 @@ struct dwc3_omap {
	u32			irq_eoi_offset;
	u32			irq_eoi_offset;
	u32			debug_offset;
	u32			debug_offset;
	u32			irq0_offset;
	u32			irq0_offset;
	u32			revision;


	u32			dma_status:1;
	u32			dma_status:1;


@@ -397,7 +392,6 @@ static int dwc3_omap_probe(struct platform_device *pdev)
	int			irq;
	int			irq;


	int			utmi_mode = 0;
	int			utmi_mode = 0;
	int			x_major;


	u32			reg;
	u32			reg;


@@ -448,32 +442,13 @@ static int dwc3_omap_probe(struct platform_device *pdev)
		goto err0;
		goto err0;
	}
	}


	reg = dwc3_omap_readl(omap->base, USBOTGSS_REVISION);
	/*
	omap->revision = reg;
	 * Differentiate between OMAP5 and AM437x.
	x_major = USBOTGSS_REVISION_XMAJOR(reg);
	 *

	 * For OMAP5(ES2.0) and AM437x wrapper revision is same, even
	/* Differentiate between OMAP5 and AM437x */
	 * though there are changes in wrapper register offsets.
	switch (x_major) {
	 *
	case USBOTGSS_REVISION_XMAJOR1:
	 * Using dt compatible to differentiate AM437x.
	case USBOTGSS_REVISION_XMAJOR2:
		omap->irq_eoi_offset = 0;
		omap->irq0_offset = 0;
		omap->irqmisc_offset = 0;
		omap->utmi_otg_offset = 0;
		omap->debug_offset = 0;
		break;
	default:
		/* Default to the latest revision */
		omap->irq_eoi_offset = USBOTGSS_EOI_OFFSET;
		omap->irq0_offset = USBOTGSS_IRQ0_OFFSET;
		omap->irqmisc_offset = USBOTGSS_IRQMISC_OFFSET;
		omap->utmi_otg_offset = USBOTGSS_UTMI_OTG_OFFSET;
		omap->debug_offset = USBOTGSS_DEBUG_OFFSET;
		break;
	}

	/* For OMAP5(ES2.0) and AM437x x_major is 2 even though there are
	 * changes in wrapper registers, Using dt compatible for aegis
	 */
	 */


	if (of_device_is_compatible(node, "ti,am437x-dwc3")) {
	if (of_device_is_compatible(node, "ti,am437x-dwc3")) {