Lines Matching refs:wp
356 uint32_t wp;
366 wp = udd->rxTransfer->wp;
370 if (rp == wp) {
374 if (rp < wp) { // rp behind
375 upperHalf = (count > (wp - rp)) ? (wp - rp) : count;
380 } else { // wp behind
381 count = (count > (BUF_SIZE - rp + wp)) ? (BUF_SIZE - rp + wp) : count;
411 uint32_t wp;
421 wp = udd->rxTransfer->wp;
425 if (wp < rp) { // wp behind
426 upperHalf = (count > (rp - wp - 1)) ? (rp - wp - 1) : count;
427 if (upperHalf > 0 && memcpy_s((void *)(data + wp), upperHalf, buf, upperHalf) != EOK) {
430 wp += upperHalf;
432 count = (count > ((BUF_SIZE - wp) + rp - 1)) ? (BUF_SIZE - wp) + rp - 1 : count;
433 upperHalf = (count > (BUF_SIZE - wp)) ? (BUF_SIZE - wp) : count;
434 lowerHalf = (count > (BUF_SIZE - wp)) ? (count - (BUF_SIZE - wp)) : 0;
435 if (upperHalf > 0 && memcpy_s((void *)(data + wp), upperHalf, buf, upperHalf) != EOK) {
441 wp += upperHalf;
442 if (wp >= BUF_SIZE) {
443 wp = lowerHalf;
451 udd->rxTransfer->wp = wp;
458 return (transfer->wp == transfer->rp);