From patchwork Fri Jan 20 07:38:48 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrzej Hajda X-Patchwork-Id: 9527671 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 7A67060434 for ; Fri, 20 Jan 2017 07:40:38 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6A2B92860A for ; Fri, 20 Jan 2017 07:40:38 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5E5A928452; Fri, 20 Jan 2017 07:40:38 +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 DED6928452 for ; Fri, 20 Jan 2017 07:40:37 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id EA4E76EB61; Fri, 20 Jan 2017 07:39:25 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by gabe.freedesktop.org (Postfix) with ESMTPS id 667AC6EB32 for ; Fri, 20 Jan 2017 07:39:04 +0000 (UTC) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0OK200IZZIL3QI40@mailout1.w1.samsung.com> for dri-devel@lists.freedesktop.org; Fri, 20 Jan 2017 07:39:03 +0000 (GMT) Received: from eusmges1.samsung.com (unknown [203.254.199.239]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20170120073902eucas1p253cab72998e57978e6c8c84569fe7671~bas_8IPxA1833418334eucas1p2j; Fri, 20 Jan 2017 07:39:02 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges1.samsung.com (EUCPMTA) with SMTP id 84.B0.16908.89EB1885; Fri, 20 Jan 2017 07:39:04 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20170120073901eucas1p1f254c73eb4c49024b575f4ab02d56b65~bas_QWrss0439704397eucas1p1T; Fri, 20 Jan 2017 07:39:01 +0000 (GMT) X-AuditID: cbfec7ef-f79d26d00000420c-08-5881be98930d Received: from eusync1.samsung.com ( [203.254.199.211]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 7A.08.06687.0DEB1885; Fri, 20 Jan 2017 07:40:00 +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 <0OK200LE1IKT7D70@eusync1.samsung.com>; Fri, 20 Jan 2017 07:39:01 +0000 (GMT) From: Andrzej Hajda To: Archit Taneja , dri-devel@lists.freedesktop.org Subject: [PATCH 22/24] drm/bridge/sii8620: add HSIC initialization code Date: Fri, 20 Jan 2017 08:38:48 +0100 Message-id: <1484897930-1275-23-git-send-email-a.hajda@samsung.com> X-Mailer: git-send-email 2.7.4 In-reply-to: <1484897930-1275-1-git-send-email-a.hajda@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrLIsWRmVeSWpSXmKPExsWy7djPc7oz9jVGGHzfZWpxa905Voumjres FhtnrGe1uPL1PZvFpPsTWCzWHrnL7sDmcbmvl8njfvdxJo++LasYA5ijuGxSUnMyy1KL9O0S uDK2fdrOWrBHouLQkxeMDYwnRboYOTkkBEwkdva+Z4SwxSQu3FvP1sXIxSEksIxRorH7OAuE 85lRYvrUm2wwHWvuTWGGq7r36xhU1X9GicWXXrCCVLEJaEr83QzRISLgLTFndR/YDmaB9YwS 107FgdjCAu4S69sOg9WwCKhKbL3+BczmFXCWeLLhDzvENjmJm+c6mUFsTqD4+RtfmECWSQjc Z5O4vvE90GYOIEdWYtMBZoh6F4n3s89BXSos8er4Fqg5MhKdHQehersZJT71n2CHcKYwSvz7 MAOq21ri8PGLrBCX8klM2jadGWIBr0RHmxBEiYfE/Q3dLBC2o8Sd7W2sEN9PY5T4ffgI6wRG mQWMDKsYRVJLi3PTU4sN9YoTc4tL89L1kvNzNzECI/X0v+PvdzA+bQ45xCjAwajEw7vjREOE EGtiWXFl7iFGCQ5mJRHenvWNEUK8KYmVValF+fFFpTmpxYcYpTlYlMR59y64Ei4kkJ5Ykpqd mlqQWgSTZeLglGpgZDIOu7e1+mf+tuvzOvT+/kif/ulP3VfrT98WqW4V3WKiWmZVmcI4T+fw D4EHH2MMqw/tL1HbnZynlsYU9HRxsb226D9Gu82bJ86I2z3t1xu5xpggMy/Pja6VTwwCus/3 67u3eqv9y+Taty9hyoS3M0sXPxLjspjA9OXQ13l3jblLthybIlW3QomlOCPRUIu5qDgRAF4H MI3QAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrFLMWRmVeSWpSXmKPExsVy+t/xy7oX9jVGGDzba2Fxa905Voumjres FhtnrGe1uPL1PZvFpPsTWCzWHrnL7sDmcbmvl8njfvdxJo++LasYA5ij3GwyUhNTUosUUvOS 81My89JtlUJD3HQtlBTyEnNTbZUidH1DgpQUyhJzSoE8IwM04OAc4B6spG+X4Jax7dN21oI9 EhWHnrxgbGA8KdLFyMkhIWAisebeFGYIW0ziwr31bCC2kMASRokbxw26GLmA7EYmiW3/prGC JNgENCX+br4JViQi4C0xZ3UfI0gRs8B6Rompj/+ygySEBdwl1rcdBitiEVCV2Hr9C5jNK+As 8WTDH3aIbXISN891gm3mBIqfv/GFqYuRA2ibk8S1WbITGHkXMDKsYhRJLS3OTc8tNtQrTswt Ls1L10vOz93ECAzXbcd+bt7BeGlj8CFGAQ5GJR7ehGMNEUKsiWXFlbmHGCU4mJVEeHvWN0YI 8aYkVlalFuXHF5XmpBYfYjQFumkis5Rocj4wlvJK4g1NDM0tDY2MLSzMjYyUxHlLPlwJFxJI TyxJzU5NLUgtgulj4uCUamAs2ezwaXH1eS/pbQ17eTT/hzyte6F2bf+d+X/DZRRjVyzxmNgU /qybdznfokzJcrv+sD//o5758j1a87mQb+6DuXfvFq8rZf6Sx/J/rlaR7N9ptlu2roixefhs i3pbe+zxg2/5nnQv/dQyuelG8tNfD596dMibeU5ofGZpfOfuy8zYkEs5Pv+8lFiKMxINtZiL ihMBmhXrZ20CAAA= X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20170120073901eucas1p1f254c73eb4c49024b575f4ab02d56b65 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: 20170120073901eucas1p1f254c73eb4c49024b575f4ab02d56b65 X-RootMTR: 20170120073901eucas1p1f254c73eb4c49024b575f4ab02d56b65 References: <1484897930-1275-1-git-send-email-a.hajda@samsung.com> Cc: Marek Szyprowski , Bartlomiej Zolnierkiewicz 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 In case of MHL3 HSIC should be initialized. Signed-off-by: Andrzej Hajda --- drivers/gpu/drm/bridge/sil-sii8620.c | 38 ++++++++++++++++++++++++++++++++++++ drivers/gpu/drm/bridge/sil-sii8620.h | 10 ++++++---- 2 files changed, 44 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/bridge/sil-sii8620.c b/drivers/gpu/drm/bridge/sil-sii8620.c index 77c9fb2..50bfb3c 100644 --- a/drivers/gpu/drm/bridge/sil-sii8620.c +++ b/drivers/gpu/drm/bridge/sil-sii8620.c @@ -489,12 +489,50 @@ static void sii8620_sink_detected(struct sii8620 *ctx, int ret) sink_str[ctx->sink_type], sink_name); } +static void sii8620_hsic_init(struct sii8620 *ctx) +{ + if (!sii8620_is_mhl3(ctx)) + return; + + sii8620_write(ctx, REG_FCGC, + BIT_FCGC_HSIC_HOSTMODE | BIT_FCGC_HSIC_ENABLE); + sii8620_setbits(ctx, REG_HRXCTRL3, + BIT_HRXCTRL3_HRX_STAY_RESET | BIT_HRXCTRL3_STATUS_EN, ~0); + sii8620_setbits(ctx, REG_TTXNUMB, MSK_TTXNUMB_TTX_NUMBPS, 4); + sii8620_setbits(ctx, REG_TRXCTRL, BIT_TRXCTRL_TRX_FROM_SE_COC, ~0); + sii8620_setbits(ctx, REG_HTXCTRL, BIT_HTXCTRL_HTX_DRVCONN1, 0); + sii8620_setbits(ctx, REG_KEEPER, MSK_KEEPER_MODE, VAL_KEEPER_MODE_HOST); + sii8620_write_seq_static(ctx, + REG_TDMLLCTL, 0, + REG_UTSRST, BIT_UTSRST_HRX_SRST | BIT_UTSRST_HTX_SRST | + BIT_UTSRST_KEEPER_SRST | BIT_UTSRST_FC_SRST, + REG_UTSRST, BIT_UTSRST_HRX_SRST | BIT_UTSRST_HTX_SRST, + REG_HRXINTL, 0xff, + REG_HRXINTH, 0xff, + REG_TTXINTL, 0xff, + REG_TTXINTH, 0xff, + REG_TRXINTL, 0xff, + REG_TRXINTH, 0xff, + REG_HTXINTL, 0xff, + REG_HTXINTH, 0xff, + REG_FCINTR0, 0xff, + REG_FCINTR1, 0xff, + REG_FCINTR2, 0xff, + REG_FCINTR3, 0xff, + REG_FCINTR4, 0xff, + REG_FCINTR5, 0xff, + REG_FCINTR6, 0xff, + REG_FCINTR7, 0xff + ); +} + static void sii8620_edid_read(struct sii8620 *ctx, int ret) { if (ret < 0) return; sii8620_set_upstream_edid(ctx); + sii8620_hsic_init(ctx); sii8620_enable_hpd(ctx); } diff --git a/drivers/gpu/drm/bridge/sil-sii8620.h b/drivers/gpu/drm/bridge/sil-sii8620.h index e42c1c3..30cc992 100644 --- a/drivers/gpu/drm/bridge/sil-sii8620.h +++ b/drivers/gpu/drm/bridge/sil-sii8620.h @@ -353,7 +353,7 @@ #define REG_TTXNUMB 0x0116 #define MSK_TTXNUMB_TTX_AFFCTRL_3_0 0xf0 #define BIT_TTXNUMB_TTX_COM1_AT_SYNC_WAIT BIT(3) -#define MSK_TTXNUMB_TTX_NUMBPS_2_0 0x07 +#define MSK_TTXNUMB_TTX_NUMBPS 0x07 /* TDM TX NUMSPISYM, default value: 0x04 */ #define REG_TTXSPINUMS 0x0117 @@ -433,12 +433,14 @@ /* HSIC Keeper, default value: 0x00 */ #define REG_KEEPER 0x0181 -#define MSK_KEEPER_KEEPER_MODE_1_0 0x03 +#define MSK_KEEPER_MODE 0x03 +#define VAL_KEEPER_MODE_HOST 0 +#define VAL_KEEPER_MODE_DEVICE 2 /* HSIC Flow Control General, default value: 0x02 */ #define REG_FCGC 0x0183 -#define BIT_FCGC_HSIC_FC_HOSTMODE BIT(1) -#define BIT_FCGC_HSIC_FC_ENABLE BIT(0) +#define BIT_FCGC_HSIC_HOSTMODE BIT(1) +#define BIT_FCGC_HSIC_ENABLE BIT(0) /* HSIC Flow Control CTR13, default value: 0xfc */ #define REG_FCCTR13 0x0191