18c2ecf20Sopenharmony_ci/* 28c2ecf20Sopenharmony_ci * linux/drivers/video/macmodes.h -- Standard MacOS video modes 38c2ecf20Sopenharmony_ci * 48c2ecf20Sopenharmony_ci * Copyright (C) 1998 Geert Uytterhoeven 58c2ecf20Sopenharmony_ci * 68c2ecf20Sopenharmony_ci * This file is subject to the terms and conditions of the GNU General Public 78c2ecf20Sopenharmony_ci * License. See the file COPYING in the main directory of this archive for 88c2ecf20Sopenharmony_ci * more details. 98c2ecf20Sopenharmony_ci */ 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci#ifndef _VIDEO_MACMODES_H 128c2ecf20Sopenharmony_ci#define _VIDEO_MACMODES_H 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ci /* 158c2ecf20Sopenharmony_ci * Video mode values. 168c2ecf20Sopenharmony_ci * These are supposed to be the same as the values that Apple uses in 178c2ecf20Sopenharmony_ci * MacOS. 188c2ecf20Sopenharmony_ci */ 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci#define VMODE_NVRAM 0 218c2ecf20Sopenharmony_ci#define VMODE_512_384_60I 1 /* 512x384, 60Hz interlaced (NTSC) */ 228c2ecf20Sopenharmony_ci#define VMODE_512_384_60 2 /* 512x384, 60Hz */ 238c2ecf20Sopenharmony_ci#define VMODE_640_480_50I 3 /* 640x480, 50Hz interlaced (PAL) */ 248c2ecf20Sopenharmony_ci#define VMODE_640_480_60I 4 /* 640x480, 60Hz interlaced (NTSC) */ 258c2ecf20Sopenharmony_ci#define VMODE_640_480_60 5 /* 640x480, 60Hz (VGA) */ 268c2ecf20Sopenharmony_ci#define VMODE_640_480_67 6 /* 640x480, 67Hz */ 278c2ecf20Sopenharmony_ci#define VMODE_640_870_75P 7 /* 640x870, 75Hz (portrait) */ 288c2ecf20Sopenharmony_ci#define VMODE_768_576_50I 8 /* 768x576, 50Hz (PAL full frame) */ 298c2ecf20Sopenharmony_ci#define VMODE_800_600_56 9 /* 800x600, 56Hz */ 308c2ecf20Sopenharmony_ci#define VMODE_800_600_60 10 /* 800x600, 60Hz */ 318c2ecf20Sopenharmony_ci#define VMODE_800_600_72 11 /* 800x600, 72Hz */ 328c2ecf20Sopenharmony_ci#define VMODE_800_600_75 12 /* 800x600, 75Hz */ 338c2ecf20Sopenharmony_ci#define VMODE_832_624_75 13 /* 832x624, 75Hz */ 348c2ecf20Sopenharmony_ci#define VMODE_1024_768_60 14 /* 1024x768, 60Hz */ 358c2ecf20Sopenharmony_ci#define VMODE_1024_768_70 15 /* 1024x768, 70Hz (or 72Hz?) */ 368c2ecf20Sopenharmony_ci#define VMODE_1024_768_75V 16 /* 1024x768, 75Hz (VESA) */ 378c2ecf20Sopenharmony_ci#define VMODE_1024_768_75 17 /* 1024x768, 75Hz */ 388c2ecf20Sopenharmony_ci#define VMODE_1152_870_75 18 /* 1152x870, 75Hz */ 398c2ecf20Sopenharmony_ci#define VMODE_1280_960_75 19 /* 1280x960, 75Hz */ 408c2ecf20Sopenharmony_ci#define VMODE_1280_1024_75 20 /* 1280x1024, 75Hz */ 418c2ecf20Sopenharmony_ci#define VMODE_1152_768_60 21 /* 1152x768, 60Hz Titanium PowerBook */ 428c2ecf20Sopenharmony_ci#define VMODE_1600_1024_60 22 /* 1600x1024, 60Hz 22" Cinema Display */ 438c2ecf20Sopenharmony_ci#define VMODE_MAX 22 448c2ecf20Sopenharmony_ci#define VMODE_CHOOSE 99 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_ci#define CMODE_NVRAM -1 478c2ecf20Sopenharmony_ci#define CMODE_CHOOSE -2 488c2ecf20Sopenharmony_ci#define CMODE_8 0 /* 8 bits/pixel */ 498c2ecf20Sopenharmony_ci#define CMODE_16 1 /* 16 (actually 15) bits/pixel */ 508c2ecf20Sopenharmony_ci#define CMODE_32 2 /* 32 (actually 24) bits/pixel */ 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ciextern int mac_vmode_to_var(int vmode, int cmode, 548c2ecf20Sopenharmony_ci struct fb_var_screeninfo *var); 558c2ecf20Sopenharmony_ciextern int mac_var_to_vmode(const struct fb_var_screeninfo *var, int *vmode, 568c2ecf20Sopenharmony_ci int *cmode); 578c2ecf20Sopenharmony_ciextern int mac_map_monitor_sense(int sense); 588c2ecf20Sopenharmony_ciextern int mac_find_mode(struct fb_var_screeninfo *var, 598c2ecf20Sopenharmony_ci struct fb_info *info, 608c2ecf20Sopenharmony_ci const char *mode_option, 618c2ecf20Sopenharmony_ci unsigned int default_bpp); 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ci /* 658c2ecf20Sopenharmony_ci * Addresses in NVRAM where video mode and pixel size are stored. 668c2ecf20Sopenharmony_ci */ 678c2ecf20Sopenharmony_ci 688c2ecf20Sopenharmony_ci#define NV_VMODE 0x140f 698c2ecf20Sopenharmony_ci#define NV_CMODE 0x1410 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci#endif /* _VIDEO_MACMODES_H */ 72