Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp1174047ybt; Sun, 14 Jun 2020 13:06:03 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyXAMz3vGqiL53de/6bFsfgNd1vaGnf/ZB0u7pNewniXFwoHClFAWF7Cvib5zQ/y3pkmBSH X-Received: by 2002:a17:906:7e19:: with SMTP id e25mr22175152ejr.319.1592165163048; Sun, 14 Jun 2020 13:06:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592165163; cv=none; d=google.com; s=arc-20160816; b=nnGRsCO9+vhVCweIfyieDt9B7B4D2DXl8JXpyDIhHW8lCO5EoNyQuLXqAeJBLFgyOF 8i3Sbu9V0bwnNobdhEg+lQnamK1zwfJU1pTAjDvM4huOXz6jvYHWeCF234ROWBMw/19D TRWOdH5DEpa3OqiX+UfV3fGi4Tue4/uADIs4ha62RoE5tyLE5z9MVeZgRU0g0xe4z+df nzwNGnpvy+5feGIXh6P/6gQffhI1r7uRQDiOP1ps97usmInMgpujUGgnyOiJ8ORnYx8q 9ZujPHaH+j8jOPB3ISiFAqNHpmXTRhe2nqOaedcD/Kdq47YuO5q8p+9iZZK8WKlyBLPk 3RVA== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=eyeaYzeQX7ccLjnwiymvagyxejIqtIT2ra5PuWujjzM=; b=Fz8Y97QW8e2DTN/sVp/alA326h7UJK6m8nSYswrCTUBoRtaL9D5QfOiN89K5G0WE2P MgcPVp1QZfUMs1E3gBSQ654tJlOPCx418j2lhH2HVlzXbgZQie/9MBtzprEG9JQHvpF1 moZDdtyQG+WOJpuDnUvUcuKXmyS30w2bUfPOs7RkbqiSxYK6m9Pl8S+bmlZ1QuSD4LlU /2TC8+jjDB0mCa8HmY9BlUrHVrbZBzF1kYJFDdeAjECq3dG5D1x3TzlqepWlH9opWm3G uOILVJraVpe5vTguVvJLCk//GG4t9k+IZzPvnbpS1xtd6yGlF5ex4ZBLp7sahoLPsB1S rtHA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=huWfunRd; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id i9si8630812edn.437.2020.06.14.13.05.41; Sun, 14 Jun 2020 13:06:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=huWfunRd; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727928AbgFNUB7 (ORCPT + 99 others); Sun, 14 Jun 2020 16:01:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37450 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727866AbgFNUBp (ORCPT ); Sun, 14 Jun 2020 16:01:45 -0400 Received: from mail-lf1-x142.google.com (mail-lf1-x142.google.com [IPv6:2a00:1450:4864:20::142]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 38929C08C5C2; Sun, 14 Jun 2020 13:01:43 -0700 (PDT) Received: by mail-lf1-x142.google.com with SMTP id o4so642316lfi.7; Sun, 14 Jun 2020 13:01:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=eyeaYzeQX7ccLjnwiymvagyxejIqtIT2ra5PuWujjzM=; b=huWfunRd9o8izmq8clvCzaVTN/lEYRrSHD9pJ+wLb7vl0rdY72NAHw8wOmHniXhuDh amsqUmwpLcz+GON705A2GfRQG1iYBH2Twv/RioQ//2fGjFEcWniI5CEWPrm0wPePm+VD dcjgmUBX7+kWBXt+0B0zAFPNoFhyxJkGB8LSxiNjE8XH3m87IvGiaPQMJoMnSg0E1Eik A6nuQRbxkKOZFzGwNG9N/oGcpb7NVwPPrCFD3T7jTzsIFPS8HRgPs/DchYNJwk1mHXaU cJ3m203wFec2IkUbrtTQtg4L6SdvHRSBqwf5QHhr9Q/1ASpzM9T07wxc852GGu6kXbl6 H9aQ== 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:mime-version :content-transfer-encoding; bh=eyeaYzeQX7ccLjnwiymvagyxejIqtIT2ra5PuWujjzM=; b=c/EP2RcBKL0s6XnYut+0aE2ULWfLv/5MhQNXq/MDGiOJ9+oavN1EPOCzDt4lkELTOR PJ9lr/R22B1Y5Rf5DrVr6ptkzCrhAm3JS5T9tL9mknWOqEP9bjVW2a7HpME1XZ8wDkLX SdGe/p0NI4xzR3AxYVP9kD2mBKebo0DGlKB7urZGfseO+Aqqy5jn65Y2TYvF/Lu+D0hi vWV9ypK9IlpD9CCG7xDlvPirufy+02OWsX8iI+uTCbE8ebcQMSJkbc8JDVoasAtplIlO +p2KtwazDn/J2RHgxxAfgG1mW0lZ+PeT1em8xCzjGknPkC/l5XaUjcIdIKaOD49tiJ63 zo3w== X-Gm-Message-State: AOAM530prMVkX34TbeGDeINFxrF/7Kv8FTtYpaLHiPhrLlX3XwbxZqAl 7SvHamDAmIAInDJEEgF3x1M= X-Received: by 2002:a19:c3d5:: with SMTP id t204mr11970529lff.50.1592164901434; Sun, 14 Jun 2020 13:01:41 -0700 (PDT) Received: from localhost.localdomain (79-139-237-54.dynamic.spd-mgts.ru. [79.139.237.54]) by smtp.gmail.com with ESMTPSA id 144sm1422105lfm.87.2020.06.14.13.01.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Jun 2020 13:01:40 -0700 (PDT) From: Dmitry Osipenko To: Thierry Reding , Thomas Zimmermann , Derek Basehore , Sam Ravnborg , Laurent Pinchart , Sean Paul Cc: dri-devel@lists.freedesktop.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 0/5] 180 degrees rotation support for NVIDIA Tegra DRM Date: Sun, 14 Jun 2020 23:01:16 +0300 Message-Id: <20200614200121.14147-1-digetx@gmail.com> X-Mailer: git-send-email 2.26.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello! This series adds 180° display plane rotation support to the NVIDIA Tegra DRM driver which is needed for devices that have display panel physically mounted upside-down, like Nexus 7 tablet device for example [1]. Since DRM panel rotation is a new thing for a userspace, currently only Opentegra Xorg driver handles the rotated display panel [2], but this is good enough for the start. Note that later on it should be possible to implement a transparent 180° display rotation for Tegra DRM driver which will remove the need to have a bleeding edge userspace that knows how to rotate display planes and I'm slowly working on it. For the starter we can go with the minimal rotation support, so it's not a blocker. This series is based on the work that was made by Derek Basehore for the Mediatek driver [3], his patch is included into this patchset. I added my tested-by tag to the Derek's patch. Please review and apply, thanks in advance! [1] https://patchwork.ozlabs.org/project/linux-tegra/patch/20200607154327.18589-3-digetx@gmail.com/ [2] https://github.com/grate-driver/xf86-video-opentegra/commit/28eb20a3959bbe5bc3a3b67e55977093fd5114ca [3] https://lkml.org/lkml/2020/3/5/1119 Changelog: v2: - Dropped "drm/panel: Set display info in panel attach" patch, which turned out to be obsolete now. - Renamed the cover-latter, hopefully this will fix the bouncing emails. Derek Basehore (1): drm/panel: Add helper for reading DT rotation Dmitry Osipenko (4): drm/panel: lvds: Set up panel orientation drm/tegra: plane: Rename bottom_up to reflect_y drm/tegra: plane: Support horizontal reflection mode drm/tegra: plane: Support 180° rotation drivers/gpu/drm/drm_panel.c | 43 ++++++++++++++++++++++++++++++ drivers/gpu/drm/panel/panel-lvds.c | 8 ++++++ drivers/gpu/drm/tegra/dc.c | 43 ++++++++++++++++++++++++------ drivers/gpu/drm/tegra/dc.h | 3 ++- drivers/gpu/drm/tegra/plane.c | 3 ++- drivers/gpu/drm/tegra/plane.h | 3 ++- include/drm/drm_panel.h | 9 +++++++ 7 files changed, 101 insertions(+), 11 deletions(-) -- 2.26.0