summaryrefslogtreecommitdiff
path: root/packages/linux
diff options
context:
space:
mode:
authorRobert Schuster <thebohemian@gmx.net>2008-02-15 16:51:52 +0000
committerRobert Schuster <thebohemian@gmx.net>2008-02-15 16:51:52 +0000
commit5cc9834638b028694beef90531848a91c60138f5 (patch)
tree27c60bcbe77153d169cfef67694d8472a56040fa /packages/linux
parent9dc54cff61a3ff2b57d758f81c34b20cea402df9 (diff)
parentef2f7fcdc44e806b13a199eb6ceff86ca4bcdeb5 (diff)
merge of '071b4d95ed825891fde667a4723e579ea0bba105'
and '932ef509383c7f695dd4e96f7c37401a0553965a'
Diffstat (limited to 'packages/linux')
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/.mtn2git_empty0
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/270-usb-gadget-udc.patch2739
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/arch-config.patch62
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/bkpxa-pxa-cpu.patch117
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/bkpxa-pxa-cpufreq.patch403
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/board-init.patch81
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/bugfix-i2c-include.patch12
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/bugfix-mmc-clock.patch14
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/bugfix-pxa-cpufreq.patch64
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/bugfix-serial-interrupt.patch25
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/bugfix-serial-register-status.patch69
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/compact-flash.patch287
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/compile-fix-pxa_cpufreq.patch13
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/cpufreq-better-freqs.patch53
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/cpufreq-fixup.patch26
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/cpufreq-ondemand-by-default.patch42
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/disable-uncompress-message.patch32
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/ethernet-config.patch26
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/flash.patch171
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-asoc.patch224
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-custom-connex/.mtn2git_empty0
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-custom-connex/defconfig1619
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-custom-connex/defconfig-nofb1619
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-custom-verdex/.mtn2git_empty0
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-custom-verdex/defconfig1791
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-custom-verdex/defconfig-nofb1791
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-fb-logo.patch10455
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-pxa270-mmc.patch33
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/gumstix-pxa270-usb-host.patch366
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/header.patch170
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/mach-types-fix.patch13
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/misalignment-handling.patch38
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/mmc-card-detect.patch80
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/modular-init-bluetooth.patch108
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/modular-init-smc91x.patch203
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/modular-init-usb-gadget.patch106
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/pcm-gcc-411-bugfix.patch60
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/proc-gpio.patch348
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/pxa-regs-additions.patch28
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/pxa-regs-fixup.patch12
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/pxa2xx_udc.patch65
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/pxafb-18bpp-mode.patch433
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/pxafb-definition.patch180
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/serial-divisor.patch31
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/serial-ether-addr.patch62
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/smc-ether-addr.patch62
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/smc911x-fixup.patch392
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/tsc2003-config.diff31
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/tsc2003.c699
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/uImage-in-own-partition.patch56
-rw-r--r--packages/linux/gumstix-kernel-2.6.21/ucb1400-ac97-audio.patch309
-rw-r--r--packages/linux/gumstix-kernel_2.6.21.bb54
-rw-r--r--packages/linux/gumstix-linux.inc74
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/asus620/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/asus730/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/aximx50/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/eteng500/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/h1910/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/h2200/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/h3600/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/h3800/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/h3900/defconfig4
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/h4000/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/h5000/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/htcalpine/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/htcapache/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/htcbeetles/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/htcblueangel/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/htchimalaya/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/htcsable/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/htcuniversal/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/htcwallaby/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/hx4700/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/looxc550/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/magician/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/rx1950/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/rx3000/defconfig3
-rw-r--r--packages/linux/linux-handhelds-2.6_2.6.21-hh20.bb2
-rw-r--r--packages/linux/linux-rp-2.6.24/pxa27x-resume.patch41
-rw-r--r--packages/linux/linux-rp-2.6.24/spitz_h_rewrite.patch497
-rw-r--r--packages/linux/linux-rp_2.6.24.bb4
81 files changed, 26338 insertions, 27 deletions
diff --git a/packages/linux/gumstix-kernel-2.6.21/.mtn2git_empty b/packages/linux/gumstix-kernel-2.6.21/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/linux/gumstix-kernel-2.6.21/.mtn2git_empty
diff --git a/packages/linux/gumstix-kernel-2.6.21/270-usb-gadget-udc.patch b/packages/linux/gumstix-kernel-2.6.21/270-usb-gadget-udc.patch
new file mode 100644
index 0000000000..630d188ea0
--- /dev/null
+++ b/packages/linux/gumstix-kernel-2.6.21/270-usb-gadget-udc.patch
@@ -0,0 +1,2739 @@
+Index: linux-2.6.21gum/drivers/usb/gadget/Kconfig
+===================================================================
+--- linux-2.6.21gum.orig/drivers/usb/gadget/Kconfig
++++ linux-2.6.21gum/drivers/usb/gadget/Kconfig
+@@ -129,6 +129,28 @@ config USB_PXA2XX_SMALL
+ default y if USB_ETH
+ default y if USB_G_SERIAL
+
++config USB_GADGET_PXA27X
++ boolean "PXA 27x"
++ depends on ARCH_PXA && PXA27x
++ help
++ Intel's PXA 27x series XScale ARM-5TE processors include
++ an integrated full speed USB 1.1 device controller.
++
++ Say "y" to link the driver statically, or "m" to build a
++ dynamically linked module called "pxa27x_udc" and force all
++ gadget drivers to also be dynamically linked.
++
++config USB_PXA27X
++ tristate
++ depends on USB_GADGET_PXA27X
++ default USB_GADGET
++ select USB_GADGET_SELECTED
++
++config USB_PXA27X_DMA
++ bool # "Use DMA support"
++ depends on USB_GADGET_PXA27X
++ default n
++
+ config USB_GADGET_GOKU
+ boolean "Toshiba TC86C001 'Goku-S'"
+ depends on PCI
+Index: linux-2.6.21gum/drivers/usb/gadget/Makefile
+===================================================================
+--- linux-2.6.21gum.orig/drivers/usb/gadget/Makefile
++++ linux-2.6.21gum/drivers/usb/gadget/Makefile
+@@ -7,6 +7,7 @@ obj-$(CONFIG_USB_PXA2XX) += pxa2xx_udc.o
+ obj-$(CONFIG_USB_GOKU) += goku_udc.o
+ obj-$(CONFIG_USB_OMAP) += omap_udc.o
+ obj-$(CONFIG_USB_LH7A40X) += lh7a40x_udc.o
++obj-$(CONFIG_USB_PXA27X) += pxa27x_udc.o
+ obj-$(CONFIG_USB_AT91) += at91_udc.o
+ obj-$(CONFIG_USB_GADGET_GUMSTIX) += gumstix_gadget.o
+
+Index: linux-2.6.21gum/drivers/usb/gadget/pxa27x_udc.c
+===================================================================
+--- /dev/null
++++ linux-2.6.21gum/drivers/usb/gadget/pxa27x_udc.c
+@@ -0,0 +1,2352 @@
++/*
++ * linux/drivers/usb/gadget/pxa27x_udc.c
++ * Intel PXA2xx and IXP4xx on-chip full speed USB device controllers
++ *
++ * Copyright (C) 2002 Intrinsyc, Inc. (Frank Becker)
++ * Copyright (C) 2003 Robert Schwebel, Pengutronix
++ * Copyright (C) 2003 Benedikt Spranger, Pengutronix
++ * Copyright (C) 2003 David Brownell
++ * Copyright (C) 2003 Joshua Wise
++ * Copyright (C) 2004 Intel Corporation
++ * Copyright (C) 2005 SDG Systems, LLC (Aric Blumer)
++ *
++ * 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.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
++ *
++ */
++
++#undef DEBUG
++ // #define DEBUG 1
++ //#define VERBOSE DBG_VERBOSE
++
++#include <linux/module.h>
++#include <linux/kernel.h>
++#include <linux/ioport.h>
++#include <linux/types.h>
++#include <linux/version.h>
++#include <linux/errno.h>
++#include <linux/delay.h>
++#include <linux/sched.h>
++#include <linux/slab.h>
++#include <linux/init.h>
++#include <linux/timer.h>
++#include <linux/list.h>
++#include <linux/interrupt.h>
++#include <linux/proc_fs.h>
++#include <linux/mm.h>
++#include <linux/platform_device.h>
++#include <linux/dma-mapping.h>
++#include <linux/irq.h>
++
++#include <asm/byteorder.h>
++#include <asm/dma.h>
++#include <asm/io.h>
++#include <asm/system.h>
++#include <asm/mach-types.h>
++#include <asm/unaligned.h>
++#include <asm/hardware.h>
++#include <asm/mach/irq.h>
++#include <asm/arch/pxa-regs.h>
++
++#include <linux/usb/ch9.h>
++#include <linux/usb_gadget.h>
++
++#include <asm/arch/udc.h>
++
++
++/*
++ * This driver handles the USB Device Controller (UDC) in Intel's PXA 27777777x
++ * series processors.
++ * Such controller drivers work with a gadget driver. The gadget driver
++ * returns descriptors, implements configuration and data protocols used
++ * by the host to interact with this device, and allocates endpoints to
++ * the different protocol interfaces. The controller driver virtualizes
++ * usb hardware so that the gadget drivers will be more portable.
++ *
++ * This UDC hardware wants to implement a bit too much USB protocol, so
++ * it constrains the sorts of USB configuration change events that work.
++ * The errata for these chips are misleading; some "fixed" bugs from
++ * pxa250 a0/a1 b0/b1/b2 sure act like they're still there.
++ */
++
++#define DRIVER_VERSION "21-Jul-2005"
++#define DRIVER_DESC "PXA 27x USB Device Controller driver"
++
++
++static const char driver_name [] = "pxa27x_udc";
++
++static const char ep0name [] = "ep0";
++
++
++#define USE_DMA
++//#define DISABLE_TEST_MODE
++
++#ifdef CONFIG_PROC_FS
++#define UDC_PROC_FILE
++#endif
++
++#include "pxa27x_udc.h"
++
++#if 0
++#ifdef CONFIG_EMBEDDED
++/* few strings, and little code to use them */
++#undef DEBUG
++#undef UDC_PROC_FILE
++#endif
++#endif
++
++#ifdef USE_DMA
++static int use_dma = 1;
++module_param(use_dma, bool, 0);
++MODULE_PARM_DESC (use_dma, "true to use dma");
++
++static void dma_nodesc_handler (int dmach, void *_ep);
++static void kick_dma(struct pxa27x_ep *ep, struct pxa27x_request *req);
++
++#define DMASTR " (dma support)"
++
++#else /* !USE_DMA */
++#define DMASTR " (pio only)"
++#endif
++
++#ifdef CONFIG_USB_PXA27X_SMALL
++#define SIZE_STR " (small)"
++#else
++#define SIZE_STR ""
++#endif
++
++#ifdef DISABLE_TEST_MODE
++/* (mode == 0) == no undocumented chip tweaks
++ * (mode & 1) == double buffer bulk IN
++ * (mode & 2) == double buffer bulk OUT
++ * ... so mode = 3 (or 7, 15, etc) does it for both
++ */
++static ushort fifo_mode = 0;
++module_param(fifo_mode, ushort, 0);
++MODULE_PARM_DESC (fifo_mode, "pxa27x udc fifo mode");
++#endif
++
++#define UDCISR0_IR0 0x3
++#define UDCISR_INT_MASK (UDC_INT_FIFOERROR | UDC_INT_PACKETCMP)
++#define UDCICR_INT_MASK UDCISR_INT_MASK
++
++#define UDCCSR_MASK (UDCCSR_FST | UDCCSR_DME)
++/* ---------------------------------------------------------------------------
++ * endpoint related parts of the api to the usb controller hardware,
++ * used by gadget driver; and the inner talker-to-hardware core.
++ * ---------------------------------------------------------------------------
++ */
++
++static void pxa27x_ep_fifo_flush (struct usb_ep *ep);
++static void nuke (struct pxa27x_ep *, int status);
++
++static void pio_irq_enable(int ep_num)
++{
++ if (ep_num < 16)
++ UDCICR0 |= 3 << (ep_num * 2);
++ else {
++ ep_num -= 16;
++ UDCICR1 |= 3 << (ep_num * 2);
++ }
++}
++
++static void pio_irq_disable(int ep_num)
++{
++ ep_num &= 0xf;
++ if (ep_num < 16)
++ UDCICR0 &= ~(3 << (ep_num * 2));
++ else {
++ ep_num -= 16;
++ UDCICR1 &= ~(3 << (ep_num * 2));
++ }
++}
++
++/* The UDCCR reg contains mask and interrupt status bits,
++ * so using '|=' isn't safe as it may ack an interrupt.
++ */
++#define UDCCR_MASK_BITS (UDCCR_OEN | UDCCR_UDE)
++
++static inline void udc_set_mask_UDCCR(int mask)
++{
++ UDCCR = (UDCCR & UDCCR_MASK_BITS) | (mask & UDCCR_MASK_BITS);
++}
++
++static inline void udc_clear_mask_UDCCR(int mask)
++{
++ UDCCR = (UDCCR & UDCCR_MASK_BITS) & ~(mask & UDCCR_MASK_BITS);
++}
++
++static inline void udc_ack_int_UDCCR(int mask)
++{
++ /* udccr contains the bits we dont want to change */
++ __u32 udccr = UDCCR & UDCCR_MASK_BITS;
++
++ UDCCR = udccr | (mask & ~UDCCR_MASK_BITS);
++}
++
++/*
++ * endpoint enable/disable
++ *
++ * we need to verify the descriptors used to enable endpoints. since pxa27x
++ * endpoint configurations are fixed, and are pretty much always enabled,
++ * there's not a lot to manage here.
++ *
++ * because pxa27x can't selectively initialize bulk (or interrupt) endpoints,
++ * (resetting endpoint halt and toggle), SET_INTERFACE is unusable except
++ * for a single interface (with only the default altsetting) and for gadget
++ * drivers that don't halt endpoints (not reset by set_interface). that also
++ * means that if you use ISO, you must violate the USB spec rule that all
++ * iso endpoints must be in non-default altsettings.
++ */
++static int pxa27x_ep_enable (struct usb_ep *_ep,
++ const struct usb_endpoint_descriptor *desc)
++{
++ struct pxa27x_ep *ep;
++ struct pxa27x_udc *dev;
++
++ ep = container_of (_ep, struct pxa27x_ep, ep);
++ if (!_ep || !desc || _ep->name == ep0name
++ || desc->bDescriptorType != USB_DT_ENDPOINT
++ || ep->fifo_size < le16_to_cpu(desc->wMaxPacketSize)) {
++ DMSG("%s, bad ep or descriptor\n", __FUNCTION__);
++ return -EINVAL;
++ }
++
++ /* xfer types must match, except that interrupt ~= bulk */
++ if( ep->ep_type != USB_ENDPOINT_XFER_BULK
++ && desc->bmAttributes != USB_ENDPOINT_XFER_INT) {
++ DMSG("%s, %s type mismatch\n", __FUNCTION__, _ep->name);
++ return -EINVAL;
++ }
++
++ /* hardware _could_ do smaller, but driver doesn't */
++ if ((desc->bmAttributes == USB_ENDPOINT_XFER_BULK
++ && le16_to_cpu (desc->wMaxPacketSize)
++ != BULK_FIFO_SIZE)
++ || !desc->wMaxPacketSize) {
++ DMSG("%s, bad %s maxpacket\n", __FUNCTION__, _ep->name);
++ return -ERANGE;
++ }
++
++ dev = ep->dev;
++ if (!dev->driver || dev->gadget.speed == USB_SPEED_UNKNOWN) {
++ DMSG("%s, bogus device state\n", __FUNCTION__);
++ return -ESHUTDOWN;
++ }
++
++ ep->desc = desc;
++ ep->dma = -1;
++ ep->stopped = 0;
++ ep->pio_irqs = ep->dma_irqs = 0;
++ ep->ep.maxpacket = le16_to_cpu (desc->wMaxPacketSize);
++
++ /* flush fifo (mostly for OUT buffers) */
++ pxa27x_ep_fifo_flush (_ep);
++
++ /* ... reset halt state too, if we could ... */
++
++#ifdef USE_DMA
++ /* for (some) bulk and ISO endpoints, try to get a DMA channel and
++ * bind it to the endpoint. otherwise use PIO.
++ */
++ DMSG("%s: called attributes=%d\n", __FUNCTION__, ep->ep_type);
++ switch (ep->ep_type) {
++ case USB_ENDPOINT_XFER_ISOC:
++ if (le16_to_cpu(desc->wMaxPacketSize) % 32)
++ break;
++ // fall through
++ case USB_ENDPOINT_XFER_BULK:
++ if (!use_dma || !ep->reg_drcmr)
++ break;
++ ep->dma = pxa_request_dma ((char *)_ep->name,
++ (le16_to_cpu (desc-