aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/radeon.h
diff options
context:
space:
mode:
authorJerome Glisse <jglisse@redhat.com>2009-09-11 09:35:22 -0400
committerDave Airlie <airlied@redhat.com>2009-09-14 02:09:59 -0400
commit9f022ddfb23793b475ff7e57ac08a766dd5d31bd (patch)
treeb90a004e7eaf6f79f52ac112abbe44abec141613 /drivers/gpu/drm/radeon/radeon.h
parentd42571efe33552cd519b7f3800a788b5f2d51798 (diff)
drm/radeon/kms: convert r4xx to new init path
This convert r4xx to new init path it also fix few bugs. Signed-off-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon.h')
-rw-r--r--drivers/gpu/drm/radeon/radeon.h32
1 files changed, 31 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
index 23ede0e4783..e314756dacc 100644
--- a/drivers/gpu/drm/radeon/radeon.h
+++ b/drivers/gpu/drm/radeon/radeon.h
@@ -690,6 +690,7 @@ typedef uint32_t (*radeon_rreg_t)(struct radeon_device*, uint32_t);
690typedef void (*radeon_wreg_t)(struct radeon_device*, uint32_t, uint32_t); 690typedef void (*radeon_wreg_t)(struct radeon_device*, uint32_t, uint32_t);
691 691
692struct radeon_device { 692struct radeon_device {
693 struct device *dev;
693 struct drm_device *ddev; 694 struct drm_device *ddev;
694 struct pci_dev *pdev; 695 struct pci_dev *pdev;
695 /* ASIC */ 696 /* ASIC */
@@ -936,16 +937,45 @@ static inline void radeon_ring_write(struct radeon_device *rdev, uint32_t v)
936/* Common functions */ 937/* Common functions */
937int radeon_modeset_init(struct radeon_device *rdev); 938int radeon_modeset_init(struct radeon_device *rdev);
938void radeon_modeset_fini(struct radeon_device *rdev); 939void radeon_modeset_fini(struct radeon_device *rdev);
940extern bool radeon_card_posted(struct radeon_device *rdev);
939 941
940/* r100,rv100,rs100,rv200,rs200,r200,rv250,rs300,rv280 */ 942/* r100,rv100,rs100,rv200,rs200,r200,rv250,rs300,rv280 */
941void r100_cp_disable(struct radeon_device *rdev); 943struct r100_mc_save {
944 u32 GENMO_WT;
945 u32 CRTC_EXT_CNTL;
946 u32 CRTC_GEN_CNTL;
947 u32 CRTC2_GEN_CNTL;
948 u32 CUR_OFFSET;
949 u32 CUR2_OFFSET;
950};
951extern void r100_cp_disable(struct radeon_device *rdev);
952extern int r100_cp_init(struct radeon_device *rdev, unsigned ring_size);
953extern void r100_cp_fini(struct radeon_device *rdev);
942void r100_pci_gart_tlb_flush(struct radeon_device *rdev); 954void r100_pci_gart_tlb_flush(struct radeon_device *rdev);
943int r100_pci_gart_enable(struct radeon_device *rdev); 955int r100_pci_gart_enable(struct radeon_device *rdev);
944void r100_pci_gart_disable(struct radeon_device *rdev); 956void r100_pci_gart_disable(struct radeon_device *rdev);
945int r100_pci_gart_set_page(struct radeon_device *rdev, int i, uint64_t addr); 957int r100_pci_gart_set_page(struct radeon_device *rdev, int i, uint64_t addr);
958extern int r100_debugfs_mc_info_init(struct radeon_device *rdev);
959extern int r100_gui_wait_for_idle(struct radeon_device *rdev);
960extern void r100_ib_fini(struct radeon_device *rdev);
961extern int r100_ib_init(struct radeon_device *rdev);
962extern void r100_irq_disable(struct radeon_device *rdev);
963extern int r100_irq_set(struct radeon_device *rdev);
964extern void r100_mc_stop(struct radeon_device *rdev, struct r100_mc_save *save);
965extern void r100_mc_resume(struct radeon_device *rdev, struct r100_mc_save *save);
966extern void r100_wb_disable(struct radeon_device *rdev);
967extern void r100_wb_fini(struct radeon_device *rdev);
968extern int r100_wb_init(struct radeon_device *rdev);
969
970/* r300,r350,rv350,rv370,rv380 */
971extern void r300_set_reg_safe(struct radeon_device *rdev);
972extern void r300_mc_program(struct radeon_device *rdev);
973extern void r300_vram_info(struct radeon_device *rdev);
974extern void rv370_pcie_gart_disable(struct radeon_device *rdev);
946 975
947/* r420,r423,rv410 */ 976/* r420,r423,rv410 */
948u32 r420_mc_rreg(struct radeon_device *rdev, u32 reg); 977u32 r420_mc_rreg(struct radeon_device *rdev, u32 reg);
949void r420_mc_wreg(struct radeon_device *rdev, u32 reg, u32 v); 978void r420_mc_wreg(struct radeon_device *rdev, u32 reg, u32 v);
979extern int r420_debugfs_pipes_info_init(struct radeon_device *rdev);
950 980
951#endif 981#endif