summaryrefslogtreecommitdiff
path: root/meta
diff options
context:
space:
mode:
authorSamuel Ortiz <sameo@openedhand.com>2007-08-29 15:19:43 +0000
committerSamuel Ortiz <sameo@openedhand.com>2007-08-29 15:19:43 +0000
commitf79c41c26de0948fe5caef6dbc502093fc12d5ef (patch)
tree5513bf45c0eb396fb6fe5833ad79d9e7c49d2a17 /meta
parentff0a6211cdbf0a142ab5d232670e6ed8b25716a7 (diff)
downloadopenembedded-core-f79c41c26de0948fe5caef6dbc502093fc12d5ef.tar.gz
openembedded-core-f79c41c26de0948fe5caef6dbc502093fc12d5ef.tar.bz2
openembedded-core-f79c41c26de0948fe5caef6dbc502093fc12d5ef.tar.xz
openembedded-core-f79c41c26de0948fe5caef6dbc502093fc12d5ef.zip
linux-rp: Ported the HTC Universal patch to the latest -rp kernel.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2594 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta')
-rw-r--r--meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/defconfig-htcuniversal173
-rw-r--r--meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/htcuni.patch755
2 files changed, 222 insertions, 706 deletions
diff --git a/meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/defconfig-htcuniversal b/meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/defconfig-htcuniversal
index 04e9070b8..fb112b768 100644
--- a/meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/defconfig-htcuniversal
+++ b/meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/defconfig-htcuniversal
@@ -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
@@ -179,6 +169,14 @@ CONFIG_PXA27x=y
# CONFIG_PXA_KEYS is not set
#
+# Boot options
+#
+
+#
+# Power management
+#
+
+#
# Processor Type
#
CONFIG_CPU_32=y
@@ -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
#
@@ -1040,6 +1001,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
#
CONFIG_EXT2_FS=y
@@ -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
diff --git a/meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/htcuni.patch b/meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/htcuni.patch
index a83c7afa3..8f473467c 100644
--- a/meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/htcuni.patch
+++ b/meta/packages/linux/linux-rp-2.6.22+2.6.23-rc4/htcuni.patch
@@ -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 +++++++++++
@@ -21,11 +22,9 @@
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 ++
@@ -41,11 +40,6 @@
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 ++
@@ -63,15 +57,14 @@
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"