2022-07-26 08:13:06

by Fabrice Gasnier

[permalink] [raw]
Subject: [PATCH v2 0/4] usb: misc: adopt onboard hub support on stm32mp1 boards

Add support for USB2514B HUB found on stm32mp1 boards:
- Extend the ehci-generic dt-binding to fully use the usb-hcd.yaml, and so
the usb-device.yaml.
- Add usb-device compatible ("usbVID,PID") for the USB2514B USB2.0 HUB to
the onboard_usb_hub driver.
- Add relevant device tree node to stm32mp15 DK boards.
- Enable the onboard_usb_hub driver on multi_v7 platforms.

Changes in v2:
- Follow Matthias review comments
- dt-bindings reviewed by Rob

Fabrice Gasnier (4):
dt-bindings: usb: generic-ehci: allow usb-hcd schema properties
usb: misc: onboard-hub: add support for Microchip USB2514B USB 2.0 hub
ARM: dts: stm32: add support for USB2514B onboard hub on
stm32mp15xx-dkx
ARM: multi_v7_defconfig: enable USB onboard HUB driver

Documentation/devicetree/bindings/usb/generic-ehci.yaml | 7 +------
arch/arm/boot/dts/stm32mp15xx-dkx.dtsi | 8 ++++++++
arch/arm/configs/multi_v7_defconfig | 1 +
drivers/usb/misc/onboard_usb_hub.c | 2 ++
drivers/usb/misc/onboard_usb_hub.h | 1 +
5 files changed, 13 insertions(+), 6 deletions(-)

--
2.25.1


2022-07-26 08:26:04

by Fabrice Gasnier

[permalink] [raw]
Subject: [PATCH v2 4/4] ARM: multi_v7_defconfig: enable USB onboard HUB driver

Enable the USB onboard HUB driver, used on STM32MP1 boards.

Signed-off-by: Fabrice Gasnier <[email protected]>
---
arch/arm/configs/multi_v7_defconfig | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig
index ce9826bce29b3..d0f16b7f682bf 100644
--- a/arch/arm/configs/multi_v7_defconfig
+++ b/arch/arm/configs/multi_v7_defconfig
@@ -861,6 +861,7 @@ CONFIG_USB_CHIPIDEA_UDC=y
CONFIG_USB_CHIPIDEA_HOST=y
CONFIG_USB_ISP1760=y
CONFIG_USB_HSIC_USB3503=y
+CONFIG_USB_ONBOARD_HUB=m
CONFIG_AB8500_USB=y
CONFIG_KEYSTONE_USB_PHY=m
CONFIG_NOP_USB_XCEIV=y
--
2.25.1

2022-07-26 08:56:03

by Fabrice Gasnier

[permalink] [raw]
Subject: [PATCH v2 1/4] dt-bindings: usb: generic-ehci: allow usb-hcd schema properties

Allow properties and usb-device child nodes as defined in usb-hcd.yaml, by
using unevaluatedProperties: false. By the way, remove the "companion"
property as it's redundant with usb-hcd.yaml.
As example, this allows an onboard hub, to be described in generic-ehci
controller node:
usb {
compatible = "generic-ehci";
#address-cells = <1>;
#size-cells = <0>;
/* onboard HUB */
hub@1 {
compatible = "usb424,2514";
reg = <1>;
vdd-supply = <&v3v3>;
};
};

Without this, dtbs_check complains on '#address-cells', '#size-cells',
'hub@1' do not match any of the regexes: 'pinctrl-[0-9]+'
From schema: ..../generic-ehci.yaml

Reviewed-by: Rob Herring <[email protected]>
Signed-off-by: Fabrice Gasnier <[email protected]>
---
Documentation/devicetree/bindings/usb/generic-ehci.yaml | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
index 1e84e1b7ab271..e50c1cfaa1972 100644
--- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
+++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
@@ -130,11 +130,6 @@ properties:
Set this flag to indicate that the hardware sometimes turns on
the OC bit when an over-current isn't actually present.

- companion:
- $ref: /schemas/types.yaml#/definitions/phandle
- description:
- Phandle of a companion.
-
phys:
minItems: 1
maxItems: 3
@@ -155,7 +150,7 @@ required:
- reg
- interrupts

-additionalProperties: false
+unevaluatedProperties: false

examples:
- |
--
2.25.1