Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp573705imm; Wed, 23 May 2018 01:49:33 -0700 (PDT) X-Google-Smtp-Source: AB8JxZqgWNM8JPR+aPfsBT+khYDynxRBLme8gL5KqqCYDXBSpFJ/BucYvbehqX5FYvdyb77OHdYx X-Received: by 2002:a17:902:229:: with SMTP id 38-v6mr2066207plc.384.1527065373092; Wed, 23 May 2018 01:49:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527065373; cv=none; d=google.com; s=arc-20160816; b=U4SivckkAlMIXQTtPtYp5j3Sg0V12L/7+B8+ilv9nza98i5Z9BW+ebdD77ssss4Gbp y9HsQIYP9pj3U4GakF40a+e+hRhwlD1DBMhw6AcVI+yhKgYmDFzBxQMN/IU7zbB3iuS8 v9833UXV5MRgZXn7ncmpIonYrGLQdshXtL3qic/wHqXudpGjm5fHSkwwGlQ0CsVAMhHi 8h/Nj+buQv2GkJRdsXclSaNgURI2VxW2XcuVj++RLCShwmz3vIxh4eyTurSeK+0tUuTN 0y/qmBFCijIcuxcBKtaQN9H4UznEO5v1KsvFzrAi6SYJe5x7ysRWNA3zeNXbz0k1Lps9 pelw== 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 :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=UTWxyoLs2mw1+mH4xaSivZ7QFHekH9XvFTZEXOIq2Qc=; b=VQz8/gHURw45qAwqgDfgFGJSs8FEW1gOybgO9Ydq88tY+jxjZkpYlv9atNpPRKYZjh gUHH9O4Vy0X31U/4gAYB3QToV/9OGrySnsS4QSUfOrRs/O6j62J1tVOkdVMzIcPVLsn4 VyI7g2KXpFMKKf9mQxFZhYMjmsMg1YFvQ8D5vOd/Xi5o5kj/wjZuL37TkKtvZluma2k5 26ka/wd2vBByQ8gTA1BBC69s7gqb796UKrAxv+yZN4XueQCVKJmrSwv9iNNzy71FO43/ JaWRxLVGugBY5hOEEQrjKdgF/z0z2EJMlcJk/vPNOs1TxxTQO9NyZzb3Y+A8fq4ZXjh/ t3qw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=FGSjhGNd; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 61-v6si17795852plc.173.2018.05.23.01.49.18; Wed, 23 May 2018 01:49:33 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=FGSjhGNd; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754576AbeEWIsq (ORCPT + 99 others); Wed, 23 May 2018 04:48:46 -0400 Received: from mail-qt0-f196.google.com ([209.85.216.196]:43735 "EHLO mail-qt0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754471AbeEWIsn (ORCPT ); Wed, 23 May 2018 04:48:43 -0400 Received: by mail-qt0-f196.google.com with SMTP id f13-v6so27051107qtp.10; Wed, 23 May 2018 01:48:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=UTWxyoLs2mw1+mH4xaSivZ7QFHekH9XvFTZEXOIq2Qc=; b=FGSjhGNdTVafUqs4E9lhZPR88CevtXSYmrgC3wfe6vEGBeOYsYFZA/KZ52G1scUILo 3q/GruY6u5APNrs6MVfsp5Afk9l0+eTsoI27qBZjB3ROAovPmwVD5wUFg80q3BOvTBaa 8fY/mtsgrH3zCIz0l6aymiEZrqn+/09FJGBAWYsp8C0eIoHrOtA7oI0wg4BhtKhwvjAF EAYOUVdnp4wA3sF+3cLNHp2rvL0QvDA1pncH6W4/mEPHsExtuS9Kty6TueDDMmTBXmGr 3zjVilcmWXi/e+FZ1zgwfD+UUsMrtMWFzKaf8eTZFRxnZq/PZSwN0p0AG9dZBdY7jML7 sSbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=UTWxyoLs2mw1+mH4xaSivZ7QFHekH9XvFTZEXOIq2Qc=; b=cKY/vxRTnWZl49tHHaHNnajjU2qb+EzHj4HSDOhK+Yn51k3nw5odrdMHX8fuSNKvbc RgkWG+xXAgns+wgYdADzDwK6zlJNfqjmwV66obPVgBI+Divwie/eO4excUcqdPaTxjdS M46uDbSaVAhFlVD/T90iOU5byerwQxZkJ4VfG6wCsdB1RVBdjqtSQMWImqbP4va+5jNm /08M0o06uKOEcBB5VZmhNuEIjm0HPahQVD8A4NRDNy84LicjednOobzKEKpdkZCPq6ZU zGESnlKNwE2oZrKZCukCtgnwTHm4NHC8kkzEOCmLXOpzVmOpPIrMpsthlI0W5V9eGcds DIJg== X-Gm-Message-State: ALKqPwc3/5s0hTM6qi5PdlD2Y02x6E3gOLdVGFLfDJ3jWhivSkbNlWMv TUXvYmcAX3ks9ts7+PkXT4svN2r8MoMPx4tn+AI= X-Received: by 2002:ac8:17b2:: with SMTP id o47-v6mr1717348qtj.176.1527065322008; Wed, 23 May 2018 01:48:42 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:aed:3aaa:0:0:0:0:0 with HTTP; Wed, 23 May 2018 01:48:41 -0700 (PDT) In-Reply-To: <1527061353-16902-3-git-send-email-hl@rock-chips.com> References: <1527061353-16902-1-git-send-email-hl@rock-chips.com> <1527061353-16902-3-git-send-email-hl@rock-chips.com> From: Enric Balletbo Serra Date: Wed, 23 May 2018 10:48:41 +0200 Message-ID: Subject: Re: [PATCH v7 3/5] soc: rockchip: split rockchip_typec_phy struct to separate header To: Lin Huang Cc: Sean Paul , David Airlie , Chris Zhong , Kishon Vijay Abraham I , Doug Anderson , Brian Norris , "open list:ARM/Rockchip SoC..." , =?UTF-8?Q?Heiko_St=C3=BCbner?= , daniel.vetter@intel.com, dri-devel , Linux ARM , linux-kernel , Rob Herring , "devicetree@vger.kernel.org" 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 2018-05-23 9:42 GMT+02:00 Lin Huang : > we may use rockchip_phy_typec struct in other driver, so split > it to separate header. > > Signed-off-by: Lin Huang > --- > Changes in v2: > - None > Changes in v3: > - None > Changes in v4: > - None > Changes in v5: > - None > Changes in v6: > - new patch here > Changes in v7: > - move new element to next patch > > drivers/phy/rockchip/phy-rockchip-typec.c | 47 +------------------------- > include/soc/rockchip/rockchip_phy_typec.h | 55 +++++++++++++++++++++++++++++++ > 2 files changed, 56 insertions(+), 46 deletions(-) > create mode 100644 include/soc/rockchip/rockchip_phy_typec.h > > diff --git a/drivers/phy/rockchip/phy-rockchip-typec.c b/drivers/phy/rockchip/phy-rockchip-typec.c > index 76a4b58..795055f 100644 > --- a/drivers/phy/rockchip/phy-rockchip-typec.c > +++ b/drivers/phy/rockchip/phy-rockchip-typec.c > @@ -63,6 +63,7 @@ > > #include > #include > +#include > > #define CMN_SSM_BANDGAP (0x21 << 2) > #define CMN_SSM_BIAS (0x22 << 2) > @@ -349,52 +350,6 @@ > #define MODE_DFP_USB BIT(1) > #define MODE_DFP_DP BIT(2) > > -struct usb3phy_reg { > - u32 offset; > - u32 enable_bit; > - u32 write_enable; > -}; > - > -/** > - * struct rockchip_usb3phy_port_cfg: usb3-phy port configuration. > - * @reg: the base address for usb3-phy config. > - * @typec_conn_dir: the register of type-c connector direction. > - * @usb3tousb2_en: the register of type-c force usb2 to usb2 enable. > - * @external_psm: the register of type-c phy external psm clock. > - * @pipe_status: the register of type-c phy pipe status. > - * @usb3_host_disable: the register of type-c usb3 host disable. > - * @usb3_host_port: the register of type-c usb3 host port. > - * @uphy_dp_sel: the register of type-c phy DP select control. > - */ > -struct rockchip_usb3phy_port_cfg { > - unsigned int reg; > - struct usb3phy_reg typec_conn_dir; > - struct usb3phy_reg usb3tousb2_en; > - struct usb3phy_reg external_psm; > - struct usb3phy_reg pipe_status; > - struct usb3phy_reg usb3_host_disable; > - struct usb3phy_reg usb3_host_port; > - struct usb3phy_reg uphy_dp_sel; > -}; > - > -struct rockchip_typec_phy { > - struct device *dev; > - void __iomem *base; > - struct extcon_dev *extcon; > - struct regmap *grf_regs; > - struct clk *clk_core; > - struct clk *clk_ref; > - struct reset_control *uphy_rst; > - struct reset_control *pipe_rst; > - struct reset_control *tcphy_rst; > - const struct rockchip_usb3phy_port_cfg *port_cfgs; > - /* mutex to protect access to individual PHYs */ > - struct mutex lock; > - > - bool flip; > - u8 mode; > -}; > - > struct phy_reg { > u16 value; > u32 addr; > diff --git a/include/soc/rockchip/rockchip_phy_typec.h b/include/soc/rockchip/rockchip_phy_typec.h > new file mode 100644 > index 0000000..4afe039 > --- /dev/null > +++ b/include/soc/rockchip/rockchip_phy_typec.h > @@ -0,0 +1,55 @@ > +/* SPDX-License-Identifier: GPL-2.0 */ > +/* > + * Copyright (C) Fuzhou Rockchip Electronics Co.Ltd > + * Author: Lin Huang > + */ > + > +#ifndef __SOC_ROCKCHIP_PHY_TYPEC_H > +#define __SOC_ROCKCHIP_PHY_TYPEC_H > + > +struct usb3phy_reg { > + u32 offset; > + u32 enable_bit; > + u32 write_enable; > +}; > + > +/** > + * struct rockchip_usb3phy_port_cfg: usb3-phy port configuration. > + * @reg: the base address for usb3-phy config. > + * @typec_conn_dir: the register of type-c connector direction. > + * @usb3tousb2_en: the register of type-c force usb2 to usb2 enable. > + * @external_psm: the register of type-c phy external psm clock. > + * @pipe_status: the register of type-c phy pipe status. > + * @usb3_host_disable: the register of type-c usb3 host disable. > + * @usb3_host_port: the register of type-c usb3 host port. > + * @uphy_dp_sel: the register of type-c phy DP select control. > + */ > +struct rockchip_usb3phy_port_cfg { > + unsigned int reg; > + struct usb3phy_reg typec_conn_dir; > + struct usb3phy_reg usb3tousb2_en; > + struct usb3phy_reg external_psm; > + struct usb3phy_reg pipe_status; > + struct usb3phy_reg usb3_host_disable; > + struct usb3phy_reg usb3_host_port; > + struct usb3phy_reg uphy_dp_sel; > +}; > + > +struct rockchip_typec_phy { > + struct device *dev; > + void __iomem *base; > + struct extcon_dev *extcon; > + struct regmap *grf_regs; > + struct clk *clk_core; > + struct clk *clk_ref; > + struct reset_control *uphy_rst; > + struct reset_control *pipe_rst; > + struct reset_control *tcphy_rst; > + const struct rockchip_usb3phy_port_cfg *port_cfgs; > + /* mutex to protect access to individual PHYs */ > + struct mutex lock; > + bool flip; > + u8 mode; > +}; > + > +#endif > -- > 2.7.4 > Reviewed-by: Enric Balletbo i Serra