Messages in this thread | | | Subject | Re: [PATCH v2 2/2] usb: Add driver to allow any GPIO to be used for 7211 USB signals | From | Florian Fainelli <> | Date | Fri, 9 Oct 2020 16:40:08 -0700 |
| |
On 10/9/2020 12:08 PM, Al Cooper wrote: > The Broadcom 7211 has new functionality that allows some USB low > speed side band signals, that go from the XHCI host controller to > pins on the chip, to be remapped to use any GPIO pin instead of the > limited set selectable by hardware. This can be done without changing > the standard driver for the host controller. There is currently > support for three USB signals, PWRON, VBUS_PRESENT and PWRFLT. This > driver will allow the remapping of any of these three signals based > on settings in the Device Tree node for the driver. The driver was > written so that it could handle additional signals added in the > future by just adding the correct properties to the DT node. > > Below is an example of a DT node that would remap all three > signals: > > usb_pinmap: usb-pinmap@22000d0 { > compatible = "brcm,usb-pinmap"; > reg = <0x22000d0 0x4>; > in-gpios = <&gpio 18 0>, <&gpio 19 0>; > brcm,in-functions = "VBUS", "PWRFLT"; > brcm,in-masks = <0x8000 0x40000 0x10000 0x80000>; > out-gpios = <&gpio 20 0>; > brcm,out-functions = "PWRON"; > brcm,out-masks = <0x20000 0x800000 0x400000 0x200000>; > interrupts = <0x0 0xb2 0x4>; > }; > > Signed-off-by: Al Cooper <alcooperx@gmail.com> > ---
[snip]
> +config BRCM_USB_PINMAP > + tristate "Broadcom pinmap driver support" > + depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST > + default y if (ARCH_BRCMSTB && PHY_BRCM_USB)
default ARCH_BRCMSTB && PHY_BRCM_USB should work as well.
> +static int __init brcmstb_usb_pinmap_init(void) > +{ > + return platform_driver_probe(&brcmstb_usb_pinmap_driver, > + brcmstb_usb_pinmap_probe); > +} > + > +module_init(brcmstb_usb_pinmap_init);
You would need MODULE_AUTHOR(), LICENSE and DESCRIPTION() in case you make this modular.
-- Florian
| |