AR# 35400

|

12.1 EDK - What has changed with the new device drivers in 12.1?

描述

What has changed with the new device drivers in EDK software 12.1?

解决方案

The new versions of the drivers in EDK software 12.1 have been changed to accommodate a hardware abstraction layer.

The function names for the drivers have likewise changed to remove all instances of "_m" from the driver name, but the parameters for the drivers have all remained the same.

For example, the UART16550 function XUartNs550_mEnableIntr has been renamed to XUartNs550_EnableIntr and all of the parameters are identical between the two functions.

DRIVER CHANGES for 12.1 release


 

Older Driver version

New Driver Version

Changes

  1 

bram_v1_00_a

bram_v2_00_a

1)   Changes related to HAL APIs only in the tcl for test App memory

   2 

can_v1_11_a

can_v2_00_a

1)   Changes related to HAL APIs

2)   Changes for coding guidelines in the examples
  • _m has been removed from the macro name
  • XCan_mReadReg
  • XCan_mWriteReg
  • XCan_mIsTxDone
  • XCan_mIsTxFifoFull
  • XCan_mIsHighPriorityBufFull
  • XCan_mIsRxEmpty
  • XCan_mIsAcceptFilterBusy
  • XCan_mCreateIdValue
  • XCan_mCreateDlcValue

  3 

cpu_ppc440_v1_01_a

cpu_ppc440_v2_00_a

1)   Update in the mdd for ll_dma driver dependency

   4

dmacentral_v1_12_a

dmacentral_v2_00_a

1)   Changes related to HAL APIs and header files

2)   _m removed from XDmaCentral_mWriteReg() and XDmaCentral_mReadReg()

  5 

dsadc_v1_11_a

dsadc_v2_00_a

1)   Changes related to HAL APIs

2)   Changes for coding guidelines in the examples

3)   Updated to use XDsAdc_WriteReg/XDsAdc_ReadReg in place of  Xio_Out32/Xio_In32

4)   _m has been removed from the macro name
  • XDsAdc_mWriteReg
  • XDsAdc_mReadReg
  • XDsAdc_mIsEmpty
  • XDsAdc_mSetFstmReg
  • XDsAdc_mGetFstmReg
  • XDsAdc_mEnableConversion
  • XDsAdc_mDisableConversion
  • XDsAdc_mGetFifoOccyReg

   6 

dsdac_v1_12_a

dsdac_v2_00_a

1)   Changes related to HAL APIs

2)   Changes for coding guidelines in the examples

3)   Updated to use XDsDac_WriteReg/XDsDac_ReadReg in place of  Xio_Out32/Xio_In32

4)   _m has been removed from the macro name
  • XDsDac_mWriteReg
  • XDsDac_mReadReg
  • XDsDac_mIsEmpty
  • XDsDac_mFifoIsFull
  • XDsDac_mGetVacancy

  7 

emaclite_v2_01_a

emaclite_v3_00_a

1)   Changes related to HAL APIs

2)   _m has been removed from the macro name
  • XEmacLite_mNextTransmitAddr
  • XEmacLite_mNextReceiveAddr 
  • XEmacLite_mIsMdioConfigured 
  • XEmacLite_mIsLoopbackConfigured
  • XEmacLite_GetReceiveDataLength.
  • XEmacLite_mGetTxActive
  • XEmacLite_mSetTxActive

   8 

emc_v1_00_a

emc_v2_00_a

1)   Changes related to HAL APIs only in the tcl for test App memory

  9 

gpio_v2_13_a

gpio_v3_00_a

1)   Changes related to HAL APIs

2)   _m has been removed from the macro name
  • XGpio_mWriteReg
  • XGpio_mReadReg

3)   Removed the macros as they are similar to the function names.
  • XGpio_mSetDataDirection,
  • XGpio_mGetDataReg
  • XGpio_mSetDataReg.

   10 

hwicap_v3_01_a

hwicap_v4_00_a

1)   Support for V6

2)   Changes related to HAL APIs

3)   _m has been removed from the macro name
  • XHwIcap_mFifoWrite
  • XHwIcap_mFifoRead
  • XHwIcap_mSetSizeReg
  • XHwIcap_mGetControlReg
  • XHwIcap_mStartConfig
  • XHwIcap_mStartReadBack
  • XHwIcap_mGetStatusReg
  • XHwIcap_mIsTransferDone
  • XHwIcap_mIsDeviceBusy
  • XHwIcap_mIntrGlobalEnable
  • XHwIcap_mIntrGlobalDisable
  • XHwIcap_mIntrGetStatus
  • XHwIcap_mIntrDisable
  • XHwIcap_mIntrEnable
  • XHwIcap_mIntrGetEnabled
  • XHwIcap_mIntrClear
  • XHwIcap_mGetWrFifoVacancy
  • XHwIcap_mGetRdFifoOccupancy
  • XHwIcap_mSliceX2Col
  • XHwIcap_mSliceY2Row
  • XHwIcap_mSliceXY2Slice
  • XHwIcap_mReadReg
  • XHwIcap_mWriteReg

   11 

iic_v1_16_a

iic_v2_00_a

1)   Changes related to HAL APIs

2)   Converted all register accesses to 32 bit access.

3)   Removed the macro XIIC_RESET, XIic_Reset API should be used in its place.

4)   Removed the IIC_CLEAR_STATS macro, XIic_ClearStats API

should be used in its place.

5)   Removed the macro XIic_mEnterCriticalRegion,

XIic_IntrGlobalDisable should be used in its place.

6)   Removed the macro XIic_mExitCriticalRegion,

XIic_IntrGlobalEnable should be used in its place.

7)   Some of the macros have been renamed to remove _m from the name
  • XIic_mClearIisr
  • XIic_mSend7BitAddress
  • XIic_mDynSend7BitAddress
  • XIic_mDynSendStartStopAddress
  • XIic_mDynSendStop
  • XIic_mSend10BitAddrByte1
  • XIic_mSend10BitAddrByte2
  • XIic_mSend7BitAddr is now
  • XIic_mDisableIntr
  • XIic_mEnableIntr
  • XIic_mClearIntr
  • XIic_mClearEnableIntr
  • XIic_mFlushRxFifo
  • XIic_mFlushTxFifo
  • XIic_mReadRecvByte 
  • XIic_mWriteSendByte
  • XIic_mSetControlRegister

8)   Some of the macros have been renamed to be consistent,
  • XIIC_GINTR_DISABLE is renamed as XIic_IntrGlobalDisable,
  • XIIC_GINTR_ENABLE is renamed as XIic_IntrGlobalEnable
  • XIIC_IS_GINTR_ENABLED is renamed as XIic_IsIntrGlobalEnabled
  • XIIC_WRITE_IISR is renamed as XIic_WriteIisr
  • XIIC_READ_IISR is renamed as  XIic_ReadIisr
  • XIIC_WRITE_IIER is renamed as XIic_WriteIier

    12

intc_v1_11_a

intc_v2_00_a

1)   Changes related to HAL APIs

2)   Changes for coding guidelines in the examples

3)   _m has been removed from the macro name
  • XIntc_mMasterEnable
  • XIntc_mMasterDisable
  • XIntc_mEnableIntr
  • XIntc_mDisableIntr
  • XIntc_mAckIntr
  • XIntc_mGetIntrStatus

    13

lldma_v1_01_a

lldma_v2_00_a

1)   Changes related to HAL APIs and header files.

2)   _m has been removed from the macro name
  • XLlDma_mWriteReg
  • XLlDma_mReadReg
  • XLlDma_mBdClear
  • XLlDma_mBdSetStsCtrl
  • XLlDma_mBdGetStsCtrl
  • XLlDma_mBdSetLength
  • XLlDma_mBdGetLength
  • XLlDma_mBdSetId
  • XLlDma_mBdGetId
  • XLlDma_mBdSetBufAddr
  • XLlDma_mBdGetLength
  • XLlDma_mGetTxRing
  • XLlDma_mGetRxRing
  • XLlDma_mGetCr
  • XLlDma_mSetCr
  • XLlDma_mBdRingCntCalc
  • XLlDma_mBdRingMemCalc
  • XLlDma_mBdRingGetCnt
  • XLlDma_mBdRingGetFreeCnt
  • XLlDma_mBdRingSnapShotCurrBd
  • XLlDma_mBdRingNext
  • XLlDma_mBdRingPrev
  • XLlDma_mBdRingGetSr
  • XLlDma_mBdRingSetSr
  • XLlDma_mBdRingGetCr
  • XLlDma_mBdRingSetCr
  • XLlDma_mBdRingBusy
  • XLlDma_mBdRingIntEnable
  • XLlDma_mBdRingIntDisable
  • XLlDma_mBdRingIntGetEnable
  • XLlDma_mBdRingIntGetIrq
  • XLlDma_mBdRingAckIrq

   14 

llfifo_v1_01_a

llfifo_v2_00_a

1)   Changes related to HAL APIs and header files.

   15

lltemac_v2_00_a

lltemac_v3_00_a

1)   Changes related to HAL APIs and header files.

   16 

mbox_v2_00_a

mbox_v3_00_a

1)   Changes related to HAL APIs and header files.

2)   _m has been removed from the macro name
  • XMbox_mWriteReg
  • XMbox_mReadReg
  • XMbox_mWriteBox
  • XMbox_mReadBox
  • XMbox_mFSLReadMBox
  • XMbox_mFSLWriteMBox
  • XMbox_mFSLIsEmpty
  • XMbox_mFSLIsFul

3)   The macros have been renamed
  • XMbox_mIsEmpty to XMbox_IsEmptyHw
  • XMbox_mIsFull to XMbox_IsFullHw

  17 

memcon_v1_00_a

memcon_v2_00_a

1)   Changes related to HAL APIs only in the tcl for test App memory

   18 

mpmc_v3_01_a

mpmc_v4_00_a

1)   Changes related to HAL APIs

2)   Changes for coding guidelines in the examples and also the _m has been removed from the macros provided in the examples

3)   _m has been removed from the macro name
  • XMpmc_mReadReg
  • XMpmc_mWriteReg

   19

mutex_v2_00_a

mutex_v3_00_a

1)   Changes related to HAL APIs and header files.

2)   _m has been removed from the macro name
  • XMutex_mWriteReg
  • XMutex_mReadReg

   20 

pcie_v3_00_a

Pci_v4_00_a

 

  21 

ps2_v1_01_a

ps2_v2_00_a

1)   Changes related to HAL APIs

   22 

spi_v2_01_b

spi_v3_00_a

 

1)   Changes related to HAL APIs

2)   Converted all register accesses to 32 bit access.

3)   Removed the macro XSpi_mReset, XSpi_Reset API should be used in its place.

4)   Some of the macros have been renamed to remove _m from the name
  • XSpi_mIntrGlobalEnable
  • XSpi_mIntrGlobalDisable
  • XSpi_mIsIntrGlobalEnabled
  • XSpi_mIntrGetStatus
  • XSpi_mIntrClear
  • XSpi_mIntrEnable
  • XSpi_mIntrDisable 
  • XSpi_mIntrGetEnabled
  • XSpi_mSetControlReg
  • XSpi_mGetControlReg
  • XSpi_mGetStatusReg
  • XSpi_mSetSlaveSelectReg
  • XSpi_mGetSlaveSelectRegi
  • XSpi_mEnable
  • XSpi_mDisable

  23 

sysace_v1_12_a

sysace_v2_00_a

1)   Changes related to HAL APIs

2)   XSysAce_mSetCfgAddr macro is removed, user should use

            XSysAce_GetControlReg and XSysAce_GetControlReg to  

            Achieve he same functionality.

3)   XSysAce_mIsCfgDone macro is removed, user should use

            XSysAce_GetStatusReg to acheive the same functionality.

4)   Some of the macros have been renamed to remove _m from the name
  • XSysAce_mGetControlReg
  • XSysAce_mSetControlReg
  • XSysAce_mOrControlReg
  • XSysAce_mAndControlReg
  • XSysAce_mGetErrorReg
  • XSysAce_mGetStatusReg
  • XSysAce_mWaitForLock
  • XSysAce_mEnableIntr
  •  XSysAce_mDisableIntr
  •  XSysAce_mIsReadyForCmd
  •  XSysAce_mIsMpuLocked
  •  XSysAce_mIsIntrEnabled

  24 

sysmon_v3_00_a

sysmon_v4_00_a

1)   Changes related to HAL APIs

2)   Macros have been renamed to remove _m from the name
  • XSysMon_mIsEventSamplingModeSet
  • XSysMon_mIsDrpBusy
  • XSysMon_mIsDrpLocked
  • XSysMon_mRawToTemperature
  • XSysMon_mRawToVoltage
  • XSysMon_mTemperatureToRaw
  • XSysMon_mVoltageToRaw
  • XSysMon_mReadReg
  • XSysMon_mWriteReg

    25

tft_v2_00_a

tft_v3_00_a

1)   Changes related to HAL APIs

2)   Removed the macros XTft_mSetPixel and XTft_mGetPixel.

   26 

tmrctr_v1_11_a

tmrctr_v2_00_a

1)   Changes related to HAL APIs

2)   Changes for coding guidelines in the examples

3)   The macros have been renamed to remove _m from the name
  • XTimerCtr_mReadReg
  • XTimerCtr_mWriteReg
  • XTmrCtr_mSetControlStatusReg
  • XTmrCtr_mGetControlStatusReg
  • XTmrCtr_mGetTimerCounterReg
  • XTmrCtr_mSetLoadReg
  • XTmrCtr_mGetLoadReg
  • XTmrCtr_mEnable
  • XTmrCtr_mDisable
  • XTmrCtr_mEnableIntr
  • XTmrCtr_mDisableIntr
  • XTmrCtr_mLoadTimerCounterReg
  • XTmrCtr_mHasEventOccurred

 

  27 

uartlite_v1_14_a

uartlite_v2_00_a

1)   Changes related to HAL APIs

2)   UartLite_mClearStats macro is removed and XUartLite_ClearStats function should be used in its place.

3)   The macros have been renamed to remove _m from the name
  • XUartLite_mSetControlReg
  • XUartLite_mGetStatusReg
  • XUartLite_mIsReceiveEmpty
  • XUartLite_mIsTransmitFull
  • XUartLite_mIsIntrEnabled
  • XUartLite_mEnableIntr
  • XUartLite_mDisableIntr

 

   28 

uartns550_v1_13_a

uartns550_v2_00_a

1)   The driver has been changed to 32 bit accesses.

2)   Changes related to HAL APIs

3)   XUartNs550_mClearStats macro is removed, XUartNs550_ClearStats function should be  used in its place

4)   The macros have been renamed to remove _m from the name
  • XUartNs550_mGetLineStatusReg
  • XUartNs550_mGetLineControlReg
  • XUartNs550_mSetLineControlReg
  • XUartNs550_mEnableIntr
  • XUartNs550_mDisableIntr
  • XUartNs550_mIsReceiveData
  • XUartNs550_mIsTransmitEmpty

 

   29 

usb_v2_00_a

usb_v3_00_a

1)   Modifications related to the new USB error    reporting register in the XPS USB device.

2)   Updated to use HAL processor APIs.

3)   Removed _m from the name of the macros.
  • XUsb_mReadReg is renamed to XUsb_ReadReg
  • XUsb_mWriteReg is renamed to XUsb_WriteReg.

               

   30 

usbhost_v1_00_a

usbhost_v2_00_a

1)   Changes related to HAL APIs and header files.

   31

wdttb_v1_11_a

wdttb_v2_00_a

1)   Changes related to HAL APIs

2)   The following macros defined in xwdttb_l.h file have been

removed - XWdtTb_mEnableWdt, XWdtTb_mDisbleWdt,

 XWdtTb_mRestartWdt, XWdtTb_mGetTimebaseReg and

 XWdtTb_mHasReset.

1)   Added the XWdtTb_ReadReg and XWdtTb_WriteReg

 

 

SW_SERVICES

 

 

 

  32 

xilflash_v1_03_a

xilflash_v2_00_a

1)   Changes related to HAL APIs

 

  33 

xilIsf_v1_00_a

xilIsf_v2_00_a

1)   Changes related to HAL APIs

2)   The examples that use SPI driver macros have been renamed.

 

MLDS/BSP

 

 

 

   34 

vxworks6_ 3_v1_01_a

vxworks6_ 3_v1_02_a

There are new versions of the adapters released for the _m macro name change and the removal of some of these macros.

   35

vxworks6_ 5_v1_03_a

vxworks6_ 5_v1_04_a

There are new versions of the adapters released for the _m macro name change and the removal of some of these macros

   36 

vxworks6_ 7_v1_01_a

vxworks6_ 7_v1_02_a

There are new versions of the adapters released for the _m macro name change and the removal of some of these macros

   37

linux_2_6_v1_03_a

Linux_2_6_v1_04_a

There are new versions of the adapters released for the _m macro name change and the removal of some of these macros.

The support for WindRiver Linux 1.3 has been deprecated - The user will not see this option in the MLD.

   38

standalone_v2_00_a

standalone_v3_00_a

HAL APIs and header files introduced.

链接问答记录

主要问答记录

Answer Number 问答标题 问题版本 已解决问题的版本
34609 12.x EDK - 主要问答记录列表 N/A N/A
AR# 35400
日期 09/10/2019
状态 Active
Type 综合文章
Tools
People Also Viewed