[Armadeus-commitlog] SF.net SVN: armadeus:[1251] trunk/buildroot/target/device/armadeus/linux/ kern
Brought to you by:
sszy
|
From: <ar...@us...> - 2009-05-01 13:01:35
|
Revision: 1251
http://armadeus.svn.sourceforge.net/armadeus/?rev=1251&view=rev
Author: artemys
Date: 2009-05-01 12:15:24 +0000 (Fri, 01 May 2009)
Log Message:
-----------
[LINUX] Makes imx_udc compiles again on 2.6.29
Modified Paths:
--------------
trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/030-armadeus-add_USB_registers.patch
Added Paths:
-----------
trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/031-armadeus-imx_udc_add_usb_h_include_to_arch_arm_mach-imx_include_mach.patch
Modified: trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/030-armadeus-add_USB_registers.patch
===================================================================
--- trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/030-armadeus-add_USB_registers.patch 2009-05-01 11:45:49 UTC (rev 1250)
+++ trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/030-armadeus-add_USB_registers.patch 2009-05-01 12:15:24 UTC (rev 1251)
@@ -1,5 +1,7 @@
---- linux-org/arch/arm/mach-imx/include/mach/hardware.h 2006-10-01 14:28:50.000000000 +0200
-+++ linux-imx/arch/arm/mach-imx/include/mach/hardware.h 2006-10-01 14:30:04.000000000 +0200
+Index: linux-2.6.29/arch/arm/mach-imx/include/mach/hardware.h
+===================================================================
+--- linux-2.6.29.orig/arch/arm/mach-imx/include/mach/hardware.h 2009-05-01 11:35:31.000000000 +0200
++++ linux-2.6.29/arch/arm/mach-imx/include/mach/hardware.h 2009-05-01 13:59:45.000000000 +0200
@@ -24,6 +24,8 @@
#include "imx-regs.h"
@@ -9,8 +11,10 @@
# define __REG(x) (*((volatile u32 *)IO_ADDRESS(x)))
# define __REG2(x,y) (*(volatile u32 *)((u32)&__REG(x) + (y)))
---- linux-org/arch/arm/mach-imx/include/mach/imx-regs.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-imx/arch/arm/mach-imx/include/mach/imx-regs.h 2006-10-01 14:30:04.000000000 +0200
+Index: linux-2.6.29/arch/arm/mach-imx/include/mach/imx-regs.h
+===================================================================
+--- linux-2.6.29.orig/arch/arm/mach-imx/include/mach/imx-regs.h 2009-05-01 11:33:45.000000000 +0200
++++ linux-2.6.29/arch/arm/mach-imx/include/mach/imx-regs.h 2009-05-01 14:02:48.000000000 +0200
@@ -186,7 +186,7 @@
#define PB19_AF_SSI_TXCLK ( GPIO_PORTB | GPIO_AF | 19 )
#define PB20_PF_USBD_AFE ( GPIO_PORTB | GPIO_PF | 20 )
@@ -20,9 +24,9 @@
#define PB23_PF_USBD_SUSPND ( GPIO_PORTB | GPIO_PF | 23 )
#define PB24_PF_USBD_VP ( GPIO_PORTB | GPIO_PF | 24 )
#define PB25_PF_USBD_VM ( GPIO_PORTB | GPIO_PF | 25 )
-@@ -591,4 +591,132 @@
- #define UTS_RXFULL (1<<3) /* RxFIFO full */
- #define UTS_SOFTRST (1<<0) /* Software reset */
+@@ -373,4 +373,40 @@
+ #define TSTAT_CAPT (1<<1)
+ #define TSTAT_COMP (1<<0)
+/*
+ * CSI register
@@ -50,106 +54,14 @@
+#define CSICR1_REDGE (1<<1)
+#define CSICR1_ENABLE (1)
+
-+/*
-+ * USB register
-+ */
-+#define USB_FRAME __REG(0x00 + IMX_USBD_BASE) /* USB frame */
-+#define USB_SPEC __REG(0x04 + IMX_USBD_BASE) /* USB Spec */
-+#define USB_STAT __REG(0x08 + IMX_USBD_BASE) /* USB Status */
-+#define USB_CTRL __REG(0x0C + IMX_USBD_BASE) /* USB Control */
-+#define USB_DADR __REG(0x10 + IMX_USBD_BASE) /* USB Descriptor RAM address */
-+#define USB_DDAT __REG(0x14 + IMX_USBD_BASE) /* USB Descriptor RAM/Endpoint buffer data */
-+#define USB_INTR __REG(0x18 + IMX_USBD_BASE) /* USB interrupt */
-+#define USB_MASK __REG(0x1C + IMX_USBD_BASE) /* USB Mask */
-+#define USB_ENAB __REG(0x24 + IMX_USBD_BASE) /* USB Enable */
-+#define USB_EP_STAT(x) __REG(0x30 + IMX_USBD_BASE + (x*0x30)) /* USB status/control */
-+#define USB_EP_INTR(x) __REG(0x34 + IMX_USBD_BASE + (x*0x30)) /* USB interrupt */
-+#define USB_EP_MASK(x) __REG(0x38 + IMX_USBD_BASE + (x*0x30)) /* USB mask */
-+#define USB_EP_FDAT(x) __REG(0x3C + IMX_USBD_BASE + (x*0x30)) /* USB FIFO data */
-+#define USB_EP_FDAT0(x) __REG8(0x3C + IMX_USBD_BASE + (x*0x30)) /* USB FIFO data */
-+#define USB_EP_FDAT1(x) __REG8(0x3D + IMX_USBD_BASE + (x*0x30)) /* USB FIFO data */
-+#define USB_EP_FDAT2(x) __REG8(0x3E + IMX_USBD_BASE + (x*0x30)) /* USB FIFO data */
-+#define USB_EP_FDAT3(x) __REG8(0x3F + IMX_USBD_BASE + (x*0x30)) /* USB FIFO data */
-+#define USB_EP_FSTAT(x) __REG(0x40 + IMX_USBD_BASE + (x*0x30)) /* USB FIFO status */
-+#define USB_EP_FCTRL(x) __REG(0x44 + IMX_USBD_BASE + (x*0x30)) /* USB FIFO control */
-+#define USB_EP_LRFP(x) __REG(0x48 + IMX_USBD_BASE + (x*0x30)) /* USB last read frame pointer */
-+#define USB_EP_LWFP(x) __REG(0x4C + IMX_USBD_BASE + (x*0x30)) /* USB last write frame pointer */
-+#define USB_EP_FALRM(x) __REG(0x50 + IMX_USBD_BASE + (x*0x30)) /* USB FIFO alarm */
-+#define USB_EP_FRDP(x) __REG(0x54 + IMX_USBD_BASE + (x*0x30)) /* USB FIFO read pointer */
-+#define USB_EP_FWRP(x) __REG(0x58 + IMX_USBD_BASE + (x*0x30)) /* USB FIFO write pointer */
++/* SPI regiters */
++#define SPI1_RXDATA __REG(IMX_SPI1_BASE + 0x00)
++#define SPI1_TXDATA __REG(IMX_SPI1_BASE + 0x04)
++#define SPI1_CONTROL __REG(IMX_SPI1_BASE + 0x08)
++#define SPI1_INT __REG(IMX_SPI1_BASE + 0x0c)
++#define SPI1_TEST __REG(IMX_SPI1_BASE + 0x10)
++#define SPI1_PERIOD __REG(IMX_SPI1_BASE + 0x14)
++#define SPI1_DMA __REG(IMX_SPI1_BASE + 0x18)
++#define SPI1_RESET __REG(IMX_SPI1_BASE + 0x1c)
+
-+/* USB Control Register Bit Fields.*/
-+#define USB_CMDOVER (1<<6) /* UDC status */
-+#define USB_CMDERROR (1<<5) /* UDC status */
-+#define USB_FE_ENA (1<<3) /* Enable Font End logic */
-+#define USB_UDC_RST (1<<2) /* UDC reset */
-+#define USB_AFE_ENA (1<<1) /* Analog Font end enable */
-+#define USB_RESUME (1<<0) /* UDC resume */
-+
-+/* USB Descriptor Ram Bit Fields */
-+#define USB_CFG (1<<31) /* Configuration */
-+#define USB_BSY (1<<30) /* Busy status */
-+#define USB_DADR_DESC (0x1FF) /* Descriptor Ram Address */
-+#define USB_DDAT_DESC (0xFF) /* Descriptor Endpoint Buffer */
-+
-+/* USB Endpoint Bit fields */
-+/* USB Endpoint status bit fields */
-+#define USB_FIFO_BCOUNT (0x7F<<16) /* Endpoint FIFO byte count */
-+#define USB_SIP (1<<8) /* Endpoint setup in progress */
-+#define USB_DIR (1<<7) /* Endpoint transfer direction */
-+#define USB_MAX (3<<5) /* Endpoint Max packet size */
-+#define USB_TYP (3<<3) /* Endpoint type */
-+#define USB_ZLPS (1<<2) /* Send zero length packet */
-+#define USB_FLUSH (1<<1) /* Endpoint FIFO Flush */
-+#define USB_STALL (1<<0) /* Force stall */
-+/* USB Endpoint FIFO status bit fields */
-+#define USB_FRAME_STAT (0xF<<24) /* Frame status bit [0-3] */
-+#define USB_ERR (1<<22) /* FIFO error */
-+#define USB_UF (1<<21) /* FIFO underflow */
-+#define USB_OF (1<<20) /* FIFO overflow */
-+#define USB_FR (1<<19) /* FIFO frame ready */
-+#define USB_FULL (1<<18) /* FIFO full */
-+#define USB_ALRM (1<<17) /* FIFO alarm */
-+#define USB_EMPTY (1<<16) /* FIFO empty */
-+/* USB Endpoint FIFO control bit fields */
-+#define USB_WFR (1<<29) /* Write frame end */
-+/* USB Endpoint FIFO interrupt bit fields */
-+#define USB_FIFO_FULL (1<<8) /* fifo full */
-+#define USB_FIFO_EMPTY (1<<7) /* fifo empty */
-+#define USB_FIFO_ERROR (1<<6) /* fifo error */
-+#define USB_FIFO_HIGH (1<<5) /* fifo high */
-+#define USB_FIFO_LOW (1<<4) /* fifo low */
-+#define USB_MDEVREQ (1<<3) /* multi Device request */
-+#define USB_EOT (1<<2) /* fifo end of transfer */
-+#define USB_DEVREQ (1<<1) /* Device request */
-+#define USB_EOF (1<<0) /* fifo end of frame */
-+
-+/* USB Interrupt Bit fields */
-+#define USB_WAKEUP (1<<31) /* Wake up Interrupt */
-+#define USB_MSOF (1<<7) /* Missed Start of Frame */
-+#define USB_SOF (1<<6) /* Start of Frame */
-+#define USB_RESET_STOP (1<<5) /* Reset Signaling stop */
-+#define USB_RESET_START (1<<4) /* Reset Signaling start */
-+#define USB_RES (1<<3) /* Suspend to resume */
-+#define USB_SUSP (1<<2) /* Active to suspend */
-+#define USB_FRAME_MATCH (1<<1) /* Frame matched */
-+#define USB_CFG_CHG (1<<0) /* Configuration change occurred */
-+
-+/* USB Enable Register Bit Fields.*/
-+#define USB_RST (1<<31) /* Reset USB modules */
-+#define USB_ENA (1<<30) /* Enable USB modules*/
-+#define USB_SUSPEND (1<<29) /* Suspend USB modules */
-+#define USB_ENDIAN (1<<28) /* Endian of USB modules */
-+#define USB_POWER (1<<0) /* Power mode of USB modules */
-+
-+
-+#define SPI1_RXDATA __REG(IMX_SPI1_BASE + 0x0)
-+#define SPI1_TXDATA __REG(IMX_SPI1_BASE + 0x4)
-+#define SPI1_CONTROL __REG(IMX_SPI1_BASE + 0x8)
-+#define SPI1_INT __REG(IMX_SPI1_BASE + 0xC)
-+#define SPI1_TEST __REG(IMX_SPI1_BASE + 0x10)
-+#define SPI1_PERIOD __REG(IMX_SPI1_BASE + 0x14)
-+#define SPI1_DMA __REG(IMX_SPI1_BASE + 0x18)
-+#define SPI1_RESET __REG(IMX_SPI1_BASE + 0x1C)
-+
#endif // _IMX_REGS_H
Added: trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/031-armadeus-imx_udc_add_usb_h_include_to_arch_arm_mach-imx_include_mach.patch
===================================================================
--- trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/031-armadeus-imx_udc_add_usb_h_include_to_arch_arm_mach-imx_include_mach.patch (rev 0)
+++ trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/031-armadeus-imx_udc_add_usb_h_include_to_arch_arm_mach-imx_include_mach.patch 2009-05-01 12:15:24 UTC (rev 1251)
@@ -0,0 +1,31 @@
+This patch is needed until MX1 architecture is integrated in
+plat-mcx (2.6.31 ?).
+
+Index: linux-2.6.29/arch/arm/mach-imx/include/mach/usb.h
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.29/arch/arm/mach-imx/include/mach/usb.h 2009-05-01 13:51:56.000000000 +0200
+@@ -0,0 +1,23 @@
++/*
++ * Copyright (C) 2008 Darius Augulis <aug...@gm...>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ */
++
++#ifndef __ASM_ARCH_MXC_USB
++#define __ASM_ARCH_MXC_USB
++
++struct imxusb_platform_data {
++ int (*init)(struct device *);
++ int (*exit)(struct device *);
++};
++
++#endif /* __ASM_ARCH_MXC_USB */
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|