From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Return-Path: Subject: Re: [PATCH v2 1/2] dt-bindings: PCI: meson: add DT bindings for Amlogic Meson PCIe controller To: Rob Herring References: <1535096165-45827-1-git-send-email-hanjie.lin@amlogic.com> <1535096165-45827-2-git-send-email-hanjie.lin@amlogic.com> <8c48964151d24758298ba935da336c0829e2b287.camel@baylibre.com> <11d7547b-feb4-6ecb-cef3-db46ce8ee2ef@amlogic.com> <20180829004122.GA25928@bogus> <84d5399c-67d4-f8a4-3613-00d91f21292f@amlogic.com> From: Hanjie Lin Message-ID: <12ce60a8-accc-3c8f-4d38-9bf31346b775@amlogic.com> Date: Fri, 31 Aug 2018 09:47:09 +0800 MIME-Version: 1.0 In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Jianxin Pan , Kevin Hilman , Yixun Lan , "linux-kernel@vger.kernel.org" , Yue Wang , Qiufang Dai , Liang Yang , Jian Hu , linux-pci@vger.kernel.org, Bjorn Helgaas , linux-amlogic@lists.infradead.org, "moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" , Jerome Brunet Content-Type: text/plain; charset="us-ascii" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+bjorn=helgaas.com@lists.infradead.org List-ID: On 2018/8/30 21:59, Rob Herring wrote: > On Thu, Aug 30, 2018 at 2:37 AM Hanjie Lin wrote: >> >> >> >> On 2018/8/29 8:41, Rob Herring wrote: >>> On Mon, Aug 27, 2018 at 04:55:20PM +0800, Hanjie Lin wrote: >>>> >>>> >>>> On 2018/8/24 16:22, Jerome Brunet wrote: >>>>> On Fri, 2018-08-24 at 15:36 +0800, Hanjie Lin wrote: >>>>>> From: Yue Wang >>>>>> >>>>>> The Amlogic Meson PCIe host controller is based on the Synopsys DesignWare >>>>>> PCI core. This patch adds documentation for the DT bindings in Meson PCIe >>>>>> controller. >>>>>> >>>>>> Signed-off-by: Yue Wang >>>>>> Signed-off-by: Hanjie Lin >>>>>> --- >>>>>> .../devicetree/bindings/pci/amlogic,meson-pcie.txt | 63 ++++++++++++++++++++++ >>>>>> 1 file changed, 63 insertions(+) >>>>>> create mode 100644 Documentation/devicetree/bindings/pci/amlogic,meson-pcie.txt >>>>>> >>>>>> diff --git a/Documentation/devicetree/bindings/pci/amlogic,meson-pcie.txt b/Documentation/devicetree/bindings/pci/amlogic,meson-pcie.txt >>>>>> new file mode 100644 >>>>>> index 0000000..8a831d1 >>>>>> --- /dev/null >>>>>> +++ b/Documentation/devicetree/bindings/pci/amlogic,meson-pcie.txt >>>>>> @@ -0,0 +1,63 @@ >>>>>> +Amlogic Meson AXG DWC PCIE SoC controller >>>>>> + >>>>>> +Amlogic Meson PCIe host controller is based on the Synopsys DesignWare PCI core. >>>>>> +It shares common functions with the PCIe DesignWare core driver and >>>>>> +inherits common properties defined in >>>>>> +Documentation/devicetree/bindings/pci/designware-pci.txt. >>>>>> + >>>>>> +Additional properties are described here: >>>>>> + >>>>>> +Required properties: >>>>>> +- compatible: >>>>>> + should contain "amlogic,axg-pcie" to identify the core. >>>>>> +- reg: >>>>>> + Should contain the configuration address space. >>>>>> +- reg-names: Must be >>>>>> + - "elbi" External local bus interface registers >>>>>> + - "cfg" Meson specific registers >>>>>> + - "config" PCIe configuration space >>>>>> +- reset-gpios: The GPIO to generate PCIe PERST# assert and deassert signal. >>>>>> +- clocks: Must contain an entry for each entry in clock-names. >>>>>> +- clock-names: Must include the following entries: >>>>>> + - "pclk" PCIe GEN 100M PLL clock >>>>>> + - "port" PCIe_x(A or B) RC clock gate >>>>>> + - "general" PCIe Phy clock >>>>>> + - "mipi" PCIe_x(A or B) 100M ref clock gate >>>>>> +- resets: phandle to the reset lines. >>>>>> +- reset-names: must contain "phy" and "peripheral" >>>>>> + - "port" Port A or B reset >>>>>> + - "apb" APB reset >>>>> >>>>> The above description is not coherent (phy <=> port) >>>>> >>>> >>>> Yes, this should be port and apb here. >>>> We'll integrate phy driver into ctrl driver, and move phy reset to here also. >>> >>> Why? That's the wrong thing to do if they are separate h/w blocks. You >>> can do whatever you like in the drivers, but the DT should reflect the >>> h/w. >>> >>> Rob >>> >>> . >>> >> >> We have the dedicated phy driver which only process reset job, >> and we consider that it's too overkill to do just these things . >> So we will integrate phy reset job into the controller driver int the next version. > > What's in the separate register space you had for the phy? > > Rob > > . > As described with 'phy' reg in ctrl patch v3 thread [0] - reg-names: Must be - "elbi" External local bus interface registers - "cfg" Meson specific registers - "phy" Meson PCIE PHY registers - "config" PCIe configuration space When each controller driver probe, we powerup phy by write phy register like below: writel(MESON_PCIE_PHY_POWERUP, mp->mem_res.phy_base); [0] https://lkml.kernel.org/r/1535616829-167936-1-git-send-email-hanjie.lin@amlogic.com _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel