Date: Sun, 23 Jan 2011 10:19:02 +0100 From: Hans Petter Selasky <hselasky@freebsd.org> To: gljennjohn@googlemail.com Cc: "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "src-committers@freebsd.org" <src-committers@freebsd.org> Subject: Re: svn commit: r217718 - in head/sys: conf dev/usb Message-ID: <201101231019.02603.hselasky@freebsd.org> In-Reply-To: <20110122160918.373f8670@ernst.jennejohn.org> References: <201101221352.p0MDqNt3093630@svn.freebsd.org> <20110122160918.373f8670@ernst.jennejohn.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Saturday 22 January 2011 16:09:18 Gary Jennejohn wrote: > On Sat, 22 Jan 2011 13:52:23 +0000 (UTC) > > Hans Petter Selasky <hselasky@FreeBSD.org> wrote: > > Author: hselasky > > Date: Sat Jan 22 13:52:23 2011 > > New Revision: 217718 > > URL: http://svn.freebsd.org/changeset/base/217718 > > > > Log: > > Allow USB_HOST_ALIGN to be configured at compile time. This patch is > > necessary for MIPS based RouterStation Pro board and maybe other MIPS > > based boards as well. > > > > Submitted by: Milan Obuch > > Approved by: thompsa (mentor) > > > > Modified: > > head/sys/conf/options > > head/sys/dev/usb/usb_freebsd.h > > > > Modified: head/sys/conf/options > > ========================================================================= > > ===== --- head/sys/conf/options Sat Jan 22 13:18:28 2011 (r217717) > > +++ head/sys/conf/options Sat Jan 22 13:52:23 2011 (r217718) > > @@ -642,6 +642,7 @@ BUS_DEBUG opt_bus.h > > > > # options for USB support > > USB_DEBUG opt_usb.h > > > > +USB_HOST_ALIGN opt_usb.h Sorry I didn't see this option sneaking in during r217631 :-) Anyway, two times is better than one time :-) > > > > USB_REQ_DEBUG opt_usb.h > > USB_VERBOSE opt_usb.h > > USB_EHCI_BIG_ENDIAN_DESC opt_usb.h > > > > Modified: head/sys/dev/usb/usb_freebsd.h > > ========================================================================= > > ===== --- head/sys/dev/usb/usb_freebsd.h Sat Jan 22 13:18:28 > > 2011 (r217717) +++ head/sys/dev/usb/usb_freebsd.h Sat Jan 22 13:52:23 > > 2011 (r217718) @@ -46,7 +46,12 @@ > > > > #define USB_TD_GET_PROC(td) (td)->td_proc > > #define USB_PROC_GET_GID(td) (td)->p_pgid > > > > +#if defined(USB_HOST_ALIGN) && (USB_HOST_ALIGN != 0) > > +/* USB_HOST_ALIGN is already defined and valid */ > > Not necessarily valid. What if the user sets it to -24? The compiler > will happily accept that with the above #if-statement. > > IMO you should test for USB_HOST_ALIGN > 0, which should always work. > > Defensive programming is always a good idea. I agree. Does this look OK: #if defined(USB_HOST_ALIGN) && (USB_HOST_ALIGN != 0) #if (-USB_HOST_ALIGN & USB_HOST_ALIGN) == USB_HOST_ALIGN #error "USB_HOST_ALIGN is not power of two." #endif #if (USB_HOST_ALIGN <= 0) #error "USB_HOST_ALIGN is less than or equal to zero." #endif ... > > > +#else > > +#undef USB_HOST_ALIGN > > > > #define USB_HOST_ALIGN 8 /* bytes, must be power of two */ > > > > +#endif > > > > #define USB_FS_ISOC_UFRAME_MAX 4 /* exclusive unit */ > > #define USB_BUS_MAX 256 /* units */ > > #define USB_MAX_DEVICES 128 /* units */ --HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201101231019.02603.hselasky>