haiku/headers/private/graphics/radeon/radeon_bios.h
Bruno G. Albuquerque 707e075a41 - Added support for Radeon Mobility 9600/9700 (0x4e50).
- Corrected wrong ID association (0x4e50 is M11-based, not M10-based).
- Implemented fixed dividers support for laptop panel refresh rate.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-05 01:54:11 +00:00

74 lines
1.4 KiB
C

/*
Copyright (c) 2002, Thomas Kurschel
Part of Radeon kernel driver
BIOS data structures
*/
#ifndef _RADEON_BIOS_H
#define _RADEON_BIOS_H
typedef struct {
uint8 clock_chip_type;
uint8 struct_size;
uint8 accelerator_entry;
uint8 VGA_entry;
uint16 VGA_table_offset;
uint16 POST_table_offset;
uint16 XCLK;
uint16 MCLK;
uint8 num_PLL_blocks;
uint8 size_PLL_blocks;
uint16 PCLK_ref_freq;
uint16 PCLK_ref_divider;
uint32 PCLK_min_freq;
uint32 PCLK_max_freq;
uint16 MCLK_ref_freq;
uint16 MCLK_ref_divider;
uint32 MCLK_min_freq;
uint32 MCLK_max_freq;
uint16 XCLK_ref_freq;
uint16 XCLK_ref_divider;
uint32 XCLK_min_freq;
uint32 XCLK_max_freq;
} __attribute__ ((packed)) PLL_BLOCK;
typedef struct {
uint8 dummy0;
char name[24]; // 1
uint16 panel_xres; // 25
uint16 panel_yres; // 27
uint8 dummy[15];
uint16 panel_pwr_delay; // 44
uint16 ref_div; // 46
uint8 post_div; // 48
uint8 feedback_div; // 49
uint8 dummy2[14];
uint16 fpi_timing_ofs[20]; // 64
} __attribute__ ((packed)) FPI_BLOCK;
typedef struct {
uint16 panel_xres; // 0
uint16 panel_yres; // 2
uint8 dummy4[5];
uint16 dot_clock; // 9
uint8 dummy11[6];
uint16 h_total; // 17
uint16 h_display; // 19
uint16 h_sync_start; // 21
uint8 h_sync_width; // 23
uint16 v_total; // 24
uint16 v_display; // 26
uint16 v_sync; // 28
} __attribute__ ((packed)) FPI_TIMING_BLOCK;
#endif