|
@@ -118,6 +118,7 @@ int dsi_pll_init(struct platform_device *pdev, struct dsi_pll_resource **pll)
|
|
|
int rc = 0;
|
|
|
const char *label;
|
|
|
struct dsi_pll_resource *pll_res = NULL;
|
|
|
+ bool in_trusted_vm = false;
|
|
|
|
|
|
if (!pdev->dev.of_node) {
|
|
|
pr_err("Invalid DSI PHY node\n");
|
|
@@ -201,6 +202,14 @@ int dsi_pll_init(struct platform_device *pdev, struct dsi_pll_resource **pll)
|
|
|
return -ENOMEM;
|
|
|
}
|
|
|
|
|
|
+ in_trusted_vm = of_property_read_bool(pdev->dev.of_node,
|
|
|
+ "qcom,dsi-pll-in-trusted-vm");
|
|
|
+ if (in_trusted_vm) {
|
|
|
+ DSI_PLL_INFO(pll_res,
|
|
|
+ "Bypassing PLL clock register for Trusted VM\n");
|
|
|
+ return rc;
|
|
|
+ }
|
|
|
+
|
|
|
rc = dsi_pll_clock_register(pdev, pll_res);
|
|
|
if (rc) {
|
|
|
DSI_PLL_ERR(pll_res, "clock register failed rc=%d\n", rc);
|