equal
deleted
inserted
replaced
1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 2007-2010 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". |
24 |
24 |
25 class TLocDrvRequest; |
25 class TLocDrvRequest; |
26 |
26 |
27 /** |
27 /** |
28 @internalTechnology |
28 @internalTechnology |
29 @prototype |
|
30 |
29 |
31 Class used for read / write requests to the local media subsystem to gain access |
30 Class used for read / write requests to the local media subsystem to gain access |
32 to physical memory address to make use of DMA without the need of an intermediate buffer. |
31 to physical memory address to make use of DMA without the need of an intermediate buffer. |
33 */ |
32 */ |
34 class DDmaHelper : public DBase |
33 class DDmaHelper : public DBase |
66 #endif |
65 #endif |
67 inline TInt PageSize() const { return iPageSize; } |
66 inline TInt PageSize() const { return iPageSize; } |
68 |
67 |
69 private: |
68 private: |
70 |
69 |
71 static inline TInt PageSizeLog2(); |
|
72 static inline TBool IsPageAligned(TLinAddr aAddr); |
70 static inline TBool IsPageAligned(TLinAddr aAddr); |
73 static inline TLinAddr PageAlign(TLinAddr aAddr); |
71 static inline TLinAddr PageAlign(TLinAddr aAddr); |
74 static inline TLinAddr PageOffset(TLinAddr aAddr); |
72 static inline TLinAddr PageOffset(TLinAddr aAddr); |
75 |
73 |
76 inline TInt MaxFragLength() const; |
74 inline TInt MaxFragLength() const; |
77 inline void SetFragLength(TInt aLength); |
75 inline void SetFragLength(TInt aLength); |
78 inline TInt FragLength() const; |
76 inline TInt FragLength() const; |
79 inline TInt LengthRemaining() const; |
77 inline TInt LengthRemaining() const; |
80 inline TUint32 LengthConsumed() const; |
|
81 |
78 |
82 inline TBool IsDmaAligned(TLinAddr aAddr); |
79 inline TBool IsDmaAligned(TLinAddr aAddr); |
83 inline TBool IsBlockAligned(TInt64 aPos); |
80 inline TBool IsBlockAligned(TInt64 aPos); |
84 inline TInt64 BlockAlign(TInt64 aPos); |
81 inline TInt64 BlockAlign(TInt64 aPos); |
85 inline TInt BlockOffset(TInt64 aPos); |
82 inline TInt BlockOffset(TInt64 aPos); |