On Fri, Mar 22, 2019 at 11:53:20AM +0000, Stuart Henderson wrote: | This is a more general thing actually, the list of USB drivers is rather | haphazard at the moment. List below (to fit <80 cols I've snipped i386 | which has all drivers present in any other GENERIC config, amd64 which | is only missing umbg, and sgi with all its various different configs). | | Would it make sense to try unifying these for all/some arches? are | there particular space constraints for some (IIRC maybe the case on sgi, | not sure about others) or other reasons to restrict them?
One thing that could be considered is putting all USB devices into a separate file that gets included from the various arch-specific GENERIC config files. That would look a bit like the below for amd64 (although the 'USB' file would then probably move to sys/conf/). This has some obvious downsides, so this is probably not such a hot idea. There's some upsides too, though. Obviously, this is above my pay-grade - I cannot oversee the full implications. Index: GENERIC =================================================================== RCS file: /home/OpenBSD/cvs/src/sys/arch/amd64/conf/GENERIC,v retrieving revision 1.467 diff -u -p -r1.467 GENERIC --- GENERIC 22 Mar 2019 12:05:45 -0000 1.467 +++ GENERIC 22 Mar 2019 16:08:19 -0000 @@ -89,7 +89,6 @@ hvn* at hyperv? # Hyper-V NetVSC hvs* at hyperv? # Hyper-V StorVSC option PCIVERBOSE -option USBVERBOSE pchb* at pci? # PCI-Host bridges aapic* at pci? # AMD 8131 IO apic @@ -211,120 +210,7 @@ usb* at ehci? usb* at uhci? usb* at ohci? -# USB devices -uhub* at usb? # USB Hubs -uhub* at uhub? # USB Hubs -urng* at uhub? # USB Random Number Generator -uonerng* at uhub? # Moonbase Otago OneRNG -umodem* at uhub? # USB Modems/Serial -ucom* at umodem? -uvisor* at uhub? # Handspring Visor -ucom* at uvisor? -uvscom* at uhub? # SUNTAC Slipper U VS-10U serial -ucom* at uvscom? -ubsa* at uhub? # Belkin serial adapter -ucom* at ubsa? -uftdi* at uhub? # FTDI FT8U100AX serial adapter -ucom* at uftdi? -uplcom* at uhub? # I/O DATA USB-RSAQ2 serial adapter -ucom* at uplcom? -umct* at uhub? # MCT USB-RS232 serial adapter -ucom* at umct? -uslcom* at uhub? # Silicon Laboratories CP210x serial -ucom* at uslcom? -uscom* at uhub? # Simple USB serial adapters -ucom* at uscom? -uark* at uhub? # Arkmicro ARK3116 serial -ucom* at uark? -moscom* at uhub? # MosChip MCS7703 serial -ucom* at moscom? -umcs* at uhub? # MosChip MCS78x0 serial -ucom* at umcs? -uipaq* at uhub? # iPAQ serial adapter -ucom* at uipaq? -umsm* at uhub? # Qualcomm MSM EVDO -ucom* at umsm? -uchcom* at uhub? # WinChipHead CH341/340 serial -ucom* at uchcom? -uticom* at uhub? # TI serial -ucom* at uticom? -uaudio* at uhub? # USB Audio -audio* at uaudio? -umidi* at uhub? # USB MIDI -midi* at umidi? -ulpt* at uhub? # USB Printers -umass* at uhub? # USB Mass Storage devices -ubcmtp* at uhub? # Broadcom USB trackpad -wsmouse* at ubcmtp? mux 0 -uhidev* at uhub? # Human Interface Devices -ums* at uhidev? # USB mouse -wsmouse* at ums? mux 0 -umt* at uhidev? # USB multitouch touchpad -wsmouse* at umt? mux 0 -uts* at uhub? # USB touchscreen -wsmouse* at uts? mux 0 -uwacom* at uhidev? # USB Wacom tablet -wsmouse* at uwacom? mux 0 -ukbd* at uhidev? # USB keyboard -wskbd* at ukbd? mux 1 -ucycom* at uhidev? # Cypress serial -ucom* at ucycom? -uslhcom* at uhidev? # Silicon Labs CP2110 USB HID UART -ucom* at uslhcom? -uhid* at uhidev? # USB generic HID support -upd* at uhidev? # USB Power Devices sensors -aue* at uhub? # ADMtek AN986 Pegasus Ethernet -atu* at uhub? # Atmel AT76c50x based 802.11b -axe* at uhub? # ASIX Electronics AX88172 USB Ethernet -axen* at uhub? # ASIX Electronics AX88179 USB Ethernet -cue* at uhub? # CATC USB-EL1201A based Ethernet -kue* at uhub? # Kawasaki KL5KUSB101B based Ethernet -smsc* at uhub? # SMSC LAN95xx Ethernet -cdce* at uhub? # CDC Ethernet -urndis* at uhub? # Remote NDIS Ethernet -upl* at uhub? # Prolific PL2301/PL2302 host-to-host `network' -ugl* at uhub? # Genesys Logic GL620USB-A host-to-host `network' -udav* at uhub? # Davicom DM9601 based Ethernet -mos* at uhub? # MOSCHIP MCS7730/7830 10/100 Ethernet -mue* at uhub? # Microchip LAN75xx/LAN78xx Ethernet -url* at uhub? # Realtek RTL8150L based adapters -ure* at uhub? # Realtek RTL8152 based adapters -wi* at uhub? # WaveLAN IEEE 802.11DS -udsbr* at uhub? # D-Link DSB-R100 radio -radio* at udsbr? # USB radio -uberry* at uhub? # Research In Motion BlackBerry -ugen* at uhub? # USB Generic driver -uath* at uhub? # Atheros AR5005UG/AR5005UX -ural* at uhub? # Ralink RT2500USB -rum* at uhub? # Ralink RT2501USB/RT2601USB -run* at uhub? # Ralink RT2700U/RT2800U/RT3000U -otus* at uhub? # Atheros AR9001U -athn* at uhub? # Atheros AR9002U -zyd* at uhub? # Zydas ZD1211 -upgt* at uhub? # Conexant/Intersil PrismGT SoftMAC USB -urtw* at uhub? # Realtek 8187 -rsu* at uhub? # Realtek RTL8188SU/RTL8191SU/RTL8192SU -urtwn* at uhub? # Realtek RTL8188CU/RTL8192CU -udcf* at uhub? # Gude Expert mouseCLOCK -umbg* at uhub? # Meinberg Funkuhren USB5131/DCF600USB -umb* at uhub? # Mobile Broadband Interface Model -uthum* at uhidev? # TEMPerHUM sensor -ugold* at uhidev? # gold TEMPer sensor -utrh* at uhidev? # USBRH sensor -utwitch* at uhidev? # YUREX BBU sensor -uow* at uhub? # Maxim/Dallas DS2490 1-Wire adapter -uoakrh* at uhidev? # Toradex OAK temp and rel humidity -uoaklux* at uhidev? # Toradex OAK LUX -uoakv* at uhidev? # Toradex OAK 10V sensor -onewire* at uow? -uvideo* at uhub? # USB Video -video* at uvideo? -utvfu* at uhub? # Fushicai Audio-Video Grabber -video* at utvfu? -audio* at utvfu? -udl* at uhub? # DisplayLink USB displays -wsdisplay* at udl? -bwfm* at uhub? # Broadcom FullMAC +include "USB" puc* at pci? # PCI "universal" communication device com* at cardbus? @@ -629,7 +515,6 @@ audio* at auixp? audio* at auvia? audio* at azalia? #audio* at fms? -audio* at uaudio? #audio* at maestro? #audio* at esa? audio* at yds? Index: USB =================================================================== RCS file: USB diff -N USB --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ USB 22 Mar 2019 16:07:01 -0000 @@ -0,0 +1,118 @@ +option USBVERBOSE + +# USB devices +uhub* at usb? # USB Hubs +uhub* at uhub? # USB Hubs +urng* at uhub? # USB Random Number Generator +uonerng* at uhub? # Moonbase Otago OneRNG +umodem* at uhub? # USB Modems/Serial +ucom* at umodem? +uvisor* at uhub? # Handspring Visor +ucom* at uvisor? +uvscom* at uhub? # SUNTAC Slipper U VS-10U serial +ucom* at uvscom? +ubsa* at uhub? # Belkin serial adapter +ucom* at ubsa? +uftdi* at uhub? # FTDI FT8U100AX serial adapter +ucom* at uftdi? +uplcom* at uhub? # I/O DATA USB-RSAQ2 serial adapter +ucom* at uplcom? +umct* at uhub? # MCT USB-RS232 serial adapter +ucom* at umct? +uslcom* at uhub? # Silicon Laboratories CP210x serial +ucom* at uslcom? +uscom* at uhub? # Simple USB serial adapters +ucom* at uscom? +uark* at uhub? # Arkmicro ARK3116 serial +ucom* at uark? +moscom* at uhub? # MosChip MCS7703 serial +ucom* at moscom? +umcs* at uhub? # MosChip MCS78x0 serial +ucom* at umcs? +uipaq* at uhub? # iPAQ serial adapter +ucom* at uipaq? +umsm* at uhub? # Qualcomm MSM EVDO +ucom* at umsm? +uchcom* at uhub? # WinChipHead CH341/340 serial +ucom* at uchcom? +uticom* at uhub? # TI serial +ucom* at uticom? +uaudio* at uhub? # USB Audio +audio* at uaudio? +umidi* at uhub? # USB MIDI +midi* at umidi? +ulpt* at uhub? # USB Printers +umass* at uhub? # USB Mass Storage devices +ubcmtp* at uhub? # Broadcom USB trackpad +wsmouse* at ubcmtp? mux 0 +uhidev* at uhub? # Human Interface Devices +ums* at uhidev? # USB mouse +wsmouse* at ums? mux 0 +umt* at uhidev? # USB multitouch touchpad +wsmouse* at umt? mux 0 +uts* at uhub? # USB touchscreen +wsmouse* at uts? mux 0 +uwacom* at uhidev? # USB Wacom tablet +wsmouse* at uwacom? mux 0 +ukbd* at uhidev? # USB keyboard +wskbd* at ukbd? mux 1 +ucycom* at uhidev? # Cypress serial +ucom* at ucycom? +uslhcom* at uhidev? # Silicon Labs CP2110 USB HID UART +ucom* at uslhcom? +uhid* at uhidev? # USB generic HID support +upd* at uhidev? # USB Power Devices sensors +aue* at uhub? # ADMtek AN986 Pegasus Ethernet +atu* at uhub? # Atmel AT76c50x based 802.11b +axe* at uhub? # ASIX Electronics AX88172 USB Ethernet +axen* at uhub? # ASIX Electronics AX88179 USB Ethernet +cue* at uhub? # CATC USB-EL1201A based Ethernet +kue* at uhub? # Kawasaki KL5KUSB101B based Ethernet +smsc* at uhub? # SMSC LAN95xx Ethernet +cdce* at uhub? # CDC Ethernet +urndis* at uhub? # Remote NDIS Ethernet +upl* at uhub? # Prolific PL2301/PL2302 host-to-host `network' +ugl* at uhub? # Genesys Logic GL620USB-A host-to-host `network' +udav* at uhub? # Davicom DM9601 based Ethernet +mos* at uhub? # MOSCHIP MCS7730/7830 10/100 Ethernet +mue* at uhub? # Microchip LAN75xx/LAN78xx Ethernet +url* at uhub? # Realtek RTL8150L based adapters +ure* at uhub? # Realtek RTL8152 based adapters +wi* at uhub? # WaveLAN IEEE 802.11DS +udsbr* at uhub? # D-Link DSB-R100 radio +radio* at udsbr? # USB radio +uberry* at uhub? # Research In Motion BlackBerry +ugen* at uhub? # USB Generic driver +uath* at uhub? # Atheros AR5005UG/AR5005UX +ural* at uhub? # Ralink RT2500USB +rum* at uhub? # Ralink RT2501USB/RT2601USB +run* at uhub? # Ralink RT2700U/RT2800U/RT3000U +otus* at uhub? # Atheros AR9001U +athn* at uhub? # Atheros AR9002U +zyd* at uhub? # Zydas ZD1211 +upgt* at uhub? # Conexant/Intersil PrismGT SoftMAC USB +urtw* at uhub? # Realtek 8187 +rsu* at uhub? # Realtek RTL8188SU/RTL8191SU/RTL8192SU +urtwn* at uhub? # Realtek RTL8188CU/RTL8192CU +udcf* at uhub? # Gude Expert mouseCLOCK +umbg* at uhub? # Meinberg Funkuhren USB5131/DCF600USB +umb* at uhub? # Mobile Broadband Interface Model +uthum* at uhidev? # TEMPerHUM sensor +ugold* at uhidev? # gold TEMPer sensor +utrh* at uhidev? # USBRH sensor +utwitch* at uhidev? # YUREX BBU sensor +uow* at uhub? # Maxim/Dallas DS2490 1-Wire adapter +uoakrh* at uhidev? # Toradex OAK temp and rel humidity +uoaklux* at uhidev? # Toradex OAK LUX +uoakv* at uhidev? # Toradex OAK 10V sensor +onewire* at uow? +uvideo* at uhub? # USB Video +video* at uvideo? +utvfu* at uhub? # Fushicai Audio-Video Grabber +video* at utvfu? +audio* at utvfu? +udl* at uhub? # DisplayLink USB displays +wsdisplay* at udl? +bwfm* at uhub? # Broadcom FullMAC +audio* at uaudio? | ubcmtp (i386/amd64 only) | umb (i386/amd64 only) | | athn: arm64 armv7 landisk loongson macppc octeon socppc sparc64 | atu: arm64 armv7 hppa landisk loongson macppc octeon sparc64 | aue: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | bwfm: arm64 armv7 loongson macppc | cdce: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | cue: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | kue: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | mos: arm64 armv7 loongson macppc octeon socppc sparc64 | moscom: arm64 armv7 landisk loongson macppc octeon | mue: arm64 armv7 | otus: arm64 armv7 loongson macppc octeon | rsu: arm64 armv7 hppa landisk loongson macppc octeon socppc sparc64 | uark: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | uath: alpha arm64 armv7 landisk loongson macppc octeon socppc sparc64 | uaudio: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | uberry: arm64 armv7 loongson macppc octeon | ubsa: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | uchcom: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | udav: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | udcf: arm64 armv7 landisk loongson macppc octeon sparc64 | udl: arm64 armv7 hppa landisk loongson macppc socppc | udsbr: alpha arm64 armv7 hppa landisk macppc octeon sparc64 | uftdi: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | ugl: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | uipaq: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | umbg: macppc octeon sparc64 | umcs: arm64 armv7 landisk loongson macppc octeon | umct: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | umidi: alpha arm64 armv7 hppa loongson macppc sparc64 | umodem: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | umsm: arm64 armv7 hppa landisk loongson macppc octeon | uonerng: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | uow: alpha arm64 armv7 hppa macppc octeon sparc64 | upgt: arm64 armv7 loongson macppc octeon | upl: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | uplcom: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | ure: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | url: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | urndis: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | urng: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | urtw: arm64 armv7 loongson macppc octeon | urtwn: arm64 armv7 landisk loongson macppc octeon socppc sparc64 | uscom: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | uslcom: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | uticom: arm64 armv7 octeon | uts: arm64 armv7 macppc | utvfu: alpha arm64 armv7 loongson macppc octeon sparc64 | uvideo: alpha arm64 armv7 loongson macppc octeon sparc64 | uvisor: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | uvscom: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | wi: alpha arm64 armv7 hppa landisk loongson macppc octeon sparc64 | zyd: arm64 armv7 hppa landisk loongson macppc octeon socppc sparc64 | -- >++++++++[<++++++++++>-]<+++++++.>+++[<------>-]<.>+++[<+ +++++++++++>-]<.>++[<------------>-]<+.--------------.[-] http://www.weirdnet.nl/