From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754322AbaIWIrw (ORCPT ); Tue, 23 Sep 2014 04:47:52 -0400 Received: from regular2.263xmail.com ([211.157.152.4]:40832 "EHLO regular2.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751559AbaIWIrn (ORCPT ); Tue, 23 Sep 2014 04:47:43 -0400 X-263anti-spam: KSV:0; X-MAIL-GRAY: 0 X-MAIL-DELIVERY: 1 X-KSVirus-check: 0 X-ABS-CHECKED: 4 X-RL-SENDER: cym@rock-chips.com X-FST-TO: jeff.chen@rock-chips.com X-SENDER-IP: 58.22.7.114 X-LOGIN-NAME: cym@rock-chips.com X-UNIQUE-TAG: <5de6f246291bcfb779414788a7c61a12> X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 Message-ID: <5421338B.3020302@rock-chips.com> Date: Tue, 23 Sep 2014 16:47:07 +0800 From: cym User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0 MIME-Version: 1.0 To: Rob Clark , Mark yao CC: =?UTF-8?B?SGVpa28gU3TDvGJuZXI=?= , Boris BREZILLON , David Airlie , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Randy Dunlap , Grant Likely , Greg Kroah-Hartman , John Stultz , Rom Lemarchand , "devicetree@vger.kernel.org" , linux-doc@vger.kernel.org, Linux Kernel Mailing List , "dri-devel@lists.freedesktop.org" , linux-api@vger.kernel.org, linux-rockchip@lists.infradead.org, Douglas Anderson , =?UTF-8?B?U3TDqXBoYW5lIE1hcmNoZXNpbg==?= , dbehr@chromium.org, Olof Johansson , Daniel Kurtz , Jianqun Xu , kfx@rock-chips.com, Eddie Cai , Chris Zhong , simon xue , Tao Huang , Kever Yang , yxj@rock-chips.com, =?UTF-8?B?546L5pmT6IW+?= , xw@rock-chips.com, Jeff Chen Subject: Re: [PATCH v4 5/5] drm/rockchip: Add support for Rockchip Soc EDP References: <1411382820-1615-1-git-send-email-mark.yao@rock-chips.com> <1411383728-2075-1-git-send-email-mark.yao@rock-chips.com> In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tuesday, September 23, 2014 03:20 AM, Rob Clark wrote: > On Mon, Sep 22, 2014 at 7:02 AM, Mark yao wrote: >> This adds support for Rockchip soc edp found on rk3288 >> >> Signed-off-by: Mark Yao >> Signed-off-by: Jeff Chen >> --- >> Changes in v2: >> - fix code sytle >> - use some define from drm_dp_helper.h >> - use panel-simple driver for primary display. >> - remove unnecessary clock clk_24m_parent. >> >> Changes in v3: None >> >> Changes in v4: None >> >> drivers/gpu/drm/rockchip/Kconfig | 9 + >> drivers/gpu/drm/rockchip/Makefile | 2 + >> drivers/gpu/drm/rockchip/rockchip_edp_core.c | 853 ++++++++++++++++++ >> drivers/gpu/drm/rockchip/rockchip_edp_core.h | 309 +++++++ >> drivers/gpu/drm/rockchip/rockchip_edp_reg.c | 1202 ++++++++++++++++++++++++++ >> drivers/gpu/drm/rockchip/rockchip_edp_reg.h | 345 ++++++++ >> 6 files changed, 2720 insertions(+) >> create mode 100644 drivers/gpu/drm/rockchip/rockchip_edp_core.c >> create mode 100644 drivers/gpu/drm/rockchip/rockchip_edp_core.h >> create mode 100644 drivers/gpu/drm/rockchip/rockchip_edp_reg.c >> create mode 100644 drivers/gpu/drm/rockchip/rockchip_edp_reg.h >> >> diff --git a/drivers/gpu/drm/rockchip/Kconfig b/drivers/gpu/drm/rockchip/Kconfig >> index 7146c80..04b1f8c 100644 >> --- a/drivers/gpu/drm/rockchip/Kconfig >> +++ b/drivers/gpu/drm/rockchip/Kconfig >> @@ -17,3 +17,12 @@ config DRM_ROCKCHIP >> management to userspace. This driver does not provides >> 2D or 3D acceleration; acceleration is performed by other >> IP found on the SoC. >> + >> +config ROCKCHIP_EDP >> + bool "Rockchip edp support" >> + depends on DRM_ROCKCHIP >> + help >> + Choose this option if you have a Rockchip eDP. >> + Rockchip rk3288 SoC has eDP TX Controller can be used. >> + If you have an Embedded DisplayPort Panel, say Y to enable its >> + driver. >> diff --git a/drivers/gpu/drm/rockchip/Makefile b/drivers/gpu/drm/rockchip/Makefile >> index 6e6d468..a0fc3a1 100644 >> --- a/drivers/gpu/drm/rockchip/Makefile >> +++ b/drivers/gpu/drm/rockchip/Makefile >> @@ -7,4 +7,6 @@ ccflags-y := -Iinclude/drm -Idrivers/gpu/drm/rockchip >> rockchipdrm-y := rockchip_drm_drv.o rockchip_drm_fb.o rockchip_drm_fbdev.o \ >> rockchip_drm_gem.o rockchip_drm_vop.o >> >> +rockchipdrm-$(CONFIG_ROCKCHIP_EDP) += rockchip_edp_core.o rockchip_edp_reg.o >> + >> obj-$(CONFIG_DRM_ROCKCHIP) += rockchipdrm.o >> diff --git a/drivers/gpu/drm/rockchip/rockchip_edp_core.c b/drivers/gpu/drm/rockchip/rockchip_edp_core.c >> new file mode 100644 >> index 0000000..5450d1fa >> --- /dev/null >> +++ b/drivers/gpu/drm/rockchip/rockchip_edp_core.c >> @@ -0,0 +1,853 @@ >> +/* >> +* Copyright (C) Fuzhou Rockchip Electronics Co.Ltd >> +* Author: >> +* Andy yan >> +* Jeff chen >> +* >> +* based on exynos_dp_core.c >> +* > hmm, did you look at all at drm_dp_helpers? The exynos code probably > pre-dates the helpers, so might not be the best example to work off > of.. > > If there is actually a valid reason not to use the dp-helpers, then > you should mention the reasons, at least in the commit msg if not the > code > > BR, > -R Thanks Rob,Because RK3288 eDP controller IP design is similar to exynos.They from same IP vendors but have some difference. So we choosed exynos_dp as example to work off of.exynos_dp only used some defines from drm_dp_helper.h like DPCD. > >> +* This program is free software; you can redistribute it and/or modify it >> +* under the terms of the GNU General Public License as published by the >> +* Free Software Foundation; either version 2 of the License, or (at your >> +* option) any later version. >> +*/ >> + >> +#include >> +#include >> +#include >> +#include >> + >> +#include >> +#include >> +#include >> +#include >> +#include >> + >> +#include