From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-m19731109.qiye.163.com (mail-m19731109.qiye.163.com [220.197.31.109]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 67466230D25; Tue, 10 Dec 2024 09:05:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.31.109 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1733821552; cv=none; b=re7a+I6ENn59JlXP7dPTUswQHPOiyqc4gEEydFy0dO0dijvFoG3n7jm35grPGRaIf3ldpgRoqavxcX3BGbbQMuAUm2pGm7Oh3ZHO3sAB/kk9gA5L3sZYxOzOj/x3HRu3qOFEj+OxqOGKyLKNVaWKJ2R339RI49bRqNUSV3wO0+0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1733821552; c=relaxed/simple; bh=zeGi/174DPn0/GKftL1y2kbeDICJatieBfKizD4UrA4=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=J9W46ngRCRgat2rIGnkGndROBwAS2s3SwkZy5f8pG+/SoXYgyupvxwrz3uf/C2AOizqdFOd4abvVfYGVtikHoriLx6819ThPe+i/Fcn8rncklFK9C5h/3YRmVqCOpXrv8CaHXu523RSS90llAwqQXuwytOccixm8j/seaq+6O3I= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=SOdLubGv; arc=none smtp.client-ip=220.197.31.109 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="SOdLubGv" Received: from [172.16.12.69] (unknown [58.22.7.114]) by smtp.qiye.163.com (Hmail) with ESMTP id 545886d0; Tue, 10 Dec 2024 16:50:19 +0800 (GMT+08:00) Message-ID: <3facea6a-8229-465f-b17d-89daf7b4f856@rock-chips.com> Date: Tue, 10 Dec 2024 16:50:18 +0800 Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 1/3] drm/bridge/synopsys: Add MIPI DSI2 host controller bridge To: Heiko Stuebner Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, quentin.schulz@cherry.de, Heiko Stuebner , Daniel Semkowicz , Dmitry Yashin References: <20241209231021.2180582-1-heiko@sntech.de> <20241209231021.2180582-2-heiko@sntech.de> Content-Language: en-US From: Andy Yan In-Reply-To: <20241209231021.2180582-2-heiko@sntech.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFDSUNOT01LS0k3V1ktWUFJV1kPCRoVCBIfWUFZGkNPGlYZSx1OGEJOHxlKTh1WFRQJFh oXVRMBExYaEhckFA4PWVdZGBILWUFZTkNVSUlVTFVKSk9ZV1kWGg8SFR0UWUFZT0tIVUpLSU9PT0 hVSktLVUpCS0tZBg++ X-HM-Tid: 0a93afc31a9a09d6kunm545886d0 X-HM-MType: 1 X-HM-Sender-Digest: e1kMHhlZQR0aFwgeV1kSHx4VD1lBWUc6Nj46Tgw5ATIUGD46KCgUAUNL IS9PCxVVSlVKTEhIQ0lLTUlKTkJDVTMWGhIXVRoVHwJVAhoVOwkUGBBWGBMSCwhVGBQWRVlXWRIL WUFZTkNVSUlVTFVKSk9ZV1kIAVlBSEJPSkw3Bg++ DKIM-Signature:a=rsa-sha256; b=SOdLubGv3uQ/gJ6TV5Ahd/s9rcP0xyv4WPc4LaOAMifOKlvuGTG6zlw8+wu9Z8/cVupjgciyMLFmtwRMX5T31sO3kQnyG6VmPj/1x6ufU5T/1tjPVnfgDpJX0jS/tF42PVD5CkJ8orYMJMnR5M86uyQlTMhEACAoREiONvjmZ9U=; s=default; c=relaxed/relaxed; d=rock-chips.com; v=1; bh=olZFX6oTabbXMK7tmGH3NeeDJV21ZQzleRMApvtReoM=; h=date:mime-version:subject:message-id:from; Hello Heiko, On 12/10/24 07:10, Heiko Stuebner wrote: > From: Heiko Stuebner > > Add a Synopsys Designware MIPI DSI host DRM bridge driver for their > DSI2 host controller, based on the Rockchip version from the driver > rockchip/dw-mipi-dsi2.c in their vendor-kernel with phy & bridge APIs. > > While the driver is heavily modelled after the previous IP, the register > set of this DSI2 controller is completely different and there are also > additional properties like the variable-width phy interface. > > Tested-by: Daniel Semkowicz > Tested-by: Dmitry Yashin > Reviewed-by: Neil Armstrong > Signed-off-by: Heiko Stuebner Reviewed-by: Andy Yan > --- > drivers/gpu/drm/bridge/synopsys/Kconfig | 6 + > drivers/gpu/drm/bridge/synopsys/Makefile | 1 + > .../gpu/drm/bridge/synopsys/dw-mipi-dsi2.c | 1030 +++++++++++++++++ > include/drm/bridge/dw_mipi_dsi2.h | 95 ++ > 4 files changed, 1132 insertions(+) > create mode 100644 drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi2.c > create mode 100644 include/drm/bridge/dw_mipi_dsi2.h > > diff --git a/drivers/gpu/drm/bridge/synopsys/Kconfig b/drivers/gpu/drm/bridge/synopsys/Kconfig > index ca416dab156d..f3ab2f985f8c 100644 > --- a/drivers/gpu/drm/bridge/synopsys/Kconfig > +++ b/drivers/gpu/drm/bridge/synopsys/Kconfig > @@ -59,3 +59,9 @@ config DRM_DW_MIPI_DSI > select DRM_KMS_HELPER > select DRM_MIPI_DSI > select DRM_PANEL_BRIDGE > + > +config DRM_DW_MIPI_DSI2 > + tristate > + select DRM_KMS_HELPER > + select DRM_MIPI_DSI > + select DRM_PANEL_BRIDGE > diff --git a/drivers/gpu/drm/bridge/synopsys/Makefile b/drivers/gpu/drm/bridge/synopsys/Makefile > index 9869d9651ed1..9dc376d220ad 100644 > --- a/drivers/gpu/drm/bridge/synopsys/Makefile > +++ b/drivers/gpu/drm/bridge/synopsys/Makefile > @@ -8,3 +8,4 @@ obj-$(CONFIG_DRM_DW_HDMI_CEC) += dw-hdmi-cec.o > obj-$(CONFIG_DRM_DW_HDMI_QP) += dw-hdmi-qp.o > > obj-$(CONFIG_DRM_DW_MIPI_DSI) += dw-mipi-dsi.o > +obj-$(CONFIG_DRM_DW_MIPI_DSI2) += dw-mipi-dsi2.o > diff --git a/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi2.c b/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi2.c > new file mode 100644 > index 000000000000..054ad39c451b > --- /dev/null > +++ b/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi2.c > @@ -0,0 +1,1030 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +/* > + * Copyright (c) 2024, Fuzhou Rockchip Electronics Co., Ltd > + * > + * Modified by Heiko Stuebner > + * This generic Synopsys DesignWare MIPI DSI2 host driver is based on the > + * Rockchip version from rockchip/dw-mipi-dsi2.c converted to use bridge APIs. > + */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +#include