Search
lxdream.org :: lxdream/src/asic.c :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename src/asic.c
changeset 94:8d80d9c7cc7d
prev56:3224dceaf2a3
next100:995e42e96cc9
author nkeynes
date Sun Feb 05 04:05:27 2006 +0000 (13 years ago)
permissions -rw-r--r--
last change Video code reshuffle to start getting real video happening.
Implement colourspace conversions
Various tweaks
file annotate diff log raw
1.1 --- a/src/asic.c Sun Jan 01 08:09:42 2006 +0000
1.2 +++ b/src/asic.c Sun Feb 05 04:05:27 2006 +0000
1.3 @@ -1,5 +1,5 @@
1.4 /**
1.5 - * $Id: asic.c,v 1.10 2006-01-01 08:09:42 nkeynes Exp $
1.6 + * $Id: asic.c,v 1.11 2006-02-05 04:05:27 nkeynes Exp $
1.7 *
1.8 * Support for the miscellaneous ASIC functions (Primarily event multiplexing,
1.9 * and DMA).
1.10 @@ -73,6 +73,9 @@
1.11 }
1.12 break;
1.13 case PVRDMACTL: /* Initiate PVR DMA transfer */
1.14 + MMIO_WRITE( ASIC, reg, val );
1.15 + WARN( "Write to ASIC (%03X <= %08X) [%s: %s]",
1.16 + reg, val, MMIO_REGID(ASIC,reg), MMIO_REGDESC(ASIC,reg) );
1.17 if( val & 1 ) {
1.18 uint32_t dest_addr = MMIO_READ( ASIC, PVRDMADEST) &0x1FFFFFE0;
1.19 uint32_t count = MMIO_READ( ASIC, PVRDMACNT );
1.20 @@ -102,22 +105,31 @@
1.21 sh4_stop();
1.22 return 0x000000B;
1.23 */
1.24 - case PIRQ0:
1.25 - case PIRQ1:
1.26 - case PIRQ2:
1.27 - val = MMIO_READ(ASIC, reg);
1.28 -// WARN( "Read from ASIC (%03X => %08X) [%s: %s]",
1.29 -// reg, val, MMIO_REGID(ASIC,reg), MMIO_REGDESC(ASIC,reg) );
1.30 - return val;
1.31 - case G2STATUS:
1.32 - return 0; /* find out later if there's any cases we actually need to care about */
1.33 - default:
1.34 - val = MMIO_READ(ASIC, reg);
1.35 - WARN( "Read from ASIC (%03X => %08X) [%s: %s]",
1.36 - reg, val, MMIO_REGID(ASIC,reg), MMIO_REGDESC(ASIC,reg) );
1.37 - return val;
1.38 + case PIRQ0:
1.39 + case PIRQ1:
1.40 + case PIRQ2:
1.41 + case IRQA0:
1.42 + case IRQA1:
1.43 + case IRQA2:
1.44 + case IRQB0:
1.45 + case IRQB1:
1.46 + case IRQB2:
1.47 + case IRQC0:
1.48 + case IRQC1:
1.49 + case IRQC2:
1.50 + val = MMIO_READ(ASIC, reg);
1.51 + // WARN( "Read from ASIC (%03X => %08X) [%s: %s]",
1.52 + // reg, val, MMIO_REGID(ASIC,reg), MMIO_REGDESC(ASIC,reg) );
1.53 + return val;
1.54 + case G2STATUS:
1.55 + return 0; /* find out later if there's any cases we actually need to care about */
1.56 + default:
1.57 + val = MMIO_READ(ASIC, reg);
1.58 + WARN( "Read from ASIC (%03X => %08X) [%s: %s]",
1.59 + reg, val, MMIO_REGID(ASIC,reg), MMIO_REGDESC(ASIC,reg) );
1.60 + return val;
1.61 }
1.62 -
1.63 +
1.64 }
1.65
1.66 void asic_event( int event )
1.67 @@ -215,7 +227,7 @@
1.68 return idereg.status;
1.69 default:
1.70 val = MMIO_READ( EXTDMA, reg );
1.71 - DEBUG( "EXTDMA read %08X => %08X", reg, val );
1.72 + //DEBUG( "EXTDMA read %08X => %08X", reg, val );
1.73 return val;
1.74 }
1.75 }
.