]> code.ossystems Code Review - openembedded-core.git/commitdiff
linux-rp: Ported the HTC Universal patch to the latest -rp kernel.
authorSamuel Ortiz <sameo@openedhand.com>
Wed, 29 Aug 2007 15:19:43 +0000 (15:19 +0000)
committerSamuel Ortiz <sameo@openedhand.com>
Wed, 29 Aug 2007 15:19:43 +0000 (15:19 +0000)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2594 311d38ba-8fff-0310-9ca6-ca027cbcb966

meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/defconfig-htcuniversal
meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/htcuni.patch

index 04e9070b80c8db8a275a6377331bf024321d8937..fb112b768b1c1555d7170086a6cb8c8aaf1326e9 100644 (file)
@@ -1,13 +1,13 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.22
-# Thu Aug 23 16:10:44 2007
+# Linux kernel version: 2.6.23-rc4
+# Wed Aug 29 17:19:57 2007
 #
 CONFIG_ARM=y
 CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 CONFIG_GENERIC_GPIO=y
 CONFIG_GENERIC_TIME=y
-# CONFIG_GENERIC_CLOCKEVENTS is not set
+CONFIG_GENERIC_CLOCKEVENTS=y
 CONFIG_MMU=y
 # CONFIG_NO_IOPORT is not set
 CONFIG_GENERIC_HARDIRQS=y
@@ -27,26 +27,21 @@ CONFIG_VECTORS_BASE=0xffff0000
 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 
 #
-# Code maturity level options
+# General setup
 #
 CONFIG_EXPERIMENTAL=y
 CONFIG_BROKEN_ON_SMP=y
 CONFIG_LOCK_KERNEL=y
 CONFIG_INIT_ENV_ARG_LIMIT=32
-
-#
-# General setup
-#
 CONFIG_LOCALVERSION=""
 CONFIG_LOCALVERSION_AUTO=y
 CONFIG_SWAP=y
 CONFIG_SYSVIPC=y
-# CONFIG_IPC_NS is not set
 CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_POSIX_MQUEUE is not set
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
-# CONFIG_UTS_NS is not set
+# CONFIG_USER_NS is not set
 # CONFIG_AUDIT is not set
 CONFIG_IKCONFIG=y
 CONFIG_IKCONFIG_PROC=y
@@ -81,24 +76,17 @@ CONFIG_SLAB=y
 CONFIG_RT_MUTEXES=y
 # CONFIG_TINY_SHMEM is not set
 CONFIG_BASE_SMALL=0
-
-#
-# Loadable module support
-#
 CONFIG_MODULES=y
 CONFIG_MODULE_UNLOAD=y
 CONFIG_MODULE_FORCE_UNLOAD=y
 # CONFIG_MODVERSIONS is not set
 # CONFIG_MODULE_SRCVERSION_ALL is not set
 CONFIG_KMOD=y
-
-#
-# Block layer
-#
 CONFIG_BLOCK=y
 # CONFIG_LBD is not set
 # CONFIG_BLK_DEV_IO_TRACE is not set
 # CONFIG_LSF is not set
+# CONFIG_BLK_DEV_BSG is not set
 
 #
 # IO Schedulers
@@ -139,6 +127,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
 # CONFIG_ARCH_L7200 is not set
 # CONFIG_ARCH_KS8695 is not set
 # CONFIG_ARCH_NS9XXX is not set
+# CONFIG_ARCH_MXC is not set
 # CONFIG_ARCH_PNX4008 is not set
 CONFIG_ARCH_PXA=y
 # CONFIG_ARCH_RPC is not set
@@ -158,6 +147,7 @@ CONFIG_ARCH_PXA=y
 # CONFIG_ARCH_PXA_IDP is not set
 # CONFIG_PXA_SHARPSL is not set
 # CONFIG_MACH_TRIZEPS4 is not set
+# CONFIG_MACH_EM_X270 is not set
 # CONFIG_MACH_HX2750 is not set
 CONFIG_MACH_HTCUNIVERSAL=y
 
@@ -178,6 +168,14 @@ CONFIG_HTCUNIVERSAL_PHONE=m
 CONFIG_PXA27x=y
 # CONFIG_PXA_KEYS is not set
 
+#
+# Boot options
+#
+
+#
+# Power management
+#
+
 #
 # Processor Type
 #
@@ -202,6 +200,7 @@ CONFIG_XSCALE_PMU=y
 #
 # Bus support
 #
+# CONFIG_PCI_SYSCALL is not set
 # CONFIG_ARCH_SUPPORTS_MSI is not set
 
 #
@@ -213,8 +212,9 @@ CONFIG_XSCALE_PMU=y
 # Kernel Features
 #
 # CONFIG_TICK_ONESHOT is not set
+# CONFIG_NO_HZ is not set
+# CONFIG_HIGH_RES_TIMERS is not set
 CONFIG_PREEMPT=y
-CONFIG_NO_IDLE_HZ=y
 CONFIG_HZ=100
 CONFIG_AEABI=y
 CONFIG_OABI_COMPAT=y
@@ -229,6 +229,8 @@ CONFIG_FLAT_NODE_MEM_MAP=y
 CONFIG_SPLIT_PTLOCK_CPUS=4096
 # CONFIG_RESOURCES_64BIT is not set
 CONFIG_ZONE_DMA_FLAG=1
+CONFIG_BOUNCE=y
+CONFIG_VIRT_TO_BUS=y
 CONFIG_ALIGNMENT_TRAP=y
 
 #
@@ -280,7 +282,7 @@ CONFIG_BINFMT_ELF=y
 CONFIG_PM=y
 # CONFIG_PM_LEGACY is not set
 # CONFIG_PM_DEBUG is not set
-CONFIG_PM_SYSFS_DEPRECATED=y
+# CONFIG_SUSPEND is not set
 CONFIG_APM_EMULATION=y
 
 #
@@ -439,6 +441,7 @@ CONFIG_WIRELESS_EXT=y
 # CONFIG_MAC80211 is not set
 # CONFIG_IEEE80211 is not set
 # CONFIG_RFKILL is not set
+# CONFIG_NET_9P is not set
 
 #
 # Device Drivers
@@ -453,10 +456,6 @@ CONFIG_FW_LOADER=y
 # CONFIG_DEBUG_DRIVER is not set
 # CONFIG_DEBUG_DEVRES is not set
 # CONFIG_SYS_HYPERVISOR is not set
-
-#
-# Connector - unified userspace <-> kernelspace linker
-#
 # CONFIG_CONNECTOR is not set
 CONFIG_MTD=y
 CONFIG_MTD_DEBUG=y
@@ -529,20 +528,8 @@ CONFIG_MTDRAM_ERASE_SIZE=128
 # UBI - Unsorted block images
 #
 # CONFIG_MTD_UBI is not set
-
-#
-# Parallel port support
-#
 # CONFIG_PARPORT is not set
-
-#
-# Plug and Play support
-#
-# CONFIG_PNPACPI is not set
-
-#
-# Block devices
-#
+CONFIG_BLK_DEV=y
 # CONFIG_BLK_DEV_COW_COMMON is not set
 # CONFIG_BLK_DEV_LOOP is not set
 # CONFIG_BLK_DEV_NBD is not set
@@ -556,41 +543,26 @@ CONFIG_MTDRAM_ERASE_SIZE=128
 #
 # CONFIG_RAID_ATTRS is not set
 # CONFIG_SCSI is not set
+# CONFIG_SCSI_DMA is not set
 # CONFIG_SCSI_NETLINK is not set
 # CONFIG_ATA is not set
-
-#
-# Multi-device support (RAID and LVM)
-#
 # CONFIG_MD is not set
-
-#
-# Network device support
-#
 CONFIG_NETDEVICES=y
+# CONFIG_NETDEVICES_MULTIQUEUE is not set
 # CONFIG_DUMMY is not set
 # CONFIG_BONDING is not set
+# CONFIG_MACVLAN is not set
 # CONFIG_EQUALIZER is not set
 # CONFIG_TUN is not set
-
-#
-# Ethernet (10 or 100Mbit)
-#
 # CONFIG_NET_ETHERNET is not set
-CONFIG_NETDEV_1000=y
-CONFIG_NETDEV_10000=y
+# CONFIG_NETDEV_1000 is not set
+# CONFIG_NETDEV_10000 is not set
 
 #
 # Wireless LAN
 #
-CONFIG_NET_RADIO=y
-# CONFIG_NET_WIRELESS_RTNETLINK is not set
 # CONFIG_WLAN_PRE80211 is not set
 # CONFIG_WLAN_80211 is not set
-CONFIG_ACX=m
-CONFIG_ACX_MEM=y
-# CONFIG_ACX_CS is not set
-CONFIG_ACX_HTCUNIVERSAL=m
 # CONFIG_WAN is not set
 CONFIG_PPP=m
 # CONFIG_PPP_MULTILINK is not set
@@ -601,16 +573,13 @@ CONFIG_PPP_DEFLATE=m
 CONFIG_PPP_BSDCOMP=m
 CONFIG_PPP_MPPE=m
 # CONFIG_PPPOE is not set
+# CONFIG_PPPOL2TP is not set
 # CONFIG_SLIP is not set
 CONFIG_SLHC=m
 # CONFIG_SHAPER is not set
 # CONFIG_NETCONSOLE is not set
 # CONFIG_NETPOLL is not set
 # CONFIG_NET_POLL_CONTROLLER is not set
-
-#
-# ISDN subsystem
-#
 # CONFIG_ISDN is not set
 
 #
@@ -647,9 +616,11 @@ CONFIG_INPUT_MOUSE=y
 # CONFIG_MOUSE_SERIAL is not set
 # CONFIG_MOUSE_APPLETOUCH is not set
 # CONFIG_MOUSE_VSXXXAA is not set
+# CONFIG_MOUSE_GPIO is not set
 # CONFIG_INPUT_JOYSTICK is not set
 # CONFIG_INPUT_TABLET is not set
 CONFIG_INPUT_TOUCHSCREEN=y
+# CONFIG_TOUCHSCREEN_FUJITSU is not set
 # CONFIG_TOUCHSCREEN_GUNZE is not set
 # CONFIG_TOUCHSCREEN_ELO is not set
 # CONFIG_TOUCHSCREEN_MTOUCH is not set
@@ -697,20 +668,12 @@ CONFIG_SERIAL_CORE_CONSOLE=y
 CONFIG_UNIX98_PTYS=y
 CONFIG_LEGACY_PTYS=y
 CONFIG_LEGACY_PTY_COUNT=32
-
-#
-# IPMI
-#
 # CONFIG_IPMI_HANDLER is not set
 # CONFIG_WATCHDOG is not set
 # CONFIG_HW_RANDOM is not set
 # CONFIG_NVRAM is not set
 # CONFIG_R3964 is not set
 # CONFIG_RAW_DRIVER is not set
-
-#
-# TPM devices
-#
 # CONFIG_TCG_TPM is not set
 CONFIG_I2C=m
 CONFIG_I2C_BOARDINFO=y
@@ -732,6 +695,7 @@ CONFIG_I2C_PXA=m
 # CONFIG_I2C_OCORES is not set
 # CONFIG_I2C_PARPORT_LIGHT is not set
 # CONFIG_I2C_SIMTEC is not set
+# CONFIG_I2C_TAOS_EVM is not set
 # CONFIG_I2C_STUB is not set
 
 #
@@ -739,11 +703,13 @@ CONFIG_I2C_PXA=m
 #
 # CONFIG_SENSORS_DS1337 is not set
 # CONFIG_SENSORS_DS1374 is not set
+# CONFIG_DS1682 is not set
 # CONFIG_SENSORS_EEPROM is not set
 # CONFIG_SENSORS_PCF8574 is not set
 # CONFIG_SENSORS_PCA9539 is not set
 # CONFIG_SENSORS_PCF8591 is not set
 # CONFIG_SENSORS_MAX6875 is not set
+# CONFIG_SENSORS_TSL2550 is not set
 # CONFIG_I2C_DEBUG_CORE is not set
 # CONFIG_I2C_DEBUG_ALGO is not set
 # CONFIG_I2C_DEBUG_BUS is not set
@@ -754,10 +720,6 @@ CONFIG_I2C_PXA=m
 #
 # CONFIG_SPI is not set
 # CONFIG_SPI_MASTER is not set
-
-#
-# Dallas's 1-wire bus
-#
 CONFIG_W1=y
 
 #
@@ -779,10 +741,8 @@ CONFIG_PDA_POWER=y
 CONFIG_APM_POWER=y
 CONFIG_BATTERY_DS2760=y
 # CONFIG_HWMON is not set
-
-#
-# Misc devices
-#
+CONFIG_MISC_DEVICES=y
+# CONFIG_EEPROM_93CX6 is not set
 
 #
 # Multifunction device drivers
@@ -794,16 +754,13 @@ CONFIG_HTC_ASIC3_DS1WM=y
 #
 # Multi-Function Devices
 #
-
-#
-# LED devices
-#
 CONFIG_NEW_LEDS=y
 CONFIG_LEDS_CLASS=y
 
 #
 # LED drivers
 #
+# CONFIG_LEDS_GPIO is not set
 CONFIG_LEDS_ASIC3=y
 
 #
@@ -824,8 +781,8 @@ CONFIG_DAB=y
 # Graphics support
 #
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
-CONFIG_BACKLIGHT_CLASS_DEVICE=y
 CONFIG_LCD_CLASS_DEVICE=y
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
 CONFIG_BACKLIGHT_CORGI=y
 
 #
@@ -833,6 +790,7 @@ CONFIG_BACKLIGHT_CORGI=y
 #
 # CONFIG_DISPLAY_SUPPORT is not set
 # CONFIG_VGASTATE is not set
+CONFIG_VIDEO_OUTPUT_CONTROL=m
 CONFIG_FB=y
 # CONFIG_FIRMWARE_EDID is not set
 # CONFIG_FB_DDC is not set
@@ -868,6 +826,7 @@ CONFIG_FB_PXA_LCD_QVGA=y
 # CONFIG_VGA_CONSOLE is not set
 CONFIG_DUMMY_CONSOLE=y
 CONFIG_FRAMEBUFFER_CONSOLE=y
+# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
 CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
 CONFIG_FONTS=y
 CONFIG_FONT_8x8=y
@@ -930,19 +889,17 @@ CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_SOC is not set
 
 #
-# Open Sound System
+# SoC Audio support for SuperH
 #
-# CONFIG_SOUND_PRIME is not set
 
 #
-# HID Devices
+# Open Sound System
 #
+# CONFIG_SOUND_PRIME is not set
+CONFIG_HID_SUPPORT=y
 CONFIG_HID=m
 # CONFIG_HID_DEBUG is not set
-
-#
-# USB support
-#
+CONFIG_USB_SUPPORT=y
 CONFIG_USB_ARCH_HAS_HCD=y
 CONFIG_USB_ARCH_HAS_OHCI=y
 # CONFIG_USB_ARCH_HAS_EHCI is not set
@@ -956,16 +913,20 @@ CONFIG_USB_ARCH_HAS_OHCI=y
 # USB Gadget Support
 #
 CONFIG_USB_GADGET=y
+# CONFIG_USB_GADGET_DEBUG is not set
 # CONFIG_USB_GADGET_DEBUG_FILES is not set
 CONFIG_USB_GADGET_SELECTED=y
+# CONFIG_USB_GADGET_AMD5536UDC is not set
 # CONFIG_USB_GADGET_FSL_USB2 is not set
 # CONFIG_USB_GADGET_NET2280 is not set
 # CONFIG_USB_GADGET_PXA2XX is not set
+# CONFIG_USB_GADGET_M66592 is not set
 CONFIG_USB_GADGET_PXA27X=y
 CONFIG_USB_PXA27X=y
 # CONFIG_USB_GADGET_GOKU is not set
 # CONFIG_USB_GADGET_LH7A40X is not set
 # CONFIG_USB_GADGET_OMAP is not set
+# CONFIG_USB_GADGET_S3C2410 is not set
 # CONFIG_USB_GADGET_AT91 is not set
 # CONFIG_USB_GADGET_DUMMY_HCD is not set
 # CONFIG_USB_GADGET_DUALSPEED is not set
@@ -984,16 +945,13 @@ CONFIG_MMC_UNSAFE_RESUME=y
 # MMC/SD Card Drivers
 #
 CONFIG_MMC_BLOCK=y
+CONFIG_MMC_BLOCK_BOUNCE=y
 
 #
 # MMC/SD Host Controller Drivers
 #
 # CONFIG_MMC_PXA is not set
 CONFIG_MMC_ASIC3=y
-
-#
-# Real Time Clock
-#
 CONFIG_RTC_LIB=y
 CONFIG_RTC_CLASS=y
 CONFIG_RTC_HCTOSYS=y
@@ -1020,6 +978,7 @@ CONFIG_RTC_INTF_DEV=y
 # CONFIG_RTC_DRV_X1205 is not set
 # CONFIG_RTC_DRV_PCF8563 is not set
 # CONFIG_RTC_DRV_PCF8583 is not set
+# CONFIG_RTC_DRV_M41T80 is not set
 
 #
 # SPI RTC drivers
@@ -1030,8 +989,10 @@ CONFIG_RTC_INTF_DEV=y
 #
 # CONFIG_RTC_DRV_CMOS is not set
 # CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_STK17TA8 is not set
 # CONFIG_RTC_DRV_DS1742 is not set
 # CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
 # CONFIG_RTC_DRV_V3020 is not set
 
 #
@@ -1039,6 +1000,19 @@ CONFIG_RTC_INTF_DEV=y
 #
 CONFIG_RTC_DRV_SA1100=y
 
+#
+# DMA Engine support
+#
+# CONFIG_DMA_ENGINE is not set
+
+#
+# DMA Clients
+#
+
+#
+# DMA Devices
+#
+
 #
 # File systems
 #
@@ -1135,7 +1109,6 @@ CONFIG_SUNRPC=y
 # CONFIG_NCP_FS is not set
 # CONFIG_CODA_FS is not set
 # CONFIG_AFS_FS is not set
-# CONFIG_9P_FS is not set
 
 #
 # Partition Types
@@ -1209,6 +1182,7 @@ CONFIG_ENABLE_MUST_CHECK=y
 CONFIG_DEBUG_KERNEL=y
 # CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
+CONFIG_SCHED_DEBUG=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
 # CONFIG_DEBUG_SLAB is not set
@@ -1219,6 +1193,7 @@ CONFIG_DEBUG_PREEMPT=y
 CONFIG_DEBUG_MUTEXES=y
 # CONFIG_DEBUG_LOCK_ALLOC is not set
 # CONFIG_PROVE_LOCKING is not set
+# CONFIG_LOCK_STAT is not set
 # CONFIG_DEBUG_SPINLOCK_SLEEP is not set
 # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
 # CONFIG_DEBUG_KOBJECT is not set
@@ -1240,10 +1215,6 @@ CONFIG_DEBUG_LL=y
 #
 # CONFIG_KEYS is not set
 # CONFIG_SECURITY is not set
-
-#
-# Cryptographic options
-#
 CONFIG_CRYPTO=y
 CONFIG_CRYPTO_ALGAPI=y
 CONFIG_CRYPTO_BLKCIPHER=m
@@ -1283,10 +1254,7 @@ CONFIG_CRYPTO_DEFLATE=y
 # CONFIG_CRYPTO_CRC32C is not set
 # CONFIG_CRYPTO_CAMELLIA is not set
 # CONFIG_CRYPTO_TEST is not set
-
-#
-# Hardware crypto devices
-#
+CONFIG_CRYPTO_HW=y
 
 #
 # Library routines
@@ -1296,6 +1264,7 @@ CONFIG_CRC_CCITT=y
 # CONFIG_CRC16 is not set
 # CONFIG_CRC_ITU_T is not set
 CONFIG_CRC32=y
+# CONFIG_CRC7 is not set
 # CONFIG_LIBCRC32C is not set
 CONFIG_ZLIB_INFLATE=y
 CONFIG_ZLIB_DEFLATE=y
index a83c7afa3430ea26f78c1bdedbad5b4dbcee5704..8f473467c074ff903869b6c146c9244c7fc13be8 100644 (file)
@@ -1,8 +1,9 @@
 ---
+ arch/arm/Kconfig                                         |    2 
  arch/arm/mach-pxa/Kconfig                                |   89 +
  arch/arm/mach-pxa/Makefile                               |    1 
  arch/arm/mach-pxa/corgi.c                                |    3 
- arch/arm/mach-pxa/generic.c                              |   12 
+ arch/arm/mach-pxa/generic.c                              |   13 
  arch/arm/mach-pxa/htcuniversal/Makefile                  |   19 
  arch/arm/mach-pxa/htcuniversal/htcuniversal.c            |  468 +++++
  arch/arm/mach-pxa/htcuniversal/htcuniversal_ak4641.c     |  917 +++++++++++
  arch/arm/mach-pxa/htcuniversal/htcuniversal_ts2.c        |  490 ++++++
  arch/arm/mach-pxa/htcuniversal/htcuniversal_udc.c        |   71 
  arch/arm/mach-pxa/htcuniversal/tsc2046_ts.h              |   20 
- arch/arm/mach-pxa/pm.c                                   |   36 
  arch/arm/mach-pxa/spitz.c                                |    2 
  drivers/input/keyboard/Makefile                          |    2 
  drivers/input/keyboard/asic3_keys.c                      |  131 +
- drivers/input/keyboard/pxa27x_keyboard.c                 |    2 
  drivers/leds/Kconfig                                     |    7 
  drivers/leds/Makefile                                    |    1 
  drivers/leds/leds-asic3.c                                |  189 ++
  drivers/serial/pxa.c                                     |   22 
  drivers/video/backlight/Kconfig                          |    2 
  drivers/video/backlight/corgi_bl.c                       |    4 
- drivers/w1/slaves/Kconfig                                |   11 
- drivers/w1/slaves/Makefile                               |    2 
- drivers/w1/slaves/w1_ds2760.c                            |  213 ++
- drivers/w1/slaves/w1_ds2760.h                            |   50 
- drivers/w1/w1_family.h                                   |    1 
  include/asm-arm/arch-pxa/clock.h                         |   27 
  include/asm-arm/arch-pxa/htcuniversal-asic.h             |  213 ++
  include/asm-arm/arch-pxa/htcuniversal-gpio.h             |  220 ++
  include/linux/gpiodev.h                                  |   44 
  include/linux/input_pda.h                                |   47 
  include/linux/ioport.h                                   |    1 
- include/linux/pda_power.h                                |   31 
  include/linux/soc/asic3_base.h                           |  104 +
  include/linux/soc/tmio_mmc.h                             |   17 
- 67 files changed, 7808 insertions(+), 17 deletions(-)
+ 60 files changed, 7468 insertions(+), 14 deletions(-)
 
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/Makefile
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/Makefile       2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/Makefile       2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,19 @@
 +#
 +# Makefile for HTC Universal
@@ -79,7 +72,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/Makefile
 +
 +snd-htcuniversal-ak4641-objs := htcuniversal_ak4641.o
 +
-+obj-$(CONFIG_MACH_HTCUNIVERSAL)               += htcuniversal.o htcuniversal_pm.o
++obj-$(CONFIG_MACH_HTCUNIVERSAL)               += htcuniversal.o
 +obj-$(CONFIG_HTCUNIVERSAL_CORE)               += htcuniversal_core.o
 +obj-$(CONFIG_HTCUNIVERSAL_POWER)      += htcuniversal_power2.o
 +obj-$(CONFIG_HTCUNIVERSAL_LCD)                += htcuniversal_lcd.o
@@ -95,7 +88,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/Makefile
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal.c 2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal.c 2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,468 @@
 +/*
 + * Hardware definitions for HTC Universal
@@ -510,7 +503,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal.c
 +
 +static void __init htcuniversal_init_irq(void)
 +{
-+      pxa_init_irq();
++      pxa27x_init_irq();
 +}
 +
 +static struct platform_pxa_serial_funcs htcuniversal_pxa_bt_funcs = {
@@ -568,7 +561,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ak4641.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ak4641.c  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ak4641.c  2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,917 @@
 +/*
 + * Audio support for codec Asahi Kasei AK4641
@@ -1490,7 +1483,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ak4641.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ak4641.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ak4641.h  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ak4641.h  2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,65 @@
 +/*
 + * Audio support for codec Asahi Kasei AK4641
@@ -1560,7 +1553,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ak4641.h
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_asic3_leds.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_asic3_leds.c      2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_asic3_leds.c      2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,143 @@
 +/*
 + * LEDs support for the HP iPaq hx4700
@@ -1708,7 +1701,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_asic3_leds.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bl.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bl.c      2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bl.c      2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,61 @@
 +/*
 + * Use consistent with the GNU GPL is permitted,
@@ -1774,7 +1767,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bl.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bt.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bt.c      2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bt.c      2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,135 @@
 +/* Bluetooth interface driver for TI BRF6150 on HX4700
 + *
@@ -1914,7 +1907,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bt.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bt.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bt.h      2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bt.h      2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,17 @@
 +/*
 + * Bluetooth support file for calling bluetooth configuration functions
@@ -1936,7 +1929,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_bt.h
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_buttons.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_buttons.c 2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_buttons.c 2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,87 @@
 +/*
 + * Buttons driver for HTC Universal
@@ -2028,7 +2021,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_buttons.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_core.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_core.c    2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_core.c    2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,226 @@
 +/* Core Hardware driver for Hx4700 (Serial, ASIC3, EGPIOs)
 + *
@@ -2098,7 +2091,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_core.c
 +
 +#ifdef CONFIG_PM
 +
-+void htcuniversal_ll_pm_init(void);
++//void htcuniversal_ll_pm_init(void);
 +
 +static int htcuniversal_suspend(struct platform_device *dev, pm_message_t state)
 +{
@@ -2210,7 +2203,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_core.c
 +      printk("Using stock HTC first stage bootloader\n");
 +      htc_bootloader = 1;
 +
-+      htcuniversal_ll_pm_init();
++//    htcuniversal_ll_pm_init();
 +
 +      return 0;
 +}
@@ -2259,7 +2252,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_core.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_lcd.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_lcd.c     2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_lcd.c     2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,212 @@
 +/*
 + * Use consistent with the GNU GPL is permitted,
@@ -2404,7 +2397,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_lcd.c
 +
 +static int htcuniversal_lcd_probe(struct platform_device * dev)
 +{
-+      htcuniversal_lcd_dev = lcd_device_register("pxa2xx-fb", NULL,
++      htcuniversal_lcd_dev = lcd_device_register("pxa2xx-fb", &dev->dev, NULL,
 +                      &htcuniversal_lcd_properties);
 +      if (IS_ERR(htcuniversal_lcd_dev)) {
 +              printk("htcuniversal_lcd_probe: error registering devices\n");
@@ -2476,7 +2469,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_lcd.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_phone.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_phone.c   2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_phone.c   2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,167 @@
 +
 +/* Phone interface driver for Qualcomm MSM6250 on HTC Universal
@@ -2648,7 +2641,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_phone.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_phone.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_phone.h   2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_phone.h   2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,16 @@
 +/*
 + * Bluetooth support file for calling bluetooth configuration functions
@@ -2669,7 +2662,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_phone.h
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_pm.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_pm.c      2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_pm.c      2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,69 @@
 +/*
 + * MyPal 716 power management support for the original HTC IPL in DoC G3
@@ -2743,7 +2736,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_pm.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_power2.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_power2.c  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_power2.c  2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,97 @@
 +/*
 + * pda_power driver for HTC Universal
@@ -2845,7 +2838,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_power2.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ts2.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ts2.c     2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ts2.c     2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,490 @@
 +/* Touch screen driver for the TI something-or-other
 + *
@@ -3257,7 +3250,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ts2.c
 +     ts->pen_down=pen_down;
 +    }
 +
-+    retval = request_irq(ts->irq, pen_isr, SA_INTERRUPT, "tsc2046_ts", ts);
++    retval = request_irq(ts->irq, pen_isr, IRQF_DISABLED, "tsc2046_ts", ts);
 +    if(retval) {
 +        printk("Unable to get interrupt\n");
 +        input_unregister_device (ts->input);
@@ -3340,7 +3333,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_ts2.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_udc.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_udc.c     2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_udc.c     2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,71 @@
 +
 +/*
@@ -3416,7 +3409,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/htcuniversal_udc.c
 Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/tsc2046_ts.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/tsc2046_ts.h   2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/htcuniversal/tsc2046_ts.h   2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,20 @@
 +/*
 + * temporary TSC2046 touchscreen hack
@@ -3440,9 +3433,9 @@ Index: linux-2.6.22/arch/arm/mach-pxa/htcuniversal/tsc2046_ts.h
 +#endif
 Index: linux-2.6.22/arch/arm/mach-pxa/Kconfig
 ===================================================================
---- linux-2.6.22.orig/arch/arm/mach-pxa/Kconfig        2007-08-23 13:09:21.000000000 +0200
-+++ linux-2.6.22/arch/arm/mach-pxa/Kconfig     2007-08-23 13:09:22.000000000 +0200
-@@ -46,6 +46,14 @@
+--- linux-2.6.22.orig/arch/arm/mach-pxa/Kconfig        2007-08-29 12:44:46.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/Kconfig     2007-08-29 12:44:49.000000000 +0200
+@@ -50,6 +50,14 @@
        help
          This enables support for the HP iPAQ HX2750 handheld.
  
@@ -3457,7 +3450,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/Kconfig
  endchoice
  
  if PXA_SHARPSL
-@@ -80,6 +88,86 @@
+@@ -84,6 +92,86 @@
  
  endif
  
@@ -3544,146 +3537,30 @@ Index: linux-2.6.22/arch/arm/mach-pxa/Kconfig
  endmenu
  
  config MACH_POODLE
-@@ -160,4 +248,3 @@
+@@ -164,4 +252,3 @@
        depends on (PXA25x || PXA27x) && INPUT
  
  endif
 -
 Index: linux-2.6.22/arch/arm/mach-pxa/Makefile
 ===================================================================
---- linux-2.6.22.orig/arch/arm/mach-pxa/Makefile       2007-08-23 13:09:21.000000000 +0200
-+++ linux-2.6.22/arch/arm/mach-pxa/Makefile    2007-08-23 13:09:22.000000000 +0200
-@@ -19,6 +19,7 @@
- obj-$(CONFIG_MACH_POODLE)     += poodle.o corgi_ssp.o sharpsl_pm.o poodle_pm.o
+--- linux-2.6.22.orig/arch/arm/mach-pxa/Makefile       2007-08-29 12:44:46.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/Makefile    2007-08-29 12:44:49.000000000 +0200
+@@ -20,6 +20,7 @@
  obj-$(CONFIG_MACH_TOSA)         += tosa.o
+ obj-$(CONFIG_MACH_EM_X270) += em-x270.o
  obj-$(CONFIG_MACH_HX2750)     += hx2750.o hx2750_test.o
 +obj-$(CONFIG_MACH_HTCUNIVERSAL) += htcuniversal/
  
  # Support for blinky lights
  led-y := leds.o
-Index: linux-2.6.22/arch/arm/mach-pxa/pm.c
-===================================================================
---- linux-2.6.22.orig/arch/arm/mach-pxa/pm.c   2007-08-23 13:09:20.000000000 +0200
-+++ linux-2.6.22/arch/arm/mach-pxa/pm.c        2007-08-23 13:09:22.000000000 +0200
-@@ -22,6 +22,7 @@
- #include <asm/system.h>
- #include <asm/arch/pm.h>
- #include <asm/arch/pxa-regs.h>
-+#include <asm/arch/pxa-pm_ll.h>
- #include <asm/arch/lubbock.h>
- #include <asm/mach/time.h>
-@@ -75,12 +76,16 @@
- };
-+static struct pxa_ll_pm_ops *ll_ops;
-+
- int pxa_pm_enter(suspend_state_t state)
- {
-       unsigned long sleep_save[SLEEP_SAVE_SIZE];
-       unsigned long checksum = 0;
-+      struct timespec delta, rtc;
-       int i;
-       extern void pxa_cpu_pm_enter(suspend_state_t state);
-+      extern void pxa_cpu_resume(void);
- #ifdef CONFIG_IWMMXT
-       /* force any iWMMXt context to ram **/
-@@ -88,6 +93,11 @@
-               iwmmxt_task_disable(NULL);
- #endif
-+      /* preserve current time */
-+      rtc.tv_sec = RCNR;
-+      rtc.tv_nsec = 0;
-+      save_time_delta(&delta, &rtc);
-+
-       SAVE(GPLR0); SAVE(GPLR1); SAVE(GPLR2);
-       SAVE(GPDR0); SAVE(GPDR1); SAVE(GPDR2);
-       SAVE(GRER0); SAVE(GRER1); SAVE(GRER2);
-@@ -123,6 +133,15 @@
-       /* Clear sleep reset status */
-       RCSR = RCSR_SMR;
-+      /* Set resume return address */
-+      PSPR = virt_to_phys(pxa_cpu_resume);
-+
-+      /* If we have special sus/res logic, use it */
-+      if(ll_ops && ll_ops->suspend) {
-+              extern void pxa_cpu_resume(void);
-+              ll_ops->suspend(virt_to_phys(pxa_cpu_resume));
-+      }
-+
-       /* before sleeping, calculate and save a checksum */
-       for (i = 0; i < SLEEP_SAVE_SIZE - 1; i++)
-               checksum += sleep_save[i];
-@@ -138,6 +157,9 @@
-       for (i = 0; i < SLEEP_SAVE_SIZE - 1; i++)
-               checksum += sleep_save[i];
-+      if(ll_ops && ll_ops->resume)
-+              ll_ops->resume();
-+
-       /* if invalid, display message and wait for a hardware reset */
-       if (checksum != sleep_save[SLEEP_SAVE_CKSUM]) {
- #ifdef CONFIG_ARCH_LUBBOCK
-@@ -179,6 +201,10 @@
-       RESTORE(PSTR);
-+      /* restore current time */
-+      rtc.tv_sec = RCNR;
-+      restore_time_delta(&delta, &rtc);
-+
- #ifdef DEBUG
-       printk(KERN_DEBUG "*** made it back from resume\n");
- #endif
-@@ -188,6 +214,13 @@
- EXPORT_SYMBOL_GPL(pxa_pm_enter);
-+struct pxa_ll_pm_ops *pxa_pm_set_ll_ops(struct pxa_ll_pm_ops *new_ops) {
-+      struct pxa_ll_pm_ops *old_ops = ll_ops;
-+      ll_ops = new_ops;
-+      return old_ops;
-+}
-+EXPORT_SYMBOL(pxa_pm_set_ll_ops);
-+
- unsigned long sleep_phys_sp(void *sp)
- {
-       return virt_to_phys(sp);
-@@ -219,8 +252,9 @@
-       .prepare        = pxa_pm_prepare,
-       .enter          = pxa_pm_enter,
-       .finish         = pxa_pm_finish,
--      .valid          = pm_valid_only_mem,
-+      .valid          = pm_valid_only_mem,
- };
-+//EXPORT_SYMBOL(pxa_pm_ops);
- extern void pxa_cpu_resume(void);
-Index: linux-2.6.22/drivers/input/keyboard/pxa27x_keyboard.c
-===================================================================
---- linux-2.6.22.orig/drivers/input/keyboard/pxa27x_keyboard.c 2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/input/keyboard/pxa27x_keyboard.c      2007-08-23 13:09:22.000000000 +0200
-@@ -140,7 +140,7 @@
-               KPREC = pdata->reg_kprec;
-               /* Enable unit clock */
--              pxa_set_cken(CKEN19_KEYPAD, 1);
-+              pxa_set_cken(CKEN_KEYPAD, 1);
-       }
-       mutex_unlock(&input_dev->mutex);
 Index: linux-2.6.22/drivers/leds/Kconfig
 ===================================================================
---- linux-2.6.22.orig/drivers/leds/Kconfig     2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/leds/Kconfig  2007-08-23 13:09:22.000000000 +0200
-@@ -95,6 +95,13 @@
-       help
-         This option enables support for the front LED on Cobalt Server
+--- linux-2.6.22.orig/drivers/leds/Kconfig     2007-08-29 12:44:30.000000000 +0200
++++ linux-2.6.22/drivers/leds/Kconfig  2007-08-29 12:44:49.000000000 +0200
+@@ -101,6 +101,13 @@
+         outputs. To be useful the particular board must have LEDs
+         and they must be connected to the GPIO lines.
  
 +config LEDS_ASIC3
 +      tristate "LED Support for the HTC ASIC3 chip"
@@ -3695,22 +3572,10 @@ Index: linux-2.6.22/drivers/leds/Kconfig
  comment "LED Triggers"
  
  config LEDS_TRIGGERS
-Index: linux-2.6.22/drivers/leds/Makefile
-===================================================================
---- linux-2.6.22.orig/drivers/leds/Makefile    2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/leds/Makefile 2007-08-23 13:09:22.000000000 +0200
-@@ -16,6 +16,7 @@
- obj-$(CONFIG_LEDS_WRAP)                       += leds-wrap.o
- obj-$(CONFIG_LEDS_H1940)              += leds-h1940.o
- obj-$(CONFIG_LEDS_COBALT)             += leds-cobalt.o
-+obj-$(CONFIG_LEDS_ASIC3)                += leds-asic3.o
- # LED Triggers
- obj-$(CONFIG_LEDS_TRIGGER_TIMER)      += ledtrig-timer.o
 Index: linux-2.6.22/drivers/leds/leds-asic3.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/drivers/leds/leds-asic3.c     2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/leds/leds-asic3.c     2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,189 @@
 +/*
 + * LEDs support for HTC ASIC3 devices.
@@ -3903,8 +3768,8 @@ Index: linux-2.6.22/drivers/leds/leds-asic3.c
 +MODULE_LICENSE("GPL");
 Index: linux-2.6.22/drivers/mfd/Kconfig
 ===================================================================
---- linux-2.6.22.orig/drivers/mfd/Kconfig      2007-08-23 13:09:19.000000000 +0200
-+++ linux-2.6.22/drivers/mfd/Kconfig   2007-08-23 13:09:22.000000000 +0200
+--- linux-2.6.22.orig/drivers/mfd/Kconfig      2007-08-29 12:44:44.000000000 +0200
++++ linux-2.6.22/drivers/mfd/Kconfig   2007-08-29 12:44:49.000000000 +0200
 @@ -15,6 +15,16 @@
          interface. The device may be connected by PCI or local bus with
          varying functions enabled.
@@ -3924,8 +3789,8 @@ Index: linux-2.6.22/drivers/mfd/Kconfig
  menu "Multimedia Capabilities Port drivers"
 Index: linux-2.6.22/drivers/mfd/Makefile
 ===================================================================
---- linux-2.6.22.orig/drivers/mfd/Makefile     2007-08-23 13:09:19.000000000 +0200
-+++ linux-2.6.22/drivers/mfd/Makefile  2007-08-23 13:09:22.000000000 +0200
+--- linux-2.6.22.orig/drivers/mfd/Makefile     2007-08-29 12:44:44.000000000 +0200
++++ linux-2.6.22/drivers/mfd/Makefile  2007-08-29 12:44:49.000000000 +0200
 @@ -2,6 +2,8 @@
  # Makefile for multifunction miscellaneous devices
  #
@@ -3938,7 +3803,7 @@ Index: linux-2.6.22/drivers/mfd/Makefile
 Index: linux-2.6.22/drivers/mfd/asic3_base.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/drivers/mfd/asic3_base.c      2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/mfd/asic3_base.c      2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,1208 @@
 +/*
 + * Driver interface to HTC "ASIC3"
@@ -5151,7 +5016,7 @@ Index: linux-2.6.22/drivers/mfd/asic3_base.c
 Index: linux-2.6.22/drivers/mfd/soc-core.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/drivers/mfd/soc-core.c        2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/mfd/soc-core.c        2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,106 @@
 +/*
 + * drivers/soc/soc-core.c
@@ -5262,7 +5127,7 @@ Index: linux-2.6.22/drivers/mfd/soc-core.c
 Index: linux-2.6.22/drivers/mfd/soc-core.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/drivers/mfd/soc-core.h        2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/mfd/soc-core.h        2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,30 @@
 +/*
 + * drivers/soc/soc-core.h
@@ -5297,7 +5162,7 @@ Index: linux-2.6.22/drivers/mfd/soc-core.h
 Index: linux-2.6.22/include/asm-arm/arch-pxa/clock.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/arch-pxa/clock.h      2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/clock.h      2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,27 @@
 +/*
 + *  linux/include/asm-arm/arch-pxa/clock.h
@@ -5329,7 +5194,7 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/clock.h
 Index: linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-asic.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-asic.h  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-asic.h  2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,213 @@
 +/*
 + * include/asm/arm/arch-pxa/htcuniversal-asic.h
@@ -5547,7 +5412,7 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-asic.h
 Index: linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-gpio.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-gpio.h  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-gpio.h  2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,220 @@
 +/*
 + * include/asm-arm/arch-pxa/htcuniversal-gpio.h
@@ -5772,7 +5637,7 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-gpio.h
 Index: linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-init.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-init.h  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-init.h  2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,14 @@
 +/*
 + * include/asm/arm/arch-pxa/htcuniversal-init.h
@@ -5791,7 +5656,7 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal-init.h
 Index: linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal.h       2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal.h       2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,3 @@
 +#include <asm/arch/irqs.h>
 +
@@ -5799,7 +5664,7 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/htcuniversal.h
 Index: linux-2.6.22/include/asm-arm/arch-pxa/pxa-pm_ll.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/arch-pxa/pxa-pm_ll.h  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/pxa-pm_ll.h  2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,6 @@
 +struct pxa_ll_pm_ops {
 +      void (*suspend)(unsigned long);
@@ -5810,7 +5675,7 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/pxa-pm_ll.h
 Index: linux-2.6.22/include/asm-arm/arch-pxa/sharpsl.h
 ===================================================================
 --- linux-2.6.22.orig/include/asm-arm/arch-pxa/sharpsl.h       2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/include/asm-arm/arch-pxa/sharpsl.h    2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/sharpsl.h    2007-08-29 12:44:49.000000000 +0200
 @@ -25,12 +25,6 @@
  /*
   * SharpSL Backlight
@@ -5827,7 +5692,7 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/sharpsl.h
 Index: linux-2.6.22/include/asm-arm/hardware/asic3_keys.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/hardware/asic3_keys.h 2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/hardware/asic3_keys.h 2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,18 @@
 +#include <linux/input.h>
 +
@@ -5850,7 +5715,7 @@ Index: linux-2.6.22/include/asm-arm/hardware/asic3_keys.h
 Index: linux-2.6.22/include/asm-arm/hardware/asic3_leds.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/hardware/asic3_leds.h 2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/hardware/asic3_leds.h 2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,34 @@
 +/*
 + * LEDs support for HTC ASIC3 devices.
@@ -5889,7 +5754,7 @@ Index: linux-2.6.22/include/asm-arm/hardware/asic3_leds.h
 Index: linux-2.6.22/include/asm-arm/hardware/ipaq-asic3.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/hardware/ipaq-asic3.h 2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/hardware/ipaq-asic3.h 2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,602 @@
 +/*
 + *
@@ -6495,11 +6360,11 @@ Index: linux-2.6.22/include/asm-arm/hardware/ipaq-asic3.h
 +#endif
 Index: linux-2.6.22/include/linux/backlight.h
 ===================================================================
---- linux-2.6.22.orig/include/linux/backlight.h        2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/include/linux/backlight.h     2007-08-23 13:09:22.000000000 +0200
-@@ -87,4 +87,11 @@
- #define to_backlight_device(obj) container_of(obj, struct backlight_device, class_dev)
+--- linux-2.6.22.orig/include/linux/backlight.h        2007-08-29 12:44:39.000000000 +0200
++++ linux-2.6.22/include/linux/backlight.h     2007-08-29 12:44:49.000000000 +0200
+@@ -92,4 +92,11 @@
+       return dev_get_drvdata(&bl_dev->dev);
+ }
  
 +struct generic_bl_info {
 +      int max_intensity;
@@ -6512,7 +6377,7 @@ Index: linux-2.6.22/include/linux/backlight.h
 Index: linux-2.6.22/include/linux/gpiodev.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/linux/gpiodev.h       2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/linux/gpiodev.h       2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,44 @@
 +#ifndef __GPIODEV_H
 +#define __GPIODEV_H
@@ -6561,7 +6426,7 @@ Index: linux-2.6.22/include/linux/gpiodev.h
 Index: linux-2.6.22/include/linux/input_pda.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/linux/input_pda.h     2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/linux/input_pda.h     2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,47 @@
 +#ifndef _INPUT_PDA_H
 +#define _INPUT_PDA_H
@@ -6610,46 +6475,10 @@ Index: linux-2.6.22/include/linux/input_pda.h
 +#define _KEY_HOMEPAGE _KEY_APP4
 +
 +#endif
-Index: linux-2.6.22/include/linux/pda_power.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/linux/pda_power.h     2007-08-23 13:09:22.000000000 +0200
-@@ -0,0 +1,31 @@
-+/*
-+ * Common power driver for PDAs and phones with one or two external
-+ * power supplies (AC/USB) connected to main and backup batteries,
-+ * and optional builtin charger.
-+ *
-+ * Copyright 2007 Anton Vorontsov <cbou@mail.ru>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ */
-+
-+#ifndef __PDA_POWER_H__
-+#define __PDA_POWER_H__
-+
-+#define PDA_POWER_CHARGE_AC  (1 << 0)
-+#define PDA_POWER_CHARGE_USB (1 << 1)
-+
-+struct pda_power_pdata {
-+      int (*is_ac_online)(void);
-+      int (*is_usb_online)(void);
-+      void (*set_charge)(int flags);
-+
-+      char **supplied_to;
-+      size_t num_supplicants;
-+
-+      unsigned int wait_for_status; /* msecs, default is 500 */
-+      unsigned int wait_for_charger; /* msecs, default is 500 */
-+};
-+
-+#endif /* __PDA_POWER_H__ */
 Index: linux-2.6.22/include/linux/soc/asic3_base.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/linux/soc/asic3_base.h        2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/linux/soc/asic3_base.h        2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,104 @@
 +#include <asm/types.h>
 +#include <linux/gpiodev.h>
@@ -6758,7 +6587,7 @@ Index: linux-2.6.22/include/linux/soc/asic3_base.h
 Index: linux-2.6.22/include/linux/soc/tmio_mmc.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/linux/soc/tmio_mmc.h  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/linux/soc/tmio_mmc.h  2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,17 @@
 +#include <linux/platform_device.h>
 +
@@ -6779,9 +6608,9 @@ Index: linux-2.6.22/include/linux/soc/tmio_mmc.h
 +};
 Index: linux-2.6.22/include/asm-arm/arch-pxa/pxa-regs.h
 ===================================================================
---- linux-2.6.22.orig/include/asm-arm/arch-pxa/pxa-regs.h      2007-08-23 13:09:21.000000000 +0200
-+++ linux-2.6.22/include/asm-arm/arch-pxa/pxa-regs.h   2007-08-23 13:09:22.000000000 +0200
-@@ -2063,6 +2063,8 @@
+--- linux-2.6.22.orig/include/asm-arm/arch-pxa/pxa-regs.h      2007-08-29 12:44:47.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/pxa-regs.h   2007-08-29 12:44:49.000000000 +0200
+@@ -2043,6 +2043,8 @@
  #define LDCMD_SOFINT  (1 << 22)
  #define LDCMD_EOFINT  (1 << 21)
  
@@ -6793,7 +6622,7 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/pxa-regs.h
 Index: linux-2.6.22/drivers/mmc/host/Kconfig
 ===================================================================
 --- linux-2.6.22.orig/drivers/mmc/host/Kconfig 2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/mmc/host/Kconfig      2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/mmc/host/Kconfig      2007-08-29 12:44:49.000000000 +0200
 @@ -100,3 +100,9 @@
            To compile this driver as a module, choose M here: the
          module will be called tifm_sd.
@@ -6807,7 +6636,7 @@ Index: linux-2.6.22/drivers/mmc/host/Kconfig
 Index: linux-2.6.22/drivers/mmc/host/Makefile
 ===================================================================
 --- linux-2.6.22.orig/drivers/mmc/host/Makefile        2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/mmc/host/Makefile     2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/mmc/host/Makefile     2007-08-29 12:44:49.000000000 +0200
 @@ -15,4 +15,4 @@
  obj-$(CONFIG_MMC_OMAP)                += omap.o
  obj-$(CONFIG_MMC_AT91)                += at91_mci.o
@@ -6817,7 +6646,7 @@ Index: linux-2.6.22/drivers/mmc/host/Makefile
 Index: linux-2.6.22/drivers/mmc/host/asic3_mmc.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/drivers/mmc/host/asic3_mmc.c  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/mmc/host/asic3_mmc.c  2007-08-29 14:36:15.000000000 +0200
 @@ -0,0 +1,900 @@
 +/* Note that this driver can likely be merged into the tmio driver, so
 + * consider this code temporary.  It works, though.
@@ -7054,7 +6883,7 @@ Index: linux-2.6.22/drivers/mmc/host/asic3_mmc.c
 +            buf++;
 +            count -= 2;
 +        }
-+      flush_dcache_page(host->sg_ptr->page);
++      //flush_dcache_page(host->sg_ptr->page);
 +    } else {
 +        while(count > 0) {
 +            /* Write two bytes to SD/MMC controller. */
@@ -7722,7 +7551,7 @@ Index: linux-2.6.22/drivers/mmc/host/asic3_mmc.c
 Index: linux-2.6.22/drivers/mmc/host/asic3_mmc.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/drivers/mmc/host/asic3_mmc.h  2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/mmc/host/asic3_mmc.h  2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,25 @@
 +#ifndef __ASIC3_MMC_H
 +#define __ASIC3_MMC_H
@@ -7752,7 +7581,7 @@ Index: linux-2.6.22/drivers/mmc/host/asic3_mmc.h
 Index: linux-2.6.22/drivers/input/keyboard/Makefile
 ===================================================================
 --- linux-2.6.22.orig/drivers/input/keyboard/Makefile  2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/input/keyboard/Makefile       2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/input/keyboard/Makefile       2007-08-29 12:44:49.000000000 +0200
 @@ -21,4 +21,4 @@
  obj-$(CONFIG_KEYBOARD_PXA27x)         += pxa27x_keyboard.o
  obj-$(CONFIG_KEYBOARD_AAED2000)               += aaed2000_kbd.o
@@ -7762,7 +7591,7 @@ Index: linux-2.6.22/drivers/input/keyboard/Makefile
 Index: linux-2.6.22/drivers/input/keyboard/asic3_keys.c
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/drivers/input/keyboard/asic3_keys.c   2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/input/keyboard/asic3_keys.c   2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,131 @@
 +/*
 + * Generic buttons driver for ASIC3 SoC.
@@ -7897,9 +7726,9 @@ Index: linux-2.6.22/drivers/input/keyboard/asic3_keys.c
 +MODULE_LICENSE("GPL");
 Index: linux-2.6.22/include/asm-arm/arch-pxa/irqs.h
 ===================================================================
---- linux-2.6.22.orig/include/asm-arm/arch-pxa/irqs.h  2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/include/asm-arm/arch-pxa/irqs.h       2007-08-23 13:09:22.000000000 +0200
-@@ -178,6 +178,8 @@
+--- linux-2.6.22.orig/include/asm-arm/arch-pxa/irqs.h  2007-08-29 12:44:38.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/irqs.h       2007-08-29 12:44:49.000000000 +0200
+@@ -172,6 +172,8 @@
        defined(CONFIG_MACH_LOGICPD_PXA270) || \
        defined(CONFIG_MACH_MAINSTONE)
  #define NR_IRQS                       (IRQ_BOARD_END)
@@ -7911,7 +7740,7 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/irqs.h
 Index: linux-2.6.22/include/linux/ioport.h
 ===================================================================
 --- linux-2.6.22.orig/include/linux/ioport.h   2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/include/linux/ioport.h        2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/linux/ioport.h        2007-08-29 12:44:49.000000000 +0200
 @@ -56,6 +56,7 @@
  #define IORESOURCE_IRQ_HIGHLEVEL      (1<<2)
  #define IORESOURCE_IRQ_LOWLEVEL               (1<<3)
@@ -7922,9 +7751,9 @@ Index: linux-2.6.22/include/linux/ioport.h
  #define IORESOURCE_DMA_TYPE_MASK      (3<<0)
 Index: linux-2.6.22/drivers/video/backlight/Kconfig
 ===================================================================
---- linux-2.6.22.orig/drivers/video/backlight/Kconfig  2007-08-23 13:09:19.000000000 +0200
-+++ linux-2.6.22/drivers/video/backlight/Kconfig       2007-08-23 13:09:22.000000000 +0200
-@@ -34,7 +34,7 @@
+--- linux-2.6.22.orig/drivers/video/backlight/Kconfig  2007-08-29 12:44:43.000000000 +0200
++++ linux-2.6.22/drivers/video/backlight/Kconfig       2007-08-29 12:44:49.000000000 +0200
+@@ -40,7 +40,7 @@
  
  config BACKLIGHT_CORGI
        tristate "Sharp Corgi Backlight Driver (SL Series)"
@@ -7936,7 +7765,7 @@ Index: linux-2.6.22/drivers/video/backlight/Kconfig
 Index: linux-2.6.22/drivers/video/backlight/corgi_bl.c
 ===================================================================
 --- linux-2.6.22.orig/drivers/video/backlight/corgi_bl.c       2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/video/backlight/corgi_bl.c    2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/drivers/video/backlight/corgi_bl.c    2007-08-29 12:44:49.000000000 +0200
 @@ -24,7 +24,7 @@
  static int corgibl_intensity;
  static struct backlight_properties corgibl_data;
@@ -7957,8 +7786,8 @@ Index: linux-2.6.22/drivers/video/backlight/corgi_bl.c
        if (!machinfo->limit_mask)
 Index: linux-2.6.22/arch/arm/mach-pxa/corgi.c
 ===================================================================
---- linux-2.6.22.orig/arch/arm/mach-pxa/corgi.c        2007-08-23 13:09:20.000000000 +0200
-+++ linux-2.6.22/arch/arm/mach-pxa/corgi.c     2007-08-23 13:09:22.000000000 +0200
+--- linux-2.6.22.orig/arch/arm/mach-pxa/corgi.c        2007-08-29 12:44:45.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/corgi.c     2007-08-29 12:44:49.000000000 +0200
 @@ -20,6 +20,7 @@
  #include <linux/interrupt.h>
  #include <linux/mmc/host.h>
@@ -7967,7 +7796,7 @@ Index: linux-2.6.22/arch/arm/mach-pxa/corgi.c
  
  #include <asm/setup.h>
  #include <asm/memory.h>
-@@ -142,7 +143,7 @@
+@@ -143,7 +144,7 @@
  /*
   * Corgi Backlight Device
   */
@@ -7978,9 +7807,9 @@ Index: linux-2.6.22/arch/arm/mach-pxa/corgi.c
        .limit_mask = 0x0b,
 Index: linux-2.6.22/arch/arm/mach-pxa/spitz.c
 ===================================================================
---- linux-2.6.22.orig/arch/arm/mach-pxa/spitz.c        2007-08-23 13:09:20.000000000 +0200
-+++ linux-2.6.22/arch/arm/mach-pxa/spitz.c     2007-08-23 13:09:22.000000000 +0200
-@@ -221,7 +221,7 @@
+--- linux-2.6.22.orig/arch/arm/mach-pxa/spitz.c        2007-08-29 12:44:46.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/spitz.c     2007-08-29 12:44:49.000000000 +0200
+@@ -222,7 +222,7 @@
  /*
   * Spitz Backlight Device
   */
@@ -7989,75 +7818,10 @@ Index: linux-2.6.22/arch/arm/mach-pxa/spitz.c
        .default_intensity = 0x1f,
        .limit_mask = 0x0b,
        .max_intensity = 0x2f,
-Index: linux-2.6.22/arch/arm/mach-pxa/generic.c
-===================================================================
---- linux-2.6.22.orig/arch/arm/mach-pxa/generic.c      2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/arch/arm/mach-pxa/generic.c   2007-08-23 13:09:22.000000000 +0200
-@@ -345,6 +345,18 @@
-       .id             = 3,
- };
-+void __init pxa_set_ffuart_info(struct platform_pxa_serial_funcs *info)
-+{
-+      ffuart_device.dev.platform_data = info;
-+}
-+EXPORT_SYMBOL(pxa_set_ffuart_info);
-+
-+void __init pxa_set_btuart_info(struct platform_pxa_serial_funcs *info)
-+{
-+      btuart_device.dev.platform_data = info;
-+}
-+EXPORT_SYMBOL(pxa_set_btuart_info);
-+
- static struct resource i2c_resources[] = {
-       {
-               .start  = 0x40301680,
-Index: linux-2.6.22/drivers/w1/slaves/Kconfig
-===================================================================
---- linux-2.6.22.orig/drivers/w1/slaves/Kconfig        2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/w1/slaves/Kconfig     2007-08-23 13:09:22.000000000 +0200
-@@ -35,4 +35,15 @@
-         Each block has 30 bytes of data and a two byte CRC16.
-         Full block writes are only allowed if the CRC is valid.
-+config W1_SLAVE_DS2760
-+       tristate "Dallas 2760 battery monitor chip (HP iPAQ & others)"
-+       depends on W1
-+       help
-+         If you enable this you will have the DS2760 battery monitor
-+         chip support.
-+         The battery monitor chip is used in many batteries/devices
-+         as the one who is responsible for charging/discharging/monitoring
-+         Li+ batteries.
-+         If you are unsure, say N.
-+
- endmenu
-Index: linux-2.6.22/drivers/w1/slaves/Makefile
-===================================================================
---- linux-2.6.22.orig/drivers/w1/slaves/Makefile       2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/w1/slaves/Makefile    2007-08-23 13:09:22.000000000 +0200
-@@ -5,4 +5,4 @@
- obj-$(CONFIG_W1_SLAVE_THERM)  += w1_therm.o
- obj-$(CONFIG_W1_SLAVE_SMEM)   += w1_smem.o
- obj-$(CONFIG_W1_SLAVE_DS2433) += w1_ds2433.o
--
-+obj-$(CONFIG_W1_SLAVE_DS2760)         += w1_ds2760.o
-Index: linux-2.6.22/drivers/w1/w1_family.h
-===================================================================
---- linux-2.6.22.orig/drivers/w1/w1_family.h   2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/w1/w1_family.h        2007-08-23 13:09:22.000000000 +0200
-@@ -33,6 +33,7 @@
- #define W1_THERM_DS1822       0x22
- #define W1_EEPROM_DS2433      0x23
- #define W1_THERM_DS18B20      0x28
-+#define W1_FAMILY_DS2760        0x30
- #define MAXNAMELEN            32
 Index: linux-2.6.22/include/asm-arm/arch-pxa/serial.h
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/include/asm-arm/arch-pxa/serial.h     2007-08-23 13:09:22.000000000 +0200
++++ linux-2.6.22/include/asm-arm/arch-pxa/serial.h     2007-08-29 12:44:49.000000000 +0200
 @@ -0,0 +1,78 @@
 +/*
 + *  linux/include/asm-arm/arch-pxa/serial.h
@@ -8137,283 +7901,10 @@ Index: linux-2.6.22/include/asm-arm/arch-pxa/serial.h
 +void pxa_set_btuart_info(struct platform_pxa_serial_funcs *btuart_funcs);
 +void pxa_set_stuart_info(struct platform_pxa_serial_funcs *stuart_funcs);
 +void pxa_set_hwuart_info(struct platform_pxa_serial_funcs *hwuart_funcs);
-Index: linux-2.6.22/drivers/w1/slaves/w1_ds2760.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/drivers/w1/slaves/w1_ds2760.c 2007-08-23 13:09:22.000000000 +0200
-@@ -0,0 +1,213 @@
-+/*
-+ * 1-Wire implementation for the ds2760 chip
-+ *
-+ * Copyright (c) 2004-2005, Szabolcs Gyurko <szabolcs.gyurko@tlt.hu>
-+ *
-+ * Use consistent with the GNU GPL is permitted,
-+ * provided that this copyright notice is
-+ * preserved in its entirety in all copies and derived works.
-+ *
-+ */
-+
-+#include <linux/kernel.h>
-+#include <linux/module.h>
-+#include <linux/device.h>
-+#include <linux/types.h>
-+#include <linux/platform_device.h>
-+#include <linux/mutex.h>
-+#include <linux/idr.h>
-+
-+#include "../w1.h"
-+#include "../w1_int.h"
-+#include "../w1_family.h"
-+#include "w1_ds2760.h"
-+
-+static int w1_ds2760_io(struct device *dev, char *buf, int addr, size_t count,
-+                        int io)
-+{
-+      struct w1_slave *sl = container_of(dev, struct w1_slave, dev);
-+
-+      if (!dev)
-+              return 0;
-+
-+      mutex_lock(&sl->master->mutex);
-+
-+      if (addr > DS2760_DATA_SIZE || addr < 0) {
-+              count = 0;
-+              goto out;
-+      }
-+      if (addr + count > DS2760_DATA_SIZE)
-+              count = DS2760_DATA_SIZE - addr;
-+
-+      if (!w1_reset_select_slave(sl)) {
-+              if (!io) {
-+                      w1_write_8(sl->master, W1_DS2760_READ_DATA);
-+                      w1_write_8(sl->master, addr);
-+                      count = w1_read_block(sl->master, buf, count);
-+              } else {
-+                      w1_write_8(sl->master, W1_DS2760_WRITE_DATA);
-+                      w1_write_8(sl->master, addr);
-+                      w1_write_block(sl->master, buf, count);
-+                      /* XXX w1_write_block returns void, not n_written */
-+              }
-+      }
-+
-+out:
-+      mutex_unlock(&sl->master->mutex);
-+
-+      return count;
-+}
-+
-+int w1_ds2760_read(struct device *dev, char *buf, int addr, size_t count)
-+{
-+      return w1_ds2760_io(dev, buf, addr, count, 0);
-+}
-+
-+int w1_ds2760_write(struct device *dev, char *buf, int addr, size_t count)
-+{
-+      return w1_ds2760_io(dev, buf, addr, count, 1);
-+}
-+
-+static ssize_t w1_ds2760_read_bin(struct kobject *kobj, char *buf, loff_t off,
-+                                  size_t count)
-+{
-+      struct device *dev = container_of(kobj, struct device, kobj);
-+      return w1_ds2760_read(dev, buf, off, count);
-+}
-+
-+static struct bin_attribute w1_ds2760_bin_attr = {
-+      .attr = {
-+              .name = "w1_slave",
-+              .mode = S_IRUGO,
-+              .owner = THIS_MODULE,
-+      },
-+      .size = DS2760_DATA_SIZE,
-+      .read = w1_ds2760_read_bin,
-+};
-+
-+static DEFINE_IDR(bat_idr);
-+static DEFINE_MUTEX(bat_idr_lock);
-+
-+static int new_bat_id(void)
-+{
-+      int ret;
-+
-+      while (1) {
-+              int id;
-+
-+              ret = idr_pre_get(&bat_idr, GFP_KERNEL);
-+              if (ret == 0)
-+                      return -ENOMEM;
-+
-+              mutex_lock(&bat_idr_lock);
-+              ret = idr_get_new(&bat_idr, NULL, &id);
-+              mutex_unlock(&bat_idr_lock);
-+
-+              if (ret == 0) {
-+                      ret = id & MAX_ID_MASK;
-+                      break;
-+              }
-+              else if (ret == -EAGAIN)
-+                      continue;
-+              else
-+                      break;
-+      }
-+
-+      return ret;
-+}
-+
-+static void release_bat_id(int id)
-+{
-+      mutex_lock(&bat_idr_lock);
-+      idr_remove(&bat_idr, id);
-+      mutex_unlock(&bat_idr_lock);
-+
-+      return;
-+}
-+
-+static int w1_ds2760_add_slave(struct w1_slave *sl)
-+{
-+      int ret;
-+      int id;
-+      struct platform_device *pdev;
-+
-+      id = new_bat_id();
-+      if (id < 0) {
-+              ret = id;
-+              goto noid;
-+      }
-+
-+      pdev = platform_device_alloc("ds2760-battery", id);
-+      if (!pdev) {
-+              ret = -ENOMEM;
-+              goto pdev_alloc_failed;
-+      }
-+      pdev->dev.parent = &sl->dev;
-+
-+      ret = platform_device_add(pdev);
-+      if (ret)
-+              goto pdev_add_failed;
-+
-+      ret = sysfs_create_bin_file(&sl->dev.kobj, &w1_ds2760_bin_attr);
-+      if (ret)
-+              goto bin_attr_failed;
-+
-+      dev_set_drvdata(&sl->dev, pdev);
-+
-+      goto success;
-+
-+bin_attr_failed:
-+pdev_add_failed:
-+      platform_device_unregister(pdev);
-+pdev_alloc_failed:
-+      release_bat_id(id);
-+noid:
-+success:
-+      return ret;
-+}
-+
-+static void w1_ds2760_remove_slave(struct w1_slave *sl)
-+{
-+      struct platform_device *pdev = dev_get_drvdata(&sl->dev);
-+      int id = pdev->id;
-+
-+      platform_device_unregister(pdev);
-+      release_bat_id(id);
-+      sysfs_remove_bin_file(&sl->dev.kobj, &w1_ds2760_bin_attr);
-+
-+      return;
-+}
-+
-+static struct w1_family_ops w1_ds2760_fops = {
-+      .add_slave    = w1_ds2760_add_slave,
-+      .remove_slave = w1_ds2760_remove_slave,
-+};
-+
-+static struct w1_family w1_ds2760_family = {
-+      .fid = W1_FAMILY_DS2760,
-+      .fops = &w1_ds2760_fops,
-+};
-+
-+static int __init w1_ds2760_init(void)
-+{
-+      printk(KERN_INFO "1-Wire driver for the DS2760 battery monitor "
-+             " chip  - (c) 2004-2005, Szabolcs Gyurko\n");
-+      idr_init(&bat_idr);
-+      return w1_register_family(&w1_ds2760_family);
-+}
-+
-+static void __exit w1_ds2760_exit(void)
-+{
-+      w1_unregister_family(&w1_ds2760_family);
-+      idr_destroy(&bat_idr);
-+}
-+
-+EXPORT_SYMBOL(w1_ds2760_read);
-+EXPORT_SYMBOL(w1_ds2760_write);
-+
-+module_init(w1_ds2760_init);
-+module_exit(w1_ds2760_exit);
-+
-+MODULE_LICENSE("GPL");
-+MODULE_AUTHOR("Szabolcs Gyurko <szabolcs.gyurko@tlt.hu>");
-+MODULE_DESCRIPTION("1-wire Driver Dallas 2760 battery monitor chip");
-Index: linux-2.6.22/drivers/w1/slaves/w1_ds2760.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.22/drivers/w1/slaves/w1_ds2760.h 2007-08-23 13:09:22.000000000 +0200
-@@ -0,0 +1,50 @@
-+/*
-+ * 1-Wire implementation for the ds2760 chip
-+ *
-+ * Copyright (c) 2004-2005, Szabolcs Gyurko <szabolcs.gyurko@tlt.hu>
-+ *
-+ * Use consistent with the GNU GPL is permitted,
-+ * provided that this copyright notice is
-+ * preserved in its entirety in all copies and derived works.
-+ *
-+ */
-+
-+#ifndef __w1_ds2760_h__
-+#define __w1_ds2760_h__
-+
-+/* Known commands to the DS2760 chip */
-+#define W1_DS2760_SWAP                      0xAA
-+#define W1_DS2760_READ_DATA                 0x69
-+#define W1_DS2760_WRITE_DATA                0x6C
-+#define W1_DS2760_COPY_DATA                 0x48
-+#define W1_DS2760_RECALL_DATA               0xB8
-+#define W1_DS2760_LOCK                      0x6A
-+
-+/* Number of valid register addresses */
-+#define DS2760_DATA_SIZE          0x40
-+
-+#define DS2760_PROTECTION_REG     0x00
-+#define DS2760_STATUS_REG         0x01
-+#define DS2760_EEPROM_REG         0x07
-+#define DS2760_SPECIAL_FEATURE_REG  0x08
-+#define DS2760_VOLTAGE_MSB        0x0c
-+#define DS2760_VOLTAGE_LSB        0x0d
-+#define DS2760_CURRENT_MSB        0x0e
-+#define DS2760_CURRENT_LSB        0x0f
-+#define DS2760_CURRENT_ACCUM_MSB    0x10
-+#define DS2760_CURRENT_ACCUM_LSB    0x11
-+#define DS2760_TEMP_MSB                   0x18
-+#define DS2760_TEMP_LSB                   0x19
-+#define DS2760_EEPROM_BLOCK0      0x20
-+#define DS2760_ACTIVE_FULL        0x20
-+#define DS2760_EEPROM_BLOCK1      0x30
-+#define DS2760_RATED_CAPACITY     0x32
-+#define DS2760_CURRENT_OFFSET_BIAS  0x33
-+#define DS2760_ACTIVE_EMPTY       0x3b
-+
-+extern int w1_ds2760_read(struct device *dev, char *buf, int addr,
-+                          size_t count);
-+extern int w1_ds2760_write(struct device *dev, char *buf, int addr,
-+                           size_t count);
-+
-+#endif /* !__w1_ds2760_h__ */
 Index: linux-2.6.22/drivers/serial/pxa.c
 ===================================================================
---- linux-2.6.22.orig/drivers/serial/pxa.c     2007-08-23 13:21:54.000000000 +0200
-+++ linux-2.6.22/drivers/serial/pxa.c  2007-08-23 13:22:54.000000000 +0200
+--- linux-2.6.22.orig/drivers/serial/pxa.c     2007-07-09 01:32:17.000000000 +0200
++++ linux-2.6.22/drivers/serial/pxa.c  2007-08-29 12:44:49.000000000 +0200
 @@ -46,6 +46,7 @@
  #include <asm/io.h>
  #include <asm/hardware.h>
@@ -8478,3 +7969,59 @@ Index: linux-2.6.22/drivers/serial/pxa.c
  }
  
  static void
+Index: linux-2.6.22/arch/arm/mach-pxa/generic.c
+===================================================================
+--- linux-2.6.22.orig/arch/arm/mach-pxa/generic.c      2007-08-29 12:44:25.000000000 +0200
++++ linux-2.6.22/arch/arm/mach-pxa/generic.c   2007-08-29 12:44:49.000000000 +0200
+@@ -42,6 +42,7 @@
+ #include <asm/arch/mmc.h>
+ #include <asm/arch/irda.h>
+ #include <asm/arch/i2c.h>
++#include <asm/arch/serial.h>
+ #include "devices.h"
+ #include "generic.h"
+@@ -346,6 +347,18 @@
+       .id             = 3,
+ };
++void __init pxa_set_ffuart_info(struct platform_pxa_serial_funcs *info)
++{
++      pxa_device_ffuart.dev.platform_data = info;
++}
++EXPORT_SYMBOL(pxa_set_ffuart_info);
++
++void __init pxa_set_btuart_info(struct platform_pxa_serial_funcs *info)
++{
++      pxa_device_btuart.dev.platform_data = info;
++}
++EXPORT_SYMBOL(pxa_set_btuart_info);
++
+ static struct resource pxai2c_resources[] = {
+       {
+               .start  = 0x40301680,
+Index: linux-2.6.22/drivers/leds/Makefile
+===================================================================
+--- linux-2.6.22.orig/drivers/leds/Makefile    2007-08-29 12:44:30.000000000 +0200
++++ linux-2.6.22/drivers/leds/Makefile 2007-08-29 12:44:49.000000000 +0200
+@@ -16,6 +16,7 @@
+ obj-$(CONFIG_LEDS_WRAP)                       += leds-wrap.o
+ obj-$(CONFIG_LEDS_H1940)              += leds-h1940.o
+ obj-$(CONFIG_LEDS_COBALT)             += leds-cobalt.o
++obj-$(CONFIG_LEDS_ASIC3)                += leds-asic3.o
+ obj-$(CONFIG_LEDS_GPIO)                       += leds-gpio.o
+ # LED Triggers
+Index: linux-2.6.22/arch/arm/Kconfig
+===================================================================
+--- linux-2.6.22.orig/arch/arm/Kconfig 2007-08-29 17:18:19.000000000 +0200
++++ linux-2.6.22/arch/arm/Kconfig      2007-08-29 17:18:58.000000000 +0200
+@@ -1032,6 +1032,8 @@
+ source "drivers/w1/Kconfig"
++source "drivers/power/Kconfig"
++
+ source "drivers/hwmon/Kconfig"
+ #source "drivers/l3/Kconfig"