cvs commit: src/sys/dev/usb ums.c

Maxime Henrion mux at FreeBSD.org
Fri Dec 30 21:09:38 PST 2005


Alexander Leidinger wrote:
> On Fri, 30 Dec 2005 01:28:53 -0800
> Nate Lawson <nate at root.org> wrote:
> 
> > >>> #define UMS_BUT(i) ((i) < 3 ? (((i) + 2) % 3) : (i))
> 
> > I meant that this maps 0:2, 1:0, 2:1, 3:3, 4:4, ...  Or in other words, 
> > it only operates on 2-bit values (0-3).  I don't know if that's an issue 
> > or not, I just was wondering if that also needed to be expanded.
> 
> NetBSD has:
> #define UMS_BUT(i) ((i) == 1 || (i) == 2 ? 3 - (i) : i)
> 
> So this maps 0:0, 1:2, 2:1, 3:3, 4:4, ... so it's completely different
> below 3 and the same for the rest. So for the new buttons 8 to 31 it
> doesn't make a difference. Since it also wasn't changed in the
> MAX_BUTTONS commit, I didn't merged it.
> 
> I think the change was introduced in the uhidev commit, but I didn't
> checked this. Maxime (CCed) is working on merging the uhidev stuff,
> maybe he knows for sure.

Actually, NetBSD has had the UMS_BUT() macro this way since the
beginning (revision 1.16), it wasn't changed by the uhidev commit.  I
have no idea what's the correct thing to do here, what's quite sure is
that one of us has it wrong :-).  You should send a mail to
augustss at NetBSD.org since he changed the UMS_BUT() macro this way a long
time ago when committing patches from Nick Hibma :

revision 1.16
date: 1998/12/26 12:53:03;  author: augustss;  state: Exp;  lines: +439-88
Merge changes to make the USB stack work with FreeBSD.  The original
diffs from Nick Hibma <n_hibma at freebsd.org>, but with substantial
changes from me.
XXX Not tested on FreeBSD yet.

Cheers,
Maxime


More information about the cvs-src mailing list