Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp995713pxj; Thu, 27 May 2021 17:19:52 -0700 (PDT) X-Google-Smtp-Source: ABdhPJznoQmxEXqV1qo6pyVf2LOUxTQboPyzI+tTK1b6ZU4aQ81BR+kBU12UMJCSFQ7cm6/CcCQX X-Received: by 2002:a05:6402:14d2:: with SMTP id f18mr7228635edx.259.1622161192419; Thu, 27 May 2021 17:19:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622161192; cv=none; d=google.com; s=arc-20160816; b=cDb56mdtYPCph5kAXu1tCXrsMu2ZEd6nrr3GRnIdxP9R9ZSvLmGvIDTMZHtu17xIxn Vv5LGMIETT51YHiMm8P2+zrZwf+QqTyLO3WUZXiq6P3fCYELFX5GbGe+1MbobT97zjfH UisyHDSt3GRZrs3FUr3xB/yt4T99erj0wWGKBtzbViG60FCjHvk4EVMAHgnyfB7DH5Jd XmErrVjO9yaLlBUDeh+Ebj4NGno2r+v+7S0jdKA0sBh8h4Oiww3YlD34jBVtxVsr/fC6 B8mBGYml39bu8WfGQBOvLNwwY9IvkfxfDQxhL7/iQDxp1+iniYfAqs+fYlGy2WQGf8+8 oc0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=PpqN4kjAEaQ1lNEbWZFWWvyZchVcbQpIGJpsBvV2LWU=; b=Remv5vzjelca8rRg5BRiicnobZcn0haSI7N975sefCDJAAQQRhjMCMNpTxHTz9gdus BJyxr9dbv2VyL/W7HzR8TQj+2CJdq9K0FC4QNGBtXhFXhZBGxxzaiue4PMrUYrF6Z8Su HDjLBR42TJmMZgb2lEJeQIjRCJu1Mxc009CX4PYuldbpv8nkLEoWeP3H9dr9/7pU/lHM 6NNHhq/SJBsc7Qhi9ga5BYNK2BDlGicKfcbDh4gDuGj0LRlrZdqglk38w6rE5MQyd+Fm mt1mwXj0oTuFHzUmGiuU/WvFEwcWqS4cQ4GTFrVImOgmGElqMZJEigQNiy/HyuMTig0A sD2Q== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=crapouillou.net Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id a1si1593170eje.359.2021.05.27.17.19.29; Thu, 27 May 2021 17:19:52 -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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=crapouillou.net Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236587AbhE0XWu (ORCPT + 99 others); Thu, 27 May 2021 19:22:50 -0400 Received: from aposti.net ([89.234.176.197]:35876 "EHLO aposti.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236567AbhE0XWs (ORCPT ); Thu, 27 May 2021 19:22:48 -0400 From: Paul Cercueil To: David Airlie , Daniel Vetter , Thomas Zimmermann , Maxime Ripard Cc: list@opendingux.net, linux-mips@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Neil Armstrong , Paul Cercueil Subject: [PATCH 00/11] ingenic-drm cleanups and doublescan feature Date: Fri, 28 May 2021 00:20:54 +0100 Message-Id: <20210527232104.152577-1-paul@crapouillou.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, Here is a set of 11 patches for the ingenic-drm driver. Patches 1-7 are mostly generic cleanups, which will grease up the way for bigger changes to be introduced. Patch 3 adds support for a private state structure, which is then used to store state-specific information, which was previously stored in the driver's private structure directly. Patch 10 is the big one; it adds a double-scan feature emulated with DMA descriptors. This trick makes it possible to support a handful of boards which have strange panels with non-square pixels (320x480 4:3). Patch 11 updates the driver to support one top-level bridge per encoder, as it seems to be the norm now. Cheers, -Paul Paul Cercueil (11): drm/ingenic: Remove dead code drm/ingenic: Simplify code by using hwdescs array drm/ingenic: Add support for private objects drm/ingenic: Move no_vblank to private state drm/ingenic: Move IPU scale settings to private state drm/ingenic: Set DMA descriptor chain register when starting CRTC drm/ingenic: Upload palette before frame drm/ingenic: Support custom GEM object drm/ingenic: Add ingenic_drm_gem_fb_destroy() function drm/ingenic: Add doublescan feature drm/ingenic: Attach bridge chain to encoders drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 414 ++++++++++++++++++---- drivers/gpu/drm/ingenic/ingenic-ipu.c | 127 ++++++- 2 files changed, 458 insertions(+), 83 deletions(-) -- 2.30.2