diff -r 2fb8b9db1c86 -r d55eb581a87c baseport/src/cedar/generic/base/syborg/fb/syborg_fb.h --- a/baseport/src/cedar/generic/base/syborg/fb/syborg_fb.h Fri Jul 31 15:01:17 2009 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,124 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of the License "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: Minimalistic frame buffer driver -* -*/ - -#ifndef _SYBORG_FB_H -#define _SYBORG_FB_H - -#include -#include -#include -#include -#include - -_LIT(KLitLcd,"SYBORG_FB"); - -const TUint KConfigLcdWidth = 640; -const TUint KConfigLcdHeight = 480; -const TInt KConfigLcdWidthInTwips = 9638; -const TInt KConfigLcdHeightInTwips = 7370; -const TBool KConfigIsMono = 0; -const TBool KConfigIsPalettized = 0; -const TInt KCOnfigOffsetToFirstPixel = 0; -const TBool KConfigPixelOrderRGB = 0; -const TBool KConfigPixelOrderLandscape = 1; -const TInt KConfigLcdDisplayMode = 2; -//const TInt KConfigLcdDisplayMode = 1; -const TInt KConfigLcdNumberOfDisplayModes = 3; - - -const TInt KConfigBitsPerPixel = 24; -const TInt KCOnfigOffsetBetweenLines = 2560; - -class DLcdPowerHandler : public DPowerHandler -{ -public: // from DPowerHandler - void PowerDown(TPowerState); - void PowerUp(); -public: // to prevent a race condition with WServer trying to power up/down at the same time - void PowerUpDfc(); - void PowerDownDfc(); -public: - DLcdPowerHandler(); - TInt Create(); - void DisplayOn(); - void DisplayOff(); - TInt HalFunction(TInt aFunction, TAny* a1, TAny* a2); - - void PowerUpLcd(TBool aSecure); - void PowerDownLcd(); - - void ScreenInfo(TScreenInfoV01& aInfo); - void WsSwitchOnScreen(); - void WsSwitchOffScreen(); - void HandleMsg(TMessageBase* aMsg); - void SwitchDisplay(TBool aSecure); - -private: - TInt GetCurrentDisplayModeInfo(TVideoInfoV01& aInfo, TBool aSecure); - TInt GetSpecifiedDisplayModeInfo(TInt aMode, TVideoInfoV01& aInfo); - TInt SetDisplayMode(TInt aMode); - TInt AllocateFrameBuffer(); - - TBool iDisplayOn; - DPlatChunkHw* iChunk; - DPlatChunkHw* iSecureChunk; - TBool iWsSwitchOnScreen; - TBool iSecureDisplay; - -public: - TDfcQue* iDfcQ; - TMessageQue iMsgQ; // to prevent a race condition with Power Manager trying to power up/down at the same time - TDfc iPowerUpDfc; - TDfc iPowerDownDfc; - -private: - TVideoInfoV01 iVideoInfo; - TVideoInfoV01 iSecureVideoInfo; - NFastMutex iLock; - TPhysAddr ivRamPhys; - TPhysAddr iSecurevRamPhys; - -public: - TLinAddr iPortAddr; - -enum { - FB_ID = 0, - FB_BASE = 1, - FB_HEIGHT = 2, - FB_WIDTH = 3, - FB_ORIENTATION = 4, - FB_BLANK = 5, - FB_INT_MASK = 6, - /* begin new interface */ - FB_INTERRUPT_CAUSE = 7, - FB_BPP = 8, - FB_COLOR_ORDER = 9, - FB_BYTE_ORDER = 10, - FB_PIXEL_ORDER = 11, - FB_ROW_PITCH = 12, - FB_ENABLED = 13, - FB_PALETTE_START = 0x400 >> 2, - FB_PALETTE_END = FB_PALETTE_START+256-1, - /* end new interface */ -}; - -#define FB_INT_VSYNC (1U << 0) -#define FB_INT_BASE_UPDATE_DONE (1U << 1) - -}; - -#endif