return (*pValue);
}
-
-int rtmp_ee_efuse_write16(
- IN RTMP_ADAPTER *pAd,
- IN USHORT Offset,
- IN USHORT data)
-{
- if(pAd->bFroceEEPROMBuffer||pAd->bEEPROMFile)
- {
- DBGPRINT(RT_DEBUG_TRACE, ("Write to EEPROM Buffer\n"));
- NdisMoveMemory(&(pAd->EEPROMImage[Offset]), &data, 2);
- }
- else
- eFuseWriteRegisters(pAd, Offset, 2, &data);
- return 0;
-}
-
-
int RtmpEfuseSupportCheck(
IN RTMP_ADAPTER *pAd)
{
return NDIS_STATUS_SUCCESS;
}
-
-
-int rtmp_ee_prom_write16(
- IN PRTMP_ADAPTER pAd,
- IN USHORT Offset,
- IN USHORT Data)
-{
- UINT32 x;
-
-
- Offset /= 2;
-
- EWEN(pAd);
-
- // reset bits and set EECS
- RTMP_IO_READ32(pAd, E2PROM_CSR, &x);
- x &= ~(EEDI | EEDO | EESK);
- x |= EECS;
- RTMP_IO_WRITE32(pAd, E2PROM_CSR, x);
-
- // patch can not access e-Fuse issue
- if (!(IS_RT3090(pAd) || IS_RT3572(pAd) || IS_RT3390(pAd)))
- {
- // kick a pulse
- RaiseClock(pAd, &x);
- LowerClock(pAd, &x);
- }
-
- // output the read_opcode ,register number and data in that order
- ShiftOutBits(pAd, EEPROM_WRITE_OPCODE, 3);
- ShiftOutBits(pAd, Offset, pAd->EEPROMAddressNum);
- ShiftOutBits(pAd, Data, 16); // 16-bit access
-
- // read DO status
- RTMP_IO_READ32(pAd, E2PROM_CSR, &x);
-
- EEpromCleanup(pAd);
-
- RTMPusecDelay(10000); //delay for twp(MAX)=10ms
-
- EWDS(pAd);
-
- EEpromCleanup(pAd);
-
-
- return NDIS_STATUS_SUCCESS;
-
-}
{
pChipOps->eeinit = eFuse_init;
pChipOps->eeread = rtmp_ee_efuse_read16;
- pChipOps->eewrite = rtmp_ee_efuse_write16;
return 0 ;
}
else
case RTMP_DEV_INF_PCI:
pChipOps->eeinit = NULL;
pChipOps->eeread = rtmp_ee_prom_read16;
- pChipOps->eewrite = rtmp_ee_prom_write16;
break;
#endif // RTMP_PCI_SUPPORT //
#ifdef RTMP_USB_SUPPORT
case RTMP_DEV_INF_USB:
pChipOps->eeinit = NULL;
pChipOps->eeread = RTUSBReadEEPROM16;
- pChipOps->eewrite = RTUSBWriteEEPROM16;
break;
#endif // RTMP_USB_SUPPORT //
IN PRTMP_ADAPTER pAd,
IN USHORT Offset,
OUT USHORT *pValue);
-
-int rtmp_ee_prom_write16(
- IN PRTMP_ADAPTER pAd,
- IN USHORT Offset,
- IN USHORT value);
#endif // RTMP_PCI_SUPPORT //
#ifdef RTMP_USB_SUPPORT
/*************************************************************************
IN PRTMP_ADAPTER pAd,
IN USHORT offset,
OUT PUSHORT pData);
-
-NTSTATUS RTUSBWriteEEPROM16(
- IN RTMP_ADAPTER *pAd,
- IN USHORT offset,
- IN USHORT value);
#endif // RTMP_USB_SUPPORT //
#ifdef RT30xx
IN RTMP_ADAPTER *pAd,
IN USHORT Offset,
OUT USHORT *pValue);
-
-int rtmp_ee_efuse_write16(
- IN RTMP_ADAPTER *pAd,
- IN USHORT Offset,
- IN USHORT data);
#endif // RTMP_EFUSE_SUPPORT //
#endif // RT30xx //
/* Calibration access related callback functions */
int (*eeinit)(RTMP_ADAPTER *pAd); /* int (*eeinit)(RTMP_ADAPTER *pAd); */
int (*eeread)(RTMP_ADAPTER *pAd, USHORT offset, PUSHORT pValue); /* int (*eeread)(RTMP_ADAPTER *pAd, int offset, PUSHORT pValue); */
- int (*eewrite)(RTMP_ADAPTER *pAd, USHORT offset, USHORT value);; /* int (*eewrite)(RTMP_ADAPTER *pAd, int offset, USHORT value); */
/* MCU related callback functions */
int (*loadFirmware)(RTMP_ADAPTER *pAd); /* int (*loadFirmware)(RTMP_ADAPTER *pAd); */
#define RT28xx_EEPROM_READ16(_pAd, _offset, _value) \
(_pAd)->chipOps.eeread((RTMP_ADAPTER *)(_pAd), (USHORT)(_offset), (PUSHORT)&(_value))
-#define RT28xx_EEPROM_WRITE16(_pAd, _offset, _value) \
- (_pAd)->chipOps.eewrite((RTMP_ADAPTER *)(_pAd), (USHORT)(_offset), (USHORT)(_value))
-
-
// -------------------------------------------------------------------
// E2PROM data layout
}
-NTSTATUS RTUSBWriteEEPROM16(
- IN RTMP_ADAPTER *pAd,
- IN USHORT offset,
- IN USHORT value)
-{
- USHORT tmpVal;
-
- tmpVal = cpu2le16(value);
- return RTUSBWriteEEPROM(pAd, offset, (PUCHAR)&(tmpVal), 2);
-}
-
/*
========================================================================