OpenCores
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 28 to Rev 29
    Reverse comparison

Rev 28 → Rev 29

/firmware/include/gecko3com_gpif.h
78,7 → 78,7
GPIFTCB2 = 0x00; \
GPIFTCB1 = 0x00; \
GPIFTCB0 = 0x01; \
GPIFTRIG = bmGPIF_EP6_START | bmGPIF_READ; /* trigger FIFO out transfer */ \
GPIFTRIG = bmGPIF_EP6_START | bmGPIF_READ; /* trigger FIFO IN transfer */ \
/*SYNCDELAY;*/ \
} while (0)
 
94,7 → 94,7
GPIFTCB2 = 0x00; \
GPIFTCB1 = 0x00; \
GPIFTCB0 = 0x01; \
GPIFTRIG = bmGPIF_EP2_START | bmGPIF_WRITE; /* trigger FIFO out transfer */ \
GPIFTRIG = bmGPIF_EP2_START | bmGPIF_WRITE; /* trigger FIFO OUT transfer*/ \
/*SYNCDELAY;*/ \
} while(0)
 
/firmware/src/gecko3com_gpif.c
169,13 → 169,16
IFCONFIG = bmIFCLKSRC | bmIFCLKOE | bmGSTATE | bmIFGPIF;
SYNCDELAY;
 
/* we have to commit the currently processed packet BEFORE we switch to auto out mode */
/* we have to commit the currently processed packet BEFORE we switch
*to auto out mode */
OUTPKTEND = bmSKIP | USB_TMC_EP_OUT;
 
/*FIXME only here for testing */
//EP6AUTOINLENH = (20) >> 8; SYNCDELAY; /* this is the length for high speed */
//EP6AUTOINLENL = (20) & 0xff; SYNCDELAY;
/* reset FIFOs */
 
FIFORESET = bmNAKALL; SYNCDELAY;
FIFORESET = 6; SYNCDELAY;
FIFORESET = 0; SYNCDELAY;
 
/* enable autoout and autoin feature of the endpoints */
EP2FIFOCFG |= bmAUTOOUT;
SYNCDELAY;
194,6 → 197,12
EP2GPIFFLGSEL = bmFLAG_PROGRAMMABLE;
//EP2GPIFFLGSEL = bmFLAG_EMPTY;
SYNCDELAY;
 
//EP6FIFOPFH = bmDECIS | 0x19;
//EP6FIFOPFL = 0xFB;
//SYNCDELAY;
 
//EP6GPIFFLGSEL = bmFLAG_PROGRAMMABLE;
EP6GPIFFLGSEL = bmFLAG_FULL;
SYNCDELAY;
 
211,7 → 220,8
GPIFIDLECTL = InitData[ 3 ];
/* Hmmm, what's InitData[ 4 ] ... */
GPIFWFSELECT = InitData[ 5 ];
/* GPIFREADYSTAT = InitData[ 6 ]; */ /* I think this register is read only... */
/* I think this register is read only... */
/* GPIFREADYSTAT = InitData[ 6 ]; */
for (i = 0; i < 128; i++){
GPIF_WAVE_DATA[i] = WaveData[i];
/firmware/src/gecko3com_common.c
117,8 → 117,8
 
/* set autoout length for EP2 and autoin length for EP6 */
if(USBCS & bmHSM){
EP6AUTOINLENH = (512) >> 8; SYNCDELAY; /* this is the length for high speed */
EP6AUTOINLENL = (512) & 0xff; SYNCDELAY;
EP6AUTOINLENH = (512) >> 8; SYNCDELAY; /* this is the length for */
EP6AUTOINLENL = (512) & 0xff; SYNCDELAY; /* high speed */
}
else {
EP6AUTOINLENH = 0; SYNCDELAY; /* this is the length for full speed */
182,9 → 182,9
init_io_ext (void)
{
xdata uint8_t cmd[2];
cmd[0] = 0x03; /* write to configuration register */
cmd[1] = 0x01; /* set Bit 0 (LSB) as input and Bit 1,2 as output, others be irrelevant */
i2c_write(I2C_DEV_IO, cmd, 2);
cmd[0] = 0x03; /* write to configuration register */
cmd[1] = 0x01; /* set Bit 0 (LSB) as input and Bit */
i2c_write(I2C_DEV_IO, cmd, 2); /* 1,2 as output, others be irrelevant */
}
 
void
191,8 → 191,8
set_led_ext (const uint8_t color)
{
xdata uint8_t cmd[2];
cmd[0] = 0x01; /* write to output port register */
cmd[1] = color; /* set LED */
cmd[0] = 0x01; /* write to output port register */
cmd[1] = color; /* set LED */
i2c_write(I2C_DEV_IO, cmd, 2);
flLED = ~LEDS_OFF;
}
202,13 → 202,13
{
xdata uint8_t cmd[1];
cmd[0] = 0x00; /* set command byte to input port register */
cmd[0] = 0x00; /* set command byte to input port register */
 
i2c_write(I2C_DEV_IO, cmd, 1);
i2c_read(I2C_DEV_IO, cmd, 1);
if((cmd[0] & 0x01) == 1){ /* only bit 0 in the input register is used */
if((cmd[0] & 0x01) == 1){ /* only bit 0 in the input register is used */
return 1;
}
/gecko3com.iic Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.