diff --git a/kernel/wr-nic-dio.c b/kernel/wr-nic-dio.c index fed1852ca4bc9b7987a09fc56c3f76148d1b4cc4..5dbe0e344ed4138768c8ed5e8127ad7dd5008a93 100644 --- a/kernel/wr-nic-dio.c +++ b/kernel/wr-nic-dio.c @@ -228,11 +228,11 @@ again: mask = (1 << ch); } /* handle the 1-channel and mask case in the same loop */ - for (; ch <= last; ch++) { + c = d->ch + ch; + for (; ch <= last; ch++, c++) { if (((1 << ch) & mask) == 0) continue; map = regmap + ch; - c = d->ch + ch; while (1) { if (nstamp == WR_DIO_N_STAMP) break;