All pastes #293816 Raw Edit

Untitled

public text v1 · immutable
#293816 ·published 2006-12-27 22:29 UTC
rendered paste body
/*
 * nForce PCI config space registers.
 */
#define PCI_IDE_ENABLE      0x50
#define PCI_IDE_CONFIG      0x51
#define PCI_CABLE_DETECT	0x52
#define PCI_FIFO_CONFIG     0x53
#define PCI_DATA_TIMING     0x58
#define PCI_CMD_TIMING      0x5e
#define PCI_ADDRESS_SETUP   0x5c
#define PCI_ULTRA_TIMING    0x60

.......

/*
 * Properties for each virtual timing register.
 */
static const struct {
    UInt8  bitmask;
    UInt8  bitnum;
    UInt8  minValue;
    UInt8  maxValue;
} TimingRegInfo[ kTimingRegCount ] =
{
    { 0x0F, 4, 1, 16 },  /* kTimingRegCommandActive */
    { 0x0F, 0, 1, 16 },  /* kTimingRegCommandRecovery */
    { 0x0F, 4, 1, 16 },  /* kTimingRegDataActive */
    { 0x0F, 0, 1, 16 },  /* kTimingRegDataRecovery */
    { 0x03, 6, 1,  4 },  /* kTimingRegAddressSetup */
    { 0xFF, 0, 0,  0 }   /* kTimingRegUltra */
};

/*---------------------------------------------------------------------------
 *
 * PIO
 *
 ---------------------------------------------------------------------------*/

static const TimingParameter PIOTimingTable[ kPIOModeCount ] =
{
   /* Cycle  Setup  Act    Rec */
    { 600,    70,   290,   310 },
    { 383,    50,   290,    93 },
    { 240,    30,   290,    50 },
    { 180,    30,    90,    90 }, 
    { 120,    25,    75,    45 }
};

/*---------------------------------------------------------------------------
 *
 * Multi-word DMA
 *
 ---------------------------------------------------------------------------*/

static const TimingParameter DMATimingTable[ kDMAModeCount ]=
{
   /* Cycle  Setup   tD     tK */
    { 480,    70,   240,   240 },
    { 150,    50,    90,    60 },
    { 120,    30,    75,    45 }
};

/*---------------------------------------------------------------------------
 *
 * Ultra DMA
 *
 ---------------------------------------------------------------------------*/

static const UInt8 UltraTimingTable[kUltraModeCount] =
{
/* UDMA  0     1     2     3     4     5     6 */
      0xc2, 0xc1, 0xc0, 0xc4, 0xc5, 0xc6, 0xc7
};

#endif /* !_APPLENVIDIANFORCETIMING_H */