--- a/kernel/eka/include/drivers/dma_hai.h Mon Jul 26 10:52:56 2010 +0100
+++ b/kernel/eka/include/drivers/dma_hai.h Fri Aug 06 16:34:38 2010 +0100
@@ -896,12 +896,17 @@
*/
class TDmaAsymSgChannel : public TDmaChannel
{
+public:
+ TDmaAsymSgChannel();
+
private:
virtual void DoQueue(const DDmaRequest& aReq);
virtual void DoCancelAll();
virtual void DoUnlink(SDmaDesHdr& aHdr);
virtual void DoDfc(const DDmaRequest& aCurReq, SDmaDesHdr*& aSrcCompletedHdr,
SDmaDesHdr*& aDstCompletedHdr);
+ virtual void SetNullPtr(const DDmaRequest& aReq);
+ virtual void ResetNullPtr();
protected:
SDmaDesHdr* iSrcCurHdr; // source fragment being transferred or NULL
@@ -909,6 +914,8 @@
SDmaDesHdr* iDstCurHdr; // destination fragment being transferred or NULL
SDmaDesHdr** iDstNullPtr; // Pointer to NULL pointer following last destination fragment
enum {EIdle = 0, ETransferring} iState;
+
+ __DMA_DECLARE_VIRTUAL_INVARIANT
};