> -----Original Message----- > From: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> > Sent: 2023年12月14日 13:13 > To: Sherry Sun <sherry.sun@xxxxxxx> > Cc: Hongxing Zhu <hongxing.zhu@xxxxxxx>; l.stach@xxxxxxxxxxxxxx; > lpieralisi@xxxxxxxxxx; kw@xxxxxxxxx; robh@xxxxxxxxxx; > bhelgaas@xxxxxxxxxx; krzysztof.kozlowski+dt@xxxxxxxxxx; > conor+dt@xxxxxxxxxx; shawnguo@xxxxxxxxxx; s.hauer@xxxxxxxxxxxxxx; > kernel@xxxxxxxxxxxxxx; festevam@xxxxxxxxx; dl-linux-imx <linux- > imx@xxxxxxx>; linux-pci@xxxxxxxxxxxxxxx; linux-arm- > kernel@xxxxxxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; linux- > kernel@xxxxxxxxxxxxxxx > Subject: Re: [PATCH V2 0/4] PCI: imx6: Add pci host wakeup support > > On Wed, Dec 13, 2023 at 05:28:46PM +0800, Sherry Sun wrote: > > Add pci host wakeup feature for imx platforms. The host wake pin is a > > standard feature in the PCIe bus specification, so we can add this > > property under PCI dts node to support the host gpio wakeup feature. > > > > Example of configuring the corresponding dts property under the PCI node: > > wake-gpios = <&gpio5 21 GPIO_ACTIVE_LOW>; > > > > As you mentioned, WAKE# is a standard sideband signal defined in the PCI > spec. > So the support for handling it has to be in the PCI core layer, not in the host > controller drivers. > > There is already a series floating to add support for WAKE# in PCI core. > Please take a look: > > https://lore.k/ > ernel.org%2Flinux-pci%2F20230208111645.3863534-1- > mmaddireddy%40nvidia.com%2F&data=05%7C02%7Csherry.sun%40nxp.co > m%7C0254c001df61498c09d408dbfc636f5c%7C686ea1d3bc2b4c6fa92cd99c5 > c301635%7C0%7C0%7C638381276239824912%7CUnknown%7CTWFpbGZsb3 > d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0% > 3D%7C3000%7C%7C%7C&sdata=IoBAwTy0qeb0J6JrK0WRhI8A4ThUfkVx6mri > ve%2BK5xs%3D&reserved=0 Hi Manivannan, I checked the patch set, the implementation of host wake gpio is different from mine, I referred to the mmc bus cd(card detect) pin implementation and I think it is simpler and clearer. Regarding whether the WAKE# support should be moved to PCI core layer, we may need more research and discussion. Thanks for your suggestions. Best Regards Sherry > > - Mani > > > --- > > changes in V2: > > 1. Rename host-wake-gpio property to wake-gpios. > > 2. Improve the wake-gpios property description in the dt-binding doc > > to avoid confusion. > > 3. Remove unnecessary debugging info in host_wake_irq_handler(). > > 4. Remove unnecessary imx6_pcie->host_wake_irq = -1 resetting in error > paths. > > 5. Use dev_err_probe() to simplify error path code. > > --- > > > > Sherry Sun (4): > > PCI: imx6: Add pci host wakeup support on imx platforms. > > dt-bindings: imx6q-pcie: Add wake-gpios property > > arm64: dts: imx8mp-evk: add wake-gpios property for pci bus > > arm64: dts: imx8mq-evk: add wake-gpios property for pci bus > > > > .../bindings/pci/fsl,imx6q-pcie.yaml | 6 ++ > > arch/arm64/boot/dts/freescale/imx8mp-evk.dts | 2 + > > arch/arm64/boot/dts/freescale/imx8mq-evk.dts | 2 + > > drivers/pci/controller/dwc/pci-imx6.c | 60 +++++++++++++++++++ > > 4 files changed, 70 insertions(+) > > > > -- > > 2.34.1 > > > > > > -- > மணிவண்ணன் சதாசிவம்