Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751753AbdL2Rzq (ORCPT ); Fri, 29 Dec 2017 12:55:46 -0500 Received: from muru.com ([72.249.23.125]:33756 "EHLO muru.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751315AbdL2Rzo (ORCPT ); Fri, 29 Dec 2017 12:55:44 -0500 Date: Fri, 29 Dec 2017 09:55:39 -0800 From: Tony Lindgren To: Jeffy Chen Cc: linux-kernel@vger.kernel.org, bhelgaas@google.com, linux-pm@vger.kernel.org, shawn.lin@rock-chips.com, briannorris@chromium.org, rjw@rjwysocki.net, dianders@chromium.org, Matthias Kaehlcke , Heiko Stuebner , devicetree@vger.kernel.org, Klaus Goger , linux-rockchip@lists.infradead.org, Rob Herring , linux-arm-kernel@lists.infradead.org, Will Deacon , Mark Rutland , Catalin Marinas Subject: Re: [RFC PATCH v12 5/5] arm64: dts: rockchip: Move PCIe WAKE# irq to pcie port for Gru Message-ID: <20171229175539.GK3875@atomide.com> References: <20171226023646.17722-1-jeffy.chen@rock-chips.com> <20171226023646.17722-6-jeffy.chen@rock-chips.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20171226023646.17722-6-jeffy.chen@rock-chips.com> User-Agent: Mutt/1.9.1 (2017-09-22) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1600 Lines: 51 * Jeffy Chen [171226 02:41]: > Currently we are handling PCIe WAKE# irq in mrvl wifi driver. > > Move it to rockchip pcie port since we are going to handle it in the > pci core. Yes in the PCIe case, the pcie port node is the right place for the wakeirq instead of the child the mvl_wifi node. So one question further down below to verify this.. > Also avoid this irq been considered as the PCI interrupt pin in the > of_irq_parse_pci(). The above paragraph needs a bit more clarification to be readable :) > --- a/arch/arm64/boot/dts/rockchip/rk3399-gru.dtsi > +++ b/arch/arm64/boot/dts/rockchip/rk3399-gru.dtsi > @@ -719,15 +719,16 @@ ap_i2c_audio: &i2c8 { > #size-cells = <2>; > ranges; > > + interrupts-extended = <&pcie0 1>, <&gpio0 8 IRQ_TYPE_LEVEL_LOW>; > + interrupt-names = "pci", "wakeup"; > + pinctrl-names = "default"; > + pinctrl-0 = <&wlan_host_wake_l>; > + wakeup-source; > + > mvl_wifi: wifi@0,0 { > compatible = "pci1b4b,2b42"; > reg = <0x83010000 0x0 0x00000000 0x0 0x00100000 > 0x83010000 0x0 0x00100000 0x0 0x00100000>; > - interrupt-parent = <&gpio0>; > - interrupts = <8 IRQ_TYPE_LEVEL_LOW>; > - pinctrl-names = "default"; > - pinctrl-0 = <&wlan_host_wake_l>; > - wakeup-source; > }; > }; > }; So the above modifies pcie@0,0 node. And that node describes the particular PCIe port that the WLAN is connected to instead of describing the whole PCIe controller device, right? If so, then yeah it's totally where the wakeirq should be defined for a PCIe device in the dts file :) Regards, Tony