/* SPDX-License-Identifier: MIT */
/*
* Copyright ( c ) 2005 ASPEED Technology Inc .
*
* Permission to use , copy , modify , distribute , and sell this software and its
* documentation for any purpose is hereby granted without fee , provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
* documentation , and that the name of the authors not be used in
* advertising or publicity pertaining to distribution of the software without
* specific , written prior permission . The authors makes no representations
* about the suitability of this software for any purpose . It is provided
* " as is " without express or implied warranty .
*
* THE AUTHORS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE ,
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS , IN NO
* EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL , INDIRECT OR
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE ,
* DATA OR PROFITS , WHETHER IN AN ACTION OF CONTRACT , NEGLIGENCE OR OTHER
* TORTIOUS ACTION , ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE .
*/
/* Ported from xf86-video-ast driver */
#ifndef AST_VBIOS_H
#define AST_VBIOS_H
#include <linux/types.h>
struct ast_device;
struct drm_display_mode;
#define Charx8Dot 0 x00000001
#define HalfDCLK 0 x00000002
#define DoubleScanMode 0 x00000004
#define LineCompareOff 0 x00000008
#define HBorder 0 x00000020
#define VBorder 0 x00000010
#define WideScreenMode 0 x00000100
#define NewModeInfo 0 x00000200
#define NHSync 0 x00000400
#define PHSync 0 x00000800
#define NVSync 0 x00001000
#define PVSync 0 x00002000
#define SyncPP (PVSync | PHSync)
#define SyncPN (PVSync | NHSync)
#define SyncNP (NVSync | PHSync)
#define SyncNN (NVSync | NHSync)
#define AST2500PreCatchCRT 0 x00004000
/* DCLK Index */
#define VCLK25_175 0 x00
#define VCLK28_322 0 x01
#define VCLK31_5 0 x02
#define VCLK36 0 x03
#define VCLK40 0 x04
#define VCLK49_5 0 x05
#define VCLK50 0 x06
#define VCLK56_25 0 x07
#define VCLK65 0 x08
#define VCLK75 0 x09
#define VCLK78_75 0 x0a
#define VCLK94_5 0 x0b
#define VCLK108 0 x0c
#define VCLK135 0 x0d
#define VCLK157_5 0 x0e
#define VCLK162 0 x0f
/* #define VCLK193_25 0x10 */
#define VCLK154 0 x10
#define VCLK83_5 0 x11
#define VCLK106_5 0 x12
#define VCLK146_25 0 x13
#define VCLK148_5 0 x14
#define VCLK71 0 x15
#define VCLK88_75 0 x16
#define VCLK119 0 x17
#define VCLK85_5 0 x18
#define VCLK97_75 0 x19
#define VCLK118_25 0 x1a
struct ast_vbios_enhtable {
u32 ht;
u32 hde;
u32 hfp;
u32 hsync;
u32 vt;
u32 vde;
u32 vfp;
u32 vsync;
u32 dclk_index;
u32 flags;
u32 refresh_rate;
u32 refresh_rate_index;
u32 mode_id;
};
#define AST_VBIOS_INVALID_MODE \
{0 u, 0 u, 0 u, 0 u, 0 u, 0 u, 0 u, 0 u, 0 u, 0 u, 0 u, 0 u}
static inline bool ast_vbios_mode_is_valid(const struct ast_vbios_enhtable *vmode)
{
return vmode->ht && vmode->vt && vmode->refresh_rate;
}
const struct ast_vbios_enhtable *ast_vbios_find_mode(const struct ast_device *ast,
const struct drm_display_mode *mode);
#endif
Messung V0.5 in Prozent C=96 H=100 G=97
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-10-02)
¤
*© Formatika GbR, Deutschland