Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp501399pxa; Tue, 4 Aug 2020 10:32:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzvQ3ebUD8aXO3xorKhY8U0uB2AwqhQ8O9AzP2wBeb3OU9qrwslRsdBTQj3ELk9QSpMeXZE X-Received: by 2002:a17:906:248d:: with SMTP id e13mr21756102ejb.169.1596562367902; Tue, 04 Aug 2020 10:32:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1596562367; cv=none; d=google.com; s=arc-20160816; b=EI0wFLiKNlcNGeAeI1/7WnGzsAwDMGjKGysGvbI7/abZTUXX8XPnYaZmUTKSHtj85b Bzzdq7MMZ6npU7rDF3WzrSkePlpb1UQX0EPQEJpMDyqCTJQGYmF+2Ia8tNbP5voIECdh uD5CSX7OMvFFsxcsx7iMG4lv9KYzF+wf7ySgkChN1lRQXopVCzPZ4pqu01XFS0WQFi3S k7cS0/p1Hhl8XZiislkgFl450S6rNM/QteviaD/EYC4joLUlKEOQJlsVu+viqRkVM/gV p8d+GG1fGe1Y7+4VMkfPD7IyKiii5Ogd9gZuIuSnaegRjDmTy0921jaXnfX5EHNNtUYO OFWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=HVp//CK+6rLxRJMM9r1UP/M8BdnJf0s/ldSZyxeNtz4=; b=HDCybY6ooLATsARgn53mBJpQeFz6YD3xHI78sIPzVXgRQIvLnvpqKGDhCch9IEmtLC o06qLFSyDPnpDNHQJepr2n1GCQzhEW+pwq2qZh8dhuFpHE1QS6I74biNgKMNgcoU/1QL y+6xFpGcrfiiUUdGlstgVTCSN7fArvAJujf3KkC9mO7nzLVLSL/o7WpnYIkjySrAmN9z tDuHa3x9XgxW2AZqzixjOHlJNfJ5OTpBwodfIGIpbkGX/XdC31dsn90C9XbGQ/YaJzcn qcTyvGdGYbdFahWqmKQ4b4vVdWJmUecSowPkn/fzDo8ZazcDK4wXdcFymNoyiXkeBW/C PJuA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=JRevYNBN; 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=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d13si13898263edo.419.2020.08.04.10.32.23; Tue, 04 Aug 2020 10:32:47 -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=@kernel.org header.s=default header.b=JRevYNBN; 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=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729760AbgHDR3j (ORCPT + 99 others); Tue, 4 Aug 2020 13:29:39 -0400 Received: from mail.kernel.org ([198.145.29.99]:37904 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729388AbgHDR3j (ORCPT ); Tue, 4 Aug 2020 13:29:39 -0400 Received: from mail-oo1-f43.google.com (mail-oo1-f43.google.com [209.85.161.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 1BD3422CA0 for ; Tue, 4 Aug 2020 17:29:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1596562178; bh=fPyrMoxW3DdTHdLUIrpyWjMr59NeWvPYgEa6po9ASiQ=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=JRevYNBNtUQZOWqX71J9Ftj7mLSzvIZNrcitqrj1kj7surR5vSA1zDznuZHl+Env8 rXVo3CS8xUI5dVJ1ucMmOU5rZuXDyAabEMeqshVm/WJMGzhx1Y1J6Wr7LGq2buA8CZ Qmw/PBbuPUauX1XsKiOZy6Z9hVJbDnwPzMSx546E= Received: by mail-oo1-f43.google.com with SMTP id g18so7326710ooa.0 for ; Tue, 04 Aug 2020 10:29:38 -0700 (PDT) X-Gm-Message-State: AOAM533ntMILoAx15diNpy4xIX5WiwqktkdKgcyiIg5GEJvuEwPQEuB4 yR6GjjPhhPXqX45OR8hdcxuxdrS4hCh/vs+avA== X-Received: by 2002:a4a:9c0f:: with SMTP id y15mr19609357ooj.81.1596562177278; Tue, 04 Aug 2020 10:29:37 -0700 (PDT) MIME-Version: 1.0 References: <1595930879-2478-1-git-send-email-kevin3.tang@gmail.com> In-Reply-To: From: Rob Herring Date: Tue, 4 Aug 2020 11:29:25 -0600 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH RFC v6 0/6] Add Unisoc's drm kms module To: Daniel Vetter , Kevin Tang Cc: Maarten Lankhorst , Maxime Ripard , Sean Paul , Dave Airlie , Mark Rutland , Orson Zhai , Lyra Zhang , Linux Kernel Mailing List , dri-devel Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jul 28, 2020 at 4:12 AM Daniel Vetter wrote: > > On Tue, Jul 28, 2020 at 12:08 PM Kevin Tang wrote: > > > > From: Kevin Tang > > Hm still no ack for dt bindings? We need that for merging. If it's not sent to the DT list so it gets into patchwork that's never going to happen. Nor are any semi-automated tests of the schema. > Also what's the maintainer plan here? Imo best would be to put this > into the drm-misc group maintainer model, with commit rights and all: > > https://drm.pages.freedesktop.org/maintainer-tools/drm-misc.html > > MAINTAINERS patch to do that would be good. > -Daniel > > > > > ChangeList: > > v1: > > 1. only upstream modeset and atomic at first commit. > > 2. remove some unused code; > > 3. use alpha and blend_mode properties; > > 3. add yaml support; > > 4. remove auto-adaptive panel driver; > > 5. bugfix > > > > v2: > > 1. add sprd crtc and plane module for KMS, preparing for multi crtc&encoder > > 2. remove gem drivers, use generic CMA handlers > > 3. remove redundant "module_init", all the sub modules loading by KMS > > > > v3: > > 1. multi crtc&encoder design have problem, so rollback to v1 > > > > v4: > > 1. update to gcc-linaro-7.5.0 > > 2. update to Linux 5.6-rc3 > > 3. remove pm_runtime support > > 4. add COMPILE_TEST, remove unused kconfig > > 5. "drm_dev_put" on drm_unbind > > 6. fix some naming convention issue > > 7. remove semaphore lock for crtc flip > > 8. remove static variables > > > > v5: > > 1. optimize encoder and connector code implementation > > 2. use "platform_get_irq" and "platform_get_resource" > > 3. drop useless function return type, drop unless debug log > > 4. custom properties should be separate, so drop it > > 5. use DRM_XXX replase pr_xxx > > 6. drop dsi&dphy hal callback ops > > 7. drop unless callback ops checking > > 8. add comments for sprd dpu structure > > > > v6: > > 1. Access registers via readl/writel > > 2. Checking for unsupported KMS properties (format, rotation, blend_mode, etc) on plane_check ops > > 3. Remove always true checks for dpu core ops > > > > Kevin Tang (6): > > dt-bindings: display: add Unisoc's drm master bindings > > drm/sprd: add Unisoc's drm kms master > > dt-bindings: display: add Unisoc's dpu bindings > > drm/sprd: add Unisoc's drm display controller driver > > dt-bindings: display: add Unisoc's mipi dsi&dphy bindings > > drm/sprd: add Unisoc's drm mipi dsi&dphy driver > > > > .../devicetree/bindings/display/sprd/dphy.yaml | 75 + > > .../devicetree/bindings/display/sprd/dpu.yaml | 82 ++ > > .../devicetree/bindings/display/sprd/drm.yaml | 36 + > > .../devicetree/bindings/display/sprd/dsi.yaml | 98 ++ > > drivers/gpu/drm/Kconfig | 2 + > > drivers/gpu/drm/Makefile | 1 + > > drivers/gpu/drm/sprd/Kconfig | 12 + > > drivers/gpu/drm/sprd/Makefile | 13 + > > drivers/gpu/drm/sprd/disp_lib.c | 57 + > > drivers/gpu/drm/sprd/disp_lib.h | 16 + > > drivers/gpu/drm/sprd/dphy/Makefile | 7 + > > drivers/gpu/drm/sprd/dphy/pll/Makefile | 3 + > > drivers/gpu/drm/sprd/dphy/pll/megacores_sharkle.c | 473 +++++++ > > drivers/gpu/drm/sprd/dphy/sprd_dphy_api.c | 201 +++ > > drivers/gpu/drm/sprd/dphy/sprd_dphy_api.h | 22 + > > drivers/gpu/drm/sprd/dpu/Makefile | 3 + > > drivers/gpu/drm/sprd/dpu/dpu_r2p0.c | 503 +++++++ > > drivers/gpu/drm/sprd/dsi/Makefile | 8 + > > drivers/gpu/drm/sprd/dsi/core/Makefile | 4 + > > drivers/gpu/drm/sprd/dsi/core/dsi_ctrl_r1p0.c | 964 +++++++++++++ > > drivers/gpu/drm/sprd/dsi/core/dsi_ctrl_r1p0.h | 1477 ++++++++++++++++++++ > > drivers/gpu/drm/sprd/dsi/core/dsi_ctrl_r1p0_ppi.c | 328 +++++ > > drivers/gpu/drm/sprd/dsi/core/dsi_ctrl_r1p0_ppi.h | 32 + > > drivers/gpu/drm/sprd/dsi/sprd_dsi_api.c | 590 ++++++++ > > drivers/gpu/drm/sprd/dsi/sprd_dsi_api.h | 26 + > > drivers/gpu/drm/sprd/sprd_dphy.c | 209 +++ > > drivers/gpu/drm/sprd/sprd_dphy.h | 50 + > > drivers/gpu/drm/sprd/sprd_dpu.c | 668 +++++++++ > > drivers/gpu/drm/sprd/sprd_dpu.h | 190 +++ > > drivers/gpu/drm/sprd/sprd_drm.c | 227 +++ > > drivers/gpu/drm/sprd/sprd_drm.h | 18 + > > drivers/gpu/drm/sprd/sprd_dsi.c | 571 ++++++++ > > drivers/gpu/drm/sprd/sprd_dsi.h | 108 ++ > > 33 files changed, 7074 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/display/sprd/dphy.yaml > > create mode 100644 Documentation/devicetree/bindings/display/sprd/dpu.yaml > > create mode 100644 Documentation/devicetree/bindings/display/sprd/drm.yaml > > create mode 100644 Documentation/devicetree/bindings/display/sprd/dsi.yaml > > create mode 100644 drivers/gpu/drm/sprd/Kconfig > > create mode 100644 drivers/gpu/drm/sprd/Makefile > > create mode 100644 drivers/gpu/drm/sprd/disp_lib.c > > create mode 100644 drivers/gpu/drm/sprd/disp_lib.h > > create mode 100644 drivers/gpu/drm/sprd/dphy/Makefile > > create mode 100644 drivers/gpu/drm/sprd/dphy/pll/Makefile > > create mode 100644 drivers/gpu/drm/sprd/dphy/pll/megacores_sharkle.c > > create mode 100644 drivers/gpu/drm/sprd/dphy/sprd_dphy_api.c > > create mode 100644 drivers/gpu/drm/sprd/dphy/sprd_dphy_api.h > > create mode 100644 drivers/gpu/drm/sprd/dpu/Makefile > > create mode 100644 drivers/gpu/drm/sprd/dpu/dpu_r2p0.c > > create mode 100644 drivers/gpu/drm/sprd/dsi/Makefile > > create mode 100644 drivers/gpu/drm/sprd/dsi/core/Makefile > > create mode 100644 drivers/gpu/drm/sprd/dsi/core/dsi_ctrl_r1p0.c > > create mode 100644 drivers/gpu/drm/sprd/dsi/core/dsi_ctrl_r1p0.h > > create mode 100644 drivers/gpu/drm/sprd/dsi/core/dsi_ctrl_r1p0_ppi.c > > create mode 100644 drivers/gpu/drm/sprd/dsi/core/dsi_ctrl_r1p0_ppi.h > > create mode 100644 drivers/gpu/drm/sprd/dsi/sprd_dsi_api.c > > create mode 100644 drivers/gpu/drm/sprd/dsi/sprd_dsi_api.h > > create mode 100644 drivers/gpu/drm/sprd/sprd_dphy.c > > create mode 100644 drivers/gpu/drm/sprd/sprd_dphy.h > > create mode 100644 drivers/gpu/drm/sprd/sprd_dpu.c > > create mode 100644 drivers/gpu/drm/sprd/sprd_dpu.h > > create mode 100644 drivers/gpu/drm/sprd/sprd_drm.c > > create mode 100644 drivers/gpu/drm/sprd/sprd_drm.h > > create mode 100644 drivers/gpu/drm/sprd/sprd_dsi.c > > create mode 100644 drivers/gpu/drm/sprd/sprd_dsi.h > > > > -- > > 2.7.4 > > > > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch