Commit Graph

619479 Commits

Author SHA1 Message Date
Tao Huang
f4cd5c18fe video/rockchip: rga2: coding style rm ^M
Change-Id: I6e571211f8fee9f66c3b97b620f13606fc3604ac
Signed-off-by: Shixiang Zheng <shixiang.zheng@rock-chips.com>
2019-06-18 15:20:55 +08:00
José Roberto de Souza
3e12c17be4 UPSTREAM: drm: Do not call drm_dp_cec_set_edid() while registering DP connectors
drm_dp_cec_register_connector() is called when registering each DP
connector in DRM, while sounds a good idea register CEC adapters as
earlier as possible, it causes some driver initialization delay
trying to do DPCD transactions in disconnected connectors.

This change will cause no regressions as drm_dp_cec_set_edid() will
still be called in further detection of connected connectors with a
valid edid parameter.

This change reduced the module load of i915 by average 0.5sec in a
machine with just one DP port disconnected while reducing more than
3sec in a machine with 4 DP ports disconnected.

Cc: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20181011004439.4482-1-jose.souza@intel.com
(cherry picked from commit 7323001549)

Change-Id: I815948f733719705bbc576fc1ca723fb5a59fe6b
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Hans Verkuil
349e07ffdf UPSTREAM: drm_dp_cec: add note about good MegaChips 2900 CEC support
A big problem with DP CEC-Tunneling-over-AUX is that it is tricky
to find adapters with a chipset that supports this AND where the
manufacturer actually connected the HDMI CEC line to the chipset.

Add a mention of the MegaChips 2900 chipset which seems to support
this feature well.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180827075820.41109-3-hverkuil@xs4all.nl
(cherry picked from commit 9bcf6d9868)

Change-Id: Idd9a225357a5b3bbb14287cc1f5b13630d0bd449
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Hans Verkuil
51b3852a7f UPSTREAM: drm_dp_cec: check that aux has a transfer function
If aux->transfer == NULL, then just return without doing
anything. In that case the function is likely called for
a non-(e)DP connector.

This never happened for the i915 driver, but the nouveau and amdgpu
drivers need this check.

The alternative would be to add this check in those drivers before
every drm_dp_cec call, but it makes sense to check it in the
drm_dp_cec functions to prevent a kernel oops.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180827075820.41109-2-hverkuil@xs4all.nl
(cherry picked from commit 5ce70c799a)

Change-Id: I8a56122cc777e17c2b303120372f7087a94c5083
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Hans Verkuil
d18dae4b02 UPSTREAM: drm_dp_cec.c: fix formatting typo: %pdH -> %phD
This caused a kernel oops since %pdH interpreted the pointer
as a struct file.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.com>
Link: https://patchwork.freedesktop.org/patch/msgid/f3720ddf-ec0f-cd22-46b6-720a5e2098f2@xs4all.nl
(cherry picked from commit ea5569ecd6)

Change-Id: I9780212b39185e8b87b74d0216538378f16baf58
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Hans Verkuil
883524f8fb UPSTREAM: drm: add support for DisplayPort CEC-Tunneling-over-AUX
This adds support for the DisplayPort CEC-Tunneling-over-AUX
feature that is part of the DisplayPort 1.3 standard.

Unfortunately, not all DisplayPort/USB-C to HDMI adapters with a
chip that has this capability actually hook up the CEC pin, so
even though a CEC device is created, it may not actually work.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180711132909.25409-2-hverkuil@xs4all.nl
(cherry picked from commit 2c6d1fffa1)

Conflicts:
	drivers/gpu/drm/Makefile
	drivers/gpu/drm/drm_dp_helper.c
	include/drm/drm_dp_helper.h

Change-Id: I63df93f87cc521c148b6a999de9459577680a4f6
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Jani Nikula
4b24894a73 UPSTREAM: drm/dp: start a DPCD based DP sink/branch device quirk database
Face the fact, there are Display Port sink and branch devices out there
in the wild that don't follow the Display Port specifications, or they
have bugs, or just otherwise require special treatment. Start a common
quirk database the drivers can query based on the DP device
identification. At least for now, we leave the workarounds for the
drivers to implement as they see fit.

For starters, add a branch device that can't handle full 24-bit main
link Mdiv and Ndiv main link attributes properly. Naturally, the
workaround of reducing main link attributes for all devices ended up in
regressions for other devices. So here we are.

v2: Rebase on DRM DP desc read helpers

v3: Fix the OUI memcmp blunder (Clint)

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Cc: Clint Taylor <clinton.a.taylor@intel.com>
Cc: Adam Jackson <ajax@redhat.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Tested-by: Clinton Taylor <clinton.a.taylor@intel.com>
Reviewed-by: Clinton Taylor <clinton.a.taylor@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> # v2
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/91ec198dd95258dbf3bee2f6be739e0da73b4fdd.1495105635.git.jani.nikula@intel.com
(cherry picked from commit 76fa998acd)

Conflicts:
	drivers/gpu/drm/drm_dp_helper.c

Change-Id: Ic51b5355c7bd1a8d81689755ebd8d14f74bb67ce
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Jani Nikula
dd630b568a UPSTREAM: drm/dp: add helper for reading DP sink/branch device desc from DPCD
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/acba54da7d80eafea9e59a893e27e3c31028c0ba.1495105635.git.jani.nikula@intel.com
(cherry picked from commit 118b90f3f1)

Conflicts:
	drivers/gpu/drm/drm_dp_helper.c
	include/drm/drm_dp_helper.h

Change-Id: I963d96c824c086035cdbdd6ffc0f2ca4d64967e1
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Hans Verkuil
224c96067d UPSTREAM: media: media/cec.h: add CEC_CAP_DEFAULTS
The CEC_CAP_LOG_ADDRS, CEC_CAP_TRANSMIT, CEC_CAP_PASSTHROUGH and
CEC_CAP_RC capabilities are normally always present.

Add a CEC_CAP_DEFAULTS define that ORs these four caps to simplify
drivers.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
(cherry picked from commit ee0c503eac)

Change-Id: Ic3221f5c676f2159dbe65115e38dfae5a8b6712e
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Hans Verkuil
a392ef306f UPSTREAM: [media] cec: add cec_phys_addr_invalidate() helper function
Simplifies setting the physical address to CEC_PHYS_ADDR_INVALID.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Hans Verkuil <hansverk@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
(cherry picked from commit 135327899d)

Change-Id: I707856bd288cfc43c5f8f32e109586a7e790ba1c
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Clint Taylor
bf98f0d72c UPSTREAM: drm/cec: Add CEC over Aux register definitions
Adding DPCD register definitions from the DP 1.3 specification for CEC
over AUX support.

V2: Add DP_ prefix to all defines.
V3: missed prefixes from the ESI1 defines

Cc: Jani Nikula <jani.nikula@linux.intel.com>

Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Clint Taylor <clinton.a.taylor@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1492703263-11494-1-git-send-email-clinton.a.taylor@intel.com
(cherry picked from commit d753e41d47)

Change-Id: I74173aeeda01c561cbb64834aaa0573289497ac8
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Tomeu Vizoso
ff2d12fa32 UPSTREAM: drm/dp: add crtc backpointer to drm_dp_aux
This backpointer allows DP helpers to access the crtc it's currently
being used for.

v6: Have the backpointer be to drm_crtc (Sean Paul)

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/20170303133936.14964-2-tomeu.vizoso@collabora.com
(cherry picked from commit 4bb310fd9e)

Change-Id: I61ac0aca125b5f5eea5f1c9471d63f7f94e86039
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2019-06-17 18:45:03 +08:00
Cai YiWei
4b00ec7c60 media: rockchip: isp1: fix isp iommu work after suspend
Change-Id: Ie89ec58c6f99a751bc1fdf681a85a6595716c649
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2019-06-17 18:34:44 +08:00
Terin Stock
8fe3b38102 UPSTREAM: usb: dwc2: host: use hrtimer for NAK retries
Modify the wait delay utilize the high resolution timer API to allow for
more precisely scheduled callbacks.

A previous commit added a 1ms retry delay after multiple consecutive
NAKed transactions using jiffies. On systems with a low timer interrupt
frequency, this delay may be significantly longer than specified,
resulting in misbehavior with some USB devices.

This scenario was reached on a Raspberry Pi 3B with a Macally FDD-USB
floppy drive (identified as 0424:0fdc Standard Microsystems Corp.
Floppy, based on the USB97CFDC USB FDC). With the relay delay, the drive
would be unable to mount a disk, replying with NAKs until the device was
reset.

Using ktime, the delta between starting the timer (in dwc2_hcd_qh_add)
and the callback function can be determined. With the original delay
implementation, this value was consistently approximately 12ms. (output
in us).

    <idle>-0     [000] ..s.  1600.559974: dwc2_wait_timer_fn: wait_timer delta: 11976
    <idle>-0     [000] ..s.  1600.571974: dwc2_wait_timer_fn: wait_timer delta: 11977
    <idle>-0     [000] ..s.  1600.583974: dwc2_wait_timer_fn: wait_timer delta: 11976
    <idle>-0     [000] ..s.  1600.595974: dwc2_wait_timer_fn: wait_timer delta: 11977

After converting the relay delay to using a higher resolution timer, the
delay was much closer to 1ms.

    <idle>-0     [000] d.h.  1956.553017: dwc2_wait_timer_fn: wait_timer delta: 1002
    <idle>-0     [000] d.h.  1956.554114: dwc2_wait_timer_fn: wait_timer delta: 1002
    <idle>-0     [000] d.h.  1957.542660: dwc2_wait_timer_fn: wait_timer delta: 1004
    <idle>-0     [000] d.h.  1957.543701: dwc2_wait_timer_fn: wait_timer delta: 1002

The floppy drive operates properly with delays up to approximately 5ms,
and sends NAKs for any delays that are longer.

Change-Id: I54987bfcab6d874b017bdcc8641e886ea4b626f7
Fixes: 38d2b5fb75 ("usb: dwc2: host: Don't retry NAKed transactions right away")
Cc: <stable@vger.kernel.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Acked-by: Minas Harutyunyan <hminas@synopsys.com>
Signed-off-by: Terin Stock <terin@terinstock.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 6ed30a7d8e)
2019-06-17 15:30:44 +08:00
Dmitry Torokhov
f0f1140691 UPSTREAM: usb: dwc2: host: do not delay retries for CONTROL IN transfers
When handling split transactions we will try to delay retry after
getting a NAK from the device. This works well for BULK transfers that
can be polled for essentially forever. Unfortunately, on slower systems
at boot time, when the kernel is busy enumerating all the devices (USB
or not), we issue a bunch of control requests (reading device
descriptors, etc). If we get a NAK for the IN part of the control
request and delay retry for too long (because the system is busy), we
may confuse the device when we finally get to reissue SSPLIT/CSPLIT IN
and the device will respond with STALL. As a result we end up with
failure to get device descriptor and will fail to enumerate the device:

[    3.428801] usb 2-1.2.1: new full-speed USB device number 9 using dwc2
[    3.508576] usb 2-1.2.1: device descriptor read/8, error -32
[    3.699150] usb 2-1.2.1: device descriptor read/8, error -32
[    3.891653] usb 2-1.2.1: new full-speed USB device number 10 using dwc2
[    3.968859] usb 2-1.2.1: device descriptor read/8, error -32
...

Let's not delay retries of split CONTROL IN transfers, as this allows us
to reliably enumerate devices at boot time.

Change-Id: If24ce2df467cd07e11d28baa01cdbe334fd7b592
Fixes: 38d2b5fb75 ("usb: dwc2: host: Don't retry NAKed transactions right away")
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.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 b3eb981be7)
2019-06-17 15:30:44 +08:00
Yao Xiao
02d6972aff net: rockchip_wlan: cywdhd: add platform modifications for rockchip
Change-Id: I4c16f82ae6179054d852fad912caf1a71498d6e8
Signed-off-by: Yao Xiao <xiaoyao@rock-chips.com>
2019-06-17 09:42:52 +08:00
Caesar Wang
ca86b1b134 arm64/configs: support NTFS filesystem for rockchip_linux_defconfig
Change-Id: Id0b3bbdd5566a883c060e546c3f69f60b5ca40f4
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2019-06-17 09:09:50 +08:00
Jon Lin
196c3e8ab1 drivers: rkflash: adjust rkflash_debug print
unicom debug print of rkflash.

Change-Id: I59a04f6fdc9219f33fb37723851e87c55ace1f86
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2019-06-14 22:03:57 +08:00
Yifeng Zhao
6c0c028916 drivers: spi: rockchip: config spi rx dma burst size depend on xfer length
Change-Id: I54c855fc2ed4ccfbed6c011ae10bebc9829dc4d7
Signed-off-by: Yifeng Zhao <zyf@rock-chips.com>
2019-06-14 19:33:00 +08:00
Yifeng Zhao
362a761161 drivers: mtd: nand: fix cs configuration error during nand initialization
Change-Id: I200c5b00b1a900a4a6d95ed6a409e0409bb2c058
Signed-off-by: Yifeng Zhao <zyf@rock-chips.com>
2019-06-14 18:24:34 +08:00
Caesar Wang
d82f1d3e58 arm64: dts: rockchip: reasonable alllcation of VOP on rk3399 linux
Most users used 4K monitors with HDMI on RK3399/RK3399PRO platform, but no
more than 2K monitors on EDP/DSI panels.

So the reasonable that HDMI connected to VOPB control, and EDP/DSI shound
be connected to VOPL.

Change-Id: Id97efc5d6d534c302aa52ad00e705c093457f41e
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2019-06-14 18:04:01 +08:00
Sandy Huang
805e544f53 drm/rockchip: vop: disable afbdc before close crtc
afbdc should be closed before vop disable, otherwise will
abfdc will access AXI with error address, this will lead to
appear vop post empty or iommu pagefault error.

Change-Id: Ia811d629d12aa7fff8bb26ead4c97cc84b35e9b6
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-06-14 15:46:06 +08:00
William Wu
d4b4a0299c usb: dwc3: gadget: avoid multiple calls to free_irq
When we use /sys/class/udc/<udc>/soft_connect to do
a logical disconnection from the USB Host, the func
usb_udc_softconn_store() anusb_gadget_remove_driver(
both call dwc3_gadget_stop(). This results in a
'Trying to free already-free IRQ' warning and stack
trace. To solve the problem, don't call free_irq()
in dwc3_gadget_stop() if dwc->gadget_driver is NULL.

Change-Id: I9d5b5b354612c3ce3677b3d15cf6af1fcbf3f399
Signed-off-by: William Wu <william.wu@rock-chips.com>
2019-06-14 11:44:59 +08:00
William Wu
20fe938d82 usb: gadget: udc: core: fix uvc gadget disconnect issue
This patch fix the issue that users fail to do a logical
disconnection from the USB Host via the kernel node:

/sys/class/udc/<udc>/soft_connect

Fixes: 3099e13bdb ("usb: gadget: f_uvc: support uvc and adb use independently")
Change-Id: I2a19f72dc0a5dc34e430d384f5b475b488731311
Signed-off-by: William Wu <william.wu@rock-chips.com>
2019-06-14 10:53:15 +08:00
Shixiang Zheng
3b6867a5a9 video/rockchip: rga2 fix alpha blend 405 mode not working issue
Change-Id: Id8c7d8b9b3021cbae79001aa565b6e7d7e5556f7
Signed-off-by: Shixiang Zheng <shixiang.zheng@rock-chips.com>
2019-06-14 10:12:20 +08:00
Yao Xiao
cbbc5861c7 net: rockchip_wlan: update rtl8189fs to "v5.3.12_28613"
Change-Id: I36061e358a3549f3924abdda4724c88b031162a3
Signed-off-by: Yao Xiao <xiaoyao@rock-chips.com>
2019-06-13 17:19:11 +08:00
Caesar Wang
0d2ae680e6 arm64: dts: rockchip: sound collation on rk3399-sapphire-excavator board
The original order of sound cards registration were really messy......

The hdmi is the first sound card by default.
for linux:
[    1.870252] ALSA device list:
[    1.871548]   #0: rockchip,hdmi
[    1.871863]   #1: realtek,rt5651-codec
[    1.872248]   #2: ROCKCHIP,SPDIF

Then after adding this patch,   the sound cards as below:
[    1.863328] ALSA device list:
[    1.863601]   #0: realtek,rt5651-codec
[    1.863942]   #1: rockchip,hdmi
[    1.864236]   #2: ROCKCHIP,SPDIF

Change-Id: I884df2752e84d95dbddba9b23c7dbd778ffb9357
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2019-06-12 16:12:18 +08:00
William Wu
ee4161d2fd usb: gadget: uvc: support streaming bulk transfer
This patch adds bulk endpoint for uvc to be used as
video streaming transfer. By default, the uvc gadget
still uses isoc endpoint for video streaming.

The important difference between the bulk and isoc
method is that, alt-settings in a video streaming
interface are supported only for isoc endpoints as
there are different alt-settings for zero-bandwidth
and full-bandwidth use-cases, but the same is not
true for bulk endpoints, as they support only a single
alt-setting.

How to use:
1. Enable the bulk transfer:
   echo 1 >  /config/usb-gadget/g1/functions/uvc.name/streaming_bulk

2. Disable the bulk transfer:
   echo 0 >  /config/usb-gadget/g1/functions/uvc.name/streaming_bulk

3. Testing the uvc bulk function transfer:
   device: run the uvc-gadget program
   # uvc-gadget -b -u /dev/video<uvc video node #> -v /dev/video<vivid video node #>

   where uvc-gadget is this program:
        http://git.ideasonboard.org/uvc-gadget.git

   with these patches:

        http://www.spinics.net/lists/linux-usb/msg99220.html

Change-Id: Ifedfe3f5c4354dd2bdf07382290107e9bcc89f59
Signed-off-by: William Wu <william.wu@rock-chips.com>
2019-06-12 15:23:51 +08:00
Tao Huang
cf92d82ac5 rk: ARM: support build [z]boot.img from existing boot.img
The existing boot.img from $(BOOT_IMG).

Change-Id: I3751e56ee88b3ece03999dc68c7c2595807bcbf7
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2019-06-12 14:29:48 +08:00
Tao Huang
234ac80951 rk: arm64: support build [z]boot.img from existing boot.img
The existing boot.img from $(BOOT_IMG).

Change-Id: Iaf78185546200acb10ae13f541197722149624e1
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2019-06-12 14:29:25 +08:00
Tao Huang
28aa47d269 rk: scripts: add repack-bootimg
Also add unpack_bootimg and update mkbootimg

AOSP 96fd8874ef8e ("Check DTB image size for boot image header version 2 and above")

Change-Id: I4582913b21f711c84d62bed0ffd024b583a094f7
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2019-06-12 14:24:52 +08:00
Kees Cook
b0d48dba0c UPSTREAM: arm64, vdso: Define vdso_{start,end} as array
Adjust vdso_{start|end} to be char arrays to avoid compile-time analysis
that flags "too large" memcmp() calls with CONFIG_FORTIFY_SOURCE.

Cc: Jisheng Zhang <jszhang@marvell.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Suggested-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
(cherry picked from commit dbbb08f500)

Change-Id: Ibec1756944779b7da3965855697ee2d797f6c611
Signed-off-by: Randy Li <randy.li@rock-chips.com>
2019-06-12 14:11:20 +08:00
Shixiang Zheng
27a1523ff1 scripts/bmpconvert: 8bit bmp file should not convert to 24bit
8bit logo convert to 24bit enlarge triple buffer size which
some chips can't reserve.

Change-Id: I769602f9d04e46a039d7a9158e25c1bb2067df32
Signed-off-by: Shixiang Zheng <shixiang.zheng@rock-chips.com>
2019-06-11 16:36:09 +08:00
Yao Xiao
9c7fdd3d6d net: rockchip_wlan: update cywdhd to "1.363.125.15 (r)"
Change-Id: Ibc20ffbab407f3be98a501875894e4804d727cc8
Signed-off-by: Yao Xiao <xiaoyao@rock-chips.com>
2019-06-10 18:39:46 +08:00
Yao Xiao
70b14d6e19 net: rockchip_wlan: update rtl8723ds to v5.6.5_31752-2e2e
Change-Id: I3a1b64e9054ec36592473f059fe2373188cbc455
Signed-off-by: Yao Xiao <xiaoyao@rock-chips.com>
2019-06-10 18:39:46 +08:00
stephen
1a00ab0dd9 net: rkwifi: add support for ap6256
Change-Id: I6e5781e3391576198b27e57e15d65cd8ee24818a
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2019-06-10 14:34:41 +08:00
Tao Huang
91ad3ad86f Merge branch 'android-4.4' of https://android.googlesource.com/kernel/common
* android-4.4: (3220 commits)
  ANDROID: Communicates LMK events to userland where they can be logged
  Linux 4.4.179
  kernel/sysctl.c: fix out-of-bounds access when setting file-max
  Revert "locking/lockdep: Add debug_locks check in __lock_downgrade()"
  ALSA: info: Fix racy addition/deletion of nodes
  mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y CONFIG_SMP=n
  device_cgroup: fix RCU imbalance in error case
  sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup
  Revert "kbuild: use -Oz instead of -Os when using clang"
  mac80211: do not call driver wake_tx_queue op during reconfig
  kprobes: Fix error check when reusing optimized probes
  kprobes: Mark ftrace mcount handler functions nokprobe
  x86/kprobes: Verify stack frame on kretprobe
  arm64: futex: Restore oldval initialization to work around buggy compilers
  crypto: x86/poly1305 - fix overflow during partial reduction
  ALSA: core: Fix card races between register and disconnect
  staging: comedi: ni_usb6501: Fix possible double-free of ->usb_rx_buf
  staging: comedi: ni_usb6501: Fix use of uninitialized mutex
  staging: comedi: vmk80xx: Fix possible double-free of ->usb_rx_buf
  staging: comedi: vmk80xx: Fix use of uninitialized semaphore
  ...

Conflicts:
	Documentation/arm64/silicon-errata.txt
	Documentation/kernel-parameters.txt
	Makefile
	arch/arm/Kconfig
	arch/arm/configs/ranchu_defconfig
	arch/arm64/Kconfig
	arch/arm64/Makefile
	arch/arm64/configs/cuttlefish_defconfig
	arch/arm64/configs/ranchu64_defconfig
	arch/arm64/include/asm/cacheflush.h
	arch/arm64/include/asm/cpufeature.h
	arch/arm64/include/asm/cputype.h
	arch/arm64/include/asm/hardirq.h
	arch/arm64/include/asm/kvm_host.h
	arch/arm64/include/asm/module.h
	arch/arm64/include/asm/pgtable.h
	arch/arm64/include/asm/smp.h
	arch/arm64/include/asm/spinlock.h
	arch/arm64/include/asm/suspend.h
	arch/arm64/include/asm/sysreg.h
	arch/arm64/kernel/Makefile
	arch/arm64/kernel/arm64ksyms.c
	arch/arm64/kernel/asm-offsets.c
	arch/arm64/kernel/cpufeature.c
	arch/arm64/kernel/efi-entry.S
	arch/arm64/kernel/efi.c
	arch/arm64/kernel/entry.S
	arch/arm64/kernel/head.S
	arch/arm64/kernel/image.h
	arch/arm64/kernel/module-plts.c
	arch/arm64/kernel/module.c
	arch/arm64/kernel/module.lds
	arch/arm64/kernel/process.c
	arch/arm64/kernel/stacktrace.c
	arch/arm64/kernel/suspend.c
	arch/arm64/kernel/traps.c
	arch/arm64/kernel/vmlinux.lds.S
	arch/arm64/kvm/hyp.S
	arch/arm64/kvm/hyp/fpsimd.S
	arch/arm64/mm/dma-mapping.c
	arch/arm64/mm/fault.c
	arch/arm64/mm/hugetlbpage.c
	arch/arm64/mm/init.c
	arch/arm64/mm/mmu.c
	arch/arm64/mm/pageattr.c
	arch/arm64/mm/proc.S
	arch/x86/configs/i386_ranchu_defconfig
	arch/x86/configs/x86_64_cuttlefish_defconfig
	arch/x86/configs/x86_64_ranchu_defconfig
	arch/x86/entry/vdso/Makefile
	arch/x86/include/asm/thread_info.h
	arch/x86/include/asm/uaccess.h
	arch/x86/include/asm/uaccess_32.h
	arch/x86/include/asm/uaccess_64.h
	build.config.cuttlefish.aarch64
	build.config.cuttlefish.x86_64
	drivers/Kconfig
	drivers/Makefile
	drivers/android/Kconfig
	drivers/android/binder.c
	drivers/block/loop.c
	drivers/cpufreq/cpufreq-dt.c
	drivers/cpufreq/cpufreq_interactive.c
	drivers/firmware/Kconfig
	drivers/firmware/efi/libstub/Makefile
	drivers/firmware/efi/libstub/arm64-stub.c
	drivers/firmware/psci.c
	drivers/gpu/drm/rockchip/rockchip_drm_drv.c
	drivers/hwtracing/coresight/coresight-etm4x.c
	drivers/hwtracing/coresight/coresight-funnel.c
	drivers/hwtracing/coresight/coresight-tmc.c
	drivers/hwtracing/coresight/coresight-tpiu.c
	drivers/hwtracing/stm/Kconfig
	drivers/hwtracing/stm/core.c
	drivers/irqchip/Kconfig
	drivers/md/Kconfig
	drivers/misc/Kconfig
	drivers/misc/Makefile
	drivers/misc/uid_sys_stats.c
	drivers/mmc/core/mmc.c
	drivers/net/ethernet/realtek/r8169.c
	drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
	drivers/net/wireless/virt_wifi.c
	drivers/platform/goldfish/goldfish_pipe_v2.c
	drivers/staging/android/fiq_debugger/Kconfig
	drivers/switch/Kconfig
	drivers/switch/Makefile
	drivers/switch/switch_class.c
	drivers/tee/optee/rpc.c
	drivers/tee/optee/shm_pool.h
	drivers/usb/dwc3/gadget.c
	drivers/usb/gadget/function/f_audio_source.c
	drivers/usb/gadget/function/f_mtp.c
	drivers/usb/gadget/function/u_ether.c
	drivers/usb/host/xhci-ring.c
	fs/exec.c
	fs/pnode.c
	include/linux/cpufreq.h
	include/linux/dcache.h
	include/linux/memblock.h
	include/linux/power/bq25700-charge.h
	include/linux/uid_stat.h
	include/net/activity_stats.h
	include/uapi/linux/android/binder.h
	kernel/events/ring_buffer.c
	kernel/sched/fair.c
	kernel/time/timer.c
	mm/memblock.c
	mm/slab.c
	net/ipv4/tcp_ipv4.c
	net/socket.c
	scripts/dtc/checks.c
	scripts/dtc/dtc-lexer.lex.c_shipped
	scripts/dtc/dtc-parser.tab.c_shipped
	scripts/dtc/dtc.c
	scripts/dtc/dtc.h
	scripts/dtc/dtx_diff
	scripts/dtc/libfdt/fdt_wip.c
	scripts/dtc/libfdt/libfdt.h
	scripts/dtc/livetree.c
	scripts/dtc/srcpos.h
	scripts/dtc/util.h
	scripts/dtc/version_gen.h
	scripts/sortextable.c

Change-Id: Ic327e4bbeb99e98724bb626fa9df2d31b0abc003
2019-06-10 09:16:03 +08:00
Shixiang Zheng
2cd5778955 drm/rockchip: vop: add panel node parameters for screen rotate
Change-Id: Ia1e72ccd769ab5e2e499f7ee9c73a85c8b025b1b
Signed-off-by: Shixiang Zheng <shixiang.zheng@rock-chips.com>
2019-06-06 19:27:43 +08:00
Shixiang Zheng
450b50c8ea drm/rockchip: add panel node parameters for screen rotate
Change-Id: I3cc1e1d1a514545c7bc069f3a29e8c38da2ce5b7
Signed-off-by: Shixiang Zheng <shixiang.zheng@rock-chips.com>
2019-06-06 19:27:43 +08:00
Xu Hongfei
3be8b37f59 phy: phy-rockchip-mipi-rx: increase the check whether the sensor is null
Change-Id: Ic80a97e5bf195ee236f7869755b88e825e57744e
Signed-off-by: Xu Hongfei <xuhf@rock-chips.com>
2019-06-06 19:22:14 +08:00
Xu Hongfei
7e93cc8f5d media: rockchip: rk-cif: support yuyv output in cif
support yuyv output by setting the input mode to raw8

Change-Id: Ie33fa1e5d5cee532ebcfb23d57cac3700ee25042
Signed-off-by: Xu Hongfei <xuhf@rock-chips.com>
2019-06-06 19:22:14 +08:00
Xu Hongfei
fd911e7221 media: i2c: nvp6324: support media controller in driver
Change-Id: I982b626c22303487a5fa3d64391a37685ef4d7e1
Signed-off-by: Xu Hongfei <xuhf@rock-chips.com>
2019-06-06 19:22:14 +08:00
Wyon Bi
d982bbe9bb phy/rockchip: inno-video-phy: Fix phy poweron failed in TTL mode
Don't enable PLL in TTL mode, it's only validated for LVDS mode.

[    4.193355] inno-video-phy ff96c000.video-phy: PLL is not lock
[    4.193380] phy phy-ff96c000.video-phy.3: phy poweron failed --> -110

Change-Id: I353aebcaee5c53d675f9052c29c9e3c205c4ff4a
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
2019-06-06 18:06:17 +08:00
Weixin Zhou
c9443140c6 PCI: rockchip: support ep-gpio undefined case
Change-Id: I2393a7fb8bfa7af65ad65f29122f33919740c395
Signed-off-by: Weixin Zhou <zwx@rock-chips.com>
2019-06-06 18:05:58 +08:00
William Wu
70e170d5d6 usb: dwc2: hcd: do not disable non-split periodic channels
The dwc2 programming guide section 3.5 'Halting a Channel'
says that the application can disable any channel by
programming the HCCHARn register with the HCCHARn.ChDis
and HCCHARn.ChEna bits set to 1'b1. This enables the
dwc_otg host to flush the posted requests (if any) and
generates a Channel Halted interrupt.

But it also requires that channel disable must not be
programmed for non-split periodic channels. At the end
of the next uframe/frame (in the worst case), the core
generates a channel halted and disables the channel
automatically.

If we disable non-spilt periodic channels to halt the
channels, it will easily to cause data transfer fail.
A typical case is take photo with usb camera or close
usb camera, Specifically, the observed order is:

1. uvc driver calls usb_kill_urb
2. usb_kill_urb calls urb_dequeue to cancel urb
3. urb_dequeue call dwc_otg_hc_halt to disable
   non-spilt periodic channels
4. usb core doesn't halt the non-spilt periodic
   channels immediately, and the application
   reallocates the channels for other transactions
   without waiting for the HCINTn.ChHltd interrupt.
5. uvc driver calls usb_set_interface to start
   control transfer, and gets a channel which used
   for non-spilt periodic transfer before. The core
   generates a channel halted and disables the channel
   automatically. This cause control transfer fail.

Change-Id: I95424a99b77b552396a9fb95a5058258270ed4c2
Signed-off-by: William Wu <william.wu@rock-chips.com>
2019-06-06 14:17:18 +08:00
Allon Huang
ca5a4e5615 arm64: dts: rockchip: add cif_pin_m1 node for rk3326-evb-lp3-v10-robot-linux
Change-Id: Ia69eb4f02a4fa2b6f5a9cbf3b4764a896d20221a
Signed-off-by: Allon Huang <allon.huang@rock-chips.com>
2019-06-06 14:09:55 +08:00
Zefa Chen
8bbe5e1382 media: i2c: add ov9281 driver.
Change-Id: I7b77250bbc56d2f861450cf77271ad15f9b88ab1
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
2019-06-06 14:05:07 +08:00
Cai YiWei
c68b8a385c media: rockchip: isp1: fix raw patch wrong RG10 format
Change-Id: I6037a34e97c6a109f01fe7610c87438c715e0af6
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2019-06-06 14:04:47 +08:00
Sandy Huang
dfc9b75b09 drm/rockchip: vop: delete rk3308 vop win empty irq
Because rk3308 vop win empty isn't reliable, so we delete it.

Change-Id: If033eb02c4d7174db8dde7984581e39c98ee4998
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
2019-06-05 19:49:46 +08:00
Shaokun Zhang
85d34e3388 UPSTREAM: arm64: mm: remove page_mapping check in __sync_icache_dcache
__sync_icache_dcache unconditionally skips the cache maintenance for
anonymous pages, under the assumption that flushing is only required in
the presence of D-side aliases [see 7249b79f6b ("arm64: Do not flush
the D-cache for anonymous pages")].

Unfortunately, this breaks migration of anonymous pages holding
self-modifying code, where userspace cannot be reasonably expected to
reissue maintenance instructions in response to a migration.

This patch fixes the problem by removing the broken page_mapping(page)
check from the cache syncing code, otherwise we may end up fetching and
executing stale instructions from the PoU.

Change-Id: Ie304b57c7a8597beff653e9a2a13b7cf3725a365
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: <stable@vger.kernel.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Shaokun Zhang <zhangshaokun@hisilicon.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Cliff Chen <cliff.chen@rock-chips.com>
(cherry picked from commit 20c27a4270)
2019-06-05 19:03:53 +08:00