Add a delay to the core soft reset function to account for the IDDIG
debounce filter.
If the current mode is host, either due to the force mode bit being
set (which persists after core reset) or the connector id pin, a core
soft reset will temporarily reset the mode to device and a delay from
the IDDIG debounce filter will occur before going back to host mode.
Change-Id: I1c08c00b877b9fc330741469d0310fdfda834bbc
Tested-by: Stefan Wahren <stefan.wahren@i2se.com>
Signed-off-by: John Youn <johnyoun@synopsys.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 fef6bc37db)
In dwc2_hsotg_udc_start(), don't initialize the controller for device
mode unless we are actually in device mode.
Change-Id: I6cb115683fc172987928d3e0ea4c2c03cf2b0706
Tested-by: Heiko Stuebner <heiko@sntech.de>
Tested-by: Stefan Wahren <stefan.wahren@i2se.com>
Signed-off-by: John Youn <johnyoun@synopsys.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 d0f0ac56b3)
As kill_all_requests() potentially flushes TX FIFO, we should should
free FIFO after calling it. Otherwise FIFO could stay unflushed properly.
Change-Id: I90e2add8abbc598f82856576ed222c7429b77b6b
Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
Signed-off-by: John Youn <johnyoun@synopsys.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 1c07b20eaa)
Since FIFO is always freed in dwc2_hsotg_ep_disable(), ep->fifo_index
is always 0 in dwc2_hsotg_ep_enable(), hence code inside if() block is
never executed.
Change-Id: Ib72163203bea5565209132ad7d4278ed7056049b
Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
Signed-off-by: John Youn <johnyoun@synopsys.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 21f3bb5298)
In context of FIFO registers we use ep->fifo_index instead of ep->index.
Change-Id: Iff6b518e286d095a8be50551e2caba52cedbfab7
Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
Signed-off-by: John Youn <johnyoun@synopsys.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 ad674a1524)
All kmalloc-based functions print enough information on failures.
Change-Id: I2b79fb2db50d14641c628a1ea6f3994873f362e1
Signed-off-by: Wolfram Sang <wsa-dev@sang-engineering.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 8bae0f8c3a)
Allow for platforms that have a reset controller driver in place to bring
the USB IP out of reset.
Change-Id: I6ec420be0faf456b9bf40eb4ae3e214d9077b10c
Signed-off-by: Dinh Nguyen <dinguyen@opensource.altera.com>
Acked-by: John Youn <johnyoun@synopsys.com>
Tested-by: Stefan Wahren <stefan.wahren@i2se.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 83f8da562f)
Convert drivers to use the new of_graph_get_remote_node() helper
instead of parsing the endpoint node and then getting the remote device
node. Now drivers can just specify the device node and which
port/endpoint and get back the connected remote device node. The details
of the graph binding are nicely abstracted into the core OF graph code.
This changes some error messages to debug messages (in the graph core).
Graph connections are often "no connects" depending on the particular
board, so we want to avoid spurious messages. Plus the kernel is not a
DT validator.
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
Tested-by: Liviu Dudau <liviu.dudau@arm.com>
Tested-by: Eric Anholt <eric@anholt.net>
Tested-by: Jyri Sarha <jsarha@ti.com>
Tested by: Archit Taneja <architt@codeaurora.org>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
(cherry picked from commit 86418f90a4)
Conflicts:
Only merge the file of drivers/gpu/drm/bridge/dumb-vga-dac.c
Change-Id: Ie8fd230f6d150ac8585e0b5418cbbca240b1d2f6
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
The ADV7123 is a transparent VGA DAC. Unlike dumb VGA DACs it can be
controlled through a power save pin, and requires a power supply.
However, on most boards where the device is used neither the power save
signal nor the power supply are controllable.
To avoid developing a separate device-specific driver add an
"adi,adv7123" compatible entry to the dumb-vga-dac driver. This will
allow supporting most ADV7123-based boards easily, while allowing future
development of an adv7123 driver when needed without breaking backward
compatibility.
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Link: http://patchwork.freedesktop.org/patch/msgid/20170302104728.7150-4-laurent.pinchart+renesas@ideasonboard.com
(cherry picked from commit d29ffab591)
Change-Id: I3447fa126b120911400fd9ec22a05dbb1598251e
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
THS8135 is a configurable video DAC, but no configuration is actually
necessary to make it work.
For now use the dumb-vga-dac driver to support it.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1481623759-12786-4-git-send-email-bgolaszewski@baylibre.com
(cherry picked from commit a1f761a592)
Change-Id: I9273f5423cc5f6695bf87fba451340d472acf356
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
Some dumb VGA DACs are active components which require external power.
Add support for specifying a regulator as its power supply.
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Link: http://patchwork.freedesktop.org/patch/msgid/20161116154232.872-2-wens@csie.org
(cherry picked from commit af948a25ec)
Change-Id: I711e3b444f72e04ee09e8ca4bfa8c04c3640039b
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
Some boards have an entirely passive RGB to VGA bridge, based on DACs
implemented by resistor ladders.
Those might or might not have an i2c bus routed to the VGA connector in
order to access the screen EDIDs.
Add a bridge that doesn't do anything but expose the modes available on the
screen, either based on the EDIDs if available, or based on the XGA
standards.
Acked-by: Rob Herring <robh@kernel.org>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Tested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Link: http://patchwork.freedesktop.org/patch/msgid/20160930143709.1388-3-maxime.ripard@free-electrons.com
(cherry picked from commit 56fe8b6f49)
Conflicts:
drivers/gpu/drm/bridge/Kconfig
drivers/gpu/drm/bridge/Makefile
Change-Id: I481b7115b0401c14d990a7574e41b6c76b7d48d6
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
Adapt drm_pick_crtcs() and update_connector_routing() to fallback to
drm_atomic_helper_best_encoder() if funcs->best_encoder() is NULL so
that DRM drivers can leave this hook unassigned if they know they want
to use drm_atomic_helper_best_encoder().
Update the vtables documentation accordingly.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1465300095-16971-2-git-send-email-boris.brezillon@free-electrons.com
(cherry picked from commit c61b93fe51)
Conflicts:
include/drm/drm_modeset_helper_vtables.h
Change-Id: If27c471552026da17d22ee0e77b28b65b2c811ef
Signed-off-by: Jerry Xu <xbl@rock-chips.com>
By passing a pointer to struct devfreq, we can fix global data abuse issue.
Change-Id: I17f6264b86549f67d61d03f38da0127e666eee3c
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
This makes sure dma can get peripheral request.
Change-Id: I85feb4ade8796490e5d53cd4c9e610775cfd0175
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
When dma executes flush instruction, it may issue two
continuous bursts, and fill peripheral fifo too much
data, which causes fifo overrun.
Change-Id: Ie91205d400e33d7599b7a065d99712e4faebbba8
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
Add DWC2 controller, EHCI controller, OHCI controller and USB
PHY nodes to support USB.
Change-Id: If5dfb7c18cdc369d92eff5c8ddcc2f0dde01cc36
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
if mode update, we make sure close all win and timing config take
effect, otherwise will appear get fs time out and lead to iommu
enable pagefault.
Change-Id: I18364d699a351c01e8fb1b03973d20c7cdee7c45
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
This adds the necessary data for handling pvtm on the px30.
Change-Id: Ida01e8363f8349c379e10d6a4637eb893591789d
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
When uboot logo is enabled, hdmi will not be setup again.
In this case, kernel driver will set wrong mc_clkdis value
when cec enable. So mc_clkdis should be got from uboot.
Change-Id: Idb9984d981489287966f2719f6ed4c729a183b58
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
there is a global session which use devm_kzalloc when
vpu probe, and each open function will create a session
use kzalloc. now use kzalloc to malloc for both of them
to avoid kfree bug.
Change-Id: I4012463cea5b3becaf2640b407f1ba93c9766008
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
When hdmi HPD is occurred, call cec_notifier_repo_cec_hpd.
Change-Id: If2047121c8ccf55e9a49fa4c3c4ec2187248a593
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
The rkvdec and vpu qos registers need to save and restore when reset.
Change-Id: I2c335a0df922463d2ecf37fe1ee250aadc3b7c54
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
This driver is modified to support RK3228 SoC.
RK3228 SoC is only support idle.
Change-Id: I1c3e942de13fd241e3893818e2584c25bad69b27
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
unlocking reset_lock is not necessary at vcodec_shutdown.
Change-Id: Id8331fead9db0968779ef19602f4a24fc9446a7d
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>
first version of rkvdec is called hevc, and it is dev_mode
is 1, add this value inside get_hw_info function
Change-Id: I0471d167029274848c00a806f0f6f0ea9f0308df
Signed-off-by: Jung Zhao <jung.zhao@rock-chips.com>