Lines Matching refs:wp
357 uint32_t wp;
367 wp = udd->rxTransfer->wp;
371 if (rp == wp) {
375 if (rp < wp) { // rp behind
376 upperHalf = (count > (wp - rp)) ? (wp - rp) : count;
381 } else { // wp behind
382 count = (count > (BUF_SIZE - rp + wp)) ? (BUF_SIZE - rp + wp) : count;
412 uint32_t wp;
422 wp = udd->rxTransfer->wp;
426 if (wp < rp) { // wp behind
427 upperHalf = (count > (rp - wp - 1)) ? (rp - wp - 1) : count;
428 if (upperHalf > 0 && memcpy_s((void *)(data + wp), upperHalf, buf, upperHalf) != EOK) {
431 wp += upperHalf;
433 count = (count > ((BUF_SIZE - wp) + rp - 1)) ? (BUF_SIZE - wp) + rp - 1 : count;
434 upperHalf = (count > (BUF_SIZE - wp)) ? (BUF_SIZE - wp) : count;
435 lowerHalf = (count > (BUF_SIZE - wp)) ? (count - (BUF_SIZE - wp)) : 0;
436 if (upperHalf > 0 && memcpy_s((void *)(data + wp), upperHalf, buf, upperHalf) != EOK) {
442 wp += upperHalf;
443 if (wp >= BUF_SIZE) {
444 wp = lowerHalf;
452 udd->rxTransfer->wp = wp;
459 return (transfer->wp == transfer->rp);