OpenCores
URL https://opencores.org/ocsvn/pcie_ds_dma/pcie_ds_dma/trunk

Subversion Repositories pcie_ds_dma

[/] [pcie_ds_dma/] [trunk/] [soft/] [linux/] [driver/] [pexdrv/] [hardware.c] - Diff between revs 2 and 6

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 2 Rev 6
Line 25... Line 25...
    switch(dev_id) {
    switch(dev_id) {
    case AMBPEX5_DEVID: snprintf(brd->m_name, 128, "%s%d", "AMBPEX5", index); break;
    case AMBPEX5_DEVID: snprintf(brd->m_name, 128, "%s%d", "AMBPEX5", index); break;
    case AMBPEX8_DEVID: snprintf(brd->m_name, 128, "%s%d", "AMBPEX8", index); break;
    case AMBPEX8_DEVID: snprintf(brd->m_name, 128, "%s%d", "AMBPEX8", index); break;
    case ADP201X1AMB_DEVID: snprintf(brd->m_name, 128, "%s%d", "ADP201X1AMB", index); break;
    case ADP201X1AMB_DEVID: snprintf(brd->m_name, 128, "%s%d", "ADP201X1AMB", index); break;
    case ADP201X1DSP_DEVID: snprintf(brd->m_name, 128, "%s%d", "ADP201X1DSP", index); break;
    case ADP201X1DSP_DEVID: snprintf(brd->m_name, 128, "%s%d", "ADP201X1DSP", index); break;
    case AMBPEXARM_DEVID: snprintf(brd->m_name, 128, "%s%d", "AMBPEXARM_DEVID", index); break;
    case AMBPEXARM_DEVID: snprintf(brd->m_name, 128, "%s%d", "D2XT005", index); break;
    case AMBFMC106P_DEVID: snprintf(brd->m_name, 128, "%s%d", "AMBFMC106P_DEVID", index); break;
    case AMBFMC106P_DEVID: snprintf(brd->m_name, 128, "%s%d", "AMBFMC106P", index); break;
 
    case AMBFMC114V_DEVID: snprintf(brd->m_name, 128, "%s%d", "AMBFMC114V", index); break;
 
    case AMBKU_SSCOS_DEVID: snprintf(brd->m_name, 128, "%s%d", "AMBKU_SSCOS", index); break;
    default:
    default:
        snprintf(brd->m_name, sizeof(brd->m_name), "%s%d", "Unknown", index); break;
        snprintf(brd->m_name, sizeof(brd->m_name), "%s%d", "Unknown", index); break;
    }
    }
 
 
    return 0;
    return 0;
Line 111... Line 113...
    dbg_msg(dbg_trace, "%s(): DeviceID = 0x%X, DeviceRev = 0x%X.\n", __FUNCTION__, deviceID, deviceRev);
    dbg_msg(dbg_trace, "%s(): DeviceID = 0x%X, DeviceRev = 0x%X.\n", __FUNCTION__, deviceID, deviceRev);
 
 
    if((AMBPEX8_DEVID != deviceID) &&
    if((AMBPEX8_DEVID != deviceID) &&
            (ADP201X1AMB_DEVID != deviceID) &&
            (ADP201X1AMB_DEVID != deviceID) &&
            (AMBPEX5_DEVID != deviceID) &&
            (AMBPEX5_DEVID != deviceID) &&
            (AMBPEXARM_DEVID != deviceID))
            (AMBPEXARM_DEVID != deviceID) &&
 
            (AMBFMC114V_DEVID != deviceID)) {
 
 
 
        dbg_msg(dbg_trace, "%s(): Unsupported device id: 0x%X.\n", __FUNCTION__, deviceID);
        return -ENODEV;
        return -ENODEV;
 
    }
 
 
    temp = ReadOperationWordReg(brd, PEMAINadr_PLD_VER);
    temp = ReadOperationWordReg(brd, PEMAINadr_PLD_VER);
 
 
    dbg_msg(dbg_trace, "%s(): PldVER = 0x%X.\n", __FUNCTION__, temp);
    dbg_msg(dbg_trace, "%s(): PldVER = 0x%X.\n", __FUNCTION__, temp);
 
 
Line 263... Line 269...
 
 
//--------------------------------------------------------------------
//--------------------------------------------------------------------
 
 
u16 ReadOperationWordReg(struct pex_device *brd, u32 RelativePort)
u16 ReadOperationWordReg(struct pex_device *brd, u32 RelativePort)
{
{
    return readw((u16*)((u8*)brd->m_BAR0.virtual_address + RelativePort));
    u32 tmpVal = readl((u32*)((u8*)brd->m_BAR0.virtual_address + RelativePort));
 
    return (tmpVal & 0xFFFF);
 
    //return readw((u16*)((u8*)brd->m_BAR0.virtual_address + RelativePort));
}
}
 
 
//--------------------------------------------------------------------
//--------------------------------------------------------------------
 
 
void WriteOperationWordReg(struct pex_device *brd, u32 RelativePort, u16 Value)
void WriteOperationWordReg(struct pex_device *brd, u32 RelativePort, u16 Value)
{
{
    writew( Value, (u16*)((u8*)brd->m_BAR0.virtual_address + RelativePort));
    u32 tmpVal = Value;
}
    //writew( Value, (u16*)((u8*)brd->m_BAR0.virtual_address + RelativePort));
 
    writel( tmpVal, (u32*)((u8*)brd->m_BAR0.virtual_address + RelativePort));
//--------------------------------------------------------------------
 
 
 
u8 ReadOperationByteReg(struct pex_device *brd, u32 RelativePort)
 
{
 
    return readb((u8*)((u8*)brd->m_BAR0.virtual_address + RelativePort));
 
}
 
 
 
//--------------------------------------------------------------------
 
 
 
void WriteOperationByteReg(struct pex_device *brd, u32 RelativePort, u8 Value)
 
{
 
    writeb( Value, (u8*)((u8*)brd->m_BAR0.virtual_address + RelativePort));
 
}
}
 
 
//--------------------------------------------------------------------
//--------------------------------------------------------------------
 
 
u32 ReadAmbReg(struct pex_device *brd, u32 AdmNumber, u32 RelativePort)
u32 ReadAmbReg(struct pex_device *brd, u32 AdmNumber, u32 RelativePort)

powered by: WebSVN 2.1.0

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