[PATCH v4 0/8] usb: misc: onboard_hub: add support for XMOS XVF3500

Alexander Stein alexander.stein at ew.tq-group.com
Tue Feb 20 06:34:55 PST 2024


Hi,

Am Dienstag, 20. Februar 2024, 15:05:44 CET schrieb Javier Carrasco:
> This series adds support for the XMOS XVF3500 VocalFusion Voice
> Processor[1], a low-latency, 32-bit multicore controller for voice
> processing.
> 
> The XVF3500 requires a specific power sequence, which consists of
> enabling the regulators that control the 3V3 and 1V0 device supplies,
> and a reset de-assertion after a delay of at least 100ns. Once in normal
> operation, the XVF3500 registers itself as a regular USB device and no
> device-specific management is required.

While reading this, [1] come into my mind.

Best regards,
Alexander

[1] https://lore.kernel.org/all/20211006035407.1147909-1-dmitry.baryshkov@linaro.org/

> The power management provided by onboard_usb_hub is not specific for hubs
> and any other USB device with the same power sequence could profit from
> that driver, provided that the device does not have any specific
> requirements beyond the power management. To account for non-hub devices,
> the driver has been renamed and an extra flag has been added to identify
> hubs and provide their specific functionality. Support for
> device-specific power suply names has been added, keeping generic names
> for backwards compatibility and as a fallback mechanism.
> 
> The references to onboard_usb_hub in the core and config files have been
> updated as well.
> 
> The diff is way much bulkier than the actual code addition because of the
> file renaming, so in order to ease reviews and catch hub-specific code
> that might still affect non-hub devices, the complete renaming was moved
> to a single commit.
> 
> The device binding has been added to sound/ because it is the subsystem
> that covers its functionality (voice processing) during normal
> operation. If it should reside under usb/ instead, it will be moved as
> required.
> 
> This series has been tested with a Rockchip-based SoC and an XMOS
> XVF3500-FB167-C.
> 
> [1] https://www.xmos.com/xvf3500/
> 
> To: Liam Girdwood <lgirdwood at gmail.com>
> To: Mark Brown <broonie at kernel.org>
> To: Rob Herring <robh+dt at kernel.org>
> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt at linaro.org>
> To: Conor Dooley <conor+dt at kernel.org>
> To: Matthias Kaehlcke <mka at chromium.org>
> To: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
> To: Helen Koike <helen.koike at collabora.com>
> To: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> To: Maxime Ripard <mripard at kernel.org>
> To: Thomas Zimmermann <tzimmermann at suse.de>
> To: David Airlie <airlied at gmail.com>
> To: Daniel Vetter <daniel at ffwll.ch>
> To: Catalin Marinas <catalin.marinas at arm.com>
> To: Will Deacon <will at kernel.org>
> To: Russell King <linux at armlinux.org.uk>
> Cc: linux-sound at vger.kernel.org
> Cc: devicetree at vger.kernel.org
> Cc: linux-kernel at vger.kernel.org
> Cc: linux-usb at vger.kernel.org
> Cc: dri-devel at lists.freedesktop.org
> Cc: linux-arm-kernel at lists.infradead.org
> Signed-off-by: Javier Carrasco <javier.carrasco at wolfvision.net>
> 
> Changes in v4:
> - General: use device supply names and generics as fallback.
> - onbord_usb_dev.c: fix suspend callback for non-hub devices.
> - onboard_usb_dev.c: fix typos.
> 
> - Link to v3: https://lore.kernel.org/r/20240206-onboard_xvf3500-v3-0-f85b04116688@wolfvision.net
> 
> Changes in v3:
> - onboard_usb_hub: rename to onboard_usb_dev to include non-hub devices.
> - onboard_hub_dev: add flag to identify hubs and provide their extra
>   functionality.
> - dt-bindings: add reference to usb-device.yaml and usb node in the
>   example.
> - dt-bindings: generic node name.
> - Link to v2: https://lore.kernel.org/r/20240130-onboard_xvf3500-v1-0-51b5398406cb@wolfvision.net
> 
> Changes in v2:
> - general: add support in onboard_usb_hub instead of using a dedicated
>   driver.
> - dt-bindings: use generic usb-device compatible ("usbVID,PID").
> - Link to v1: https://lore.kernel.org/all/20240115-feature-xvf3500_driver-v1-0-ed9cfb48bb85@wolfvision.net/
> 
> ---
> Javier Carrasco (8):
>       usb: misc: onboard_hub: rename to onboard_dev
>       usb: misc: onboard_dev: add support for non-hub devices
>       drm: ci: arm64.config: update ONBOARD_USB_HUB to ONBOARD_USB_DEV
>       arm64: defconfig: update ONBOARD_USB_HUB to ONBOARD_USB_DEV
>       ARM: multi_v7_defconfig: update ONBOARD_USB_HUB name
>       usb: misc: onboard_dev: use device supply names
>       ASoC: dt-bindings: xmos,xvf3500: add XMOS XVF3500 voice processor
>       usb: misc: onboard_hub: add support for XMOS XVF3500
> 
>  ...-usb-hub => sysfs-bus-platform-onboard-usb-dev} |   4 +-
>  .../devicetree/bindings/sound/xmos,xvf3500.yaml    |  63 +++
>  MAINTAINERS                                        |   4 +-
>  arch/arm/configs/multi_v7_defconfig                |   2 +-
>  arch/arm64/configs/defconfig                       |   2 +-
>  drivers/gpu/drm/ci/arm64.config                    |   4 +-
>  drivers/usb/core/Makefile                          |   4 +-
>  drivers/usb/core/hub.c                             |   8 +-
>  drivers/usb/core/hub.h                             |   2 +-
>  drivers/usb/misc/Kconfig                           |  16 +-
>  drivers/usb/misc/Makefile                          |   2 +-
>  drivers/usb/misc/onboard_usb_dev.c                 | 525 +++++++++++++++++++++
>  .../misc/{onboard_usb_hub.h => onboard_usb_dev.h}  |  69 ++-
>  ...ard_usb_hub_pdevs.c => onboard_usb_dev_pdevs.c} |  47 +-
>  drivers/usb/misc/onboard_usb_hub.c                 | 501 --------------------
>  include/linux/usb/onboard_dev.h                    |  18 +
>  include/linux/usb/onboard_hub.h                    |  18 -
>  17 files changed, 709 insertions(+), 580 deletions(-)
> ---
> base-commit: 41bccc98fb7931d63d03f326a746ac4d429c1dd3
> change-id: 20240130-onboard_xvf3500-6c0e78d11a1b
> 
> Best regards,
> 


-- 
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/





More information about the linux-arm-kernel mailing list