18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Copyright 1998-2008 VIA Technologies, Inc. All Rights Reserved. 48c2ecf20Sopenharmony_ci * Copyright 2001-2008 S3 Graphics, Inc. All Rights Reserved. 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci */ 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci#ifndef __VIAMODE_H__ 98c2ecf20Sopenharmony_ci#define __VIAMODE_H__ 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci#include "global.h" 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_cistruct VPITTable { 148c2ecf20Sopenharmony_ci unsigned char Misc; 158c2ecf20Sopenharmony_ci unsigned char SR[StdSR]; 168c2ecf20Sopenharmony_ci unsigned char GR[StdGR]; 178c2ecf20Sopenharmony_ci unsigned char AR[StdAR]; 188c2ecf20Sopenharmony_ci}; 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_cistruct patch_table { 218c2ecf20Sopenharmony_ci int table_length; 228c2ecf20Sopenharmony_ci struct io_reg *io_reg_table; 238c2ecf20Sopenharmony_ci}; 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ciextern int NUM_TOTAL_CN400_ModeXregs; 268c2ecf20Sopenharmony_ciextern int NUM_TOTAL_CN700_ModeXregs; 278c2ecf20Sopenharmony_ciextern int NUM_TOTAL_KM400_ModeXregs; 288c2ecf20Sopenharmony_ciextern int NUM_TOTAL_CX700_ModeXregs; 298c2ecf20Sopenharmony_ciextern int NUM_TOTAL_VX855_ModeXregs; 308c2ecf20Sopenharmony_ciextern int NUM_TOTAL_CLE266_ModeXregs; 318c2ecf20Sopenharmony_ciextern int NUM_TOTAL_PATCH_MODE; 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ciextern struct io_reg CN400_ModeXregs[]; 348c2ecf20Sopenharmony_ciextern struct io_reg CN700_ModeXregs[]; 358c2ecf20Sopenharmony_ciextern struct io_reg KM400_ModeXregs[]; 368c2ecf20Sopenharmony_ciextern struct io_reg CX700_ModeXregs[]; 378c2ecf20Sopenharmony_ciextern struct io_reg VX800_ModeXregs[]; 388c2ecf20Sopenharmony_ciextern struct io_reg VX855_ModeXregs[]; 398c2ecf20Sopenharmony_ciextern struct io_reg CLE266_ModeXregs[]; 408c2ecf20Sopenharmony_ciextern struct io_reg PM1024x768[]; 418c2ecf20Sopenharmony_ciextern struct patch_table res_patch_table[]; 428c2ecf20Sopenharmony_ciextern struct VPITTable VPIT; 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ciconst struct fb_videomode *viafb_get_best_mode(int hres, int vres, 458c2ecf20Sopenharmony_ci int refresh); 468c2ecf20Sopenharmony_ciconst struct fb_videomode *viafb_get_best_rb_mode(int hres, int vres, 478c2ecf20Sopenharmony_ci int refresh); 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci#endif /* __VIAMODE_H__ */ 50