BCMMBOX_CHANNEL_MASK
chan = mbox & BCMMBOX_CHANNEL_MASK;
data = mbox & ~BCMMBOX_CHANNEL_MASK;
if ((sc->sc_mbox[chan] & BCMMBOX_CHANNEL_MASK) != 0) {
sc->sc_mbox[chan] = data | BCMMBOX_CHANNEL_MASK;
KASSERT(chan == (chan & BCMMBOX_CHANNEL_MASK));
while ((sc->sc_mbox[chan] & BCMMBOX_CHANNEL_MASK) == 0) {
*data = sc->sc_mbox[chan] & ~BCMMBOX_CHANNEL_MASK;
KASSERT(chan == (chan & BCMMBOX_CHANNEL_MASK));
KASSERT(data == (data & ~BCMMBOX_CHANNEL_MASK));