On Thu, Jun 16, 2011 at 04:45:21PM -0700, Julian Calaby wrote: > Henry, > > On Fri, Jun 17, 2011 at 09:37, Henry Ptasinski <henryp@xxxxxxxxxxxx> wrote: > > How's this for a somewhat clearer implementation: > > > > static bool brcms_c_validboardtype(struct brcms_c_hw_info *wlc_hw) > > { > > bool goodboard = true; > > uint boardrev = wlc_hw->boardrev; > > > > if (wlc_hw->sih->boardvendor == PCI_VENDOR_ID_BROADCOM) { > > You could reduce indentation by having this be: > > if (wlc_hw->sih->boardvendor != PCI_VENDOR_ID_BROADCOM) > return true; > > > /* validate boardrev */ > > if (boardrev == 0) > > goodboard = false; > > and remove the goodboard variable by having this return false immediately. > > > else if (boardrev > 0xff) { > > You could also drop the else and have this as > > if (boardrev <= 0xff) > return true; > > > /* 4 bits each for board type, major, minor, and tiny > > version numbers */ > > uint brt = (boardrev & 0xf000) >> 12; > > uint b0 = (boardrev & 0xf00) >> 8; > > uint b1 = (boardrev & 0xf0) >> 4; > > uint b2 = boardrev & 0xf; > > > > if ((brt > 2) || (brt == 0) || (b0 > 9) || (b0 == 0) > > || (b1 > 9) || (b2 > 9)) > > goodboard = false; > > and return false here too. > > > } > > } > > > > return goodboard; > > then just return true here. > > > } > > Thanks, > > -- > Julian Calaby Yea, it's a lot flatter with those changes. Look for it in a patch set relatively soon ... - Henry _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel