kernel/eka/include/drivers/locmedia.h
branchRCL_3
changeset 28 5b5d147c7838
parent 23 1df514389a47
child 42 a179b74831c9
--- a/kernel/eka/include/drivers/locmedia.h	Tue May 11 17:28:22 2010 +0300
+++ b/kernel/eka/include/drivers/locmedia.h	Tue May 25 14:09:55 2010 +0300
@@ -342,6 +342,7 @@
 		EDataPaging=0x40,			// a data paging request
 		ETClientBuffer=0x80,		// RemoteDes() points to a TClientBuffer
 		EKernelBuffer=0x100,		// RemoteDes() points to a kernel-side buffer
+		EPhysAddrOnly=0x200,        // No virtual address is available. Data Paging requests Only. 
 		};
 public:
     
@@ -977,6 +978,12 @@
 	inline static TBool PageInRequest(TLocDrvRequest& aReq);
 	inline static TBool PageOutRequest(TLocDrvRequest& aReq);
 	inline static TBool PagingRequest(TLocDrvRequest& aReq);
+		
+	virtual TInt WritePhysical(TThreadMessage* aReq, TPhysAddr* aPageArray, TUint aPageCount, TUint aOffset, TBool aBackground);
+	virtual TInt ReadPhysical(TThreadMessage* aReq, TPhysAddr* aPageArray, TUint aPageCount, TUint aOffset, TInt aDrvNumber);
+private:    
+    virtual TInt BaseRead(TThreadMessage* aReq,TUint32 aBuffer,TUint aOffset,TUint aSize,TInt aDrvNumber,TBool aPhysAddr);
+    virtual TInt BaseWrite(TThreadMessage* aReq,TUint32 aBuffer,TUint aOffset,TUint aSize, TBool aBackground,TBool aPhysAddr); 
 public:
 	TMessageQue iMainQ;
 	TMessageQue iDeferredQ;