vb with done state is can't added to stream.buf_queue
when another stream is started, because this vb is
in queue.done_list.
Change-Id: I7b60d6941953509e5962efae723d36b516b4185c
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
* linux-linaro-lsk-v4.4-android: (1212 commits)
ANDROID: sdcardfs: Change current->fs under lock
ANDROID: sdcardfs: Don't use OVERRIDE_CRED macro
ANDROID: restrict store of prefer_idle as boolean
BACKPORT: arm/syscalls: Optimize address limit check
UPSTREAM: syscalls: Use CHECK_DATA_CORRUPTION for addr_limit_user_check
BACKPORT: arm64/syscalls: Check address limit on user-mode return
BACKPORT: x86/syscalls: Check address limit on user-mode return
BACKPORT: lkdtm: add bad USER_DS test
UPSTREAM: bug: switch data corruption check to __must_check
BACKPORT: lkdtm: Add tests for struct list corruption
UPSTREAM: bug: Provide toggle for BUG on data corruption
UPSTREAM: list: Split list_del() debug checking into separate function
UPSTREAM: rculist: Consolidate DEBUG_LIST for list_add_rcu()
BACKPORT: list: Split list_add() debug checking into separate function
FROMLIST: ANDROID: binder: Add BINDER_GET_NODE_INFO_FOR_REF ioctl.
BACKPORT: arm64/vdso: Fix nsec handling for CLOCK_MONOTONIC_RAW
ANDROID: arm64: mm: fix 4.4.154 merge
BACKPORT: zsmalloc: introduce zs_huge_class_size()
BACKPORT: zram: drop max_zpage_size and use zs_huge_class_size()
ANDROID: tracing: fix race condition reading saved tgids
...
Change-Id: I9f23db35eb926b6fa0d7af7dbbb55c9a37d536fc
Recent ION do not support ion_handle_get_by_id. So ION_IOC_GET_PHYS
is broken. Remove custom ioctl support entirely.
Change-Id: I591d4b8521a96d17cd2171c7b364e44d1b97cf24
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
On some platform, it needs aclk/hclk/sclk for using iommu.
Change-Id: Iaf60124e225d418af8bbf1e0b4a31e907358fcfd
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
Android Go device require this config for performance test,
enable it by default.
Test: ./performance_test/system/checkout_f2fs.sh
Change-Id: Id5a9b33da24eec768d60e158af72dd9af216f653
Signed-off-by: Bian Jin chen <kenjc.bian@rock-chips.com>
Set vsel gpio low to disable vdd_npu.
Set vsel gpio high to enable vdd_npu.
The vsel pin is pull up by hw default.
Change-Id: I86ef1f2d6d2a0dd26a128cba1e52a140e6844291
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Android Go device require this config for performance test,
enable it by default.
Test: ./performance_test/system/checkout_f2fs.sh
Change-Id: If6d07a82546759f672df8519d113a702c3bcfbe3
Signed-off-by: Bian Jin chen <kenjc.bian@rock-chips.com>
Make sure messages are not affected by locale environment variables.
Change-Id: Id5606c1a8e1f7a8f09d4e14c4531daebaceef2bf
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Allow enables the acknowledge request after each packet transmission.
Change-Id: Ie8b2e49da0f2cae8bf99b4b555d42fbb640f8e37
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Most of TLP is contributed by the counter programming:
TLP = ((counter_threshold + 1) x TXBYTECLKHS) + constant_time
where:
constant_time corresponds to internal D-PHY FSM state and
Analog Front End (AFE) timing variation
Change-Id: Icee77dee0772afbcecc5e883572061162ed0fc4f
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
The pinctrl-rockchip driver get the clock resource by of_clk_get
within the index 0 which requires the index of pclk_gpio should
be fixed to 0.
Change-Id: I619f12cb53002996d96f142c8889852be75c61e7
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
/dev/vpu is the old device name. New driver always use vpu_service
as default vcodec driver name.
Change-Id: I19896d92336291d0035fa4ed7b466cb64fd96d78
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
This reverts commit 827031a1ca.
PMU_CRU offset is 0x4000
Change-Id: Ia535a255030b530949bc205414dca86ffd7ff6b6
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
This reverts commit 3e9d3367b9.
PMU_CRU offset is 0x4000
Change-Id: Ibce2c7fc6b7995c128dde4809446b1b428f893aa
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Fixup the default pinctrl configuration for uart4-rts-gpio:
rockchip-pinctrl pinctrl: unable to find group for node uart4-rts-gpio
Change-Id: Ic25375aeba924ba0314ad5660b3ee4f18ea8c0cc
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
DWC_mipi_dsi_host can be configured to send the low-power (LP)
commands during the HS video mode transmission. To enable this
feature, set the lp_cmd_en bit of the VID_MODE_CFG register to 1.
In this case, it is necessary to calculate the time available,
in bytes, to transmit a command in LP mode to Horizontal Front Porch (HFP),
Vertical Sync Active (VSA), Vertical Back Porch (VBP), and
Vertical Front Porch (VFP) regions.
Bits 8 to 13 of the VID_MODE_CFG register indicates if DWC_mipi_dsi_host
can go to LP when in idle. If the lp_cmd_en bit is set (1'b1) and
non-video packets are in queue, DWC_mipi_dsi_host ignores the LP
configuration and transmits LP commands, even if it is not allowed
to enter LP in a specific region. After the LP commands transmission,
DWC_mipi_dsi_host remains in LP until a sync event occurs.
If the lp_cmd_en bit of the VID_MODE_CFG register is 0, the commands
are sent in high-speed in Video Mode. In this case, the DWC_mipi_dsi_host
automatically determines the area where each command can be sent and no
programming or calculation is required.
Change-Id: Id47982c2c7605be17c4d295707fd5496f32f79fe
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
The function mipi_dsi_device_transfer() returns the number of transmitted
or received bytes on success or a negative error code on failure.
The functions mipi_dsi_shutdown_peripheral(), mipi_dsi_turn_on_peripheral() &
mipi_dsi_set_maximum_return_packet_size() use improperly this returned
value in case of success: 0 should be returned instead of the number of
transmitted bytes.
Signed-off-by: Philippe Cornu <philippe.cornu@st.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20180112144847.18810-1-philippe.cornu@st.com
Change-Id: I7709da898423e6149d3d95088ad795a20b867a7b
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 6ac6929028)
Most of these helpers had been introduced in the correct order, but some
were simply appended, which wasn't detected when they were applied.
Signed-off-by: Thierry Reding <treding@nvidia.com>
Change-Id: Ic540fb4d541b32c21f9f2348aba3f4cae5c99fa6
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit bbdcf516a6)
Implement a uevent callback for devices on the MIPI DSI bus. This
callback will append MODALIAS information to the uevent and allow
modules to be loaded when devices are added to the bus.
Reviewed-by: Archit Taneja <architt@codeaurora.org>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Change-Id: I580c1fb721330a5088f8ddf233a635c607277729
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit babb24fec1)
MIPI DSI devices are inherently aware of their host because they share a
parent-child hierarchy in the device tree.
Non-DSI drivers that create DSI device don't have this data. In order to
get this information, they require to a phandle to the DSI host in the
device tree.
Maintain a list of all the DSI hosts that are currently registered. This
list will be used to find the struct mipi_dsi_host corresponding to the
device tree node passed to of_find_mipi_dsi_host_by_node().
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Change-Id: I9d1a42c45707ec4b22e67e6b4aad058b3a5254df
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 97b6ae50e0)
A driver calling mipi_dsi_device_register_full() might want to remove
the device once it's done. It might also require it in an error handling
path in case something went wrong.
Create mipi_dsi_device_unregister() for this purpose and use it within
mipi_dsi_remove_device_fn() as it does the same thing.
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Change-Id: I538bd028851bb27dbf7c93d459b8276d7271dae8
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit 509e42ce04)
Add a device name field in struct mipi_dsi_device. This name is not the
same as the device name (which is of the format "hostname.reg"). When
the device is created via DT, this name is set to the modalias string.
In the non-DT case, the driver creating the DSI device provides the
name by populating a field in struct mipi_dsi_device_info.
Matching for DT case would be as it was before. For the non-DT case, we
compare the device and driver names. Other buses (like I2C/SPI) perform
a non-DT match by comparing the device name and entries in the driver's
id_table. Such a mechanism isn't used for the DSI bus.
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Change-Id: I68d4e46fb82ccce4e578256c031d6ee329d5eb1b
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
(cherry picked from commit bf4363ce3a)