Commit Graph

1872 Commits

Author SHA1 Message Date
黄涛
79082d3c51 misc: SRAM: Add option to map SRAM as cacheable 2014-08-25 18:23:05 +08:00
黄涛
fcef60e36f Merge tag 'lsk-v3.10-android-14.07' into develop-3.10
LSK v3.10 Android 14.07 release

Conflicts:
	drivers/clocksource/arm_arch_timer.c
	lib/Makefile
2014-08-06 15:34:14 +08:00
郭毅
671282cef0 inv_mpu: only setup timer once. 2014-08-04 09:06:22 +08:00
郭毅
77040e121b tb_8846 : default support mpu6050 for sdk_v2.0 2014-07-10 10:47:51 +08:00
Alex Shi
c30d344580 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-07-07 10:48:56 +08:00
Tomas Winkler
d285df86a1 mei: me: fix hw ready reset flow
commit b04ada92ff upstream.

We cleared H_RST for H_CSR on spurious interrupt generated when ME_RDY
while cleared and not while  ME_RDY is set. The spurious interrupt
is not delivered on all platforms in this case the
driver may fail to initialize.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-07-06 18:54:15 -07:00
Tomas Winkler
83a03fda3d mei: me: read H_CSR after asserting reset
commit c40765d919 upstream.

According the spec the host should read H_CSR again
after asserting reset H_RST to ensure that reset was
read by the firmware

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-07-06 18:54:15 -07:00
ywj
39e5cf1b68 fix some warning for mpu6050 2014-06-26 11:00:30 +08:00
Alex Shi
df16045bd4 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-06-17 15:52:27 +08:00
Tomas Winkler
310c6221b9 mei: me: drop harmful wait optimization
commit 07cd7be3d9 upstream.

It my take time till ME_RDY will be cleared after the reset,
so we cannot check the bit before we got the interrupt

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-06-16 13:42:54 -07:00
黄涛
ee25a425b9 Merge tag 'lsk-android-14.05' into develop-3.10
lsk 14.05 android release

Conflicts:
	arch/arm/common/Kconfig
	arch/arm64/include/asm/arch_timer.h
	drivers/staging/android/fiq_debugger/fiq_debugger.c
	drivers/usb/Kconfig
2014-06-12 21:04:26 +08:00
Mark Brown
6ba9615888 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-05-07 09:50:19 +01:00
Tomas Winkler
8343a52ace mei: me: do not load the driver if the FW doesn't support MEI interface
commit 5e6533a6f5 upstream.

NM and SPS  FW types that may run on ME device on server platforms
do not have valid MEI/HECI interface and driver should not
be bound to it as this might lead to system hung.
In practice not all BIOSes effectively hide such devices from the
OS and in some cases it is not possible.

We determine FW type by examining Host FW status registers in order to
unbind the driver.
In this patch we are adding check for ME on Cougar Point, Lynx Point
Devices

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Tested-by: Nikola Ciprich <nikola.ciprich@linuxbox.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-05-06 07:55:27 -07:00
郭毅
af7298a247 p977: 1.tp: set int ct363_first_init_flag to static int.
2. 5v_en: move unnecessary log
2014-04-21 14:17:29 +08:00
郭毅
a143dc52d8 p977 : add 5v_en driver 2014-04-21 09:49:06 +08:00
郭毅
3b4a05a0c1 p977: support 5v en power control for otg and hdmi 2014-04-21 09:40:41 +08:00
黄涛
0ffd56dafe Merge tag 'lsk-android-14.03' into develop-3.10
lsk 14.03 Android release
2014-04-15 12:51:10 +08:00
ywj
68b6dfca6b on 977 add mpu config and update mpu code 2014-04-04 10:52:48 +08:00
Mark Brown
37763c8d1e Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-03-09 07:33:42 +00:00
Chao Bi
2bc744aa8b mei: set client's read_cb to NULL when flow control fails
commit accb884b32 upstream.

In mei_cl_read_start(), if it fails to send flow control request, it
will release "cl->read_cb" but forget to set pointer to NULL, leaving
"cl->read_cb" still pointing to random memory, next time this client is
operated like mei_release(), it has chance to refer to this wrong pointer.

Fixes:  PANIC at kfree in mei_release()

[228781.826904] Call Trace:
[228781.829737]  [<c16249b8>] ? mei_cl_unlink+0x48/0xa0
[228781.835283]  [<c1624487>] mei_io_cb_free+0x17/0x30
[228781.840733]  [<c16265d8>] mei_release+0xa8/0x180
[228781.845989]  [<c135c610>] ? __fsnotify_parent+0xa0/0xf0
[228781.851925]  [<c1325a69>] __fput+0xd9/0x200
[228781.856696]  [<c1325b9d>] ____fput+0xd/0x10
[228781.861467]  [<c125cae1>] task_work_run+0x81/0xb0
[228781.866821]  [<c1242e53>] do_exit+0x283/0xa00
[228781.871786]  [<c1a82b36>] ? kprobe_flush_task+0x66/0xc0
[228781.877722]  [<c124eeb8>] ? __dequeue_signal+0x18/0x1a0
[228781.883657]  [<c124f072>] ? dequeue_signal+0x32/0x190
[228781.889397]  [<c1243744>] do_group_exit+0x34/0xa0
[228781.894750]  [<c12517b6>] get_signal_to_deliver+0x206/0x610
[228781.901075]  [<c12018d8>] do_signal+0x38/0x100
[228781.906136]  [<c1626d1c>] ? mei_read+0x42c/0x4e0
[228781.911393]  [<c12600a0>] ? wake_up_bit+0x30/0x30
[228781.916745]  [<c16268f0>] ? mei_poll+0x120/0x120
[228781.922001]  [<c1324be9>] ? vfs_read+0x89/0x160
[228781.927158]  [<c16268f0>] ? mei_poll+0x120/0x120
[228781.932414]  [<c133ca34>] ? fget_light+0x44/0xe0
[228781.937670]  [<c1324e58>] ? SyS_read+0x68/0x80
[228781.942730]  [<c12019f5>] do_notify_resume+0x55/0x70
[228781.948376]  [<c1a7de5d>] work_notifysig+0x29/0x30
[228781.953827]  [<c1a70000>] ? bad_area+0x5/0x3e

Signed-off-by: Chao Bi <chao.bi@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-03-06 21:30:10 -08:00
Alex Shi
a0692dda2a Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-02-27 09:39:31 +08:00
Alexander Usyskin
24a5091004 mei: don't unset read cb ptr on reset
commit 5cb906c703 upstream.

Don't set read callback to NULL during reset as
this leads to memory leak of both cb and its buffer.
The memory is correctly freed during mei_release.

The memory leak is detectable by kmemleak if
application has open read call while system is going through
suspend/resume.

unreferenced object 0xecead780 (size 64):
  comm "AsyncTask #1", pid 1018, jiffies 4294949621 (age 152.440s)
  hex dump (first 32 bytes):
    00 01 10 00 00 02 20 00 00 bf 30 f1 00 00 00 00  ...... ...0.....
    00 00 00 00 00 00 00 00 36 01 00 00 00 70 da e2  ........6....p..
  backtrace:
    [<c1a60aec>] kmemleak_alloc+0x3c/0xa0
    [<c131ed56>] kmem_cache_alloc_trace+0xc6/0x190
    [<c16243c9>] mei_io_cb_init+0x29/0x50
    [<c1625722>] mei_cl_read_start+0x102/0x360
    [<c16268f3>] mei_read+0x103/0x4e0
    [<c1324b09>] vfs_read+0x89/0x160
    [<c1324d5f>] SyS_read+0x4f/0x80
    [<c1a7b318>] syscall_call+0x7/0xb
    [<ffffffff>] 0xffffffff
unreferenced object 0xe2da7000 (size 512):
  comm "AsyncTask #1", pid 1018, jiffies 4294949621 (age 152.440s)
  hex dump (first 32 bytes):
    00 6c da e2 7c 00 00 00 00 00 00 00 c0 eb 0c 59  .l..|..........Y
    1b 00 00 00 01 00 00 00 02 10 00 00 01 00 00 00  ................
  backtrace:
    [<c1a60aec>] kmemleak_alloc+0x3c/0xa0
    [<c131f127>] __kmalloc+0xe7/0x1d0
    [<c162447e>] mei_io_cb_alloc_resp_buf+0x2e/0x60
    [<c162574c>] mei_cl_read_start+0x12c/0x360
    [<c16268f3>] mei_read+0x103/0x4e0
    [<c1324b09>] vfs_read+0x89/0x160
    [<c1324d5f>] SyS_read+0x4f/0x80
    [<c1a7b318>] syscall_call+0x7/0xb
    [<ffffffff>] 0xffffffff

Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-02-22 12:41:28 -08:00
Alexander Usyskin
85153361d8 mei: clear write cb from waiting list on reset
commit 30c54df7cb upstream.

Clear write callbacks sitting in write_waiting list on reset.
Otherwise these callbacks are left dangling and cause memory leak.

Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-02-22 12:41:28 -08:00
黄涛
48a48cd79b Merge remote-tracking branch 'origin/upstream/linux-linaro-lsk-v3.10-android' into develop-3.10 2013-12-16 14:23:41 +08:00
Mark Brown
78157f5f8c Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2013-12-12 10:22:32 +00:00
Tomas Winkler
8532c80b3e mei: add 9 series PCH mei device ids
commit 76a9635979 upstream.

And Lynx Point H Refresh and Wildcat Point LP
device ids.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-12-11 22:36:28 -08:00
Tomas Winkler
e35ea1b11c mei: me: add Lynx Point Wellsburg work station device id
commit 838b3a6d62 upstream.

add missing device id for LPT based work station

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-12-11 22:36:28 -08:00
James Bottomley
e891b8e307 SCSI: enclosure: fix WARN_ON in dual path device removing
commit a1470c7bf3 upstream.

Bug report from: wenxiong@linux.vnet.ibm.com

The issue is happened in dual controller configuration. We got the
sysfs warnings when rmmod the ipr module.

enclosure_unregister() in drivers/msic/enclosure.c, call device_unregister()
for each componment deivce, device_unregister() ->device_del()->kobject_del()
->sysfs_remove_dir(). In sysfs_remove_dir(), set kobj->sd = NULL.

For each componment device,
enclosure_component_release()->enclosure_remove_links()->sysfs_remove_link()
in which checking kobj->sd again, it has been set as NULL when doing
device_unregister. So we saw all these sysfs WARNING.

Tested-by: wenxiong@linux.vnet.ibm.com
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-12-11 22:36:27 -08:00
黄涛
7362dbfb8c Merge remote-tracking branch 'origin/upstream/linux-linaro-lsk-v3.10-android+android-common-3.10' into develop-3.10 2013-12-10 12:14:30 +08:00
Mark Brown
cc1aba6316 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2013-12-02 11:07:39 +00:00
Tomas Winkler
bd7e08189e mei: nfc: fix memory leak in error path
commit 4bff7208f3 upstream.

The flow may reach the err label without freeing cl and cl_info

cl and cl_info weren't assigned to ndev->cl and cl_info
so they weren't freed in mei_nfc_free called on error path

Cc: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-11-29 11:11:52 -08:00
Mark Brown
c46f0e86d7 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2013-11-21 10:16:35 +00:00
Russ Dill
6e701bfc17 misc: SRAM: Add option to map SRAM to allow code execution
This is necessary for platforms that use SRAM to execute suspend/resume stubs.

Signed-off-by: Russ Dill <Russ.Dill@ti.com>
2013-11-21 13:39:20 +08:00
Alexander Shiyan
426cd3dea9 Misc: sram: Remove unneeded check
Patch removes unneeded check for resource since
devm_ioremap_resource do all for us.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-11-21 13:39:20 +08:00
Laurent Navet
e22253a9ee drivers: misc: use devm_ioremap_resource()
Replace a call to deprecated devm_request_and_ioremap by devm_ioremap_resource.

Found with coccicheck and this semantic patch:
 scripts/coccinelle/api/devm_request_and_ioremap.cocci.

Signed-off-by: Laurent Navet <laurent.navet@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-11-21 13:39:19 +08:00
Johan Hovold
ccd24ec4c9 misc: atmel_pwm: add deferred-probing support
commit 5c6d6fd156 upstream.

Two drivers (atmel-pwm-bl and leds-atmel-pwm) currently depend on the
atmel_pwm driver to have bound to any pwm-device before their devices
are probed.

Support deferred probing of such devices by making sure to return
-EPROBE_DEFER from pwm_channel_alloc when no pwm-device has yet been
bound.

Signed-off-by: Johan Hovold <jhovold@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-11-20 12:27:47 -08:00
黄涛
107d3e5358 Merge remote-tracking branch 'origin/upstream/linux-linaro-lsk-v3.10-android+android-common-3.10' into develop-3.10 2013-11-11 14:38:40 +08:00
黄涛
ef88c53f60 rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
黄涛
8216724bd9 rk: temp revert rk change 2013-11-08 21:33:42 +08:00
黄涛
23694c3621 rk: reset drivers/net/wireless drivers/video/display/display-sysfs.c sound/soc/codecs/spdif_transciever.c drivers/net/usb/asix.c and some file mode 2013-11-08 20:45:48 +08:00
linjh
4af759ef57 androidcomputer: update dispaly scaler and commit tv5735 code 2013-10-29 16:07:43 +08:00
linjh
7cc20c8709 androidcomputer: adjust vga display ouput
[modify files]
   arch/arm/configs/rk3188_ac_defconfig
   arch/arm/mach-rk3188/board-rk3188-ac.c
   drivers/misc/scaler/scaler-sysfs.c
   drivers/misc/scaler/scaler-vga.c
2013-10-16 11:58:50 +08:00
wlq
2c66275b80 androidComputer: changed for display
[modified file]
		arch/arm/mach-rk3188/board-rk3188-ac.c
      		drivers/misc/ac_usb_switch.c
	       	drivers/video/rockchip/screen/Kconfig
       		drivers/video/rockchip/screen/Makefile
       		include/linux/input.h
       		include/linux/scaler-core.h
2013-10-12 16:21:45 +08:00
wlq
06028a94a9 ac: add for display key control 2013-10-11 20:32:40 +08:00
linjh
985bb0a74d androidcomputer: commit scaler code
[reference files]
[modify files]
   arch/arm/configs/rk3188_ac_defconfig
   arch/arm/mach-rk3188/board-rk3188-ac.c
   drivers/misc/Kconfig
   drivers/misc/Makefile
[new files]
   drivers/misc/scaler/Kconfig
   drivers/misc/scaler/Makefile
   drivers/misc/scaler/chips/Kconfig
   drivers/misc/scaler/chips/Makefile
   drivers/misc/scaler/chips/test.c
   drivers/misc/scaler/scaler-core.c
   drivers/misc/scaler/scaler-sysfs.c
   drivers/misc/scaler/scaler-vga.c
   include/linux/scaler-core.h
2013-10-11 14:15:57 +08:00
Mark Brown
626c75a015 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2013-10-06 14:31:06 +01:00
Alexander Usyskin
51d4e0771c mei: cancel stall timers in mei_reset
commit 4a704575cc upstream.

Unset init_clients_timer and amthif_stall_timers
in mei_reset in order to cancel timer ticking and hence
avoid recursive reset calls.

Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-10-05 07:13:10 -07:00
Tomas Winkler
18f48d9e78 mei: bus: stop wait for read during cl state transition
commit e2b31644e9 upstream.

Bus layer omitted check for client state transition while waiting
for read completion
The client state transition may occur for example as result
of firmware initiated reset

Add mei_cl_is_transitioning wrapper to reduce the code
repetition.:

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-10-05 07:13:10 -07:00
Tomas Winkler
cb4af713f9 mei: make me client counters less error prone
commit 1aee351a73 upstream.

1. u8 counters are prone to hard to detect overflow:
 make them unsigned long to match bit_ functions argument type

2. don't check me_clients_num for negativity, it is unsigned.

3. init all the me client counters from one place

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-10-05 07:13:10 -07:00
linjh
390250eb65 Revert "init scaler core"
This reverts commit 7f27ae3765.
2013-09-30 15:00:27 +08:00