Thread (12 messages) 12 messages, 2 authors, 2017-12-21

Re: [PATCH 0/7] Add USB remote wakeup driver

From: Rob Herring <hidden>
Date: 2017-12-15 20:55:10
Also in: linux-arm-kernel, linux-mediatek, lkml

On Sat, Dec 09, 2017 at 04:45:29PM +0800, Chunfeng Yun wrote:
    These patches introduce the SSUSB and SPM glue layer driver which is
used to support usb remote wakeup. Usually the glue layer is put into
a system controller, such as PERICFG module.
    The old way to support usb wakeup is put into SSUSB controller drivers,
including xhci-mtk driver and mtu3 driver, but there are some problems:
    1. can't disdinguish the relation between glue layer and SSUSB IP
       when SoCs supports multi SSUSB IPs;
    2. duplicated code for wakeup are put into both xhci-mtk and mtu3
       drivers;
    3. the glue layer may vary on different SoCs with SSUSB IP, and will
       make SSUSB controller drivers complicated;
    In order to resolve these problems, it's useful to make the glue layer
transparent by extracting a seperated driver, meanwhile to reduce the
duplicated code and simplify SSUSB controller drivers.
Both the driver and binding look overly complicated to me when it looks 
like you just have 2 versions of enable/disable functions which modify 
a single register. The complexity may be justified if this was a common 
binding and driver, but it is not.

You already have a phandle to the system controller. Can't you add cells 
to it to handle any differences between instances? That and SoC specific 
compatible strings should be enough to handle differences.

Rob
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help