.pre_page_flip = &r100_pre_page_flip,
.page_flip = &r100_page_flip,
.post_page_flip = &r100_post_page_flip,
+ .wait_for_vblank = &r100_wait_for_vblank,
};
static struct radeon_asic r200_asic = {
.pre_page_flip = &r100_pre_page_flip,
.page_flip = &r100_page_flip,
.post_page_flip = &r100_post_page_flip,
+ .wait_for_vblank = &r100_wait_for_vblank,
};
static struct radeon_asic r300_asic = {
.pre_page_flip = &r100_pre_page_flip,
.page_flip = &r100_page_flip,
.post_page_flip = &r100_post_page_flip,
+ .wait_for_vblank = &r100_wait_for_vblank,
};
static struct radeon_asic r300_asic_pcie = {
.pre_page_flip = &r100_pre_page_flip,
.page_flip = &r100_page_flip,
.post_page_flip = &r100_post_page_flip,
+ .wait_for_vblank = &r100_wait_for_vblank,
};
static struct radeon_asic r420_asic = {
.pre_page_flip = &r100_pre_page_flip,
.page_flip = &r100_page_flip,
.post_page_flip = &r100_post_page_flip,
+ .wait_for_vblank = &r100_wait_for_vblank,
};
static struct radeon_asic rs400_asic = {
.pre_page_flip = &r100_pre_page_flip,
.page_flip = &r100_page_flip,
.post_page_flip = &r100_post_page_flip,
+ .wait_for_vblank = &r100_wait_for_vblank,
};
static struct radeon_asic rs600_asic = {
.pre_page_flip = &rs600_pre_page_flip,
.page_flip = &rs600_page_flip,
.post_page_flip = &rs600_post_page_flip,
+ .wait_for_vblank = &avivo_wait_for_vblank,
};
static struct radeon_asic rs690_asic = {
.pre_page_flip = &rs600_pre_page_flip,
.page_flip = &rs600_page_flip,
.post_page_flip = &rs600_post_page_flip,
+ .wait_for_vblank = &avivo_wait_for_vblank,
};
static struct radeon_asic rv515_asic = {
.pre_page_flip = &rs600_pre_page_flip,
.page_flip = &rs600_page_flip,
.post_page_flip = &rs600_post_page_flip,
+ .wait_for_vblank = &avivo_wait_for_vblank,
};
static struct radeon_asic r520_asic = {
.pre_page_flip = &rs600_pre_page_flip,
.page_flip = &rs600_page_flip,
.post_page_flip = &rs600_post_page_flip,
+ .wait_for_vblank = &avivo_wait_for_vblank,
};
static struct radeon_asic r600_asic = {
.pre_page_flip = &rs600_pre_page_flip,
.page_flip = &rs600_page_flip,
.post_page_flip = &rs600_post_page_flip,
+ .wait_for_vblank = &avivo_wait_for_vblank,
};
static struct radeon_asic rs780_asic = {
.pre_page_flip = &rs600_pre_page_flip,
.page_flip = &rs600_page_flip,
.post_page_flip = &rs600_post_page_flip,
+ .wait_for_vblank = &avivo_wait_for_vblank,
};
static struct radeon_asic rv770_asic = {
.pre_page_flip = &rs600_pre_page_flip,
.page_flip = &rv770_page_flip,
.post_page_flip = &rs600_post_page_flip,
+ .wait_for_vblank = &avivo_wait_for_vblank,
};
static struct radeon_asic evergreen_asic = {
.pre_page_flip = &evergreen_pre_page_flip,
.page_flip = &evergreen_page_flip,
.post_page_flip = &evergreen_post_page_flip,
+ .wait_for_vblank = &dce4_wait_for_vblank,
};
static struct radeon_asic sumo_asic = {
.pre_page_flip = &evergreen_pre_page_flip,
.page_flip = &evergreen_page_flip,
.post_page_flip = &evergreen_post_page_flip,
+ .wait_for_vblank = &dce4_wait_for_vblank,
};
static struct radeon_asic btc_asic = {
.pre_page_flip = &evergreen_pre_page_flip,
.page_flip = &evergreen_page_flip,
.post_page_flip = &evergreen_post_page_flip,
+ .wait_for_vblank = &dce4_wait_for_vblank,
};
static const struct radeon_vm_funcs cayman_vm_funcs = {
.pre_page_flip = &evergreen_pre_page_flip,
.page_flip = &evergreen_page_flip,
.post_page_flip = &evergreen_post_page_flip,
+ .wait_for_vblank = &dce4_wait_for_vblank,
};
int radeon_asic_init(struct radeon_device *rdev)