Initial contribution supporting NaviEngine 1
This package_definition.xml will build support for three memory models
- Single (sne1_tb)
- Multiple (ne1_tb)
- Flexible (fne1_tb)
/*
* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:
* naviengine_assp\naviengine.cia
* NE1_TBVariant ASSP architecture layer
*
*/
#include <e32cia.h>
#include <naviengine_priv.h>
EXPORT_C __NAKED__ void TNaviEngine::BootWaitMilliSeconds(TInt aDuration)
//
// Active waiting loop (not to be used after System Tick timer has been set up - Init3()
//
{
//
// TO DO: (optional)
//
// Program a Hardware Timer to generate the required duration, and then loop until the timer expires.
// Do NOT use interrupts!
//
}
__NAKED__ void TNaviEngine::NanoWait(TUint32 aInterval)
//
// Wait for aInterval nanoseconds
//
{
// TO DO: work out the correct values for the hardware
asm("subs r0, r0, #100 ");
asm("1:");
asm("subhis r0, r0, #5 "); // 400MHz, 2 cycles = 5ns
asm("bhi 1b");
__JUMP(,lr);
}