From patchwork Wed Feb 1 07:47:51 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrzej Hajda X-Patchwork-Id: 9549053 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 68A1060425 for ; Wed, 1 Feb 2017 07:49:50 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5A09B28338 for ; Wed, 1 Feb 2017 07:49:50 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4AEA82840E; Wed, 1 Feb 2017 07:49:50 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id CBD4028338 for ; Wed, 1 Feb 2017 07:49:49 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 5B7056E7A5; Wed, 1 Feb 2017 07:48:06 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mailout4.w1.samsung.com (mailout4.w1.samsung.com [210.118.77.14]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1E7186E775 for ; Wed, 1 Feb 2017 07:48:02 +0000 (UTC) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout4.w1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0OKO00MYER000650@mailout4.w1.samsung.com> for dri-devel@lists.freedesktop.org; Wed, 01 Feb 2017 07:48:00 +0000 (GMT) Received: from eusmges2.samsung.com (unknown [203.254.199.241]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20170201074759eucas1p117f530f597c6374ac612f52eb940e13a~fGkOrgMtK1258412584eucas1p1m; Wed, 1 Feb 2017 07:47:59 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges2.samsung.com (EUCPMTA) with SMTP id D3.2D.30614.FA291985; Wed, 1 Feb 2017 07:47:59 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20170201074759eucas1p18b8296e5837b6a5c90d72a676c5a56a1~fGkN85y631610916109eucas1p1Y; Wed, 1 Feb 2017 07:47:59 +0000 (GMT) X-AuditID: cbfec7f1-f793f6d000007796-1c-589192af95cb Received: from eusync1.samsung.com ( [203.254.199.211]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 86.95.06687.3F291985; Wed, 1 Feb 2017 07:49:07 +0000 (GMT) Received: from AMDC2768.DIGITAL.local ([106.120.43.17]) by eusync1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0OKO00GROQZTN370@eusync1.samsung.com>; Wed, 01 Feb 2017 07:47:59 +0000 (GMT) From: Andrzej Hajda To: Archit Taneja , dri-devel@lists.freedesktop.org Subject: [PATCH v3 24/25] drm/bridge/sii8620: enable MHL3 mode if possible Date: Wed, 01 Feb 2017 08:47:51 +0100 Message-id: <1485935272-17337-25-git-send-email-a.hajda@samsung.com> X-Mailer: git-send-email 2.7.4 In-reply-to: <1485935272-17337-1-git-send-email-a.hajda@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprKIsWRmVeSWpSXmKPExsWy7djPc7rrJ02MMLh9QcmiqeMtq8WVr+/Z HJg8Lvf1Mnnc7z7OFMAUxWWTkpqTWZZapG+XwJXxYN9UxoJ5whUfv+5kamDcLNDFyMkhIWAi 0d99mx3CFpO4cG89WxcjF4eQwFJGiZ5Xy1ggnM+MEmufH2PuYuQA69i4lQOkQUhgGaPEw50m EDX/GSU+Xe0Em8QmoCnxd/NNNhBbRMBbYs7qPkYQW1jAS+LV51WsIDaLgKrEmy8fwGp4BVwk Tk9uY4K4Qk7i5rlOZhCbEyj+fOEcsCMkBNawSTS9nsgIcYSsxKYDUPe4SHT8sIFoFZZ4dXwL 1DMyEp0dB5kgWruBbus/wQ7hTGGU+PdhBjNElbXE4eMXwQ5iFuCTmLRtOtRQXomONiGIEg+J S/+usELYjhJLluxlh3h4OqPEsyutLBMYpRcwMqxiFEktLc5NTy020itOzC0uzUvXS87P3cQI jKzT/45/3MH4/oTVIUYBDkYlHt4ZJydECLEmlhVX5h5ilOBgVhLhndE/MUKINyWxsiq1KD++ qDQntfgQozQHi5I4754FV8KFBNITS1KzU1MLUotgskwcnFINjM4ljRVFtaUr8sQu7Yr7UfTo yPppiUY2LVWTWwvaDVgmT/0ZmmH/JlW0webkgSKnN1IB+jqZC6W3BfuGKn810ZrD933fvybV lI5Zim2f54VX80SKNJmIetpaPPqQK1TEpHjbMHBtx/WPLPvMYhLPnIvrvJreojFVNDjqVHnx qQ/8Mh6W2+SUWIozEg21mIuKEwHb2yplqAIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrKLMWRmVeSWpSXmKPExsVy+t/xy7qfJ02MMDhzy8KiqeMtq8WVr+/Z HJg8Lvf1Mnnc7z7OFMAU5WaTkZqYklqkkJqXnJ+SmZduqxQa4qZroaSQl5ibaqsUoesbEqSk UJaYUwrkGRmgAQfnAPdgJX27BLeMB/umMhbME674+HUnUwPjZoEuRg4OCQETiY1bOboYOYFM MYkL99azdTFycQgJLGGUeN36nRXCaWSSmDfhDTNIFZuApsTfzTfZQGwRAW+JOav7GEFsYQEv iVefV7GC2CwCqhJvvnwAq+EVcJE4PbmNCWKDnMTNc51gcziB4s8XzmEBsYUEnCW+3Z3FPoGR ZwEjwypGkdTS4tz03GJDveLE3OLSvHS95PzcTYzAINt27OfmHYyXNgYfYhTgYFTi4f1wekKE EGtiWXFl7iFGCQ5mJRHeGf0TI4R4UxIrq1KL8uOLSnNSiw8xmgIdNZFZSjQ5HxgBeSXxhiaG 5paGRsYWFuZGRkrivCUfroQLCaQnlqRmp6YWpBbB9DFxcEo1MFZu1bzaacXOHR1zk00s5lb3 71MRYrfWq500v8SkcO9TQd/S55HZdn/8I0yz/szxsItjyZ1pfSVAscjXpSs37OqZGS/i/S9W GSw7paJw/t/KJo7Qt11qfWveb5R4cmJegAFL+iKZ534KOi1RKlvCPUvPmzTpZkv6PE6+9t53 a+uDCU+/LzTdrMRSnJFoqMVcVJwIAMhG8AlIAgAA X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20170201074759eucas1p18b8296e5837b6a5c90d72a676c5a56a1 X-Msg-Generator: CA X-Sender-IP: 182.198.249.179 X-Local-Sender: =?UTF-8?B?QW5kcnplaiBIYWpkYRtTUlBPTC1LZXJuZWwgKFRQKRvsgrw=?= =?UTF-8?B?7ISx7KCE7J6QG1NlbmlvciBTb2Z0d2FyZSBFbmdpbmVlcg==?= X-Global-Sender: =?UTF-8?B?QW5kcnplaiBIYWpkYRtTUlBPTC1LZXJuZWwgKFRQKRtTYW1z?= =?UTF-8?B?dW5nIEVsZWN0cm9uaWNzG1NlbmlvciBTb2Z0d2FyZSBFbmdpbmVlcg==?= X-Sender-Code: =?UTF-8?B?QzEwG0VIURtDMTBDRDAyQ0QwMjczOTI=?= CMS-TYPE: 201P X-HopCount: 7 X-CMS-RootMailID: 20170201074759eucas1p18b8296e5837b6a5c90d72a676c5a56a1 X-RootMTR: 20170201074759eucas1p18b8296e5837b6a5c90d72a676c5a56a1 References: <1485935272-17337-1-git-send-email-a.hajda@samsung.com> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP Since all sub-protocols of MHL3 are already supported MHL3 mode can be enabled. With this patch it is possible to use packed pixel modes and clocks up to 300MHz - 1920x1080@60Hz and 4K modes. Signed-off-by: Andrzej Hajda --- drivers/gpu/drm/bridge/sil-sii8620.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/drivers/gpu/drm/bridge/sil-sii8620.c b/drivers/gpu/drm/bridge/sil-sii8620.c index be7be3c..7cfa1a7 100644 --- a/drivers/gpu/drm/bridge/sil-sii8620.c +++ b/drivers/gpu/drm/bridge/sil-sii8620.c @@ -1403,8 +1403,7 @@ static void sii8620_mhl_init(struct sii8620 *ctx) ); sii8620_disable_gen2_write_burst(ctx); - /* currently MHL3 is not supported, so we force version to 0 */ - sii8620_mt_write_stat(ctx, MHL_DST_REG(VERSION), 0); + sii8620_mt_write_stat(ctx, MHL_DST_REG(VERSION), SII8620_MHL_VERSION); sii8620_mt_write_stat(ctx, MHL_DST_REG(CONNECTED_RDY), MHL_DST_CONN_DCAP_RDY | MHL_DST_CONN_XDEVCAPP_SUPP | MHL_DST_CONN_POW_STAT); @@ -1671,14 +1670,16 @@ static void sii8620_irq_g2wb(struct sii8620 *ctx) sii8620_write(ctx, REG_MDT_INT_0, stat); } -static void sii8620_status_changed_dcap(struct sii8620 *ctx) +static void sii8620_status_dcap_ready(struct sii8620 *ctx) { - if (ctx->stat[MHL_DST_CONNECTED_RDY] & MHL_DST_CONN_DCAP_RDY) { - sii8620_set_mode(ctx, CM_MHL1); - sii8620_peer_specific_init(ctx); - sii8620_write(ctx, REG_INTR9_MASK, BIT_INTR9_DEVCAP_DONE - | BIT_INTR9_EDID_DONE | BIT_INTR9_EDID_ERROR); - } + enum sii8620_mode mode; + + mode = ctx->stat[MHL_DST_VERSION] >= 0x30 ? CM_MHL3 : CM_MHL1; + if (mode > ctx->mode) + sii8620_set_mode(ctx, mode); + sii8620_peer_specific_init(ctx); + sii8620_write(ctx, REG_INTR9_MASK, BIT_INTR9_DEVCAP_DONE + | BIT_INTR9_EDID_DONE | BIT_INTR9_EDID_ERROR); } static void sii8620_status_changed_path(struct sii8620 *ctx) @@ -1706,8 +1707,8 @@ static void sii8620_msc_mr_write_stat(struct sii8620 *ctx) sii8620_update_array(ctx->stat, st, MHL_DST_SIZE); sii8620_update_array(ctx->xstat, xst, MHL_XDS_SIZE); - if (st[MHL_DST_CONNECTED_RDY] & MHL_DST_CONN_DCAP_RDY) - sii8620_status_changed_dcap(ctx); + if (ctx->stat[MHL_DST_CONNECTED_RDY] & MHL_DST_CONN_DCAP_RDY) + sii8620_status_dcap_ready(ctx); if (st[MHL_DST_LINK_MODE] & MHL_DST_LM_PATH_ENABLED) sii8620_status_changed_path(ctx);