Subversion Repositories freemyipod

Rev

Rev 429 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 429 Rev 636
Line 190... Line 190...
190
        for (i = 0; i < 4; i += i + 1)  // 0, 1, 3
190
        for (i = 0; i < 4; i += i + 1)  // 0, 1, 3
191
            if (epints = DIEPINT(i))
191
            if (epints = DIEPINT(i))
192
            {
192
            {
193
                if (epints & 1)  /* Transfer completed */
193
                if (epints & 1)  /* Transfer completed */
194
                {
194
                {
195
                    invalidate_dcache();
-
 
196
                    int bytes = endpoints[i].size - (DIEPTSIZ(i) & 0x3FFFF);
195
                    int bytes = endpoints[i].size - (DIEPTSIZ(i) & 0x3FFFF);
197
                    if (endpoints[i].busy)
196
                    if (endpoints[i].busy)
198
                    {
197
                    {
199
                        endpoints[i].busy = false;
198
                        endpoints[i].busy = false;
200
                        endpoints[i].rc = 0;
199
                        endpoints[i].rc = 0;
Line 222... Line 221...
222
        for (i = 0; i < 5; i += 2)  // 0, 2, 4
221
        for (i = 0; i < 5; i += 2)  // 0, 2, 4
223
            if (epints = DOEPINT(i))
222
            if (epints = DOEPINT(i))
224
            {
223
            {
225
                if (epints & 1)  /* Transfer completed */
224
                if (epints & 1)  /* Transfer completed */
226
                {
225
                {
227
                    invalidate_dcache();
-
 
228
                    int bytes = endpoints[i].size - (DOEPTSIZ(i) & 0x3FFFF);
226
                    int bytes = endpoints[i].size - (DOEPTSIZ(i) & 0x3FFFF);
229
                    if (endpoints[i].busy)
227
                    if (endpoints[i].busy)
230
                    {
228
                    {
231
                        endpoints[i].busy = false;
229
                        endpoints[i].busy = false;
232
                        endpoints[i].rc = 0;
230
                        endpoints[i].rc = 0;
Line 298... Line 296...
298
    else
296
    else
299
    {
297
    {
300
        DOEPTSIZ(ep) = length | (packets << 19);
298
        DOEPTSIZ(ep) = length | (packets << 19);
301
        DOEPDMA(ep) = ptr;
299
        DOEPDMA(ep) = ptr;
302
    }
300
    }
303
    clean_dcache();
301
    invalidate_dcache();
304
    DOEPCTL(ep) |= 0x84000000;  /* EPx OUT ENABLE CLEARNAK */
302
    DOEPCTL(ep) |= 0x84000000;  /* EPx OUT ENABLE CLEARNAK */
305
}
303
}
306
 
304
 
307
int usb_drv_send(int endpoint, const void *ptr, int length)
305
int usb_drv_send(int endpoint, const void *ptr, int length)
308
{
306
{