diff options
Diffstat (limited to 'drivers/char/drm/radeon_drv.h')
-rw-r--r-- | drivers/char/drm/radeon_drv.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/drivers/char/drm/radeon_drv.h b/drivers/char/drm/radeon_drv.h index 8b105f1460a7..54f49ef4bef0 100644 --- a/drivers/char/drm/radeon_drv.h +++ b/drivers/char/drm/radeon_drv.h | |||
@@ -95,9 +95,11 @@ | |||
95 | * 1.24- Add general-purpose packet for manipulating scratch registers (r300) | 95 | * 1.24- Add general-purpose packet for manipulating scratch registers (r300) |
96 | * 1.25- Add support for r200 vertex programs (R200_EMIT_VAP_PVS_CNTL, | 96 | * 1.25- Add support for r200 vertex programs (R200_EMIT_VAP_PVS_CNTL, |
97 | * new packet type) | 97 | * new packet type) |
98 | * 1.26- Add support for variable size PCI(E) gart aperture | ||
99 | * 1.27- Add support for IGP GART | ||
98 | */ | 100 | */ |
99 | #define DRIVER_MAJOR 1 | 101 | #define DRIVER_MAJOR 1 |
100 | #define DRIVER_MINOR 25 | 102 | #define DRIVER_MINOR 27 |
101 | #define DRIVER_PATCHLEVEL 0 | 103 | #define DRIVER_PATCHLEVEL 0 |
102 | 104 | ||
103 | /* | 105 | /* |
@@ -143,6 +145,7 @@ enum radeon_chip_flags { | |||
143 | RADEON_IS_PCIE = 0x00200000UL, | 145 | RADEON_IS_PCIE = 0x00200000UL, |
144 | RADEON_NEW_MEMMAP = 0x00400000UL, | 146 | RADEON_NEW_MEMMAP = 0x00400000UL, |
145 | RADEON_IS_PCI = 0x00800000UL, | 147 | RADEON_IS_PCI = 0x00800000UL, |
148 | RADEON_IS_IGPGART = 0x01000000UL, | ||
146 | }; | 149 | }; |
147 | 150 | ||
148 | #define GET_RING_HEAD(dev_priv) (dev_priv->writeback_works ? \ | 151 | #define GET_RING_HEAD(dev_priv) (dev_priv->writeback_works ? \ |
@@ -240,7 +243,6 @@ typedef struct drm_radeon_private { | |||
240 | 243 | ||
241 | int do_boxes; | 244 | int do_boxes; |
242 | int page_flipping; | 245 | int page_flipping; |
243 | int current_page; | ||
244 | 246 | ||
245 | u32 color_fmt; | 247 | u32 color_fmt; |
246 | unsigned int front_offset; | 248 | unsigned int front_offset; |
@@ -280,6 +282,7 @@ typedef struct drm_radeon_private { | |||
280 | struct radeon_virt_surface virt_surfaces[2 * RADEON_MAX_SURFACES]; | 282 | struct radeon_virt_surface virt_surfaces[2 * RADEON_MAX_SURFACES]; |
281 | 283 | ||
282 | unsigned long pcigart_offset; | 284 | unsigned long pcigart_offset; |
285 | unsigned int pcigart_offset_set; | ||
283 | drm_ati_pcigart_info gart_info; | 286 | drm_ati_pcigart_info gart_info; |
284 | 287 | ||
285 | u32 scratch_ages[5]; | 288 | u32 scratch_ages[5]; |
@@ -432,6 +435,15 @@ extern int r300_do_cp_cmdbuf(drm_device_t * dev, DRMFILE filp, | |||
432 | #define RADEON_PCIE_TX_GART_END_LO 0x16 | 435 | #define RADEON_PCIE_TX_GART_END_LO 0x16 |
433 | #define RADEON_PCIE_TX_GART_END_HI 0x17 | 436 | #define RADEON_PCIE_TX_GART_END_HI 0x17 |
434 | 437 | ||
438 | #define RADEON_IGPGART_INDEX 0x168 | ||
439 | #define RADEON_IGPGART_DATA 0x16c | ||
440 | #define RADEON_IGPGART_UNK_18 0x18 | ||
441 | #define RADEON_IGPGART_CTRL 0x2b | ||
442 | #define RADEON_IGPGART_BASE_ADDR 0x2c | ||
443 | #define RADEON_IGPGART_FLUSH 0x2e | ||
444 | #define RADEON_IGPGART_ENABLE 0x38 | ||
445 | #define RADEON_IGPGART_UNK_39 0x39 | ||
446 | |||
435 | #define RADEON_MPP_TB_CONFIG 0x01c0 | 447 | #define RADEON_MPP_TB_CONFIG 0x01c0 |
436 | #define RADEON_MEM_CNTL 0x0140 | 448 | #define RADEON_MEM_CNTL 0x0140 |
437 | #define RADEON_MEM_SDRAM_MODE_REG 0x0158 | 449 | #define RADEON_MEM_SDRAM_MODE_REG 0x0158 |
@@ -964,6 +976,14 @@ do { \ | |||
964 | RADEON_WRITE( RADEON_CLOCK_CNTL_DATA, (val) ); \ | 976 | RADEON_WRITE( RADEON_CLOCK_CNTL_DATA, (val) ); \ |
965 | } while (0) | 977 | } while (0) |
966 | 978 | ||
979 | #define RADEON_WRITE_IGPGART( addr, val ) \ | ||
980 | do { \ | ||
981 | RADEON_WRITE( RADEON_IGPGART_INDEX, \ | ||
982 | ((addr) & 0x7f) | (1 << 8)); \ | ||
983 | RADEON_WRITE( RADEON_IGPGART_DATA, (val) ); \ | ||
984 | RADEON_WRITE( RADEON_IGPGART_INDEX, 0x7f ); \ | ||
985 | } while (0) | ||
986 | |||
967 | #define RADEON_WRITE_PCIE( addr, val ) \ | 987 | #define RADEON_WRITE_PCIE( addr, val ) \ |
968 | do { \ | 988 | do { \ |
969 | RADEON_WRITE8( RADEON_PCIE_INDEX, \ | 989 | RADEON_WRITE8( RADEON_PCIE_INDEX, \ |