I found the fix over on linuxquestions.org. There is a kernel option to add to /etc/grub.conf:
psmouse.proto=imps
(also "bare" or "exps", possibly others).
From what I can see:
"bare" provides a generic 2 button mouse, with 3rd button emulation.
"imps" lets the explorer wheel act like a third button.
"exps" should enable the wheel, but actually left the thing hosed (as before).
On a couple machines, after adding this boot option, I had to run system-config-mouse to set up the mouse, then move the /etc/X11/xorg.conf and run system-config-display under X to get everything cleaned up. Console mode (runlevel 3) was very useful for testing though.
While I was fooling around with the boot options on one FC2 box, I used Windows 2K on another port. This was a little interesting--the green light on the wireless mouse receiver blinks when changing ports, and also when W2K was just about to launch the greeter, during bootup, right when the display blanks. They are resetting the mouse, I think, while going graphical.
I've noticed the green light blinks when linux boots, once, but very early on. Right around the first ACPI probes. The mouse driver must be setting up for "exps" and that's borked somehow--exps breaks the explorer mouse, at least with this hardware configuration. If the mouse is plugged directly into the ps2 port, it is fine, so it's a combination/stack of hw causing this.
Restarting gpm does not blink the light, and I didn't see it blink while starting or running X either. I wonder...is there a way to reset the mouse in FC2, such that the light blinks? I ask because after switching between ports for 20 minutes or so, trying to debug this while doing web searches, I saw the mouse freeze under W2K for a second, and then then the receiver light blinked. Could it be that somehow MS is detecting that the mouse is haywire, freezing the cursor by ignoring it, and then resetting the mouse? What an awful thing for software to go through, but with this particular hw stack maybe such a thing is necessary?
Regards, John