📄 whyt1_lib.c
字号:
dwAddrSpace = pAddrSpaceInfo->dwAddrSpace;
dwMaxAddrSpace = pDev->dwNumAddrSpaces - 1;
if (dwAddrSpace > dwMaxAddrSpace)
{
ErrLog("WHYT1_GetAddrSpaceInfo: Error - Address space %ld is out of range (0 - %ld)\n",
dwAddrSpace, dwMaxAddrSpace);
return FALSE;
}
pAddrDesc = &pDev->pAddrDesc[dwAddrSpace];
fIsMemory = WDC_ADDR_IS_MEM(pAddrDesc);
snprintf(pAddrSpaceInfo->sName, MAX_NAME - 1, "BAR %ld", dwAddrSpace);
snprintf(pAddrSpaceInfo->sType, MAX_TYPE - 1, fIsMemory ? "Memory" : "I/O");
if (WDC_AddrSpaceIsActive(pDev, dwAddrSpace))
{
WD_ITEMS *pItem = &pDev->cardReg.Card.Item[pAddrDesc->dwItemIndex];
DWORD dwAddr = fIsMemory ? pItem->I.Mem.dwPhysicalAddr : (DWORD)pItem->I.IO.dwAddr;
snprintf(pAddrSpaceInfo->sDesc, MAX_DESC - 1, "0x%0*lX - 0x%0*lX (0x%lx bytes)",
(int)WDC_SIZE_32 * 2, dwAddr,
(int)WDC_SIZE_32 * 2, dwAddr + pAddrDesc->dwBytes - 1,
pAddrDesc->dwBytes);
}
else
snprintf(pAddrSpaceInfo->sDesc, MAX_DESC - 1, "Inactive address space");
/* TODO: You can modify the code above to set a different address space name/description */
return TRUE;
}
// Function: WHYT1_ReadI2CDAT11()
// Read from I2CDAT11 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT11 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT11_SPACE, WHYT1_I2CDAT11_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT11()
// Write to I2CDAT11 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT11 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT11_SPACE, WHYT1_I2CDAT11_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT10()
// Read from I2CDAT10 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT10 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT10_SPACE, WHYT1_I2CDAT10_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT10()
// Write to I2CDAT10 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT10 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT10_SPACE, WHYT1_I2CDAT10_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT9()
// Read from I2CDAT9 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT9 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT9_SPACE, WHYT1_I2CDAT9_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT9()
// Write to I2CDAT9 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT9 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT9_SPACE, WHYT1_I2CDAT9_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT8()
// Read from I2CDAT8 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT8 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT8_SPACE, WHYT1_I2CDAT8_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT8()
// Write to I2CDAT8 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT8 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT8_SPACE, WHYT1_I2CDAT8_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT7()
// Read from I2CDAT7 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT7 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT7_SPACE, WHYT1_I2CDAT7_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT7()
// Write to I2CDAT7 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT7 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT7_SPACE, WHYT1_I2CDAT7_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT6()
// Read from I2CDAT6 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT6 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT6_SPACE, WHYT1_I2CDAT6_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT6()
// Write to I2CDAT6 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT6 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT6_SPACE, WHYT1_I2CDAT6_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT5()
// Read from I2CDAT5 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT5 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT5_SPACE, WHYT1_I2CDAT5_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT5()
// Write to I2CDAT5 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT5 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT5_SPACE, WHYT1_I2CDAT5_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT4()
// Read from I2CDAT4 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT4 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT4_SPACE, WHYT1_I2CDAT4_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT4()
// Write to I2CDAT4 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT4 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT4_SPACE, WHYT1_I2CDAT4_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT3()
// Read from I2CDAT3 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT3 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT3_SPACE, WHYT1_I2CDAT3_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT3()
// Write to I2CDAT3 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT3 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT3_SPACE, WHYT1_I2CDAT3_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT2()
// Read from I2CDAT2 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT2 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT2_SPACE, WHYT1_I2CDAT2_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT2()
// Write to I2CDAT2 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT2 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT2_SPACE, WHYT1_I2CDAT2_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT1()
// Read from I2CDAT1 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT1 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT1_SPACE, WHYT1_I2CDAT1_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT1()
// Write to I2CDAT1 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT1 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT1_SPACE, WHYT1_I2CDAT1_OFFSET, data);
}
// Function: WHYT1_ReadI2CDAT0()
// Read from I2CDAT0 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CDAT0 (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CDAT0_SPACE, WHYT1_I2CDAT0_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CDAT0()
// Write to I2CDAT0 register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CDAT0 (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CDAT0_SPACE, WHYT1_I2CDAT0_OFFSET, data);
}
// Function: WHYT1_ReadI2CSTS()
// Read from I2CSTS register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CSTS (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CSTS_SPACE, WHYT1_I2CSTS_OFFSET, &data);
return data;
}
// Function: WHYT1_ReadI2CCTR()
// Read from I2CCTR register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
BYTE WHYT1_ReadI2CCTR (WDC_DEVICE_HANDLE hDev)
{
BYTE data;
WDC_ReadAddr8(hDev, WHYT1_I2CCTR_SPACE, WHYT1_I2CCTR_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteI2CCTR()
// Write to I2CCTR register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteI2CCTR (WDC_DEVICE_HANDLE hDev, BYTE data)
{
WDC_WriteAddr8(hDev, WHYT1_I2CCTR_SPACE, WHYT1_I2CCTR_OFFSET, data);
}
// Function: WHYT1_ReadIRCODE()
// Read from IRCODE register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
UINT32 WHYT1_ReadIRCODE (WDC_DEVICE_HANDLE hDev)
{
UINT32 data;
WDC_ReadAddr32(hDev, WHYT1_IRCODE_SPACE, WHYT1_IRCODE_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteIRCODE()
// Write to IRCODE register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteIRCODE (WDC_DEVICE_HANDLE hDev, UINT32 data)
{
WDC_WriteAddr32(hDev, WHYT1_IRCODE_SPACE, WHYT1_IRCODE_OFFSET, data);
}
// Function: WHYT1_ReadIRCTR()
// Read from IRCTR register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
UINT32 WHYT1_ReadIRCTR (WDC_DEVICE_HANDLE hDev)
{
UINT32 data;
WDC_ReadAddr32(hDev, WHYT1_IRCTR_SPACE, WHYT1_IRCTR_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteIRCTR()
// Write to IRCTR register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteIRCTR (WDC_DEVICE_HANDLE hDev, UINT32 data)
{
WDC_WriteAddr32(hDev, WHYT1_IRCTR_SPACE, WHYT1_IRCTR_OFFSET, data);
}
// Function: WHYT1_ReadEVEN()
// Read from EVEN register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
UINT32 WHYT1_ReadEVEN (WDC_DEVICE_HANDLE hDev)
{
UINT32 data;
WDC_ReadAddr32(hDev, WHYT1_EVEN_SPACE, WHYT1_EVEN_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteEVEN()
// Write to EVEN register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteEVEN (WDC_DEVICE_HANDLE hDev, UINT32 data)
{
WDC_WriteAddr32(hDev, WHYT1_EVEN_SPACE, WHYT1_EVEN_OFFSET, data);
}
// Function: WHYT1_ReadODD()
// Read from ODD register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// Return Value:
// The value read from the register.
UINT32 WHYT1_ReadODD (WDC_DEVICE_HANDLE hDev)
{
UINT32 data;
WDC_ReadAddr32(hDev, WHYT1_ODD_SPACE, WHYT1_ODD_OFFSET, &data);
return data;
}
// Function: WHYT1_WriteODD()
// Write to ODD register.
// Parameters:
// hDev [in] handle to the card as received from WHYT1_DeviceOpen().
// data [in] the data to write to the register.
// Return Value:
// None.
void WHYT1_WriteODD (WDC_DEVICE_HANDLE hDev, UINT32 data)
{
WDC_WriteAddr32(hDev, WHYT1_ODD_SPACE, WHYT1_ODD_OFFSET, data);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -