From patchwork Thu Feb 25 06:36:25 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maulik Mankad X-Patchwork-Id: 81908 X-Patchwork-Delegate: me@felipebalbi.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter.kernel.org (8.14.3/8.14.3) with ESMTP id o1P6afUx009660 for ; Thu, 25 Feb 2010 06:36:41 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755173Ab0BYGgi (ORCPT ); Thu, 25 Feb 2010 01:36:38 -0500 Received: from bear.ext.ti.com ([192.94.94.41]:33128 "EHLO bear.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755033Ab0BYGgh (ORCPT ); Thu, 25 Feb 2010 01:36:37 -0500 Received: from dbdp31.itg.ti.com ([172.24.170.98]) by bear.ext.ti.com (8.13.7/8.13.7) with ESMTP id o1P6aQBF021191 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 25 Feb 2010 00:36:29 -0600 Received: from linfarm476.india.ti.com (localhost [127.0.0.1]) by dbdp31.itg.ti.com (8.13.8/8.13.8) with ESMTP id o1P6aPdP013227; Thu, 25 Feb 2010 12:06:26 +0530 (IST) Received: from linfarm476.india.ti.com (localhost [127.0.0.1]) by linfarm476.india.ti.com (8.12.11/8.12.11) with ESMTP id o1P6aPaf014586; Thu, 25 Feb 2010 12:06:25 +0530 Received: (from x0082077@localhost) by linfarm476.india.ti.com (8.12.11/8.12.11/Submit) id o1P6aPkD014584; Thu, 25 Feb 2010 12:06:25 +0530 From: Maulik Mankad To: linux-usb@vger.kernel.org Cc: linux-omap@vger.kernel.org, Maulik Mankad , Felipe Balbi , Greg Kroah-Hartman , David Brownell Subject: [PATCH 3/4] USB: MUSB: Add OMAP4 support in MUSB driver Date: Thu, 25 Feb 2010 12:06:25 +0530 Message-Id: <1267079785-14529-1-git-send-email-x0082077@ti.com> X-Mailer: git-send-email 1.5.5 USB: MUSB: Add OMAP4 support in MUSB driver Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter.kernel.org [140.211.167.41]); Thu, 25 Feb 2010 06:36:41 +0000 (UTC) Index: mainline/drivers/usb/musb/Makefile =================================================================== --- mainline.orig/drivers/usb/musb/Makefile +++ mainline/drivers/usb/musb/Makefile @@ -22,6 +22,10 @@ ifeq ($(CONFIG_ARCH_OMAP3430),y) musb_hdrc-objs += omap2430.o endif +ifeq ($(CONFIG_ARCH_OMAP4),y) + musb_hdrc-objs += omap2430.o +endif + ifeq ($(CONFIG_BF54x),y) musb_hdrc-objs += blackfin.o endif Index: mainline/drivers/usb/musb/musb_core.c =================================================================== --- mainline.orig/drivers/usb/musb/musb_core.c +++ mainline/drivers/usb/musb/musb_core.c @@ -982,7 +982,8 @@ static void musb_shutdown(struct platfor * more than selecting one of a bunch of predefined configurations. */ #if defined(CONFIG_USB_TUSB6010) || \ - defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP34XX) + defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP34XX) \ + || defined(CONFIG_ARCH_OMAP4) static ushort __initdata fifo_mode = 4; #else static ushort __initdata fifo_mode = 2; @@ -1468,7 +1469,8 @@ static int __init musb_core_init(u16 mus /*-------------------------------------------------------------------------*/ -#if defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP3430) +#if defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP3430) || \ + defined(CONFIG_ARCH_OMAP4) static irqreturn_t generic_interrupt(int irq, void *__hci) { Index: mainline/drivers/usb/musb/musb_core.h =================================================================== --- mainline.orig/drivers/usb/musb/musb_core.h +++ mainline/drivers/usb/musb/musb_core.h @@ -204,7 +204,8 @@ enum musb_g_ep0_state { */ #if defined(CONFIG_ARCH_DAVINCI) || defined(CONFIG_ARCH_OMAP2430) \ - || defined(CONFIG_ARCH_OMAP3430) || defined(CONFIG_BLACKFIN) + || defined(CONFIG_ARCH_OMAP3430) || defined(CONFIG_BLACKFIN) \ + || defined(CONFIG_ARCH_OMAP4) /* REVISIT indexed access seemed to * misbehave (on DaVinci) for at least peripheral IN ... */ @@ -555,7 +556,8 @@ extern void musb_hnp_stop(struct musb *m extern int musb_platform_set_mode(struct musb *musb, u8 musb_mode); #if defined(CONFIG_USB_TUSB6010) || defined(CONFIG_BLACKFIN) || \ - defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP34XX) + defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP34XX) || \ + defined(CONFIG_ARCH_OMAP4) extern void musb_platform_try_idle(struct musb *musb, unsigned long timeout); #else #define musb_platform_try_idle(x, y) do {} while (0) Index: mainline/drivers/usb/musb/omap2430.h =================================================================== --- mainline.orig/drivers/usb/musb/omap2430.h +++ mainline/drivers/usb/musb/omap2430.h @@ -10,7 +10,8 @@ #ifndef __MUSB_OMAP243X_H__ #define __MUSB_OMAP243X_H__ -#if defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP3430) +#if defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP3430) \ + || defined(CONFIG_ARCH_OMAP4) #include #include @@ -23,6 +24,8 @@ #define OMAP_HSOTG_BASE (OMAP243X_HS_BASE) #elif defined(CONFIG_ARCH_OMAP3430) #define OMAP_HSOTG_BASE (OMAP34XX_HSUSB_OTG_BASE) +#elif defined(CONFIG_ARCH_OMAP4) +#define OMAP_HSOTG_BASE (OMAP44XX_HSUSB_OTG_BASE) #endif #define OMAP_HSOTG(offset) (OMAP_HSOTG_BASE + 0x400 + (offset)) #define OTG_REVISION OMAP_HSOTG(0x0)