Subject: Re: ugen change for review (try 2)
To: Quentin Garnier <>
From: Greg Troxel <>
List: tech-kern
Date: 07/24/2006 11:17:28
Content-Transfer-Encoding: quoted-printable

Quentin Garnier <> writes:

> On Mon, Jul 24, 2006 at 10:26:48AM -0400, Greg Troxel wrote:
>> (Christos Zoulas) writes:
>> > Is there a reason why we wouldn't
>> > want to enable them by default all the time?
>> I mentioned two earlier, and apparently no one is concerned about
>> breakage from this (if one doesn't call the ioctl).  The other is code
>> size, but we're talking about GENERIC, and this is critical for anyone
>> trying to use a USRP.  So, I enabled it in GENERIC and GENERIC_LAPTOP.
> The world is an i386?  Rnow people should consider at least amd64 as a
> really mainstream platform.  I'd actually consider enabling it in
> conf/std and disable it in size-constrained kernel configurations.

Good point; I'm used to other platforms, but haven't had an amd64 yet
so I'm not mentally used to USB2 being normal elsewhere.


  # this file is for options which can't be off-by-default for some reasons.
  # "it's commonly used" is NOT a good reason to enable options here.

My memory of the negative option debate is fuzzy.
I recall that we don't like "options NO_FOO", so inverting the sense
of the option is not ok.

A number of config files have ugen - list at end.  (I don't know why
i386/INSTALL_LAPTOP has ugen - I don't know of any ugen-attaching
device that one could install via.)

I could add the option to amd64/GENERIC if there are no objections
(but can't test even that it doesn't break things); that's certainly a
viable GNU Radio platform.  Is there someone running amd64 with a
USRP?  There's also alpha and sparc64.

Perhaps we need a standard config file for things that attach to
"uhub?" that can be included from kernels that have USB interfaces.
This should probably be done as part of a larger effort to perform
common subexpression elimination in config files, but might be a good
concrete example to drive the discussion.

alpha/conf/ALPHA:		ugen*	at uhub? port ?
alpha/conf/BASIL:		ugen*	at uhub? port ?
alpha/conf/GENERIC:		ugen*	at uhub? port ?
amd64/conf/GENERIC:		ugen*	at uhub? port ?
cats/conf/GENERIC:		ugen* at uhub? port ?
evbarm/conf/ARMADILLO9:		ugen*	at uhub? port ?
evbarm/conf/HDL_G:		ugen*	at uhub? port ?
evbarm/conf/NSLU2:		ugen*		at uhub? port ? configuration ? interface ?
evbarm/conf/SMDK2410:		ugen*	at uhub? port ?
evbarm/conf/TS7200:		ugen*	at uhub? port ?
evbmips/conf/ALCHEMY:		ugen*		at uhub? port ?
evbmips/conf/MALTA:		ugen*		at uhub? port ?
evbppc/conf/OPENBLOCKS266_OPT:		ugen*	at uhub? port ?
hpcmips/conf/GENERIC:		ugen*	at uhub? port ?
hpcmips/conf/MPC303:		ugen*	at uhub? port ?
hpcmips/conf/TX3922:		ugen*	at uhub? port ?
hpcmips/conf/VR41XX:		ugen*	at uhub? port ?
i386/conf/GENERIC:		ugen*	at uhub? port ?
i386/conf/GENERIC:		options	UGEN_BULK_RA_WB
i386/conf/GENERIC_LAPTOP:		ugen*	at uhub? port ?
i386/conf/GENERIC_LAPTOP:		options	UGEN_BULK_RA_WB
i386/conf/INSTALL_LAPTOP:		ugen*	at uhub? port ? configuration ? interface ?
i386/conf/IOPENER:		ugen*	at uhub? port ?
i386/conf/SWINGER:		ugen*	at uhub? port ?
i386/conf/VIRTUALPC:		ugen*	at uhub? port ?
i386/conf/XEN2_DOM0:		ugen*   at uhub? port ?
macppc/conf/GENERIC:		ugen*	at uhub? port ? configuration ? interface ?	# U=
SB Generic driver
playstation2/conf/config.playstation2:		ugen*	at uhub? port ?
pmppc/conf/PMPPC:		ugen*	at uhub? port ?
sgimips/conf/GENERIC32_IP3x:		ugen*   at uhub? port ?
sparc64/conf/GENERIC:		ugen*	at uhub? port ?

    Greg Troxel <>

Content-Type: application/pgp-signature

Version: GnuPG v1.4.4 (NetBSD)