Add common helper function rockchip_usb2phy_port_irq_init() for
both otg port and host port to init their own irqs. It can help
to reduce redundant code, and also fix a issue that the id irq
isn't enabled for otg port if the vbus_always_on flag is true.
This patch introduces a combined irq for some inno usb2 phys
which combined the irqs of otg port and host port. We will used
it for RK3568 later.
Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: Ifa74ec72e2b9d4ed62ee69e916b8ab2e8ae665b3
This patch implements a combo phy driver for Rockchip SoCs
with NaNeng IP block. This phy can be used as pcie-phy, usb3-phy,
sata-phy or sgmii-phy.
Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: I86726e7eee643ea4cb3fadc56b0ee729903afc4f
In addition, rename some configs that have been used in drivers/gpu/arm/midgard.
Change-Id: I4244ea3ac7f039f182d5e58f677d9c31417188bf
Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
Add constants and callback functions for the dwmac on RK3568 soc.
As can be seen, the base structure is the same, only registers
and the bits in them moved slightly.
Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: I26e8dbc172c7c14df230f531251e2cd23d78a787
When there is double quote in last git log mpp Makefile will report
error. Add more subst to handle the double quote.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ifa34a89cf917a5837987e5bbf61def9ed37a2f4f
The rk1808 efuse read has some issues when several threads start to read
efuse through nvmem file node.
Thread1 thread2
1. timing_init
2. write auto_ctrl
3. delay timing_init
4. read status write auto_ctrl
5. if error goto to timing_deinit delay
The thread1 will read no finish bit and then goto error, the user will
see a "Input/Output Error".
The thread1 do timing deinit will cause thread2 halt on read status, and
the user will never success to do read efuse again.
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I3f462afd844686aac153acc0c33215fbd96827a3
DesignWare based SDHCI controller will be used for eMMC on some
Rockchip platforms such as RK3568.
Change-Id: I4a1c83f8a04c888d1279b1f5ef3aff34d602ea0f
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
The output voltage is 25mV higher than the opp voltage on v10 board,
and they are almost the same on v12 board, so add 25mV for 500MHz and 600MHz.
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Idaa48447804ca156cea1e1f77bd23b669e2c489b
This patch adds initial support for snps pcie 3.0
phy.
Change-Id: I23d0750a60ffde30f434e1c676916d4bc4772400
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Bifurcation mode is tunable lanes which could be devided
into different individual combination.
Change-Id: Ie6a10694d3c4fd5da1a5673d58424de797f3622b
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
The packet size for USB audio must always be a multiple of the frame
size, otherwise we are transmitting a partial frame which omits some
channels (and these end up at the wrong offset in the next packet).
Furthermore, it breaks the residue handling such that we end up trying
to send a packet exceeding the maximum packet size for the endpoint.
Signed-off-by: Ren Jianing <jianing.ren@rock-chips.com>
Signed-off-by: John Keeping <john@metanate.com>
Signed-off-by: Felipe Balbi <balbi@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Change-Id: I8181ce167a4c80a0e80bb51003f3e4ec8fa4b92d
(cherry picked from commit 6b02af3465)
these flags will be used by other output interface, so remove
DSI special assign.
Change-Id: I6ede559deee14a0336e4037c709e5a36d4686c4a
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
the lvds two channel can work independent, each lvds channel can
connector a singel channel lvds panel, so add left and right pixels mode
support.
Change-Id: I6136d31883693dc20935a47b2c4eb5b10135c312
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
There is no GICC/GICH/GICV memory-mapped address for RK3568 SoC.
Change-Id: Ie128cc2e5994b703d1fba9df44216331ed3c6c54
Signed-off-by: Liang Chen <cl@rock-chips.com>
An LVDS dual-link connection is made of two links, with even
pixels transitting on one link, and odd pixels on the other
link. The device tree can be used to fully describe dual-link
LVDS connections between encoders and bridges/panels.
The sink of an LVDS dual-link connection is made of two ports,
the corresponding OF graph port nodes can be marked
with either dual-lvds-even-pixels or dual-lvds-odd-pixels,
and that fully describes an LVDS dual-link connection,
including pixel order.
drm_of_lvds_get_dual_link_pixel_order is a new helper
added by this patch, given the source port nodes it
returns DRM_LVDS_DUAL_LINK_EVEN_ODD_PIXELS if the source
port nodes belong to an LVDS dual-link connection, with even
pixels expected to be generated from the first port, and odd
pixels expected to be generated from the second port.
If the new helper returns DRM_LVDS_DUAL_LINK_ODD_EVEN_PIXELS,
odd pixels are expected to be generated from the first port,
and even pixels from the other port.
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
(cherry picked from commit 6529007522)
Change-Id: I9dcf69801d75592bc6e721b40734cb766a29366a
Signed-off-by: Sandy Huang <hjc@rock-chips.com>