From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753312AbcGTDCo (ORCPT ); Tue, 19 Jul 2016 23:02:44 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:59642 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1753271AbcGTDCl (ORCPT ); Tue, 19 Jul 2016 23:02:41 -0400 From: Yong Wu To: Matthias Brugger , David Airlie , Philipp Zabel , Hans Verkuil CC: Mauro Carvalho Chehab , Tiffany Lin , Honghui Zhang , Bibby Hsieh , YT Shen , CK Hu , Daniel Kurtz , Tomasz Figa , Arnd Bergmann , Lucas Stach , , , , , , , Yong Wu Subject: [PATCH 3/3] vcodec: mediatek: Add probe-defer for MTK IOMMU and SMI Date: Wed, 20 Jul 2016 11:02:01 +0800 Message-ID: <1468983721-3627-3-git-send-email-yong.wu@mediatek.com> X-Mailer: git-send-email 1.8.1.1.dirty In-Reply-To: <1468983721-3627-1-git-send-email-yong.wu@mediatek.com> References: <1468983721-3627-1-git-send-email-yong.wu@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-MTK: N Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Mediatek V4l2 depend on the IOMMU and SMI. we should add probe-defer to wait for the IOMMU and SMI is ready. Signed-off-by: Yong Wu --- drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_pm.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_pm.c b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_pm.c index 4c977b2..9e6203e 100644 --- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_pm.c +++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_pm.c @@ -66,6 +66,11 @@ int mtk_vcodec_init_enc_pm(struct mtk_vcodec_dev *mtkdev) pdev = mtkdev->plat_dev; pm->dev = &pdev->dev; + /* Wait until MTK IOMMU and SMI probe done.*/ + if (!mtk_smi_larb_is_ready(pm->larbvenc) || + !mtk_smi_larb_is_ready(pm->larbvenclt)) + return -EPROBE_DEFER; + pm->vencpll_d2 = devm_clk_get(&pdev->dev, "venc_sel_src"); if (IS_ERR(pm->vencpll_d2)) { mtk_v4l2_err("devm_clk_get vencpll_d2 fail"); -- 1.8.1.1.dirty