陈金泉 [Fri, 25 Nov 2011 03:32:27 +0000 (11:32 +0800)]
turn up rt5631 SPK volume
黄涛 [Thu, 24 Nov 2011 09:41:28 +0000 (17:41 +0800)]
sound: rk29: pcm: fix bug on rockchip_pcm_enqueue
Fix this bug:
Unable to handle kernel paging request at virtual address
6b6b6b77
pgd =
d41ec000
[
6b6b6b77] *pgd=
00000000
Internal error: Oops: 5 [#1] PREEMPT
CPU: 0 Tainted: P (3.0.8+ #250)
PC is at rockchip_pcm_enqueue+0x2c/0xec
LR is at rk29_audio_buffdone+0x58/0x84
pc : [<
c0713094>] lr : [<
c071361c>] psr:
80000193
sp :
d0bfdcf8 ip :
00000001 fp :
d51f5c44
r10:
d0a2e414 r9 :
6b6b6b6b r8 :
6b6b6b6b
r7 :
00000001 r6 :
d53abc80 r5 :
6b6b6b6b r4 :
d0a983c0
r3 :
6b6b6b6b r2 :
d6d6d6d6 r1 :
0000001d r0 :
d53abc80
[<
c0713094>] (rockchip_pcm_enqueue+0x2c/0xec) from [<
c071361c>] (rk29_audio_buffdone+0x58/0x84)
[<
c071361c>] (rk29_audio_buffdone+0x58/0x84) from [<
c0447a50>] (rk29_pl330_rq+0x270/0x2d0)
[<
c0447a50>] (rk29_pl330_rq+0x270/0x2d0) from [<
c04438f4>] (pl330_update+0x374/0x438)
[<
c04438f4>] (pl330_update+0x374/0x438) from [<
c0446d3c>] (pl330_irq_handler+0xc/0x18)
[<
c0446d3c>] (pl330_irq_handler+0xc/0x18) from [<
c04960e0>] (handle_irq_event_percpu+0x30/0x174)
[<
c04960e0>] (handle_irq_event_percpu+0x30/0x174) from [<
c049627c>] (handle_irq_event+0x58/0x80)
[<
c049627c>] (handle_irq_event+0x58/0x80) from [<
c0498358>] (handle_fasteoi_irq+0xb4/0x108)
[<
c0498358>] (handle_fasteoi_irq+0xb4/0x108) from [<
c0495d70>] (generic_handle_irq+0x28/0x3c)
[<
c0495d70>] (generic_handle_irq+0x28/0x3c) from [<
c0433060>] (asm_do_IRQ+0x60/0x84)
[<
c0433060>] (asm_do_IRQ+0x60/0x84) from [<
c04384c4>] (__irq_svc+0x44/0xa0)
Exception stack(0xd0bfde10 to 0xd0bfde58)
de00:
00000001 00000108 00000002 00000000
de20:
00000013 d5028640 c0b0d32c d05e8808 d05e8800 d05e8808 c0b0d804 d0bfdeb8
de40:
d4bd2400 d0bfde58 c0454ab4 c046ef54 40000013 ffffffff
[<
c04384c4>] (__irq_svc+0x44/0xa0) from [<
c046ef54>] (__queue_work+0x334/0x370)
[<
c046ef54>] (__queue_work+0x334/0x370) from [<
c046efdc>] (queue_work_on+0x2c/0x34)
[<
c046efdc>] (queue_work_on+0x2c/0x34) from [<
c046f024>] (queue_work+0x2c/0x54)
[<
c046f024>] (queue_work+0x2c/0x54) from [<
c047b214>] (__async_schedule+0x194/0x1b4)
[<
c047b214>] (__async_schedule+0x194/0x1b4) from [<
c070f118>] (dapm_power_widgets+0x334/0x3a4)
[<
c070f118>] (dapm_power_widgets+0x334/0x3a4) from [<
c070f234>] (snd_soc_dapm_stream_event+0xac/0xbc)
[<
c070f234>] (snd_soc_dapm_stream_event+0xac/0xbc) from [<
c070b3a0>] (soc_codec_close+0x164/0x178)
[<
c070b3a0>] (soc_codec_close+0x164/0x178) from [<
c07025a0>] (snd_pcm_release_substream+0x54/0xa4)
[<
c07025a0>] (snd_pcm_release_substream+0x54/0xa4) from [<
c0702618>] (snd_pcm_release+0x28/0x6c)
[<
c0702618>] (snd_pcm_release+0x28/0x6c) from [<
c04c8e50>] (fput+0x104/0x1f8)
[<
c04c8e50>] (fput+0x104/0x1f8) from [<
c04c5e60>] (filp_close+0x6c/0x78)
[<
c04c5e60>] (filp_close+0x6c/0x78) from [<
c04c5f30>] (sys_close+0xc4/0x124)
[<
c04c5f30>] (sys_close+0xc4/0x124) from [<
c0438940>] (ret_fast_syscall+0x0/0x30)
rk29_audio_buffdone call rockchip_pcm_enqueue, which access
rockchip_runtime_data *prtd, but prtd is freed on rockchip_pcm_close.
张昊 [Thu, 24 Nov 2011 03:42:39 +0000 (11:42 +0800)]
fix driver bug : muti-touch & td8801
张昊 [Wed, 23 Nov 2011 04:40:21 +0000 (12:40 +0800)]
Driver : add new modem driver sc8800 & tdsc8800
张昊 [Wed, 23 Nov 2011 03:45:19 +0000 (11:45 +0800)]
TD8801 : change for wm8994
陈金泉 [Wed, 23 Nov 2011 02:43:22 +0000 (10:43 +0800)]
change for wm8994
黄涛 [Tue, 22 Nov 2011 14:09:46 +0000 (22:09 +0800)]
pack-kernel.sh: fix local version
陈金泉 [Tue, 22 Nov 2011 14:01:51 +0000 (22:01 +0800)]
fix rt5631 calling function error
张昊 [Tue, 22 Nov 2011 13:16:20 +0000 (21:16 +0800)]
Driver : add new driver al3006/bma023 & fix gc0309 building error
张昊 [Tue, 22 Nov 2011 13:14:36 +0000 (21:14 +0800)]
PHONE : use new sdmmc driver
陈金泉 [Tue, 22 Nov 2011 12:35:02 +0000 (20:35 +0800)]
delete rk29_alc5621,add rk29_rt5621
黄涛 [Tue, 22 Nov 2011 11:57:39 +0000 (19:57 +0800)]
rk29: dd3sdk: defconfig: add more netfilter
黄涛 [Tue, 22 Nov 2011 11:55:54 +0000 (19:55 +0800)]
rk29: dd3sdk: defconfig: reduce by savedefconfig
黄涛 [Tue, 22 Nov 2011 11:53:00 +0000 (19:53 +0800)]
pack-kernel.sh: merge from stable, remove 5625
陈金泉 [Tue, 22 Nov 2011 11:39:01 +0000 (19:39 +0800)]
delete old driver of rt5621
陈金泉 [Tue, 22 Nov 2011 10:10:23 +0000 (18:10 +0800)]
add rt5621 driver for kernel 3.0 and change wm8994 driver
黄涛 [Tue, 22 Nov 2011 09:40:27 +0000 (17:40 +0800)]
input: eeti_egalax_i2c: no report pressure
黄涛 [Tue, 22 Nov 2011 09:16:38 +0000 (17:16 +0800)]
earlysuspend: Temporary enable debug
黄涛 [Tue, 22 Nov 2011 09:09:57 +0000 (17:09 +0800)]
earlysuspend: revert to default version
yangkai [Tue, 22 Nov 2011 07:37:57 +0000 (15:37 +0800)]
Merge branch 'develop-3.0' of ssh://192.168.1.29/rk/kernel into develop-3.0
yangkai [Wed, 9 Nov 2011 09:46:22 +0000 (17:46 +0800)]
ddr v2.02 for lower power consumption
黄涛 [Tue, 22 Nov 2011 04:16:06 +0000 (12:16 +0800)]
rk29: dd3sdk: defconfig: enable debugfs
张昊 [Tue, 22 Nov 2011 04:10:39 +0000 (12:10 +0800)]
wm831x : fix 831x init bug for td8801
张昊 [Tue, 22 Nov 2011 04:09:48 +0000 (12:09 +0800)]
driver pixcir_i2c_ts : update to support android 4.0 muti-touch reporter
lintao [Tue, 22 Nov 2011 03:54:23 +0000 (11:54 +0800)]
merge from kernel 2.6.32 develop
张昊 [Tue, 22 Nov 2011 02:41:46 +0000 (10:41 +0800)]
Mach-rk29 : add new board td8801_v2 config
张昊 [Tue, 22 Nov 2011 02:20:35 +0000 (10:20 +0800)]
Driver : add touchscreen driver pixcir_i2c_ts & ili2102 for td8801
张昊 [Tue, 22 Nov 2011 02:18:31 +0000 (10:18 +0800)]
Driver : add screen driver ls035y8dx04a
黄涛 [Tue, 22 Nov 2011 01:28:04 +0000 (09:28 +0800)]
Revert "TD8801 : Add board td8801_v2"
This reverts commit
45ef5ba5154bbf6a8a0a8ee4a13c30a3baa28ce2.
张昊 [Mon, 21 Nov 2011 13:15:26 +0000 (21:15 +0800)]
TD8801 : Add board td8801_v2
陈金泉 [Mon, 21 Nov 2011 12:46:27 +0000 (20:46 +0800)]
add wm8988 driver for kernel3.0
CMY [Sun, 20 Nov 2011 06:10:58 +0000 (14:10 +0800)]
Merge branch 'develop-3.0' of ssh://192.168.1.29/rk/kernel into develop-3.0
CMY [Sun, 20 Nov 2011 05:39:11 +0000 (13:39 +0800)]
RTL8192c v3.26 for linux3.0
cz [Sun, 20 Nov 2011 04:49:05 +0000 (12:49 +0800)]
BT: add HID && BNEP
CMY [Sun, 20 Nov 2011 04:45:07 +0000 (12:45 +0800)]
rtl8188 ok v1
hwg [Sun, 20 Nov 2011 02:23:04 +0000 (10:23 +0800)]
Merge branch 'develop-3.0' of ssh://192.168.1.29/rk/kernel into develop-3.0
hwg [Sun, 20 Nov 2011 02:22:50 +0000 (10:22 +0800)]
add new 4319 dirver, same as 4329
hwg [Sun, 20 Nov 2011 02:16:46 +0000 (10:16 +0800)]
delete old bcm4319 driver
杜坤明 [Sat, 19 Nov 2011 13:52:44 +0000 (21:52 +0800)]
gpu : add USE_DMA_COHERENT & hack for gcvSURF_TILE_STATUS
yxj [Sat, 19 Nov 2011 10:39:57 +0000 (18:39 +0800)]
Merge branch 'develop-3.0' of ssh://192.168.1.29/rk/kernel into develop-3.0
yxj [Sat, 19 Nov 2011 10:39:04 +0000 (18:39 +0800)]
adjust gsensor orientation in board
黄涛 [Sat, 19 Nov 2011 09:57:10 +0000 (17:57 +0800)]
Revert "调整gsensor 上报数据 for K97"
This reverts commit
a43d8fc5ff3f126ddcabd71ff0b6cb0591d3115d.
黄涛 [Sat, 19 Nov 2011 09:46:31 +0000 (17:46 +0800)]
mmc: rk29: fix NULL dereference in rk29_sdmmc_set_frq
fix this bug:
Unable to handle kernel NULL pointer dereference at virtual address
000000d0
pgd =
c0404000
[
000000d0] *pgd=
00000000
Internal error: Oops: 5 [#1] PREEMPT
CPU: 0 Not tainted (3.0.8+ #5)
PC is at rk29_sdmmc_set_frq+0x28/0x6c
LR is at rk29_sdmmc_set_frq+0x10/0x6c
pc : [<
c06c664c>] lr : [<
c06c6634>] psr:
80000093
sp :
d53c9e28 ip :
ffff8b5d fp :
c0aae32c
r10:
00000000 r9 :
d53a24d0 r8 :
ffff8b5c
r7 :
60000013 r6 :
00002041 r5 :
d53c9ed8 r4 :
d53bc280
r3 :
00000000 r2 :
00000000 r1 :
d53c9ed8 r0 :
d53bc000
[<
c06c664c>] (rk29_sdmmc_set_frq+0x28/0x6c) from [<
c06c66e8>] (rk29_sdmmc_start_command+0x58/0x120)
[<
c06c66e8>] (rk29_sdmmc_start_command+0x58/0x120) from [<
c06c6d40>] (rk29_sdmmc_request+0x590/0x704)
[<
c06c6d40>] (rk29_sdmmc_request+0x590/0x704) from [<
c06bac2c>] (mmc_wait_for_req+0x110/0x214)
[<
c06bac2c>] (mmc_wait_for_req+0x110/0x214) from [<
c06bad94>] (mmc_wait_for_cmd+0x64/0x74)
[<
c06bad94>] (mmc_wait_for_cmd+0x64/0x74) from [<
c06bd71c>] (mmc_send_op_cond+0x74/0xe0)
[<
c06bd71c>] (mmc_send_op_cond+0x74/0xe0) from [<
c06bca78>] (mmc_attach_mmc+0x40/0x1f0)
[<
c06bca78>] (mmc_attach_mmc+0x40/0x1f0) from [<
c06baa98>] (mmc_rescan+0x344/0x3c8)
[<
c06baa98>] (mmc_rescan+0x344/0x3c8) from [<
c04680c4>] (process_one_work+0x258/0x3ac)
[<
c04680c4>] (process_one_work+0x258/0x3ac) from [<
c046aa74>] (worker_thread+0x238/0x440)
[<
c046aa74>] (worker_thread+0x238/0x440) from [<
c046e4c0>] (kthread+0x80/0x88)
[<
c046e4c0>] (kthread+0x80/0x88) from [<
c04331d0>] (kernel_thread_exit+0x0/0x8)
yxj [Sat, 19 Nov 2011 09:29:43 +0000 (17:29 +0800)]
Merge branch 'develop-3.0' of ssh://192.168.1.29/rk/kernel into develop-3.0
张昊 [Sat, 19 Nov 2011 09:26:34 +0000 (17:26 +0800)]
board-rk29-phonesdk : add iomux to support new sdmmc driver
yxj [Sat, 19 Nov 2011 09:24:33 +0000 (17:24 +0800)]
fix suspend err of goodix touch screen
yxj [Sat, 19 Nov 2011 09:13:37 +0000 (17:13 +0800)]
mutitouch support for goodix touch screen
张昊 [Sat, 19 Nov 2011 08:36:29 +0000 (16:36 +0800)]
wm831x_bl : fix param error
张昊 [Sat, 19 Nov 2011 08:26:06 +0000 (16:26 +0800)]
gt818_ts driver : change regist and report func to adapt android 4.0
yxj [Sat, 19 Nov 2011 07:46:57 +0000 (15:46 +0800)]
codec rt5631 speaker ok support by ChenJQ
yxj [Sat, 19 Nov 2011 03:02:44 +0000 (11:02 +0800)]
调整gsensor 上报数据 for K97
yxj [Sat, 19 Nov 2011 03:01:44 +0000 (11:01 +0800)]
修改K97 背光控制极性
yxj [Sat, 19 Nov 2011 01:48:34 +0000 (09:48 +0800)]
support for codec rt5631 by ChenJQ
张昊 [Fri, 18 Nov 2011 11:18:58 +0000 (19:18 +0800)]
wm831x:fix wm831x init error
yxj [Fri, 18 Nov 2011 11:01:04 +0000 (19:01 +0800)]
support for goodix touch v1.0
张昊 [Fri, 18 Nov 2011 03:35:57 +0000 (11:35 +0800)]
rk29phone:fix building errors without wm8994
张昊 [Fri, 18 Nov 2011 02:44:59 +0000 (10:44 +0800)]
wm831x:fix building error
yxj [Thu, 17 Nov 2011 09:21:11 +0000 (17:21 +0800)]
add lcd support for K97
yxj [Thu, 17 Nov 2011 09:12:23 +0000 (17:12 +0800)]
add board k97
黄涛 [Wed, 16 Nov 2011 08:21:58 +0000 (16:21 +0800)]
input: eeti_egalax_i2c: properly implement the multi-touch slot protocol
黄涛 [Tue, 15 Nov 2011 13:23:21 +0000 (21:23 +0800)]
sound: rk29: fix for kernel 3.0
黄涛 [Tue, 15 Nov 2011 02:36:32 +0000 (10:36 +0800)]
apanic: do not depend on android ram console
ddl [Tue, 15 Nov 2011 11:53:59 +0000 (19:53 +0800)]
camera: ov5642 and ov5640 support auto focus in background kernel thread, qbuf and dqbuf is pause if haven't do this operation
ddl [Fri, 11 Nov 2011 06:52:17 +0000 (14:52 +0800)]
camera: add support camera, but soc_camera also have bug which queue buf is sched when auto focus ioctl
黄涛 [Wed, 9 Nov 2011 05:06:28 +0000 (13:06 +0800)]
Merge remote-tracking branch 'remotes/aosp/android-3.0' into develop-3.0
Conflicts:
drivers/mmc/card/block.c
drivers/net/usb/asix.c
drivers/net/wireless/airo.c
drivers/net/wireless/ath/ath5k/base.c
drivers/net/wireless/ath/ath9k/ar9002_calib.c
drivers/net/wireless/ath/ath9k/ar9002_hw.c
drivers/net/wireless/ath/ath9k/ar9003_2p2_initvals.h
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
drivers/net/wireless/ath/ath9k/ar9003_hw.c
drivers/net/wireless/ath/ath9k/ar9003_phy.h
drivers/net/wireless/ath/ath9k/hw.c
drivers/net/wireless/ath/ath9k/hw.h
drivers/net/wireless/ath/ath9k/init.c
drivers/net/wireless/ath/ath9k/main.c
drivers/net/wireless/ath/ath9k/pci.c
drivers/net/wireless/b43/main.c
drivers/net/wireless/hostap/hostap_main.c
drivers/net/wireless/iwlwifi/iwl-5000.c
drivers/net/wireless/iwlwifi/iwl-agn.c
drivers/net/wireless/iwlwifi/iwl-core.h
drivers/net/wireless/iwlwifi/iwl-power.c
drivers/net/wireless/iwlwifi/iwl-scan.c
drivers/net/wireless/iwlwifi/iwl-tx.c
drivers/net/wireless/rt2x00/rt2800lib.c
drivers/net/wireless/rt2x00/rt2800usb.c
drivers/net/wireless/rt2x00/rt2x00mac.c
drivers/net/wireless/rt2x00/rt2x00queue.c
drivers/net/wireless/rt2x00/rt2x00queue.h
drivers/net/wireless/rt2x00/rt2x00usb.c
drivers/usb/serial/option.c
黄涛 [Wed, 9 Nov 2011 01:44:26 +0000 (09:44 +0800)]
input: gsensor: mma8452: initialize data early
fix this bug:
Unable to handle kernel NULL pointer dereference at virtual address
00000000
PC is at __mutex_lock_slowpath+0x4c/0x154
LR is at mma8452_get_data+0x1fc/0x238
[<
c07e4f2c>] (__mutex_lock_slowpath+0x4c/0x154) from [<
c066d9c4>] (mma8452_get_data+0x1fc/0x238)
[<
c066d9c4>] (mma8452_get_data+0x1fc/0x238) from [<
c066da10>] (mma8452_delaywork_func+0x10/0x30)
[<
c066da10>] (mma8452_delaywork_func+0x10/0x30) from [<
c0466600>] (process_one_work+0x258/0x3ac)
[<
c0466600>] (process_one_work+0x258/0x3ac) from [<
c0468f60>] (worker_thread+0x238/0x440)
[<
c0468f60>] (worker_thread+0x238/0x440) from [<
c046c9ac>] (kthread+0x80/0x88)
[<
c046c9ac>] (kthread+0x80/0x88) from [<
c0433190>] (kernel_thread_exit+0x0/0x8)
黄涛 [Mon, 7 Nov 2011 11:06:20 +0000 (19:06 +0800)]
rm rk2818 dma change
黄涛 [Mon, 7 Nov 2011 10:33:22 +0000 (18:33 +0800)]
rk29: rm old vpu driver
黄涛 [Mon, 7 Nov 2011 10:29:25 +0000 (18:29 +0800)]
rk29: memory.h: use ARM_DMA_ZONE_SIZE to adjust the zone sizes
黄涛 [Mon, 7 Nov 2011 10:27:04 +0000 (18:27 +0800)]
rk29: clock: fix warning: 'actual' may be used uninitialized in this function
黄涛 [Mon, 7 Nov 2011 07:27:19 +0000 (15:27 +0800)]
regulator: rk29-pwm-regulator: fix warning: initialization from incompatible pointer type
黄涛 [Mon, 7 Nov 2011 07:06:59 +0000 (15:06 +0800)]
power: bq27510_battery: fix warning: initialization from incompatible pointer type
黄涛 [Mon, 7 Nov 2011 07:02:58 +0000 (15:02 +0800)]
net: wireless: wifi_sys: fix warning: initialization from incompatible pointer type
黄涛 [Mon, 7 Nov 2011 07:00:14 +0000 (15:00 +0800)]
rk29_modem: fix warning: initialization from incompatible pointer type
黄涛 [Mon, 7 Nov 2011 06:49:37 +0000 (14:49 +0800)]
input: gsensor: mma8452: fix warning: initialization from incompatible pointer type
黄涛 [Mon, 7 Nov 2011 06:36:09 +0000 (14:36 +0800)]
bluetooth: vflash: fix warning: initialization from incompatible pointer type
黄涛 [Mon, 7 Nov 2011 03:45:09 +0000 (11:45 +0800)]
usb: serial: option: fix warning: "CINTERION_VENDOR_ID" redefined
黄涛 [Mon, 7 Nov 2011 03:43:50 +0000 (11:43 +0800)]
input: touchscreen: eeti_egalax_i2c: fix warning: initialization from incompatible pointer type
Dmitry Shmidt [Fri, 4 Nov 2011 18:10:04 +0000 (11:10 -0700)]
net: wireless: bcm4329: Skip dhd_bus_stop() if bus is already down
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Dmitry Shmidt [Fri, 4 Nov 2011 18:08:37 +0000 (11:08 -0700)]
net: wireless: bcmdhd: Skip dhd_bus_stop() if bus is already down
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Dmitry Shmidt [Wed, 2 Nov 2011 23:51:29 +0000 (16:51 -0700)]
net: wireless: bcmdhd: Improve suspend/resume processing
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Dmitry Shmidt [Wed, 2 Nov 2011 22:06:14 +0000 (15:06 -0700)]
net: wireless: bcmdhd: Check if FW is Ok for internal FW call
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
黄涛 [Fri, 4 Nov 2011 09:51:23 +0000 (17:51 +0800)]
Revert "temp rename asix for merge 3.0"
This reverts commit
3c3de0df8bb4f8a278bd78ac6852805949dbb8e4.
黄涛 [Fri, 4 Nov 2011 09:43:18 +0000 (17:43 +0800)]
Revert "temp revert rk change"
This reverts commit
15f7fabcb88e67792e49279de0b28d70fcfca0cd.
Conflicts:
.gitignore
arch/arm/boot/compressed/head.S
arch/arm/common/gic.c
arch/arm/kernel/Makefile
arch/arm/mm/proc-v7.S
arch/arm/tools/mach-types
arch/arm/vfp/vfphw.S
drivers/Kconfig
drivers/Makefile
drivers/char/Makefile
drivers/cpufreq/cpufreq_ondemand.c
drivers/gpio/gpiolib.c
drivers/gpio/tps65910-gpio.c
drivers/input/Makefile
drivers/input/keyboard/Kconfig
drivers/input/keyboard/Makefile
drivers/input/touchscreen/Kconfig
drivers/media/video/Makefile
drivers/media/video/ov2640.c
drivers/media/video/soc_camera.c
drivers/media/video/uvc/uvc_v4l2.c
drivers/media/video/v4l2-ioctl.c
drivers/mfd/Kconfig
drivers/mfd/Makefile
drivers/mfd/wm831x-core.c
drivers/mfd/wm831x-i2c.c
drivers/mfd/wm831x-irq.c
drivers/mfd/wm831x-spi.c
drivers/mfd/wm8994-core.c
drivers/misc/Kconfig
drivers/misc/Makefile
drivers/misc/pmem.c
drivers/mmc/card/block.c
drivers/mmc/core/core.c
drivers/mmc/core/mmc.c
drivers/mmc/core/sd.c
drivers/mmc/core/sdio.c
drivers/mmc/host/Makefile
drivers/net/wireless/Kconfig
drivers/net/wireless/Makefile
drivers/net/wireless/bcm4329/bcmsdh_linux.c
drivers/net/wireless/bcm4329/dhd.h
drivers/net/wireless/bcm4329/dhd_linux.c
drivers/net/wireless/bcm4329/wl_iw.c
drivers/net/wireless/bcm4329/wl_iw.h
drivers/power/wm831x_power.c
drivers/regulator/Makefile
drivers/regulator/core.c
drivers/regulator/tps65910-regulator.c
drivers/regulator/wm831x-dcdc.c
drivers/regulator/wm831x-isink.c
drivers/regulator/wm831x-ldo.c
drivers/rtc/Kconfig
drivers/rtc/Makefile
drivers/serial/Kconfig
drivers/serial/Makefile
drivers/staging/Kconfig
drivers/staging/Makefile
drivers/usb/Makefile
drivers/usb/gadget/Kconfig
drivers/usb/gadget/android.c
drivers/usb/gadget/f_mass_storage.c
drivers/usb/serial/option.c
drivers/video/backlight/wm831x_bl.c
fs/fat/dir.c
fs/fat/fatent.c
fs/fat/inode.c
fs/yaffs2/yaffs_fs.c
fs/yaffs2/yaffs_mtdif2.c
include/linux/i2c.h
include/linux/mfd/wm831x/core.h
include/linux/mfd/wm831x/pdata.h
include/linux/mfd/wm8994/core.h
include/linux/mfd/wm8994/pdata.h
include/linux/regulator/consumer.h
include/media/v4l2-chip-ident.h
kernel/power/earlysuspend.c
kernel/power/wakelock.c
kernel/sys.c
mm/page_alloc.c
sound/soc/codecs/Kconfig
sound/soc/codecs/Makefile
sound/soc/codecs/wm8900.c
sound/soc/codecs/wm8988.c
sound/soc/codecs/wm8994.c
sound/soc/codecs/wm8994.h
sound/soc/codecs/wm_hubs.c
sound/soc/soc-cache.c
Lorenzo Colitti [Fri, 4 Nov 2011 00:05:11 +0000 (17:05 -0700)]
tcp: Don't nuke connections for the wrong protocol
Currently, calling tcp_nuke_addr to reset IPv6 connections
resets IPv4 connections as well, because all Android
framework sockets are dual-stack (i.e., IPv6) sockets, and
we don't check the source address to see if the connection
was in fact an IPv4 connection.
Fix this by checking the source address and not resetting
the connection if it's a mapped address.
Also slightly tweak the IPv4 code path, which doesn't check
for mapped addresses either. This was not causing any
problems because tcp_is_local normally always returns true
for LOOPBACK4_IPV6 (127.0.0.6), because the loopback
interface is configured as as 127.0.0.0/8. However,
checking explicitly for LOOPBACK4_IPV6 makes the code a bit
more robust.
Bug:
5535055
Change-Id: I4d6ed3497c5b8643c864783cf681f088cf6b8d2a
Signed-off-by: Lorenzo Colitti <lorenzo@google.com>
Dima Zavin [Thu, 27 Oct 2011 23:31:24 +0000 (16:31 -0700)]
ARM: common: fiq_debugger: make uart irq be no_suspend
Change-Id: I8e3d2a95c0ddc2706b021cd33534fe2fd302268e
Signed-off-by: Dima Zavin <dima@android.com>
Dmitry Shmidt [Fri, 28 Oct 2011 17:35:37 +0000 (10:35 -0700)]
net: wireless: Skip connect warning for CONFIG_CFG80211_ALLOW_RECONNECT
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
黄涛 [Fri, 28 Oct 2011 08:07:07 +0000 (16:07 +0800)]
Merge remote-tracking branch 'remotes/aosp/android-3.0' into develop-3.0
Conflicts:
drivers/net/wireless/adm8211.c
drivers/net/wireless/airo.c
drivers/net/wireless/airo_cs.c
drivers/net/wireless/at76c50x-usb.c
drivers/net/wireless/at76c50x-usb.h
drivers/net/wireless/ath/Kconfig
drivers/net/wireless/ath/Makefile
drivers/net/wireless/ath/ath.h
drivers/net/wireless/ath/ath5k/Kconfig
drivers/net/wireless/ath/ath5k/Makefile
drivers/net/wireless/ath/ath5k/ani.c
drivers/net/wireless/ath/ath5k/ani.h
drivers/net/wireless/ath/ath5k/ath5k.h
drivers/net/wireless/ath/ath5k/attach.c
drivers/net/wireless/ath/ath5k/base.c
drivers/net/wireless/ath/ath5k/base.h
drivers/net/wireless/ath/ath5k/caps.c
drivers/net/wireless/ath/ath5k/debug.c
drivers/net/wireless/ath/ath5k/debug.h
drivers/net/wireless/ath/ath5k/desc.c
drivers/net/wireless/ath/ath5k/desc.h
drivers/net/wireless/ath/ath5k/dma.c
drivers/net/wireless/ath/ath5k/eeprom.c
drivers/net/wireless/ath/ath5k/eeprom.h
drivers/net/wireless/ath/ath5k/initvals.c
drivers/net/wireless/ath/ath5k/led.c
drivers/net/wireless/ath/ath5k/pcu.c
drivers/net/wireless/ath/ath5k/phy.c
drivers/net/wireless/ath/ath5k/qcu.c
drivers/net/wireless/ath/ath5k/reg.h
drivers/net/wireless/ath/ath5k/reset.c
drivers/net/wireless/ath/ath5k/rfbuffer.h
drivers/net/wireless/ath/ath5k/sysfs.c
drivers/net/wireless/ath/ath9k/Kconfig
drivers/net/wireless/ath/ath9k/Makefile
drivers/net/wireless/ath/ath9k/ahb.c
drivers/net/wireless/ath/ath9k/ani.c
drivers/net/wireless/ath/ath9k/ani.h
drivers/net/wireless/ath/ath9k/ar5008_initvals.h
drivers/net/wireless/ath/ath9k/ar5008_phy.c
drivers/net/wireless/ath/ath9k/ar9001_initvals.h
drivers/net/wireless/ath/ath9k/ar9002_calib.c
drivers/net/wireless/ath/ath9k/ar9002_hw.c
drivers/net/wireless/ath/ath9k/ar9002_initvals.h
drivers/net/wireless/ath/ath9k/ar9002_mac.c
drivers/net/wireless/ath/ath9k/ar9002_phy.c
drivers/net/wireless/ath/ath9k/ar9002_phy.h
drivers/net/wireless/ath/ath9k/ar9003_2p2_initvals.h
drivers/net/wireless/ath/ath9k/ar9003_calib.c
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
drivers/net/wireless/ath/ath9k/ar9003_eeprom.h
drivers/net/wireless/ath/ath9k/ar9003_hw.c
drivers/net/wireless/ath/ath9k/ar9003_mac.c
drivers/net/wireless/ath/ath9k/ar9003_mac.h
drivers/net/wireless/ath/ath9k/ar9003_paprd.c
drivers/net/wireless/ath/ath9k/ar9003_phy.c
drivers/net/wireless/ath/ath9k/ar9003_phy.h
drivers/net/wireless/ath/ath9k/ath9k.h
drivers/net/wireless/ath/ath9k/beacon.c
drivers/net/wireless/ath/ath9k/btcoex.c
drivers/net/wireless/ath/ath9k/btcoex.h
drivers/net/wireless/ath/ath9k/calib.c
drivers/net/wireless/ath/ath9k/calib.h
drivers/net/wireless/ath/ath9k/common.c
drivers/net/wireless/ath/ath9k/common.h
drivers/net/wireless/ath/ath9k/debug.c
drivers/net/wireless/ath/ath9k/debug.h
drivers/net/wireless/ath/ath9k/eeprom.c
drivers/net/wireless/ath/ath9k/eeprom.h
drivers/net/wireless/ath/ath9k/eeprom_4k.c
drivers/net/wireless/ath/ath9k/eeprom_9287.c
drivers/net/wireless/ath/ath9k/eeprom_def.c
drivers/net/wireless/ath/ath9k/gpio.c
drivers/net/wireless/ath/ath9k/hif_usb.c
drivers/net/wireless/ath/ath9k/hif_usb.h
drivers/net/wireless/ath/ath9k/htc.h
drivers/net/wireless/ath/ath9k/htc_drv_beacon.c
drivers/net/wireless/ath/ath9k/htc_drv_init.c
drivers/net/wireless/ath/ath9k/htc_drv_main.c
drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
drivers/net/wireless/ath/ath9k/htc_hst.c
drivers/net/wireless/ath/ath9k/htc_hst.h
drivers/net/wireless/ath/ath9k/hw-ops.h
drivers/net/wireless/ath/ath9k/hw.c
drivers/net/wireless/ath/ath9k/hw.h
drivers/net/wireless/ath/ath9k/init.c
drivers/net/wireless/ath/ath9k/mac.c
drivers/net/wireless/ath/ath9k/mac.h
drivers/net/wireless/ath/ath9k/main.c
drivers/net/wireless/ath/ath9k/pci.c
drivers/net/wireless/ath/ath9k/phy.h
drivers/net/wireless/ath/ath9k/rc.c
drivers/net/wireless/ath/ath9k/rc.h
drivers/net/wireless/ath/ath9k/recv.c
drivers/net/wireless/ath/ath9k/reg.h
drivers/net/wireless/ath/ath9k/wmi.c
drivers/net/wireless/ath/ath9k/wmi.h
drivers/net/wireless/ath/ath9k/xmit.c
drivers/net/wireless/ath/debug.c
drivers/net/wireless/ath/hw.c
drivers/net/wireless/ath/main.c
drivers/net/wireless/ath/reg.h
drivers/net/wireless/ath/regd.c
drivers/net/wireless/ath/regd.h
drivers/net/wireless/ath/regd_common.h
drivers/net/wireless/atmel.c
drivers/net/wireless/atmel_cs.c
drivers/net/wireless/b43/Kconfig
drivers/net/wireless/b43/Makefile
drivers/net/wireless/b43/b43.h
drivers/net/wireless/b43/debugfs.c
drivers/net/wireless/b43/dma.c
drivers/net/wireless/b43/dma.h
drivers/net/wireless/b43/leds.c
drivers/net/wireless/b43/lo.c
drivers/net/wireless/b43/main.c
drivers/net/wireless/b43/main.h
drivers/net/wireless/b43/pcmcia.c
drivers/net/wireless/b43/phy_a.c
drivers/net/wireless/b43/phy_common.c
drivers/net/wireless/b43/phy_common.h
drivers/net/wireless/b43/phy_g.c
drivers/net/wireless/b43/phy_g.h
drivers/net/wireless/b43/phy_lp.c
drivers/net/wireless/b43/phy_n.c
drivers/net/wireless/b43/phy_n.h
drivers/net/wireless/b43/pio.c
drivers/net/wireless/b43/rfkill.c
drivers/net/wireless/b43/sdio.c
drivers/net/wireless/b43/sysfs.c
drivers/net/wireless/b43/tables_lpphy.c
drivers/net/wireless/b43/tables_nphy.c
drivers/net/wireless/b43/tables_nphy.h
drivers/net/wireless/b43/wa.c
drivers/net/wireless/b43/xmit.c
drivers/net/wireless/b43/xmit.h
drivers/net/wireless/b43legacy/b43legacy.h
drivers/net/wireless/b43legacy/debugfs.c
drivers/net/wireless/b43legacy/main.c
drivers/net/wireless/b43legacy/phy.c
drivers/net/wireless/b43legacy/rfkill.c
drivers/net/wireless/b43legacy/xmit.c
drivers/net/wireless/hostap/hostap_ap.c
drivers/net/wireless/hostap/hostap_ap.h
drivers/net/wireless/hostap/hostap_config.h
drivers/net/wireless/hostap/hostap_cs.c
drivers/net/wireless/hostap/hostap_hw.c
drivers/net/wireless/hostap/hostap_ioctl.c
drivers/net/wireless/hostap/hostap_main.c
drivers/net/wireless/hostap/hostap_wlan.h
drivers/net/wireless/ipw2x00/ipw2100.c
drivers/net/wireless/ipw2x00/ipw2100.h
drivers/net/wireless/ipw2x00/ipw2200.c
drivers/net/wireless/ipw2x00/ipw2200.h
drivers/net/wireless/ipw2x00/libipw_module.c
drivers/net/wireless/ipw2x00/libipw_rx.c
drivers/net/wireless/iwlwifi/Kconfig
drivers/net/wireless/iwlwifi/Makefile
drivers/net/wireless/iwlwifi/iwl-1000.c
drivers/net/wireless/iwlwifi/iwl-5000-hw.h
drivers/net/wireless/iwlwifi/iwl-5000.c
drivers/net/wireless/iwlwifi/iwl-6000-hw.h
drivers/net/wireless/iwlwifi/iwl-6000.c
drivers/net/wireless/iwlwifi/iwl-agn-calib.c
drivers/net/wireless/iwlwifi/iwl-agn-hcmd.c
drivers/net/wireless/iwlwifi/iwl-agn-hw.h
drivers/net/wireless/iwlwifi/iwl-agn-ict.c
drivers/net/wireless/iwlwifi/iwl-agn-lib.c
drivers/net/wireless/iwlwifi/iwl-agn-rs.c
drivers/net/wireless/iwlwifi/iwl-agn-rs.h
drivers/net/wireless/iwlwifi/iwl-agn-tx.c
drivers/net/wireless/iwlwifi/iwl-agn-ucode.c
drivers/net/wireless/iwlwifi/iwl-agn.c
drivers/net/wireless/iwlwifi/iwl-agn.h
drivers/net/wireless/iwlwifi/iwl-commands.h
drivers/net/wireless/iwlwifi/iwl-core.c
drivers/net/wireless/iwlwifi/iwl-core.h
drivers/net/wireless/iwlwifi/iwl-csr.h
drivers/net/wireless/iwlwifi/iwl-debug.h
drivers/net/wireless/iwlwifi/iwl-debugfs.c
drivers/net/wireless/iwlwifi/iwl-dev.h
drivers/net/wireless/iwlwifi/iwl-devtrace.c
drivers/net/wireless/iwlwifi/iwl-devtrace.h
drivers/net/wireless/iwlwifi/iwl-eeprom.c
drivers/net/wireless/iwlwifi/iwl-eeprom.h
drivers/net/wireless/iwlwifi/iwl-fh.h
drivers/net/wireless/iwlwifi/iwl-hcmd.c
drivers/net/wireless/iwlwifi/iwl-helpers.h
drivers/net/wireless/iwlwifi/iwl-io.h
drivers/net/wireless/iwlwifi/iwl-led.c
drivers/net/wireless/iwlwifi/iwl-led.h
drivers/net/wireless/iwlwifi/iwl-power.c
drivers/net/wireless/iwlwifi/iwl-power.h
drivers/net/wireless/iwlwifi/iwl-prph.h
drivers/net/wireless/iwlwifi/iwl-rx.c
drivers/net/wireless/iwlwifi/iwl-scan.c
drivers/net/wireless/iwlwifi/iwl-sta.c
drivers/net/wireless/iwlwifi/iwl-sta.h
drivers/net/wireless/iwlwifi/iwl-tx.c
drivers/net/wireless/iwmc3200wifi/cfg80211.c
drivers/net/wireless/iwmc3200wifi/commands.c
drivers/net/wireless/iwmc3200wifi/debugfs.c
drivers/net/wireless/iwmc3200wifi/hal.c
drivers/net/wireless/iwmc3200wifi/netdev.c
drivers/net/wireless/iwmc3200wifi/rx.c
drivers/net/wireless/iwmc3200wifi/sdio.c
drivers/net/wireless/iwmc3200wifi/tx.c
drivers/net/wireless/libertas/README
drivers/net/wireless/libertas/cfg.c
drivers/net/wireless/libertas/cmd.c
drivers/net/wireless/libertas/cmdresp.c
drivers/net/wireless/libertas/debugfs.c
drivers/net/wireless/libertas/decl.h
drivers/net/wireless/libertas/defs.h
drivers/net/wireless/libertas/dev.h
drivers/net/wireless/libertas/ethtool.c
drivers/net/wireless/libertas/host.h
drivers/net/wireless/libertas/if_cs.c
drivers/net/wireless/libertas/if_sdio.c
drivers/net/wireless/libertas/if_sdio.h
drivers/net/wireless/libertas/if_spi.c
drivers/net/wireless/libertas/if_spi.h
drivers/net/wireless/libertas/if_usb.c
drivers/net/wireless/libertas/if_usb.h
drivers/net/wireless/libertas/main.c
drivers/net/wireless/libertas/mesh.c
drivers/net/wireless/libertas/mesh.h
drivers/net/wireless/libertas/rx.c
drivers/net/wireless/libertas/tx.c
drivers/net/wireless/libertas/types.h
drivers/net/wireless/libertas_tf/if_usb.c
drivers/net/wireless/libertas_tf/main.c
drivers/net/wireless/mac80211_hwsim.c
drivers/net/wireless/mwl8k.c
drivers/net/wireless/orinoco/cfg.c
drivers/net/wireless/orinoco/hw.c
drivers/net/wireless/orinoco/main.c
drivers/net/wireless/orinoco/orinoco_cs.c
drivers/net/wireless/orinoco/orinoco_usb.c
drivers/net/wireless/orinoco/scan.c
drivers/net/wireless/orinoco/scan.h
drivers/net/wireless/orinoco/spectrum_cs.c
drivers/net/wireless/orinoco/wext.c
drivers/net/wireless/p54/Kconfig
drivers/net/wireless/p54/eeprom.c
drivers/net/wireless/p54/eeprom.h
drivers/net/wireless/p54/fwio.c
drivers/net/wireless/p54/lmac.h
drivers/net/wireless/p54/main.c
drivers/net/wireless/p54/p54.h
drivers/net/wireless/p54/p54pci.c
drivers/net/wireless/p54/p54spi.c
drivers/net/wireless/p54/p54spi_eeprom.h
drivers/net/wireless/p54/p54usb.c
drivers/net/wireless/p54/txrx.c
drivers/net/wireless/prism54/isl_ioctl.c
drivers/net/wireless/prism54/islpci_dev.c
drivers/net/wireless/prism54/islpci_eth.c
drivers/net/wireless/prism54/islpci_hotplug.c
drivers/net/wireless/ray_cs.c
drivers/net/wireless/ray_cs.h
drivers/net/wireless/rayctl.h
drivers/net/wireless/rndis_wlan.c
drivers/net/wireless/rt2x00/Kconfig
drivers/net/wireless/rt2x00/Makefile
drivers/net/wireless/rt2x00/rt2400pci.c
drivers/net/wireless/rt2x00/rt2400pci.h
drivers/net/wireless/rt2x00/rt2500pci.c
drivers/net/wireless/rt2x00/rt2500pci.h
drivers/net/wireless/rt2x00/rt2500usb.c
drivers/net/wireless/rt2x00/rt2800.h
drivers/net/wireless/rt2x00/rt2800lib.c
drivers/net/wireless/rt2x00/rt2800lib.h
drivers/net/wireless/rt2x00/rt2800pci.c
drivers/net/wireless/rt2x00/rt2800pci.h
drivers/net/wireless/rt2x00/rt2800usb.c
drivers/net/wireless/rt2x00/rt2800usb.h
drivers/net/wireless/rt2x00/rt2x00.h
drivers/net/wireless/rt2x00/rt2x00config.c
drivers/net/wireless/rt2x00/rt2x00crypto.c
drivers/net/wireless/rt2x00/rt2x00debug.c
drivers/net/wireless/rt2x00/rt2x00dev.c
drivers/net/wireless/rt2x00/rt2x00dump.h
drivers/net/wireless/rt2x00/rt2x00firmware.c
drivers/net/wireless/rt2x00/rt2x00lib.h
drivers/net/wireless/rt2x00/rt2x00link.c
drivers/net/wireless/rt2x00/rt2x00mac.c
drivers/net/wireless/rt2x00/rt2x00pci.c
drivers/net/wireless/rt2x00/rt2x00pci.h
drivers/net/wireless/rt2x00/rt2x00queue.c
drivers/net/wireless/rt2x00/rt2x00queue.h
drivers/net/wireless/rt2x00/rt2x00reg.h
drivers/net/wireless/rt2x00/rt2x00soc.c
drivers/net/wireless/rt2x00/rt2x00usb.c
drivers/net/wireless/rt2x00/rt2x00usb.h
drivers/net/wireless/rt2x00/rt61pci.c
drivers/net/wireless/rt2x00/rt61pci.h
drivers/net/wireless/rt2x00/rt73usb.c
drivers/net/wireless/rt2x00/rt73usb.h
drivers/net/wireless/rtl818x/Makefile
drivers/net/wireless/rtl818x/rtl8180/grf5101.h
drivers/net/wireless/rtl818x/rtl8180/max2820.h
drivers/net/wireless/rtl818x/rtl8180/rtl8180.h
drivers/net/wireless/rtl818x/rtl8180/rtl8225.h
drivers/net/wireless/rtl818x/rtl8180/sa2400.h
drivers/net/wireless/rtl818x/rtl8187/leds.h
drivers/net/wireless/rtl818x/rtl8187/rfkill.h
drivers/net/wireless/rtl818x/rtl8187/rtl8225.h
drivers/net/wireless/wl1251/io.h
drivers/net/wireless/wl12xx/Kconfig
drivers/net/wireless/wl12xx/Makefile
drivers/net/wireless/wl12xx/wl12xx_80211.h
drivers/net/wireless/wl3501_cs.c
drivers/net/wireless/zd1201.c
drivers/net/wireless/zd1211rw/Makefile
drivers/net/wireless/zd1211rw/zd_chip.c
drivers/net/wireless/zd1211rw/zd_chip.h
drivers/net/wireless/zd1211rw/zd_def.h
drivers/net/wireless/zd1211rw/zd_mac.c
drivers/net/wireless/zd1211rw/zd_mac.h
drivers/net/wireless/zd1211rw/zd_rf.h
drivers/net/wireless/zd1211rw/zd_rf_al2230.c
drivers/net/wireless/zd1211rw/zd_rf_al7230b.c
drivers/net/wireless/zd1211rw/zd_rf_rf2959.c
drivers/net/wireless/zd1211rw/zd_rf_uw2453.c
drivers/net/wireless/zd1211rw/zd_usb.c
drivers/net/wireless/zd1211rw/zd_usb.h
黄涛 [Fri, 28 Oct 2011 08:02:47 +0000 (16:02 +0800)]
revert android-tegra-2.6.36-honeycomb-mr1-
9001adc to v2.6.36
黄涛 [Fri, 28 Oct 2011 07:41:18 +0000 (15:41 +0800)]
temp revert rk change
黄涛 [Fri, 28 Oct 2011 07:02:44 +0000 (15:02 +0800)]
temp rename asix for merge 3.0
黄涛 [Fri, 28 Oct 2011 03:04:13 +0000 (11:04 +0800)]
rm some moto drivers for merge 3.0
黄涛 [Fri, 28 Oct 2011 02:38:45 +0000 (10:38 +0800)]
rm some drivers on drivers/net/wireless for merge 3.0
Colin Cross [Thu, 27 Oct 2011 22:01:19 +0000 (15:01 -0700)]
Merge commit 'v3.0.8' into android-3.0
黄涛 [Thu, 27 Oct 2011 10:40:06 +0000 (18:40 +0800)]
Merge remote-tracking branch 'kernel-2.6.32/develop' into develop-2.6.36
Conflicts:
drivers/media/video/rk29_camera_oneframe.c
drivers/mmc/core/core.c
drivers/usb/gadget/f_mass_storage.c
include/linux/mmc/host.h
Mel Gorman [Mon, 24 Oct 2011 23:33:42 +0000 (16:33 -0700)]
mm: avoid livelock on !__GFP_FS allocations
Under the following conditions, __alloc_pages_slowpath can loop
forever:
gfp_mask & __GFP_WAIT is true
gfp_mask & __GFP_FS is false
reclaim and compaction make no progress
order <= PAGE_ALLOC_COSTLY_ORDER
The gfp conditions are normally invalid, because !__GFP_FS
disables most of the reclaim methods that __GFP_WAIT would
wait for. However, these conditions happen very often during
suspend and resume, when pm_restrict_gfp_mask() effectively
converts all GFP_KERNEL allocations into __GFP_WAIT.
The oom killer is not run because gfp_mask & __GFP_FS is false,
but should_alloc_retry will always return true when order is less
than PAGE_ALLOC_COSTLY_ORDER. __alloc_pages_slowpath will
loop forever between the rebalance label and should_alloc_retry,
unless another thread happens to release enough pages to satisfy
the allocation.
Add a check to detect when PM has disabled __GFP_FS, and do not
retry if reclaim is not making any progress.
[taken from patch on lkml by Mel Gorman, commit message by ccross]
Change-Id: I864a24e9d9fd98bd0e3d6e9c1e85b6c1b766850e
Signed-off-by: Colin Cross <ccross@android.com>
Ken Sumrall [Wed, 26 Oct 2011 01:16:58 +0000 (18:16 -0700)]
mmc: block: Improve logging of handling emmc timeouts
Add some logging to make it clear just how the emmc timeout
was handled.
Change-Id: Id33fd28d8b9778dc4e85db829e2637a328eddab4
Signed-off-by: Ken Sumrall <ksumrall@android.com>
Russell King - ARM Linux [Mon, 20 Jun 2011 19:10:49 +0000 (20:10 +0100)]
mmc: block: add checking of r/w command response
Check the status bits in the r/w command response for any errors.
If error bits are set, then we won't have seen any data transferred,
so it's pointless doing any further checking.
Change-Id: If118a4bcbb0e57a7d95b5e40d662fca87fdcba7f
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Pawel Moll <pawel.moll@arm.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
Russell King - ARM Linux [Mon, 20 Jun 2011 19:10:28 +0000 (20:10 +0100)]
mmc: block: improve error recovery from command channel errors
Command channel errors fall into four classes:
1. The command was issued with the card in the wrong state
2. The command failed to be received by the card correctly
3. The cards response failed to be received by the host (CRC error)
4. The card failed to respond to the card
For (1), in theory we should know that the card is in the correct state.
However, a failed stop command (or other failure) may result in the card
remaining in a data transfer state from the previous command. If we
detect this condition, we try to recover by sending a stop command.
For the initial commands (set block count and the read/write command)
no data will have been transferred. All that we need deal with is
retrying at this point. A failed stop command can be remedied as
above.
If we are unable to recover the card (eg, the card ignores our requests
for status, or we don't recognise the error code) then we immediately
fail the request.
Change-Id: Ief109a57fd21a247381b38f1164c22f0344f0284
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Pawel Moll <pawel.moll@arm.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
Russell King - ARM Linux [Mon, 20 Jun 2011 19:10:08 +0000 (20:10 +0100)]
mmc: block: allow get_card_status() to return error status
If the MMC_SEND_STATUS command is not successful, we should not return
a zero status word, but instead allow the caller to know positively
that an error occurred.
Convert the open-coded get_card_status() to use the helper function,
and provide definitions for the card state field.
Change-Id: Icfd6258af78a89c21abac386c556153fa3fac364
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Pawel Moll <pawel.moll@arm.com>
Signed-off-by: Chris Ball <cjb@laptop.org>