DRM dw_hdmi audio driver is based on common hdmi-codec driver, and bind
with i2s controller through simple-audio-card.
Change-Id: I2d9d5941b8e7c1f256e505338f43869584772e79
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
This patch prevents OTG0 and OTG1 PHY from entering suspend mode.
Because if PHY enter suspend, it will cause DWC3 controller work
abnormally now. We can revert it if fusb302 driver is merged.
Change-Id: I74c3ee5d3e1b925e8dc758bdc6d67372df421b98
Signed-off-by: Wu Liang feng <wulf@rock-chips.com>
This patch add USB2 PHY1 OTG port configurations for rk3399,
it support PHY1 suspend and bvalid detect, but not support
usb battery charger detect.
Change-Id: I7a6aaf484d6ad2ad097a7d9679a56aa545f217c8
Signed-off-by: Wu Liang feng <wulf@rock-chips.com>
RK3399 SoC USB2 PHY1 comprises with one host-port and
one otg-port, now we support PHY1 otg-port.
Change-Id: I8e7fd53ce6f1552172044ad2adc3f19e923d1bcd
Signed-off-by: Wu Liang feng <wulf@rock-chips.com>
Should do vop_cfg_done to let windows disable take effect
Change-Id: Ib2966d8825a195696a963de7bc1d9665e78e5389
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
The series of vop is:
IP version chipname
3.1 rk3288
3.2 rk3368
3.4 rk3366
3.5 rk3399 big
3.6 rk3399 lit
3.7 rk322x
The IP version is from VERSION_INFO register
major version: used for IP structure, Vop full framework is 3,
vop little framework is 2.
minor version: on same structure, newer design vop will bigger then
old one.
Change-Id: I032cb3d74cd01440274d3efeefa747e6028c1689
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
If cmd is empty in get_reboot_mode_magic, we should return normal magic.
Change-Id: I10931adc49e33f72ae73d9471159f82cc02ff0c0
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Add the interrupts cells value for 4, and the 4th cell is zero.
Due to the doc[0] said:" the system requires describing PPI affinity,
then the value must be at least 4"
The 4th cell is a phandle to a node describing a set of CPUs this
interrupt is affine to. The interrupt must be a PPI, and the node
pointed must be a subnode of the "ppi-partitions" subnode. For
interrupt types other than PPI or PPIs that are not partitionned,
this cell must be zero. See the "ppi-partitions" node description
below.
[0]:
Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.txt
Change-Id: I80d459b746aea40027a7eacfcc7aa764a57fdc9f
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(am https://patchwork.kernel.org/patch/9215659/)
(Note: fixes some no sync upstream node)
On a big-little system, PMUs can be wired to CPUs using per CPU
interrups (PPI). In this case, it is important to make sure that
the enable/disable do happen on the right set of CPUs.
So instead of relying on the interrupt-affinity property, we can
use the actual percpu affinity that DT exposes as part of the
interrupt specifier. The DT binding is also updated to reflect
the fact that the interrupt-affinity property shouldn't be used
in that case.
Change-Id: I4a48e116cfa84d74985f44ed30d6e664ce3cfa5f
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
(am from https://patchwork.kernel.org/patch/9216445/)
The usb2 phy utmi bvalid status is invalid for ES1 evb1/evb2
board, so check vbus status by utmi avalid status.
Change-Id: Iae369183cd15034eb35818c63988150f3aad6374
Signed-off-by: Wu Liang feng <wulf@rock-chips.com>
Rockchip USB2 phy provides utmi_avalid and utmi_bvalid for
user to check UTMI vbus status. Generally, both of them can
reflect the vbus status correctly, and the utmi_bvalid has
higher sensitivity, so we select the utmi_bvalid to get vbus
status by default.
But some special SoCs may not provide utmi_bvalid, so we
need to select utmi_avalid in this case.
Change-Id: I0d47c2237f852cb67ebd82fe2673b2bd2e6ccce6
Signed-off-by: Wu Liang feng <wulf@rock-chips.com>
This adds support for rk3288-miniarm board,
Rockchip RK3288 based development boards.
Change-Id: I3db8f16ae7fa5e18675eefb29684f6ef07434683
Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
Big cores' power consumption and gpu's are greatly reduced, ipa parameters
are ajusted accordingly.
Change-Id: Ibfdae1856c2f1c2cf80a0a2f963ec878053c6ef0
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
Some evb3 need 1v for 800M.
We remove 700M currently since havn't a good opinion of it.
Change-Id: I7083857f5bb8a09efe0369a6bdd49e28c67da8b7
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
We found that the suspend process was blocked when it run into
ehci/ohci module due to clk-480m of usb2-phy was disabled.
The root cause is that usb2-phy suspended earlier than ehci/ohci
(usb2-phy will be auto suspended if no devices plug-in). and the
clk-480m provided by it was diabled if no module used. However,
some suspend process related ehci/ohci are base on this clock,
so we should refer it into ehci/ohci driver to prevent this case.
Change-Id: Ic5e70a4234382e5cd1e1690e5174891e89360741
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
Update version to v7.0, main features:
1. new algorithm which is independent of time calculation in almost case,
2. remove charger detect to driver: rk818-charger.c;
3. save algorithm calculation rest value for next system power on calculation;
4. recognize system halt and reset dsoc as rsoc;
5. support hardware sample resistor selected as 10mR or 20mR;
6. optimize zero algorithm to make discharge figure more smooth;
7. fix some logic bugs.
Change-Id: I789d070693ac16102ecbe813d878a2a3c256c030
Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
Make dts files in order as follows:
rk3399.dtsi
rk3399-box.dtsi
rk3399-box-rev1.dts
rk3399-box-rev2.dts
...
Change-Id: I93d1fb4380d0c84a14fc3476b7435b1abe4989d2
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
fix up the warning:
Line 246: rate_table->nf = nf_out;
drivers/clk/rockchip/clk-pll.c:246:19: warning: 'nf_out' may be used uninitialized in this function [-Wmaybe-uninitialized]
Change-Id: I6c11bf91a280f324c21214cb7839e36f9ffa0da3
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Due to refer to incorrect diagram, the bits of theXpll_aclk_perihp_src
and Xpll_aclk_emmc_src are incorrect, let's fix them.
Change-Id: I1054d172c8a1897da16287a01bfc5d83126d9666
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Arm64 dma-mapping will return dummy_dma_ops if none call arch_setup_dma_ops
at device creation time.
For ion APIS, ion_pages_sync_for_device and ion_pages_sync_for_cpu always
pass "NULL" as device, then dma-mapping return dummy_dma_ops, which cause
ion pages fail to sync.
This patch fixs __generic_dma_ops to return swiotlb_dma_ops instead of
dummy_dma_ops.
Change-Id: Ic00db5d4547bcd5f74e5fd155133fde408a05cdb
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
set pll sequence:
->set pll to slow mode or other plls
->set pll down
->set pll params
->set pll up
->wait pll lock status
->set pll to normal mode
To slove the system error:
rockchip_rk3399_wait_pll_lock: timeout waiting for pll to lock
rockchip_rk3399_pll_set_params: pll update unsucessful,
trying to restore old params
Change-Id: I62aecd9f292de5a3c7bcd8a87231785bf115159d
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>