|
1 // Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). |
|
2 // All rights reserved. |
|
3 // This component and the accompanying materials are made available |
|
4 // under the terms of "Eclipse Public License v1.0" |
|
5 // which accompanies this distribution, and is available |
|
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
7 // |
|
8 // Initial Contributors: |
|
9 // Nokia Corporation - initial contribution. |
|
10 // |
|
11 // Contributors: |
|
12 // |
|
13 // Description: |
|
14 // Header file for the guest video driver |
|
15 |
|
16 #ifndef VirtualVideoInterfaceConstants_h_ |
|
17 #define VirtualVideoInterfaceConstants_h_ |
|
18 |
|
19 // virtualhw.irq => ic.input[391]; |
|
20 // pvbus.pvbus_m_range[0x60000000..0x62ffffff] => graphicsvirtualhw.mbus; //=>Reserve own memory area later |
|
21 // pvbus.pvbus_m_range[0x63000000..0x63000fff] => graphicsvirtualhw.pbus; //=>Reserve own memory area later |
|
22 |
|
23 #ifdef PLATSIM_CONFIG |
|
24 #define VVI_BASE 0x60000000 |
|
25 #else |
|
26 #define VVI_BASE 0x00000000 |
|
27 #endif // PLATSIM_CONFIG |
|
28 |
|
29 // base address |
|
30 #define VVI_REGISTERS_BASE_ADDRESS VVI_BASE + 0x03000000 |
|
31 #define VVI_REGISTERS_MEMORY_SIZE 0x1000 |
|
32 #define VVI_REGISTERS_MASK 0x0FFF |
|
33 |
|
34 #define VVI_PARAMETERS_INPUT_BASE_ADDRESS VVI_BASE + 0x00000000 |
|
35 #define VVI_PARAMETERS_INPUT_MEMORY_SIZE 0x01000000 |
|
36 |
|
37 #define VVI_PARAMETERS_OUTPUT_BASE_ADDRESS VVI_BASE + 0x01000000 |
|
38 #define VVI_PARAMETERS_OUTPUT_MEMORY_SIZE 0x01000000 |
|
39 |
|
40 #define VVI_SURFACEBUFFER_BASE_ADDRESS VVI_BASE + 0x02000000 |
|
41 #define VVI_SURFACEBUFFER_MEMORY_SIZE 0x01000000 |
|
42 |
|
43 // register indices, TODO: cleanup needed, some are not used |
|
44 #define VVI_R_ID 0x0000 |
|
45 #define VVI_R_IRQ_ENABLE 0x0004 |
|
46 #define VVI_R_IRQ_STATUS 0x0008 |
|
47 #define VVI_R_COMMAND 0x000c |
|
48 #define VVI_R_PARAMETER_LOAD 0x0010 |
|
49 #define VVI_R_ERROR 0x0014 |
|
50 #define VVI_R_INPUT_BUFFER_TAIL 0x0018 |
|
51 #define VVI_R_INPUT_BUFFER_HEAD 0x001c |
|
52 #define VVI_R_INPUT_BUFFER_READ_COUNT 0x0020 |
|
53 #define VVI_R_INPUT_BUFFER_WRITE_COUNT 0x0024 |
|
54 #define VVI_R_INPUT_BUFFER_MAX_TAIL 0x0028 |
|
55 #define VVI_R_REQUEST_ID 0x002c |
|
56 #define VVI_R_SHARED_CMD_MEMORY_BASE 0x0030 |
|
57 #define VVI_R_SHARED_SURFACEBUFFER_MEMORY_BASE 0x0034 |
|
58 #define VVI_R_LASTREG 0x0038 // not a register, address of last register |
|
59 |
|
60 // COMMAND register values |
|
61 #define VVI_EXECUTE 0 |
|
62 |
|
63 //IRQ number |
|
64 #ifdef PLATSIM_CONFIG |
|
65 #define VVI_IRQ 391 |
|
66 #else |
|
67 // Jani - This is defined in syborg.h "EIntGraphics" - should we get it from there? |
|
68 #define VVI_IRQ 13 |
|
69 #endif // PLATSIM_CONFIG |
|
70 |
|
71 #endif |