1*f7018c21STomi Valkeinen /* 2*f7018c21STomi Valkeinen * linux/drivers/video/macmodes.h -- Standard MacOS video modes 3*f7018c21STomi Valkeinen * 4*f7018c21STomi Valkeinen * Copyright (C) 1998 Geert Uytterhoeven 5*f7018c21STomi Valkeinen * 6*f7018c21STomi Valkeinen * This file is subject to the terms and conditions of the GNU General Public 7*f7018c21STomi Valkeinen * License. See the file COPYING in the main directory of this archive for 8*f7018c21STomi Valkeinen * more details. 9*f7018c21STomi Valkeinen */ 10*f7018c21STomi Valkeinen 11*f7018c21STomi Valkeinen #ifndef _VIDEO_MACMODES_H 12*f7018c21STomi Valkeinen #define _VIDEO_MACMODES_H 13*f7018c21STomi Valkeinen 14*f7018c21STomi Valkeinen /* 15*f7018c21STomi Valkeinen * Video mode values. 16*f7018c21STomi Valkeinen * These are supposed to be the same as the values that Apple uses in 17*f7018c21STomi Valkeinen * MacOS. 18*f7018c21STomi Valkeinen */ 19*f7018c21STomi Valkeinen 20*f7018c21STomi Valkeinen #define VMODE_NVRAM 0 21*f7018c21STomi Valkeinen #define VMODE_512_384_60I 1 /* 512x384, 60Hz interlaced (NTSC) */ 22*f7018c21STomi Valkeinen #define VMODE_512_384_60 2 /* 512x384, 60Hz */ 23*f7018c21STomi Valkeinen #define VMODE_640_480_50I 3 /* 640x480, 50Hz interlaced (PAL) */ 24*f7018c21STomi Valkeinen #define VMODE_640_480_60I 4 /* 640x480, 60Hz interlaced (NTSC) */ 25*f7018c21STomi Valkeinen #define VMODE_640_480_60 5 /* 640x480, 60Hz (VGA) */ 26*f7018c21STomi Valkeinen #define VMODE_640_480_67 6 /* 640x480, 67Hz */ 27*f7018c21STomi Valkeinen #define VMODE_640_870_75P 7 /* 640x870, 75Hz (portrait) */ 28*f7018c21STomi Valkeinen #define VMODE_768_576_50I 8 /* 768x576, 50Hz (PAL full frame) */ 29*f7018c21STomi Valkeinen #define VMODE_800_600_56 9 /* 800x600, 56Hz */ 30*f7018c21STomi Valkeinen #define VMODE_800_600_60 10 /* 800x600, 60Hz */ 31*f7018c21STomi Valkeinen #define VMODE_800_600_72 11 /* 800x600, 72Hz */ 32*f7018c21STomi Valkeinen #define VMODE_800_600_75 12 /* 800x600, 75Hz */ 33*f7018c21STomi Valkeinen #define VMODE_832_624_75 13 /* 832x624, 75Hz */ 34*f7018c21STomi Valkeinen #define VMODE_1024_768_60 14 /* 1024x768, 60Hz */ 35*f7018c21STomi Valkeinen #define VMODE_1024_768_70 15 /* 1024x768, 70Hz (or 72Hz?) */ 36*f7018c21STomi Valkeinen #define VMODE_1024_768_75V 16 /* 1024x768, 75Hz (VESA) */ 37*f7018c21STomi Valkeinen #define VMODE_1024_768_75 17 /* 1024x768, 75Hz */ 38*f7018c21STomi Valkeinen #define VMODE_1152_870_75 18 /* 1152x870, 75Hz */ 39*f7018c21STomi Valkeinen #define VMODE_1280_960_75 19 /* 1280x960, 75Hz */ 40*f7018c21STomi Valkeinen #define VMODE_1280_1024_75 20 /* 1280x1024, 75Hz */ 41*f7018c21STomi Valkeinen #define VMODE_1152_768_60 21 /* 1152x768, 60Hz Titanium PowerBook */ 42*f7018c21STomi Valkeinen #define VMODE_1600_1024_60 22 /* 1600x1024, 60Hz 22" Cinema Display */ 43*f7018c21STomi Valkeinen #define VMODE_MAX 22 44*f7018c21STomi Valkeinen #define VMODE_CHOOSE 99 45*f7018c21STomi Valkeinen 46*f7018c21STomi Valkeinen #define CMODE_NVRAM -1 47*f7018c21STomi Valkeinen #define CMODE_CHOOSE -2 48*f7018c21STomi Valkeinen #define CMODE_8 0 /* 8 bits/pixel */ 49*f7018c21STomi Valkeinen #define CMODE_16 1 /* 16 (actually 15) bits/pixel */ 50*f7018c21STomi Valkeinen #define CMODE_32 2 /* 32 (actually 24) bits/pixel */ 51*f7018c21STomi Valkeinen 52*f7018c21STomi Valkeinen 53*f7018c21STomi Valkeinen extern int mac_vmode_to_var(int vmode, int cmode, 54*f7018c21STomi Valkeinen struct fb_var_screeninfo *var); 55*f7018c21STomi Valkeinen extern int mac_var_to_vmode(const struct fb_var_screeninfo *var, int *vmode, 56*f7018c21STomi Valkeinen int *cmode); 57*f7018c21STomi Valkeinen extern int mac_map_monitor_sense(int sense); 58*f7018c21STomi Valkeinen extern int mac_find_mode(struct fb_var_screeninfo *var, 59*f7018c21STomi Valkeinen struct fb_info *info, 60*f7018c21STomi Valkeinen const char *mode_option, 61*f7018c21STomi Valkeinen unsigned int default_bpp); 62*f7018c21STomi Valkeinen 63*f7018c21STomi Valkeinen 64*f7018c21STomi Valkeinen /* 65*f7018c21STomi Valkeinen * Addresses in NVRAM where video mode and pixel size are stored. 66*f7018c21STomi Valkeinen */ 67*f7018c21STomi Valkeinen 68*f7018c21STomi Valkeinen #define NV_VMODE 0x140f 69*f7018c21STomi Valkeinen #define NV_CMODE 0x1410 70*f7018c21STomi Valkeinen 71*f7018c21STomi Valkeinen #endif /* _VIDEO_MACMODES_H */ 72