kernel/eka/include/kernel/kernel.h
branchRCL_3
changeset 257 3e88ff8f41d5
parent 256 c1f20ce4abcf
child 294 039a3e647356
equal deleted inserted replaced
256:c1f20ce4abcf 257:3e88ff8f41d5
     1 // Copyright (c) 1994-2010 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 1994-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of the License "Eclipse Public License v1.0"
     4 // under the terms of the License "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
   227 */
   227 */
   228 const TUint8 KMutexOrdGeneral0			= 0xf0;
   228 const TUint8 KMutexOrdGeneral0			= 0xf0;
   229 
   229 
   230 
   230 
   231 const TUint8 KMutexOrdRamDrive			= KMutexOrdGeneral7; /**< @internalComponent */
   231 const TUint8 KMutexOrdRamDrive			= KMutexOrdGeneral7; /**< @internalComponent */
       
   232 const TUint8 KMutexOrdDmaChannel		= 0x70; /**< @internalComponent */
   232 const TUint8 KMutexOrdShPool			= 0x68; /**< @internalComponent */
   233 const TUint8 KMutexOrdShPool			= 0x68; /**< @internalComponent */
   233 const TUint8 KMutexOrdCodeSegLock		= 0x60; /**< @internalComponent */
   234 const TUint8 KMutexOrdCodeSegLock		= 0x60; /**< @internalComponent */
   234 const TUint8 KMutexOrdPubSub2			= 0x5e; /**< @internalComponent */
   235 const TUint8 KMutexOrdPubSub2			= 0x5e; /**< @internalComponent */
   235 
   236 
   236 /**
   237 /**
  2842 	@return KErrNone or standard error code.
  2843 	@return KErrNone or standard error code.
  2843 	*/
  2844 	*/
  2844 	inline virtual TInt DeleteNotify(TThreadMessage* aReq,TUint aOffset,TUint aSize);
  2845 	inline virtual TInt DeleteNotify(TThreadMessage* aReq,TUint aOffset,TUint aSize);
  2845 
  2846 
  2846 	/**
  2847 	/**
  2847 	Return the lock that should be used to synchronise calculation of the idle/busy state and
       
  2848 	subsequent calls to #NotifyIdle and #NotifyBusy.
       
  2849 	*/
       
  2850 	IMPORT_C NFastMutex* NotificationLock();
       
  2851 	
       
  2852 	/**
       
  2853 	Called by the paging system to read data from the media represented by this device using
  2848 	Called by the paging system to read data from the media represented by this device using
  2854 	physical addresses, if the device supports it.
  2849 	physical addresses, if the device supports it.
  2855 	
  2850 	
  2856 	This is intended to allow reading pages from swap without needing to map them first, and should
  2851 	This is intended to allow reading pages from swap without needing to map them first, and should
  2857 	be implemented by media drivers that support DMA access.
  2852 	be implemented by media drivers that support DMA access.
  2895 		   				device busy.
  2890 		   				device busy.
  2896 
  2891 
  2897 	@return KErrNone or standard error code.
  2892 	@return KErrNone or standard error code.
  2898 	*/
  2893 	*/
  2899 	inline virtual TInt WritePhysical(TThreadMessage* aReq, TPhysAddr* aPageArray, TUint aPageCount, TUint aOffset, TBool aBackground);
  2894 	inline virtual TInt WritePhysical(TThreadMessage* aReq, TPhysAddr* aPageArray, TUint aPageCount, TUint aOffset, TBool aBackground);
       
  2895 	
       
  2896 	/**
       
  2897 	Return the lock that should be used to synchronise calculation of the idle/busy state and
       
  2898 	subsequent calls to #NotifyIdle and #NotifyBusy.
       
  2899 	*/
       
  2900 	IMPORT_C NFastMutex* NotificationLock();
  2900 	
  2901 	
  2901 	/**
  2902 	/**
  2902 	Called by the paging device to notify the kernel that the device has just become idle and is not
  2903 	Called by the paging device to notify the kernel that the device has just become idle and is not
  2903 	currently processing any requests.
  2904 	currently processing any requests.
  2904 
  2905