刘益星 [Mon, 17 May 2010 02:35:58 +0000 (02:35 +0000)]
modify for dm9000
罗伟 [Sat, 15 May 2010 08:06:32 +0000 (08:06 +0000)]
modify adc driver and adc key driver
罗伟 [Sat, 15 May 2010 07:43:30 +0000 (07:43 +0000)]
罗伟 [Sat, 15 May 2010 07:42:12 +0000 (07:42 +0000)]
luowei add adc driver and adckey driver on 100515
柯飞雄 [Fri, 14 May 2010 14:40:14 +0000 (14:40 +0000)]
rk2818_sdmmc.x --> rk2818_sdmmcx
钟勇汪 [Fri, 14 May 2010 13:12:52 +0000 (13:12 +0000)]
add fb
钟勇汪 [Fri, 14 May 2010 12:57:10 +0000 (12:57 +0000)]
add screen
钟勇汪 [Fri, 14 May 2010 12:44:56 +0000 (12:44 +0000)]
add fb
林辉辉 [Fri, 14 May 2010 09:57:38 +0000 (09:57 +0000)]
update serial for poll read and write
林辉辉 [Fri, 14 May 2010 09:26:25 +0000 (09:26 +0000)]
updata enc28j60 net
柯飞雄 [Fri, 14 May 2010 01:32:54 +0000 (01:32 +0000)]
mod i2c clkid
黄涛 [Fri, 14 May 2010 01:31:26 +0000 (01:31 +0000)]
add rk2818_sdmmc.* and rk2818_i2c.*
柯飞雄 [Fri, 14 May 2010 01:30:25 +0000 (01:30 +0000)]
mod i2c clkid
柯飞雄 [Fri, 14 May 2010 01:29:42 +0000 (01:29 +0000)]
mod i2c clkid
柯飞雄 [Thu, 13 May 2010 15:09:38 +0000 (15:09 +0000)]
mod i2c
柯飞雄 [Thu, 13 May 2010 14:46:29 +0000 (14:46 +0000)]
mod i2c
柯飞雄 [Thu, 13 May 2010 14:09:48 +0000 (14:09 +0000)]
mod i2c
柯飞雄 [Thu, 13 May 2010 13:54:27 +0000 (13:54 +0000)]
柯飞雄 [Thu, 13 May 2010 13:07:50 +0000 (13:07 +0000)]
config add i2cx select
柯飞雄 [Thu, 13 May 2010 10:56:00 +0000 (10:56 +0000)]
mod i2c
黄涛 [Thu, 13 May 2010 09:03:23 +0000 (09:03 +0000)]
add cpufreq support
黄涛 [Thu, 13 May 2010 09:01:08 +0000 (09:01 +0000)]
add cpufreq support
林辉辉 [Thu, 13 May 2010 07:03:11 +0000 (07:03 +0000)]
update some file
黄涛 [Thu, 13 May 2010 06:42:13 +0000 (06:42 +0000)]
fix macro definition
林辉辉 [Thu, 13 May 2010 02:05:40 +0000 (02:05 +0000)]
update .config
林辉辉 [Thu, 13 May 2010 01:47:43 +0000 (01:47 +0000)]
add hym8563 rtc
柯飞雄 [Thu, 13 May 2010 01:14:00 +0000 (01:14 +0000)]
mod i2c
柯飞雄 [Thu, 13 May 2010 01:11:20 +0000 (01:11 +0000)]
mod i2c
刘益星 [Wed, 12 May 2010 15:34:37 +0000 (15:34 +0000)]
mod dm9000
刘益星 [Wed, 12 May 2010 15:14:07 +0000 (15:14 +0000)]
modify for dm9000
柯飞雄 [Wed, 12 May 2010 10:06:12 +0000 (10:06 +0000)]
mod i2c
柯飞雄 [Wed, 12 May 2010 10:03:49 +0000 (10:03 +0000)]
mod i2c
柯飞雄 [Wed, 12 May 2010 09:59:41 +0000 (09:59 +0000)]
mod i2c
柯飞雄 [Wed, 12 May 2010 09:57:29 +0000 (09:57 +0000)]
mod i2c
柯飞雄 [Wed, 12 May 2010 09:51:53 +0000 (09:51 +0000)]
del i2c.h
柯飞雄 [Wed, 12 May 2010 09:18:40 +0000 (09:18 +0000)]
add i2c
柯飞雄 [Wed, 12 May 2010 02:19:45 +0000 (02:19 +0000)]
mod i2c
柯飞雄 [Tue, 11 May 2010 14:21:07 +0000 (14:21 +0000)]
add i2c
柯飞雄 [Tue, 11 May 2010 14:19:49 +0000 (14:19 +0000)]
add i2c
柯飞雄 [Tue, 11 May 2010 14:10:25 +0000 (14:10 +0000)]
add i2c
柯飞雄 [Tue, 11 May 2010 14:07:00 +0000 (14:07 +0000)]
add i2c
柯飞雄 [Tue, 11 May 2010 14:03:56 +0000 (14:03 +0000)]
add i2c
柯飞雄 [Tue, 11 May 2010 14:03:38 +0000 (14:03 +0000)]
add i2c
柯飞雄 [Tue, 11 May 2010 14:02:35 +0000 (14:02 +0000)]
add i2c
林辉辉 [Tue, 11 May 2010 07:34:46 +0000 (07:34 +0000)]
add spi driver
黄涛 [Tue, 11 May 2010 02:11:23 +0000 (02:11 +0000)]
map RK2818_SDRAMC_BASE
黄涛 [Tue, 11 May 2010 01:21:23 +0000 (01:21 +0000)]
add scu.h
倪振宇 [Mon, 10 May 2010 13:52:39 +0000 (13:52 +0000)]
modify dwdma hardware connection
黄涛 [Mon, 10 May 2010 08:46:32 +0000 (08:46 +0000)]
enable TCM
倪振宇 [Fri, 7 May 2010 11:58:00 +0000 (11:58 +0000)]
disable dwdma testing switch
倪振宇 [Fri, 7 May 2010 11:56:48 +0000 (11:56 +0000)]
modify performance of dwdam interrupt method
倪振宇 [Thu, 6 May 2010 08:21:12 +0000 (08:21 +0000)]
modify method that get irq status
倪振宇 [Wed, 5 May 2010 03:30:46 +0000 (03:30 +0000)]
modify interrupt type
沈睿汀 [Fri, 30 Apr 2010 02:52:30 +0000 (02:52 +0000)]
update for gpio
黄涛 [Thu, 29 Apr 2010 14:19:17 +0000 (14:19 +0000)]
support clk_set_parent
沈睿汀 [Thu, 29 Apr 2010 09:23:23 +0000 (09:23 +0000)]
add for gpio
沈睿汀 [Thu, 29 Apr 2010 09:19:35 +0000 (09:19 +0000)]
update for gpio
沈睿汀 [Thu, 29 Apr 2010 09:12:25 +0000 (09:12 +0000)]
update for gpio
沈睿汀 [Thu, 29 Apr 2010 09:10:42 +0000 (09:10 +0000)]
update for gpio
沈睿汀 [Thu, 29 Apr 2010 09:07:44 +0000 (09:07 +0000)]
update for gpio
沈睿汀 [Thu, 29 Apr 2010 09:06:03 +0000 (09:06 +0000)]
update for gpio
倪振宇 [Wed, 28 Apr 2010 14:30:51 +0000 (14:30 +0000)]
delete macro test dma
倪振宇 [Wed, 28 Apr 2010 13:54:42 +0000 (13:54 +0000)]
add dwdma driver
黄涛 [Tue, 27 Apr 2010 13:17:52 +0000 (13:17 +0000)]
set zreladdr to 0x60008000
黄涛 [Tue, 27 Apr 2010 12:48:00 +0000 (12:48 +0000)]
update debug code
林辉辉 [Tue, 27 Apr 2010 12:28:53 +0000 (12:28 +0000)]
update .config can run ramdisk
黄涛 [Mon, 26 Apr 2010 13:13:44 +0000 (13:13 +0000)]
more clock
林辉辉 [Mon, 26 Apr 2010 07:43:24 +0000 (07:43 +0000)]
add iomux driver
林辉辉 [Sat, 24 Apr 2010 06:33:04 +0000 (06:33 +0000)]
update rk2818_serial
黄涛 [Sat, 24 Apr 2010 03:50:20 +0000 (03:50 +0000)]
fix clock name from uart_clk to uart, uartclk get use clk_get_rate
黄涛 [Sat, 24 Apr 2010 03:48:44 +0000 (03:48 +0000)]
add clock support
黄涛 [Fri, 23 Apr 2010 09:53:52 +0000 (09:53 +0000)]
enable common clkdev
林辉辉 [Fri, 23 Apr 2010 03:25:06 +0000 (03:25 +0000)]
add rk2818 serial and up iomap
林辉辉 [Thu, 22 Apr 2010 04:26:22 +0000 (04:26 +0000)]
rk2818 for linux2.6.32
Bjorn Bringert [Thu, 15 Apr 2010 09:04:01 +0000 (10:04 +0100)]
Implement read(2) in ashmem driver
Bug:
2595601
Change-Id: I47c0016f594f9354fb8658ccb26e3d395bcb137b
Signed-off-by: Bjorn Bringert <bringert@android.com>
San Mehat [Thu, 6 May 2010 22:43:46 +0000 (15:43 -0700)]
staging: android: lowmemorykiller: Remove bitrotted codepath
Now that we're murder-synchronous, this code path will never be
called (and if it does, it doesn't tell us anything useful other
than we killed a task that was already being killed by somebody
else but hadn't gotten its' signal yet)
Signed-off-by: San Mehat <san@google.com>
San Mehat [Thu, 6 May 2010 22:40:07 +0000 (15:40 -0700)]
staging: android: lowmemorykiller: Fix task_struct leak
As it turns out, the CONFIG_PROFILING interfaces leak a
task struct if the notifier chain returns NOTIFY_OK.. doh.
This patch reworks lowmemkiller to use the new generic task
free notifier chain.
Signed-off-by: San Mehat <san@google.com>
San Mehat [Thu, 6 May 2010 22:37:55 +0000 (15:37 -0700)]
sched: Add a generic notifier when a task struct is about to be freed
This patch adds a notifier which can be used by subsystems that may
be interested in when a task has completely died and is about to
have it's last resource freed.
The Android lowmemory killer uses this to determine when a task
it has killed has finally given up its goods.
Signed-off-by: San Mehat <san@google.com>
Christopher Lais [Sat, 1 May 2010 20:51:48 +0000 (15:51 -0500)]
binder: Fix memory corruption via page aliasing
binder_deferred_release was not unmapping the page from the buffer
before freeing it, causing memory corruption. This only happened
when page(s) had not been freed by binder_update_page_range, which
properly unmaps the pages.
This only happens on architectures with VIPT aliasing.
To reproduce, create a program which opens, mmaps, munmaps, then closes
the binder very quickly. This should leave a page allocated when the
binder is released. When binder_deferrred_release is called on the
close, the page will remain mapped to the address in the linear
proc->buffer. Later, we may map the same physical page to a different
virtual address that has different coloring, and this may cause
aliasing to occur.
PAGE_POISONING will greatly increase your chances of noticing any
problems.
Change-Id: I6941bf212881b8bf846bdfda43d3609c7ae4892e
Signed-off-by: Christopher Lais <chris+android@zenthought.org>
San Mehat [Wed, 5 May 2010 18:38:42 +0000 (11:38 -0700)]
staging: android: lowmemkiller: Substantially reduce overhead during reclaim
This patch optimizes lowmemkiller to not do any work when it has an outstanding
kill-request. This greatly reduces the pressure on the task_list lock
(improving interactivity), as well as improving the vmscan performance
when under heavy memory pressure (by up to 20x in tests).
Note: For this enhancement to work, you need CONFIG_PROFILING
Signed-off-by: San Mehat <san@google.com>
Dima Zavin [Wed, 28 Apr 2010 03:57:04 +0000 (20:57 -0700)]
[ARM] Do not call flush_cache_user_range with mmap_sem held
We can't be holding the mmap_sem while calling flush_cache_user_range
because the flush can fault. If we fault on a user address, the
page fault handler will try to take mmap_sem again. Since both places
acquire the read lock, most of the time it succeeds. However, if another
thread tries to acquire the write lock on the mmap_sem (e.g. mmap) in
between the call to flush_cache_user_range and the fault, the down_read
in do_page_fault will deadlock.
Also, since we really can't be holding the mmap_sem while calling
flush_cache_user_range AND vma is actually unused by the flush itself,
get rid of vma as an argument.
Change-Id: If55409bde41ad1060fa4fe7cbd4ac530d4d9a106
Signed-off-by: Dima Zavin <dima@android.com>
Velempati Chiranjeevi [Wed, 21 Oct 2009 04:23:10 +0000 (09:53 +0530)]
USB: android gadget: mass storage: Fix format issue for Vista Host
As part of formating the mass storage device, Host sends the INQUIRY
scsi command. As per the standard, the command length for this
command should be 6 bytes, whereas the Vista host sends 12 bytes.
When the command length of the command is not equal to the standard
length, the device sends a phase error as part of the status phase.
When the host receives a phase error, it re-enumerates, hence the
error.
If the command is INQUIRY, and the command length is 12 bytes,
treating this as a good command and not sending the phase error
to the host fixes this issue.
Signed-off-by: Velempati Chiranjeevi <c_cvelem@qualcomm.com>
Signed-off-by: Mike Lockwood <lockwood@android.com>
San Mehat [Mon, 26 Apr 2010 22:11:04 +0000 (15:11 -0700)]
lowmemorykiller: Don't try to kill the same pid over and over
Under certain circumstances, a process can take awhile to
handle a sig-kill (especially if it's in a scheduler group with
a very low share ratio). When this occurs, lowmemkiller returns
to vmscan indicating the process memory has been freed - even
though the process is still waiting to die. Since the memory
hasn't actually freed, lowmemkiller is called again shortly after,
and picks the same process to die; regardless of the fact that
it has already been 'scheduled' to die and the memory has already
been reported to vmscan as having been freed.
Solution is to check fatal_signal_pending() on the selected
task, and if it's already pending destruction return; indicating
to vmscan that no resources were freed on this pass.
Signed-off-by: San Mehat <san@google.com>
Arve Hjønnevåg [Thu, 22 Apr 2010 22:53:23 +0000 (15:53 -0700)]
Staging: android: binder: Create dedicated workqueue for binder deferred work
Some drivers flush the global workqueue when closed. This would deadlock if
the last reference to the file was released from the binder.
Change-Id: Ifdabc0b383fecb20836d1bbb9786c632402a14e1
Signed-off-by: Arve Hjønnevåg <arve@android.com>
KAMEZAWA Hiroyuki [Fri, 2 Apr 2010 00:11:29 +0000 (09:11 +0900)]
proc: pagemap: Hold mmap_sem during page walk
In initial design, walk_page_range() was designed just for walking page
table and it didn't require mmap_sem. Now, find_vma() etc.. are used
in walk_page_range() and we need mmap_sem around it.
This patch adds mmap_sem around walk_page_range().
Because /proc/<pid>/pagemap's callback routine use put_user(), we have
to get rid of it to do sane fix.
Changelog: 2010/Apr/2
- fixed start_vaddr and end overflow
Changelog: 2010/Apr/1
- fixed start_vaddr calculation
- removed unnecessary cast.
- removed unnecessary change in smaps.
- use GFP_TEMPORARY instead of GFP_KERNEL
Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Matt Mackall <mpm@selenic.com>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Brian Swetland <swetland@google.com>
Cc: Dave Hansen <haveblue@us.ibm.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: San Mehat <san@google.com>
[ Fixed kmalloc failure return code as per Matt ]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
San Mehat [Mon, 19 Apr 2010 14:45:33 +0000 (07:45 -0700)]
Revert "proc: pagemap: Hold mmap_sem during page walk"
This reverts commit
0bf551684025a5f0f3c9aac694cd5cf73706cb70.
Reverting for proper up-stream fix
Signed-off-by: San Mehat <san@google.com>
Mike Lockwood [Sat, 17 Apr 2010 16:01:35 +0000 (12:01 -0400)]
Staging: android: timed_gpio: Properly discard invalid timeout values.
The timed output device never previously checked the return value of sscanf,
resulting in an uninitialized int being passed to enable() if input value
was invalid.
Signed-off-by: Mike Lockwood <lockwood@android.com>
Mike Lockwood [Thu, 15 Apr 2010 19:04:07 +0000 (15:04 -0400)]
USB: gadget: f_mass_storage: Defer handling interface changes until it is safe.
Pulling in some code from file_storage.c, we now handle interface changes
in do_set_config(), which is now not called until any pending requests have
been successfully completed or cancelled.
This fixes a race condition that resulted in usb_ep_free_request() being called
while the request is still busy.
Signed-off-by: Mike Lockwood <lockwood@android.com>
Colin Cross [Wed, 7 Apr 2010 19:08:27 +0000 (12:08 -0700)]
fs: partitions: Fix warnings in fs/partitions/check.c
Change-Id: I4398ace0c55d4833b1fcbb7a4e71ab8f0b1b044a
Signed-off-by: Colin Cross <ccross@android.com>
Nick Pelly [Thu, 8 Apr 2010 23:23:32 +0000 (16:23 -0700)]
Bluetooth: Hack: Don't dereference null pointer.
This avoids the S305 panic during incoming connection.
S305 sends PSM 25 L2CAP connection request before the L2CAP info response.
When we receive that info response we crash on null pointer here.
Bug:
2127637
Change-Id: Ib637516251f46fa9a9c87ac015dc2f27df5a27fd
Signed-off-by: Nick Pelly <npelly@google.com>
Arve Hjønnevåg [Thu, 11 Dec 2008 04:01:15 +0000 (20:01 -0800)]
USB: gadget: android: mass_storage: Use spin_lock_irqsave/spin_unlock_irqrestore
The old code did not allways disable interrupts when called from thread
context, but tried to lock the same spinlock from interrupt context.
This was merged from a change to drivers/usb/function/mass_storage.c
in the android-msm-2.6.29 branch.
Signed-off-by: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Mike Lockwood <lockwood@android.com>
San Mehat [Tue, 30 Mar 2010 23:43:18 +0000 (16:43 -0700)]
proc: pagemap: Hold mmap_sem during page walk
If the mmap_sem is not held while we walk_page_range(), then
it is possible for find_vma() to race with a remove_vma_list()
caused by do_munmap() (or others).
Unable to handle kernel paging request at virtual address
6b6b6b5b
Internal error: Oops: 5 [#1] PREEMPT
CPU: 0 Not tainted (
2.6.32.9-27154-ge3e6e27 #1)
PC is at find_vma+0x40/0x7c
LR is at walk_page_range+0x70/0x230
pc : [<
c00aa3ac>] lr : [<
c00b298c>] psr:
20000013
sp :
c6aa9eb8 ip :
6b6b6b53 fp :
c6a58f60
r10:
c7e1d1b8 r9 :
0001bca0 r8 :
47000000
r7 :
c6aa9f80 r6 :
c6aa8000 r5 :
46fbd000 r4 :
6b6b6b6b
r3 :
c7ca4820 r2 :
6b6b6b6b r1 :
46fbd000 r0 :
c70e3e40
Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control:
10c5787d Table:
26574019 DAC:
00000015
[<
c00aa3ac>] (find_vma+0x40/0x7c) from [<
c00b298c>] (walk_page_range+0x70/0x230)
[<
c00b298c>] (walk_page_range+0x70/0x230) from [<
c00f5d3c>] (pagemap_read+0x1a4/0x278)
[<
c00f5d3c>] (pagemap_read+0x1a4/0x278) from [<
c00bac40>] (vfs_read+0xa8/0x150)
[<
c00bac40>] (vfs_read+0xa8/0x150) from [<
c00bad94>] (sys_read+0x3c/0x68)
[<
c00bad94>] (sys_read+0x3c/0x68) from [<
c0026f00>] (ret_fast_syscall+0x0/0x2c)
Code:
98bd8010 e5932004 e3a00000 ea000008 (
e5124010)
Signed-off-by: San Mehat <san@google.com>
CC: Brian Swetland <swetland@google.com>
CC: Matt Mackall <mpm@selenic.com>
CC: Andrew Morton <akpm@linux-foundation.org>
CC: Linus Torvalds <torvalds@linux-foundation.org>
Dmitry Shmidt [Thu, 18 Mar 2010 23:04:18 +0000 (16:04 -0700)]
wlan: Extract generic wlan platform data from tiwlan specific header
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Mike Lockwood [Wed, 17 Mar 2010 19:42:29 +0000 (15:42 -0400)]
USB: gadget: android: check for null _android_dev in android_register_function()
This fixes a load ordering issue that occurred if a function driver loads before
the android gadget driver is initialized.
Signed-off-by: Mike Lockwood <lockwood@android.com>
Iliyan Malchev [Wed, 17 Mar 2010 19:02:26 +0000 (12:02 -0700)]
apanic: make APANIC_LABEL depend on APANIC
Signed-off-by: Iliyan Malchev <malchev@google.com>
Mike Lockwood [Fri, 12 Mar 2010 16:01:05 +0000 (11:01 -0500)]
USB: gadget: f_mass_storage: Flush writes after every 4 MB.
This avoids excessive caching at the block level layer when copying large
files to the storage device.
Signed-off-by: Mike Lockwood <lockwood@android.com>
Arve Hjønnevåg [Thu, 11 Mar 2010 00:38:33 +0000 (16:38 -0800)]
Merge commit 'v2.6.32.9' into android-2.6.32
Arve Hjønnevåg [Thu, 11 Mar 2010 00:38:13 +0000 (16:38 -0800)]
Revert "sysfs: Fix sysfs owner and group."
This reverts commit
f1f8e7cd6f796b15ed011361f09b57db796d9b4e.
Mike Lockwood [Wed, 10 Mar 2010 22:05:03 +0000 (17:05 -0500)]
USB: gadget: f_rndis: Add platform data for RNDIS vendor ID and MAC address.
This fixes a kernel panic in rndis.c when receiving the
OID_GEN_VENDOR_DESCRIPTION command.
Signed-off-by: Mike Lockwood <lockwood@android.com>
Nick Pelly [Wed, 9 Dec 2009 03:42:21 +0000 (19:42 -0800)]
Bluetooth: Use non-flushable pb flag by default for ACL data on capable chipsets.
With Bluetooth 2.1 ACL packets can be flushable or non-flushable. This commit
makes ACL data packets non-flushable by default on compatible chipsets, and
adds the L2CAP_LM_FLUSHABLE socket option to explicitly request flushable ACL
data packets for a given L2CAP socket. This is useful for A2DP data which can
be safely discarded if it can not be delivered within a short time (while
other ACL data should not be discarded).
Note that making ACL data flushable has no effect unless the automatic flush
timeout for that ACL link is changed from its default of 0 (infinite).
Change-Id: Ie3d4befdeaefb8c979de7ae603ff5ec462b3483c
Signed-off-by: Nick Pelly <npelly@google.com>