Received: by 2002:ac0:aa62:0:0:0:0:0 with SMTP id w31-v6csp3634975ima; Tue, 23 Oct 2018 08:53:07 -0700 (PDT) X-Google-Smtp-Source: ACcGV61RbZzoX/Y9WCeTNMejrRou3z8BowoV04l9lIYcWgdyeaMg6dJ75QFiqjc/hfZJGzop7r66 X-Received: by 2002:a17:902:76c3:: with SMTP id j3-v6mr49604039plt.339.1540309987087; Tue, 23 Oct 2018 08:53:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1540309987; cv=none; d=google.com; s=arc-20160816; b=h2kWtUSix70+qD5tWliPt/mbRhjPgOBaVJL2MTHKxONYNeL7pF/NnEPQdFVZHXyI2U lQVYsgygD3O5I9mXTi/AR1hNH08G2MDbaPg1UE5TDFBQv7O7gSwq/zg36SilkPNtZJk4 yrSapXCs7wIehqhy8oeJj1XwzDPtXSnHIIR7pD1eU50hGLZvvllIb+d8DZemsCoBHO8p liisAI545oHAKYNoq+WzqjQQ/fDWEVe9NwZrQCKBQ50odwjsvYBcajoxHcevRFpEgkDx cDxGa2mPhY/wjWVEpt75HT8OnGhbcr7XWT1n4Q13qA8wd1UavOvYABhVG6Bv27HHUNFl zhgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=h3lvXaaEY5R/F0dznPRLXAqH2n34ZCnPFDUOB+iRgwM=; b=OmeuMKmEDOepGAjht5IIMblWtl5cOivPS7UG+9N7kWJDXS4l3d1kIDm5vUE8ajlmVc FzE3N7o4XV//ZHlln1CplyQ8icKbusarIGf26T5y3FxAhcr8C8VOQ8DeDYoAnwGOHeCp EvcloXpREHv3Z7UNUUKaklRv96x3WKbLefpYtZrHuZzPJpXRtTlfctxsA/59SrsKyL7G HEdZts8mIhYE9CWscizPxGmUwWiyVoOW4rLRsUGK9xIWXx3bQrbduLR1PMIkdpLsQ4Ba 9TzUaj4dTDVj1kHuEaWNGAB2l2KDQ7bAvWwi7xnCDNciK1g/0QvMBXZgnklodslq4b0b bXoQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=iTnr6UYV; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x15-v6si1628705pgj.566.2018.10.23.08.52.51; Tue, 23 Oct 2018 08:53:07 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=iTnr6UYV; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728590AbeJXAPr (ORCPT + 99 others); Tue, 23 Oct 2018 20:15:47 -0400 Received: from mail-pg1-f195.google.com ([209.85.215.195]:33115 "EHLO mail-pg1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728275AbeJXAPq (ORCPT ); Tue, 23 Oct 2018 20:15:46 -0400 Received: by mail-pg1-f195.google.com with SMTP id z2-v6so870548pgp.0 for ; Tue, 23 Oct 2018 08:51:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=h3lvXaaEY5R/F0dznPRLXAqH2n34ZCnPFDUOB+iRgwM=; b=iTnr6UYVsIoWa/9U1/cxKRVTlP61bw/A7blbPeW9txXE/4aYxmUTnhhHSllDM+ds6R qAlXmWuCEGixsNkVFuRzXoskq0UCmXwm6/W8bzrB4uACgc1h3rfCAo2kzVmUxEe2qI6A K9lULq0o7B++akpf8bVtO0sg50gwt3iGU1KmU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=h3lvXaaEY5R/F0dznPRLXAqH2n34ZCnPFDUOB+iRgwM=; b=lXUqbUpYFzYteARpht/TbQStIO0HniOCQdEJ4UQ9cMzK6Go4YPcXA9m0jENTyLA3O5 nYrJ/41eFMtV0Knsw/85NWWuHSIcEDJnwXZWyWA7401CMfCnhLscvCzlE9sHAFF5Gmyj Y79IFvubcvbs/b0v9VHJxM5q/zgFzTGSemHzjAQ+j99Qru9jPNRhLsfZigXg6gGbECVO oF3y9FgdMKZGFF7nyz8ed9iGkEUL22kTseVwrR+E4Co/85JY+t5PzdX98RgSSGxdXsBf K6voahI4eB0vpA/VBIoRcWTbBL8TYZt6rwAm4FmRBcAJ5+DYYnA5tq1rA5G13OD3Nxwr iVgg== X-Gm-Message-State: ABuFfojK7XuqzLL7PgCy+h07Lh5ZjBUAuCOgN/Jh7XU+e3vtMCpnzC1K LZNeQl/aATvSeFhzVC43JO+R7w== X-Received: by 2002:a62:d085:: with SMTP id p127-v6mr24325213pfg.202.1540309909705; Tue, 23 Oct 2018 08:51:49 -0700 (PDT) Received: from localhost.localdomain ([27.7.51.1]) by smtp.gmail.com with ESMTPSA id o75-v6sm7442829pfg.0.2018.10.23.08.51.44 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 23 Oct 2018 08:51:49 -0700 (PDT) From: Jagan Teki To: Maxime Ripard , Chen-Yu Tsai , Icenowy Zheng , Jernej Skrabec , Vasily Khoruzhick , Rob Herring , Mark Rutland , Catalin Marinas , Will Deacon , David Airlie , dri-devel@lists.freedesktop.org, Michael Turquette , Stephen Boyd , linux-clk@vger.kernel.org, Michael Trimarchi , linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-sunxi@googlegroups.com Cc: Jagan Teki Subject: [PATCH v2 09/15] drm/sun4i: sun6i_mipi_dsi: Refactor vertical video start delay Date: Tue, 23 Oct 2018 21:20:29 +0530 Message-Id: <20181023155035.9101-10-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.18.0.321.gffc6fa0e3 In-Reply-To: <20181023155035.9101-1-jagan@amarulasolutions.com> References: <20181023155035.9101-1-jagan@amarulasolutions.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Accordingly to BPI-M64-bsp DE DSI code Video start delay can be computed by subtracting total vertical timing with front porch timing and with adding 1 delay line for TCON. Video start delay is computed in BPI-M64-bsp code as linux-sunxi/drivers/video/sunxi/disp2/disp/de/lowlevel_sun50iw1/de_dsi.c u32 vfp = panel->lcd_vt - panel->lcd_y - panel->lcd_vbp; => (panel->lcd_vt) - panel->lcd_y - (panel->lcd_vbp) => (timmings->ver_front_porch + panel->lcd_vbp + panel->lcd_y) - panel->lcd_y - (panel->lcd_vbp) => timmings->ver_front_porch + panel->lcd_vbp + panel->lcd_y - panel->lcd_y - panel->lcd_vbp => timmings->ver_front_porch So, update the start delay computation accordingly. Signed-off-by: Jagan Teki --- Changes for v2: - Add detailed commit message drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c index 8d154cf2e6d6..6bece492b1f7 100644 --- a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c +++ b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c @@ -358,7 +358,17 @@ static void sun6i_dsi_inst_init(struct sun6i_dsi *dsi, static u16 sun6i_dsi_get_video_start_delay(struct sun6i_dsi *dsi, struct drm_display_mode *mode) { - return mode->vtotal - (mode->vsync_end - mode->vdisplay) + 1; + u32 vfp = mode->vsync_start - mode->vdisplay; + u32 start_delay; + + start_delay = mode->vtotal - vfp + 1; + if (start_delay > mode->vtotal) + start_delay -= mode->vtotal; + + if (!start_delay) + start_delay = 1; + + return start_delay; } static void sun6i_dsi_setup_burst(struct sun6i_dsi *dsi, -- 2.18.0.321.gffc6fa0e3