On Fri, Apr 08, 2022 at 07:32:39AM +0530, Pavan Kondeti wrote: > On Thu, Apr 07, 2022 at 11:06:40AM -0700, Matthias Kaehlcke wrote: > > On Thu, Apr 07, 2022 at 02:15:04PM +0530, Sandeep Maheswaram wrote: > > > Adding wakeup-source property for USB controller in SC7280. > > > This property is added to inform that the USB controller is > > > wake up capable and to conditionally power down the phy during > > > system suspend. > > > > > > Signed-off-by: Sandeep Maheswaram <quic_c_sanm@xxxxxxxxxxx> > > > --- > > > arch/arm64/boot/dts/qcom/sc7280.dtsi | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi > > > index f0b64be..046262a 100644 > > > --- a/arch/arm64/boot/dts/qcom/sc7280.dtsi > > > +++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi > > > @@ -2916,6 +2916,7 @@ > > > phys = <&usb_1_hsphy>, <&usb_1_ssphy>; > > > phy-names = "usb2-phy", "usb3-phy"; > > > maximum-speed = "super-speed"; > > > + wakeup-source; > > > }; > > > }; > > > > Not all SC7280 boards may want to enable wakeup from USB, so this is > > probably best configured on a per-board basis. > > This wakeup capability is provided by the SoC. If a particular > board does not want to support, ideally it needs to be disabled from > user space. The capability is always there but some platforms choose to > disable it. I guess 'wakeup-source' is a bit of an edge case between hardware capability (which is certainly required to make wakeup work) and policy. arch/arm64/boot/dts/mediatek/mt2712-evb.dts and arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi are two example where 'wakeup-source' is set at the board level for a USB controller. It's also true that user space can disable wakeup as you said, and a board could also delete the property in its device tree if desired. With that I agree that setting 'wakeup-source' at the SoC level provides more flexibility and is more in line with the DT as hardware description. Reviewed-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx>