/* Copyright 2013 Castle Technology Ltd
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
#ifndef GLOBAL_VIDCLIST_H

#include <stdint.h>

typedef struct
{
	int32_t index;
	uint32_t value;
} ControlList;

typedef struct
{
	uint32_t Type;
	uint32_t PixelDepth;
	uint32_t HorizSyncWidth;
	uint32_t HorizBackPorch;
	uint32_t HorizLeftBorder;
	uint32_t HorizDisplaySize;
	uint32_t HorizRightBorder;
	uint32_t HorizFrontPorch;
	uint32_t VertiSyncWidth;
	uint32_t VertiBackPorch;
	uint32_t VertiTopBorder;
	uint32_t VertiDisplaySize;
	uint32_t VertiBottomBorder;
	uint32_t VertiFrontPorch;
	uint32_t PixelRate;
	uint32_t SyncPol;
	ControlList ControlList[1];
} VIDCList3;

#endif
/* In the exported copy of this file, the Hdr2H translation of hdr.VIDCList will follow. */
/* Created by Hdr2H.  Do not edit.*/
#ifndef GLOBAL_VIDCLIST_H
#define GLOBAL_VIDCLIST_H

#ifdef __CC_NORCROFT
#pragma force_top_level
#pragma include_only_once
#endif

#define VIDCList3_Type                           (0)
#define VIDCList3_PixelDepth                     (4)
#define VIDCList3_HorizSyncWidth                 (8)
#define VIDCList3_HorizBackPorch                 (12)
#define VIDCList3_HorizLeftBorder                (16)
#define VIDCList3_HorizDisplaySize               (20)
#define VIDCList3_HorizRightBorder               (24)
#define VIDCList3_HorizFrontPorch                (28)
#define VIDCList3_VertiSyncWidth                 (32)
#define VIDCList3_VertiBackPorch                 (36)
#define VIDCList3_VertiTopBorder                 (40)
#define VIDCList3_VertiDisplaySize               (44)
#define VIDCList3_VertiBottomBorder              (48)
#define VIDCList3_VertiFrontPorch                (52)
#define VIDCList3_PixelRate                      (56)
#define VIDCList3_SyncPol                        (60)
#define VIDCList3_ControlList                    (64)
#define ControlList_LCDMode                      (1)
#define ControlList_LCDDualPanelMode             (2)
#define ControlList_LCDOffset0                   (3)
#define ControlList_LCDOffset1                   (4)
#define ControlList_HiResMode                    (5)
#define ControlList_DACControl                   (6)
#define ControlList_RGBPedestals                 (7)
#define ControlList_ExternalRegister             (8)
#define ControlList_HClockSelect                 (9)
#define ControlList_RClockFrequency              (10)
#define ControlList_DPMSState                    (11)
#define ControlList_OutputFormat                 (13)
#define ControlList_ExtraBytes                   (14)
#define ControlList_NColour                      (15)
#define ControlList_ModeFlags                    (16)
#define ControlList_InvalidReason                (17)
#define ControlList_Terminator                   (-1)
#define SyncPol_InvertHSync                      (1)
#define SyncPol_InvertVSync                      (2)
#define SyncPol_InterlaceSpecified               (4)
#define SyncPol_Interlace                        (8)
#define SyncPol_InterlaceFields                  (16)
#endif
