On Wednesday 27 September 2006 20:45, Michael Buesch wrote: > On Wednesday 27 September 2006 20:25, Larry Finger wrote: > > Michael Buesch wrote: > > > On Tuesday 26 September 2006 22:19, Igor Korot wrote: > > >> Hi, Larry, > > >> I applied the 10-pcs patch to the kernel (gentoo-sources 2.6.17-r7), and > > >> it did recognize > > >> the card. > > >> I will put the output of the files here: > > >> > > >> [EMAIL PROTECTED] ~ $ su > > >> Password: > > >> localhost igor # modprobe bcm43xx > > >> localhost igor # dmesg |tail > > >> bcm43xx: Number of cores: 4 > > >> bcm43xx: Core 0: ID 0x800, rev 0x1000, vendor 0x4243, enabled > > > ^^^^^^ > > > WTF?? > > > > > > > The appropriate code section is > > > > core_id = (sb_id_hi & 0x8FF0) >> 4; > > core_rev = (sb_id_hi & 0x7000) >> 8 | (sb_id_hi & 0xF); > > core_vendor = (sb_id_hi & 0xFFFF0000) >> 16; > > > > > > Is this a compiler error? > > > > Igor, what do you get with a 'gcc --version' command? > > Uh, oh. Does someone know from the top of the head if > the | operator has precedence over the >> operator? I guess so... > > Please try this: > core_rev = ((sb_id_hi & 0x7000) >> 8) | (sb_id_hi & 0xF);
Hm, testing on my compiler gcc (GCC) 4.0.4 20060630 (prerelease) (Ubuntu 4.0.3-4) Indicates that >> has higher precedence than |. So the code correctly compiles here. Might be some compiler bug, though. -- Greetings Michael. _______________________________________________ Bcm43xx-dev mailing list [email protected] https://lists.berlios.de/mailman/listinfo/bcm43xx-dev
