diff options
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon.h')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h index c3f24cc56009..d61f2fc61df5 100644 --- a/drivers/gpu/drm/radeon/radeon.h +++ b/drivers/gpu/drm/radeon/radeon.h | |||
@@ -51,7 +51,7 @@ | |||
51 | 51 | ||
52 | #include "radeon_mode.h" | 52 | #include "radeon_mode.h" |
53 | #include "radeon_reg.h" | 53 | #include "radeon_reg.h" |
54 | 54 | #include "r300.h" | |
55 | 55 | ||
56 | /* | 56 | /* |
57 | * Modules parameters. | 57 | * Modules parameters. |
@@ -496,6 +496,7 @@ int r100_debugfs_cp_init(struct radeon_device *rdev); | |||
496 | * ASIC specific functions. | 496 | * ASIC specific functions. |
497 | */ | 497 | */ |
498 | struct radeon_asic { | 498 | struct radeon_asic { |
499 | int (*init)(struct radeon_device *rdev); | ||
499 | void (*errata)(struct radeon_device *rdev); | 500 | void (*errata)(struct radeon_device *rdev); |
500 | void (*vram_info)(struct radeon_device *rdev); | 501 | void (*vram_info)(struct radeon_device *rdev); |
501 | int (*gpu_reset)(struct radeon_device *rdev); | 502 | int (*gpu_reset)(struct radeon_device *rdev); |
@@ -536,6 +537,10 @@ struct radeon_asic { | |||
536 | void (*set_clock_gating)(struct radeon_device *rdev, int enable); | 537 | void (*set_clock_gating)(struct radeon_device *rdev, int enable); |
537 | }; | 538 | }; |
538 | 539 | ||
540 | union radeon_asic_config { | ||
541 | struct r300_asic r300; | ||
542 | }; | ||
543 | |||
539 | 544 | ||
540 | /* | 545 | /* |
541 | * IOCTL. | 546 | * IOCTL. |
@@ -573,6 +578,7 @@ struct radeon_device { | |||
573 | struct drm_device *ddev; | 578 | struct drm_device *ddev; |
574 | struct pci_dev *pdev; | 579 | struct pci_dev *pdev; |
575 | /* ASIC */ | 580 | /* ASIC */ |
581 | union radeon_asic_config config; | ||
576 | enum radeon_family family; | 582 | enum radeon_family family; |
577 | unsigned long flags; | 583 | unsigned long flags; |
578 | int usec_timeout; | 584 | int usec_timeout; |
@@ -763,6 +769,7 @@ static inline void radeon_ring_write(struct radeon_device *rdev, uint32_t v) | |||
763 | /* | 769 | /* |
764 | * ASICs macro. | 770 | * ASICs macro. |
765 | */ | 771 | */ |
772 | #define radeon_init(rdev) (rdev)->asic->init((rdev)) | ||
766 | #define radeon_cs_parse(p) rdev->asic->cs_parse((p)) | 773 | #define radeon_cs_parse(p) rdev->asic->cs_parse((p)) |
767 | #define radeon_errata(rdev) (rdev)->asic->errata((rdev)) | 774 | #define radeon_errata(rdev) (rdev)->asic->errata((rdev)) |
768 | #define radeon_vram_info(rdev) (rdev)->asic->vram_info((rdev)) | 775 | #define radeon_vram_info(rdev) (rdev)->asic->vram_info((rdev)) |