diff options
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon.h')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon.h | 58 |
1 files changed, 31 insertions, 27 deletions
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h index 950b346e343..5ab35b81c86 100644 --- a/drivers/gpu/drm/radeon/radeon.h +++ b/drivers/gpu/drm/radeon/radeon.h | |||
@@ -590,18 +590,8 @@ struct radeon_asic { | |||
590 | void (*fini)(struct radeon_device *rdev); | 590 | void (*fini)(struct radeon_device *rdev); |
591 | int (*resume)(struct radeon_device *rdev); | 591 | int (*resume)(struct radeon_device *rdev); |
592 | int (*suspend)(struct radeon_device *rdev); | 592 | int (*suspend)(struct radeon_device *rdev); |
593 | void (*errata)(struct radeon_device *rdev); | ||
594 | void (*vram_info)(struct radeon_device *rdev); | ||
595 | void (*vga_set_state)(struct radeon_device *rdev, bool state); | 593 | void (*vga_set_state)(struct radeon_device *rdev, bool state); |
596 | int (*gpu_reset)(struct radeon_device *rdev); | 594 | int (*gpu_reset)(struct radeon_device *rdev); |
597 | int (*mc_init)(struct radeon_device *rdev); | ||
598 | void (*mc_fini)(struct radeon_device *rdev); | ||
599 | int (*wb_init)(struct radeon_device *rdev); | ||
600 | void (*wb_fini)(struct radeon_device *rdev); | ||
601 | int (*gart_init)(struct radeon_device *rdev); | ||
602 | void (*gart_fini)(struct radeon_device *rdev); | ||
603 | int (*gart_enable)(struct radeon_device *rdev); | ||
604 | void (*gart_disable)(struct radeon_device *rdev); | ||
605 | void (*gart_tlb_flush)(struct radeon_device *rdev); | 595 | void (*gart_tlb_flush)(struct radeon_device *rdev); |
606 | int (*gart_set_page)(struct radeon_device *rdev, int i, uint64_t addr); | 596 | int (*gart_set_page)(struct radeon_device *rdev, int i, uint64_t addr); |
607 | int (*cp_init)(struct radeon_device *rdev, unsigned ring_size); | 597 | int (*cp_init)(struct radeon_device *rdev, unsigned ring_size); |
@@ -611,7 +601,6 @@ struct radeon_asic { | |||
611 | void (*ring_start)(struct radeon_device *rdev); | 601 | void (*ring_start)(struct radeon_device *rdev); |
612 | int (*ring_test)(struct radeon_device *rdev); | 602 | int (*ring_test)(struct radeon_device *rdev); |
613 | void (*ring_ib_execute)(struct radeon_device *rdev, struct radeon_ib *ib); | 603 | void (*ring_ib_execute)(struct radeon_device *rdev, struct radeon_ib *ib); |
614 | int (*ib_test)(struct radeon_device *rdev); | ||
615 | int (*irq_set)(struct radeon_device *rdev); | 604 | int (*irq_set)(struct radeon_device *rdev); |
616 | int (*irq_process)(struct radeon_device *rdev); | 605 | int (*irq_process)(struct radeon_device *rdev); |
617 | u32 (*get_vblank_counter)(struct radeon_device *rdev, int crtc); | 606 | u32 (*get_vblank_counter)(struct radeon_device *rdev, int crtc); |
@@ -789,7 +778,6 @@ struct radeon_device { | |||
789 | bool shutdown; | 778 | bool shutdown; |
790 | bool suspend; | 779 | bool suspend; |
791 | bool need_dma32; | 780 | bool need_dma32; |
792 | bool new_init_path; | ||
793 | bool accel_working; | 781 | bool accel_working; |
794 | struct radeon_surface_reg surface_regs[RADEON_GEM_MAX_SURFACES]; | 782 | struct radeon_surface_reg surface_regs[RADEON_GEM_MAX_SURFACES]; |
795 | const struct firmware *me_fw; /* all family ME firmware */ | 783 | const struct firmware *me_fw; /* all family ME firmware */ |
@@ -949,28 +937,14 @@ static inline void radeon_ring_write(struct radeon_device *rdev, uint32_t v) | |||
949 | #define radeon_resume(rdev) (rdev)->asic->resume((rdev)) | 937 | #define radeon_resume(rdev) (rdev)->asic->resume((rdev)) |
950 | #define radeon_suspend(rdev) (rdev)->asic->suspend((rdev)) | 938 | #define radeon_suspend(rdev) (rdev)->asic->suspend((rdev)) |
951 | #define radeon_cs_parse(p) rdev->asic->cs_parse((p)) | 939 | #define radeon_cs_parse(p) rdev->asic->cs_parse((p)) |
952 | #define radeon_errata(rdev) (rdev)->asic->errata((rdev)) | ||
953 | #define radeon_vram_info(rdev) (rdev)->asic->vram_info((rdev)) | ||
954 | #define radeon_vga_set_state(rdev, state) (rdev)->asic->vga_set_state((rdev), (state)) | 940 | #define radeon_vga_set_state(rdev, state) (rdev)->asic->vga_set_state((rdev), (state)) |
955 | #define radeon_gpu_reset(rdev) (rdev)->asic->gpu_reset((rdev)) | 941 | #define radeon_gpu_reset(rdev) (rdev)->asic->gpu_reset((rdev)) |
956 | #define radeon_mc_init(rdev) (rdev)->asic->mc_init((rdev)) | ||
957 | #define radeon_mc_fini(rdev) (rdev)->asic->mc_fini((rdev)) | ||
958 | #define radeon_wb_init(rdev) (rdev)->asic->wb_init((rdev)) | ||
959 | #define radeon_wb_fini(rdev) (rdev)->asic->wb_fini((rdev)) | ||
960 | #define radeon_gpu_gart_init(rdev) (rdev)->asic->gart_init((rdev)) | ||
961 | #define radeon_gpu_gart_fini(rdev) (rdev)->asic->gart_fini((rdev)) | ||
962 | #define radeon_gart_enable(rdev) (rdev)->asic->gart_enable((rdev)) | ||
963 | #define radeon_gart_disable(rdev) (rdev)->asic->gart_disable((rdev)) | ||
964 | #define radeon_gart_tlb_flush(rdev) (rdev)->asic->gart_tlb_flush((rdev)) | 942 | #define radeon_gart_tlb_flush(rdev) (rdev)->asic->gart_tlb_flush((rdev)) |
965 | #define radeon_gart_set_page(rdev, i, p) (rdev)->asic->gart_set_page((rdev), (i), (p)) | 943 | #define radeon_gart_set_page(rdev, i, p) (rdev)->asic->gart_set_page((rdev), (i), (p)) |
966 | #define radeon_cp_init(rdev,rsize) (rdev)->asic->cp_init((rdev), (rsize)) | ||
967 | #define radeon_cp_fini(rdev) (rdev)->asic->cp_fini((rdev)) | ||
968 | #define radeon_cp_disable(rdev) (rdev)->asic->cp_disable((rdev)) | ||
969 | #define radeon_cp_commit(rdev) (rdev)->asic->cp_commit((rdev)) | 944 | #define radeon_cp_commit(rdev) (rdev)->asic->cp_commit((rdev)) |
970 | #define radeon_ring_start(rdev) (rdev)->asic->ring_start((rdev)) | 945 | #define radeon_ring_start(rdev) (rdev)->asic->ring_start((rdev)) |
971 | #define radeon_ring_test(rdev) (rdev)->asic->ring_test((rdev)) | 946 | #define radeon_ring_test(rdev) (rdev)->asic->ring_test((rdev)) |
972 | #define radeon_ring_ib_execute(rdev, ib) (rdev)->asic->ring_ib_execute((rdev), (ib)) | 947 | #define radeon_ring_ib_execute(rdev, ib) (rdev)->asic->ring_ib_execute((rdev), (ib)) |
973 | #define radeon_ib_test(rdev) (rdev)->asic->ib_test((rdev)) | ||
974 | #define radeon_irq_set(rdev) (rdev)->asic->irq_set((rdev)) | 948 | #define radeon_irq_set(rdev) (rdev)->asic->irq_set((rdev)) |
975 | #define radeon_irq_process(rdev) (rdev)->asic->irq_process((rdev)) | 949 | #define radeon_irq_process(rdev) (rdev)->asic->irq_process((rdev)) |
976 | #define radeon_get_vblank_counter(rdev, crtc) (rdev)->asic->get_vblank_counter((rdev), (crtc)) | 950 | #define radeon_get_vblank_counter(rdev, crtc) (rdev)->asic->get_vblank_counter((rdev), (crtc)) |
@@ -996,6 +970,7 @@ extern void radeon_clocks_fini(struct radeon_device *rdev); | |||
996 | extern void radeon_scratch_init(struct radeon_device *rdev); | 970 | extern void radeon_scratch_init(struct radeon_device *rdev); |
997 | extern void radeon_surface_init(struct radeon_device *rdev); | 971 | extern void radeon_surface_init(struct radeon_device *rdev); |
998 | extern int radeon_cs_parser_init(struct radeon_cs_parser *p, void *data); | 972 | extern int radeon_cs_parser_init(struct radeon_cs_parser *p, void *data); |
973 | extern void radeon_legacy_set_clock_gating(struct radeon_device *rdev, int enable); | ||
999 | extern void radeon_atom_set_clock_gating(struct radeon_device *rdev, int enable); | 974 | extern void radeon_atom_set_clock_gating(struct radeon_device *rdev, int enable); |
1000 | 975 | ||
1001 | /* r100,rv100,rs100,rv200,rs200,r200,rv250,rs300,rv280 */ | 976 | /* r100,rv100,rs100,rv200,rs200,r200,rv250,rs300,rv280 */ |
@@ -1031,11 +1006,27 @@ extern int r100_wb_init(struct radeon_device *rdev); | |||
1031 | extern void r100_hdp_reset(struct radeon_device *rdev); | 1006 | extern void r100_hdp_reset(struct radeon_device *rdev); |
1032 | extern int r100_rb2d_reset(struct radeon_device *rdev); | 1007 | extern int r100_rb2d_reset(struct radeon_device *rdev); |
1033 | extern int r100_cp_reset(struct radeon_device *rdev); | 1008 | extern int r100_cp_reset(struct radeon_device *rdev); |
1009 | extern void r100_vga_render_disable(struct radeon_device *rdev); | ||
1010 | extern int r100_cs_track_check_pkt3_indx_buffer(struct radeon_cs_parser *p, | ||
1011 | struct radeon_cs_packet *pkt, | ||
1012 | struct radeon_object *robj); | ||
1013 | extern int r100_cs_parse_packet0(struct radeon_cs_parser *p, | ||
1014 | struct radeon_cs_packet *pkt, | ||
1015 | const unsigned *auth, unsigned n, | ||
1016 | radeon_packet0_check_t check); | ||
1017 | extern int r100_cs_packet_parse(struct radeon_cs_parser *p, | ||
1018 | struct radeon_cs_packet *pkt, | ||
1019 | unsigned idx); | ||
1020 | |||
1021 | /* rv200,rv250,rv280 */ | ||
1022 | extern void r200_set_safe_registers(struct radeon_device *rdev); | ||
1034 | 1023 | ||
1035 | /* r300,r350,rv350,rv370,rv380 */ | 1024 | /* r300,r350,rv350,rv370,rv380 */ |
1036 | extern void r300_set_reg_safe(struct radeon_device *rdev); | 1025 | extern void r300_set_reg_safe(struct radeon_device *rdev); |
1037 | extern void r300_mc_program(struct radeon_device *rdev); | 1026 | extern void r300_mc_program(struct radeon_device *rdev); |
1038 | extern void r300_vram_info(struct radeon_device *rdev); | 1027 | extern void r300_vram_info(struct radeon_device *rdev); |
1028 | extern void r300_clock_startup(struct radeon_device *rdev); | ||
1029 | extern int r300_mc_wait_for_idle(struct radeon_device *rdev); | ||
1039 | extern int rv370_pcie_gart_init(struct radeon_device *rdev); | 1030 | extern int rv370_pcie_gart_init(struct radeon_device *rdev); |
1040 | extern void rv370_pcie_gart_fini(struct radeon_device *rdev); | 1031 | extern void rv370_pcie_gart_fini(struct radeon_device *rdev); |
1041 | extern int rv370_pcie_gart_enable(struct radeon_device *rdev); | 1032 | extern int rv370_pcie_gart_enable(struct radeon_device *rdev); |
@@ -1066,6 +1057,18 @@ extern void rv515_clock_startup(struct radeon_device *rdev); | |||
1066 | extern void rv515_debugfs(struct radeon_device *rdev); | 1057 | extern void rv515_debugfs(struct radeon_device *rdev); |
1067 | extern int rv515_suspend(struct radeon_device *rdev); | 1058 | extern int rv515_suspend(struct radeon_device *rdev); |
1068 | 1059 | ||
1060 | /* rs400 */ | ||
1061 | extern int rs400_gart_init(struct radeon_device *rdev); | ||
1062 | extern int rs400_gart_enable(struct radeon_device *rdev); | ||
1063 | extern void rs400_gart_adjust_size(struct radeon_device *rdev); | ||
1064 | extern void rs400_gart_disable(struct radeon_device *rdev); | ||
1065 | extern void rs400_gart_fini(struct radeon_device *rdev); | ||
1066 | |||
1067 | /* rs600 */ | ||
1068 | extern void rs600_set_safe_registers(struct radeon_device *rdev); | ||
1069 | extern int rs600_irq_set(struct radeon_device *rdev); | ||
1070 | extern void rs600_irq_disable(struct radeon_device *rdev); | ||
1071 | |||
1069 | /* rs690, rs740 */ | 1072 | /* rs690, rs740 */ |
1070 | extern void rs690_line_buffer_adjust(struct radeon_device *rdev, | 1073 | extern void rs690_line_buffer_adjust(struct radeon_device *rdev, |
1071 | struct drm_display_mode *mode1, | 1074 | struct drm_display_mode *mode1, |
@@ -1083,8 +1086,9 @@ extern int r600_pcie_gart_init(struct radeon_device *rdev); | |||
1083 | extern void r600_pcie_gart_tlb_flush(struct radeon_device *rdev); | 1086 | extern void r600_pcie_gart_tlb_flush(struct radeon_device *rdev); |
1084 | extern int r600_ib_test(struct radeon_device *rdev); | 1087 | extern int r600_ib_test(struct radeon_device *rdev); |
1085 | extern int r600_ring_test(struct radeon_device *rdev); | 1088 | extern int r600_ring_test(struct radeon_device *rdev); |
1086 | extern int r600_wb_init(struct radeon_device *rdev); | ||
1087 | extern void r600_wb_fini(struct radeon_device *rdev); | 1089 | extern void r600_wb_fini(struct radeon_device *rdev); |
1090 | extern int r600_wb_enable(struct radeon_device *rdev); | ||
1091 | extern void r600_wb_disable(struct radeon_device *rdev); | ||
1088 | extern void r600_scratch_init(struct radeon_device *rdev); | 1092 | extern void r600_scratch_init(struct radeon_device *rdev); |
1089 | extern int r600_blit_init(struct radeon_device *rdev); | 1093 | extern int r600_blit_init(struct radeon_device *rdev); |
1090 | extern void r600_blit_fini(struct radeon_device *rdev); | 1094 | extern void r600_blit_fini(struct radeon_device *rdev); |