Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

staging: octeon-usb: move driver out of staging

The Octeon usb driver has been in staging for a long time and used in
Ubiquiti routers for a while now.
It's been built and then tested on real hardware with several usb devices
and it is proven to be stable and ready to be moved to its proper place
in the kernel tree.

Move it to drivers/usb/host and adjust its Makefile, Kconfig and defconfig
dependencies.

Many thanks to the developers who made it happen.

Signed-off-by: Artur Bujdoso <artur.bujdoso@gmail.com>
Link: https://lore.kernel.org/r/Yo0HBIlSXOBM+//9@crux
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Artur Bujdoso and committed by
Greg Kroah-Hartman
9dbdac02 a111daf0

+12 -25
+1 -1
arch/mips/configs/cavium_octeon_defconfig
··· 134 134 CONFIG_RTC_DRV_DS1307=y 135 135 CONFIG_STAGING=y 136 136 CONFIG_OCTEON_ETHERNET=y 137 - CONFIG_OCTEON_USB=y 137 + CONFIG_USB_OCTEON_HCD=y 138 138 # CONFIG_IOMMU_SUPPORT is not set 139 139 CONFIG_RAS=y 140 140 CONFIG_EXT4_FS=y
-2
drivers/staging/Kconfig
··· 42 42 43 43 source "drivers/staging/octeon/Kconfig" 44 44 45 - source "drivers/staging/octeon-usb/Kconfig" 46 - 47 45 source "drivers/staging/vt6655/Kconfig" 48 46 49 47 source "drivers/staging/vt6656/Kconfig"
-1
drivers/staging/Makefile
··· 11 11 obj-$(CONFIG_R8188EU) += r8188eu/ 12 12 obj-$(CONFIG_RTS5208) += rts5208/ 13 13 obj-$(CONFIG_OCTEON_ETHERNET) += octeon/ 14 - obj-$(CONFIG_OCTEON_USB) += octeon-usb/ 15 14 obj-$(CONFIG_VT6655) += vt6655/ 16 15 obj-$(CONFIG_VT6656) += vt6656/ 17 16 obj-$(CONFIG_VME_BUS) += vme_user/
-11
drivers/staging/octeon-usb/Kconfig
··· 1 - # SPDX-License-Identifier: GPL-2.0 2 - config OCTEON_USB 3 - tristate "Cavium Networks Octeon USB support" 4 - depends on CAVIUM_OCTEON_SOC && USB 5 - help 6 - This driver supports USB host controller on some Cavium 7 - Networks' products in the Octeon family. 8 - 9 - To compile this driver as a module, choose M here. The module 10 - will be called octeon-hcd. 11 -
-2
drivers/staging/octeon-usb/Makefile
··· 1 - # SPDX-License-Identifier: GPL-2.0 2 - obj-${CONFIG_OCTEON_USB} := octeon-hcd.o
-8
drivers/staging/octeon-usb/TODO
··· 1 - This driver is functional and has been tested on EdgeRouter Lite, 2 - D-Link DSR-1000N and EBH5600 evaluation board with USB mass storage. 3 - 4 - TODO: 5 - - kernel coding style 6 - - checkpatch warnings 7 - 8 - Contact: Aaro Koskinen <aaro.koskinen@iki.fi>
drivers/staging/octeon-usb/octeon-hcd.c drivers/usb/host/octeon-hcd.c
drivers/staging/octeon-usb/octeon-hcd.h drivers/usb/host/octeon-hcd.h
+10
drivers/usb/host/Kconfig
··· 306 306 Dova, Armada 370 and Armada XP. See "Support for Marvell EBU 307 307 on-chip EHCI USB controller" for those. 308 308 309 + config USB_OCTEON_HCD 310 + tristate "Cavium Networks Octeon USB support" 311 + depends on CAVIUM_OCTEON_SOC && USB 312 + help 313 + This driver supports USB host controller on some Cavium 314 + Networks' products in the Octeon family. 315 + 316 + To compile this driver as a module, choose M here. The module 317 + will be called octeon-hcd. 318 + 309 319 config USB_CNS3XXX_EHCI 310 320 bool "Cavium CNS3XXX EHCI Module (DEPRECATED)" 311 321 depends on ARCH_CNS3XXX || COMPILE_TEST
+1
drivers/usb/host/Makefile
··· 63 63 obj-$(CONFIG_USB_OHCI_HCD_LPC32XX) += ohci-nxp.o 64 64 obj-$(CONFIG_USB_OHCI_HCD_PXA27X) += ohci-pxa27x.o 65 65 obj-$(CONFIG_USB_OHCI_HCD_DAVINCI) += ohci-da8xx.o 66 + obj-$(CONFIG_USB_OCTEON_HCD) += octeon-hcd.o 66 67 67 68 obj-$(CONFIG_USB_UHCI_HCD) += uhci-hcd.o 68 69 obj-$(CONFIG_USB_FHCI_HCD) += fhci.o