Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp2640170ybz; Mon, 27 Apr 2020 01:24:20 -0700 (PDT) X-Google-Smtp-Source: APiQypKVrJDenMbtk2SZFKAi42M+HnQNbDy3Pzp1MFImsM4Ql19FqAuXm8yxRH0DLzOHGUl2tqdo X-Received: by 2002:a17:906:4ecd:: with SMTP id i13mr18496421ejv.68.1587975860138; Mon, 27 Apr 2020 01:24:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587975860; cv=none; d=google.com; s=arc-20160816; b=ZPTIXbZYQbM4kej54P95bS9HHYg6yl8xlURe5TQHUQ88+06IiQeZLTOOdhnE1OurIv x97w7Xpj4LY3IWPFAuHU9Ftbp607nVVXXNET/WKINeGvxuZazaeGDervIWAIGWd86Yg5 yxQZPMf1t/k1+oALA+xmhOpHjK4mxXqhlT+IGdcgGvOIALPzywe5LIgEmJfYurOILibW fhIWLZUlWSdFpKpJCTVhCeCvsAXmMBIzjru4BzjcAOFZyLpf6MsobL0LtiXqjTHenfav sWShvcXP7FqDSn+F5437rsxoX+VgwFMfpxJiuTicjFX+p37hjUCy6yUMf41RqO87yYag HCvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from; bh=AmRTZpDd5uul7MpXLjWZwP1/XX4rq4I6K9dd6qwcbUE=; b=X3RK6CJR648GFv4qQ6JG5n7YOroPv8NAVyrYN/oeS2URfrgXACCckIk/63fjsmZmdJ VOXmfFGbDYY3Kz9y3truMUe9Pys4tcirFVNRPs7yLBdyiTDLLnUyqAbOZ113hPZI57QE s/O0WoVroE5J2bXM2+mETkPYLdQVsD/U7vBQJ5ZR1JVhWFvsQddWan/3JrtWG/52FFGS SRuSoBFhAFXw4mbHfz2MOJhLGfc+Og1uJSrYvY10qWSHx/UGhPzAoFdbWfsWrofOHK/u MjSchNn+8XtcHlnpLpzThyCOIDLG1xDU3lvUamgVLdJWKXa0+djUPs6IZraZiW3ZSg+s UGwQ== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h7si7718233eds.336.2020.04.27.01.23.56; Mon, 27 Apr 2020 01:24:20 -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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726815AbgD0IWX (ORCPT + 99 others); Mon, 27 Apr 2020 04:22:23 -0400 Received: from relmlor1.renesas.com ([210.160.252.171]:20668 "EHLO relmlie5.idc.renesas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726003AbgD0IWX (ORCPT ); Mon, 27 Apr 2020 04:22:23 -0400 X-IronPort-AV: E=Sophos;i="5.73,323,1583161200"; d="scan'208";a="45816349" Received: from unknown (HELO relmlir6.idc.renesas.com) ([10.200.68.152]) by relmlie5.idc.renesas.com with ESMTP; 27 Apr 2020 17:22:19 +0900 Received: from renesas-VirtualBox.ree.adwin.renesas.com (unknown [172.29.51.26]) by relmlir6.idc.renesas.com (Postfix) with ESMTP id A68FD41D9F73; Mon, 27 Apr 2020 17:22:15 +0900 (JST) From: Gareth Williams To: Maarten Lankhorst , Maxime Ripard , Sean Paul , David Airlie , Daniel Vetter Cc: Gareth Williams , Phil Edworthy , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org Subject: [PATCH 1/3] drm/db9000: Add Digital Blocks DB9000 LCD Controller Date: Mon, 27 Apr 2020 09:21:47 +0100 Message-Id: <1587975709-2092-2-git-send-email-gareth.williams.jx@renesas.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1587975709-2092-1-git-send-email-gareth.williams.jx@renesas.com> References: <1587975709-2092-1-git-send-email-gareth.williams.jx@renesas.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add DRM support for the Digital Blocks DB9000 LCD Controller with the Renesas RZ/N1 specific changes. Signed-off-by: Gareth Williams --- drivers/gpu/drm/Kconfig | 2 + drivers/gpu/drm/Makefile | 1 + drivers/gpu/drm/digital-blocks/Kconfig | 13 + drivers/gpu/drm/digital-blocks/Makefile | 3 + drivers/gpu/drm/digital-blocks/db9000-du.c | 953 +++++++++++++++++++++++++++++ drivers/gpu/drm/digital-blocks/db9000-du.h | 192 ++++++ 6 files changed, 1164 insertions(+) create mode 100644 drivers/gpu/drm/digital-blocks/Kconfig create mode 100644 drivers/gpu/drm/digital-blocks/Makefile create mode 100644 drivers/gpu/drm/digital-blocks/db9000-du.c create mode 100644 drivers/gpu/drm/digital-blocks/db9000-du.h diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig index 3c88420..159832d 100644 --- a/drivers/gpu/drm/Kconfig +++ b/drivers/gpu/drm/Kconfig @@ -280,6 +280,8 @@ source "drivers/gpu/drm/mgag200/Kconfig" source "drivers/gpu/drm/cirrus/Kconfig" +source "drivers/gpu/drm/digital-blocks/Kconfig" + source "drivers/gpu/drm/armada/Kconfig" source "drivers/gpu/drm/atmel-hlcdc/Kconfig" diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile index 9f0d2ee..f525807 100644 --- a/drivers/gpu/drm/Makefile +++ b/drivers/gpu/drm/Makefile @@ -72,6 +72,7 @@ obj-$(CONFIG_DRM_MGAG200) += mgag200/ obj-$(CONFIG_DRM_V3D) += v3d/ obj-$(CONFIG_DRM_VC4) += vc4/ obj-$(CONFIG_DRM_CIRRUS_QEMU) += cirrus/ +obj-$(CONFIG_DRM_DB9000) += digital-blocks/ obj-$(CONFIG_DRM_SIS) += sis/ obj-$(CONFIG_DRM_SAVAGE)+= savage/ obj-$(CONFIG_DRM_VMWGFX)+= vmwgfx/ diff --git a/drivers/gpu/drm/digital-blocks/Kconfig b/drivers/gpu/drm/digital-blocks/Kconfig new file mode 100644 index 0000000..436a7c0 --- /dev/null +++ b/drivers/gpu/drm/digital-blocks/Kconfig @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: GPL-2.0 +config DRM_DB9000 + bool "DRM Support for DB9000 LCD Controller" + depends on DRM && (ARCH_MULTIPLATFORM || COMPILE_TEST) + select DRM_KMS_HELPER + select DRM_GEM_CMA_HELPER + select DRM_KMS_CMA_HELPER + select DRM_PANEL_BRIDGE + select VIDEOMODE_HELPERS + select FB_PROVIDE_GET_FB_UNMAPPED_AREA if FB + + help + Enable DRM support for the DB9000 LCD controller. diff --git a/drivers/gpu/drm/digital-blocks/Makefile b/drivers/gpu/drm/digital-blocks/Makefile new file mode 100644 index 0000000..9f78492 --- /dev/null +++ b/drivers/gpu/drm/digital-blocks/Makefile @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: GPL-2.0 + +obj-$(CONFIG_DRM_DB9000) += db9000-du.o diff --git a/drivers/gpu/drm/digital-blocks/db9000-du.c b/drivers/gpu/drm/digital-blocks/db9000-du.c new file mode 100644 index 0000000..d84d446 --- /dev/null +++ b/drivers/gpu/drm/digital-blocks/db9000-du.c @@ -0,0 +1,953 @@ +// SPDX-License-Identifier: GPL-2.0 +/* Copyright (C) 2019 Renesas Electronics Europe Ltd. + * + * Author: Gareth Williams + * + * Based on ltdc.c + * Copyright (C) STMicroelectronics SA 2017 + * + * Authors: Philippe Cornu + * Yannick Fertre + * Fabien Dessenne + * Mickael Reulier + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include