Commit Graph

603626 Commits

Author SHA1 Message Date
Johan Hovold
5288f3f80c NFC: nfcmrvl: use nfc-device for firmware download
commit e5834ac229 upstream.

Use the nfc- rather than phy-device in firmware-management code that
needs a valid struct device.

This specifically fixes a NULL-pointer dereference in
nfcmrvl_fw_dnld_init() during registration when the underlying tty is
one end of a Unix98 pty.

Note that the driver still uses the phy device for any debugging, which
is fine for now.

Fixes: 3194c68701 ("NFC: nfcmrvl: add firmware download support")
Cc: Vincent Cuissard <cuissard@marvell.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:03 -07:00
Johan Hovold
6e2b65dc27 NFC: nfcmrvl: do not use device-managed resources
commit 0cbe40112f upstream.

This specifically fixes resource leaks in the registration error paths.

Device-managed resources is a bad fit for this driver as devices can be
registered from the n_nci line discipline. Firstly, a tty may not even
have a corresponding device (should it be part of a Unix98 pty)
something which would lead to a NULL-pointer dereference when
registering resources.

Secondly, if the tty has a class device, its lifetime exceeds that of
the line discipline, which means that resources would leak every time
the line discipline is closed (or if registration fails).

Currently, the devres interface was only being used to request a reset
gpio despite the fact that it was already explicitly freed in
nfcmrvl_nci_unregister_dev() (along with the private data), something
which also prevented the resource leak at close.

Note that the driver treats gpio number 0 as invalid despite it being
perfectly valid. This will be addressed in a follow-up patch.

Fixes: b2fe288eac ("NFC: nfcmrvl: free reset gpio")
Fixes: 4a2b947f56 ("NFC: nfcmrvl: add chip reset management")
Cc: Vincent Cuissard <cuissard@marvell.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:03 -07:00
Johan Hovold
4798e468b3 NFC: nfcmrvl_uart: add missing tty-device sanity check
commit 15e0c59f15 upstream.

Make sure to check the tty-device pointer before trying to access the
parent device to avoid dereferencing a NULL-pointer when the tty is one
end of a Unix98 pty.

Fixes: e097dc624f ("NFC: nfcmrvl: add UART driver")
Cc: Vincent Cuissard <cuissard@marvell.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:03 -07:00
Johan Hovold
f4d41096f4 NFC: fix broken device allocation
commit 20777bc57c upstream.

Commit 7eda8b8e96 ("NFC: Use IDR library to assing NFC devices IDs")
moved device-id allocation and struct-device initialisation from
nfc_allocate_device() to nfc_register_device().

This broke just about every nfc-device-registration error path, which
continue to call nfc_free_device() that tries to put the device
reference of the now uninitialised (but zeroed) struct device:

kobject: '(null)' (ce316420): is not initialized, yet kobject_put() is being called.

The late struct-device initialisation also meant that various work
queues whose names are derived from the nfc device name were also
misnamed:

  421 root         0 SW<  [(null)_nci_cmd_]
  422 root         0 SW<  [(null)_nci_rx_w]
  423 root         0 SW<  [(null)_nci_tx_w]

Move the id-allocation and struct-device initialisation back to
nfc_allocate_device() and fix up the single call site which did not use
nfc_free_device() in its error path.

Fixes: 7eda8b8e96 ("NFC: Use IDR library to assing NFC devices IDs")
Cc: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:03 -07:00
Miaoqing Pan
5c28288399 ath9k: fix tx99 bus error
commit bde717ab47 upstream.

The hard coded register 0x9864 and 0x9924 are invalid
for ar9300 chips.

Signed-off-by: Miaoqing Pan <miaoqing@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:02 -07:00
Miaoqing Pan
a86c42f760 ath9k: fix tx99 use after free
commit cf8ce1ea61 upstream.

One scenario that could lead to UAF is two threads writing
simultaneously to the "tx99" debug file. One of them would
set the "start" value to true and follow to ath9k_tx99_init().
Inside the function it would set the sc->tx99_state to true
after allocating sc->tx99skb. Then, the other thread would
execute write_file_tx99() and call ath9k_tx99_deinit().
sc->tx99_state would be freed. After that, the first thread
would continue inside ath9k_tx99_init() and call
r = ath9k_tx99_send(sc, sc->tx99_skb, &txctl);
that would make use of the freed sc->tx99_skb memory.

Signed-off-by: Miaoqing Pan <miaoqing@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:02 -07:00
Viresh Kumar
2c1ac3721d thermal: cpu_cooling: Avoid accessing potentially freed structures
commit 289d72afdd upstream.

After the lock is dropped, it is possible that the cpufreq_dev gets
freed before we call get_level() and that can cause kernel to crash.

Drop the lock after we are done using the structure.

Fixes: 02373d7c69 ("thermal: cpu_cooling: fix lockdep problems in cpu_cooling")
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Tested-by: Lukasz Luba <lukasz.luba@arm.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:02 -07:00
Mauro Carvalho Chehab
f440ec864f s5p-jpeg: don't return a random width/height
commit a16e37726c upstream.

Gcc 7.1 complains about:

drivers/media/platform/s5p-jpeg/jpeg-core.c: In function 's5p_jpeg_parse_hdr.isra.9':
drivers/media/platform/s5p-jpeg/jpeg-core.c:1207:12: warning: 'width' may be used uninitialized in this function [-Wmaybe-uninitialized]
  result->w = width;
  ~~~~~~~~~~^~~~~~~
drivers/media/platform/s5p-jpeg/jpeg-core.c:1208:12: warning: 'height' may be used uninitialized in this function [-Wmaybe-uninitialized]
  result->h = height;
  ~~~~~~~~~~^~~~~~~~

Indeed the code would allow it to return a random value (although
it shouldn't happen, in practice). So, explicitly set both to zero,
just in case.

Acked-by: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:02 -07:00
Arnd Bergmann
0ff1117c08 ir-core: fix gcc-7 warning on bool arithmetic
commit bd7e31bbad upstream.

gcc-7 suggests that an expression using a bitwise not and a bitmask
on a 'bool' variable is better written using boolean logic:

drivers/media/rc/imon.c: In function 'imon_incoming_scancode':
drivers/media/rc/imon.c:1725:22: error: '~' on a boolean expression [-Werror=bool-operation]
    ictx->pad_mouse = ~(ictx->pad_mouse) & 0x1;
                      ^
drivers/media/rc/imon.c:1725:22: note: did you mean to use logical not?

I agree.

Fixes: 21677cfc56 ("V4L/DVB: ir-core: add imon driver")

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:02 -07:00
Linus Torvalds
8386358980 disable new gcc-7.1.1 warnings for now
commit bd664f6b3e upstream.

I made the mistake of upgrading my desktop to the new Fedora 26 that
comes with gcc-7.1.1.

There's nothing wrong per se that I've noticed, but I now have 1500
lines of warnings, mostly from the new format-truncation warning
triggering all over the tree.

We use 'snprintf()' and friends in a lot of places, and often know that
the numbers are fairly small (ie a controller index or similar), but gcc
doesn't know that, and sees an 'int', and thinks that it could be some
huge number.  And then complains when our buffers are not able to fit
the name for the ten millionth controller.

These warnings aren't necessarily bad per se, and we probably want to
look through them subsystem by subsystem, but at least during the merge
window they just mean that I can't even see if somebody is introducing
any *real* problems when I pull.

So warnings disabled for now.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-27 15:06:02 -07:00
Mark Yao
559207f083 drm/rockchip: vop: only initial pll for enabled vop
Change-Id: I33521c7ca57869913e94522b19ff3a2a20250829
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-27 16:45:59 +08:00
Mark Yao
3fa0f9ff62 drm/rockchip: vop: move dclk pll into vop private data
each vop only need one dclk pll reference, Save dclk pll
on rockchip_crtc_state would make things complex

Change-Id: Id779f1bf54d5bfa52aed413c238781083f333782
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-27 16:45:55 +08:00
tony.xie
9c8a30957f arm64: dts: rockchip: add rktimer device node for rk3366
Select rktimer0 as broadcast timer.

Change-Id: I1f9d80d920b063135c3b220b4df995eb5fcefa44
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
2017-07-27 11:44:09 +08:00
Wenping Zhang
b34a51794b ARM: dts: rk3229-gva-sdk: update changes for new gva hardware.
1. use emmc instead of nand.
2. enable cypress cy8c4024 touchpad support.

Change-Id: Ie9e72516601f2af8caaa1325b98d1574d010a22f
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
2017-07-27 11:42:00 +08:00
Wenping Zhang
476da669d3 ARM: rockchip_defconfig: enable TOUCHSCREEN_CY8C40XX.
Change-Id: I2d21f06116f4af6a1dbcd1f0dd3444bded085487
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
2017-07-27 11:41:37 +08:00
Wenping Zhang
2a573afcd2 input: touchscreen: add cy8c40xx touchpad support.
Change-Id: I765177ee00472e19b8bc6fcbdb79db4ea914f3a9
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
2017-07-27 11:41:23 +08:00
Huang, Tao
6ee6d6d68b Merge tag 'lsk-v4.4-17.07-android' of git://git.linaro.org/kernel/linux-linaro-stable.git
LSK 17.07 v4.4-android

* tag 'lsk-v4.4-17.07-android': (402 commits)
  dt/vendor-prefixes: remove redundant vendor
  Linux 4.4.77
  saa7134: fix warm Medion 7134 EEPROM read
  x86/mm/pat: Don't report PAT on CPUs that don't support it
  ext4: check return value of kstrtoull correctly in reserved_clusters_store
  staging: comedi: fix clean-up of comedi_class in comedi_init()
  staging: vt6556: vnt_start Fix missing call to vnt_key_init_table.
  tcp: fix tcp_mark_head_lost to check skb len before fragmenting
  md: fix super_offset endianness in super_1_rdev_size_change
  md: fix incorrect use of lexx_to_cpu in does_sb_need_changing
  perf tools: Use readdir() instead of deprecated readdir_r() again
  perf tests: Remove wrong semicolon in while loop in CQM test
  perf trace: Do not process PERF_RECORD_LOST twice
  perf dwarf: Guard !x86_64 definitions under #ifdef else clause
  perf pmu: Fix misleadingly indented assignment (whitespace)
  perf annotate browser: Fix behaviour of Shift-Tab with nothing focussed
  perf tools: Remove duplicate const qualifier
  perf script: Use readdir() instead of deprecated readdir_r()
  perf thread_map: Use readdir() instead of deprecated readdir_r()
  perf tools: Use readdir() instead of deprecated readdir_r()
  ...

Conflicts:
	Makefile
	drivers/Kconfig
	drivers/Makefile
	drivers/usb/dwc3/gadget.c

Change-Id: Ib4aae2e34ebbf0d7953c748a33f673acb3e744fc
2017-07-26 19:32:04 +08:00
Mark Yao
8ccefa5de2 arm64: dts: rockchip: rk3399: add cabc lut register
Change-Id: Ia4b47301b58141b24e75e35544beb903325e0a19
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-26 19:11:03 +08:00
Tomasz Figa
5fd5d0d25b UPSTREAM: drm/rockchip: Always signal event in next vblank after cfg_done
This patch makes the driver send the pending vblank event in next vblank
following the commit, relying on vblank signalling improvements done in
previous patches. This gives us vblank events that always represent the
real moment of changes hitting on the screen (which was the case only
for complete FB changes before) and lets us remove the manual window
update check.

Signed-off-by: Tomasz Figa <tfiga@chromium.org>
(cherry picked from commit 41ee436700)

Change-Id: Icb1d14cb8af942e39407cc6205a58b9c5e31122b
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-26 19:09:45 +08:00
Mark Yao
3e8b3fb984 drm/rockchip: fix mm_dump NULL pointer crash
drm mm is not initial on non-iommu context.

Fix crash:
[   11.635376] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[   11.636148] pgd = ffffffc0de19d000
[   11.636474] [00000000] *pgd=0000000000000000, *pud=0000000000000000
[   11.637088] Internal error: Oops: 96000045 [#1] PREEMPT SMP
[   11.637594] Modules linked in:
[   11.637902] CPU: 4 PID: 424 Comm: sh Not tainted 4.4.71 #146
[   11.638406] Hardware name: Rockchip RK3399 Evaluation Board v3 (Android) (DT)
[   11.639050] task: ffffffc0de796800 ti: ffffffc0de260000 task.ti: ffffffc0de260000
[   11.639736] PC is at __mutex_lock_slowpath+0xa8/0x178
[   11.640198] LR is at __mutex_lock_slowpath+0x7c/0x178
[   11.788003] [<ffffff8008b85b5c>] __mutex_lock_slowpath+0xa8/0x178
[   11.788560] [<ffffff8008b85c58>] mutex_lock+0x2c/0x44
[   11.789024] [<ffffff800849e8d8>] rockchip_drm_mm_dump+0x30/0x5c
[   11.789560] [<ffffff80081d612c>] seq_read+0x1a8/0x3f8
[   11.790017] [<ffffff80081b4208>] __vfs_read+0x38/0xf4
[   11.790472] [<ffffff80081b4adc>] vfs_read+0x84/0x128
[   11.790927] [<ffffff80081b552c>] SyS_read+0x54/0xa4
[   11.791372] [<ffffff80080828b0>] el0_svc_naked+0x24/0x28

Change-Id: I342311da43d50b743257b81425dfc6a327306803
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-26 19:09:09 +08:00
Mark Yao
411afb7acf arm64: dts: rockchip: rk3366-android: enable vop lite
Change-Id: Ia10a57b86343048e038cb40a4e96de850cc707bc
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-26 16:04:38 +08:00
Mark Yao
1121ce783b arm64: dts: rockchip: rk3366: add vop lite support
Change-Id: I0e8afc5e7bc6b8e4f37b7d34e9126e931df68347
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-26 16:04:21 +08:00
Mark Yao
c2e4d4e9ca drm/rockchip: vop: add rk3366 vop lit support
Change-Id: Iaf869f0fbf7b703dff3c38e9df4b8570d9260bd4
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-26 16:04:06 +08:00
Mark Yao
b2d8717bea drm/rockchip: vop: split dclk_pol from pin_pol
Some vop have a difference pin_pol layout

Change-Id: I96c4dc9fbc00470828748a926d6248c5a5772c82
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-26 16:03:55 +08:00
Finley Xiao
b5e982a2e6 PM / OPP: add a summary tree in debugfs
On rk3399-evb-rev3 the opp_summary would for example look something like:
 device                rate(Hz)    target(uV)    min(uV)    max(uV)
-------------------------------------------------------------------
 platform-dmc
                      200000000       825000      825000      825000
                      300000000       850000      850000      850000
                      400000000       850000      850000      850000
                      528000000       900000      900000      900000
                      600000000       900000      900000      900000
                      800000000       900000      900000      900000
 platform-ff9a0000.gpu
                      200000000       800000      800000      800000
                      297000000       800000      800000      800000
                      400000000       825000      825000      825000
                      500000000       875000      875000      875000
                      600000000       925000      925000      925000
                      800000000      1100000     1100000     1100000
 cpu4
                      408000000       800000      800000      800000
                      600000000       800000      800000      800000
                      816000000       800000      800000      800000
                     1008000000       850000      850000      850000
                     1200000000       875000      875000      875000
                     1416000000       975000      975000      975000
                     1608000000      1025000     1025000     1025000
                     1800000000      1125000     1125000     1125000
 cpu0
                      408000000       800000      800000      800000
                      600000000       800000      800000      800000
                      816000000       800000      800000      800000
                     1008000000       850000      850000      850000
                     1200000000       925000      925000      925000
                     1416000000      1050000     1050000     1050000

Change-Id: I0d33bb84fd36d79df3c1630d98c84f1f6bc42728
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2017-07-26 15:07:39 +08:00
Omar Sandoval
f31b9c8fe7 UPSTREAM: debugfs: add debugfs_lookup()
We don't always have easy access to the dentry of a file or directory we
created in debugfs. Add a helper which allows us to get a dentry we
previously created.

The motivation for this change is a problem with blktrace and the blk-mq
debugfs entries introduced in 07e4fead45 ("blk-mq: create debugfs
directory tree"). Namely, in some cases, the directory that blktrace
needs to create may already exist, but in other cases, it may not. We
_could_ rely on a bunch of implied knowledge to decide whether to create
the directory or not, but it's much cleaner on our end to just look it
up.

Signed-off-by: Omar Sandoval <osandov@fb.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Jens Axboe <axboe@fb.com>
(cherry picked from commit a7c5437b0b)

Change-Id: I77b6f2c7df32f904099d23771a53065315cfdc12
2017-07-26 15:07:32 +08:00
Mark Yao
0a3e4581f0 drm/rockchip: vop: fix background color
Change-Id: Idbd43b4456df80e2243ce09c3bc69d8be6e0af6a
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-26 14:14:37 +08:00
Xubilv
f2e37c082f drm/rockchip: dw-mipi-dsi: configure grf register for 3399
Change-Id: I6ad75b05a02b15fc8744f5f25fc996cd0d4bc2fb
Fixes: 39d1c0c4a3 ("drm/rockchip: dw-mipi-dsi: organize dw_mipi_dsi_encoder_enable function")
Signed-off-by: Xubilv <xbl@rock-chips.com>
2017-07-26 14:13:52 +08:00
Zheng Yang
23e1058a94 drm/edid: improve cea_db_offsets compatibility
The cea[2] is equal to the real value minus one in some sink edid,
found on a Konka LCD TV. the last data block offset plus the payload
length is equal to cea[2]. The end value need to plus one under this
scene.

Change-Id: I41b477559023ccd1cc4a5450dd9d35bed095f147
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2017-07-24 16:50:01 +08:00
Finley Xiao
ebeeafee0d arm64: dts: rockchip: rk3399-evb: enable dmc and dfi
Change-Id: If372c3b73ce419c3ea31143e7318529f2e9c9e56
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2017-07-24 16:28:29 +08:00
xubilv
b7b1475e49 ARM: dts: rk3288-android: edp connect to vopb by default
Change-Id: Id392ba8052eb67c544f3528c9b89a5f444fa4c36
Signed-off-by: xubilv <xbl@rock-chips.com>
2017-07-24 14:13:31 +08:00
Mark Yao
d26cbbbdb0 drm/rockchip: backlight: fix null pointer error
drm backlight maybe not enabled, the private->backlight
can be null pointer.

[    1.842225] PC is at rockchip_drm_backlight_update+0x14/0xd0
[    1.842733] LR is at rockchip_atomic_commit_complete+0x34/0x70
[    2.012457] [<ffffff800849cb70>] rockchip_drm_backlight_update+0x14/0xd0
[    2.013057] [<ffffff800849f5c8>] rockchip_atomic_commit_complete+0x34/0x70
[    2.013666] [<ffffff800849f680>] rockchip_drm_atomic_commit+0x7c/0x9c
[    2.014244] [<ffffff800848c510>] drm_atomic_commit+0x64/0x70
[    2.014747] [<ffffff800849ed64>] show_loader_logo+0x83c/0x944
[    2.015260] [<ffffff800849f1f4>] rockchip_drm_bind+0x388/0x418
[    2.015783] [<ffffff800850dbf4>] try_to_bring_up_master.part.3+0xac/0x114
[    2.016390] [<ffffff800850dd24>] component_master_add_with_match+0xc8/0x124
[    2.017010] [<ffffff800849e008>] rockchip_drm_platform_probe+0x208/0x238
[    2.017609] [<ffffff8008514898>] platform_drv_probe+0x58/0xa4
[    2.018123] [<ffffff8008512b38>] driver_probe_device+0x118/0x2ac
[    2.018656] [<ffffff8008512e18>] __device_attach_driver+0x88/0x98
[    2.019200] [<ffffff8008510f40>] bus_for_each_drv+0x7c/0xac
[    2.019702] [<ffffff800851296c>] __device_attach+0xa4/0x124
[    2.020204] [<ffffff8008512f84>] device_initial_probe+0x10/0x18
[    2.020737] [<ffffff8008511fc4>] bus_probe_device+0x2c/0x8c
[    2.021238] [<ffffff8008512440>] deferred_probe_work_func+0x74/0xa0
[    2.021795] [<ffffff80080b715c>] process_one_work+0x218/0x3e0
[    2.022307] [<ffffff80080b7b5c>] worker_thread+0x2e8/0x404
[    2.022797] [<ffffff80080bc4a0>] kthread+0xf8/0x100
[    2.023235] [<ffffff8008082840>] ret_from_fork+0x10/0x50

Change-Id: Ib77e871402dfcb1276befa274fc3cf43b017d879
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-24 11:59:51 +08:00
David Wu
874cecd9af pinctrl: rockchip: Add rk3128 pinctrl support
There are 3 IP blocks pin routes need to be switched, that are
emmc-cmd, spi, i2s. And there are some pins need to be recalced,
which are gpio2c4~gpio2c7 and gpio2d0.

Change-Id: I1152a2ac4e179ed839d02a3f18ccef5ded849312
Signed-off-by: David Wu <david.wu@rock-chips.com>
2017-07-24 11:49:50 +08:00
David Wu
bf6599f3b1 pinctrl: rockchip: Use common interface for recalced iomux
The other Socs also need the feature of recalced iomux, so
make it as a common interface like iomux route feature.

Change-Id: I8a58ae0af5edd497a545d3734d99c22bed177a43
Signed-off-by: David Wu <david.wu@rock-chips.com>
2017-07-24 11:49:37 +08:00
Finley Xiao
3f98f1b6e5 arm64: dts: rockchip: rk3366: enable power domain
Change-Id: I5c4e48f29fd9aaab72e74c0de3aa840f9990b8e2
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2017-07-24 09:39:09 +08:00
Finley Xiao
db501ad8fa soc: rockchip: power-domain: vpu and rkvdec ignore idle request for rk3366
As vpu and rkvdec use the common idle request, if vpu enable idle request
and rkvdec is working, the rkvdec will be crash, so let them both don't
do idle request.

Change-Id: I1fe2bc99c81d3b2018e86896548514e5e8093a4a
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2017-07-24 09:38:10 +08:00
Elaine Zhang
a8c5cb8a04 iommu/rockchip: Fix runtime status unsupported
Change-Id: Ief14da568aa641470a3a22d011739f474b9ed1ad
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2017-07-24 09:02:46 +08:00
Alex Shi
1aaeb498dc Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android 2017-07-22 12:02:06 +08:00
Alex Shi
b017a97fcc Merge tag 'v4.4.78' into linux-linaro-lsk-v4.4
This is the 4.4.78 stable release
2017-07-22 12:02:03 +08:00
Binyuan Lan
438fc222c2 arm64: rockchip_linux_defconfig: add chinese display support
Change-Id: I31002a63a38fa46fb0f170222b0ddceeaf27427c
Signed-off-by: Binyuan Lan <lby@rock-chips.com>
2017-07-21 17:44:02 +08:00
WeiYong Bi
e42c6403c8 arm64: dts: rockchip: rk3366: Add hdmi node
Change-Id: I99b95a9fd3e70c70b6066729dd4213f8beb33e19
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
2017-07-21 17:04:24 +08:00
zhoupeng
2a3c9f8fb2 arm64: dts: rk3399-sapphire-excavator-linux: add camera node
dts: support tc358749xbg for HDMI IN

Change-Id: I5a5874d08ea13c27cac7b3507a46bb1f2288e3f4
Signed-off-by: zhoupeng <benjo.zhou@rock-chips.com>
2017-07-21 17:02:15 +08:00
zhoupeng
5e8201e371 media: soc_camera: add tc358749xgb sensor driver
Change-Id: I66ccb856cb2689bf26a8a12069b29c7ec6dae6f0
Signed-off-by: zhoupeng <benjo.zhou@rock-chips.com>
2017-07-21 16:22:06 +08:00
chenzhen
56659dcda3 MALI: utgard: fix the too small "max_job_runtime" in platform information
The original setting of "max_job_runtime" is too small
that jobs are too easy to timeout and be killed.

Change-Id: I5316c2b594d94dd0b844ef9a297baa7b226c4665
Signed-off-by: chenzhen <chenzhen@rock-chips.com>
2017-07-21 16:18:16 +08:00
Jianqun Xu
5d8b659ad0 ARM: dts: rockchip: rk3368-sheep add vsel gpio for syr827
Add vsel gpio for syr827, which is PMIC_SLEEP in hardware pcb.

The driver will parse the gpio and use it to indicate the chip
work status, as the following codes:

static int fan53555_is_enabled ()
	if defined vsel_gpio
		gpiod_get_raw_value
	else
		regmap_read

Before the patch, the log shows:
	CPU4: update cpu_capacity 1024
	CPU4: Booted secondary processor [410fd033]
	  cache: parent cpu4 should not be sleeping
	rk3x-i2c ff650000.i2c: timeout, ipd: 0x10, state: 1

Since cpu4 is the base core for cluster1, which need to initialize
cpufreq during boot up, finally call fan53555_is_enabled. But the
i2c is suspended at that time, can't get interrupt until timeout.

Change-Id: I301e95be3b60d2faa456759d88c06cf64c2019ca
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2017-07-21 16:18:15 +08:00
Jianqun Xu
b9b75d8083 ARM: dts: rockchip: rk3368-p9: add vsel gpio for syr827
Change-Id: I847334e0588659e5950b01a4e40bf0a24f5646bf
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2017-07-21 16:18:15 +08:00
Mark Yao
7f1f1ef3ba drm/rockchip: vop: don't force enable post scale
Vop would always report post buf empty error if enable
post scale config with non-scale factor

Change-Id: Ibc3f27c674195e6467471069488f14471927f709
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-21 16:18:00 +08:00
Mark Yao
1dc3517d2f drm/rockchip: vop: add error irq handle
Change-Id: I84a3bc5c9798bbd4e0b11bc499f4df5ca1907cb7
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-07-21 14:16:31 +08:00
Greg Kroah-Hartman
ece78cd779 Linux 4.4.78 2017-07-21 07:45:10 +02:00
Haozhong Zhang
3ed43caedf kvm: vmx: allow host to access guest MSR_IA32_BNDCFGS
commit 691bd4340b upstream.

It's easier for host applications, such as QEMU, if they can always
access guest MSR_IA32_BNDCFGS in VMCS, even though MPX is disabled in
guest cpuid.

Signed-off-by: Haozhong Zhang <haozhong.zhang@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-21 07:45:00 +02:00