Skip to content

Commit fc5cdbc

Browse files
committed
remove duplicate link register bit macros
Signed-off-by: Rafael Silva <[email protected]>
1 parent 9c0efb8 commit fc5cdbc

File tree

3 files changed

+136
-168
lines changed

3 files changed

+136
-168
lines changed

src/portable/renesas/link/dcd_link.c

Lines changed: 55 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
#define USE_SOF 0
3333

3434
#if CFG_TUD_ENABLED && (CFG_TUSB_MCU == OPT_MCU_RX63X || CFG_TUSB_MCU == OPT_MCU_RX65X || CFG_TUSB_MCU == OPT_MCU_RX72N || \
35-
CFG_TUSB_MCU == OPT_MCU_RAXXX)
35+
CFG_TUSB_MCU == OPT_MCU_RAXXX)
3636

3737
#include "device/dcd.h"
3838
#include "link_type.h"
@@ -245,7 +245,7 @@ static bool pipe0_xfer_in(void)
245245
}
246246
}
247247
if (len < mps)
248-
LINK_REG->CFIFOCTR = USB_FIFOCTR_BVAL;
248+
LINK_REG->CFIFOCTR = LINK_REG_CFIFOCTR_BVAL_Msk;
249249
pipe->remaining = rem - len;
250250
return false;
251251
}
@@ -268,7 +268,7 @@ static bool pipe0_xfer_out(void)
268268
}
269269
}
270270
if (len < mps)
271-
LINK_REG->CFIFOCTR = USB_FIFOCTR_BCLR;
271+
LINK_REG->CFIFOCTR = LINK_REG_CFIFOCTR_BCLR_Msk;
272272
pipe->remaining = rem - len;
273273
if ((len < mps) || (rem == len)) {
274274
pipe->buf = NULL;
@@ -287,7 +287,7 @@ static bool pipe_xfer_in(unsigned num)
287287
return true;
288288
}
289289

290-
LINK_REG->D0FIFOSEL = num | USB_FIFOSEL_MBW_16 | (TU_BYTE_ORDER == TU_BIG_ENDIAN ? USB_FIFOSEL_BIGEND : 0);
290+
LINK_REG->D0FIFOSEL = num | LINK_REG_FIFOSEL_MBW_16BIT | (TU_BYTE_ORDER == TU_BIG_ENDIAN ? LINK_REG_FIFOSEL_BIGEND : 0);
291291
const unsigned mps = edpt_max_packet_size(num);
292292
pipe_wait_for_ready(num);
293293
const unsigned len = TU_MIN(rem, mps);
@@ -301,7 +301,7 @@ static bool pipe_xfer_in(unsigned num)
301301
}
302302
}
303303
if (len < mps)
304-
LINK_REG->D0FIFOCTR = USB_FIFOCTR_BVAL;
304+
LINK_REG->D0FIFOCTR = LINK_REG_CFIFOCTR_BVAL_Msk;
305305
LINK_REG->D0FIFOSEL = 0;
306306
while (LINK_REG->D0FIFOSEL_b.CURPIPE) continue; /* if CURPIPE bits changes, check written value */
307307
pipe->remaining = rem - len;
@@ -313,7 +313,7 @@ static bool pipe_xfer_out(unsigned num)
313313
pipe_state_t *pipe = &_dcd.pipe[num];
314314
const unsigned rem = pipe->remaining;
315315

316-
LINK_REG->D0FIFOSEL = num | USB_FIFOSEL_MBW_8;
316+
LINK_REG->D0FIFOSEL = num | LINK_REG_FIFOSEL_MBW_8BIT;
317317
const unsigned mps = edpt_max_packet_size(num);
318318
pipe_wait_for_ready(num);
319319
const unsigned vld = LINK_REG->D0FIFOCTR_b.DTLN;
@@ -328,7 +328,7 @@ static bool pipe_xfer_out(unsigned num)
328328
}
329329
}
330330
if (len < mps)
331-
LINK_REG->D0FIFOCTR = USB_FIFOCTR_BCLR;
331+
LINK_REG->D0FIFOCTR = LINK_REG_CFIFOCTR_BCLR_Msk;
332332
LINK_REG->D0FIFOSEL = 0;
333333
while (LINK_REG->D0FIFOSEL_b.CURPIPE) ; /* if CURPIPE bits changes, check written value */
334334
pipe->remaining = rem - len;
@@ -342,21 +342,21 @@ static bool pipe_xfer_out(unsigned num)
342342
static void process_setup_packet(uint8_t rhport)
343343
{
344344
uint16_t setup_packet[4];
345-
if (0 == (LINK_REG->INTSTS0 & USB_IS0_VALID)) return;
346-
LINK_REG->CFIFOCTR = USB_FIFOCTR_BCLR;
345+
if (0 == (LINK_REG->INTSTS0 & LINK_REG_INTSTS0_VALID_Msk)) return;
346+
LINK_REG->CFIFOCTR = LINK_REG_CFIFOCTR_BCLR_Msk;
347347
setup_packet[0] = tu_le16toh(LINK_REG->USBREQ);
348348
setup_packet[1] = LINK_REG->USBVAL;
349349
setup_packet[2] = LINK_REG->USBINDX;
350350
setup_packet[3] = LINK_REG->USBLENG;
351-
LINK_REG->INTSTS0 = ~USB_IS0_VALID;
351+
LINK_REG->INTSTS0 = ~((uint16_t)LINK_REG_INTSTS0_VALID_Msk);
352352
dcd_event_setup_received(rhport, (const uint8_t*)&setup_packet[0], true);
353353
}
354354

355355
static void process_status_completion(uint8_t rhport)
356356
{
357357
uint8_t ep_addr;
358358
/* Check the data stage direction */
359-
if (LINK_REG->CFIFOSEL & USB_FIFOSEL_TX) {
359+
if (LINK_REG->CFIFOSEL & LINK_REG_CFIFOSEL_ISEL_WRITE) {
360360
/* IN transfer. */
361361
ep_addr = tu_edpt_addr(0, TUSB_DIR_IN);
362362
} else {
@@ -370,12 +370,12 @@ static bool process_pipe0_xfer(int buffer_type, uint8_t ep_addr, void* buffer, u
370370
{
371371
/* configure fifo direction and access unit settings */
372372
if (ep_addr) { /* IN, 2 bytes */
373-
LINK_REG->CFIFOSEL =
374-
USB_FIFOSEL_TX | USB_FIFOSEL_MBW_16 | (TU_BYTE_ORDER == TU_BIG_ENDIAN ? USB_FIFOSEL_BIGEND : 0);
375-
while (!(LINK_REG->CFIFOSEL & USB_FIFOSEL_TX)) ;
373+
LINK_REG->CFIFOSEL = LINK_REG_CFIFOSEL_ISEL_WRITE | LINK_REG_FIFOSEL_MBW_16BIT |
374+
(TU_BYTE_ORDER == TU_BIG_ENDIAN ? LINK_REG_FIFOSEL_BIGEND : 0);
375+
while (!(LINK_REG->CFIFOSEL & LINK_REG_CFIFOSEL_ISEL_WRITE)) ;
376376
} else { /* OUT, a byte */
377-
LINK_REG->CFIFOSEL = USB_FIFOSEL_MBW_8;
378-
while (LINK_REG->CFIFOSEL & USB_FIFOSEL_TX) ;
377+
LINK_REG->CFIFOSEL = LINK_REG_FIFOSEL_MBW_8BIT;
378+
while (LINK_REG->CFIFOSEL & LINK_REG_CFIFOSEL_ISEL_WRITE) ;
379379
}
380380

381381
pipe_state_t *pipe = &_dcd.pipe[0];
@@ -388,11 +388,11 @@ static bool process_pipe0_xfer(int buffer_type, uint8_t ep_addr, void* buffer, u
388388
TU_ASSERT(LINK_REG->DCPCTR_b.BSTS && (LINK_REG->USBREQ & 0x80));
389389
pipe0_xfer_in();
390390
}
391-
LINK_REG->DCPCTR = USB_PIPECTR_PID_BUF;
391+
LINK_REG->DCPCTR = LINK_REG_PIPE_CTR_PID_BUF;
392392
} else {
393393
/* ZLP */
394394
pipe->buf = NULL;
395-
LINK_REG->DCPCTR = USB_PIPECTR_CCPL | USB_PIPECTR_PID_BUF;
395+
LINK_REG->DCPCTR = LINK_REG_DCPCTR_CCPL_Msk | LINK_REG_PIPE_CTR_PID_BUF;
396396
}
397397
return true;
398398
}
@@ -416,7 +416,7 @@ static bool process_pipe_xfer(int buffer_type, uint8_t ep_addr, void* buffer, ui
416416
} else { /* ZLP */
417417
LINK_REG->D0FIFOSEL = num;
418418
pipe_wait_for_ready(num);
419-
LINK_REG->D0FIFOCTR = USB_FIFOCTR_BVAL;
419+
LINK_REG->D0FIFOCTR = LINK_REG_CFIFOCTR_BVAL_Msk;
420420
LINK_REG->D0FIFOSEL = 0;
421421
while (LINK_REG->D0FIFOSEL_b.CURPIPE) ; /* if CURPIPE bits changes, check written value */
422422
}
@@ -429,11 +429,11 @@ static bool process_pipe_xfer(int buffer_type, uint8_t ep_addr, void* buffer, ui
429429
if (pt) {
430430
const unsigned mps = edpt_max_packet_size(num);
431431
volatile uint16_t *ctr = get_pipectr(num);
432-
if (*ctr & 0x3) *ctr = USB_PIPECTR_PID_NAK;
432+
if (*ctr & 0x3) *ctr = LINK_REG_PIPE_CTR_PID_NAK;
433433
pt->TRE = TU_BIT(8);
434434
pt->TRN = (total_bytes + mps - 1) / mps;
435435
pt->TRENB = 1;
436-
*ctr = USB_PIPECTR_PID_BUF;
436+
*ctr = LINK_REG_PIPE_CTR_PID_BUF;
437437
}
438438
}
439439
// TU_LOG1("X %x %d %d\r\n", ep_addr, total_bytes, buffer_type);
@@ -487,7 +487,7 @@ static void process_bus_reset(uint8_t rhport)
487487
{
488488
LINK_REG->BEMPENB = 1;
489489
LINK_REG->BRDYENB = 1;
490-
LINK_REG->CFIFOCTR = USB_FIFOCTR_BCLR;
490+
LINK_REG->CFIFOCTR = LINK_REG_CFIFOCTR_BCLR_Msk;
491491
LINK_REG->D0FIFOSEL = 0;
492492
while (LINK_REG->D0FIFOSEL_b.CURPIPE) ; /* if CURPIPE bits changes, check written value */
493493
LINK_REG->D1FIFOSEL = 0;
@@ -497,7 +497,7 @@ static void process_bus_reset(uint8_t rhport)
497497
for (int i = 1; i <= 5; ++i) {
498498
LINK_REG->PIPESEL = i;
499499
LINK_REG->PIPECFG = 0;
500-
*ctr = USB_PIPECTR_ACLRM;
500+
*ctr = LINK_REG_PIPE_CTR_ACLRM_Msk;
501501
*ctr = 0;
502502
++ctr;
503503
*tre = TU_BIT(8);
@@ -506,7 +506,7 @@ static void process_bus_reset(uint8_t rhport)
506506
for (int i = 6; i <= 9; ++i) {
507507
LINK_REG->PIPESEL = i;
508508
LINK_REG->PIPECFG = 0;
509-
*ctr = USB_PIPECTR_ACLRM;
509+
*ctr = LINK_REG_PIPE_CTR_ACLRM_Msk;
510510
*ctr = 0;
511511
++ctr;
512512
}
@@ -553,8 +553,9 @@ void dcd_init(uint8_t rhport)
553553

554554
/* Setup default control pipe */
555555
LINK_REG->DCPMAXP_b.MXPS = 64;
556-
LINK_REG->INTENB0 = USB_IS0_VBINT | USB_IS0_BRDY | USB_IS0_BEMP | USB_IS0_DVST | USB_IS0_CTRT |
557-
(USE_SOF ? USB_IS0_SOFR : 0) | USB_IS0_RESM;
556+
LINK_REG->INTENB0 = LINK_REG_INTSTS0_VBINT_Msk | LINK_REG_INTSTS0_BRDY_Msk | LINK_REG_INTSTS0_BEMP_Msk |
557+
LINK_REG_INTSTS0_DVST_Msk | LINK_REG_INTSTS0_CTRT_Msk | (USE_SOF ? LINK_REG_INTSTS0_SOFR_Msk : 0) |
558+
LINK_REG_INTSTS0_RESM_Msk;
558559
LINK_REG->BEMPENB = 1;
559560
LINK_REG->BRDYENB = 1;
560561

@@ -625,21 +626,21 @@ bool dcd_edpt_open(uint8_t rhport, tusb_desc_endpoint_t const * ep_desc)
625626
LINK_REG->PIPESEL = num;
626627
LINK_REG->PIPEMAXP = mps;
627628
volatile uint16_t *ctr = get_pipectr(num);
628-
*ctr = USB_PIPECTR_ACLRM | USB_PIPECTR_SQCLR;
629+
*ctr = LINK_REG_PIPE_CTR_ACLRM_Msk | LINK_REG_PIPE_CTR_SQCLR_Msk;
629630
*ctr = 0;
630631
unsigned cfg = (dir << 4) | epn;
631632
if (xfer == TUSB_XFER_BULK) {
632-
cfg |= (USB_PIPECFG_BULK | USB_PIPECFG_SHTNAK | USB_PIPECFG_DBLB);
633+
cfg |= (LINK_REG_PIPECFG_TYPE_BULK | LINK_REG_PIPECFG_SHTNAK_Msk | LINK_REG_PIPECFG_DBLB_Msk);
633634
} else if (xfer == TUSB_XFER_INTERRUPT) {
634-
cfg |= USB_PIPECFG_INT;
635+
cfg |= LINK_REG_PIPECFG_TYPE_ISO;
635636
} else {
636-
cfg |= (USB_PIPECFG_ISO | USB_PIPECFG_DBLB);
637+
cfg |= (LINK_REG_PIPECFG_TYPE_INT | LINK_REG_PIPECFG_DBLB_Msk);
637638
}
638639
LINK_REG->PIPECFG = cfg;
639640
LINK_REG->BRDYSTS = 0x1FFu ^ TU_BIT(num);
640641
LINK_REG->BRDYENB |= TU_BIT(num);
641642
if (dir || (xfer != TUSB_XFER_BULK)) {
642-
*ctr = USB_PIPECTR_PID_BUF;
643+
*ctr = LINK_REG_PIPE_CTR_PID_BUF;
643644
}
644645
// TU_LOG1("O %d %x %x\r\n", LINK_REG->PIPESEL, LINK_REG->PIPECFG, LINK_REG->PIPEMAXP);
645646
dcd_int_enable(rhport);
@@ -701,8 +702,8 @@ void dcd_edpt_stall(uint8_t rhport, uint8_t ep_addr)
701702
if (!ctr) return;
702703
dcd_int_disable(rhport);
703704
const uint32_t pid = *ctr & 0x3;
704-
*ctr = pid | USB_PIPECTR_PID_STALL;
705-
*ctr = USB_PIPECTR_PID_STALL;
705+
*ctr = pid | LINK_REG_PIPE_CTR_PID_STALL;
706+
*ctr = LINK_REG_PIPE_CTR_PID_STALL;
706707
dcd_int_enable(rhport);
707708
}
708709

@@ -711,15 +712,15 @@ void dcd_edpt_clear_stall(uint8_t rhport, uint8_t ep_addr)
711712
volatile uint16_t *ctr = ep_addr_to_pipectr(rhport, ep_addr);
712713
if (!ctr) return;
713714
dcd_int_disable(rhport);
714-
*ctr = USB_PIPECTR_SQCLR;
715+
*ctr = LINK_REG_PIPE_CTR_SQCLR_Msk;
715716

716717
if (tu_edpt_dir(ep_addr)) { /* IN */
717-
*ctr = USB_PIPECTR_PID_BUF;
718+
*ctr = LINK_REG_PIPE_CTR_PID_BUF;
718719
} else {
719720
const unsigned num = _dcd.ep[0][tu_edpt_number(ep_addr)];
720721
LINK_REG->PIPESEL = num;
721722
if (LINK_REG->PIPECFG_b.TYPE != 1) {
722-
*ctr = USB_PIPECTR_PID_BUF;
723+
*ctr = LINK_REG_PIPE_CTR_PID_BUF;
723724
}
724725
}
725726
dcd_int_enable(rhport);
@@ -734,39 +735,40 @@ void dcd_int_handler(uint8_t rhport)
734735

735736
unsigned is0 = LINK_REG->INTSTS0;
736737
/* clear active bits except VALID (don't write 0 to already cleared bits according to the HW manual) */
737-
LINK_REG->INTSTS0 = ~((USB_IS0_CTRT | USB_IS0_DVST | USB_IS0_SOFR | USB_IS0_RESM | USB_IS0_VBINT) & is0) | USB_IS0_VALID;
738-
if (is0 & USB_IS0_VBINT) {
738+
LINK_REG->INTSTS0 = ~((LINK_REG_INTSTS0_CTRT_Msk | LINK_REG_INTSTS0_DVST_Msk | LINK_REG_INTSTS0_SOFR_Msk |
739+
LINK_REG_INTSTS0_RESM_Msk | LINK_REG_INTSTS0_VBINT_Msk) & is0) | LINK_REG_INTSTS0_VALID_Msk;
740+
if (is0 & LINK_REG_INTSTS0_VBINT_Msk) {
739741
if (LINK_REG->INTSTS0_b.VBSTS) {
740742
dcd_connect(rhport);
741743
} else {
742744
dcd_disconnect(rhport);
743745
}
744746
}
745-
if (is0 & USB_IS0_RESM) {
747+
if (is0 & LINK_REG_INTSTS0_RESM_Msk) {
746748
dcd_event_bus_signal(rhport, DCD_EVENT_RESUME, true);
747749
#if (0==USE_SOF)
748750
LINK_REG->INTENB0_b.SOFE = 0;
749751
#endif
750752
}
751-
if ((is0 & USB_IS0_SOFR) && LINK_REG->INTENB0_b.SOFE) {
753+
if ((is0 & LINK_REG_INTSTS0_SOFR_Msk) && LINK_REG->INTENB0_b.SOFE) {
752754
// USBD will exit suspended mode when SOF event is received
753755
dcd_event_bus_signal(rhport, DCD_EVENT_SOF, true);
754756
#if (0 == USE_SOF)
755757
LINK_REG->INTENB0_b.SOFE = 0;
756758
#endif
757759
}
758-
if (is0 & USB_IS0_DVST) {
759-
switch (is0 & USB_IS0_DVSQ) {
760-
case USB_IS0_DVSQ_DEF:
760+
if (is0 & LINK_REG_INTSTS0_DVST_Msk) {
761+
switch (is0 & LINK_REG_INTSTS0_DVSQ_Msk) {
762+
case LINK_REG_INTSTS0_DVSQ_STATE_DEF:
761763
process_bus_reset(rhport);
762764
break;
763-
case USB_IS0_DVSQ_ADDR:
765+
case LINK_REG_INTSTS0_DVSQ_STATE_ADDR:
764766
process_set_address(rhport);
765767
break;
766-
case USB_IS0_DVSQ_SUSP0:
767-
case USB_IS0_DVSQ_SUSP1:
768-
case USB_IS0_DVSQ_SUSP2:
769-
case USB_IS0_DVSQ_SUSP3:
768+
case LINK_REG_INTSTS0_DVSQ_STATE_SUSP0:
769+
case LINK_REG_INTSTS0_DVSQ_STATE_SUSP1:
770+
case LINK_REG_INTSTS0_DVSQ_STATE_SUSP2:
771+
case LINK_REG_INTSTS0_DVSQ_STATE_SUSP3:
770772
dcd_event_bus_signal(rhport, DCD_EVENT_SUSPEND, true);
771773
#if (0==USE_SOF)
772774
LINK_REG->INTENB0_b.SOFE = 1;
@@ -775,23 +777,23 @@ void dcd_int_handler(uint8_t rhport)
775777
break;
776778
}
777779
}
778-
if (is0 & USB_IS0_CTRT) {
779-
if (is0 & USB_IS0_CTSQ_SETUP) {
780+
if (is0 & LINK_REG_INTSTS0_CTRT_Msk) {
781+
if (is0 & LINK_REG_INTSTS0_CTSQ_CTRL_RDATA) {
780782
/* A setup packet has been received. */
781783
process_setup_packet(rhport);
782-
} else if (0 == (is0 & USB_IS0_CTSQ_MSK)) {
784+
} else if (0 == (is0 & LINK_REG_INTSTS0_CTSQ_Msk)) {
783785
/* A ZLP has been sent/received. */
784786
process_status_completion(rhport);
785787
}
786788
}
787-
if (is0 & USB_IS0_BEMP) {
789+
if (is0 & LINK_REG_INTSTS0_BEMP_Msk) {
788790
const unsigned s = LINK_REG->BEMPSTS;
789791
LINK_REG->BEMPSTS = 0;
790792
if (s & 1) {
791793
process_pipe0_bemp(rhport);
792794
}
793795
}
794-
if (is0 & USB_IS0_BRDY) {
796+
if (is0 & LINK_REG_INTSTS0_BRDY_Msk) {
795797
const unsigned m = LINK_REG->BRDYENB;
796798
unsigned s = LINK_REG->BRDYSTS & m;
797799
/* clear active bits (don't write 0 to already cleared bits according to the HW manual) */

0 commit comments

Comments
 (0)