Commit Graph

605558 Commits

Author SHA1 Message Date
Finley Xiao
a993bfaf1a arm64: dts: rk3328: Add rkvdec_opp_table
Change-Id: I096e337f1c62f7ed18e760ea2ea93860199bfbc6
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2017-12-26 19:10:49 +08:00
Jung Zhao
6ab0a1be93 arm64: dts: rockchip: rk3328: modify rkvdec compatible
Change-Id: Icdaeb0d05e546c34e43a000aaa8a51f5e2e6a9fe
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
2017-12-26 18:32:26 +08:00
Xinhuang Li
0ca3fd7dab ASoC: codecs: rk3328: add capture support
Change-Id: I275c50d9ba1faf15d8276c0415ac7a7aaff98b92
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
2017-12-26 18:25:58 +08:00
ayaka
e475de8d63 arm64: dts: rockchip: add rk3328-rock64 support
We enable the Wired Ethernet, analog audio output, HDMI
output, USB ports, SDMMC and video devices.

Change-Id: I184ebc8bd8f2317b1e435939e18bdc014ea487a9
Signed-off-by: Hans Yang <yhx@rock-chips.com>
Signed-off-by: ayaka <ayaka@soulik.info>
2017-12-26 16:02:47 +08:00
xuhuicong
4f379e1892 drm/rockchip: inno_hdmi: add rk3128 hdmi support
Change-Id: I929880020f4a72e61d21b7af4d73a98da337b10b
Signed-off-by: Huicong Xu <xhc@rock-chips.com>
2017-12-26 15:37:38 +08:00
Thomas Meyer
9064923799 UPSTREAM: drm/rockchip: Cocci spatch "vma_pages"
Use vma_pages function on vma object instead of explicit computation.
Found by coccinelle spatch "api/vma_pages.cocci"

Change-Id: Ib6158ac90566f57a23127283d9462306817599b8
Signed-off-by: Thomas Meyer <thomas@m3y3r.de>
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Link: https://patchwork.freedesktop.org/patch/msgid/1505946334393-988165015-7-diffsplit-thomas@m3y3r.de
(cherry picked from commit f2a44dd023)
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2017-12-26 14:59:05 +08:00
Juergen Gross
e41d630c8c UPSTREAM: genirq/PM: Properly pretend disabled state when force resuming interrupts
Interrupts with the IRQF_FORCE_RESUME flag set have also the
IRQF_NO_SUSPEND flag set. They are not disabled in the suspend path, but
must be forcefully resumed. That's used by XEN to keep IPIs enabled beyond
the suspension of device irqs. Force resume works by pretending that the
interrupt was disabled and then calling __irq_enable().

Incrementing the disabled depth counter was enough to do that, but with the
recent changes which use state flags to avoid unnecessary hardware access,
this is not longer sufficient. If the state flags are not set, then the
hardware callbacks are not invoked and the interrupt line stays disabled in
"hardware".

Set the disabled and masked state when pretending that an interrupt got
disabled by suspend.

Fixes: bf22ff45be ("genirq: Avoid unnecessary low level irq function calls")
Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: xen-devel@lists.xenproject.org
Cc: boris.ostrovsky@oracle.com
Link: http://lkml.kernel.org/r/20170717174703.4603-2-jgross@suse.com
(cherry picked from commit a696712c3d)

Conflicts:
	kernel/irq/internals.h
	[due to missing upstream patch: b354286eff irq: Privatize irq_common_data::state_use_accessors]

Change-Id: I94d230ff1a7ccac1234432384685b5ef9d116b0a
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
2017-12-26 11:12:46 +08:00
Jeffy Chen
ff9c8bc3f8 UPSTREAM: genirq: Avoid unnecessary low level irq function calls
Check irq state in enable/disable/unmask/mask_irq to avoid unnecessary
low level irq function calls.

This has two advantages:
    - Conditionals are faster than hardware access

    - Solves issues with the underlying refcounting of the pinctrl
      infrastructure

Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: tfiga@chromium.org
Cc: briannorris@chromium.org
Cc: dianders@chromium.org
Link: http://lkml.kernel.org/r/1498476814-12563-2-git-send-email-jeffy.chen@rock-chips.com
(cherry picked from commit bf22ff45be)

Change-Id: Ie70a49de0b177e48b44e725432ff7199d40adf47
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
2017-12-26 11:12:46 +08:00
Jeffy Chen
52e28f129e UPSTREAM: genirq: Set irq masked state when initializing irq_desc
The irq default state is set to disabled when allocating irq desc, but the
masked state flag is not set. This is inconsistent vs. the state tracking
logic which is used to prevent unnecessary calls to hardware level irq chip
functions.

Set the masked state flag as well.

Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: tfiga@chromium.org
Cc: briannorris@chromium.org
Cc: dianders@chromium.org
Link: http://lkml.kernel.org/r/1498476814-12563-1-git-send-email-jeffy.chen@rock-chips.com

(cherry picked from commit d829b8fb24)

Change-Id: I3db59a2afcb00a50019d14a29ff60f62644f96ec
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
2017-12-26 11:12:46 +08:00
Thomas Gleixner
409596462a UPSTREAM: genirq: Warn when IRQ_NOAUTOEN is used with shared interrupts
Shared interrupts do not go well with disabling auto enable:

1) The sharing interrupt might request it while it's still disabled and
   then wait for interrupts forever.

2) The interrupt might have been requested by the driver sharing the line
   before IRQ_NOAUTOEN has been set. So the driver which expects that
   disabled state after calling request_irq() will not get what it wants.
   Even worse, when it calls enable_irq() later, it will trigger the
   unbalanced enable_irq() warning.

Reported-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: dianders@chromium.org
Cc: jeffy <jeffy.chen@rock-chips.com>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: tfiga@chromium.org
Link: http://lkml.kernel.org/r/20170531100212.210682135@linutronix.de
(cherry picked from commit 04c848d398)

Change-Id: I89711656f22e15697c76a4dcb9c60c8b0c8052d2
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
2017-12-26 11:12:46 +08:00
Thomas Gleixner
255ba9587f UPSTREAM: genirq: Handle NOAUTOEN interrupt setup proper
If an interrupt is marked NOAUTOEN then request_irq() installs the action,
but does not enable the interrupt via startup_irq().  The interrupt is
enabled via enable_irq() later from the driver. enable_irq() calls
irq_enable().

That means that for interrupts which have a irq_startup() callback this
callback is never invoked. Neither is irq_domain_activate_irq() invoked for
such interrupts.

If an interrupt depends on irq_startup() or irq_domain_activate_irq() then
the enable via irq_enable() is not enough.

Add a status flag IRQD_IRQ_STARTED_UP and use this to select the proper
mechanism in enable_irq(). Use the flag also to avoid pointless calls into
the low level functions.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: dianders@chromium.org
Cc: jeffy <jeffy.chen@rock-chips.com>
Cc: Brian Norris <briannorris@chromium.org>
Cc: tfiga@chromium.org
Link: http://lkml.kernel.org/r/20170531100212.130986205@linutronix.de

(cherry picked from commit 201d7f47f3)

Conflicts:
	include/linux/irq.h
	[due to missing upstream patches:
	  08d85f3 irqdomain: Avoid activating interrupts more than once
	  1a3d28a UPSTREAM: genirq: Introduce IRQD_AFFINITY_MANAGED flag
	  6297714 UPSTREAM: irq: Privatize irq_common_data::state_use_accessors]

Change-Id: Ie8d492c694171fa81e3df61e8561bec160ad37bb
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
2017-12-26 11:12:46 +08:00
Rimon Xu
abb8938259 arm64: dts: rockchip: modify secure memory address for rk3399-android
Change-Id: Id0d7bf64748ccd104d36c3c2f7045e57d54d8ffd
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com>
2017-12-22 17:46:02 +08:00
Rimon Xu
e938aa387f arm64: rockchip_defconfig: select mpp device and service
enable CONFIG_ROCKCHIP_MPP_SERVICE and CONFIG_ROCKCHIP_MPP_DEVICE
of rockchip_defconfig for encoder.

Change-Id: I30069af7af82f6731f322c4b93e3a7c6009e8434
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com>
2017-12-22 17:35:45 +08:00
Xinhuang Li
8486a3deec driver: video: rockchip: fix the memory leak of the encoder
1.when release buffer should call vpu_iommu_clear function.
2.before call vpu_iommu_clear that we should call
vpu_drm_unmap_iommu&vpu_drm_free if there is through
vpu_drm_alloc to allocate buffer.

Change-Id: I01e7fac88c6da40e8cb4ee2199dd38283323783b
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
2017-12-22 17:33:36 +08:00
Xinhuang Li
aefc44dabb arm64: dts: rk3328-evb-android: enable iep and iep_mmu
Change-Id: Icf8b743d8b9f2b8d0a78c65e768b51e292ca69c3
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
2017-12-22 17:32:30 +08:00
Xinhuang Li
c3b1417ef4 arm64: dts: rockchip: rk3328: add iep and iep_mmu node
Change-Id: I503c8e1e24240b20bc47a3e14591a27a756b950e
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
2017-12-22 17:32:30 +08:00
William Wu
8bc55ddcea ANDROID: usb: gadget: f_mtp: increase default Tx/Rx buf size to 64K
The test results indicate that larger transfers improve
mtp read/write speeds. The Tx/Rx request transfer length
is now 16K bytes. Increase the Tx/Rx transfer length from
16K to 64K to get good throughputs.

For USB DWC3 controller, you can try to increase the
Tx/Rx transfer length from 16K to 1MB to get better
throughputs.

Change-Id: If5ac41685acdc9b9d2db7f7f79e183e3dff7b558
Signed-off-by: William Wu <william.wu@rock-chips.com>
2017-12-22 17:27:40 +08:00
William Wu
3957ac7db1 ANDROID: usb: gadget: f_mtp: capture time taken with vfs_write/read
This patch backport from https://android.googlesource.com/kernel/msm
android-msm-wahoo-4.4-oreo-mr1
commit 79dc83a8cb933b8f0d746169961347a54c530ef1

This change captures time taken by each vfs_read() and vfs_write() call
made from USB MTP gadget driver where data size is equal to USB request
buffer size. It provides debugfs entry to get this information for 100
such call and resetting the same.

How-To use:
To get stats:
cat /sys/kernel/debug/usb_mtp/status

To reset stats:
echo 0 > /sys/kernel/debug/usb_mtp/status

Change-Id: Iade04950d1dce936fc1f88387da5e4fa74cd30df
Signed-off-by: William Wu <william.wu@rock-chips.com>
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2017-12-22 17:25:43 +08:00
William Wu
c69da395b4 ANDROID: usb: gadget: f_mtp: add module parameters for Tx transfer length
This patch backport from https://android.googlesource.com/kernel/msm
android-msm-wahoo-4.4-oreo-mr1
commit 1f6b38f5293cfd619adcfac152e6d32ba6b40023

The Tx request transfer length is 16K bytes by default. The test
results indicate that larger transfers improve read speeds. Add
provision for specifying Tx transfer length at runtime.

echo 1048576 > /sys/module/usb_f_mtp/parameters/mtp_tx_req_len

The above command can be used to set Tx transfer length to 1MB. If
the memory allocation is failed, fallback to the default length.

Also add provision for specifying no. of Tx requests at runtime.

echo 8 > /sys/module/usb_f_mtp/parameters/mtp_tx_reqs

Change-Id: I9aa2210e145310ba79e79d353688a46c877ecb6b
Signed-off-by: William Wu <william.wu@rock-chips.com>
2017-12-22 17:21:42 +08:00
William Wu
8f30a31be3 ANDROID: usb: gadget: f_mtp: add module parameter for Rx transfer length
This patch backport from https://android.googlesource.com/kernel/msm
android-msm-wahoo-4.4-oreo-mr1
commit 1bb8887af8b525e68d9c9e7c828836a3d17ab0b3

The Rx request transfer length is 16K bytes by default. The test
results indicate that larger transfers improve write speeds. Add
provision for specifying Rx transfer length at runtime.

echo 1048576 > /sys/module/usb_f_mtp/parameters/mtp_rx_req_len

The above command can be used to set Rx transfer length to 1MB.  If
the memory allocation is failed, fallback to the default length.

Change-Id: If5a7d4a167ec4a9e080fcd10caa95884d765a3b6
Signed-off-by: William Wu <william.wu@rock-chips.com>
2017-12-22 17:20:55 +08:00
XiaoDong Huang
e9fbb2f883 firmware: rockchip_sip: add sip_smc_vpu_reset
Change-Id: Ib3e1a8b957bc164b8c4cca821d8ea89ee2e1ac9d
Signed-off-by: XiaoDong Huang <derrick.huang@rock-chips.com>
2017-12-22 16:58:14 +08:00
David Wu
545abf2ec4 gpio: rockchip: Make the gpio base added at gpiolib
It looks like should add gpio base in the gpiolib instead of
each gpio or pinctrl driver, and base defined in the gpio.h.

If the definition of base is 0, then it is the same as the
original, now the definition of base is 1000.

The dynamic assignment of a range of valid GPIOs should be
also from the defined base.

Change-Id: I636bc71a5ba078fd5e1bc9a476cdcf942aa8010a
Signed-off-by: David Wu <david.wu@rock-chips.com>
2017-12-22 16:08:01 +08:00
Zhang Yunlong
18cb8e2d64 camera: rockchip: cif: modify sensor register setting
1.mirror gc2145.
2.fix gc2145&gc0329 frame rates.

Change-Id: If4b0c8f11f30a3ae82bb530df7a5964a612542f5
Signed-off-by: Zhang Yunlong <dalon.zhang@rock-chips.com>
2017-12-22 12:09:43 +08:00
Wyon Bi
7563c28f83 arm64: dts: rockchip: rk3366: Add rockchip,grf property to mipi-dphy node
Change-Id: If986025b4e097d2d79a136cabe2ff62dd51ad39f
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-22 09:36:03 +08:00
Wyon Bi
33b6b46c7e ARM: dts: rockchip: rk312x: Add rockchip,grf property to mipi-dphy node
Change-Id: Ia1c5ca2cbd38735b3ade3522b3d10ee49bf7d3ee
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-22 09:35:53 +08:00
Zhang Yunlong
9d9ed22a0c arm: dts: rockchip: rk3126-m708-cif-sensor: change gc2145 orientation
Change-Id: If31ece66cfc0c1d6bb49bd9f28ca46bf390b8375
Signed-off-by: Zhang Yunlong <dalon.zhang@rock-chips.com>
2017-12-22 09:35:01 +08:00
Shunqing Chen
d285744e02 arm64: dts: rockchip: rk3368-p9: add HDMI_SWITCH regulator
if not add HDMI_SWITCH node, h_5V will be disabled when resume

Change-Id: I06349a4e1f8c6caabaaa93f95db92ae514957d48
Signed-off-by: Shunqing Chen <csq@rock-chips.com>
2017-12-21 11:26:12 +08:00
Liang Chen
98e61fb89c arm64: dts: rockchip: rk3328-evb-android: move some common nodes to dtsi
Some nodes are always used for android, so we move them to android.dtsi.

Change-Id: Ifc5ef68dd00f14a0faec4a24998feef6dc592d5e
Signed-off-by: Liang Chen <cl@rock-chips.com>
2017-12-21 11:02:15 +08:00
Eric Dumazet
702d673e9e BACKPORT: tcp/dccp: drop SYN packets if accept queue is full
Per listen(fd, backlog) rules, there is really no point accepting a SYN,
sending a SYNACK, and dropping the following ACK packet if accept queue
is full, because application is not draining accept queue fast enough.

This behavior is fooling TCP clients that believe they established a
flow, while there is nothing at server side. They might then send about
10 MSS (if using IW10) that will be dropped anyway while server is under
stress.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Acked-by: Neal Cardwell <ncardwell@google.com>
Acked-by: Yuchung Cheng <ycheng@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 5ea8ea2cb7)

Backport for pass Android CTS CtsLibcoreTestCases:
libcore.javax.net.ServerSocketFactoryTest#testCreateServerSocketWithPortNoBacklog

Refer the comments on libcore/luni/src/test/java/libcore/javax/net/ServerSocketFactoryTest.java
// This test may fail on kernel versions between 4.4 and 4.9, due to a kernel implementation
// detail change. Backporting the following kernel change will fix the behavior.
// http://b/31960002
// https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=5ea8ea2cb7f1d0db15762c9b0bb9e7330425a071
public void testCreateServerSocketWithPortNoBacklog() throws IOException {
    ServerSocket serverSocket = ServerSocketFactory.getDefault().createServerSocket(0, 1);
    testSocket(serverSocket, 1);
}

Change-Id: I9bb3531480f4942447d8d4eded110aa31bc7c031
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2017-12-21 10:42:52 +08:00
Wyon Bi
5eb7acedd4 arm64: dts: rockchip: Add rk3368 Sziauto board support
Change-Id: I1d4188dcb268d25d445c8369a44813eeceaace2f
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-21 10:33:24 +08:00
Wyon Bi
3f39dbd253 arm64: rockchip_defconfig: enable CONFIG_DRM_ROCKCHIP_RK618
Change-Id: Ib1840a6eb5521a29b7de7d84814b49b75d29d362
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-21 10:32:27 +08:00
Wyon Bi
6d51582d57 drm/rockchip: add support for rk618
RK618 provides a complete set of display interface to support
very flexible applications as follows:
- 2 RGB display input interface with double data rate
- 1 LVDS display output interface with double channels
- 1 MIPI display output interface with 4 data lanes
- 1 HDMI display output interface
- 1 RGB display output interface shared with LVDS
- 1 RGB display output interface shared with RGB display input interface

VIF is used to LCDC SDR/DDR timing reconstruction.

SCALER is a synchronous parallel RGB frame converter for different
resolution. It is used to realize dual display function from
one display source. It can be used like VIF for LCDC SDR timing
reconstruction only.

DITHER is used for converting 24bit RGB888 to 18bit RGB666 with FRC
dither down.

Change-Id: I5b25e64c283bd84f85d7d7686bee6d940df44910
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-21 10:32:02 +08:00
Wyon Bi
2566bc4f35 arm64: rockchip_defconfig: enable CONFIG_MFD_RK618
Change-Id: I1cca183f53e93b984fb729c53382ea108b3b5a6f
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-21 10:30:52 +08:00
Wyon Bi
d04dec1a54 clk/rockchip: add cru support for rk618
Change-Id: I223c85194f62fec2c22c2a013466b767a1128f9c
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-21 10:30:28 +08:00
Wyon Bi
2ef4ee93f4 mfd: Add support for rk618
RK618 is a partner chip for Rockchip mobile application processor.

RK618 includes two RGB display input interface with double data rate.
With the internal MUX function, it can output 1080P HDMI signal to
TV and output RGB/LVDS/MIPI signal to TFT panel. In this case, RK618
can support dual panel (TV and TFT) display.

RK618 includes a audio codec, which with two I2S/PCM interface, two
differential microphone input and audio processing function.

Change-Id: Id18c251cbe1613de98e84c2b022826f85b3dd82b
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-21 10:29:40 +08:00
Wyon Bi
46cf38cc9d arm64: dts: rockchip: Add pinmux for mipi dphy on rk3368
Change-Id: I4ab2ab92bfa5e084dd846ca1b5186fcc20097ed6
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-21 10:29:10 +08:00
Wyon Bi
3811ad8de8 phy/rockchip: mipi-dphy: support pinmux
Change-Id: I3eb8a9fcc3196d8c190e5dca7b4ab71e7529265b
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2017-12-21 10:28:37 +08:00
xxh
21ff1d170f net: wireless: rockchip_wlan: fix bcmdhd driver spin lock issue
stack backtrace:
[   95.323698] BUG: scheduling while atomic: dhd_dpc/307/0xfffffe00
[   95.323739] Modules linked in: bcmdhd
[   95.323775] CPU: 3 PID: 307 Comm: dhd_dpc Tainted: G        W       4.4.103 #13
[   95.323792] Hardware name: Rockchip RK3328 EVB (DT)
[   95.323807] Call trace:
[   95.323838] [<ffffff80080896ac>] dump_backtrace+0x0/0x1cc
[   95.323863] [<ffffff800808988c>] show_stack+0x14/0x1c
[   95.323889] [<ffffff80083830b8>] dump_stack+0x94/0xb4
[   95.323915] [<ffffff80080c58c0>] __schedule_bug+0x40/0x54
[   95.323941] [<ffffff8008b0c250>] __schedule+0x8c/0x6f0
[   95.323964] [<ffffff8008b0c934>] schedule+0x80/0xa0
[   95.323991] [<ffffff8008b0f258>] schedule_timeout+0x3c/0x260
[   95.324015] [<ffffff8008b0d48c>] wait_for_common+0x130/0x168
[   95.324040] [<ffffff8008b0d4d8>] wait_for_completion+0x14/0x1c
[   95.324066] [<ffffff800876947c>] mmc_wait_for_req+0x84/0x160
[   95.324091] [<ffffff8008774518>] mmc_io_rw_extended+0x26c/0x2ec
[   95.324117] [<ffffff8008775958>] sdio_io_rw_ext_helper+0x14c/0x1a0
[   95.324141] [<ffffff8008775b50>] sdio_readsb+0x1c/0x24
[   95.325601] [<ffffff8000b5d480>] sdioh_buffer_tofrom_bus+0xc0/0x238 [bcmdhd]
[   95.327078] [<ffffff8000b5e910>] sdioh_request_buffer+0x1c0/0x360 [bcmdhd]
[   95.328529] [<ffffff8000b5c1c8>] bcmsdh_recv_buf+0x88/0xc0 [bcmdhd]
[   95.329991] [<ffffff8000b6412c>] dhd_bcmsdh_recv_buf.constprop.25+0x64/0x98 [bcmdhd]
[   95.331444] [<ffffff8000b66fb8>] dhdsdio_readframes+0x908/0x14e0 [bcmdhd]
[   95.332916] [<ffffff8000b6bc20>] dhd_bus_dpc+0x6c0/0xb80 [bcmdhd]
[   95.334004] [<ffffff8000b35cd8>] dhd_dpc_thread+0x128/0x1a0 [bcmdhd]
[   95.334023] [<ffffff80080bc6e4>] kthread+0xe8/0xf0
[   95.334035] [<ffffff80080828d0>] ret_from_fork+0x10/0x40

Change-Id: I56c837ca08e946970b873e72cc87150592d5eaad
Signed-off-by: Xu Xuehui <xxh@rock-chips.com>
2017-12-21 09:18:41 +08:00
Zheng Yang
1a01eb5d1f drm/rockchip: vop: fix dsp_stx and dsp_sty of plane
The dsp_stx and dsp_sty of plane should use crtc_ variables
in adjusted_mode, which is the actual mode we give to hw.

Change-Id: I83199c80604e076f0b91559bff18e1da3783523f
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2017-12-20 17:08:15 +08:00
Rocky Hao
eee2b6bc90 thermal: rk_virtual_thermal: fix memleak issue for rk3126
Change-Id: Icb5a3c8e52b26f968e10e33a40a40a47da82134d
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
2017-12-20 17:06:12 +08:00
Finley Xiao
e8a0df4762 drm/rockchip: Avoid multiple definition
Change-Id: I091eb45fd4ccc30e648d4b743e1f541a8718cc9d
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2017-12-20 14:51:39 +08:00
Zhangbin Tong
98e3aceb3a arm64: rockchip_defconfig: enable CONFIG_GPIO_RK8XX
Change-Id: I484ff31adb057791bacea8b395d672161b9c2ef3
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2017-12-20 14:46:03 +08:00
Zhangbin Tong
72bce93750 arm64: dts: rockchip: rk3328-evb: set rk805 ldo3 to 1.1v
Change-Id: I677331baecf15c7ac836218819564a79ef198bfd
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2017-12-20 14:45:35 +08:00
Zhangbin Tong
22fda7a545 arm64: rockchip_defconfig: enable CONFIG_SDCARD_FS
Change-Id: I4ed24c6107032a9cb447f54154335eaf84fd7e3c
Signed-off-by: Zhangbin Tong <zebulun.tong@rock-chips.com>
2017-12-20 14:45:25 +08:00
Wenping Zhang
195d8bc5df ARM: configs: rockchip_linux: add configs for echo board.
enable CX20810, ROTARY_ENCODER and led configs for echo.

Change-Id: Ie12a2a45bcfd21c8d65e8603d9b7163f0b56067b
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
2017-12-20 14:44:20 +08:00
Wenping Zhang
71598ceb82 ARM: dts: rk3036-echo: add rk3036 echo board file.
Change-Id: Ic3b920fa36de72cae7ddaa6537de323b367593e4
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
2017-12-20 14:40:15 +08:00
Wenping Zhang
c634371a6c ASoC: Add support for cx20810 codec
Change-Id: I659ab6c426304ca1ebb1b0469984d821c9fa276d
Signed-off-by: Wenping Zhang <wenping.zhang@rock-chips.com>
2017-12-20 14:40:01 +08:00
Rocky Hao
b46a22d426 thermal: rk_virtual_thermal: optimize code and fix memleak bug for rk3126
Change-Id: I17b8c673f65863320c65a96830e6583db6eb13f0
Fixes: 6568142f01ac ("thermal: rockchip: add virtual tsadc support for rk3126")
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
2017-12-20 14:22:05 +08:00
Mayank Rana
63d50ca93e USB: f_fs: Use HS and SS descriptors without checking gadget speed
User space function driver could always provide descriptors for all
speeds irrespective of USB speed supported with USB gadget. If USB
gadget is not high/super speed capable, f_fs driver doesn't parse
HS or SS descriptors which results into OS descriptors processing
fail due to checking against wrong offset within received descriptor
buffer. Fix this issue by always processing HS and SS descriptors
without checking USB gadget speed.

Change-Id: I3b2ad8a4447c06a4302f0ef2c6759cb3f0c09cbd
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(am from https://android.googlesource.com/kernel/msm android-msm-wahoo-4.4-oreo-dr1
 commit 362a9cd1380e16a963c20d453ae14ee3611f3f21)
2017-12-20 14:16:01 +08:00
Jim Lin
ff61ac65de UPSTREAM: usb: gadget: f_fs: Fix kernel panic if use_os_string not set
If c->cdev->use_os_string flag is not set,
don't need to invoke ffs_do_os_descs() in _ffs_func_bind.
So uninitialized ext_compat_id pointer won't be accessed by
__ffs_func_bind_do_os_desc to cause kernel panic.

Change-Id: I7b04774e7bc69ce77e4cffc463d6335bb4bd64e8
Signed-off-by: Jim Lin <jilin@nvidia.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit c6010c8b4d)
2017-12-20 14:11:19 +08:00