URL
https://opencores.org/ocsvn/gecko3/gecko3/trunk
Subversion Repositories gecko3
Compare Revisions
- This comparison shows the changes necessary to convert path
/gecko3/trunk/GECKO3COM/gecko3com-fw
- from Rev 20 to Rev 21
- ↔ Reverse comparison
Rev 20 → Rev 21
/firmware/include/firmware_version.h
36,6 → 36,6
#define _FIRMWARE_VERSION_H_ |
|
/** Version number of this firmware release */ |
#define FIRMWARE_VERSION "0.4rc3\n" |
#define FIRMWARE_VERSION "0.5rc0\n" |
|
#endif |
/firmware/src/fpga_load.c
244,7 → 244,7
|
if(!fpga_done()) { |
/* if not DONE, an error occoured during configuration */ |
print_err("fin.\n"); |
//print_err("fin.\n"); |
return 0; |
} |
|
/firmware/src/gecko3com_main.c
854,15 → 854,27
} /* end of IN Transfer clause */ |
|
|
/* if we operate in REMOTE mode (means we pass the data to the FPGA) |
* continously check the DONE pin from the FPGA, to avoid that bad things |
* happen when someone reconfigures the FPGA through JTAG */ |
if(flLOCAL == GECKO3COM_REMOTE && !fpga_done()) { |
deactivate_gpif(); |
flLOCAL = GECKO3COM_LOCAL; |
|
if(flLOCAL == GECKO3COM_REMOTE) { |
/* if we operate in REMOTE mode (means we pass the data to the FPGA) |
* continously check the DONE pin from the FPGA, to avoid that bad things |
* happen when someone reconfigures the FPGA through JTAG */ |
if(!fpga_done()) { |
|
mdelay(40); |
if(!fpga_done()) { |
//set_led_ext(GREEN); |
deactivate_gpif(); |
flLOCAL = GECKO3COM_LOCAL; |
} |
} |
|
if(!(EP2468STAT & bmEP2EMPTY) && (GPIFTRIG & bmGPIF_IDLE)) { |
flGPIF = 0; |
gpif_trigger_write(); |
} |
} |
|
|
/* if the LED flag is set to off, disable the external LED */ |
if(flLED == LEDS_OFF) { |
set_led_ext(LEDS_OFF); |
938,8 → 950,8
USBCS |= bmDISCON; |
|
#ifdef DEBUG_LEVEL_ERROR |
ser_init(); |
printf_tiny("hi\n"); |
//ser_init(); |
//printf_tiny("hi\n"); |
#endif |
|
/* set the context switch flag to local operation, not fpga */ |
/firmware/src/gecko3com_gpif.c
95,19 → 95,25
INPKTEND = USB_TMC_EP_IN; |
} |
|
//EA = 0; /* disable all interrupts */ |
while(!(GPIFTRIG & bmGPIF_IDLE)); |
//EA = 1; /* global interrupt enable */ |
|
/* check if there is data available for an OUT transfer */ |
if((flGPIF & bmGPIF_PENDING_DATA) == bmGPIF_PENDING_DATA) { |
//if((flGPIF & bmGPIF_PENDING_DATA) == bmGPIF_PENDING_DATA) { |
//if(!(EP2468STAT & bmEP2EMPTY)) { |
flGPIF &= ~bmGPIF_PENDING_DATA; |
|
gpif_trigger_write(); |
flGPIF &= ~bmGPIF_READ_IN_PROGRESS; |
} |
else { |
//flGPIF &= ~bmGPIF_PENDING_DATA; |
|
//EA = 0; /* disable all interrupts */ |
//flGPIF &= ~bmGPIF_READ_IN_PROGRESS; |
//gpif_trigger_write(); |
//EA = 1; /* global interrupt enable */ |
//} |
/*else*/ { |
EA = 0; /* disable all interrupts */ |
flGPIF |= bmGPIF_READ_IN_PROGRESS; |
gpif_trigger_read(); |
flGPIF |= bmGPIF_READ_IN_PROGRESS; |
EA = 1; /* global interrupt enable */ |
} |
|
clear_fifo_gpif_irq(); |
129,11 → 135,20
flGPIF |= bmGPIF_PENDING_DATA; |
} |
else { |
GPIFABORT = 0xFF; |
SYNCDELAY; |
//EA = 0; /* disable all interrupts */ |
if((flGPIF & bmGPIF_READ_IN_PROGRESS) == bmGPIF_READ_IN_PROGRESS) { |
GPIFABORT = 0xFF; |
SYNCDELAY; |
flGPIF &= ~bmGPIF_READ_IN_PROGRESS; |
} |
//EA = 1; /* global interrupt enable */ |
//EA = 0; /* disable all interrupts */ |
while(!(GPIFTRIG & bmGPIF_IDLE)); |
gpif_trigger_write(); |
//EA = 1; /* global interrupt enable */ |
EA = 0; /* disable all interrupts */ |
flGPIF &= ~bmGPIF_READ_IN_PROGRESS; |
gpif_trigger_write(); |
EA = 1; /* global interrupt enable */ |
} |
|
clear_fifo_gpif_irq(); |
227,6 → 242,7
|
|
/* start gpif read, default state of the gpif to wait for fpga data */ |
flGPIF |= bmGPIF_READ_IN_PROGRESS; |
gpif_trigger_read(); |
|
} |
/gecko3com.iic
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream