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